From 16d63c3d68d131ad0cc4a8bd9f22a0c0515aa6bf Mon Sep 17 00:00:00 2001 From: zss <zss@example.com> Date: 星期三, 17 七月 2024 18:23:57 +0800 Subject: [PATCH] 工时的各需求+检验任务修改 --- inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderPlanServiceImpl.java | 143 +++++++++++++++++++++++++++++++++++------------ 1 files changed, 107 insertions(+), 36 deletions(-) diff --git a/inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderPlanServiceImpl.java b/inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderPlanServiceImpl.java index acfb168..6bf6f97 100644 --- a/inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderPlanServiceImpl.java +++ b/inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderPlanServiceImpl.java @@ -283,13 +283,40 @@ //鍐嶆煡璇㈠嚭鎵�鏈夌殑鍏夌氦甯� List<InsFibers> insFibers = insFibersMapper.selectList(Wrappers.<InsFibers>lambdaQuery().eq(InsFibers::getInsBushingId, insBushing.getId())); if (CollectionUtils.isNotEmpty(insFibers)) { + for (InsFibers insFiber : insFibers) { + List<InsProduct> insProducts = insProductMapper.selectList(Wrappers.<InsProduct>lambdaQuery().eq(InsProduct::getInsFibersId, insFiber.getId())); + List<Integer> collect = insProducts.stream().map(InsProduct::getInsResult).filter(sm -> ObjectUtils.isNotEmpty(sm)).collect(Collectors.toList()); + if (insProducts.size()==collect.size()) { + insFiber.setState(1);//宸叉楠� + }else { + insFiber.setState(0);//鏈楠� + } + } fibers.addAll(insFibers); //鏌ュ嚭鍏夌氦甯︿笅鎵�鏈夌殑鍏夌氦 List<InsFiber> fiberList = insFiberMapper.selectList(Wrappers.<InsFiber>lambdaQuery().in(InsFiber::getInsFibersId, insFibers.stream().map(InsFibers::getId).collect(Collectors.toList()))); + for (InsFiber insFiber : fiberList) { + List<InsProduct> insProducts = insProductMapper.selectList(Wrappers.<InsProduct>lambdaQuery().eq(InsProduct::getInsFiberId, insFiber.getId())); + List<Integer> collect = insProducts.stream().map(InsProduct::getInsResult).filter(sm -> ObjectUtils.isNotEmpty(sm)).collect(Collectors.toList()); + if (insProducts.size()==collect.size()) { + insFiber.setState(1);//宸叉楠� + }else { + insFiber.setState(0);//鏈楠� + } + } fiber.addAll(fiberList); } else { //濡傛灉濂楃涓嬫病鏈夊厜绾ゅ甫灏卞彧鏈夊厜绾や簡 List<InsFiber> insFiberList = insFiberMapper.selectList(Wrappers.<InsFiber>lambdaQuery().eq(InsFiber::getInsBushingId, insBushing.getId())); + for (InsFiber insFiber : insFiberList) { + List<InsProduct> insProducts = insProductMapper.selectList(Wrappers.<InsProduct>lambdaQuery().eq(InsProduct::getInsFiberId, insFiber.getId())); + List<Integer> collect = insProducts.stream().map(InsProduct::getInsResult).filter(sm -> ObjectUtils.isNotEmpty(sm)).collect(Collectors.toList()); + if (insProducts.size()==collect.size()) { + insFiber.setState(1);//宸叉楠� + }else { + insFiber.setState(0);//鏈楠� + } + } fiber.addAll(insFiberList); } } @@ -309,14 +336,40 @@ //鍏堟煡鍑鸿繖涓牱鍝佷笅鏈夊摢浜涚鑹叉爣,鍏夌氦甯�,鍏夌氦鑹叉爣 //鍏堟煡鍑哄绠� List<InsBushing> insBushings = insBushingMapper.selectList(Wrappers.<InsBushing>lambdaQuery().eq(InsBushing::getInsSampleId, sampleId)); - for (InsBushing insBushing : insBushings) { - //鍐嶆煡璇㈠嚭鎵�鏈夌殑鍏夌氦甯� - List<InsFibers> insFibers = insFibersMapper.selectList(Wrappers.<InsFibers>lambdaQuery().eq(InsFibers::getInsBushingId, insBushing.getId())); - if (CollectionUtils.isNotEmpty(insFibers)) { - for (InsFibers insFiber : insFibers) { - //鏌ュ嚭鍏夌氦甯︿笅鎵�鏈夌殑鍏夌氦 - List<InsFiber> fiberList = insFiberMapper.selectList(Wrappers.<InsFiber>lambdaQuery().eq(InsFiber::getInsFibersId, insFiber.getId())); - for (InsFiber fiber : fiberList) { + if (insBushings.size()>0) { + //閫氫俊--娓╁害寰幆 + for (InsBushing insBushing : insBushings) { + //鍐嶆煡璇㈠嚭鎵�鏈夌殑鍏夌氦甯� + List<InsFibers> insFibers = insFibersMapper.selectList(Wrappers.<InsFibers>lambdaQuery().eq(InsFibers::getInsBushingId, insBushing.getId())); + if (CollectionUtils.isNotEmpty(insFibers)) { + for (InsFibers insFiber : insFibers) { + //鏌ュ嚭鍏夌氦甯︿笅鎵�鏈夌殑鍏夌氦 + List<InsFiber> fiberList = insFiberMapper.selectList(Wrappers.<InsFiber>lambdaQuery().eq(InsFiber::getInsFibersId, insFiber.getId())); + for (InsFiber fiber : fiberList) { + //鍐嶆牴鎹叧鑱旂殑鍏夌氦閰嶇疆鐨刬d鍜屽惊鐜鏁板拰娓╁害鍜屾牱鍝乮d杩涜鏌ヨ妫�楠岄」鐩� + List<InsProduct> insProducts = insProductMapper.selectList(Wrappers.<InsProduct>lambdaQuery() + .eq(InsProduct::getInsSampleId, sampleId) + .eq(InsProduct::getInspectionItem, inspectionItem) + .eq(InsProduct::getInspectionItemSubclass, inspectionItemSubclass) + .eq(InsProduct::getInsFiberId, fiber.getId())); + for (InsProduct insProduct : insProducts) { + InsProductResult insProductResult = insProductResultMapper.selectOne(Wrappers.<InsProductResult>lambdaQuery().eq(InsProductResult::getInsProductId, insProduct.getId())); + ProductVo productVo = new ProductVo(); + productVo.setCode(insFiber.getCode()); + productVo.setColor(fiber.getColor()); + productVo.setBushColor(fiber.getBushColor()); + if (ObjectUtils.isNotEmpty(insProductResult)) { + insProduct.setInsProductResult(insProductResult); + } + productVo.setInsProduct(insProduct); + productVos.add(productVo); + } + } + } + } else { + //濡傛灉濂楃涓嬫病鏈夊厜绾ゅ甫灏卞彧鏈夊厜绾や簡 + List<InsFiber> insFiberList = insFiberMapper.selectList(Wrappers.<InsFiber>lambdaQuery().eq(InsFiber::getInsBushingId, insBushing.getId())); + for (InsFiber fiber : insFiberList) { //鍐嶆牴鎹叧鑱旂殑鍏夌氦閰嶇疆鐨刬d鍜屽惊鐜鏁板拰娓╁害鍜屾牱鍝乮d杩涜鏌ヨ妫�楠岄」鐩� List<InsProduct> insProducts = insProductMapper.selectList(Wrappers.<InsProduct>lambdaQuery() .eq(InsProduct::getInsSampleId, sampleId) @@ -326,38 +379,31 @@ for (InsProduct insProduct : insProducts) { InsProductResult insProductResult = insProductResultMapper.selectOne(Wrappers.<InsProductResult>lambdaQuery().eq(InsProductResult::getInsProductId, insProduct.getId())); ProductVo productVo = new ProductVo(); - productVo.setCode(insFiber.getCode()); + productVo.setCode("/"); productVo.setColor(fiber.getColor()); productVo.setBushColor(fiber.getBushColor()); - if (ObjectUtils.isNotEmpty(insProductResult)) { - insProduct.setInsProductResult(insProductResult); - } + insProduct.setInsProductResult(insProductResult); productVo.setInsProduct(insProduct); productVos.add(productVo); } } } - } else { - //濡傛灉濂楃涓嬫病鏈夊厜绾ゅ甫灏卞彧鏈夊厜绾や簡 - List<InsFiber> insFiberList = insFiberMapper.selectList(Wrappers.<InsFiber>lambdaQuery().eq(InsFiber::getInsBushingId, insBushing.getId())); - for (InsFiber fiber : insFiberList) { - //鍐嶆牴鎹叧鑱旂殑鍏夌氦閰嶇疆鐨刬d鍜屽惊鐜鏁板拰娓╁害鍜屾牱鍝乮d杩涜鏌ヨ妫�楠岄」鐩� - List<InsProduct> insProducts = insProductMapper.selectList(Wrappers.<InsProduct>lambdaQuery() - .eq(InsProduct::getInsSampleId, sampleId) - .eq(InsProduct::getInspectionItem, inspectionItem) - .eq(InsProduct::getInspectionItemSubclass, inspectionItemSubclass) - .eq(InsProduct::getInsFiberId, fiber.getId())); - for (InsProduct insProduct : insProducts) { - InsProductResult insProductResult = insProductResultMapper.selectOne(Wrappers.<InsProductResult>lambdaQuery().eq(InsProductResult::getInsProductId, insProduct.getId())); - ProductVo productVo = new ProductVo(); - productVo.setCode("/"); - productVo.setColor(fiber.getColor()); - productVo.setBushColor(fiber.getBushColor()); - insProduct.setInsProductResult(insProductResult); - productVo.setInsProduct(insProduct); - productVos.add(productVo); - } + } + productVos = productVos.stream().sorted(Comparator.comparing(productVo -> productVo.getInsProduct().getInspectionItemClass())).collect(Collectors.toList()); + } + else { + //鐢靛姏--鐑惊鐜� + List<InsProduct> insProducts = insProductMapper.selectList(Wrappers.<InsProduct>lambdaQuery() + .eq(InsProduct::getInsSampleId, sampleId) + .eq(InsProduct::getInspectionItem, inspectionItem)); + for (InsProduct insProduct : insProducts) { + InsProductResult insProductResult = insProductResultMapper.selectOne(Wrappers.<InsProductResult>lambdaQuery().eq(InsProductResult::getInsProductId, insProduct.getId())); + ProductVo productVo = new ProductVo(); + if (ObjectUtils.isNotEmpty(insProductResult)) { + insProduct.setInsProductResult(insProductResult); } + productVo.setInsProduct(insProduct); + productVos.add(productVo); } } map.put("productVos", productVos); @@ -467,12 +513,15 @@ //鏍¢獙濡傛灉杩欎釜浜鸿繖涓娴嬮」鐩凡缁忔坊鍔犺繃浜嗗垯涓嶉渶瑕佸啀鏂板 Long count = auxiliaryOutputWorkingHoursMapper.selectCount(Wrappers.<AuxiliaryOutputWorkingHours>lambdaQuery() .eq(AuxiliaryOutputWorkingHours::getCheck, userId) - .eq(AuxiliaryOutputWorkingHours::getInspectProject, insProduct.getInspectionItemSubclass() + insProduct.getInspectionItem()) + .eq(AuxiliaryOutputWorkingHours::getInspectionItem, insProduct.getInspectionItem()) + .eq(AuxiliaryOutputWorkingHours::getInspectionItemSubclass, insProduct.getInspectionItemSubclass()) .eq(AuxiliaryOutputWorkingHours::getOrderNo, insOrder.getEntrustCode())); if (count == 0 && ObjectUtils.isNotEmpty(insProduct.getManHour())) { //娣诲姞姣忎釜浜虹殑浜ч噺宸ユ椂 AuxiliaryOutputWorkingHours auxiliaryOutputWorkingHours = new AuxiliaryOutputWorkingHours(); - auxiliaryOutputWorkingHours.setInspectProject(insProduct.getInspectionItemSubclass() + insProduct.getInspectionItem());//妫�娴嬮」鐩� + auxiliaryOutputWorkingHours.setInspectionItem(insProduct.getInspectionItem());//妫�娴嬬埗椤� + auxiliaryOutputWorkingHours.setInspectionItemSubclass(insProduct.getInspectionItemSubclass());//妫�娴嬪瓙椤� + auxiliaryOutputWorkingHours.setSample(insSampleMapper.selectById(insProduct.getInsSampleId()).getSampleCode());//鏍峰搧缂栧彿 auxiliaryOutputWorkingHours.setOrderNo(insOrder.getEntrustCode());//闈炲姞鐝鎵樺崟鍙� auxiliaryOutputWorkingHours.setWorkTime(insProduct.getManHour());//闈炲姞鐝伐鏃� auxiliaryOutputWorkingHours.setAmount(1);//闈炲姞鐝暟閲� @@ -1584,6 +1633,9 @@ try { signatureUrl = userMapper.selectById(userId).getSignatureUrl(); } catch (Exception e) { + throw new ErrorException("鎵句笉鍒版楠屼汉鐨勭鍚�"); + } + if (signatureUrl.equals("")) { throw new ErrorException("鎵句笉鍒版楠屼汉鐨勭鍚�"); } //Custom custom = customMapper.selectById(user.get("company")); @@ -3330,7 +3382,26 @@ product.setInsResult(1); } insProductMapper.updateById(product); - } else { + } + //濡傛灉鏄儹寰幆鎴栬�呮槸娓╁崌璇曢獙 + else if (product.getInspectionItem().equals("鐑惊鐜�") || product.getInspectionItem().equals("娓╁崌璇曢獙")){ + //鏌ヨ杩欎簺椤圭洰涓嬬殑鍏朵粬妫�楠岄」鐩槸鍚﹀叏閮ㄦ楠� + List<InsProduct> insProductList = insProductMapper.selectList(Wrappers.<InsProduct>lambdaQuery() + .eq(InsProduct::getInsSampleId, product.getInsSampleId()) + .like(InsProduct::getInspectionItemSubclass, "娓╁害")); + List<Integer> collect = insProductList.stream().filter(insProduct -> insProduct.getInsResult() != null).map(InsProduct::getInsResult).collect(Collectors.toList()); + List<Integer> tt = new ArrayList<>(); + tt.add(1); + if (collect.contains(0)) { + product.setLastValue("涓嶅悎鏍�"); + product.setInsResult(0); + } else if (collect.size() == insProductList.size() && collect.stream().distinct().collect(Collectors.toList()).containsAll(tt)) { + product.setLastValue("鍚堟牸"); + product.setInsResult(1); + } + insProductMapper.updateById(product); + } + else { count++; str += "<br/>" + count + "锛�" + product.getInspectionItem() + " " + product.getInspectionItemSubclass() + "<br/>"; } @@ -3391,7 +3462,7 @@ calendar.setTime(date); int dayOfWeek = calendar.get(Calendar.DAY_OF_WEEK); int day = calendar.get(Calendar.DAY_OF_MONTH); - return day + " " + getWeekDay(dayOfWeek); + return getWeekDay(dayOfWeek); } catch (Exception e) { e.printStackTrace(); } -- Gitblit v1.9.3