diff --git a/casic-metering-common/pom.xml b/casic-metering-common/pom.xml index 33f75c8..e431f85 100644 --- a/casic-metering-common/pom.xml +++ b/casic-metering-common/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -17,12 +17,12 @@ com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.github.oshi diff --git a/casic-metering-common/pom.xml b/casic-metering-common/pom.xml index 33f75c8..e431f85 100644 --- a/casic-metering-common/pom.xml +++ b/casic-metering-common/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -17,12 +17,12 @@ com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.github.oshi diff --git a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java index 0f37e03..250d886 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java @@ -12,6 +12,7 @@ import java.lang.reflect.Field; import java.lang.reflect.Method; import java.lang.reflect.Modifier; +import java.util.ArrayList; import java.util.Arrays; import java.util.List; @@ -26,8 +27,16 @@ * @return 全部相同返回true,有不相同的返回false */ public static boolean fieldCompare(Object beforeObj, Object afterObj, List fields) { - Field[] beforeFields = beforeObj.getClass().getDeclaredFields(); - Field[] afterFields = afterObj.getClass().getDeclaredFields(); + List beforeFieldList = Arrays.asList(beforeObj.getClass().getDeclaredFields()); + List superBeforeFileList = Arrays.asList(beforeObj.getClass().getSuperclass().getDeclaredFields()); + beforeFieldList.addAll(new ArrayList<>(superBeforeFileList)); + Field[] beforeFields = beforeFieldList.toArray(new Field[beforeFieldList.size()]); + + List afterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getDeclaredFields())); + List superAfterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getSuperclass().getDeclaredFields())); + afterFieldList.addAll(superAfterFieldList); + Field[] afterFields = afterFieldList.toArray(new Field[beforeFieldList.size()]); + Field.setAccessible(beforeFields, true); //设置私有属性可以访问到 Field.setAccessible(afterFields, true); //循环遍历比较属性 @@ -36,15 +45,19 @@ if (ObjectUtil.isNotEmpty(fields) && fields.contains(beforeFields[i].getName())) { try { Object beforeValue = beforeFields[i].get(beforeObj); //取出对应的属性值 - Object afterValue = afterFields[i].get(afterObj); + Object afterValue = null; + for (int j = 0; j < afterFields.length; j++) { + if(afterFields[j].getName().equals(beforeFields[i].getName())){ + afterValue = afterFields[j].get(afterObj); //取出对应的属性值 + break; + } + } if ((beforeValue != null && !"".equals(beforeValue) && !beforeValue.equals(afterValue)) || ((beforeValue == null || "".equals(beforeValue)) && afterValue != null)) { return false; } } catch (IllegalAccessException e) { log.error(e.getMessage()); } - - } } } diff --git a/casic-metering-common/pom.xml b/casic-metering-common/pom.xml index 33f75c8..e431f85 100644 --- a/casic-metering-common/pom.xml +++ b/casic-metering-common/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -17,12 +17,12 @@ com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.github.oshi diff --git a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java index 0f37e03..250d886 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java @@ -12,6 +12,7 @@ import java.lang.reflect.Field; import java.lang.reflect.Method; import java.lang.reflect.Modifier; +import java.util.ArrayList; import java.util.Arrays; import java.util.List; @@ -26,8 +27,16 @@ * @return 全部相同返回true,有不相同的返回false */ public static boolean fieldCompare(Object beforeObj, Object afterObj, List fields) { - Field[] beforeFields = beforeObj.getClass().getDeclaredFields(); - Field[] afterFields = afterObj.getClass().getDeclaredFields(); + List beforeFieldList = Arrays.asList(beforeObj.getClass().getDeclaredFields()); + List superBeforeFileList = Arrays.asList(beforeObj.getClass().getSuperclass().getDeclaredFields()); + beforeFieldList.addAll(new ArrayList<>(superBeforeFileList)); + Field[] beforeFields = beforeFieldList.toArray(new Field[beforeFieldList.size()]); + + List afterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getDeclaredFields())); + List superAfterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getSuperclass().getDeclaredFields())); + afterFieldList.addAll(superAfterFieldList); + Field[] afterFields = afterFieldList.toArray(new Field[beforeFieldList.size()]); + Field.setAccessible(beforeFields, true); //设置私有属性可以访问到 Field.setAccessible(afterFields, true); //循环遍历比较属性 @@ -36,15 +45,19 @@ if (ObjectUtil.isNotEmpty(fields) && fields.contains(beforeFields[i].getName())) { try { Object beforeValue = beforeFields[i].get(beforeObj); //取出对应的属性值 - Object afterValue = afterFields[i].get(afterObj); + Object afterValue = null; + for (int j = 0; j < afterFields.length; j++) { + if(afterFields[j].getName().equals(beforeFields[i].getName())){ + afterValue = afterFields[j].get(afterObj); //取出对应的属性值 + break; + } + } if ((beforeValue != null && !"".equals(beforeValue) && !beforeValue.equals(afterValue)) || ((beforeValue == null || "".equals(beforeValue)) && afterValue != null)) { return false; } } catch (IllegalAccessException e) { log.error(e.getMessage()); } - - } } } diff --git a/casic-metering-dao/pom.xml b/casic-metering-dao/pom.xml index 64c6fbf..6cffff6 100644 --- a/casic-metering-dao/pom.xml +++ b/casic-metering-dao/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -16,7 +16,7 @@ com.casic casic-metering-model - 2.0.0 + 1.0.0.0 diff --git a/casic-metering-common/pom.xml b/casic-metering-common/pom.xml index 33f75c8..e431f85 100644 --- a/casic-metering-common/pom.xml +++ b/casic-metering-common/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -17,12 +17,12 @@ com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.github.oshi diff --git a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java index 0f37e03..250d886 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java @@ -12,6 +12,7 @@ import java.lang.reflect.Field; import java.lang.reflect.Method; import java.lang.reflect.Modifier; +import java.util.ArrayList; import java.util.Arrays; import java.util.List; @@ -26,8 +27,16 @@ * @return 全部相同返回true,有不相同的返回false */ public static boolean fieldCompare(Object beforeObj, Object afterObj, List fields) { - Field[] beforeFields = beforeObj.getClass().getDeclaredFields(); - Field[] afterFields = afterObj.getClass().getDeclaredFields(); + List beforeFieldList = Arrays.asList(beforeObj.getClass().getDeclaredFields()); + List superBeforeFileList = Arrays.asList(beforeObj.getClass().getSuperclass().getDeclaredFields()); + beforeFieldList.addAll(new ArrayList<>(superBeforeFileList)); + Field[] beforeFields = beforeFieldList.toArray(new Field[beforeFieldList.size()]); + + List afterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getDeclaredFields())); + List superAfterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getSuperclass().getDeclaredFields())); + afterFieldList.addAll(superAfterFieldList); + Field[] afterFields = afterFieldList.toArray(new Field[beforeFieldList.size()]); + Field.setAccessible(beforeFields, true); //设置私有属性可以访问到 Field.setAccessible(afterFields, true); //循环遍历比较属性 @@ -36,15 +45,19 @@ if (ObjectUtil.isNotEmpty(fields) && fields.contains(beforeFields[i].getName())) { try { Object beforeValue = beforeFields[i].get(beforeObj); //取出对应的属性值 - Object afterValue = afterFields[i].get(afterObj); + Object afterValue = null; + for (int j = 0; j < afterFields.length; j++) { + if(afterFields[j].getName().equals(beforeFields[i].getName())){ + afterValue = afterFields[j].get(afterObj); //取出对应的属性值 + break; + } + } if ((beforeValue != null && !"".equals(beforeValue) && !beforeValue.equals(afterValue)) || ((beforeValue == null || "".equals(beforeValue)) && afterValue != null)) { return false; } } catch (IllegalAccessException e) { log.error(e.getMessage()); } - - } } } diff --git a/casic-metering-dao/pom.xml b/casic-metering-dao/pom.xml index 64c6fbf..6cffff6 100644 --- a/casic-metering-dao/pom.xml +++ b/casic-metering-dao/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -16,7 +16,7 @@ com.casic casic-metering-model - 2.0.0 + 1.0.0.0 diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java index 548081b..f8ae80b 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java @@ -22,4 +22,9 @@ @Param("equipmentName") String equipmentName); PlanEquipmentStatus getPlanEquipmentStatus(@Param("equipmentId")Long equipmentId); + + + void inspectionStatusUpdate(@Param("executeStatus") String executeStatus, + @Param("inspectionId") Long inspectionId); + } diff --git a/casic-metering-common/pom.xml b/casic-metering-common/pom.xml index 33f75c8..e431f85 100644 --- a/casic-metering-common/pom.xml +++ b/casic-metering-common/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -17,12 +17,12 @@ com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.github.oshi diff --git a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java index 0f37e03..250d886 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java @@ -12,6 +12,7 @@ import java.lang.reflect.Field; import java.lang.reflect.Method; import java.lang.reflect.Modifier; +import java.util.ArrayList; import java.util.Arrays; import java.util.List; @@ -26,8 +27,16 @@ * @return 全部相同返回true,有不相同的返回false */ public static boolean fieldCompare(Object beforeObj, Object afterObj, List fields) { - Field[] beforeFields = beforeObj.getClass().getDeclaredFields(); - Field[] afterFields = afterObj.getClass().getDeclaredFields(); + List beforeFieldList = Arrays.asList(beforeObj.getClass().getDeclaredFields()); + List superBeforeFileList = Arrays.asList(beforeObj.getClass().getSuperclass().getDeclaredFields()); + beforeFieldList.addAll(new ArrayList<>(superBeforeFileList)); + Field[] beforeFields = beforeFieldList.toArray(new Field[beforeFieldList.size()]); + + List afterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getDeclaredFields())); + List superAfterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getSuperclass().getDeclaredFields())); + afterFieldList.addAll(superAfterFieldList); + Field[] afterFields = afterFieldList.toArray(new Field[beforeFieldList.size()]); + Field.setAccessible(beforeFields, true); //设置私有属性可以访问到 Field.setAccessible(afterFields, true); //循环遍历比较属性 @@ -36,15 +45,19 @@ if (ObjectUtil.isNotEmpty(fields) && fields.contains(beforeFields[i].getName())) { try { Object beforeValue = beforeFields[i].get(beforeObj); //取出对应的属性值 - Object afterValue = afterFields[i].get(afterObj); + Object afterValue = null; + for (int j = 0; j < afterFields.length; j++) { + if(afterFields[j].getName().equals(beforeFields[i].getName())){ + afterValue = afterFields[j].get(afterObj); //取出对应的属性值 + break; + } + } if ((beforeValue != null && !"".equals(beforeValue) && !beforeValue.equals(afterValue)) || ((beforeValue == null || "".equals(beforeValue)) && afterValue != null)) { return false; } } catch (IllegalAccessException e) { log.error(e.getMessage()); } - - } } } diff --git a/casic-metering-dao/pom.xml b/casic-metering-dao/pom.xml index 64c6fbf..6cffff6 100644 --- a/casic-metering-dao/pom.xml +++ b/casic-metering-dao/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -16,7 +16,7 @@ com.casic casic-metering-model - 2.0.0 + 1.0.0.0 diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java index 548081b..f8ae80b 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java @@ -22,4 +22,9 @@ @Param("equipmentName") String equipmentName); PlanEquipmentStatus getPlanEquipmentStatus(@Param("equipmentId")Long equipmentId); + + + void inspectionStatusUpdate(@Param("executeStatus") String executeStatus, + @Param("inspectionId") Long inspectionId); + } diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml index a2c0944..e9d9f55 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml @@ -91,6 +91,7 @@ diff --git a/casic-metering-common/pom.xml b/casic-metering-common/pom.xml index 33f75c8..e431f85 100644 --- a/casic-metering-common/pom.xml +++ b/casic-metering-common/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -17,12 +17,12 @@ com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.github.oshi diff --git a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java index 0f37e03..250d886 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java @@ -12,6 +12,7 @@ import java.lang.reflect.Field; import java.lang.reflect.Method; import java.lang.reflect.Modifier; +import java.util.ArrayList; import java.util.Arrays; import java.util.List; @@ -26,8 +27,16 @@ * @return 全部相同返回true,有不相同的返回false */ public static boolean fieldCompare(Object beforeObj, Object afterObj, List fields) { - Field[] beforeFields = beforeObj.getClass().getDeclaredFields(); - Field[] afterFields = afterObj.getClass().getDeclaredFields(); + List beforeFieldList = Arrays.asList(beforeObj.getClass().getDeclaredFields()); + List superBeforeFileList = Arrays.asList(beforeObj.getClass().getSuperclass().getDeclaredFields()); + beforeFieldList.addAll(new ArrayList<>(superBeforeFileList)); + Field[] beforeFields = beforeFieldList.toArray(new Field[beforeFieldList.size()]); + + List afterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getDeclaredFields())); + List superAfterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getSuperclass().getDeclaredFields())); + afterFieldList.addAll(superAfterFieldList); + Field[] afterFields = afterFieldList.toArray(new Field[beforeFieldList.size()]); + Field.setAccessible(beforeFields, true); //设置私有属性可以访问到 Field.setAccessible(afterFields, true); //循环遍历比较属性 @@ -36,15 +45,19 @@ if (ObjectUtil.isNotEmpty(fields) && fields.contains(beforeFields[i].getName())) { try { Object beforeValue = beforeFields[i].get(beforeObj); //取出对应的属性值 - Object afterValue = afterFields[i].get(afterObj); + Object afterValue = null; + for (int j = 0; j < afterFields.length; j++) { + if(afterFields[j].getName().equals(beforeFields[i].getName())){ + afterValue = afterFields[j].get(afterObj); //取出对应的属性值 + break; + } + } if ((beforeValue != null && !"".equals(beforeValue) && !beforeValue.equals(afterValue)) || ((beforeValue == null || "".equals(beforeValue)) && afterValue != null)) { return false; } } catch (IllegalAccessException e) { log.error(e.getMessage()); } - - } } } diff --git a/casic-metering-dao/pom.xml b/casic-metering-dao/pom.xml index 64c6fbf..6cffff6 100644 --- a/casic-metering-dao/pom.xml +++ b/casic-metering-dao/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -16,7 +16,7 @@ com.casic casic-metering-model - 2.0.0 + 1.0.0.0 diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java index 548081b..f8ae80b 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java @@ -22,4 +22,9 @@ @Param("equipmentName") String equipmentName); PlanEquipmentStatus getPlanEquipmentStatus(@Param("equipmentId")Long equipmentId); + + + void inspectionStatusUpdate(@Param("executeStatus") String executeStatus, + @Param("inspectionId") Long inspectionId); + } diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml index a2c0944..e9d9f55 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml @@ -91,6 +91,7 @@ diff --git a/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml index bd0ad5f..ed9981e 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml @@ -19,7 +19,7 @@ id, inspection_id, equipment_id, inspection_time, plan_id, remarks, create_time, update_time - SELECT r.id AS id, r.inspection_id AS inspectionId, @@ -41,7 +41,7 @@ eqpt_inspection_equipment_relation r LEFT JOIN eqpt_equipment_info e ON e.id = r.equipment_id LEFT JOIN eqpt_plan p ON p.id = r.plan_id - AND r.inspection_id = #{inspectionId} + WHERE r.inspection_id = #{inspectionId} diff --git a/casic-metering-common/pom.xml b/casic-metering-common/pom.xml index 33f75c8..e431f85 100644 --- a/casic-metering-common/pom.xml +++ b/casic-metering-common/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -17,12 +17,12 @@ com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.github.oshi diff --git a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java index 0f37e03..250d886 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java @@ -12,6 +12,7 @@ import java.lang.reflect.Field; import java.lang.reflect.Method; import java.lang.reflect.Modifier; +import java.util.ArrayList; import java.util.Arrays; import java.util.List; @@ -26,8 +27,16 @@ * @return 全部相同返回true,有不相同的返回false */ public static boolean fieldCompare(Object beforeObj, Object afterObj, List fields) { - Field[] beforeFields = beforeObj.getClass().getDeclaredFields(); - Field[] afterFields = afterObj.getClass().getDeclaredFields(); + List beforeFieldList = Arrays.asList(beforeObj.getClass().getDeclaredFields()); + List superBeforeFileList = Arrays.asList(beforeObj.getClass().getSuperclass().getDeclaredFields()); + beforeFieldList.addAll(new ArrayList<>(superBeforeFileList)); + Field[] beforeFields = beforeFieldList.toArray(new Field[beforeFieldList.size()]); + + List afterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getDeclaredFields())); + List superAfterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getSuperclass().getDeclaredFields())); + afterFieldList.addAll(superAfterFieldList); + Field[] afterFields = afterFieldList.toArray(new Field[beforeFieldList.size()]); + Field.setAccessible(beforeFields, true); //设置私有属性可以访问到 Field.setAccessible(afterFields, true); //循环遍历比较属性 @@ -36,15 +45,19 @@ if (ObjectUtil.isNotEmpty(fields) && fields.contains(beforeFields[i].getName())) { try { Object beforeValue = beforeFields[i].get(beforeObj); //取出对应的属性值 - Object afterValue = afterFields[i].get(afterObj); + Object afterValue = null; + for (int j = 0; j < afterFields.length; j++) { + if(afterFields[j].getName().equals(beforeFields[i].getName())){ + afterValue = afterFields[j].get(afterObj); //取出对应的属性值 + break; + } + } if ((beforeValue != null && !"".equals(beforeValue) && !beforeValue.equals(afterValue)) || ((beforeValue == null || "".equals(beforeValue)) && afterValue != null)) { return false; } } catch (IllegalAccessException e) { log.error(e.getMessage()); } - - } } } diff --git a/casic-metering-dao/pom.xml b/casic-metering-dao/pom.xml index 64c6fbf..6cffff6 100644 --- a/casic-metering-dao/pom.xml +++ b/casic-metering-dao/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -16,7 +16,7 @@ com.casic casic-metering-model - 2.0.0 + 1.0.0.0 diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java index 548081b..f8ae80b 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java @@ -22,4 +22,9 @@ @Param("equipmentName") String equipmentName); PlanEquipmentStatus getPlanEquipmentStatus(@Param("equipmentId")Long equipmentId); + + + void inspectionStatusUpdate(@Param("executeStatus") String executeStatus, + @Param("inspectionId") Long inspectionId); + } diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml index a2c0944..e9d9f55 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml @@ -91,6 +91,7 @@ diff --git a/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml index bd0ad5f..ed9981e 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml @@ -19,7 +19,7 @@ id, inspection_id, equipment_id, inspection_time, plan_id, remarks, create_time, update_time - SELECT r.id AS id, r.inspection_id AS inspectionId, @@ -41,7 +41,7 @@ eqpt_inspection_equipment_relation r LEFT JOIN eqpt_equipment_info e ON e.id = r.equipment_id LEFT JOIN eqpt_plan p ON p.id = r.plan_id - AND r.inspection_id = #{inspectionId} + WHERE r.inspection_id = #{inspectionId} diff --git a/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml index 3aeb4a4..1c23860 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml @@ -67,4 +67,18 @@ LIMIT 1 + + update + eqpt_plan_equipment_relation r1, + eqpt_plan p, + eqpt_inspection_equipment_relation r2 + set r1.execute_status = #{executeStatus}, + r1.execute_time = r2.inspection_time + where r1.plan_id = p.id + and p.year = YEAR(NOW()) + and r1.execute_status = '0' + and r1.equipment_id = r2.equipment_id + and r2.inspection_id = #{inspectionId} + + diff --git a/casic-metering-common/pom.xml b/casic-metering-common/pom.xml index 33f75c8..e431f85 100644 --- a/casic-metering-common/pom.xml +++ b/casic-metering-common/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -17,12 +17,12 @@ com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.github.oshi diff --git a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java index 0f37e03..250d886 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java @@ -12,6 +12,7 @@ import java.lang.reflect.Field; import java.lang.reflect.Method; import java.lang.reflect.Modifier; +import java.util.ArrayList; import java.util.Arrays; import java.util.List; @@ -26,8 +27,16 @@ * @return 全部相同返回true,有不相同的返回false */ public static boolean fieldCompare(Object beforeObj, Object afterObj, List fields) { - Field[] beforeFields = beforeObj.getClass().getDeclaredFields(); - Field[] afterFields = afterObj.getClass().getDeclaredFields(); + List beforeFieldList = Arrays.asList(beforeObj.getClass().getDeclaredFields()); + List superBeforeFileList = Arrays.asList(beforeObj.getClass().getSuperclass().getDeclaredFields()); + beforeFieldList.addAll(new ArrayList<>(superBeforeFileList)); + Field[] beforeFields = beforeFieldList.toArray(new Field[beforeFieldList.size()]); + + List afterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getDeclaredFields())); + List superAfterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getSuperclass().getDeclaredFields())); + afterFieldList.addAll(superAfterFieldList); + Field[] afterFields = afterFieldList.toArray(new Field[beforeFieldList.size()]); + Field.setAccessible(beforeFields, true); //设置私有属性可以访问到 Field.setAccessible(afterFields, true); //循环遍历比较属性 @@ -36,15 +45,19 @@ if (ObjectUtil.isNotEmpty(fields) && fields.contains(beforeFields[i].getName())) { try { Object beforeValue = beforeFields[i].get(beforeObj); //取出对应的属性值 - Object afterValue = afterFields[i].get(afterObj); + Object afterValue = null; + for (int j = 0; j < afterFields.length; j++) { + if(afterFields[j].getName().equals(beforeFields[i].getName())){ + afterValue = afterFields[j].get(afterObj); //取出对应的属性值 + break; + } + } if ((beforeValue != null && !"".equals(beforeValue) && !beforeValue.equals(afterValue)) || ((beforeValue == null || "".equals(beforeValue)) && afterValue != null)) { return false; } } catch (IllegalAccessException e) { log.error(e.getMessage()); } - - } } } diff --git a/casic-metering-dao/pom.xml b/casic-metering-dao/pom.xml index 64c6fbf..6cffff6 100644 --- a/casic-metering-dao/pom.xml +++ b/casic-metering-dao/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -16,7 +16,7 @@ com.casic casic-metering-model - 2.0.0 + 1.0.0.0 diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java index 548081b..f8ae80b 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java @@ -22,4 +22,9 @@ @Param("equipmentName") String equipmentName); PlanEquipmentStatus getPlanEquipmentStatus(@Param("equipmentId")Long equipmentId); + + + void inspectionStatusUpdate(@Param("executeStatus") String executeStatus, + @Param("inspectionId") Long inspectionId); + } diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml index a2c0944..e9d9f55 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml @@ -91,6 +91,7 @@ diff --git a/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml index bd0ad5f..ed9981e 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml @@ -19,7 +19,7 @@ id, inspection_id, equipment_id, inspection_time, plan_id, remarks, create_time, update_time - SELECT r.id AS id, r.inspection_id AS inspectionId, @@ -41,7 +41,7 @@ eqpt_inspection_equipment_relation r LEFT JOIN eqpt_equipment_info e ON e.id = r.equipment_id LEFT JOIN eqpt_plan p ON p.id = r.plan_id - AND r.inspection_id = #{inspectionId} + WHERE r.inspection_id = #{inspectionId} diff --git a/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml index 3aeb4a4..1c23860 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml @@ -67,4 +67,18 @@ LIMIT 1 + + update + eqpt_plan_equipment_relation r1, + eqpt_plan p, + eqpt_inspection_equipment_relation r2 + set r1.execute_status = #{executeStatus}, + r1.execute_time = r2.inspection_time + where r1.plan_id = p.id + and p.year = YEAR(NOW()) + and r1.execute_status = '0' + and r1.equipment_id = r2.equipment_id + and r2.inspection_id = #{inspectionId} + + diff --git a/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml index 93a8dc8..a2e8a11 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml @@ -29,7 +29,7 @@ n.notify_user as notifyUser, n.notify_dept as notifyDept, n.plan_id as planId, - p.plan_type as planType, + p.plan_category as planCategory, p.create_user_id as createUserId, p.create_user_name as createUserName, p.create_dept_id as createDeptId, diff --git a/casic-metering-common/pom.xml b/casic-metering-common/pom.xml index 33f75c8..e431f85 100644 --- a/casic-metering-common/pom.xml +++ b/casic-metering-common/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -17,12 +17,12 @@ com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.github.oshi diff --git a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java index 0f37e03..250d886 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java @@ -12,6 +12,7 @@ import java.lang.reflect.Field; import java.lang.reflect.Method; import java.lang.reflect.Modifier; +import java.util.ArrayList; import java.util.Arrays; import java.util.List; @@ -26,8 +27,16 @@ * @return 全部相同返回true,有不相同的返回false */ public static boolean fieldCompare(Object beforeObj, Object afterObj, List fields) { - Field[] beforeFields = beforeObj.getClass().getDeclaredFields(); - Field[] afterFields = afterObj.getClass().getDeclaredFields(); + List beforeFieldList = Arrays.asList(beforeObj.getClass().getDeclaredFields()); + List superBeforeFileList = Arrays.asList(beforeObj.getClass().getSuperclass().getDeclaredFields()); + beforeFieldList.addAll(new ArrayList<>(superBeforeFileList)); + Field[] beforeFields = beforeFieldList.toArray(new Field[beforeFieldList.size()]); + + List afterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getDeclaredFields())); + List superAfterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getSuperclass().getDeclaredFields())); + afterFieldList.addAll(superAfterFieldList); + Field[] afterFields = afterFieldList.toArray(new Field[beforeFieldList.size()]); + Field.setAccessible(beforeFields, true); //设置私有属性可以访问到 Field.setAccessible(afterFields, true); //循环遍历比较属性 @@ -36,15 +45,19 @@ if (ObjectUtil.isNotEmpty(fields) && fields.contains(beforeFields[i].getName())) { try { Object beforeValue = beforeFields[i].get(beforeObj); //取出对应的属性值 - Object afterValue = afterFields[i].get(afterObj); + Object afterValue = null; + for (int j = 0; j < afterFields.length; j++) { + if(afterFields[j].getName().equals(beforeFields[i].getName())){ + afterValue = afterFields[j].get(afterObj); //取出对应的属性值 + break; + } + } if ((beforeValue != null && !"".equals(beforeValue) && !beforeValue.equals(afterValue)) || ((beforeValue == null || "".equals(beforeValue)) && afterValue != null)) { return false; } } catch (IllegalAccessException e) { log.error(e.getMessage()); } - - } } } diff --git a/casic-metering-dao/pom.xml b/casic-metering-dao/pom.xml index 64c6fbf..6cffff6 100644 --- a/casic-metering-dao/pom.xml +++ b/casic-metering-dao/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -16,7 +16,7 @@ com.casic casic-metering-model - 2.0.0 + 1.0.0.0 diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java index 548081b..f8ae80b 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java @@ -22,4 +22,9 @@ @Param("equipmentName") String equipmentName); PlanEquipmentStatus getPlanEquipmentStatus(@Param("equipmentId")Long equipmentId); + + + void inspectionStatusUpdate(@Param("executeStatus") String executeStatus, + @Param("inspectionId") Long inspectionId); + } diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml index a2c0944..e9d9f55 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml @@ -91,6 +91,7 @@ diff --git a/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml index bd0ad5f..ed9981e 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml @@ -19,7 +19,7 @@ id, inspection_id, equipment_id, inspection_time, plan_id, remarks, create_time, update_time - SELECT r.id AS id, r.inspection_id AS inspectionId, @@ -41,7 +41,7 @@ eqpt_inspection_equipment_relation r LEFT JOIN eqpt_equipment_info e ON e.id = r.equipment_id LEFT JOIN eqpt_plan p ON p.id = r.plan_id - AND r.inspection_id = #{inspectionId} + WHERE r.inspection_id = #{inspectionId} diff --git a/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml index 3aeb4a4..1c23860 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml @@ -67,4 +67,18 @@ LIMIT 1 + + update + eqpt_plan_equipment_relation r1, + eqpt_plan p, + eqpt_inspection_equipment_relation r2 + set r1.execute_status = #{executeStatus}, + r1.execute_time = r2.inspection_time + where r1.plan_id = p.id + and p.year = YEAR(NOW()) + and r1.execute_status = '0' + and r1.equipment_id = r2.equipment_id + and r2.inspection_id = #{inspectionId} + + diff --git a/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml index 93a8dc8..a2e8a11 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml @@ -29,7 +29,7 @@ n.notify_user as notifyUser, n.notify_dept as notifyDept, n.plan_id as planId, - p.plan_type as planType, + p.plan_category as planCategory, p.create_user_id as createUserId, p.create_user_name as createUserName, p.create_dept_id as createDeptId, diff --git a/casic-metering-eqpt-api/pom.xml b/casic-metering-eqpt-api/pom.xml index 456fdbf..99f40ca 100644 --- a/casic-metering-eqpt-api/pom.xml +++ b/casic-metering-eqpt-api/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -18,13 +18,13 @@ com.casic casic-metering-service - 2.0.0 + 1.0.0.0 com.casic casic-metering-job - 2.0.0 + 1.0.0.0 org.springframework.boot diff --git a/casic-metering-common/pom.xml b/casic-metering-common/pom.xml index 33f75c8..e431f85 100644 --- a/casic-metering-common/pom.xml +++ b/casic-metering-common/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -17,12 +17,12 @@ com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.github.oshi diff --git a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java index 0f37e03..250d886 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java @@ -12,6 +12,7 @@ import java.lang.reflect.Field; import java.lang.reflect.Method; import java.lang.reflect.Modifier; +import java.util.ArrayList; import java.util.Arrays; import java.util.List; @@ -26,8 +27,16 @@ * @return 全部相同返回true,有不相同的返回false */ public static boolean fieldCompare(Object beforeObj, Object afterObj, List fields) { - Field[] beforeFields = beforeObj.getClass().getDeclaredFields(); - Field[] afterFields = afterObj.getClass().getDeclaredFields(); + List beforeFieldList = Arrays.asList(beforeObj.getClass().getDeclaredFields()); + List superBeforeFileList = Arrays.asList(beforeObj.getClass().getSuperclass().getDeclaredFields()); + beforeFieldList.addAll(new ArrayList<>(superBeforeFileList)); + Field[] beforeFields = beforeFieldList.toArray(new Field[beforeFieldList.size()]); + + List afterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getDeclaredFields())); + List superAfterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getSuperclass().getDeclaredFields())); + afterFieldList.addAll(superAfterFieldList); + Field[] afterFields = afterFieldList.toArray(new Field[beforeFieldList.size()]); + Field.setAccessible(beforeFields, true); //设置私有属性可以访问到 Field.setAccessible(afterFields, true); //循环遍历比较属性 @@ -36,15 +45,19 @@ if (ObjectUtil.isNotEmpty(fields) && fields.contains(beforeFields[i].getName())) { try { Object beforeValue = beforeFields[i].get(beforeObj); //取出对应的属性值 - Object afterValue = afterFields[i].get(afterObj); + Object afterValue = null; + for (int j = 0; j < afterFields.length; j++) { + if(afterFields[j].getName().equals(beforeFields[i].getName())){ + afterValue = afterFields[j].get(afterObj); //取出对应的属性值 + break; + } + } if ((beforeValue != null && !"".equals(beforeValue) && !beforeValue.equals(afterValue)) || ((beforeValue == null || "".equals(beforeValue)) && afterValue != null)) { return false; } } catch (IllegalAccessException e) { log.error(e.getMessage()); } - - } } } diff --git a/casic-metering-dao/pom.xml b/casic-metering-dao/pom.xml index 64c6fbf..6cffff6 100644 --- a/casic-metering-dao/pom.xml +++ b/casic-metering-dao/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -16,7 +16,7 @@ com.casic casic-metering-model - 2.0.0 + 1.0.0.0 diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java index 548081b..f8ae80b 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java @@ -22,4 +22,9 @@ @Param("equipmentName") String equipmentName); PlanEquipmentStatus getPlanEquipmentStatus(@Param("equipmentId")Long equipmentId); + + + void inspectionStatusUpdate(@Param("executeStatus") String executeStatus, + @Param("inspectionId") Long inspectionId); + } diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml index a2c0944..e9d9f55 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml @@ -91,6 +91,7 @@ diff --git a/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml index bd0ad5f..ed9981e 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml @@ -19,7 +19,7 @@ id, inspection_id, equipment_id, inspection_time, plan_id, remarks, create_time, update_time - SELECT r.id AS id, r.inspection_id AS inspectionId, @@ -41,7 +41,7 @@ eqpt_inspection_equipment_relation r LEFT JOIN eqpt_equipment_info e ON e.id = r.equipment_id LEFT JOIN eqpt_plan p ON p.id = r.plan_id - AND r.inspection_id = #{inspectionId} + WHERE r.inspection_id = #{inspectionId} diff --git a/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml index 3aeb4a4..1c23860 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml @@ -67,4 +67,18 @@ LIMIT 1 + + update + eqpt_plan_equipment_relation r1, + eqpt_plan p, + eqpt_inspection_equipment_relation r2 + set r1.execute_status = #{executeStatus}, + r1.execute_time = r2.inspection_time + where r1.plan_id = p.id + and p.year = YEAR(NOW()) + and r1.execute_status = '0' + and r1.equipment_id = r2.equipment_id + and r2.inspection_id = #{inspectionId} + + diff --git a/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml index 93a8dc8..a2e8a11 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml @@ -29,7 +29,7 @@ n.notify_user as notifyUser, n.notify_dept as notifyDept, n.plan_id as planId, - p.plan_type as planType, + p.plan_category as planCategory, p.create_user_id as createUserId, p.create_user_name as createUserName, p.create_dept_id as createDeptId, diff --git a/casic-metering-eqpt-api/pom.xml b/casic-metering-eqpt-api/pom.xml index 456fdbf..99f40ca 100644 --- a/casic-metering-eqpt-api/pom.xml +++ b/casic-metering-eqpt-api/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -18,13 +18,13 @@ com.casic casic-metering-service - 2.0.0 + 1.0.0.0 com.casic casic-metering-job - 2.0.0 + 1.0.0.0 org.springframework.boot diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java index 268fb3a..06cb258 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java @@ -84,4 +84,13 @@ return businessOrderService.updateOrder(businessOrder); } + @ApiOperation("任务单取消") + @PostMapping("/cancel") + public ReturnDTO receiveOrder(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return businessOrderService.updateStatusById(idDTO.getId(), OrderStatusDictEnum.ALREADY_CANCEL); + } + } diff --git a/casic-metering-common/pom.xml b/casic-metering-common/pom.xml index 33f75c8..e431f85 100644 --- a/casic-metering-common/pom.xml +++ b/casic-metering-common/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -17,12 +17,12 @@ com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.github.oshi diff --git a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java index 0f37e03..250d886 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java @@ -12,6 +12,7 @@ import java.lang.reflect.Field; import java.lang.reflect.Method; import java.lang.reflect.Modifier; +import java.util.ArrayList; import java.util.Arrays; import java.util.List; @@ -26,8 +27,16 @@ * @return 全部相同返回true,有不相同的返回false */ public static boolean fieldCompare(Object beforeObj, Object afterObj, List fields) { - Field[] beforeFields = beforeObj.getClass().getDeclaredFields(); - Field[] afterFields = afterObj.getClass().getDeclaredFields(); + List beforeFieldList = Arrays.asList(beforeObj.getClass().getDeclaredFields()); + List superBeforeFileList = Arrays.asList(beforeObj.getClass().getSuperclass().getDeclaredFields()); + beforeFieldList.addAll(new ArrayList<>(superBeforeFileList)); + Field[] beforeFields = beforeFieldList.toArray(new Field[beforeFieldList.size()]); + + List afterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getDeclaredFields())); + List superAfterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getSuperclass().getDeclaredFields())); + afterFieldList.addAll(superAfterFieldList); + Field[] afterFields = afterFieldList.toArray(new Field[beforeFieldList.size()]); + Field.setAccessible(beforeFields, true); //设置私有属性可以访问到 Field.setAccessible(afterFields, true); //循环遍历比较属性 @@ -36,15 +45,19 @@ if (ObjectUtil.isNotEmpty(fields) && fields.contains(beforeFields[i].getName())) { try { Object beforeValue = beforeFields[i].get(beforeObj); //取出对应的属性值 - Object afterValue = afterFields[i].get(afterObj); + Object afterValue = null; + for (int j = 0; j < afterFields.length; j++) { + if(afterFields[j].getName().equals(beforeFields[i].getName())){ + afterValue = afterFields[j].get(afterObj); //取出对应的属性值 + break; + } + } if ((beforeValue != null && !"".equals(beforeValue) && !beforeValue.equals(afterValue)) || ((beforeValue == null || "".equals(beforeValue)) && afterValue != null)) { return false; } } catch (IllegalAccessException e) { log.error(e.getMessage()); } - - } } } diff --git a/casic-metering-dao/pom.xml b/casic-metering-dao/pom.xml index 64c6fbf..6cffff6 100644 --- a/casic-metering-dao/pom.xml +++ b/casic-metering-dao/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -16,7 +16,7 @@ com.casic casic-metering-model - 2.0.0 + 1.0.0.0 diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java index 548081b..f8ae80b 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java @@ -22,4 +22,9 @@ @Param("equipmentName") String equipmentName); PlanEquipmentStatus getPlanEquipmentStatus(@Param("equipmentId")Long equipmentId); + + + void inspectionStatusUpdate(@Param("executeStatus") String executeStatus, + @Param("inspectionId") Long inspectionId); + } diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml index a2c0944..e9d9f55 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml @@ -91,6 +91,7 @@ diff --git a/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml index bd0ad5f..ed9981e 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml @@ -19,7 +19,7 @@ id, inspection_id, equipment_id, inspection_time, plan_id, remarks, create_time, update_time - SELECT r.id AS id, r.inspection_id AS inspectionId, @@ -41,7 +41,7 @@ eqpt_inspection_equipment_relation r LEFT JOIN eqpt_equipment_info e ON e.id = r.equipment_id LEFT JOIN eqpt_plan p ON p.id = r.plan_id - AND r.inspection_id = #{inspectionId} + WHERE r.inspection_id = #{inspectionId} diff --git a/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml index 3aeb4a4..1c23860 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml @@ -67,4 +67,18 @@ LIMIT 1 + + update + eqpt_plan_equipment_relation r1, + eqpt_plan p, + eqpt_inspection_equipment_relation r2 + set r1.execute_status = #{executeStatus}, + r1.execute_time = r2.inspection_time + where r1.plan_id = p.id + and p.year = YEAR(NOW()) + and r1.execute_status = '0' + and r1.equipment_id = r2.equipment_id + and r2.inspection_id = #{inspectionId} + + diff --git a/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml index 93a8dc8..a2e8a11 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml @@ -29,7 +29,7 @@ n.notify_user as notifyUser, n.notify_dept as notifyDept, n.plan_id as planId, - p.plan_type as planType, + p.plan_category as planCategory, p.create_user_id as createUserId, p.create_user_name as createUserName, p.create_dept_id as createDeptId, diff --git a/casic-metering-eqpt-api/pom.xml b/casic-metering-eqpt-api/pom.xml index 456fdbf..99f40ca 100644 --- a/casic-metering-eqpt-api/pom.xml +++ b/casic-metering-eqpt-api/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -18,13 +18,13 @@ com.casic casic-metering-service - 2.0.0 + 1.0.0.0 com.casic casic-metering-job - 2.0.0 + 1.0.0.0 org.springframework.boot diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java index 268fb3a..06cb258 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java @@ -84,4 +84,13 @@ return businessOrderService.updateOrder(businessOrder); } + @ApiOperation("任务单取消") + @PostMapping("/cancel") + public ReturnDTO receiveOrder(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return businessOrderService.updateStatusById(idDTO.getId(), OrderStatusDictEnum.ALREADY_CANCEL); + } + } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java index 9456479..9717b78 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java @@ -16,6 +16,7 @@ import com.casic.missiles.dto.plan.PlanQueryForm; import com.casic.missiles.model.equipment.EquipmentInfoApproval; import com.casic.missiles.model.plan.Plan; +import com.casic.missiles.model.plan.PlanEquipmentRelation; import com.casic.missiles.service.ICommonApprovalService; import com.casic.missiles.service.plan.IPlanEquipmentRelationService; import com.casic.missiles.service.plan.IPlanService; @@ -76,7 +77,7 @@ }) @ApiOperation("计量计划详情-计划列表展开") @GetMapping("/relationList") - public ReturnDTO> relationList(Long planId,String equipmentName) { + public ReturnDTO> relationList(Long planId, String equipmentName) { return ReturnUtil.success(relationService.listByPlanAndName(planId,equipmentName)); } diff --git a/casic-metering-common/pom.xml b/casic-metering-common/pom.xml index 33f75c8..e431f85 100644 --- a/casic-metering-common/pom.xml +++ b/casic-metering-common/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -17,12 +17,12 @@ com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.github.oshi diff --git a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java index 0f37e03..250d886 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java @@ -12,6 +12,7 @@ import java.lang.reflect.Field; import java.lang.reflect.Method; import java.lang.reflect.Modifier; +import java.util.ArrayList; import java.util.Arrays; import java.util.List; @@ -26,8 +27,16 @@ * @return 全部相同返回true,有不相同的返回false */ public static boolean fieldCompare(Object beforeObj, Object afterObj, List fields) { - Field[] beforeFields = beforeObj.getClass().getDeclaredFields(); - Field[] afterFields = afterObj.getClass().getDeclaredFields(); + List beforeFieldList = Arrays.asList(beforeObj.getClass().getDeclaredFields()); + List superBeforeFileList = Arrays.asList(beforeObj.getClass().getSuperclass().getDeclaredFields()); + beforeFieldList.addAll(new ArrayList<>(superBeforeFileList)); + Field[] beforeFields = beforeFieldList.toArray(new Field[beforeFieldList.size()]); + + List afterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getDeclaredFields())); + List superAfterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getSuperclass().getDeclaredFields())); + afterFieldList.addAll(superAfterFieldList); + Field[] afterFields = afterFieldList.toArray(new Field[beforeFieldList.size()]); + Field.setAccessible(beforeFields, true); //设置私有属性可以访问到 Field.setAccessible(afterFields, true); //循环遍历比较属性 @@ -36,15 +45,19 @@ if (ObjectUtil.isNotEmpty(fields) && fields.contains(beforeFields[i].getName())) { try { Object beforeValue = beforeFields[i].get(beforeObj); //取出对应的属性值 - Object afterValue = afterFields[i].get(afterObj); + Object afterValue = null; + for (int j = 0; j < afterFields.length; j++) { + if(afterFields[j].getName().equals(beforeFields[i].getName())){ + afterValue = afterFields[j].get(afterObj); //取出对应的属性值 + break; + } + } if ((beforeValue != null && !"".equals(beforeValue) && !beforeValue.equals(afterValue)) || ((beforeValue == null || "".equals(beforeValue)) && afterValue != null)) { return false; } } catch (IllegalAccessException e) { log.error(e.getMessage()); } - - } } } diff --git a/casic-metering-dao/pom.xml b/casic-metering-dao/pom.xml index 64c6fbf..6cffff6 100644 --- a/casic-metering-dao/pom.xml +++ b/casic-metering-dao/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -16,7 +16,7 @@ com.casic casic-metering-model - 2.0.0 + 1.0.0.0 diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java index 548081b..f8ae80b 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java @@ -22,4 +22,9 @@ @Param("equipmentName") String equipmentName); PlanEquipmentStatus getPlanEquipmentStatus(@Param("equipmentId")Long equipmentId); + + + void inspectionStatusUpdate(@Param("executeStatus") String executeStatus, + @Param("inspectionId") Long inspectionId); + } diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml index a2c0944..e9d9f55 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml @@ -91,6 +91,7 @@ diff --git a/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml index bd0ad5f..ed9981e 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml @@ -19,7 +19,7 @@ id, inspection_id, equipment_id, inspection_time, plan_id, remarks, create_time, update_time - SELECT r.id AS id, r.inspection_id AS inspectionId, @@ -41,7 +41,7 @@ eqpt_inspection_equipment_relation r LEFT JOIN eqpt_equipment_info e ON e.id = r.equipment_id LEFT JOIN eqpt_plan p ON p.id = r.plan_id - AND r.inspection_id = #{inspectionId} + WHERE r.inspection_id = #{inspectionId} diff --git a/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml index 3aeb4a4..1c23860 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml @@ -67,4 +67,18 @@ LIMIT 1 + + update + eqpt_plan_equipment_relation r1, + eqpt_plan p, + eqpt_inspection_equipment_relation r2 + set r1.execute_status = #{executeStatus}, + r1.execute_time = r2.inspection_time + where r1.plan_id = p.id + and p.year = YEAR(NOW()) + and r1.execute_status = '0' + and r1.equipment_id = r2.equipment_id + and r2.inspection_id = #{inspectionId} + + diff --git a/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml index 93a8dc8..a2e8a11 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml @@ -29,7 +29,7 @@ n.notify_user as notifyUser, n.notify_dept as notifyDept, n.plan_id as planId, - p.plan_type as planType, + p.plan_category as planCategory, p.create_user_id as createUserId, p.create_user_name as createUserName, p.create_dept_id as createDeptId, diff --git a/casic-metering-eqpt-api/pom.xml b/casic-metering-eqpt-api/pom.xml index 456fdbf..99f40ca 100644 --- a/casic-metering-eqpt-api/pom.xml +++ b/casic-metering-eqpt-api/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -18,13 +18,13 @@ com.casic casic-metering-service - 2.0.0 + 1.0.0.0 com.casic casic-metering-job - 2.0.0 + 1.0.0.0 org.springframework.boot diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java index 268fb3a..06cb258 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java @@ -84,4 +84,13 @@ return businessOrderService.updateOrder(businessOrder); } + @ApiOperation("任务单取消") + @PostMapping("/cancel") + public ReturnDTO receiveOrder(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return businessOrderService.updateStatusById(idDTO.getId(), OrderStatusDictEnum.ALREADY_CANCEL); + } + } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java index 9456479..9717b78 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java @@ -16,6 +16,7 @@ import com.casic.missiles.dto.plan.PlanQueryForm; import com.casic.missiles.model.equipment.EquipmentInfoApproval; import com.casic.missiles.model.plan.Plan; +import com.casic.missiles.model.plan.PlanEquipmentRelation; import com.casic.missiles.service.ICommonApprovalService; import com.casic.missiles.service.plan.IPlanEquipmentRelationService; import com.casic.missiles.service.plan.IPlanService; @@ -76,7 +77,7 @@ }) @ApiOperation("计量计划详情-计划列表展开") @GetMapping("/relationList") - public ReturnDTO> relationList(Long planId,String equipmentName) { + public ReturnDTO> relationList(Long planId, String equipmentName) { return ReturnUtil.success(relationService.listByPlanAndName(planId,equipmentName)); } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java index 92e8e95..436fd8f 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java @@ -7,6 +7,7 @@ import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.equipment.EquipmentAggr; import com.casic.missiles.model.plan.PlanNotify; +import com.casic.missiles.model.plan.PlanNotifyRelation; import com.casic.missiles.service.plan.IPlanNotifyRelationService; import com.casic.missiles.service.plan.IPlanNotifyService; import io.swagger.annotations.Api; @@ -71,7 +72,7 @@ }) @ApiOperation("送检通知详情-送检列表展开") @GetMapping("/relationList") - public ReturnDTO> relationList(Long notifyId,String equipmentName) { + public ReturnDTO> relationList(Long notifyId, String equipmentName) { return ReturnUtil.success(relationService.listByNameAndNotify(equipmentName,notifyId)); } diff --git a/casic-metering-common/pom.xml b/casic-metering-common/pom.xml index 33f75c8..e431f85 100644 --- a/casic-metering-common/pom.xml +++ b/casic-metering-common/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -17,12 +17,12 @@ com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.github.oshi diff --git a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java index 0f37e03..250d886 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java @@ -12,6 +12,7 @@ import java.lang.reflect.Field; import java.lang.reflect.Method; import java.lang.reflect.Modifier; +import java.util.ArrayList; import java.util.Arrays; import java.util.List; @@ -26,8 +27,16 @@ * @return 全部相同返回true,有不相同的返回false */ public static boolean fieldCompare(Object beforeObj, Object afterObj, List fields) { - Field[] beforeFields = beforeObj.getClass().getDeclaredFields(); - Field[] afterFields = afterObj.getClass().getDeclaredFields(); + List beforeFieldList = Arrays.asList(beforeObj.getClass().getDeclaredFields()); + List superBeforeFileList = Arrays.asList(beforeObj.getClass().getSuperclass().getDeclaredFields()); + beforeFieldList.addAll(new ArrayList<>(superBeforeFileList)); + Field[] beforeFields = beforeFieldList.toArray(new Field[beforeFieldList.size()]); + + List afterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getDeclaredFields())); + List superAfterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getSuperclass().getDeclaredFields())); + afterFieldList.addAll(superAfterFieldList); + Field[] afterFields = afterFieldList.toArray(new Field[beforeFieldList.size()]); + Field.setAccessible(beforeFields, true); //设置私有属性可以访问到 Field.setAccessible(afterFields, true); //循环遍历比较属性 @@ -36,15 +45,19 @@ if (ObjectUtil.isNotEmpty(fields) && fields.contains(beforeFields[i].getName())) { try { Object beforeValue = beforeFields[i].get(beforeObj); //取出对应的属性值 - Object afterValue = afterFields[i].get(afterObj); + Object afterValue = null; + for (int j = 0; j < afterFields.length; j++) { + if(afterFields[j].getName().equals(beforeFields[i].getName())){ + afterValue = afterFields[j].get(afterObj); //取出对应的属性值 + break; + } + } if ((beforeValue != null && !"".equals(beforeValue) && !beforeValue.equals(afterValue)) || ((beforeValue == null || "".equals(beforeValue)) && afterValue != null)) { return false; } } catch (IllegalAccessException e) { log.error(e.getMessage()); } - - } } } diff --git a/casic-metering-dao/pom.xml b/casic-metering-dao/pom.xml index 64c6fbf..6cffff6 100644 --- a/casic-metering-dao/pom.xml +++ b/casic-metering-dao/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -16,7 +16,7 @@ com.casic casic-metering-model - 2.0.0 + 1.0.0.0 diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java index 548081b..f8ae80b 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java @@ -22,4 +22,9 @@ @Param("equipmentName") String equipmentName); PlanEquipmentStatus getPlanEquipmentStatus(@Param("equipmentId")Long equipmentId); + + + void inspectionStatusUpdate(@Param("executeStatus") String executeStatus, + @Param("inspectionId") Long inspectionId); + } diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml index a2c0944..e9d9f55 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml @@ -91,6 +91,7 @@ diff --git a/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml index bd0ad5f..ed9981e 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml @@ -19,7 +19,7 @@ id, inspection_id, equipment_id, inspection_time, plan_id, remarks, create_time, update_time - SELECT r.id AS id, r.inspection_id AS inspectionId, @@ -41,7 +41,7 @@ eqpt_inspection_equipment_relation r LEFT JOIN eqpt_equipment_info e ON e.id = r.equipment_id LEFT JOIN eqpt_plan p ON p.id = r.plan_id - AND r.inspection_id = #{inspectionId} + WHERE r.inspection_id = #{inspectionId} diff --git a/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml index 3aeb4a4..1c23860 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml @@ -67,4 +67,18 @@ LIMIT 1 + + update + eqpt_plan_equipment_relation r1, + eqpt_plan p, + eqpt_inspection_equipment_relation r2 + set r1.execute_status = #{executeStatus}, + r1.execute_time = r2.inspection_time + where r1.plan_id = p.id + and p.year = YEAR(NOW()) + and r1.execute_status = '0' + and r1.equipment_id = r2.equipment_id + and r2.inspection_id = #{inspectionId} + + diff --git a/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml index 93a8dc8..a2e8a11 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml @@ -29,7 +29,7 @@ n.notify_user as notifyUser, n.notify_dept as notifyDept, n.plan_id as planId, - p.plan_type as planType, + p.plan_category as planCategory, p.create_user_id as createUserId, p.create_user_name as createUserName, p.create_dept_id as createDeptId, diff --git a/casic-metering-eqpt-api/pom.xml b/casic-metering-eqpt-api/pom.xml index 456fdbf..99f40ca 100644 --- a/casic-metering-eqpt-api/pom.xml +++ b/casic-metering-eqpt-api/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -18,13 +18,13 @@ com.casic casic-metering-service - 2.0.0 + 1.0.0.0 com.casic casic-metering-job - 2.0.0 + 1.0.0.0 org.springframework.boot diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java index 268fb3a..06cb258 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java @@ -84,4 +84,13 @@ return businessOrderService.updateOrder(businessOrder); } + @ApiOperation("任务单取消") + @PostMapping("/cancel") + public ReturnDTO receiveOrder(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return businessOrderService.updateStatusById(idDTO.getId(), OrderStatusDictEnum.ALREADY_CANCEL); + } + } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java index 9456479..9717b78 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java @@ -16,6 +16,7 @@ import com.casic.missiles.dto.plan.PlanQueryForm; import com.casic.missiles.model.equipment.EquipmentInfoApproval; import com.casic.missiles.model.plan.Plan; +import com.casic.missiles.model.plan.PlanEquipmentRelation; import com.casic.missiles.service.ICommonApprovalService; import com.casic.missiles.service.plan.IPlanEquipmentRelationService; import com.casic.missiles.service.plan.IPlanService; @@ -76,7 +77,7 @@ }) @ApiOperation("计量计划详情-计划列表展开") @GetMapping("/relationList") - public ReturnDTO> relationList(Long planId,String equipmentName) { + public ReturnDTO> relationList(Long planId, String equipmentName) { return ReturnUtil.success(relationService.listByPlanAndName(planId,equipmentName)); } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java index 92e8e95..436fd8f 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java @@ -7,6 +7,7 @@ import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.equipment.EquipmentAggr; import com.casic.missiles.model.plan.PlanNotify; +import com.casic.missiles.model.plan.PlanNotifyRelation; import com.casic.missiles.service.plan.IPlanNotifyRelationService; import com.casic.missiles.service.plan.IPlanNotifyService; import io.swagger.annotations.Api; @@ -71,7 +72,7 @@ }) @ApiOperation("送检通知详情-送检列表展开") @GetMapping("/relationList") - public ReturnDTO> relationList(Long notifyId,String equipmentName) { + public ReturnDTO> relationList(Long notifyId, String equipmentName) { return ReturnUtil.success(relationService.listByNameAndNotify(equipmentName,notifyId)); } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java index 0090684..7f04e81 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java @@ -32,16 +32,14 @@ private final IRemindConfigService remindConfigService; @ApiOperation("编辑") - @RequestMapping("update") - @PostMapping + @PostMapping("update") public ReturnDTO update(@RequestBody RemindConfig remindConfig){ remindConfigService.updateById(remindConfig); return ReturnUtil.success(); } @ApiOperation("分页列表") - @RequestMapping("listPage") - @GetMapping + @GetMapping("listPage") public ReturnDTO> listPage(){ Page page = PageFactory.defaultPage(); page = remindConfigService.listScopePage(page); diff --git a/casic-metering-common/pom.xml b/casic-metering-common/pom.xml index 33f75c8..e431f85 100644 --- a/casic-metering-common/pom.xml +++ b/casic-metering-common/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -17,12 +17,12 @@ com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.github.oshi diff --git a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java index 0f37e03..250d886 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java @@ -12,6 +12,7 @@ import java.lang.reflect.Field; import java.lang.reflect.Method; import java.lang.reflect.Modifier; +import java.util.ArrayList; import java.util.Arrays; import java.util.List; @@ -26,8 +27,16 @@ * @return 全部相同返回true,有不相同的返回false */ public static boolean fieldCompare(Object beforeObj, Object afterObj, List fields) { - Field[] beforeFields = beforeObj.getClass().getDeclaredFields(); - Field[] afterFields = afterObj.getClass().getDeclaredFields(); + List beforeFieldList = Arrays.asList(beforeObj.getClass().getDeclaredFields()); + List superBeforeFileList = Arrays.asList(beforeObj.getClass().getSuperclass().getDeclaredFields()); + beforeFieldList.addAll(new ArrayList<>(superBeforeFileList)); + Field[] beforeFields = beforeFieldList.toArray(new Field[beforeFieldList.size()]); + + List afterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getDeclaredFields())); + List superAfterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getSuperclass().getDeclaredFields())); + afterFieldList.addAll(superAfterFieldList); + Field[] afterFields = afterFieldList.toArray(new Field[beforeFieldList.size()]); + Field.setAccessible(beforeFields, true); //设置私有属性可以访问到 Field.setAccessible(afterFields, true); //循环遍历比较属性 @@ -36,15 +45,19 @@ if (ObjectUtil.isNotEmpty(fields) && fields.contains(beforeFields[i].getName())) { try { Object beforeValue = beforeFields[i].get(beforeObj); //取出对应的属性值 - Object afterValue = afterFields[i].get(afterObj); + Object afterValue = null; + for (int j = 0; j < afterFields.length; j++) { + if(afterFields[j].getName().equals(beforeFields[i].getName())){ + afterValue = afterFields[j].get(afterObj); //取出对应的属性值 + break; + } + } if ((beforeValue != null && !"".equals(beforeValue) && !beforeValue.equals(afterValue)) || ((beforeValue == null || "".equals(beforeValue)) && afterValue != null)) { return false; } } catch (IllegalAccessException e) { log.error(e.getMessage()); } - - } } } diff --git a/casic-metering-dao/pom.xml b/casic-metering-dao/pom.xml index 64c6fbf..6cffff6 100644 --- a/casic-metering-dao/pom.xml +++ b/casic-metering-dao/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -16,7 +16,7 @@ com.casic casic-metering-model - 2.0.0 + 1.0.0.0 diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java index 548081b..f8ae80b 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java @@ -22,4 +22,9 @@ @Param("equipmentName") String equipmentName); PlanEquipmentStatus getPlanEquipmentStatus(@Param("equipmentId")Long equipmentId); + + + void inspectionStatusUpdate(@Param("executeStatus") String executeStatus, + @Param("inspectionId") Long inspectionId); + } diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml index a2c0944..e9d9f55 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml @@ -91,6 +91,7 @@ diff --git a/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml index bd0ad5f..ed9981e 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml @@ -19,7 +19,7 @@ id, inspection_id, equipment_id, inspection_time, plan_id, remarks, create_time, update_time - SELECT r.id AS id, r.inspection_id AS inspectionId, @@ -41,7 +41,7 @@ eqpt_inspection_equipment_relation r LEFT JOIN eqpt_equipment_info e ON e.id = r.equipment_id LEFT JOIN eqpt_plan p ON p.id = r.plan_id - AND r.inspection_id = #{inspectionId} + WHERE r.inspection_id = #{inspectionId} diff --git a/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml index 3aeb4a4..1c23860 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml @@ -67,4 +67,18 @@ LIMIT 1 + + update + eqpt_plan_equipment_relation r1, + eqpt_plan p, + eqpt_inspection_equipment_relation r2 + set r1.execute_status = #{executeStatus}, + r1.execute_time = r2.inspection_time + where r1.plan_id = p.id + and p.year = YEAR(NOW()) + and r1.execute_status = '0' + and r1.equipment_id = r2.equipment_id + and r2.inspection_id = #{inspectionId} + + diff --git a/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml index 93a8dc8..a2e8a11 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml @@ -29,7 +29,7 @@ n.notify_user as notifyUser, n.notify_dept as notifyDept, n.plan_id as planId, - p.plan_type as planType, + p.plan_category as planCategory, p.create_user_id as createUserId, p.create_user_name as createUserName, p.create_dept_id as createDeptId, diff --git a/casic-metering-eqpt-api/pom.xml b/casic-metering-eqpt-api/pom.xml index 456fdbf..99f40ca 100644 --- a/casic-metering-eqpt-api/pom.xml +++ b/casic-metering-eqpt-api/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -18,13 +18,13 @@ com.casic casic-metering-service - 2.0.0 + 1.0.0.0 com.casic casic-metering-job - 2.0.0 + 1.0.0.0 org.springframework.boot diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java index 268fb3a..06cb258 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java @@ -84,4 +84,13 @@ return businessOrderService.updateOrder(businessOrder); } + @ApiOperation("任务单取消") + @PostMapping("/cancel") + public ReturnDTO receiveOrder(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return businessOrderService.updateStatusById(idDTO.getId(), OrderStatusDictEnum.ALREADY_CANCEL); + } + } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java index 9456479..9717b78 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java @@ -16,6 +16,7 @@ import com.casic.missiles.dto.plan.PlanQueryForm; import com.casic.missiles.model.equipment.EquipmentInfoApproval; import com.casic.missiles.model.plan.Plan; +import com.casic.missiles.model.plan.PlanEquipmentRelation; import com.casic.missiles.service.ICommonApprovalService; import com.casic.missiles.service.plan.IPlanEquipmentRelationService; import com.casic.missiles.service.plan.IPlanService; @@ -76,7 +77,7 @@ }) @ApiOperation("计量计划详情-计划列表展开") @GetMapping("/relationList") - public ReturnDTO> relationList(Long planId,String equipmentName) { + public ReturnDTO> relationList(Long planId, String equipmentName) { return ReturnUtil.success(relationService.listByPlanAndName(planId,equipmentName)); } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java index 92e8e95..436fd8f 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java @@ -7,6 +7,7 @@ import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.equipment.EquipmentAggr; import com.casic.missiles.model.plan.PlanNotify; +import com.casic.missiles.model.plan.PlanNotifyRelation; import com.casic.missiles.service.plan.IPlanNotifyRelationService; import com.casic.missiles.service.plan.IPlanNotifyService; import io.swagger.annotations.Api; @@ -71,7 +72,7 @@ }) @ApiOperation("送检通知详情-送检列表展开") @GetMapping("/relationList") - public ReturnDTO> relationList(Long notifyId,String equipmentName) { + public ReturnDTO> relationList(Long notifyId, String equipmentName) { return ReturnUtil.success(relationService.listByNameAndNotify(equipmentName,notifyId)); } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java index 0090684..7f04e81 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java @@ -32,16 +32,14 @@ private final IRemindConfigService remindConfigService; @ApiOperation("编辑") - @RequestMapping("update") - @PostMapping + @PostMapping("update") public ReturnDTO update(@RequestBody RemindConfig remindConfig){ remindConfigService.updateById(remindConfig); return ReturnUtil.success(); } @ApiOperation("分页列表") - @RequestMapping("listPage") - @GetMapping + @GetMapping("listPage") public ReturnDTO> listPage(){ Page page = PageFactory.defaultPage(); page = remindConfigService.listScopePage(page); diff --git a/casic-metering-job/pom.xml b/casic-metering-job/pom.xml index 237e930..0a68bc1 100644 --- a/casic-metering-job/pom.xml +++ b/casic-metering-job/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -14,12 +14,12 @@ com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.github.oshi @@ -61,7 +61,7 @@ com.casic casic-metering-service - 2.0.0 + 1.0.0.0 compile diff --git a/casic-metering-common/pom.xml b/casic-metering-common/pom.xml index 33f75c8..e431f85 100644 --- a/casic-metering-common/pom.xml +++ b/casic-metering-common/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -17,12 +17,12 @@ com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.github.oshi diff --git a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java index 0f37e03..250d886 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java @@ -12,6 +12,7 @@ import java.lang.reflect.Field; import java.lang.reflect.Method; import java.lang.reflect.Modifier; +import java.util.ArrayList; import java.util.Arrays; import java.util.List; @@ -26,8 +27,16 @@ * @return 全部相同返回true,有不相同的返回false */ public static boolean fieldCompare(Object beforeObj, Object afterObj, List fields) { - Field[] beforeFields = beforeObj.getClass().getDeclaredFields(); - Field[] afterFields = afterObj.getClass().getDeclaredFields(); + List beforeFieldList = Arrays.asList(beforeObj.getClass().getDeclaredFields()); + List superBeforeFileList = Arrays.asList(beforeObj.getClass().getSuperclass().getDeclaredFields()); + beforeFieldList.addAll(new ArrayList<>(superBeforeFileList)); + Field[] beforeFields = beforeFieldList.toArray(new Field[beforeFieldList.size()]); + + List afterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getDeclaredFields())); + List superAfterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getSuperclass().getDeclaredFields())); + afterFieldList.addAll(superAfterFieldList); + Field[] afterFields = afterFieldList.toArray(new Field[beforeFieldList.size()]); + Field.setAccessible(beforeFields, true); //设置私有属性可以访问到 Field.setAccessible(afterFields, true); //循环遍历比较属性 @@ -36,15 +45,19 @@ if (ObjectUtil.isNotEmpty(fields) && fields.contains(beforeFields[i].getName())) { try { Object beforeValue = beforeFields[i].get(beforeObj); //取出对应的属性值 - Object afterValue = afterFields[i].get(afterObj); + Object afterValue = null; + for (int j = 0; j < afterFields.length; j++) { + if(afterFields[j].getName().equals(beforeFields[i].getName())){ + afterValue = afterFields[j].get(afterObj); //取出对应的属性值 + break; + } + } if ((beforeValue != null && !"".equals(beforeValue) && !beforeValue.equals(afterValue)) || ((beforeValue == null || "".equals(beforeValue)) && afterValue != null)) { return false; } } catch (IllegalAccessException e) { log.error(e.getMessage()); } - - } } } diff --git a/casic-metering-dao/pom.xml b/casic-metering-dao/pom.xml index 64c6fbf..6cffff6 100644 --- a/casic-metering-dao/pom.xml +++ b/casic-metering-dao/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -16,7 +16,7 @@ com.casic casic-metering-model - 2.0.0 + 1.0.0.0 diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java index 548081b..f8ae80b 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java @@ -22,4 +22,9 @@ @Param("equipmentName") String equipmentName); PlanEquipmentStatus getPlanEquipmentStatus(@Param("equipmentId")Long equipmentId); + + + void inspectionStatusUpdate(@Param("executeStatus") String executeStatus, + @Param("inspectionId") Long inspectionId); + } diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml index a2c0944..e9d9f55 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml @@ -91,6 +91,7 @@ diff --git a/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml index bd0ad5f..ed9981e 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml @@ -19,7 +19,7 @@ id, inspection_id, equipment_id, inspection_time, plan_id, remarks, create_time, update_time - SELECT r.id AS id, r.inspection_id AS inspectionId, @@ -41,7 +41,7 @@ eqpt_inspection_equipment_relation r LEFT JOIN eqpt_equipment_info e ON e.id = r.equipment_id LEFT JOIN eqpt_plan p ON p.id = r.plan_id - AND r.inspection_id = #{inspectionId} + WHERE r.inspection_id = #{inspectionId} diff --git a/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml index 3aeb4a4..1c23860 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml @@ -67,4 +67,18 @@ LIMIT 1 + + update + eqpt_plan_equipment_relation r1, + eqpt_plan p, + eqpt_inspection_equipment_relation r2 + set r1.execute_status = #{executeStatus}, + r1.execute_time = r2.inspection_time + where r1.plan_id = p.id + and p.year = YEAR(NOW()) + and r1.execute_status = '0' + and r1.equipment_id = r2.equipment_id + and r2.inspection_id = #{inspectionId} + + diff --git a/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml index 93a8dc8..a2e8a11 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml @@ -29,7 +29,7 @@ n.notify_user as notifyUser, n.notify_dept as notifyDept, n.plan_id as planId, - p.plan_type as planType, + p.plan_category as planCategory, p.create_user_id as createUserId, p.create_user_name as createUserName, p.create_dept_id as createDeptId, diff --git a/casic-metering-eqpt-api/pom.xml b/casic-metering-eqpt-api/pom.xml index 456fdbf..99f40ca 100644 --- a/casic-metering-eqpt-api/pom.xml +++ b/casic-metering-eqpt-api/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -18,13 +18,13 @@ com.casic casic-metering-service - 2.0.0 + 1.0.0.0 com.casic casic-metering-job - 2.0.0 + 1.0.0.0 org.springframework.boot diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java index 268fb3a..06cb258 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java @@ -84,4 +84,13 @@ return businessOrderService.updateOrder(businessOrder); } + @ApiOperation("任务单取消") + @PostMapping("/cancel") + public ReturnDTO receiveOrder(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return businessOrderService.updateStatusById(idDTO.getId(), OrderStatusDictEnum.ALREADY_CANCEL); + } + } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java index 9456479..9717b78 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java @@ -16,6 +16,7 @@ import com.casic.missiles.dto.plan.PlanQueryForm; import com.casic.missiles.model.equipment.EquipmentInfoApproval; import com.casic.missiles.model.plan.Plan; +import com.casic.missiles.model.plan.PlanEquipmentRelation; import com.casic.missiles.service.ICommonApprovalService; import com.casic.missiles.service.plan.IPlanEquipmentRelationService; import com.casic.missiles.service.plan.IPlanService; @@ -76,7 +77,7 @@ }) @ApiOperation("计量计划详情-计划列表展开") @GetMapping("/relationList") - public ReturnDTO> relationList(Long planId,String equipmentName) { + public ReturnDTO> relationList(Long planId, String equipmentName) { return ReturnUtil.success(relationService.listByPlanAndName(planId,equipmentName)); } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java index 92e8e95..436fd8f 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java @@ -7,6 +7,7 @@ import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.equipment.EquipmentAggr; import com.casic.missiles.model.plan.PlanNotify; +import com.casic.missiles.model.plan.PlanNotifyRelation; import com.casic.missiles.service.plan.IPlanNotifyRelationService; import com.casic.missiles.service.plan.IPlanNotifyService; import io.swagger.annotations.Api; @@ -71,7 +72,7 @@ }) @ApiOperation("送检通知详情-送检列表展开") @GetMapping("/relationList") - public ReturnDTO> relationList(Long notifyId,String equipmentName) { + public ReturnDTO> relationList(Long notifyId, String equipmentName) { return ReturnUtil.success(relationService.listByNameAndNotify(equipmentName,notifyId)); } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java index 0090684..7f04e81 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java @@ -32,16 +32,14 @@ private final IRemindConfigService remindConfigService; @ApiOperation("编辑") - @RequestMapping("update") - @PostMapping + @PostMapping("update") public ReturnDTO update(@RequestBody RemindConfig remindConfig){ remindConfigService.updateById(remindConfig); return ReturnUtil.success(); } @ApiOperation("分页列表") - @RequestMapping("listPage") - @GetMapping + @GetMapping("listPage") public ReturnDTO> listPage(){ Page page = PageFactory.defaultPage(); page = remindConfigService.listScopePage(page); diff --git a/casic-metering-job/pom.xml b/casic-metering-job/pom.xml index 237e930..0a68bc1 100644 --- a/casic-metering-job/pom.xml +++ b/casic-metering-job/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -14,12 +14,12 @@ com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.github.oshi @@ -61,7 +61,7 @@ com.casic casic-metering-service - 2.0.0 + 1.0.0.0 compile diff --git a/casic-metering-model/pom.xml b/casic-metering-model/pom.xml index 31a2491..8ec8258 100644 --- a/casic-metering-model/pom.xml +++ b/casic-metering-model/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 diff --git a/casic-metering-common/pom.xml b/casic-metering-common/pom.xml index 33f75c8..e431f85 100644 --- a/casic-metering-common/pom.xml +++ b/casic-metering-common/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -17,12 +17,12 @@ com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.github.oshi diff --git a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java index 0f37e03..250d886 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java @@ -12,6 +12,7 @@ import java.lang.reflect.Field; import java.lang.reflect.Method; import java.lang.reflect.Modifier; +import java.util.ArrayList; import java.util.Arrays; import java.util.List; @@ -26,8 +27,16 @@ * @return 全部相同返回true,有不相同的返回false */ public static boolean fieldCompare(Object beforeObj, Object afterObj, List fields) { - Field[] beforeFields = beforeObj.getClass().getDeclaredFields(); - Field[] afterFields = afterObj.getClass().getDeclaredFields(); + List beforeFieldList = Arrays.asList(beforeObj.getClass().getDeclaredFields()); + List superBeforeFileList = Arrays.asList(beforeObj.getClass().getSuperclass().getDeclaredFields()); + beforeFieldList.addAll(new ArrayList<>(superBeforeFileList)); + Field[] beforeFields = beforeFieldList.toArray(new Field[beforeFieldList.size()]); + + List afterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getDeclaredFields())); + List superAfterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getSuperclass().getDeclaredFields())); + afterFieldList.addAll(superAfterFieldList); + Field[] afterFields = afterFieldList.toArray(new Field[beforeFieldList.size()]); + Field.setAccessible(beforeFields, true); //设置私有属性可以访问到 Field.setAccessible(afterFields, true); //循环遍历比较属性 @@ -36,15 +45,19 @@ if (ObjectUtil.isNotEmpty(fields) && fields.contains(beforeFields[i].getName())) { try { Object beforeValue = beforeFields[i].get(beforeObj); //取出对应的属性值 - Object afterValue = afterFields[i].get(afterObj); + Object afterValue = null; + for (int j = 0; j < afterFields.length; j++) { + if(afterFields[j].getName().equals(beforeFields[i].getName())){ + afterValue = afterFields[j].get(afterObj); //取出对应的属性值 + break; + } + } if ((beforeValue != null && !"".equals(beforeValue) && !beforeValue.equals(afterValue)) || ((beforeValue == null || "".equals(beforeValue)) && afterValue != null)) { return false; } } catch (IllegalAccessException e) { log.error(e.getMessage()); } - - } } } diff --git a/casic-metering-dao/pom.xml b/casic-metering-dao/pom.xml index 64c6fbf..6cffff6 100644 --- a/casic-metering-dao/pom.xml +++ b/casic-metering-dao/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -16,7 +16,7 @@ com.casic casic-metering-model - 2.0.0 + 1.0.0.0 diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java index 548081b..f8ae80b 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java @@ -22,4 +22,9 @@ @Param("equipmentName") String equipmentName); PlanEquipmentStatus getPlanEquipmentStatus(@Param("equipmentId")Long equipmentId); + + + void inspectionStatusUpdate(@Param("executeStatus") String executeStatus, + @Param("inspectionId") Long inspectionId); + } diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml index a2c0944..e9d9f55 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml @@ -91,6 +91,7 @@ diff --git a/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml index bd0ad5f..ed9981e 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml @@ -19,7 +19,7 @@ id, inspection_id, equipment_id, inspection_time, plan_id, remarks, create_time, update_time - SELECT r.id AS id, r.inspection_id AS inspectionId, @@ -41,7 +41,7 @@ eqpt_inspection_equipment_relation r LEFT JOIN eqpt_equipment_info e ON e.id = r.equipment_id LEFT JOIN eqpt_plan p ON p.id = r.plan_id - AND r.inspection_id = #{inspectionId} + WHERE r.inspection_id = #{inspectionId} diff --git a/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml index 3aeb4a4..1c23860 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml @@ -67,4 +67,18 @@ LIMIT 1 + + update + eqpt_plan_equipment_relation r1, + eqpt_plan p, + eqpt_inspection_equipment_relation r2 + set r1.execute_status = #{executeStatus}, + r1.execute_time = r2.inspection_time + where r1.plan_id = p.id + and p.year = YEAR(NOW()) + and r1.execute_status = '0' + and r1.equipment_id = r2.equipment_id + and r2.inspection_id = #{inspectionId} + + diff --git a/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml index 93a8dc8..a2e8a11 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml @@ -29,7 +29,7 @@ n.notify_user as notifyUser, n.notify_dept as notifyDept, n.plan_id as planId, - p.plan_type as planType, + p.plan_category as planCategory, p.create_user_id as createUserId, p.create_user_name as createUserName, p.create_dept_id as createDeptId, diff --git a/casic-metering-eqpt-api/pom.xml b/casic-metering-eqpt-api/pom.xml index 456fdbf..99f40ca 100644 --- a/casic-metering-eqpt-api/pom.xml +++ b/casic-metering-eqpt-api/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -18,13 +18,13 @@ com.casic casic-metering-service - 2.0.0 + 1.0.0.0 com.casic casic-metering-job - 2.0.0 + 1.0.0.0 org.springframework.boot diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java index 268fb3a..06cb258 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java @@ -84,4 +84,13 @@ return businessOrderService.updateOrder(businessOrder); } + @ApiOperation("任务单取消") + @PostMapping("/cancel") + public ReturnDTO receiveOrder(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return businessOrderService.updateStatusById(idDTO.getId(), OrderStatusDictEnum.ALREADY_CANCEL); + } + } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java index 9456479..9717b78 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java @@ -16,6 +16,7 @@ import com.casic.missiles.dto.plan.PlanQueryForm; import com.casic.missiles.model.equipment.EquipmentInfoApproval; import com.casic.missiles.model.plan.Plan; +import com.casic.missiles.model.plan.PlanEquipmentRelation; import com.casic.missiles.service.ICommonApprovalService; import com.casic.missiles.service.plan.IPlanEquipmentRelationService; import com.casic.missiles.service.plan.IPlanService; @@ -76,7 +77,7 @@ }) @ApiOperation("计量计划详情-计划列表展开") @GetMapping("/relationList") - public ReturnDTO> relationList(Long planId,String equipmentName) { + public ReturnDTO> relationList(Long planId, String equipmentName) { return ReturnUtil.success(relationService.listByPlanAndName(planId,equipmentName)); } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java index 92e8e95..436fd8f 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java @@ -7,6 +7,7 @@ import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.equipment.EquipmentAggr; import com.casic.missiles.model.plan.PlanNotify; +import com.casic.missiles.model.plan.PlanNotifyRelation; import com.casic.missiles.service.plan.IPlanNotifyRelationService; import com.casic.missiles.service.plan.IPlanNotifyService; import io.swagger.annotations.Api; @@ -71,7 +72,7 @@ }) @ApiOperation("送检通知详情-送检列表展开") @GetMapping("/relationList") - public ReturnDTO> relationList(Long notifyId,String equipmentName) { + public ReturnDTO> relationList(Long notifyId, String equipmentName) { return ReturnUtil.success(relationService.listByNameAndNotify(equipmentName,notifyId)); } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java index 0090684..7f04e81 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java @@ -32,16 +32,14 @@ private final IRemindConfigService remindConfigService; @ApiOperation("编辑") - @RequestMapping("update") - @PostMapping + @PostMapping("update") public ReturnDTO update(@RequestBody RemindConfig remindConfig){ remindConfigService.updateById(remindConfig); return ReturnUtil.success(); } @ApiOperation("分页列表") - @RequestMapping("listPage") - @GetMapping + @GetMapping("listPage") public ReturnDTO> listPage(){ Page page = PageFactory.defaultPage(); page = remindConfigService.listScopePage(page); diff --git a/casic-metering-job/pom.xml b/casic-metering-job/pom.xml index 237e930..0a68bc1 100644 --- a/casic-metering-job/pom.xml +++ b/casic-metering-job/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -14,12 +14,12 @@ com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.github.oshi @@ -61,7 +61,7 @@ com.casic casic-metering-service - 2.0.0 + 1.0.0.0 compile diff --git a/casic-metering-model/pom.xml b/casic-metering-model/pom.xml index 31a2491..8ec8258 100644 --- a/casic-metering-model/pom.xml +++ b/casic-metering-model/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 diff --git a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java index 3974e29..0b7172c 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java @@ -26,6 +26,8 @@ String PLAN_CATEGORY = DICT_PREFIX + "PlanType"; String PLAN_EXECUTE_STATUS = DICT_PREFIX + "PlanExecuteStatus"; + + String PLAN_CHECK_COMPLETION = DICT_PREFIX + "PlanCheckCompletion"; //实施状态 String EFFECTIVE_STATUS = "effectiveStatus"; //文件类别 diff --git a/casic-metering-common/pom.xml b/casic-metering-common/pom.xml index 33f75c8..e431f85 100644 --- a/casic-metering-common/pom.xml +++ b/casic-metering-common/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -17,12 +17,12 @@ com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.github.oshi diff --git a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java index 0f37e03..250d886 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java @@ -12,6 +12,7 @@ import java.lang.reflect.Field; import java.lang.reflect.Method; import java.lang.reflect.Modifier; +import java.util.ArrayList; import java.util.Arrays; import java.util.List; @@ -26,8 +27,16 @@ * @return 全部相同返回true,有不相同的返回false */ public static boolean fieldCompare(Object beforeObj, Object afterObj, List fields) { - Field[] beforeFields = beforeObj.getClass().getDeclaredFields(); - Field[] afterFields = afterObj.getClass().getDeclaredFields(); + List beforeFieldList = Arrays.asList(beforeObj.getClass().getDeclaredFields()); + List superBeforeFileList = Arrays.asList(beforeObj.getClass().getSuperclass().getDeclaredFields()); + beforeFieldList.addAll(new ArrayList<>(superBeforeFileList)); + Field[] beforeFields = beforeFieldList.toArray(new Field[beforeFieldList.size()]); + + List afterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getDeclaredFields())); + List superAfterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getSuperclass().getDeclaredFields())); + afterFieldList.addAll(superAfterFieldList); + Field[] afterFields = afterFieldList.toArray(new Field[beforeFieldList.size()]); + Field.setAccessible(beforeFields, true); //设置私有属性可以访问到 Field.setAccessible(afterFields, true); //循环遍历比较属性 @@ -36,15 +45,19 @@ if (ObjectUtil.isNotEmpty(fields) && fields.contains(beforeFields[i].getName())) { try { Object beforeValue = beforeFields[i].get(beforeObj); //取出对应的属性值 - Object afterValue = afterFields[i].get(afterObj); + Object afterValue = null; + for (int j = 0; j < afterFields.length; j++) { + if(afterFields[j].getName().equals(beforeFields[i].getName())){ + afterValue = afterFields[j].get(afterObj); //取出对应的属性值 + break; + } + } if ((beforeValue != null && !"".equals(beforeValue) && !beforeValue.equals(afterValue)) || ((beforeValue == null || "".equals(beforeValue)) && afterValue != null)) { return false; } } catch (IllegalAccessException e) { log.error(e.getMessage()); } - - } } } diff --git a/casic-metering-dao/pom.xml b/casic-metering-dao/pom.xml index 64c6fbf..6cffff6 100644 --- a/casic-metering-dao/pom.xml +++ b/casic-metering-dao/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -16,7 +16,7 @@ com.casic casic-metering-model - 2.0.0 + 1.0.0.0 diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java index 548081b..f8ae80b 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java @@ -22,4 +22,9 @@ @Param("equipmentName") String equipmentName); PlanEquipmentStatus getPlanEquipmentStatus(@Param("equipmentId")Long equipmentId); + + + void inspectionStatusUpdate(@Param("executeStatus") String executeStatus, + @Param("inspectionId") Long inspectionId); + } diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml index a2c0944..e9d9f55 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml @@ -91,6 +91,7 @@ diff --git a/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml index bd0ad5f..ed9981e 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml @@ -19,7 +19,7 @@ id, inspection_id, equipment_id, inspection_time, plan_id, remarks, create_time, update_time - SELECT r.id AS id, r.inspection_id AS inspectionId, @@ -41,7 +41,7 @@ eqpt_inspection_equipment_relation r LEFT JOIN eqpt_equipment_info e ON e.id = r.equipment_id LEFT JOIN eqpt_plan p ON p.id = r.plan_id - AND r.inspection_id = #{inspectionId} + WHERE r.inspection_id = #{inspectionId} diff --git a/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml index 3aeb4a4..1c23860 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml @@ -67,4 +67,18 @@ LIMIT 1 + + update + eqpt_plan_equipment_relation r1, + eqpt_plan p, + eqpt_inspection_equipment_relation r2 + set r1.execute_status = #{executeStatus}, + r1.execute_time = r2.inspection_time + where r1.plan_id = p.id + and p.year = YEAR(NOW()) + and r1.execute_status = '0' + and r1.equipment_id = r2.equipment_id + and r2.inspection_id = #{inspectionId} + + diff --git a/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml index 93a8dc8..a2e8a11 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml @@ -29,7 +29,7 @@ n.notify_user as notifyUser, n.notify_dept as notifyDept, n.plan_id as planId, - p.plan_type as planType, + p.plan_category as planCategory, p.create_user_id as createUserId, p.create_user_name as createUserName, p.create_dept_id as createDeptId, diff --git a/casic-metering-eqpt-api/pom.xml b/casic-metering-eqpt-api/pom.xml index 456fdbf..99f40ca 100644 --- a/casic-metering-eqpt-api/pom.xml +++ b/casic-metering-eqpt-api/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -18,13 +18,13 @@ com.casic casic-metering-service - 2.0.0 + 1.0.0.0 com.casic casic-metering-job - 2.0.0 + 1.0.0.0 org.springframework.boot diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java index 268fb3a..06cb258 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java @@ -84,4 +84,13 @@ return businessOrderService.updateOrder(businessOrder); } + @ApiOperation("任务单取消") + @PostMapping("/cancel") + public ReturnDTO receiveOrder(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return businessOrderService.updateStatusById(idDTO.getId(), OrderStatusDictEnum.ALREADY_CANCEL); + } + } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java index 9456479..9717b78 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java @@ -16,6 +16,7 @@ import com.casic.missiles.dto.plan.PlanQueryForm; import com.casic.missiles.model.equipment.EquipmentInfoApproval; import com.casic.missiles.model.plan.Plan; +import com.casic.missiles.model.plan.PlanEquipmentRelation; import com.casic.missiles.service.ICommonApprovalService; import com.casic.missiles.service.plan.IPlanEquipmentRelationService; import com.casic.missiles.service.plan.IPlanService; @@ -76,7 +77,7 @@ }) @ApiOperation("计量计划详情-计划列表展开") @GetMapping("/relationList") - public ReturnDTO> relationList(Long planId,String equipmentName) { + public ReturnDTO> relationList(Long planId, String equipmentName) { return ReturnUtil.success(relationService.listByPlanAndName(planId,equipmentName)); } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java index 92e8e95..436fd8f 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java @@ -7,6 +7,7 @@ import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.equipment.EquipmentAggr; import com.casic.missiles.model.plan.PlanNotify; +import com.casic.missiles.model.plan.PlanNotifyRelation; import com.casic.missiles.service.plan.IPlanNotifyRelationService; import com.casic.missiles.service.plan.IPlanNotifyService; import io.swagger.annotations.Api; @@ -71,7 +72,7 @@ }) @ApiOperation("送检通知详情-送检列表展开") @GetMapping("/relationList") - public ReturnDTO> relationList(Long notifyId,String equipmentName) { + public ReturnDTO> relationList(Long notifyId, String equipmentName) { return ReturnUtil.success(relationService.listByNameAndNotify(equipmentName,notifyId)); } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java index 0090684..7f04e81 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java @@ -32,16 +32,14 @@ private final IRemindConfigService remindConfigService; @ApiOperation("编辑") - @RequestMapping("update") - @PostMapping + @PostMapping("update") public ReturnDTO update(@RequestBody RemindConfig remindConfig){ remindConfigService.updateById(remindConfig); return ReturnUtil.success(); } @ApiOperation("分页列表") - @RequestMapping("listPage") - @GetMapping + @GetMapping("listPage") public ReturnDTO> listPage(){ Page page = PageFactory.defaultPage(); page = remindConfigService.listScopePage(page); diff --git a/casic-metering-job/pom.xml b/casic-metering-job/pom.xml index 237e930..0a68bc1 100644 --- a/casic-metering-job/pom.xml +++ b/casic-metering-job/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -14,12 +14,12 @@ com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.github.oshi @@ -61,7 +61,7 @@ com.casic casic-metering-service - 2.0.0 + 1.0.0.0 compile diff --git a/casic-metering-model/pom.xml b/casic-metering-model/pom.xml index 31a2491..8ec8258 100644 --- a/casic-metering-model/pom.xml +++ b/casic-metering-model/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 diff --git a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java index 3974e29..0b7172c 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java @@ -26,6 +26,8 @@ String PLAN_CATEGORY = DICT_PREFIX + "PlanType"; String PLAN_EXECUTE_STATUS = DICT_PREFIX + "PlanExecuteStatus"; + + String PLAN_CHECK_COMPLETION = DICT_PREFIX + "PlanCheckCompletion"; //实施状态 String EFFECTIVE_STATUS = "effectiveStatus"; //文件类别 diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java index 7281705..3e4c232 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java @@ -26,18 +26,18 @@ @ApiModelProperty(value = "委托方id", dataType = "String") private String customerId; - @ApiModelProperty(value = "委托方编号", dataType = "String") - private String customerNo; - @ApiModelProperty(value = "委托方名称", dataType = "String") private String customerName; + /** + * 检定(校准)单位(固定值) + */ + @ApiModelProperty(value = "溯源单位(检定(校准)单位)", dataType = "String") + private String measureCompany; + @ApiModelProperty(value = "送检人", dataType = "String") private String deliverer; - @TableField(exist = false) - @ApiModelProperty(value = "样品数量", dataType = "String") - private Integer sampleCount; @ApiModelProperty(value = "接收状态(包括接收相关状态和检测完成状态)", dataType = "String") @DictCodeField(message = "接收状态不合法", cacheName = MeterDictCode.ORDER_STATUS) diff --git a/casic-metering-common/pom.xml b/casic-metering-common/pom.xml index 33f75c8..e431f85 100644 --- a/casic-metering-common/pom.xml +++ b/casic-metering-common/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -17,12 +17,12 @@ com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.github.oshi diff --git a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java index 0f37e03..250d886 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java @@ -12,6 +12,7 @@ import java.lang.reflect.Field; import java.lang.reflect.Method; import java.lang.reflect.Modifier; +import java.util.ArrayList; import java.util.Arrays; import java.util.List; @@ -26,8 +27,16 @@ * @return 全部相同返回true,有不相同的返回false */ public static boolean fieldCompare(Object beforeObj, Object afterObj, List fields) { - Field[] beforeFields = beforeObj.getClass().getDeclaredFields(); - Field[] afterFields = afterObj.getClass().getDeclaredFields(); + List beforeFieldList = Arrays.asList(beforeObj.getClass().getDeclaredFields()); + List superBeforeFileList = Arrays.asList(beforeObj.getClass().getSuperclass().getDeclaredFields()); + beforeFieldList.addAll(new ArrayList<>(superBeforeFileList)); + Field[] beforeFields = beforeFieldList.toArray(new Field[beforeFieldList.size()]); + + List afterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getDeclaredFields())); + List superAfterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getSuperclass().getDeclaredFields())); + afterFieldList.addAll(superAfterFieldList); + Field[] afterFields = afterFieldList.toArray(new Field[beforeFieldList.size()]); + Field.setAccessible(beforeFields, true); //设置私有属性可以访问到 Field.setAccessible(afterFields, true); //循环遍历比较属性 @@ -36,15 +45,19 @@ if (ObjectUtil.isNotEmpty(fields) && fields.contains(beforeFields[i].getName())) { try { Object beforeValue = beforeFields[i].get(beforeObj); //取出对应的属性值 - Object afterValue = afterFields[i].get(afterObj); + Object afterValue = null; + for (int j = 0; j < afterFields.length; j++) { + if(afterFields[j].getName().equals(beforeFields[i].getName())){ + afterValue = afterFields[j].get(afterObj); //取出对应的属性值 + break; + } + } if ((beforeValue != null && !"".equals(beforeValue) && !beforeValue.equals(afterValue)) || ((beforeValue == null || "".equals(beforeValue)) && afterValue != null)) { return false; } } catch (IllegalAccessException e) { log.error(e.getMessage()); } - - } } } diff --git a/casic-metering-dao/pom.xml b/casic-metering-dao/pom.xml index 64c6fbf..6cffff6 100644 --- a/casic-metering-dao/pom.xml +++ b/casic-metering-dao/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -16,7 +16,7 @@ com.casic casic-metering-model - 2.0.0 + 1.0.0.0 diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java index 548081b..f8ae80b 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java @@ -22,4 +22,9 @@ @Param("equipmentName") String equipmentName); PlanEquipmentStatus getPlanEquipmentStatus(@Param("equipmentId")Long equipmentId); + + + void inspectionStatusUpdate(@Param("executeStatus") String executeStatus, + @Param("inspectionId") Long inspectionId); + } diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml index a2c0944..e9d9f55 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml @@ -91,6 +91,7 @@ diff --git a/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml index bd0ad5f..ed9981e 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml @@ -19,7 +19,7 @@ id, inspection_id, equipment_id, inspection_time, plan_id, remarks, create_time, update_time - SELECT r.id AS id, r.inspection_id AS inspectionId, @@ -41,7 +41,7 @@ eqpt_inspection_equipment_relation r LEFT JOIN eqpt_equipment_info e ON e.id = r.equipment_id LEFT JOIN eqpt_plan p ON p.id = r.plan_id - AND r.inspection_id = #{inspectionId} + WHERE r.inspection_id = #{inspectionId} diff --git a/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml index 3aeb4a4..1c23860 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml @@ -67,4 +67,18 @@ LIMIT 1 + + update + eqpt_plan_equipment_relation r1, + eqpt_plan p, + eqpt_inspection_equipment_relation r2 + set r1.execute_status = #{executeStatus}, + r1.execute_time = r2.inspection_time + where r1.plan_id = p.id + and p.year = YEAR(NOW()) + and r1.execute_status = '0' + and r1.equipment_id = r2.equipment_id + and r2.inspection_id = #{inspectionId} + + diff --git a/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml index 93a8dc8..a2e8a11 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml @@ -29,7 +29,7 @@ n.notify_user as notifyUser, n.notify_dept as notifyDept, n.plan_id as planId, - p.plan_type as planType, + p.plan_category as planCategory, p.create_user_id as createUserId, p.create_user_name as createUserName, p.create_dept_id as createDeptId, diff --git a/casic-metering-eqpt-api/pom.xml b/casic-metering-eqpt-api/pom.xml index 456fdbf..99f40ca 100644 --- a/casic-metering-eqpt-api/pom.xml +++ b/casic-metering-eqpt-api/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -18,13 +18,13 @@ com.casic casic-metering-service - 2.0.0 + 1.0.0.0 com.casic casic-metering-job - 2.0.0 + 1.0.0.0 org.springframework.boot diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java index 268fb3a..06cb258 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java @@ -84,4 +84,13 @@ return businessOrderService.updateOrder(businessOrder); } + @ApiOperation("任务单取消") + @PostMapping("/cancel") + public ReturnDTO receiveOrder(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return businessOrderService.updateStatusById(idDTO.getId(), OrderStatusDictEnum.ALREADY_CANCEL); + } + } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java index 9456479..9717b78 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java @@ -16,6 +16,7 @@ import com.casic.missiles.dto.plan.PlanQueryForm; import com.casic.missiles.model.equipment.EquipmentInfoApproval; import com.casic.missiles.model.plan.Plan; +import com.casic.missiles.model.plan.PlanEquipmentRelation; import com.casic.missiles.service.ICommonApprovalService; import com.casic.missiles.service.plan.IPlanEquipmentRelationService; import com.casic.missiles.service.plan.IPlanService; @@ -76,7 +77,7 @@ }) @ApiOperation("计量计划详情-计划列表展开") @GetMapping("/relationList") - public ReturnDTO> relationList(Long planId,String equipmentName) { + public ReturnDTO> relationList(Long planId, String equipmentName) { return ReturnUtil.success(relationService.listByPlanAndName(planId,equipmentName)); } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java index 92e8e95..436fd8f 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java @@ -7,6 +7,7 @@ import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.equipment.EquipmentAggr; import com.casic.missiles.model.plan.PlanNotify; +import com.casic.missiles.model.plan.PlanNotifyRelation; import com.casic.missiles.service.plan.IPlanNotifyRelationService; import com.casic.missiles.service.plan.IPlanNotifyService; import io.swagger.annotations.Api; @@ -71,7 +72,7 @@ }) @ApiOperation("送检通知详情-送检列表展开") @GetMapping("/relationList") - public ReturnDTO> relationList(Long notifyId,String equipmentName) { + public ReturnDTO> relationList(Long notifyId, String equipmentName) { return ReturnUtil.success(relationService.listByNameAndNotify(equipmentName,notifyId)); } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java index 0090684..7f04e81 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java @@ -32,16 +32,14 @@ private final IRemindConfigService remindConfigService; @ApiOperation("编辑") - @RequestMapping("update") - @PostMapping + @PostMapping("update") public ReturnDTO update(@RequestBody RemindConfig remindConfig){ remindConfigService.updateById(remindConfig); return ReturnUtil.success(); } @ApiOperation("分页列表") - @RequestMapping("listPage") - @GetMapping + @GetMapping("listPage") public ReturnDTO> listPage(){ Page page = PageFactory.defaultPage(); page = remindConfigService.listScopePage(page); diff --git a/casic-metering-job/pom.xml b/casic-metering-job/pom.xml index 237e930..0a68bc1 100644 --- a/casic-metering-job/pom.xml +++ b/casic-metering-job/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -14,12 +14,12 @@ com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.github.oshi @@ -61,7 +61,7 @@ com.casic casic-metering-service - 2.0.0 + 1.0.0.0 compile diff --git a/casic-metering-model/pom.xml b/casic-metering-model/pom.xml index 31a2491..8ec8258 100644 --- a/casic-metering-model/pom.xml +++ b/casic-metering-model/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 diff --git a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java index 3974e29..0b7172c 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java @@ -26,6 +26,8 @@ String PLAN_CATEGORY = DICT_PREFIX + "PlanType"; String PLAN_EXECUTE_STATUS = DICT_PREFIX + "PlanExecuteStatus"; + + String PLAN_CHECK_COMPLETION = DICT_PREFIX + "PlanCheckCompletion"; //实施状态 String EFFECTIVE_STATUS = "effectiveStatus"; //文件类别 diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java index 7281705..3e4c232 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java @@ -26,18 +26,18 @@ @ApiModelProperty(value = "委托方id", dataType = "String") private String customerId; - @ApiModelProperty(value = "委托方编号", dataType = "String") - private String customerNo; - @ApiModelProperty(value = "委托方名称", dataType = "String") private String customerName; + /** + * 检定(校准)单位(固定值) + */ + @ApiModelProperty(value = "溯源单位(检定(校准)单位)", dataType = "String") + private String measureCompany; + @ApiModelProperty(value = "送检人", dataType = "String") private String deliverer; - @TableField(exist = false) - @ApiModelProperty(value = "样品数量", dataType = "String") - private Integer sampleCount; @ApiModelProperty(value = "接收状态(包括接收相关状态和检测完成状态)", dataType = "String") @DictCodeField(message = "接收状态不合法", cacheName = MeterDictCode.ORDER_STATUS) diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java index e0b4091..66809a7 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java @@ -16,6 +16,7 @@ import lombok.NoArgsConstructor; import lombok.Setter; +import static com.casic.missiles.constants.MeterDictCode.PLAN_CHECK_COMPLETION; import static com.casic.missiles.constants.MeterDictCode.PLAN_EXECUTE_STATUS; /** @@ -81,7 +82,12 @@ */ @ApiModelProperty("检定完成度") @TableField("check_completion") + @DictCodeField(cacheName = PLAN_CHECK_COMPLETION) private String checkCompletion; + + @ApiModelProperty("检定完成度名称") + @TableField(exist = false) + private String checkCompletionName; /** * 检定完成时间 */ diff --git a/casic-metering-common/pom.xml b/casic-metering-common/pom.xml index 33f75c8..e431f85 100644 --- a/casic-metering-common/pom.xml +++ b/casic-metering-common/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -17,12 +17,12 @@ com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.github.oshi diff --git a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java index 0f37e03..250d886 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java @@ -12,6 +12,7 @@ import java.lang.reflect.Field; import java.lang.reflect.Method; import java.lang.reflect.Modifier; +import java.util.ArrayList; import java.util.Arrays; import java.util.List; @@ -26,8 +27,16 @@ * @return 全部相同返回true,有不相同的返回false */ public static boolean fieldCompare(Object beforeObj, Object afterObj, List fields) { - Field[] beforeFields = beforeObj.getClass().getDeclaredFields(); - Field[] afterFields = afterObj.getClass().getDeclaredFields(); + List beforeFieldList = Arrays.asList(beforeObj.getClass().getDeclaredFields()); + List superBeforeFileList = Arrays.asList(beforeObj.getClass().getSuperclass().getDeclaredFields()); + beforeFieldList.addAll(new ArrayList<>(superBeforeFileList)); + Field[] beforeFields = beforeFieldList.toArray(new Field[beforeFieldList.size()]); + + List afterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getDeclaredFields())); + List superAfterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getSuperclass().getDeclaredFields())); + afterFieldList.addAll(superAfterFieldList); + Field[] afterFields = afterFieldList.toArray(new Field[beforeFieldList.size()]); + Field.setAccessible(beforeFields, true); //设置私有属性可以访问到 Field.setAccessible(afterFields, true); //循环遍历比较属性 @@ -36,15 +45,19 @@ if (ObjectUtil.isNotEmpty(fields) && fields.contains(beforeFields[i].getName())) { try { Object beforeValue = beforeFields[i].get(beforeObj); //取出对应的属性值 - Object afterValue = afterFields[i].get(afterObj); + Object afterValue = null; + for (int j = 0; j < afterFields.length; j++) { + if(afterFields[j].getName().equals(beforeFields[i].getName())){ + afterValue = afterFields[j].get(afterObj); //取出对应的属性值 + break; + } + } if ((beforeValue != null && !"".equals(beforeValue) && !beforeValue.equals(afterValue)) || ((beforeValue == null || "".equals(beforeValue)) && afterValue != null)) { return false; } } catch (IllegalAccessException e) { log.error(e.getMessage()); } - - } } } diff --git a/casic-metering-dao/pom.xml b/casic-metering-dao/pom.xml index 64c6fbf..6cffff6 100644 --- a/casic-metering-dao/pom.xml +++ b/casic-metering-dao/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -16,7 +16,7 @@ com.casic casic-metering-model - 2.0.0 + 1.0.0.0 diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java index 548081b..f8ae80b 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java @@ -22,4 +22,9 @@ @Param("equipmentName") String equipmentName); PlanEquipmentStatus getPlanEquipmentStatus(@Param("equipmentId")Long equipmentId); + + + void inspectionStatusUpdate(@Param("executeStatus") String executeStatus, + @Param("inspectionId") Long inspectionId); + } diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml index a2c0944..e9d9f55 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml @@ -91,6 +91,7 @@ diff --git a/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml index bd0ad5f..ed9981e 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml @@ -19,7 +19,7 @@ id, inspection_id, equipment_id, inspection_time, plan_id, remarks, create_time, update_time - SELECT r.id AS id, r.inspection_id AS inspectionId, @@ -41,7 +41,7 @@ eqpt_inspection_equipment_relation r LEFT JOIN eqpt_equipment_info e ON e.id = r.equipment_id LEFT JOIN eqpt_plan p ON p.id = r.plan_id - AND r.inspection_id = #{inspectionId} + WHERE r.inspection_id = #{inspectionId} diff --git a/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml index 3aeb4a4..1c23860 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml @@ -67,4 +67,18 @@ LIMIT 1 + + update + eqpt_plan_equipment_relation r1, + eqpt_plan p, + eqpt_inspection_equipment_relation r2 + set r1.execute_status = #{executeStatus}, + r1.execute_time = r2.inspection_time + where r1.plan_id = p.id + and p.year = YEAR(NOW()) + and r1.execute_status = '0' + and r1.equipment_id = r2.equipment_id + and r2.inspection_id = #{inspectionId} + + diff --git a/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml index 93a8dc8..a2e8a11 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml @@ -29,7 +29,7 @@ n.notify_user as notifyUser, n.notify_dept as notifyDept, n.plan_id as planId, - p.plan_type as planType, + p.plan_category as planCategory, p.create_user_id as createUserId, p.create_user_name as createUserName, p.create_dept_id as createDeptId, diff --git a/casic-metering-eqpt-api/pom.xml b/casic-metering-eqpt-api/pom.xml index 456fdbf..99f40ca 100644 --- a/casic-metering-eqpt-api/pom.xml +++ b/casic-metering-eqpt-api/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -18,13 +18,13 @@ com.casic casic-metering-service - 2.0.0 + 1.0.0.0 com.casic casic-metering-job - 2.0.0 + 1.0.0.0 org.springframework.boot diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java index 268fb3a..06cb258 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java @@ -84,4 +84,13 @@ return businessOrderService.updateOrder(businessOrder); } + @ApiOperation("任务单取消") + @PostMapping("/cancel") + public ReturnDTO receiveOrder(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return businessOrderService.updateStatusById(idDTO.getId(), OrderStatusDictEnum.ALREADY_CANCEL); + } + } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java index 9456479..9717b78 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java @@ -16,6 +16,7 @@ import com.casic.missiles.dto.plan.PlanQueryForm; import com.casic.missiles.model.equipment.EquipmentInfoApproval; import com.casic.missiles.model.plan.Plan; +import com.casic.missiles.model.plan.PlanEquipmentRelation; import com.casic.missiles.service.ICommonApprovalService; import com.casic.missiles.service.plan.IPlanEquipmentRelationService; import com.casic.missiles.service.plan.IPlanService; @@ -76,7 +77,7 @@ }) @ApiOperation("计量计划详情-计划列表展开") @GetMapping("/relationList") - public ReturnDTO> relationList(Long planId,String equipmentName) { + public ReturnDTO> relationList(Long planId, String equipmentName) { return ReturnUtil.success(relationService.listByPlanAndName(planId,equipmentName)); } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java index 92e8e95..436fd8f 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java @@ -7,6 +7,7 @@ import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.equipment.EquipmentAggr; import com.casic.missiles.model.plan.PlanNotify; +import com.casic.missiles.model.plan.PlanNotifyRelation; import com.casic.missiles.service.plan.IPlanNotifyRelationService; import com.casic.missiles.service.plan.IPlanNotifyService; import io.swagger.annotations.Api; @@ -71,7 +72,7 @@ }) @ApiOperation("送检通知详情-送检列表展开") @GetMapping("/relationList") - public ReturnDTO> relationList(Long notifyId,String equipmentName) { + public ReturnDTO> relationList(Long notifyId, String equipmentName) { return ReturnUtil.success(relationService.listByNameAndNotify(equipmentName,notifyId)); } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java index 0090684..7f04e81 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java @@ -32,16 +32,14 @@ private final IRemindConfigService remindConfigService; @ApiOperation("编辑") - @RequestMapping("update") - @PostMapping + @PostMapping("update") public ReturnDTO update(@RequestBody RemindConfig remindConfig){ remindConfigService.updateById(remindConfig); return ReturnUtil.success(); } @ApiOperation("分页列表") - @RequestMapping("listPage") - @GetMapping + @GetMapping("listPage") public ReturnDTO> listPage(){ Page page = PageFactory.defaultPage(); page = remindConfigService.listScopePage(page); diff --git a/casic-metering-job/pom.xml b/casic-metering-job/pom.xml index 237e930..0a68bc1 100644 --- a/casic-metering-job/pom.xml +++ b/casic-metering-job/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -14,12 +14,12 @@ com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.github.oshi @@ -61,7 +61,7 @@ com.casic casic-metering-service - 2.0.0 + 1.0.0.0 compile diff --git a/casic-metering-model/pom.xml b/casic-metering-model/pom.xml index 31a2491..8ec8258 100644 --- a/casic-metering-model/pom.xml +++ b/casic-metering-model/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 diff --git a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java index 3974e29..0b7172c 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java @@ -26,6 +26,8 @@ String PLAN_CATEGORY = DICT_PREFIX + "PlanType"; String PLAN_EXECUTE_STATUS = DICT_PREFIX + "PlanExecuteStatus"; + + String PLAN_CHECK_COMPLETION = DICT_PREFIX + "PlanCheckCompletion"; //实施状态 String EFFECTIVE_STATUS = "effectiveStatus"; //文件类别 diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java index 7281705..3e4c232 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java @@ -26,18 +26,18 @@ @ApiModelProperty(value = "委托方id", dataType = "String") private String customerId; - @ApiModelProperty(value = "委托方编号", dataType = "String") - private String customerNo; - @ApiModelProperty(value = "委托方名称", dataType = "String") private String customerName; + /** + * 检定(校准)单位(固定值) + */ + @ApiModelProperty(value = "溯源单位(检定(校准)单位)", dataType = "String") + private String measureCompany; + @ApiModelProperty(value = "送检人", dataType = "String") private String deliverer; - @TableField(exist = false) - @ApiModelProperty(value = "样品数量", dataType = "String") - private Integer sampleCount; @ApiModelProperty(value = "接收状态(包括接收相关状态和检测完成状态)", dataType = "String") @DictCodeField(message = "接收状态不合法", cacheName = MeterDictCode.ORDER_STATUS) diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java index e0b4091..66809a7 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java @@ -16,6 +16,7 @@ import lombok.NoArgsConstructor; import lombok.Setter; +import static com.casic.missiles.constants.MeterDictCode.PLAN_CHECK_COMPLETION; import static com.casic.missiles.constants.MeterDictCode.PLAN_EXECUTE_STATUS; /** @@ -81,7 +82,12 @@ */ @ApiModelProperty("检定完成度") @TableField("check_completion") + @DictCodeField(cacheName = PLAN_CHECK_COMPLETION) private String checkCompletion; + + @ApiModelProperty("检定完成度名称") + @TableField(exist = false) + private String checkCompletionName; /** * 检定完成时间 */ diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java index ae10d36..c7d478c 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java @@ -8,6 +8,8 @@ import java.time.LocalDateTime; import java.util.Date; +import com.casic.missiles.annotation.DictCodeField; +import com.casic.missiles.constants.MeterDictCode; import io.swagger.annotations.ApiModelProperty; import lombok.Getter; import lombok.Setter; @@ -76,6 +78,43 @@ @TableField("plan_id") private Long planId; + @ApiModelProperty("计划分类") + @TableField(exist = false) + @DictCodeField(cacheName = MeterDictCode.PLAN_CATEGORY) + private String planCategory; + + @ApiModelProperty("计划分类名称") + @TableField(exist = false) + private String planCategoryName; + + /** + * 创建人id + */ + @ApiModelProperty("创建人id") + @TableField(exist = false) + private Long createUserId; + + /** + * 创建人姓名 + */ + @ApiModelProperty("创建人姓名") + @TableField(exist = false) + private String createUserName; + + /** + * 创建单位id + */ + @ApiModelProperty("创建单位id") + @TableField(exist = false) + private Long createDeptId; + + /** + * 创建单位名称 + */ + @ApiModelProperty("创建单位名称") + @TableField(exist = false) + private String createDeptName; + /** * 创建时间 */ diff --git a/casic-metering-common/pom.xml b/casic-metering-common/pom.xml index 33f75c8..e431f85 100644 --- a/casic-metering-common/pom.xml +++ b/casic-metering-common/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -17,12 +17,12 @@ com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.github.oshi diff --git a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java index 0f37e03..250d886 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java @@ -12,6 +12,7 @@ import java.lang.reflect.Field; import java.lang.reflect.Method; import java.lang.reflect.Modifier; +import java.util.ArrayList; import java.util.Arrays; import java.util.List; @@ -26,8 +27,16 @@ * @return 全部相同返回true,有不相同的返回false */ public static boolean fieldCompare(Object beforeObj, Object afterObj, List fields) { - Field[] beforeFields = beforeObj.getClass().getDeclaredFields(); - Field[] afterFields = afterObj.getClass().getDeclaredFields(); + List beforeFieldList = Arrays.asList(beforeObj.getClass().getDeclaredFields()); + List superBeforeFileList = Arrays.asList(beforeObj.getClass().getSuperclass().getDeclaredFields()); + beforeFieldList.addAll(new ArrayList<>(superBeforeFileList)); + Field[] beforeFields = beforeFieldList.toArray(new Field[beforeFieldList.size()]); + + List afterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getDeclaredFields())); + List superAfterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getSuperclass().getDeclaredFields())); + afterFieldList.addAll(superAfterFieldList); + Field[] afterFields = afterFieldList.toArray(new Field[beforeFieldList.size()]); + Field.setAccessible(beforeFields, true); //设置私有属性可以访问到 Field.setAccessible(afterFields, true); //循环遍历比较属性 @@ -36,15 +45,19 @@ if (ObjectUtil.isNotEmpty(fields) && fields.contains(beforeFields[i].getName())) { try { Object beforeValue = beforeFields[i].get(beforeObj); //取出对应的属性值 - Object afterValue = afterFields[i].get(afterObj); + Object afterValue = null; + for (int j = 0; j < afterFields.length; j++) { + if(afterFields[j].getName().equals(beforeFields[i].getName())){ + afterValue = afterFields[j].get(afterObj); //取出对应的属性值 + break; + } + } if ((beforeValue != null && !"".equals(beforeValue) && !beforeValue.equals(afterValue)) || ((beforeValue == null || "".equals(beforeValue)) && afterValue != null)) { return false; } } catch (IllegalAccessException e) { log.error(e.getMessage()); } - - } } } diff --git a/casic-metering-dao/pom.xml b/casic-metering-dao/pom.xml index 64c6fbf..6cffff6 100644 --- a/casic-metering-dao/pom.xml +++ b/casic-metering-dao/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -16,7 +16,7 @@ com.casic casic-metering-model - 2.0.0 + 1.0.0.0 diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java index 548081b..f8ae80b 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java @@ -22,4 +22,9 @@ @Param("equipmentName") String equipmentName); PlanEquipmentStatus getPlanEquipmentStatus(@Param("equipmentId")Long equipmentId); + + + void inspectionStatusUpdate(@Param("executeStatus") String executeStatus, + @Param("inspectionId") Long inspectionId); + } diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml index a2c0944..e9d9f55 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml @@ -91,6 +91,7 @@ diff --git a/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml index bd0ad5f..ed9981e 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml @@ -19,7 +19,7 @@ id, inspection_id, equipment_id, inspection_time, plan_id, remarks, create_time, update_time - SELECT r.id AS id, r.inspection_id AS inspectionId, @@ -41,7 +41,7 @@ eqpt_inspection_equipment_relation r LEFT JOIN eqpt_equipment_info e ON e.id = r.equipment_id LEFT JOIN eqpt_plan p ON p.id = r.plan_id - AND r.inspection_id = #{inspectionId} + WHERE r.inspection_id = #{inspectionId} diff --git a/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml index 3aeb4a4..1c23860 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml @@ -67,4 +67,18 @@ LIMIT 1 + + update + eqpt_plan_equipment_relation r1, + eqpt_plan p, + eqpt_inspection_equipment_relation r2 + set r1.execute_status = #{executeStatus}, + r1.execute_time = r2.inspection_time + where r1.plan_id = p.id + and p.year = YEAR(NOW()) + and r1.execute_status = '0' + and r1.equipment_id = r2.equipment_id + and r2.inspection_id = #{inspectionId} + + diff --git a/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml index 93a8dc8..a2e8a11 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml @@ -29,7 +29,7 @@ n.notify_user as notifyUser, n.notify_dept as notifyDept, n.plan_id as planId, - p.plan_type as planType, + p.plan_category as planCategory, p.create_user_id as createUserId, p.create_user_name as createUserName, p.create_dept_id as createDeptId, diff --git a/casic-metering-eqpt-api/pom.xml b/casic-metering-eqpt-api/pom.xml index 456fdbf..99f40ca 100644 --- a/casic-metering-eqpt-api/pom.xml +++ b/casic-metering-eqpt-api/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -18,13 +18,13 @@ com.casic casic-metering-service - 2.0.0 + 1.0.0.0 com.casic casic-metering-job - 2.0.0 + 1.0.0.0 org.springframework.boot diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java index 268fb3a..06cb258 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java @@ -84,4 +84,13 @@ return businessOrderService.updateOrder(businessOrder); } + @ApiOperation("任务单取消") + @PostMapping("/cancel") + public ReturnDTO receiveOrder(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return businessOrderService.updateStatusById(idDTO.getId(), OrderStatusDictEnum.ALREADY_CANCEL); + } + } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java index 9456479..9717b78 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java @@ -16,6 +16,7 @@ import com.casic.missiles.dto.plan.PlanQueryForm; import com.casic.missiles.model.equipment.EquipmentInfoApproval; import com.casic.missiles.model.plan.Plan; +import com.casic.missiles.model.plan.PlanEquipmentRelation; import com.casic.missiles.service.ICommonApprovalService; import com.casic.missiles.service.plan.IPlanEquipmentRelationService; import com.casic.missiles.service.plan.IPlanService; @@ -76,7 +77,7 @@ }) @ApiOperation("计量计划详情-计划列表展开") @GetMapping("/relationList") - public ReturnDTO> relationList(Long planId,String equipmentName) { + public ReturnDTO> relationList(Long planId, String equipmentName) { return ReturnUtil.success(relationService.listByPlanAndName(planId,equipmentName)); } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java index 92e8e95..436fd8f 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java @@ -7,6 +7,7 @@ import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.equipment.EquipmentAggr; import com.casic.missiles.model.plan.PlanNotify; +import com.casic.missiles.model.plan.PlanNotifyRelation; import com.casic.missiles.service.plan.IPlanNotifyRelationService; import com.casic.missiles.service.plan.IPlanNotifyService; import io.swagger.annotations.Api; @@ -71,7 +72,7 @@ }) @ApiOperation("送检通知详情-送检列表展开") @GetMapping("/relationList") - public ReturnDTO> relationList(Long notifyId,String equipmentName) { + public ReturnDTO> relationList(Long notifyId, String equipmentName) { return ReturnUtil.success(relationService.listByNameAndNotify(equipmentName,notifyId)); } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java index 0090684..7f04e81 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java @@ -32,16 +32,14 @@ private final IRemindConfigService remindConfigService; @ApiOperation("编辑") - @RequestMapping("update") - @PostMapping + @PostMapping("update") public ReturnDTO update(@RequestBody RemindConfig remindConfig){ remindConfigService.updateById(remindConfig); return ReturnUtil.success(); } @ApiOperation("分页列表") - @RequestMapping("listPage") - @GetMapping + @GetMapping("listPage") public ReturnDTO> listPage(){ Page page = PageFactory.defaultPage(); page = remindConfigService.listScopePage(page); diff --git a/casic-metering-job/pom.xml b/casic-metering-job/pom.xml index 237e930..0a68bc1 100644 --- a/casic-metering-job/pom.xml +++ b/casic-metering-job/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -14,12 +14,12 @@ com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.github.oshi @@ -61,7 +61,7 @@ com.casic casic-metering-service - 2.0.0 + 1.0.0.0 compile diff --git a/casic-metering-model/pom.xml b/casic-metering-model/pom.xml index 31a2491..8ec8258 100644 --- a/casic-metering-model/pom.xml +++ b/casic-metering-model/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 diff --git a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java index 3974e29..0b7172c 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java @@ -26,6 +26,8 @@ String PLAN_CATEGORY = DICT_PREFIX + "PlanType"; String PLAN_EXECUTE_STATUS = DICT_PREFIX + "PlanExecuteStatus"; + + String PLAN_CHECK_COMPLETION = DICT_PREFIX + "PlanCheckCompletion"; //实施状态 String EFFECTIVE_STATUS = "effectiveStatus"; //文件类别 diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java index 7281705..3e4c232 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java @@ -26,18 +26,18 @@ @ApiModelProperty(value = "委托方id", dataType = "String") private String customerId; - @ApiModelProperty(value = "委托方编号", dataType = "String") - private String customerNo; - @ApiModelProperty(value = "委托方名称", dataType = "String") private String customerName; + /** + * 检定(校准)单位(固定值) + */ + @ApiModelProperty(value = "溯源单位(检定(校准)单位)", dataType = "String") + private String measureCompany; + @ApiModelProperty(value = "送检人", dataType = "String") private String deliverer; - @TableField(exist = false) - @ApiModelProperty(value = "样品数量", dataType = "String") - private Integer sampleCount; @ApiModelProperty(value = "接收状态(包括接收相关状态和检测完成状态)", dataType = "String") @DictCodeField(message = "接收状态不合法", cacheName = MeterDictCode.ORDER_STATUS) diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java index e0b4091..66809a7 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java @@ -16,6 +16,7 @@ import lombok.NoArgsConstructor; import lombok.Setter; +import static com.casic.missiles.constants.MeterDictCode.PLAN_CHECK_COMPLETION; import static com.casic.missiles.constants.MeterDictCode.PLAN_EXECUTE_STATUS; /** @@ -81,7 +82,12 @@ */ @ApiModelProperty("检定完成度") @TableField("check_completion") + @DictCodeField(cacheName = PLAN_CHECK_COMPLETION) private String checkCompletion; + + @ApiModelProperty("检定完成度名称") + @TableField(exist = false) + private String checkCompletionName; /** * 检定完成时间 */ diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java index ae10d36..c7d478c 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java @@ -8,6 +8,8 @@ import java.time.LocalDateTime; import java.util.Date; +import com.casic.missiles.annotation.DictCodeField; +import com.casic.missiles.constants.MeterDictCode; import io.swagger.annotations.ApiModelProperty; import lombok.Getter; import lombok.Setter; @@ -76,6 +78,43 @@ @TableField("plan_id") private Long planId; + @ApiModelProperty("计划分类") + @TableField(exist = false) + @DictCodeField(cacheName = MeterDictCode.PLAN_CATEGORY) + private String planCategory; + + @ApiModelProperty("计划分类名称") + @TableField(exist = false) + private String planCategoryName; + + /** + * 创建人id + */ + @ApiModelProperty("创建人id") + @TableField(exist = false) + private Long createUserId; + + /** + * 创建人姓名 + */ + @ApiModelProperty("创建人姓名") + @TableField(exist = false) + private String createUserName; + + /** + * 创建单位id + */ + @ApiModelProperty("创建单位id") + @TableField(exist = false) + private Long createDeptId; + + /** + * 创建单位名称 + */ + @ApiModelProperty("创建单位名称") + @TableField(exist = false) + private String createDeptName; + /** * 创建时间 */ diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java index f506553..7aa0b79 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java @@ -7,10 +7,16 @@ import java.time.LocalDateTime; import java.util.Date; +import com.casic.missiles.annotation.DictCodeField; import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; import lombok.Getter; +import lombok.NoArgsConstructor; import lombok.Setter; +import static com.casic.missiles.constants.MeterDictCode.PLAN_CHECK_COMPLETION; +import static com.casic.missiles.constants.MeterDictCode.PLAN_EXECUTE_STATUS; + /** *

* 受检设备-计量计划-送检通知关联表 @@ -21,6 +27,8 @@ */ @Getter @Setter +@NoArgsConstructor +@AllArgsConstructor @TableName("eqpt_plan_notify_relation") public class PlanNotifyRelation implements Serializable { @@ -128,7 +136,15 @@ */ @ApiModelProperty("执行状态") @TableField(exist = false) + @DictCodeField(cacheName = PLAN_EXECUTE_STATUS) private String executeStatus; + + /** + * 执行状态名称 + */ + @ApiModelProperty("执行状态名称") + @TableField(exist = false) + private String executeStatusName; /** * 执行时间 */ @@ -140,7 +156,12 @@ */ @ApiModelProperty("检定完成度") @TableField(exist = false) + @DictCodeField(cacheName = PLAN_CHECK_COMPLETION) private String checkCompletion; + + @ApiModelProperty("检定完成度名称") + @TableField(exist = false) + private String checkCompletionName; /** * 检定完成时间 */ @@ -148,6 +169,7 @@ @TableField(exist = false) private Date checkFinishTime; + public PlanNotifyRelation(Long notifyId, Long planRelationId) { this.notifyId = notifyId; this.planRelationId = planRelationId; diff --git a/casic-metering-common/pom.xml b/casic-metering-common/pom.xml index 33f75c8..e431f85 100644 --- a/casic-metering-common/pom.xml +++ b/casic-metering-common/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -17,12 +17,12 @@ com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.github.oshi diff --git a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java index 0f37e03..250d886 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java @@ -12,6 +12,7 @@ import java.lang.reflect.Field; import java.lang.reflect.Method; import java.lang.reflect.Modifier; +import java.util.ArrayList; import java.util.Arrays; import java.util.List; @@ -26,8 +27,16 @@ * @return 全部相同返回true,有不相同的返回false */ public static boolean fieldCompare(Object beforeObj, Object afterObj, List fields) { - Field[] beforeFields = beforeObj.getClass().getDeclaredFields(); - Field[] afterFields = afterObj.getClass().getDeclaredFields(); + List beforeFieldList = Arrays.asList(beforeObj.getClass().getDeclaredFields()); + List superBeforeFileList = Arrays.asList(beforeObj.getClass().getSuperclass().getDeclaredFields()); + beforeFieldList.addAll(new ArrayList<>(superBeforeFileList)); + Field[] beforeFields = beforeFieldList.toArray(new Field[beforeFieldList.size()]); + + List afterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getDeclaredFields())); + List superAfterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getSuperclass().getDeclaredFields())); + afterFieldList.addAll(superAfterFieldList); + Field[] afterFields = afterFieldList.toArray(new Field[beforeFieldList.size()]); + Field.setAccessible(beforeFields, true); //设置私有属性可以访问到 Field.setAccessible(afterFields, true); //循环遍历比较属性 @@ -36,15 +45,19 @@ if (ObjectUtil.isNotEmpty(fields) && fields.contains(beforeFields[i].getName())) { try { Object beforeValue = beforeFields[i].get(beforeObj); //取出对应的属性值 - Object afterValue = afterFields[i].get(afterObj); + Object afterValue = null; + for (int j = 0; j < afterFields.length; j++) { + if(afterFields[j].getName().equals(beforeFields[i].getName())){ + afterValue = afterFields[j].get(afterObj); //取出对应的属性值 + break; + } + } if ((beforeValue != null && !"".equals(beforeValue) && !beforeValue.equals(afterValue)) || ((beforeValue == null || "".equals(beforeValue)) && afterValue != null)) { return false; } } catch (IllegalAccessException e) { log.error(e.getMessage()); } - - } } } diff --git a/casic-metering-dao/pom.xml b/casic-metering-dao/pom.xml index 64c6fbf..6cffff6 100644 --- a/casic-metering-dao/pom.xml +++ b/casic-metering-dao/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -16,7 +16,7 @@ com.casic casic-metering-model - 2.0.0 + 1.0.0.0 diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java index 548081b..f8ae80b 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java @@ -22,4 +22,9 @@ @Param("equipmentName") String equipmentName); PlanEquipmentStatus getPlanEquipmentStatus(@Param("equipmentId")Long equipmentId); + + + void inspectionStatusUpdate(@Param("executeStatus") String executeStatus, + @Param("inspectionId") Long inspectionId); + } diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml index a2c0944..e9d9f55 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml @@ -91,6 +91,7 @@ diff --git a/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml index bd0ad5f..ed9981e 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml @@ -19,7 +19,7 @@ id, inspection_id, equipment_id, inspection_time, plan_id, remarks, create_time, update_time - SELECT r.id AS id, r.inspection_id AS inspectionId, @@ -41,7 +41,7 @@ eqpt_inspection_equipment_relation r LEFT JOIN eqpt_equipment_info e ON e.id = r.equipment_id LEFT JOIN eqpt_plan p ON p.id = r.plan_id - AND r.inspection_id = #{inspectionId} + WHERE r.inspection_id = #{inspectionId} diff --git a/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml index 3aeb4a4..1c23860 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml @@ -67,4 +67,18 @@ LIMIT 1 + + update + eqpt_plan_equipment_relation r1, + eqpt_plan p, + eqpt_inspection_equipment_relation r2 + set r1.execute_status = #{executeStatus}, + r1.execute_time = r2.inspection_time + where r1.plan_id = p.id + and p.year = YEAR(NOW()) + and r1.execute_status = '0' + and r1.equipment_id = r2.equipment_id + and r2.inspection_id = #{inspectionId} + + diff --git a/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml index 93a8dc8..a2e8a11 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml @@ -29,7 +29,7 @@ n.notify_user as notifyUser, n.notify_dept as notifyDept, n.plan_id as planId, - p.plan_type as planType, + p.plan_category as planCategory, p.create_user_id as createUserId, p.create_user_name as createUserName, p.create_dept_id as createDeptId, diff --git a/casic-metering-eqpt-api/pom.xml b/casic-metering-eqpt-api/pom.xml index 456fdbf..99f40ca 100644 --- a/casic-metering-eqpt-api/pom.xml +++ b/casic-metering-eqpt-api/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -18,13 +18,13 @@ com.casic casic-metering-service - 2.0.0 + 1.0.0.0 com.casic casic-metering-job - 2.0.0 + 1.0.0.0 org.springframework.boot diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java index 268fb3a..06cb258 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java @@ -84,4 +84,13 @@ return businessOrderService.updateOrder(businessOrder); } + @ApiOperation("任务单取消") + @PostMapping("/cancel") + public ReturnDTO receiveOrder(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return businessOrderService.updateStatusById(idDTO.getId(), OrderStatusDictEnum.ALREADY_CANCEL); + } + } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java index 9456479..9717b78 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java @@ -16,6 +16,7 @@ import com.casic.missiles.dto.plan.PlanQueryForm; import com.casic.missiles.model.equipment.EquipmentInfoApproval; import com.casic.missiles.model.plan.Plan; +import com.casic.missiles.model.plan.PlanEquipmentRelation; import com.casic.missiles.service.ICommonApprovalService; import com.casic.missiles.service.plan.IPlanEquipmentRelationService; import com.casic.missiles.service.plan.IPlanService; @@ -76,7 +77,7 @@ }) @ApiOperation("计量计划详情-计划列表展开") @GetMapping("/relationList") - public ReturnDTO> relationList(Long planId,String equipmentName) { + public ReturnDTO> relationList(Long planId, String equipmentName) { return ReturnUtil.success(relationService.listByPlanAndName(planId,equipmentName)); } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java index 92e8e95..436fd8f 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java @@ -7,6 +7,7 @@ import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.equipment.EquipmentAggr; import com.casic.missiles.model.plan.PlanNotify; +import com.casic.missiles.model.plan.PlanNotifyRelation; import com.casic.missiles.service.plan.IPlanNotifyRelationService; import com.casic.missiles.service.plan.IPlanNotifyService; import io.swagger.annotations.Api; @@ -71,7 +72,7 @@ }) @ApiOperation("送检通知详情-送检列表展开") @GetMapping("/relationList") - public ReturnDTO> relationList(Long notifyId,String equipmentName) { + public ReturnDTO> relationList(Long notifyId, String equipmentName) { return ReturnUtil.success(relationService.listByNameAndNotify(equipmentName,notifyId)); } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java index 0090684..7f04e81 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java @@ -32,16 +32,14 @@ private final IRemindConfigService remindConfigService; @ApiOperation("编辑") - @RequestMapping("update") - @PostMapping + @PostMapping("update") public ReturnDTO update(@RequestBody RemindConfig remindConfig){ remindConfigService.updateById(remindConfig); return ReturnUtil.success(); } @ApiOperation("分页列表") - @RequestMapping("listPage") - @GetMapping + @GetMapping("listPage") public ReturnDTO> listPage(){ Page page = PageFactory.defaultPage(); page = remindConfigService.listScopePage(page); diff --git a/casic-metering-job/pom.xml b/casic-metering-job/pom.xml index 237e930..0a68bc1 100644 --- a/casic-metering-job/pom.xml +++ b/casic-metering-job/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -14,12 +14,12 @@ com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.github.oshi @@ -61,7 +61,7 @@ com.casic casic-metering-service - 2.0.0 + 1.0.0.0 compile diff --git a/casic-metering-model/pom.xml b/casic-metering-model/pom.xml index 31a2491..8ec8258 100644 --- a/casic-metering-model/pom.xml +++ b/casic-metering-model/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 diff --git a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java index 3974e29..0b7172c 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java @@ -26,6 +26,8 @@ String PLAN_CATEGORY = DICT_PREFIX + "PlanType"; String PLAN_EXECUTE_STATUS = DICT_PREFIX + "PlanExecuteStatus"; + + String PLAN_CHECK_COMPLETION = DICT_PREFIX + "PlanCheckCompletion"; //实施状态 String EFFECTIVE_STATUS = "effectiveStatus"; //文件类别 diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java index 7281705..3e4c232 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java @@ -26,18 +26,18 @@ @ApiModelProperty(value = "委托方id", dataType = "String") private String customerId; - @ApiModelProperty(value = "委托方编号", dataType = "String") - private String customerNo; - @ApiModelProperty(value = "委托方名称", dataType = "String") private String customerName; + /** + * 检定(校准)单位(固定值) + */ + @ApiModelProperty(value = "溯源单位(检定(校准)单位)", dataType = "String") + private String measureCompany; + @ApiModelProperty(value = "送检人", dataType = "String") private String deliverer; - @TableField(exist = false) - @ApiModelProperty(value = "样品数量", dataType = "String") - private Integer sampleCount; @ApiModelProperty(value = "接收状态(包括接收相关状态和检测完成状态)", dataType = "String") @DictCodeField(message = "接收状态不合法", cacheName = MeterDictCode.ORDER_STATUS) diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java index e0b4091..66809a7 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java @@ -16,6 +16,7 @@ import lombok.NoArgsConstructor; import lombok.Setter; +import static com.casic.missiles.constants.MeterDictCode.PLAN_CHECK_COMPLETION; import static com.casic.missiles.constants.MeterDictCode.PLAN_EXECUTE_STATUS; /** @@ -81,7 +82,12 @@ */ @ApiModelProperty("检定完成度") @TableField("check_completion") + @DictCodeField(cacheName = PLAN_CHECK_COMPLETION) private String checkCompletion; + + @ApiModelProperty("检定完成度名称") + @TableField(exist = false) + private String checkCompletionName; /** * 检定完成时间 */ diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java index ae10d36..c7d478c 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java @@ -8,6 +8,8 @@ import java.time.LocalDateTime; import java.util.Date; +import com.casic.missiles.annotation.DictCodeField; +import com.casic.missiles.constants.MeterDictCode; import io.swagger.annotations.ApiModelProperty; import lombok.Getter; import lombok.Setter; @@ -76,6 +78,43 @@ @TableField("plan_id") private Long planId; + @ApiModelProperty("计划分类") + @TableField(exist = false) + @DictCodeField(cacheName = MeterDictCode.PLAN_CATEGORY) + private String planCategory; + + @ApiModelProperty("计划分类名称") + @TableField(exist = false) + private String planCategoryName; + + /** + * 创建人id + */ + @ApiModelProperty("创建人id") + @TableField(exist = false) + private Long createUserId; + + /** + * 创建人姓名 + */ + @ApiModelProperty("创建人姓名") + @TableField(exist = false) + private String createUserName; + + /** + * 创建单位id + */ + @ApiModelProperty("创建单位id") + @TableField(exist = false) + private Long createDeptId; + + /** + * 创建单位名称 + */ + @ApiModelProperty("创建单位名称") + @TableField(exist = false) + private String createDeptName; + /** * 创建时间 */ diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java index f506553..7aa0b79 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java @@ -7,10 +7,16 @@ import java.time.LocalDateTime; import java.util.Date; +import com.casic.missiles.annotation.DictCodeField; import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; import lombok.Getter; +import lombok.NoArgsConstructor; import lombok.Setter; +import static com.casic.missiles.constants.MeterDictCode.PLAN_CHECK_COMPLETION; +import static com.casic.missiles.constants.MeterDictCode.PLAN_EXECUTE_STATUS; + /** *

* 受检设备-计量计划-送检通知关联表 @@ -21,6 +27,8 @@ */ @Getter @Setter +@NoArgsConstructor +@AllArgsConstructor @TableName("eqpt_plan_notify_relation") public class PlanNotifyRelation implements Serializable { @@ -128,7 +136,15 @@ */ @ApiModelProperty("执行状态") @TableField(exist = false) + @DictCodeField(cacheName = PLAN_EXECUTE_STATUS) private String executeStatus; + + /** + * 执行状态名称 + */ + @ApiModelProperty("执行状态名称") + @TableField(exist = false) + private String executeStatusName; /** * 执行时间 */ @@ -140,7 +156,12 @@ */ @ApiModelProperty("检定完成度") @TableField(exist = false) + @DictCodeField(cacheName = PLAN_CHECK_COMPLETION) private String checkCompletion; + + @ApiModelProperty("检定完成度名称") + @TableField(exist = false) + private String checkCompletionName; /** * 检定完成时间 */ @@ -148,6 +169,7 @@ @TableField(exist = false) private Date checkFinishTime; + public PlanNotifyRelation(Long notifyId, Long planRelationId) { this.notifyId = notifyId; this.planRelationId = planRelationId; diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/SampleStatueUpdate.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/SampleStatueUpdate.java index bdc2abe..b27b122 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/SampleStatueUpdate.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/SampleStatueUpdate.java @@ -19,6 +19,6 @@ @ApiModelProperty(value = "样品状态",required = true) private String sampleStatus; - @ApiModelProperty(value = "检定完成时间",required = true) + @ApiModelProperty(value = "检定完成时间",required = false) private Date finishTime; } diff --git a/casic-metering-common/pom.xml b/casic-metering-common/pom.xml index 33f75c8..e431f85 100644 --- a/casic-metering-common/pom.xml +++ b/casic-metering-common/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -17,12 +17,12 @@ com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.github.oshi diff --git a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java index 0f37e03..250d886 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java @@ -12,6 +12,7 @@ import java.lang.reflect.Field; import java.lang.reflect.Method; import java.lang.reflect.Modifier; +import java.util.ArrayList; import java.util.Arrays; import java.util.List; @@ -26,8 +27,16 @@ * @return 全部相同返回true,有不相同的返回false */ public static boolean fieldCompare(Object beforeObj, Object afterObj, List fields) { - Field[] beforeFields = beforeObj.getClass().getDeclaredFields(); - Field[] afterFields = afterObj.getClass().getDeclaredFields(); + List beforeFieldList = Arrays.asList(beforeObj.getClass().getDeclaredFields()); + List superBeforeFileList = Arrays.asList(beforeObj.getClass().getSuperclass().getDeclaredFields()); + beforeFieldList.addAll(new ArrayList<>(superBeforeFileList)); + Field[] beforeFields = beforeFieldList.toArray(new Field[beforeFieldList.size()]); + + List afterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getDeclaredFields())); + List superAfterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getSuperclass().getDeclaredFields())); + afterFieldList.addAll(superAfterFieldList); + Field[] afterFields = afterFieldList.toArray(new Field[beforeFieldList.size()]); + Field.setAccessible(beforeFields, true); //设置私有属性可以访问到 Field.setAccessible(afterFields, true); //循环遍历比较属性 @@ -36,15 +45,19 @@ if (ObjectUtil.isNotEmpty(fields) && fields.contains(beforeFields[i].getName())) { try { Object beforeValue = beforeFields[i].get(beforeObj); //取出对应的属性值 - Object afterValue = afterFields[i].get(afterObj); + Object afterValue = null; + for (int j = 0; j < afterFields.length; j++) { + if(afterFields[j].getName().equals(beforeFields[i].getName())){ + afterValue = afterFields[j].get(afterObj); //取出对应的属性值 + break; + } + } if ((beforeValue != null && !"".equals(beforeValue) && !beforeValue.equals(afterValue)) || ((beforeValue == null || "".equals(beforeValue)) && afterValue != null)) { return false; } } catch (IllegalAccessException e) { log.error(e.getMessage()); } - - } } } diff --git a/casic-metering-dao/pom.xml b/casic-metering-dao/pom.xml index 64c6fbf..6cffff6 100644 --- a/casic-metering-dao/pom.xml +++ b/casic-metering-dao/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -16,7 +16,7 @@ com.casic casic-metering-model - 2.0.0 + 1.0.0.0 diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java index 548081b..f8ae80b 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java @@ -22,4 +22,9 @@ @Param("equipmentName") String equipmentName); PlanEquipmentStatus getPlanEquipmentStatus(@Param("equipmentId")Long equipmentId); + + + void inspectionStatusUpdate(@Param("executeStatus") String executeStatus, + @Param("inspectionId") Long inspectionId); + } diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml index a2c0944..e9d9f55 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml @@ -91,6 +91,7 @@ diff --git a/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml index bd0ad5f..ed9981e 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml @@ -19,7 +19,7 @@ id, inspection_id, equipment_id, inspection_time, plan_id, remarks, create_time, update_time - SELECT r.id AS id, r.inspection_id AS inspectionId, @@ -41,7 +41,7 @@ eqpt_inspection_equipment_relation r LEFT JOIN eqpt_equipment_info e ON e.id = r.equipment_id LEFT JOIN eqpt_plan p ON p.id = r.plan_id - AND r.inspection_id = #{inspectionId} + WHERE r.inspection_id = #{inspectionId} diff --git a/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml index 3aeb4a4..1c23860 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml @@ -67,4 +67,18 @@ LIMIT 1 + + update + eqpt_plan_equipment_relation r1, + eqpt_plan p, + eqpt_inspection_equipment_relation r2 + set r1.execute_status = #{executeStatus}, + r1.execute_time = r2.inspection_time + where r1.plan_id = p.id + and p.year = YEAR(NOW()) + and r1.execute_status = '0' + and r1.equipment_id = r2.equipment_id + and r2.inspection_id = #{inspectionId} + + diff --git a/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml index 93a8dc8..a2e8a11 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml @@ -29,7 +29,7 @@ n.notify_user as notifyUser, n.notify_dept as notifyDept, n.plan_id as planId, - p.plan_type as planType, + p.plan_category as planCategory, p.create_user_id as createUserId, p.create_user_name as createUserName, p.create_dept_id as createDeptId, diff --git a/casic-metering-eqpt-api/pom.xml b/casic-metering-eqpt-api/pom.xml index 456fdbf..99f40ca 100644 --- a/casic-metering-eqpt-api/pom.xml +++ b/casic-metering-eqpt-api/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -18,13 +18,13 @@ com.casic casic-metering-service - 2.0.0 + 1.0.0.0 com.casic casic-metering-job - 2.0.0 + 1.0.0.0 org.springframework.boot diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java index 268fb3a..06cb258 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java @@ -84,4 +84,13 @@ return businessOrderService.updateOrder(businessOrder); } + @ApiOperation("任务单取消") + @PostMapping("/cancel") + public ReturnDTO receiveOrder(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return businessOrderService.updateStatusById(idDTO.getId(), OrderStatusDictEnum.ALREADY_CANCEL); + } + } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java index 9456479..9717b78 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java @@ -16,6 +16,7 @@ import com.casic.missiles.dto.plan.PlanQueryForm; import com.casic.missiles.model.equipment.EquipmentInfoApproval; import com.casic.missiles.model.plan.Plan; +import com.casic.missiles.model.plan.PlanEquipmentRelation; import com.casic.missiles.service.ICommonApprovalService; import com.casic.missiles.service.plan.IPlanEquipmentRelationService; import com.casic.missiles.service.plan.IPlanService; @@ -76,7 +77,7 @@ }) @ApiOperation("计量计划详情-计划列表展开") @GetMapping("/relationList") - public ReturnDTO> relationList(Long planId,String equipmentName) { + public ReturnDTO> relationList(Long planId, String equipmentName) { return ReturnUtil.success(relationService.listByPlanAndName(planId,equipmentName)); } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java index 92e8e95..436fd8f 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java @@ -7,6 +7,7 @@ import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.equipment.EquipmentAggr; import com.casic.missiles.model.plan.PlanNotify; +import com.casic.missiles.model.plan.PlanNotifyRelation; import com.casic.missiles.service.plan.IPlanNotifyRelationService; import com.casic.missiles.service.plan.IPlanNotifyService; import io.swagger.annotations.Api; @@ -71,7 +72,7 @@ }) @ApiOperation("送检通知详情-送检列表展开") @GetMapping("/relationList") - public ReturnDTO> relationList(Long notifyId,String equipmentName) { + public ReturnDTO> relationList(Long notifyId, String equipmentName) { return ReturnUtil.success(relationService.listByNameAndNotify(equipmentName,notifyId)); } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java index 0090684..7f04e81 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java @@ -32,16 +32,14 @@ private final IRemindConfigService remindConfigService; @ApiOperation("编辑") - @RequestMapping("update") - @PostMapping + @PostMapping("update") public ReturnDTO update(@RequestBody RemindConfig remindConfig){ remindConfigService.updateById(remindConfig); return ReturnUtil.success(); } @ApiOperation("分页列表") - @RequestMapping("listPage") - @GetMapping + @GetMapping("listPage") public ReturnDTO> listPage(){ Page page = PageFactory.defaultPage(); page = remindConfigService.listScopePage(page); diff --git a/casic-metering-job/pom.xml b/casic-metering-job/pom.xml index 237e930..0a68bc1 100644 --- a/casic-metering-job/pom.xml +++ b/casic-metering-job/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -14,12 +14,12 @@ com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.github.oshi @@ -61,7 +61,7 @@ com.casic casic-metering-service - 2.0.0 + 1.0.0.0 compile diff --git a/casic-metering-model/pom.xml b/casic-metering-model/pom.xml index 31a2491..8ec8258 100644 --- a/casic-metering-model/pom.xml +++ b/casic-metering-model/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 diff --git a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java index 3974e29..0b7172c 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java @@ -26,6 +26,8 @@ String PLAN_CATEGORY = DICT_PREFIX + "PlanType"; String PLAN_EXECUTE_STATUS = DICT_PREFIX + "PlanExecuteStatus"; + + String PLAN_CHECK_COMPLETION = DICT_PREFIX + "PlanCheckCompletion"; //实施状态 String EFFECTIVE_STATUS = "effectiveStatus"; //文件类别 diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java index 7281705..3e4c232 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java @@ -26,18 +26,18 @@ @ApiModelProperty(value = "委托方id", dataType = "String") private String customerId; - @ApiModelProperty(value = "委托方编号", dataType = "String") - private String customerNo; - @ApiModelProperty(value = "委托方名称", dataType = "String") private String customerName; + /** + * 检定(校准)单位(固定值) + */ + @ApiModelProperty(value = "溯源单位(检定(校准)单位)", dataType = "String") + private String measureCompany; + @ApiModelProperty(value = "送检人", dataType = "String") private String deliverer; - @TableField(exist = false) - @ApiModelProperty(value = "样品数量", dataType = "String") - private Integer sampleCount; @ApiModelProperty(value = "接收状态(包括接收相关状态和检测完成状态)", dataType = "String") @DictCodeField(message = "接收状态不合法", cacheName = MeterDictCode.ORDER_STATUS) diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java index e0b4091..66809a7 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java @@ -16,6 +16,7 @@ import lombok.NoArgsConstructor; import lombok.Setter; +import static com.casic.missiles.constants.MeterDictCode.PLAN_CHECK_COMPLETION; import static com.casic.missiles.constants.MeterDictCode.PLAN_EXECUTE_STATUS; /** @@ -81,7 +82,12 @@ */ @ApiModelProperty("检定完成度") @TableField("check_completion") + @DictCodeField(cacheName = PLAN_CHECK_COMPLETION) private String checkCompletion; + + @ApiModelProperty("检定完成度名称") + @TableField(exist = false) + private String checkCompletionName; /** * 检定完成时间 */ diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java index ae10d36..c7d478c 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java @@ -8,6 +8,8 @@ import java.time.LocalDateTime; import java.util.Date; +import com.casic.missiles.annotation.DictCodeField; +import com.casic.missiles.constants.MeterDictCode; import io.swagger.annotations.ApiModelProperty; import lombok.Getter; import lombok.Setter; @@ -76,6 +78,43 @@ @TableField("plan_id") private Long planId; + @ApiModelProperty("计划分类") + @TableField(exist = false) + @DictCodeField(cacheName = MeterDictCode.PLAN_CATEGORY) + private String planCategory; + + @ApiModelProperty("计划分类名称") + @TableField(exist = false) + private String planCategoryName; + + /** + * 创建人id + */ + @ApiModelProperty("创建人id") + @TableField(exist = false) + private Long createUserId; + + /** + * 创建人姓名 + */ + @ApiModelProperty("创建人姓名") + @TableField(exist = false) + private String createUserName; + + /** + * 创建单位id + */ + @ApiModelProperty("创建单位id") + @TableField(exist = false) + private Long createDeptId; + + /** + * 创建单位名称 + */ + @ApiModelProperty("创建单位名称") + @TableField(exist = false) + private String createDeptName; + /** * 创建时间 */ diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java index f506553..7aa0b79 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java @@ -7,10 +7,16 @@ import java.time.LocalDateTime; import java.util.Date; +import com.casic.missiles.annotation.DictCodeField; import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; import lombok.Getter; +import lombok.NoArgsConstructor; import lombok.Setter; +import static com.casic.missiles.constants.MeterDictCode.PLAN_CHECK_COMPLETION; +import static com.casic.missiles.constants.MeterDictCode.PLAN_EXECUTE_STATUS; + /** *

* 受检设备-计量计划-送检通知关联表 @@ -21,6 +27,8 @@ */ @Getter @Setter +@NoArgsConstructor +@AllArgsConstructor @TableName("eqpt_plan_notify_relation") public class PlanNotifyRelation implements Serializable { @@ -128,7 +136,15 @@ */ @ApiModelProperty("执行状态") @TableField(exist = false) + @DictCodeField(cacheName = PLAN_EXECUTE_STATUS) private String executeStatus; + + /** + * 执行状态名称 + */ + @ApiModelProperty("执行状态名称") + @TableField(exist = false) + private String executeStatusName; /** * 执行时间 */ @@ -140,7 +156,12 @@ */ @ApiModelProperty("检定完成度") @TableField(exist = false) + @DictCodeField(cacheName = PLAN_CHECK_COMPLETION) private String checkCompletion; + + @ApiModelProperty("检定完成度名称") + @TableField(exist = false) + private String checkCompletionName; /** * 检定完成时间 */ @@ -148,6 +169,7 @@ @TableField(exist = false) private Date checkFinishTime; + public PlanNotifyRelation(Long notifyId, Long planRelationId) { this.notifyId = notifyId; this.planRelationId = planRelationId; diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/SampleStatueUpdate.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/SampleStatueUpdate.java index bdc2abe..b27b122 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/SampleStatueUpdate.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/SampleStatueUpdate.java @@ -19,6 +19,6 @@ @ApiModelProperty(value = "样品状态",required = true) private String sampleStatus; - @ApiModelProperty(value = "检定完成时间",required = true) + @ApiModelProperty(value = "检定完成时间",required = false) private Date finishTime; } diff --git a/casic-metering-service/pom.xml b/casic-metering-service/pom.xml index c146795..62c6519 100644 --- a/casic-metering-service/pom.xml +++ b/casic-metering-service/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -16,19 +16,19 @@ com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.casic casic-metering-common - 2.0.0 + 1.0.0.0 org.springframework.boot diff --git a/casic-metering-common/pom.xml b/casic-metering-common/pom.xml index 33f75c8..e431f85 100644 --- a/casic-metering-common/pom.xml +++ b/casic-metering-common/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -17,12 +17,12 @@ com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.github.oshi diff --git a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java index 0f37e03..250d886 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java @@ -12,6 +12,7 @@ import java.lang.reflect.Field; import java.lang.reflect.Method; import java.lang.reflect.Modifier; +import java.util.ArrayList; import java.util.Arrays; import java.util.List; @@ -26,8 +27,16 @@ * @return 全部相同返回true,有不相同的返回false */ public static boolean fieldCompare(Object beforeObj, Object afterObj, List fields) { - Field[] beforeFields = beforeObj.getClass().getDeclaredFields(); - Field[] afterFields = afterObj.getClass().getDeclaredFields(); + List beforeFieldList = Arrays.asList(beforeObj.getClass().getDeclaredFields()); + List superBeforeFileList = Arrays.asList(beforeObj.getClass().getSuperclass().getDeclaredFields()); + beforeFieldList.addAll(new ArrayList<>(superBeforeFileList)); + Field[] beforeFields = beforeFieldList.toArray(new Field[beforeFieldList.size()]); + + List afterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getDeclaredFields())); + List superAfterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getSuperclass().getDeclaredFields())); + afterFieldList.addAll(superAfterFieldList); + Field[] afterFields = afterFieldList.toArray(new Field[beforeFieldList.size()]); + Field.setAccessible(beforeFields, true); //设置私有属性可以访问到 Field.setAccessible(afterFields, true); //循环遍历比较属性 @@ -36,15 +45,19 @@ if (ObjectUtil.isNotEmpty(fields) && fields.contains(beforeFields[i].getName())) { try { Object beforeValue = beforeFields[i].get(beforeObj); //取出对应的属性值 - Object afterValue = afterFields[i].get(afterObj); + Object afterValue = null; + for (int j = 0; j < afterFields.length; j++) { + if(afterFields[j].getName().equals(beforeFields[i].getName())){ + afterValue = afterFields[j].get(afterObj); //取出对应的属性值 + break; + } + } if ((beforeValue != null && !"".equals(beforeValue) && !beforeValue.equals(afterValue)) || ((beforeValue == null || "".equals(beforeValue)) && afterValue != null)) { return false; } } catch (IllegalAccessException e) { log.error(e.getMessage()); } - - } } } diff --git a/casic-metering-dao/pom.xml b/casic-metering-dao/pom.xml index 64c6fbf..6cffff6 100644 --- a/casic-metering-dao/pom.xml +++ b/casic-metering-dao/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -16,7 +16,7 @@ com.casic casic-metering-model - 2.0.0 + 1.0.0.0 diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java index 548081b..f8ae80b 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java @@ -22,4 +22,9 @@ @Param("equipmentName") String equipmentName); PlanEquipmentStatus getPlanEquipmentStatus(@Param("equipmentId")Long equipmentId); + + + void inspectionStatusUpdate(@Param("executeStatus") String executeStatus, + @Param("inspectionId") Long inspectionId); + } diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml index a2c0944..e9d9f55 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml @@ -91,6 +91,7 @@ diff --git a/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml index bd0ad5f..ed9981e 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml @@ -19,7 +19,7 @@ id, inspection_id, equipment_id, inspection_time, plan_id, remarks, create_time, update_time - SELECT r.id AS id, r.inspection_id AS inspectionId, @@ -41,7 +41,7 @@ eqpt_inspection_equipment_relation r LEFT JOIN eqpt_equipment_info e ON e.id = r.equipment_id LEFT JOIN eqpt_plan p ON p.id = r.plan_id - AND r.inspection_id = #{inspectionId} + WHERE r.inspection_id = #{inspectionId} diff --git a/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml index 3aeb4a4..1c23860 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml @@ -67,4 +67,18 @@ LIMIT 1 + + update + eqpt_plan_equipment_relation r1, + eqpt_plan p, + eqpt_inspection_equipment_relation r2 + set r1.execute_status = #{executeStatus}, + r1.execute_time = r2.inspection_time + where r1.plan_id = p.id + and p.year = YEAR(NOW()) + and r1.execute_status = '0' + and r1.equipment_id = r2.equipment_id + and r2.inspection_id = #{inspectionId} + + diff --git a/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml index 93a8dc8..a2e8a11 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml @@ -29,7 +29,7 @@ n.notify_user as notifyUser, n.notify_dept as notifyDept, n.plan_id as planId, - p.plan_type as planType, + p.plan_category as planCategory, p.create_user_id as createUserId, p.create_user_name as createUserName, p.create_dept_id as createDeptId, diff --git a/casic-metering-eqpt-api/pom.xml b/casic-metering-eqpt-api/pom.xml index 456fdbf..99f40ca 100644 --- a/casic-metering-eqpt-api/pom.xml +++ b/casic-metering-eqpt-api/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -18,13 +18,13 @@ com.casic casic-metering-service - 2.0.0 + 1.0.0.0 com.casic casic-metering-job - 2.0.0 + 1.0.0.0 org.springframework.boot diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java index 268fb3a..06cb258 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java @@ -84,4 +84,13 @@ return businessOrderService.updateOrder(businessOrder); } + @ApiOperation("任务单取消") + @PostMapping("/cancel") + public ReturnDTO receiveOrder(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return businessOrderService.updateStatusById(idDTO.getId(), OrderStatusDictEnum.ALREADY_CANCEL); + } + } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java index 9456479..9717b78 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java @@ -16,6 +16,7 @@ import com.casic.missiles.dto.plan.PlanQueryForm; import com.casic.missiles.model.equipment.EquipmentInfoApproval; import com.casic.missiles.model.plan.Plan; +import com.casic.missiles.model.plan.PlanEquipmentRelation; import com.casic.missiles.service.ICommonApprovalService; import com.casic.missiles.service.plan.IPlanEquipmentRelationService; import com.casic.missiles.service.plan.IPlanService; @@ -76,7 +77,7 @@ }) @ApiOperation("计量计划详情-计划列表展开") @GetMapping("/relationList") - public ReturnDTO> relationList(Long planId,String equipmentName) { + public ReturnDTO> relationList(Long planId, String equipmentName) { return ReturnUtil.success(relationService.listByPlanAndName(planId,equipmentName)); } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java index 92e8e95..436fd8f 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java @@ -7,6 +7,7 @@ import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.equipment.EquipmentAggr; import com.casic.missiles.model.plan.PlanNotify; +import com.casic.missiles.model.plan.PlanNotifyRelation; import com.casic.missiles.service.plan.IPlanNotifyRelationService; import com.casic.missiles.service.plan.IPlanNotifyService; import io.swagger.annotations.Api; @@ -71,7 +72,7 @@ }) @ApiOperation("送检通知详情-送检列表展开") @GetMapping("/relationList") - public ReturnDTO> relationList(Long notifyId,String equipmentName) { + public ReturnDTO> relationList(Long notifyId, String equipmentName) { return ReturnUtil.success(relationService.listByNameAndNotify(equipmentName,notifyId)); } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java index 0090684..7f04e81 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java @@ -32,16 +32,14 @@ private final IRemindConfigService remindConfigService; @ApiOperation("编辑") - @RequestMapping("update") - @PostMapping + @PostMapping("update") public ReturnDTO update(@RequestBody RemindConfig remindConfig){ remindConfigService.updateById(remindConfig); return ReturnUtil.success(); } @ApiOperation("分页列表") - @RequestMapping("listPage") - @GetMapping + @GetMapping("listPage") public ReturnDTO> listPage(){ Page page = PageFactory.defaultPage(); page = remindConfigService.listScopePage(page); diff --git a/casic-metering-job/pom.xml b/casic-metering-job/pom.xml index 237e930..0a68bc1 100644 --- a/casic-metering-job/pom.xml +++ b/casic-metering-job/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -14,12 +14,12 @@ com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.github.oshi @@ -61,7 +61,7 @@ com.casic casic-metering-service - 2.0.0 + 1.0.0.0 compile diff --git a/casic-metering-model/pom.xml b/casic-metering-model/pom.xml index 31a2491..8ec8258 100644 --- a/casic-metering-model/pom.xml +++ b/casic-metering-model/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 diff --git a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java index 3974e29..0b7172c 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java @@ -26,6 +26,8 @@ String PLAN_CATEGORY = DICT_PREFIX + "PlanType"; String PLAN_EXECUTE_STATUS = DICT_PREFIX + "PlanExecuteStatus"; + + String PLAN_CHECK_COMPLETION = DICT_PREFIX + "PlanCheckCompletion"; //实施状态 String EFFECTIVE_STATUS = "effectiveStatus"; //文件类别 diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java index 7281705..3e4c232 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java @@ -26,18 +26,18 @@ @ApiModelProperty(value = "委托方id", dataType = "String") private String customerId; - @ApiModelProperty(value = "委托方编号", dataType = "String") - private String customerNo; - @ApiModelProperty(value = "委托方名称", dataType = "String") private String customerName; + /** + * 检定(校准)单位(固定值) + */ + @ApiModelProperty(value = "溯源单位(检定(校准)单位)", dataType = "String") + private String measureCompany; + @ApiModelProperty(value = "送检人", dataType = "String") private String deliverer; - @TableField(exist = false) - @ApiModelProperty(value = "样品数量", dataType = "String") - private Integer sampleCount; @ApiModelProperty(value = "接收状态(包括接收相关状态和检测完成状态)", dataType = "String") @DictCodeField(message = "接收状态不合法", cacheName = MeterDictCode.ORDER_STATUS) diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java index e0b4091..66809a7 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java @@ -16,6 +16,7 @@ import lombok.NoArgsConstructor; import lombok.Setter; +import static com.casic.missiles.constants.MeterDictCode.PLAN_CHECK_COMPLETION; import static com.casic.missiles.constants.MeterDictCode.PLAN_EXECUTE_STATUS; /** @@ -81,7 +82,12 @@ */ @ApiModelProperty("检定完成度") @TableField("check_completion") + @DictCodeField(cacheName = PLAN_CHECK_COMPLETION) private String checkCompletion; + + @ApiModelProperty("检定完成度名称") + @TableField(exist = false) + private String checkCompletionName; /** * 检定完成时间 */ diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java index ae10d36..c7d478c 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java @@ -8,6 +8,8 @@ import java.time.LocalDateTime; import java.util.Date; +import com.casic.missiles.annotation.DictCodeField; +import com.casic.missiles.constants.MeterDictCode; import io.swagger.annotations.ApiModelProperty; import lombok.Getter; import lombok.Setter; @@ -76,6 +78,43 @@ @TableField("plan_id") private Long planId; + @ApiModelProperty("计划分类") + @TableField(exist = false) + @DictCodeField(cacheName = MeterDictCode.PLAN_CATEGORY) + private String planCategory; + + @ApiModelProperty("计划分类名称") + @TableField(exist = false) + private String planCategoryName; + + /** + * 创建人id + */ + @ApiModelProperty("创建人id") + @TableField(exist = false) + private Long createUserId; + + /** + * 创建人姓名 + */ + @ApiModelProperty("创建人姓名") + @TableField(exist = false) + private String createUserName; + + /** + * 创建单位id + */ + @ApiModelProperty("创建单位id") + @TableField(exist = false) + private Long createDeptId; + + /** + * 创建单位名称 + */ + @ApiModelProperty("创建单位名称") + @TableField(exist = false) + private String createDeptName; + /** * 创建时间 */ diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java index f506553..7aa0b79 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java @@ -7,10 +7,16 @@ import java.time.LocalDateTime; import java.util.Date; +import com.casic.missiles.annotation.DictCodeField; import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; import lombok.Getter; +import lombok.NoArgsConstructor; import lombok.Setter; +import static com.casic.missiles.constants.MeterDictCode.PLAN_CHECK_COMPLETION; +import static com.casic.missiles.constants.MeterDictCode.PLAN_EXECUTE_STATUS; + /** *

* 受检设备-计量计划-送检通知关联表 @@ -21,6 +27,8 @@ */ @Getter @Setter +@NoArgsConstructor +@AllArgsConstructor @TableName("eqpt_plan_notify_relation") public class PlanNotifyRelation implements Serializable { @@ -128,7 +136,15 @@ */ @ApiModelProperty("执行状态") @TableField(exist = false) + @DictCodeField(cacheName = PLAN_EXECUTE_STATUS) private String executeStatus; + + /** + * 执行状态名称 + */ + @ApiModelProperty("执行状态名称") + @TableField(exist = false) + private String executeStatusName; /** * 执行时间 */ @@ -140,7 +156,12 @@ */ @ApiModelProperty("检定完成度") @TableField(exist = false) + @DictCodeField(cacheName = PLAN_CHECK_COMPLETION) private String checkCompletion; + + @ApiModelProperty("检定完成度名称") + @TableField(exist = false) + private String checkCompletionName; /** * 检定完成时间 */ @@ -148,6 +169,7 @@ @TableField(exist = false) private Date checkFinishTime; + public PlanNotifyRelation(Long notifyId, Long planRelationId) { this.notifyId = notifyId; this.planRelationId = planRelationId; diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/SampleStatueUpdate.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/SampleStatueUpdate.java index bdc2abe..b27b122 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/SampleStatueUpdate.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/SampleStatueUpdate.java @@ -19,6 +19,6 @@ @ApiModelProperty(value = "样品状态",required = true) private String sampleStatus; - @ApiModelProperty(value = "检定完成时间",required = true) + @ApiModelProperty(value = "检定完成时间",required = false) private Date finishTime; } diff --git a/casic-metering-service/pom.xml b/casic-metering-service/pom.xml index c146795..62c6519 100644 --- a/casic-metering-service/pom.xml +++ b/casic-metering-service/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -16,19 +16,19 @@ com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.casic casic-metering-common - 2.0.0 + 1.0.0.0 org.springframework.boot diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBizBusinessOrderInfoService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBizBusinessOrderInfoService.java index 5f93b15..f7010f6 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBizBusinessOrderInfoService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBizBusinessOrderInfoService.java @@ -28,5 +28,5 @@ ReturnDTO updateStatusById(Long id, String alreadyReceived); - ReturnDTO backOrder(OrderBackRequest orderBackRequest, String alreadyBack); + } diff --git a/casic-metering-common/pom.xml b/casic-metering-common/pom.xml index 33f75c8..e431f85 100644 --- a/casic-metering-common/pom.xml +++ b/casic-metering-common/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -17,12 +17,12 @@ com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.github.oshi diff --git a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java index 0f37e03..250d886 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java @@ -12,6 +12,7 @@ import java.lang.reflect.Field; import java.lang.reflect.Method; import java.lang.reflect.Modifier; +import java.util.ArrayList; import java.util.Arrays; import java.util.List; @@ -26,8 +27,16 @@ * @return 全部相同返回true,有不相同的返回false */ public static boolean fieldCompare(Object beforeObj, Object afterObj, List fields) { - Field[] beforeFields = beforeObj.getClass().getDeclaredFields(); - Field[] afterFields = afterObj.getClass().getDeclaredFields(); + List beforeFieldList = Arrays.asList(beforeObj.getClass().getDeclaredFields()); + List superBeforeFileList = Arrays.asList(beforeObj.getClass().getSuperclass().getDeclaredFields()); + beforeFieldList.addAll(new ArrayList<>(superBeforeFileList)); + Field[] beforeFields = beforeFieldList.toArray(new Field[beforeFieldList.size()]); + + List afterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getDeclaredFields())); + List superAfterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getSuperclass().getDeclaredFields())); + afterFieldList.addAll(superAfterFieldList); + Field[] afterFields = afterFieldList.toArray(new Field[beforeFieldList.size()]); + Field.setAccessible(beforeFields, true); //设置私有属性可以访问到 Field.setAccessible(afterFields, true); //循环遍历比较属性 @@ -36,15 +45,19 @@ if (ObjectUtil.isNotEmpty(fields) && fields.contains(beforeFields[i].getName())) { try { Object beforeValue = beforeFields[i].get(beforeObj); //取出对应的属性值 - Object afterValue = afterFields[i].get(afterObj); + Object afterValue = null; + for (int j = 0; j < afterFields.length; j++) { + if(afterFields[j].getName().equals(beforeFields[i].getName())){ + afterValue = afterFields[j].get(afterObj); //取出对应的属性值 + break; + } + } if ((beforeValue != null && !"".equals(beforeValue) && !beforeValue.equals(afterValue)) || ((beforeValue == null || "".equals(beforeValue)) && afterValue != null)) { return false; } } catch (IllegalAccessException e) { log.error(e.getMessage()); } - - } } } diff --git a/casic-metering-dao/pom.xml b/casic-metering-dao/pom.xml index 64c6fbf..6cffff6 100644 --- a/casic-metering-dao/pom.xml +++ b/casic-metering-dao/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -16,7 +16,7 @@ com.casic casic-metering-model - 2.0.0 + 1.0.0.0 diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java index 548081b..f8ae80b 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java @@ -22,4 +22,9 @@ @Param("equipmentName") String equipmentName); PlanEquipmentStatus getPlanEquipmentStatus(@Param("equipmentId")Long equipmentId); + + + void inspectionStatusUpdate(@Param("executeStatus") String executeStatus, + @Param("inspectionId") Long inspectionId); + } diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml index a2c0944..e9d9f55 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml @@ -91,6 +91,7 @@ diff --git a/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml index bd0ad5f..ed9981e 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml @@ -19,7 +19,7 @@ id, inspection_id, equipment_id, inspection_time, plan_id, remarks, create_time, update_time - SELECT r.id AS id, r.inspection_id AS inspectionId, @@ -41,7 +41,7 @@ eqpt_inspection_equipment_relation r LEFT JOIN eqpt_equipment_info e ON e.id = r.equipment_id LEFT JOIN eqpt_plan p ON p.id = r.plan_id - AND r.inspection_id = #{inspectionId} + WHERE r.inspection_id = #{inspectionId} diff --git a/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml index 3aeb4a4..1c23860 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml @@ -67,4 +67,18 @@ LIMIT 1 + + update + eqpt_plan_equipment_relation r1, + eqpt_plan p, + eqpt_inspection_equipment_relation r2 + set r1.execute_status = #{executeStatus}, + r1.execute_time = r2.inspection_time + where r1.plan_id = p.id + and p.year = YEAR(NOW()) + and r1.execute_status = '0' + and r1.equipment_id = r2.equipment_id + and r2.inspection_id = #{inspectionId} + + diff --git a/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml index 93a8dc8..a2e8a11 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml @@ -29,7 +29,7 @@ n.notify_user as notifyUser, n.notify_dept as notifyDept, n.plan_id as planId, - p.plan_type as planType, + p.plan_category as planCategory, p.create_user_id as createUserId, p.create_user_name as createUserName, p.create_dept_id as createDeptId, diff --git a/casic-metering-eqpt-api/pom.xml b/casic-metering-eqpt-api/pom.xml index 456fdbf..99f40ca 100644 --- a/casic-metering-eqpt-api/pom.xml +++ b/casic-metering-eqpt-api/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -18,13 +18,13 @@ com.casic casic-metering-service - 2.0.0 + 1.0.0.0 com.casic casic-metering-job - 2.0.0 + 1.0.0.0 org.springframework.boot diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java index 268fb3a..06cb258 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java @@ -84,4 +84,13 @@ return businessOrderService.updateOrder(businessOrder); } + @ApiOperation("任务单取消") + @PostMapping("/cancel") + public ReturnDTO receiveOrder(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return businessOrderService.updateStatusById(idDTO.getId(), OrderStatusDictEnum.ALREADY_CANCEL); + } + } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java index 9456479..9717b78 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java @@ -16,6 +16,7 @@ import com.casic.missiles.dto.plan.PlanQueryForm; import com.casic.missiles.model.equipment.EquipmentInfoApproval; import com.casic.missiles.model.plan.Plan; +import com.casic.missiles.model.plan.PlanEquipmentRelation; import com.casic.missiles.service.ICommonApprovalService; import com.casic.missiles.service.plan.IPlanEquipmentRelationService; import com.casic.missiles.service.plan.IPlanService; @@ -76,7 +77,7 @@ }) @ApiOperation("计量计划详情-计划列表展开") @GetMapping("/relationList") - public ReturnDTO> relationList(Long planId,String equipmentName) { + public ReturnDTO> relationList(Long planId, String equipmentName) { return ReturnUtil.success(relationService.listByPlanAndName(planId,equipmentName)); } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java index 92e8e95..436fd8f 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java @@ -7,6 +7,7 @@ import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.equipment.EquipmentAggr; import com.casic.missiles.model.plan.PlanNotify; +import com.casic.missiles.model.plan.PlanNotifyRelation; import com.casic.missiles.service.plan.IPlanNotifyRelationService; import com.casic.missiles.service.plan.IPlanNotifyService; import io.swagger.annotations.Api; @@ -71,7 +72,7 @@ }) @ApiOperation("送检通知详情-送检列表展开") @GetMapping("/relationList") - public ReturnDTO> relationList(Long notifyId,String equipmentName) { + public ReturnDTO> relationList(Long notifyId, String equipmentName) { return ReturnUtil.success(relationService.listByNameAndNotify(equipmentName,notifyId)); } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java index 0090684..7f04e81 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java @@ -32,16 +32,14 @@ private final IRemindConfigService remindConfigService; @ApiOperation("编辑") - @RequestMapping("update") - @PostMapping + @PostMapping("update") public ReturnDTO update(@RequestBody RemindConfig remindConfig){ remindConfigService.updateById(remindConfig); return ReturnUtil.success(); } @ApiOperation("分页列表") - @RequestMapping("listPage") - @GetMapping + @GetMapping("listPage") public ReturnDTO> listPage(){ Page page = PageFactory.defaultPage(); page = remindConfigService.listScopePage(page); diff --git a/casic-metering-job/pom.xml b/casic-metering-job/pom.xml index 237e930..0a68bc1 100644 --- a/casic-metering-job/pom.xml +++ b/casic-metering-job/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -14,12 +14,12 @@ com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.github.oshi @@ -61,7 +61,7 @@ com.casic casic-metering-service - 2.0.0 + 1.0.0.0 compile diff --git a/casic-metering-model/pom.xml b/casic-metering-model/pom.xml index 31a2491..8ec8258 100644 --- a/casic-metering-model/pom.xml +++ b/casic-metering-model/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 diff --git a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java index 3974e29..0b7172c 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java @@ -26,6 +26,8 @@ String PLAN_CATEGORY = DICT_PREFIX + "PlanType"; String PLAN_EXECUTE_STATUS = DICT_PREFIX + "PlanExecuteStatus"; + + String PLAN_CHECK_COMPLETION = DICT_PREFIX + "PlanCheckCompletion"; //实施状态 String EFFECTIVE_STATUS = "effectiveStatus"; //文件类别 diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java index 7281705..3e4c232 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java @@ -26,18 +26,18 @@ @ApiModelProperty(value = "委托方id", dataType = "String") private String customerId; - @ApiModelProperty(value = "委托方编号", dataType = "String") - private String customerNo; - @ApiModelProperty(value = "委托方名称", dataType = "String") private String customerName; + /** + * 检定(校准)单位(固定值) + */ + @ApiModelProperty(value = "溯源单位(检定(校准)单位)", dataType = "String") + private String measureCompany; + @ApiModelProperty(value = "送检人", dataType = "String") private String deliverer; - @TableField(exist = false) - @ApiModelProperty(value = "样品数量", dataType = "String") - private Integer sampleCount; @ApiModelProperty(value = "接收状态(包括接收相关状态和检测完成状态)", dataType = "String") @DictCodeField(message = "接收状态不合法", cacheName = MeterDictCode.ORDER_STATUS) diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java index e0b4091..66809a7 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java @@ -16,6 +16,7 @@ import lombok.NoArgsConstructor; import lombok.Setter; +import static com.casic.missiles.constants.MeterDictCode.PLAN_CHECK_COMPLETION; import static com.casic.missiles.constants.MeterDictCode.PLAN_EXECUTE_STATUS; /** @@ -81,7 +82,12 @@ */ @ApiModelProperty("检定完成度") @TableField("check_completion") + @DictCodeField(cacheName = PLAN_CHECK_COMPLETION) private String checkCompletion; + + @ApiModelProperty("检定完成度名称") + @TableField(exist = false) + private String checkCompletionName; /** * 检定完成时间 */ diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java index ae10d36..c7d478c 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java @@ -8,6 +8,8 @@ import java.time.LocalDateTime; import java.util.Date; +import com.casic.missiles.annotation.DictCodeField; +import com.casic.missiles.constants.MeterDictCode; import io.swagger.annotations.ApiModelProperty; import lombok.Getter; import lombok.Setter; @@ -76,6 +78,43 @@ @TableField("plan_id") private Long planId; + @ApiModelProperty("计划分类") + @TableField(exist = false) + @DictCodeField(cacheName = MeterDictCode.PLAN_CATEGORY) + private String planCategory; + + @ApiModelProperty("计划分类名称") + @TableField(exist = false) + private String planCategoryName; + + /** + * 创建人id + */ + @ApiModelProperty("创建人id") + @TableField(exist = false) + private Long createUserId; + + /** + * 创建人姓名 + */ + @ApiModelProperty("创建人姓名") + @TableField(exist = false) + private String createUserName; + + /** + * 创建单位id + */ + @ApiModelProperty("创建单位id") + @TableField(exist = false) + private Long createDeptId; + + /** + * 创建单位名称 + */ + @ApiModelProperty("创建单位名称") + @TableField(exist = false) + private String createDeptName; + /** * 创建时间 */ diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java index f506553..7aa0b79 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java @@ -7,10 +7,16 @@ import java.time.LocalDateTime; import java.util.Date; +import com.casic.missiles.annotation.DictCodeField; import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; import lombok.Getter; +import lombok.NoArgsConstructor; import lombok.Setter; +import static com.casic.missiles.constants.MeterDictCode.PLAN_CHECK_COMPLETION; +import static com.casic.missiles.constants.MeterDictCode.PLAN_EXECUTE_STATUS; + /** *

* 受检设备-计量计划-送检通知关联表 @@ -21,6 +27,8 @@ */ @Getter @Setter +@NoArgsConstructor +@AllArgsConstructor @TableName("eqpt_plan_notify_relation") public class PlanNotifyRelation implements Serializable { @@ -128,7 +136,15 @@ */ @ApiModelProperty("执行状态") @TableField(exist = false) + @DictCodeField(cacheName = PLAN_EXECUTE_STATUS) private String executeStatus; + + /** + * 执行状态名称 + */ + @ApiModelProperty("执行状态名称") + @TableField(exist = false) + private String executeStatusName; /** * 执行时间 */ @@ -140,7 +156,12 @@ */ @ApiModelProperty("检定完成度") @TableField(exist = false) + @DictCodeField(cacheName = PLAN_CHECK_COMPLETION) private String checkCompletion; + + @ApiModelProperty("检定完成度名称") + @TableField(exist = false) + private String checkCompletionName; /** * 检定完成时间 */ @@ -148,6 +169,7 @@ @TableField(exist = false) private Date checkFinishTime; + public PlanNotifyRelation(Long notifyId, Long planRelationId) { this.notifyId = notifyId; this.planRelationId = planRelationId; diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/SampleStatueUpdate.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/SampleStatueUpdate.java index bdc2abe..b27b122 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/SampleStatueUpdate.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/SampleStatueUpdate.java @@ -19,6 +19,6 @@ @ApiModelProperty(value = "样品状态",required = true) private String sampleStatus; - @ApiModelProperty(value = "检定完成时间",required = true) + @ApiModelProperty(value = "检定完成时间",required = false) private Date finishTime; } diff --git a/casic-metering-service/pom.xml b/casic-metering-service/pom.xml index c146795..62c6519 100644 --- a/casic-metering-service/pom.xml +++ b/casic-metering-service/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -16,19 +16,19 @@ com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.casic casic-metering-common - 2.0.0 + 1.0.0.0 org.springframework.boot diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBizBusinessOrderInfoService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBizBusinessOrderInfoService.java index 5f93b15..f7010f6 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBizBusinessOrderInfoService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBizBusinessOrderInfoService.java @@ -28,5 +28,5 @@ ReturnDTO updateStatusById(Long id, String alreadyReceived); - ReturnDTO backOrder(OrderBackRequest orderBackRequest, String alreadyBack); + } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java index aa53fed..c2f939d 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java @@ -26,6 +26,8 @@ EquipmentInfoForm detail(Long equipmentId); + List allCertificate(Long equipmentId,String equipmentType); + boolean updateEquipmentStatus(Long equipmentId,String usageStatus); boolean updateCertificateValid(Long equipmentId, Date certificateValid); diff --git a/casic-metering-common/pom.xml b/casic-metering-common/pom.xml index 33f75c8..e431f85 100644 --- a/casic-metering-common/pom.xml +++ b/casic-metering-common/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -17,12 +17,12 @@ com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.github.oshi diff --git a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java index 0f37e03..250d886 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java @@ -12,6 +12,7 @@ import java.lang.reflect.Field; import java.lang.reflect.Method; import java.lang.reflect.Modifier; +import java.util.ArrayList; import java.util.Arrays; import java.util.List; @@ -26,8 +27,16 @@ * @return 全部相同返回true,有不相同的返回false */ public static boolean fieldCompare(Object beforeObj, Object afterObj, List fields) { - Field[] beforeFields = beforeObj.getClass().getDeclaredFields(); - Field[] afterFields = afterObj.getClass().getDeclaredFields(); + List beforeFieldList = Arrays.asList(beforeObj.getClass().getDeclaredFields()); + List superBeforeFileList = Arrays.asList(beforeObj.getClass().getSuperclass().getDeclaredFields()); + beforeFieldList.addAll(new ArrayList<>(superBeforeFileList)); + Field[] beforeFields = beforeFieldList.toArray(new Field[beforeFieldList.size()]); + + List afterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getDeclaredFields())); + List superAfterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getSuperclass().getDeclaredFields())); + afterFieldList.addAll(superAfterFieldList); + Field[] afterFields = afterFieldList.toArray(new Field[beforeFieldList.size()]); + Field.setAccessible(beforeFields, true); //设置私有属性可以访问到 Field.setAccessible(afterFields, true); //循环遍历比较属性 @@ -36,15 +45,19 @@ if (ObjectUtil.isNotEmpty(fields) && fields.contains(beforeFields[i].getName())) { try { Object beforeValue = beforeFields[i].get(beforeObj); //取出对应的属性值 - Object afterValue = afterFields[i].get(afterObj); + Object afterValue = null; + for (int j = 0; j < afterFields.length; j++) { + if(afterFields[j].getName().equals(beforeFields[i].getName())){ + afterValue = afterFields[j].get(afterObj); //取出对应的属性值 + break; + } + } if ((beforeValue != null && !"".equals(beforeValue) && !beforeValue.equals(afterValue)) || ((beforeValue == null || "".equals(beforeValue)) && afterValue != null)) { return false; } } catch (IllegalAccessException e) { log.error(e.getMessage()); } - - } } } diff --git a/casic-metering-dao/pom.xml b/casic-metering-dao/pom.xml index 64c6fbf..6cffff6 100644 --- a/casic-metering-dao/pom.xml +++ b/casic-metering-dao/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -16,7 +16,7 @@ com.casic casic-metering-model - 2.0.0 + 1.0.0.0 diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java index 548081b..f8ae80b 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java @@ -22,4 +22,9 @@ @Param("equipmentName") String equipmentName); PlanEquipmentStatus getPlanEquipmentStatus(@Param("equipmentId")Long equipmentId); + + + void inspectionStatusUpdate(@Param("executeStatus") String executeStatus, + @Param("inspectionId") Long inspectionId); + } diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml index a2c0944..e9d9f55 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml @@ -91,6 +91,7 @@ diff --git a/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml index bd0ad5f..ed9981e 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml @@ -19,7 +19,7 @@ id, inspection_id, equipment_id, inspection_time, plan_id, remarks, create_time, update_time - SELECT r.id AS id, r.inspection_id AS inspectionId, @@ -41,7 +41,7 @@ eqpt_inspection_equipment_relation r LEFT JOIN eqpt_equipment_info e ON e.id = r.equipment_id LEFT JOIN eqpt_plan p ON p.id = r.plan_id - AND r.inspection_id = #{inspectionId} + WHERE r.inspection_id = #{inspectionId} diff --git a/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml index 3aeb4a4..1c23860 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml @@ -67,4 +67,18 @@ LIMIT 1 + + update + eqpt_plan_equipment_relation r1, + eqpt_plan p, + eqpt_inspection_equipment_relation r2 + set r1.execute_status = #{executeStatus}, + r1.execute_time = r2.inspection_time + where r1.plan_id = p.id + and p.year = YEAR(NOW()) + and r1.execute_status = '0' + and r1.equipment_id = r2.equipment_id + and r2.inspection_id = #{inspectionId} + + diff --git a/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml index 93a8dc8..a2e8a11 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml @@ -29,7 +29,7 @@ n.notify_user as notifyUser, n.notify_dept as notifyDept, n.plan_id as planId, - p.plan_type as planType, + p.plan_category as planCategory, p.create_user_id as createUserId, p.create_user_name as createUserName, p.create_dept_id as createDeptId, diff --git a/casic-metering-eqpt-api/pom.xml b/casic-metering-eqpt-api/pom.xml index 456fdbf..99f40ca 100644 --- a/casic-metering-eqpt-api/pom.xml +++ b/casic-metering-eqpt-api/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -18,13 +18,13 @@ com.casic casic-metering-service - 2.0.0 + 1.0.0.0 com.casic casic-metering-job - 2.0.0 + 1.0.0.0 org.springframework.boot diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java index 268fb3a..06cb258 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java @@ -84,4 +84,13 @@ return businessOrderService.updateOrder(businessOrder); } + @ApiOperation("任务单取消") + @PostMapping("/cancel") + public ReturnDTO receiveOrder(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return businessOrderService.updateStatusById(idDTO.getId(), OrderStatusDictEnum.ALREADY_CANCEL); + } + } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java index 9456479..9717b78 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java @@ -16,6 +16,7 @@ import com.casic.missiles.dto.plan.PlanQueryForm; import com.casic.missiles.model.equipment.EquipmentInfoApproval; import com.casic.missiles.model.plan.Plan; +import com.casic.missiles.model.plan.PlanEquipmentRelation; import com.casic.missiles.service.ICommonApprovalService; import com.casic.missiles.service.plan.IPlanEquipmentRelationService; import com.casic.missiles.service.plan.IPlanService; @@ -76,7 +77,7 @@ }) @ApiOperation("计量计划详情-计划列表展开") @GetMapping("/relationList") - public ReturnDTO> relationList(Long planId,String equipmentName) { + public ReturnDTO> relationList(Long planId, String equipmentName) { return ReturnUtil.success(relationService.listByPlanAndName(planId,equipmentName)); } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java index 92e8e95..436fd8f 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java @@ -7,6 +7,7 @@ import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.equipment.EquipmentAggr; import com.casic.missiles.model.plan.PlanNotify; +import com.casic.missiles.model.plan.PlanNotifyRelation; import com.casic.missiles.service.plan.IPlanNotifyRelationService; import com.casic.missiles.service.plan.IPlanNotifyService; import io.swagger.annotations.Api; @@ -71,7 +72,7 @@ }) @ApiOperation("送检通知详情-送检列表展开") @GetMapping("/relationList") - public ReturnDTO> relationList(Long notifyId,String equipmentName) { + public ReturnDTO> relationList(Long notifyId, String equipmentName) { return ReturnUtil.success(relationService.listByNameAndNotify(equipmentName,notifyId)); } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java index 0090684..7f04e81 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java @@ -32,16 +32,14 @@ private final IRemindConfigService remindConfigService; @ApiOperation("编辑") - @RequestMapping("update") - @PostMapping + @PostMapping("update") public ReturnDTO update(@RequestBody RemindConfig remindConfig){ remindConfigService.updateById(remindConfig); return ReturnUtil.success(); } @ApiOperation("分页列表") - @RequestMapping("listPage") - @GetMapping + @GetMapping("listPage") public ReturnDTO> listPage(){ Page page = PageFactory.defaultPage(); page = remindConfigService.listScopePage(page); diff --git a/casic-metering-job/pom.xml b/casic-metering-job/pom.xml index 237e930..0a68bc1 100644 --- a/casic-metering-job/pom.xml +++ b/casic-metering-job/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -14,12 +14,12 @@ com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.github.oshi @@ -61,7 +61,7 @@ com.casic casic-metering-service - 2.0.0 + 1.0.0.0 compile diff --git a/casic-metering-model/pom.xml b/casic-metering-model/pom.xml index 31a2491..8ec8258 100644 --- a/casic-metering-model/pom.xml +++ b/casic-metering-model/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 diff --git a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java index 3974e29..0b7172c 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java @@ -26,6 +26,8 @@ String PLAN_CATEGORY = DICT_PREFIX + "PlanType"; String PLAN_EXECUTE_STATUS = DICT_PREFIX + "PlanExecuteStatus"; + + String PLAN_CHECK_COMPLETION = DICT_PREFIX + "PlanCheckCompletion"; //实施状态 String EFFECTIVE_STATUS = "effectiveStatus"; //文件类别 diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java index 7281705..3e4c232 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java @@ -26,18 +26,18 @@ @ApiModelProperty(value = "委托方id", dataType = "String") private String customerId; - @ApiModelProperty(value = "委托方编号", dataType = "String") - private String customerNo; - @ApiModelProperty(value = "委托方名称", dataType = "String") private String customerName; + /** + * 检定(校准)单位(固定值) + */ + @ApiModelProperty(value = "溯源单位(检定(校准)单位)", dataType = "String") + private String measureCompany; + @ApiModelProperty(value = "送检人", dataType = "String") private String deliverer; - @TableField(exist = false) - @ApiModelProperty(value = "样品数量", dataType = "String") - private Integer sampleCount; @ApiModelProperty(value = "接收状态(包括接收相关状态和检测完成状态)", dataType = "String") @DictCodeField(message = "接收状态不合法", cacheName = MeterDictCode.ORDER_STATUS) diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java index e0b4091..66809a7 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java @@ -16,6 +16,7 @@ import lombok.NoArgsConstructor; import lombok.Setter; +import static com.casic.missiles.constants.MeterDictCode.PLAN_CHECK_COMPLETION; import static com.casic.missiles.constants.MeterDictCode.PLAN_EXECUTE_STATUS; /** @@ -81,7 +82,12 @@ */ @ApiModelProperty("检定完成度") @TableField("check_completion") + @DictCodeField(cacheName = PLAN_CHECK_COMPLETION) private String checkCompletion; + + @ApiModelProperty("检定完成度名称") + @TableField(exist = false) + private String checkCompletionName; /** * 检定完成时间 */ diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java index ae10d36..c7d478c 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java @@ -8,6 +8,8 @@ import java.time.LocalDateTime; import java.util.Date; +import com.casic.missiles.annotation.DictCodeField; +import com.casic.missiles.constants.MeterDictCode; import io.swagger.annotations.ApiModelProperty; import lombok.Getter; import lombok.Setter; @@ -76,6 +78,43 @@ @TableField("plan_id") private Long planId; + @ApiModelProperty("计划分类") + @TableField(exist = false) + @DictCodeField(cacheName = MeterDictCode.PLAN_CATEGORY) + private String planCategory; + + @ApiModelProperty("计划分类名称") + @TableField(exist = false) + private String planCategoryName; + + /** + * 创建人id + */ + @ApiModelProperty("创建人id") + @TableField(exist = false) + private Long createUserId; + + /** + * 创建人姓名 + */ + @ApiModelProperty("创建人姓名") + @TableField(exist = false) + private String createUserName; + + /** + * 创建单位id + */ + @ApiModelProperty("创建单位id") + @TableField(exist = false) + private Long createDeptId; + + /** + * 创建单位名称 + */ + @ApiModelProperty("创建单位名称") + @TableField(exist = false) + private String createDeptName; + /** * 创建时间 */ diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java index f506553..7aa0b79 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java @@ -7,10 +7,16 @@ import java.time.LocalDateTime; import java.util.Date; +import com.casic.missiles.annotation.DictCodeField; import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; import lombok.Getter; +import lombok.NoArgsConstructor; import lombok.Setter; +import static com.casic.missiles.constants.MeterDictCode.PLAN_CHECK_COMPLETION; +import static com.casic.missiles.constants.MeterDictCode.PLAN_EXECUTE_STATUS; + /** *

* 受检设备-计量计划-送检通知关联表 @@ -21,6 +27,8 @@ */ @Getter @Setter +@NoArgsConstructor +@AllArgsConstructor @TableName("eqpt_plan_notify_relation") public class PlanNotifyRelation implements Serializable { @@ -128,7 +136,15 @@ */ @ApiModelProperty("执行状态") @TableField(exist = false) + @DictCodeField(cacheName = PLAN_EXECUTE_STATUS) private String executeStatus; + + /** + * 执行状态名称 + */ + @ApiModelProperty("执行状态名称") + @TableField(exist = false) + private String executeStatusName; /** * 执行时间 */ @@ -140,7 +156,12 @@ */ @ApiModelProperty("检定完成度") @TableField(exist = false) + @DictCodeField(cacheName = PLAN_CHECK_COMPLETION) private String checkCompletion; + + @ApiModelProperty("检定完成度名称") + @TableField(exist = false) + private String checkCompletionName; /** * 检定完成时间 */ @@ -148,6 +169,7 @@ @TableField(exist = false) private Date checkFinishTime; + public PlanNotifyRelation(Long notifyId, Long planRelationId) { this.notifyId = notifyId; this.planRelationId = planRelationId; diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/SampleStatueUpdate.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/SampleStatueUpdate.java index bdc2abe..b27b122 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/SampleStatueUpdate.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/SampleStatueUpdate.java @@ -19,6 +19,6 @@ @ApiModelProperty(value = "样品状态",required = true) private String sampleStatus; - @ApiModelProperty(value = "检定完成时间",required = true) + @ApiModelProperty(value = "检定完成时间",required = false) private Date finishTime; } diff --git a/casic-metering-service/pom.xml b/casic-metering-service/pom.xml index c146795..62c6519 100644 --- a/casic-metering-service/pom.xml +++ b/casic-metering-service/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -16,19 +16,19 @@ com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.casic casic-metering-common - 2.0.0 + 1.0.0.0 org.springframework.boot diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBizBusinessOrderInfoService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBizBusinessOrderInfoService.java index 5f93b15..f7010f6 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBizBusinessOrderInfoService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBizBusinessOrderInfoService.java @@ -28,5 +28,5 @@ ReturnDTO updateStatusById(Long id, String alreadyReceived); - ReturnDTO backOrder(OrderBackRequest orderBackRequest, String alreadyBack); + } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java index aa53fed..c2f939d 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java @@ -26,6 +26,8 @@ EquipmentInfoForm detail(Long equipmentId); + List allCertificate(Long equipmentId,String equipmentType); + boolean updateEquipmentStatus(Long equipmentId,String usageStatus); boolean updateCertificateValid(Long equipmentId, Date certificateValid); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/business/BizBusinessOrderInfoServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/business/BizBusinessOrderInfoServiceImpl.java index 79c720d..31bd60c 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/business/BizBusinessOrderInfoServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/business/BizBusinessOrderInfoServiceImpl.java @@ -1,8 +1,10 @@ package com.casic.missiles.service.impl.business; +import cn.hutool.core.collection.CollUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.business.OrderBackRequest; @@ -44,18 +46,18 @@ private final BusinessOrderListResponseMapper orderListResponseMapper; private final IBizBusinessOrderSampleRelationService sampleRelationService; private final BizBusinessOrderSampleRelationMapper sampleRelationMapper; + private final AbstractPermissionContext permissionContext; @Override public Page orderListPage(Page page, OrderListRequest request) throws Exception { QueryWrapper wrapper = listParamWrapperBuilder(request); + + // 查找本单位提交的 + Long deptId = permissionContext.getAuthService().getLoginUser().getDeptId(); + List parentDeptIds = permissionContext.getDeptService().getParentListById(deptId); + wrapper.and(i->i.eq("customer_id",deptId).or(CollUtil.isNotEmpty(parentDeptIds)).in("customer_id",parentDeptIds)); + Page resultPage = orderListResponseMapper.selectPage(page, wrapper); - List orderSampleList = sampleRelationMapper.selectList(null); - Map> orderSampleMap = orderSampleList.stream().collect( - Collectors.groupingBy(BizBusinessOrderSampleRelation::getOrderId) - ); - resultPage.getRecords().forEach( - orderSample -> orderSample.setSampleCount(orderSampleMap.containsKey(orderSample.getId()) ? orderSampleMap.get(orderSample.getId()).size() : 0) - ); for (OrderListResponse customerAdviceInfo : resultPage.getRecords()) { DictCodeUtils.convertDictCodeToName(customerAdviceInfo); } @@ -118,24 +120,13 @@ throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } - @Override - public ReturnDTO backOrder(OrderBackRequest orderBackRequest, String alreadyBack) { - BizBusinessOrderInfo businessOrder = new BizBusinessOrderInfo(); - businessOrder.setId(orderBackRequest.getId()); - businessOrder.setReceiveIllustrate(orderBackRequest.getBackReason()); - businessOrder.setReceiveStatus(alreadyBack); - if(this.baseMapper.updateById(businessOrder) > 0){ - return ReturnUtil.success(); - } - throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); - } private void initOrderInfo(BizBusinessOrderInfo businessOrder) { Long maxNo = this.baseMapper.selectMaxOrderNo(); String orderNo = NumberGeneratorUtil.getContactNo(PrefixCodeEnum.ORDER_PREFIX, maxNo); businessOrder.setCreateUserId(businessOrder.getUserId()); businessOrder.setCreateUserName(businessOrder.getUserName()); - businessOrder.setReceiveStatus(OrderStatusDictEnum.ALREADY_RECEIVED); + businessOrder.setReceiveStatus(OrderStatusDictEnum.NOT_RECEIVED); businessOrder.setOrderNo(orderNo); } diff --git a/casic-metering-common/pom.xml b/casic-metering-common/pom.xml index 33f75c8..e431f85 100644 --- a/casic-metering-common/pom.xml +++ b/casic-metering-common/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -17,12 +17,12 @@ com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.github.oshi diff --git a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java index 0f37e03..250d886 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java @@ -12,6 +12,7 @@ import java.lang.reflect.Field; import java.lang.reflect.Method; import java.lang.reflect.Modifier; +import java.util.ArrayList; import java.util.Arrays; import java.util.List; @@ -26,8 +27,16 @@ * @return 全部相同返回true,有不相同的返回false */ public static boolean fieldCompare(Object beforeObj, Object afterObj, List fields) { - Field[] beforeFields = beforeObj.getClass().getDeclaredFields(); - Field[] afterFields = afterObj.getClass().getDeclaredFields(); + List beforeFieldList = Arrays.asList(beforeObj.getClass().getDeclaredFields()); + List superBeforeFileList = Arrays.asList(beforeObj.getClass().getSuperclass().getDeclaredFields()); + beforeFieldList.addAll(new ArrayList<>(superBeforeFileList)); + Field[] beforeFields = beforeFieldList.toArray(new Field[beforeFieldList.size()]); + + List afterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getDeclaredFields())); + List superAfterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getSuperclass().getDeclaredFields())); + afterFieldList.addAll(superAfterFieldList); + Field[] afterFields = afterFieldList.toArray(new Field[beforeFieldList.size()]); + Field.setAccessible(beforeFields, true); //设置私有属性可以访问到 Field.setAccessible(afterFields, true); //循环遍历比较属性 @@ -36,15 +45,19 @@ if (ObjectUtil.isNotEmpty(fields) && fields.contains(beforeFields[i].getName())) { try { Object beforeValue = beforeFields[i].get(beforeObj); //取出对应的属性值 - Object afterValue = afterFields[i].get(afterObj); + Object afterValue = null; + for (int j = 0; j < afterFields.length; j++) { + if(afterFields[j].getName().equals(beforeFields[i].getName())){ + afterValue = afterFields[j].get(afterObj); //取出对应的属性值 + break; + } + } if ((beforeValue != null && !"".equals(beforeValue) && !beforeValue.equals(afterValue)) || ((beforeValue == null || "".equals(beforeValue)) && afterValue != null)) { return false; } } catch (IllegalAccessException e) { log.error(e.getMessage()); } - - } } } diff --git a/casic-metering-dao/pom.xml b/casic-metering-dao/pom.xml index 64c6fbf..6cffff6 100644 --- a/casic-metering-dao/pom.xml +++ b/casic-metering-dao/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -16,7 +16,7 @@ com.casic casic-metering-model - 2.0.0 + 1.0.0.0 diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java index 548081b..f8ae80b 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java @@ -22,4 +22,9 @@ @Param("equipmentName") String equipmentName); PlanEquipmentStatus getPlanEquipmentStatus(@Param("equipmentId")Long equipmentId); + + + void inspectionStatusUpdate(@Param("executeStatus") String executeStatus, + @Param("inspectionId") Long inspectionId); + } diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml index a2c0944..e9d9f55 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml @@ -91,6 +91,7 @@ diff --git a/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml index bd0ad5f..ed9981e 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml @@ -19,7 +19,7 @@ id, inspection_id, equipment_id, inspection_time, plan_id, remarks, create_time, update_time - SELECT r.id AS id, r.inspection_id AS inspectionId, @@ -41,7 +41,7 @@ eqpt_inspection_equipment_relation r LEFT JOIN eqpt_equipment_info e ON e.id = r.equipment_id LEFT JOIN eqpt_plan p ON p.id = r.plan_id - AND r.inspection_id = #{inspectionId} + WHERE r.inspection_id = #{inspectionId} diff --git a/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml index 3aeb4a4..1c23860 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml @@ -67,4 +67,18 @@ LIMIT 1 + + update + eqpt_plan_equipment_relation r1, + eqpt_plan p, + eqpt_inspection_equipment_relation r2 + set r1.execute_status = #{executeStatus}, + r1.execute_time = r2.inspection_time + where r1.plan_id = p.id + and p.year = YEAR(NOW()) + and r1.execute_status = '0' + and r1.equipment_id = r2.equipment_id + and r2.inspection_id = #{inspectionId} + + diff --git a/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml index 93a8dc8..a2e8a11 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml @@ -29,7 +29,7 @@ n.notify_user as notifyUser, n.notify_dept as notifyDept, n.plan_id as planId, - p.plan_type as planType, + p.plan_category as planCategory, p.create_user_id as createUserId, p.create_user_name as createUserName, p.create_dept_id as createDeptId, diff --git a/casic-metering-eqpt-api/pom.xml b/casic-metering-eqpt-api/pom.xml index 456fdbf..99f40ca 100644 --- a/casic-metering-eqpt-api/pom.xml +++ b/casic-metering-eqpt-api/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -18,13 +18,13 @@ com.casic casic-metering-service - 2.0.0 + 1.0.0.0 com.casic casic-metering-job - 2.0.0 + 1.0.0.0 org.springframework.boot diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java index 268fb3a..06cb258 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java @@ -84,4 +84,13 @@ return businessOrderService.updateOrder(businessOrder); } + @ApiOperation("任务单取消") + @PostMapping("/cancel") + public ReturnDTO receiveOrder(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return businessOrderService.updateStatusById(idDTO.getId(), OrderStatusDictEnum.ALREADY_CANCEL); + } + } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java index 9456479..9717b78 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java @@ -16,6 +16,7 @@ import com.casic.missiles.dto.plan.PlanQueryForm; import com.casic.missiles.model.equipment.EquipmentInfoApproval; import com.casic.missiles.model.plan.Plan; +import com.casic.missiles.model.plan.PlanEquipmentRelation; import com.casic.missiles.service.ICommonApprovalService; import com.casic.missiles.service.plan.IPlanEquipmentRelationService; import com.casic.missiles.service.plan.IPlanService; @@ -76,7 +77,7 @@ }) @ApiOperation("计量计划详情-计划列表展开") @GetMapping("/relationList") - public ReturnDTO> relationList(Long planId,String equipmentName) { + public ReturnDTO> relationList(Long planId, String equipmentName) { return ReturnUtil.success(relationService.listByPlanAndName(planId,equipmentName)); } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java index 92e8e95..436fd8f 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java @@ -7,6 +7,7 @@ import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.equipment.EquipmentAggr; import com.casic.missiles.model.plan.PlanNotify; +import com.casic.missiles.model.plan.PlanNotifyRelation; import com.casic.missiles.service.plan.IPlanNotifyRelationService; import com.casic.missiles.service.plan.IPlanNotifyService; import io.swagger.annotations.Api; @@ -71,7 +72,7 @@ }) @ApiOperation("送检通知详情-送检列表展开") @GetMapping("/relationList") - public ReturnDTO> relationList(Long notifyId,String equipmentName) { + public ReturnDTO> relationList(Long notifyId, String equipmentName) { return ReturnUtil.success(relationService.listByNameAndNotify(equipmentName,notifyId)); } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java index 0090684..7f04e81 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java @@ -32,16 +32,14 @@ private final IRemindConfigService remindConfigService; @ApiOperation("编辑") - @RequestMapping("update") - @PostMapping + @PostMapping("update") public ReturnDTO update(@RequestBody RemindConfig remindConfig){ remindConfigService.updateById(remindConfig); return ReturnUtil.success(); } @ApiOperation("分页列表") - @RequestMapping("listPage") - @GetMapping + @GetMapping("listPage") public ReturnDTO> listPage(){ Page page = PageFactory.defaultPage(); page = remindConfigService.listScopePage(page); diff --git a/casic-metering-job/pom.xml b/casic-metering-job/pom.xml index 237e930..0a68bc1 100644 --- a/casic-metering-job/pom.xml +++ b/casic-metering-job/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -14,12 +14,12 @@ com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.github.oshi @@ -61,7 +61,7 @@ com.casic casic-metering-service - 2.0.0 + 1.0.0.0 compile diff --git a/casic-metering-model/pom.xml b/casic-metering-model/pom.xml index 31a2491..8ec8258 100644 --- a/casic-metering-model/pom.xml +++ b/casic-metering-model/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 diff --git a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java index 3974e29..0b7172c 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java @@ -26,6 +26,8 @@ String PLAN_CATEGORY = DICT_PREFIX + "PlanType"; String PLAN_EXECUTE_STATUS = DICT_PREFIX + "PlanExecuteStatus"; + + String PLAN_CHECK_COMPLETION = DICT_PREFIX + "PlanCheckCompletion"; //实施状态 String EFFECTIVE_STATUS = "effectiveStatus"; //文件类别 diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java index 7281705..3e4c232 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java @@ -26,18 +26,18 @@ @ApiModelProperty(value = "委托方id", dataType = "String") private String customerId; - @ApiModelProperty(value = "委托方编号", dataType = "String") - private String customerNo; - @ApiModelProperty(value = "委托方名称", dataType = "String") private String customerName; + /** + * 检定(校准)单位(固定值) + */ + @ApiModelProperty(value = "溯源单位(检定(校准)单位)", dataType = "String") + private String measureCompany; + @ApiModelProperty(value = "送检人", dataType = "String") private String deliverer; - @TableField(exist = false) - @ApiModelProperty(value = "样品数量", dataType = "String") - private Integer sampleCount; @ApiModelProperty(value = "接收状态(包括接收相关状态和检测完成状态)", dataType = "String") @DictCodeField(message = "接收状态不合法", cacheName = MeterDictCode.ORDER_STATUS) diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java index e0b4091..66809a7 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java @@ -16,6 +16,7 @@ import lombok.NoArgsConstructor; import lombok.Setter; +import static com.casic.missiles.constants.MeterDictCode.PLAN_CHECK_COMPLETION; import static com.casic.missiles.constants.MeterDictCode.PLAN_EXECUTE_STATUS; /** @@ -81,7 +82,12 @@ */ @ApiModelProperty("检定完成度") @TableField("check_completion") + @DictCodeField(cacheName = PLAN_CHECK_COMPLETION) private String checkCompletion; + + @ApiModelProperty("检定完成度名称") + @TableField(exist = false) + private String checkCompletionName; /** * 检定完成时间 */ diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java index ae10d36..c7d478c 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java @@ -8,6 +8,8 @@ import java.time.LocalDateTime; import java.util.Date; +import com.casic.missiles.annotation.DictCodeField; +import com.casic.missiles.constants.MeterDictCode; import io.swagger.annotations.ApiModelProperty; import lombok.Getter; import lombok.Setter; @@ -76,6 +78,43 @@ @TableField("plan_id") private Long planId; + @ApiModelProperty("计划分类") + @TableField(exist = false) + @DictCodeField(cacheName = MeterDictCode.PLAN_CATEGORY) + private String planCategory; + + @ApiModelProperty("计划分类名称") + @TableField(exist = false) + private String planCategoryName; + + /** + * 创建人id + */ + @ApiModelProperty("创建人id") + @TableField(exist = false) + private Long createUserId; + + /** + * 创建人姓名 + */ + @ApiModelProperty("创建人姓名") + @TableField(exist = false) + private String createUserName; + + /** + * 创建单位id + */ + @ApiModelProperty("创建单位id") + @TableField(exist = false) + private Long createDeptId; + + /** + * 创建单位名称 + */ + @ApiModelProperty("创建单位名称") + @TableField(exist = false) + private String createDeptName; + /** * 创建时间 */ diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java index f506553..7aa0b79 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java @@ -7,10 +7,16 @@ import java.time.LocalDateTime; import java.util.Date; +import com.casic.missiles.annotation.DictCodeField; import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; import lombok.Getter; +import lombok.NoArgsConstructor; import lombok.Setter; +import static com.casic.missiles.constants.MeterDictCode.PLAN_CHECK_COMPLETION; +import static com.casic.missiles.constants.MeterDictCode.PLAN_EXECUTE_STATUS; + /** *

* 受检设备-计量计划-送检通知关联表 @@ -21,6 +27,8 @@ */ @Getter @Setter +@NoArgsConstructor +@AllArgsConstructor @TableName("eqpt_plan_notify_relation") public class PlanNotifyRelation implements Serializable { @@ -128,7 +136,15 @@ */ @ApiModelProperty("执行状态") @TableField(exist = false) + @DictCodeField(cacheName = PLAN_EXECUTE_STATUS) private String executeStatus; + + /** + * 执行状态名称 + */ + @ApiModelProperty("执行状态名称") + @TableField(exist = false) + private String executeStatusName; /** * 执行时间 */ @@ -140,7 +156,12 @@ */ @ApiModelProperty("检定完成度") @TableField(exist = false) + @DictCodeField(cacheName = PLAN_CHECK_COMPLETION) private String checkCompletion; + + @ApiModelProperty("检定完成度名称") + @TableField(exist = false) + private String checkCompletionName; /** * 检定完成时间 */ @@ -148,6 +169,7 @@ @TableField(exist = false) private Date checkFinishTime; + public PlanNotifyRelation(Long notifyId, Long planRelationId) { this.notifyId = notifyId; this.planRelationId = planRelationId; diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/SampleStatueUpdate.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/SampleStatueUpdate.java index bdc2abe..b27b122 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/SampleStatueUpdate.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/SampleStatueUpdate.java @@ -19,6 +19,6 @@ @ApiModelProperty(value = "样品状态",required = true) private String sampleStatus; - @ApiModelProperty(value = "检定完成时间",required = true) + @ApiModelProperty(value = "检定完成时间",required = false) private Date finishTime; } diff --git a/casic-metering-service/pom.xml b/casic-metering-service/pom.xml index c146795..62c6519 100644 --- a/casic-metering-service/pom.xml +++ b/casic-metering-service/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -16,19 +16,19 @@ com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.casic casic-metering-common - 2.0.0 + 1.0.0.0 org.springframework.boot diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBizBusinessOrderInfoService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBizBusinessOrderInfoService.java index 5f93b15..f7010f6 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBizBusinessOrderInfoService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBizBusinessOrderInfoService.java @@ -28,5 +28,5 @@ ReturnDTO updateStatusById(Long id, String alreadyReceived); - ReturnDTO backOrder(OrderBackRequest orderBackRequest, String alreadyBack); + } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java index aa53fed..c2f939d 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java @@ -26,6 +26,8 @@ EquipmentInfoForm detail(Long equipmentId); + List allCertificate(Long equipmentId,String equipmentType); + boolean updateEquipmentStatus(Long equipmentId,String usageStatus); boolean updateCertificateValid(Long equipmentId, Date certificateValid); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/business/BizBusinessOrderInfoServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/business/BizBusinessOrderInfoServiceImpl.java index 79c720d..31bd60c 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/business/BizBusinessOrderInfoServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/business/BizBusinessOrderInfoServiceImpl.java @@ -1,8 +1,10 @@ package com.casic.missiles.service.impl.business; +import cn.hutool.core.collection.CollUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.business.OrderBackRequest; @@ -44,18 +46,18 @@ private final BusinessOrderListResponseMapper orderListResponseMapper; private final IBizBusinessOrderSampleRelationService sampleRelationService; private final BizBusinessOrderSampleRelationMapper sampleRelationMapper; + private final AbstractPermissionContext permissionContext; @Override public Page orderListPage(Page page, OrderListRequest request) throws Exception { QueryWrapper wrapper = listParamWrapperBuilder(request); + + // 查找本单位提交的 + Long deptId = permissionContext.getAuthService().getLoginUser().getDeptId(); + List parentDeptIds = permissionContext.getDeptService().getParentListById(deptId); + wrapper.and(i->i.eq("customer_id",deptId).or(CollUtil.isNotEmpty(parentDeptIds)).in("customer_id",parentDeptIds)); + Page resultPage = orderListResponseMapper.selectPage(page, wrapper); - List orderSampleList = sampleRelationMapper.selectList(null); - Map> orderSampleMap = orderSampleList.stream().collect( - Collectors.groupingBy(BizBusinessOrderSampleRelation::getOrderId) - ); - resultPage.getRecords().forEach( - orderSample -> orderSample.setSampleCount(orderSampleMap.containsKey(orderSample.getId()) ? orderSampleMap.get(orderSample.getId()).size() : 0) - ); for (OrderListResponse customerAdviceInfo : resultPage.getRecords()) { DictCodeUtils.convertDictCodeToName(customerAdviceInfo); } @@ -118,24 +120,13 @@ throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } - @Override - public ReturnDTO backOrder(OrderBackRequest orderBackRequest, String alreadyBack) { - BizBusinessOrderInfo businessOrder = new BizBusinessOrderInfo(); - businessOrder.setId(orderBackRequest.getId()); - businessOrder.setReceiveIllustrate(orderBackRequest.getBackReason()); - businessOrder.setReceiveStatus(alreadyBack); - if(this.baseMapper.updateById(businessOrder) > 0){ - return ReturnUtil.success(); - } - throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); - } private void initOrderInfo(BizBusinessOrderInfo businessOrder) { Long maxNo = this.baseMapper.selectMaxOrderNo(); String orderNo = NumberGeneratorUtil.getContactNo(PrefixCodeEnum.ORDER_PREFIX, maxNo); businessOrder.setCreateUserId(businessOrder.getUserId()); businessOrder.setCreateUserName(businessOrder.getUserName()); - businessOrder.setReceiveStatus(OrderStatusDictEnum.ALREADY_RECEIVED); + businessOrder.setReceiveStatus(OrderStatusDictEnum.NOT_RECEIVED); businessOrder.setOrderNo(orderNo); } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoApprovalServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoApprovalServiceImpl.java index bab78ce..5e9824d 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoApprovalServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoApprovalServiceImpl.java @@ -97,14 +97,7 @@ .setIgnoreError(true); BeanUtil.copyProperties(equipmentInfo, approvalForm, options); } - // 编辑申请:不需要审批的字段直接生效 - if (UPDATE == approvalForm.getApprovalType()) { - EquipmentInfo equipmentInfo = equipmentInfoService.getById(approvalForm.getEquipmentId()); - this.simpleUpdate(approvalForm, equipmentInfo); - if (!needApproval(approvalForm, equipmentInfo)) { - return approvalForm.getId(); - } - } + // 0. 生成设备id if (ObjectUtil.isEmpty(approvalForm.getEquipmentId())) { approvalForm.setEquipmentId(IdWorker.getId()); @@ -123,6 +116,14 @@ if (EQUIPMENT_TYPE_SPECIAL.equals(approvalForm.getEquipmentType())) { specialCertificateService.saveCertificateList(approvalForm.getEquipmentId(), approvalForm.getCertificateList()); } + // 编辑申请:不需要审批的字段直接生效 + if (UPDATE == approvalForm.getApprovalType()) { + EquipmentInfo equipmentInfo = equipmentInfoService.getById(approvalForm.getEquipmentId()); + this.simpleUpdate(approvalForm, equipmentInfo); + if (!needApproval(approvalForm, equipmentInfo)) { + return approvalForm.getId(); + } + } this.saveOrUpdate(approvalForm); // 4. 返回申请记录id return approvalForm.getId(); @@ -226,12 +227,13 @@ public EquipmentApprovalForm approvalInfoDetail(Long approvalId) { EquipmentInfoApproval approval = this.getById(approvalId); EquipmentApprovalForm info = new EquipmentApprovalForm(); + warpper(info); BeanUtil.copyProperties(approval,info); if (ObjectUtil.isNotEmpty(info)) { info.setAttachments(attachmentService.selectByEquipment(info.getEquipmentId())); info.setTechnicalTargetList(technicalTargetService.selectByEquipment(info.getEquipmentId())); info.setGroupInfos(groupInfoService.selectByEquipment(info.getEquipmentId())); - info.setCertificateList(new ArrayList<>()); // todo + info.setCertificateList(equipmentInfoService.allCertificate(info.getEquipmentId(),info.getEquipmentType())); } return info; } diff --git a/casic-metering-common/pom.xml b/casic-metering-common/pom.xml index 33f75c8..e431f85 100644 --- a/casic-metering-common/pom.xml +++ b/casic-metering-common/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -17,12 +17,12 @@ com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.github.oshi diff --git a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java index 0f37e03..250d886 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java @@ -12,6 +12,7 @@ import java.lang.reflect.Field; import java.lang.reflect.Method; import java.lang.reflect.Modifier; +import java.util.ArrayList; import java.util.Arrays; import java.util.List; @@ -26,8 +27,16 @@ * @return 全部相同返回true,有不相同的返回false */ public static boolean fieldCompare(Object beforeObj, Object afterObj, List fields) { - Field[] beforeFields = beforeObj.getClass().getDeclaredFields(); - Field[] afterFields = afterObj.getClass().getDeclaredFields(); + List beforeFieldList = Arrays.asList(beforeObj.getClass().getDeclaredFields()); + List superBeforeFileList = Arrays.asList(beforeObj.getClass().getSuperclass().getDeclaredFields()); + beforeFieldList.addAll(new ArrayList<>(superBeforeFileList)); + Field[] beforeFields = beforeFieldList.toArray(new Field[beforeFieldList.size()]); + + List afterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getDeclaredFields())); + List superAfterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getSuperclass().getDeclaredFields())); + afterFieldList.addAll(superAfterFieldList); + Field[] afterFields = afterFieldList.toArray(new Field[beforeFieldList.size()]); + Field.setAccessible(beforeFields, true); //设置私有属性可以访问到 Field.setAccessible(afterFields, true); //循环遍历比较属性 @@ -36,15 +45,19 @@ if (ObjectUtil.isNotEmpty(fields) && fields.contains(beforeFields[i].getName())) { try { Object beforeValue = beforeFields[i].get(beforeObj); //取出对应的属性值 - Object afterValue = afterFields[i].get(afterObj); + Object afterValue = null; + for (int j = 0; j < afterFields.length; j++) { + if(afterFields[j].getName().equals(beforeFields[i].getName())){ + afterValue = afterFields[j].get(afterObj); //取出对应的属性值 + break; + } + } if ((beforeValue != null && !"".equals(beforeValue) && !beforeValue.equals(afterValue)) || ((beforeValue == null || "".equals(beforeValue)) && afterValue != null)) { return false; } } catch (IllegalAccessException e) { log.error(e.getMessage()); } - - } } } diff --git a/casic-metering-dao/pom.xml b/casic-metering-dao/pom.xml index 64c6fbf..6cffff6 100644 --- a/casic-metering-dao/pom.xml +++ b/casic-metering-dao/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -16,7 +16,7 @@ com.casic casic-metering-model - 2.0.0 + 1.0.0.0 diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java index 548081b..f8ae80b 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java @@ -22,4 +22,9 @@ @Param("equipmentName") String equipmentName); PlanEquipmentStatus getPlanEquipmentStatus(@Param("equipmentId")Long equipmentId); + + + void inspectionStatusUpdate(@Param("executeStatus") String executeStatus, + @Param("inspectionId") Long inspectionId); + } diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml index a2c0944..e9d9f55 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml @@ -91,6 +91,7 @@ diff --git a/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml index bd0ad5f..ed9981e 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml @@ -19,7 +19,7 @@ id, inspection_id, equipment_id, inspection_time, plan_id, remarks, create_time, update_time - SELECT r.id AS id, r.inspection_id AS inspectionId, @@ -41,7 +41,7 @@ eqpt_inspection_equipment_relation r LEFT JOIN eqpt_equipment_info e ON e.id = r.equipment_id LEFT JOIN eqpt_plan p ON p.id = r.plan_id - AND r.inspection_id = #{inspectionId} + WHERE r.inspection_id = #{inspectionId} diff --git a/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml index 3aeb4a4..1c23860 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml @@ -67,4 +67,18 @@ LIMIT 1 + + update + eqpt_plan_equipment_relation r1, + eqpt_plan p, + eqpt_inspection_equipment_relation r2 + set r1.execute_status = #{executeStatus}, + r1.execute_time = r2.inspection_time + where r1.plan_id = p.id + and p.year = YEAR(NOW()) + and r1.execute_status = '0' + and r1.equipment_id = r2.equipment_id + and r2.inspection_id = #{inspectionId} + + diff --git a/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml index 93a8dc8..a2e8a11 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml @@ -29,7 +29,7 @@ n.notify_user as notifyUser, n.notify_dept as notifyDept, n.plan_id as planId, - p.plan_type as planType, + p.plan_category as planCategory, p.create_user_id as createUserId, p.create_user_name as createUserName, p.create_dept_id as createDeptId, diff --git a/casic-metering-eqpt-api/pom.xml b/casic-metering-eqpt-api/pom.xml index 456fdbf..99f40ca 100644 --- a/casic-metering-eqpt-api/pom.xml +++ b/casic-metering-eqpt-api/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -18,13 +18,13 @@ com.casic casic-metering-service - 2.0.0 + 1.0.0.0 com.casic casic-metering-job - 2.0.0 + 1.0.0.0 org.springframework.boot diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java index 268fb3a..06cb258 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java @@ -84,4 +84,13 @@ return businessOrderService.updateOrder(businessOrder); } + @ApiOperation("任务单取消") + @PostMapping("/cancel") + public ReturnDTO receiveOrder(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return businessOrderService.updateStatusById(idDTO.getId(), OrderStatusDictEnum.ALREADY_CANCEL); + } + } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java index 9456479..9717b78 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java @@ -16,6 +16,7 @@ import com.casic.missiles.dto.plan.PlanQueryForm; import com.casic.missiles.model.equipment.EquipmentInfoApproval; import com.casic.missiles.model.plan.Plan; +import com.casic.missiles.model.plan.PlanEquipmentRelation; import com.casic.missiles.service.ICommonApprovalService; import com.casic.missiles.service.plan.IPlanEquipmentRelationService; import com.casic.missiles.service.plan.IPlanService; @@ -76,7 +77,7 @@ }) @ApiOperation("计量计划详情-计划列表展开") @GetMapping("/relationList") - public ReturnDTO> relationList(Long planId,String equipmentName) { + public ReturnDTO> relationList(Long planId, String equipmentName) { return ReturnUtil.success(relationService.listByPlanAndName(planId,equipmentName)); } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java index 92e8e95..436fd8f 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java @@ -7,6 +7,7 @@ import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.equipment.EquipmentAggr; import com.casic.missiles.model.plan.PlanNotify; +import com.casic.missiles.model.plan.PlanNotifyRelation; import com.casic.missiles.service.plan.IPlanNotifyRelationService; import com.casic.missiles.service.plan.IPlanNotifyService; import io.swagger.annotations.Api; @@ -71,7 +72,7 @@ }) @ApiOperation("送检通知详情-送检列表展开") @GetMapping("/relationList") - public ReturnDTO> relationList(Long notifyId,String equipmentName) { + public ReturnDTO> relationList(Long notifyId, String equipmentName) { return ReturnUtil.success(relationService.listByNameAndNotify(equipmentName,notifyId)); } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java index 0090684..7f04e81 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java @@ -32,16 +32,14 @@ private final IRemindConfigService remindConfigService; @ApiOperation("编辑") - @RequestMapping("update") - @PostMapping + @PostMapping("update") public ReturnDTO update(@RequestBody RemindConfig remindConfig){ remindConfigService.updateById(remindConfig); return ReturnUtil.success(); } @ApiOperation("分页列表") - @RequestMapping("listPage") - @GetMapping + @GetMapping("listPage") public ReturnDTO> listPage(){ Page page = PageFactory.defaultPage(); page = remindConfigService.listScopePage(page); diff --git a/casic-metering-job/pom.xml b/casic-metering-job/pom.xml index 237e930..0a68bc1 100644 --- a/casic-metering-job/pom.xml +++ b/casic-metering-job/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -14,12 +14,12 @@ com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.github.oshi @@ -61,7 +61,7 @@ com.casic casic-metering-service - 2.0.0 + 1.0.0.0 compile diff --git a/casic-metering-model/pom.xml b/casic-metering-model/pom.xml index 31a2491..8ec8258 100644 --- a/casic-metering-model/pom.xml +++ b/casic-metering-model/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 diff --git a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java index 3974e29..0b7172c 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java @@ -26,6 +26,8 @@ String PLAN_CATEGORY = DICT_PREFIX + "PlanType"; String PLAN_EXECUTE_STATUS = DICT_PREFIX + "PlanExecuteStatus"; + + String PLAN_CHECK_COMPLETION = DICT_PREFIX + "PlanCheckCompletion"; //实施状态 String EFFECTIVE_STATUS = "effectiveStatus"; //文件类别 diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java index 7281705..3e4c232 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java @@ -26,18 +26,18 @@ @ApiModelProperty(value = "委托方id", dataType = "String") private String customerId; - @ApiModelProperty(value = "委托方编号", dataType = "String") - private String customerNo; - @ApiModelProperty(value = "委托方名称", dataType = "String") private String customerName; + /** + * 检定(校准)单位(固定值) + */ + @ApiModelProperty(value = "溯源单位(检定(校准)单位)", dataType = "String") + private String measureCompany; + @ApiModelProperty(value = "送检人", dataType = "String") private String deliverer; - @TableField(exist = false) - @ApiModelProperty(value = "样品数量", dataType = "String") - private Integer sampleCount; @ApiModelProperty(value = "接收状态(包括接收相关状态和检测完成状态)", dataType = "String") @DictCodeField(message = "接收状态不合法", cacheName = MeterDictCode.ORDER_STATUS) diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java index e0b4091..66809a7 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java @@ -16,6 +16,7 @@ import lombok.NoArgsConstructor; import lombok.Setter; +import static com.casic.missiles.constants.MeterDictCode.PLAN_CHECK_COMPLETION; import static com.casic.missiles.constants.MeterDictCode.PLAN_EXECUTE_STATUS; /** @@ -81,7 +82,12 @@ */ @ApiModelProperty("检定完成度") @TableField("check_completion") + @DictCodeField(cacheName = PLAN_CHECK_COMPLETION) private String checkCompletion; + + @ApiModelProperty("检定完成度名称") + @TableField(exist = false) + private String checkCompletionName; /** * 检定完成时间 */ diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java index ae10d36..c7d478c 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java @@ -8,6 +8,8 @@ import java.time.LocalDateTime; import java.util.Date; +import com.casic.missiles.annotation.DictCodeField; +import com.casic.missiles.constants.MeterDictCode; import io.swagger.annotations.ApiModelProperty; import lombok.Getter; import lombok.Setter; @@ -76,6 +78,43 @@ @TableField("plan_id") private Long planId; + @ApiModelProperty("计划分类") + @TableField(exist = false) + @DictCodeField(cacheName = MeterDictCode.PLAN_CATEGORY) + private String planCategory; + + @ApiModelProperty("计划分类名称") + @TableField(exist = false) + private String planCategoryName; + + /** + * 创建人id + */ + @ApiModelProperty("创建人id") + @TableField(exist = false) + private Long createUserId; + + /** + * 创建人姓名 + */ + @ApiModelProperty("创建人姓名") + @TableField(exist = false) + private String createUserName; + + /** + * 创建单位id + */ + @ApiModelProperty("创建单位id") + @TableField(exist = false) + private Long createDeptId; + + /** + * 创建单位名称 + */ + @ApiModelProperty("创建单位名称") + @TableField(exist = false) + private String createDeptName; + /** * 创建时间 */ diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java index f506553..7aa0b79 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java @@ -7,10 +7,16 @@ import java.time.LocalDateTime; import java.util.Date; +import com.casic.missiles.annotation.DictCodeField; import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; import lombok.Getter; +import lombok.NoArgsConstructor; import lombok.Setter; +import static com.casic.missiles.constants.MeterDictCode.PLAN_CHECK_COMPLETION; +import static com.casic.missiles.constants.MeterDictCode.PLAN_EXECUTE_STATUS; + /** *

* 受检设备-计量计划-送检通知关联表 @@ -21,6 +27,8 @@ */ @Getter @Setter +@NoArgsConstructor +@AllArgsConstructor @TableName("eqpt_plan_notify_relation") public class PlanNotifyRelation implements Serializable { @@ -128,7 +136,15 @@ */ @ApiModelProperty("执行状态") @TableField(exist = false) + @DictCodeField(cacheName = PLAN_EXECUTE_STATUS) private String executeStatus; + + /** + * 执行状态名称 + */ + @ApiModelProperty("执行状态名称") + @TableField(exist = false) + private String executeStatusName; /** * 执行时间 */ @@ -140,7 +156,12 @@ */ @ApiModelProperty("检定完成度") @TableField(exist = false) + @DictCodeField(cacheName = PLAN_CHECK_COMPLETION) private String checkCompletion; + + @ApiModelProperty("检定完成度名称") + @TableField(exist = false) + private String checkCompletionName; /** * 检定完成时间 */ @@ -148,6 +169,7 @@ @TableField(exist = false) private Date checkFinishTime; + public PlanNotifyRelation(Long notifyId, Long planRelationId) { this.notifyId = notifyId; this.planRelationId = planRelationId; diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/SampleStatueUpdate.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/SampleStatueUpdate.java index bdc2abe..b27b122 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/SampleStatueUpdate.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/SampleStatueUpdate.java @@ -19,6 +19,6 @@ @ApiModelProperty(value = "样品状态",required = true) private String sampleStatus; - @ApiModelProperty(value = "检定完成时间",required = true) + @ApiModelProperty(value = "检定完成时间",required = false) private Date finishTime; } diff --git a/casic-metering-service/pom.xml b/casic-metering-service/pom.xml index c146795..62c6519 100644 --- a/casic-metering-service/pom.xml +++ b/casic-metering-service/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -16,19 +16,19 @@ com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.casic casic-metering-common - 2.0.0 + 1.0.0.0 org.springframework.boot diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBizBusinessOrderInfoService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBizBusinessOrderInfoService.java index 5f93b15..f7010f6 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBizBusinessOrderInfoService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBizBusinessOrderInfoService.java @@ -28,5 +28,5 @@ ReturnDTO updateStatusById(Long id, String alreadyReceived); - ReturnDTO backOrder(OrderBackRequest orderBackRequest, String alreadyBack); + } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java index aa53fed..c2f939d 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java @@ -26,6 +26,8 @@ EquipmentInfoForm detail(Long equipmentId); + List allCertificate(Long equipmentId,String equipmentType); + boolean updateEquipmentStatus(Long equipmentId,String usageStatus); boolean updateCertificateValid(Long equipmentId, Date certificateValid); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/business/BizBusinessOrderInfoServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/business/BizBusinessOrderInfoServiceImpl.java index 79c720d..31bd60c 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/business/BizBusinessOrderInfoServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/business/BizBusinessOrderInfoServiceImpl.java @@ -1,8 +1,10 @@ package com.casic.missiles.service.impl.business; +import cn.hutool.core.collection.CollUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.business.OrderBackRequest; @@ -44,18 +46,18 @@ private final BusinessOrderListResponseMapper orderListResponseMapper; private final IBizBusinessOrderSampleRelationService sampleRelationService; private final BizBusinessOrderSampleRelationMapper sampleRelationMapper; + private final AbstractPermissionContext permissionContext; @Override public Page orderListPage(Page page, OrderListRequest request) throws Exception { QueryWrapper wrapper = listParamWrapperBuilder(request); + + // 查找本单位提交的 + Long deptId = permissionContext.getAuthService().getLoginUser().getDeptId(); + List parentDeptIds = permissionContext.getDeptService().getParentListById(deptId); + wrapper.and(i->i.eq("customer_id",deptId).or(CollUtil.isNotEmpty(parentDeptIds)).in("customer_id",parentDeptIds)); + Page resultPage = orderListResponseMapper.selectPage(page, wrapper); - List orderSampleList = sampleRelationMapper.selectList(null); - Map> orderSampleMap = orderSampleList.stream().collect( - Collectors.groupingBy(BizBusinessOrderSampleRelation::getOrderId) - ); - resultPage.getRecords().forEach( - orderSample -> orderSample.setSampleCount(orderSampleMap.containsKey(orderSample.getId()) ? orderSampleMap.get(orderSample.getId()).size() : 0) - ); for (OrderListResponse customerAdviceInfo : resultPage.getRecords()) { DictCodeUtils.convertDictCodeToName(customerAdviceInfo); } @@ -118,24 +120,13 @@ throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } - @Override - public ReturnDTO backOrder(OrderBackRequest orderBackRequest, String alreadyBack) { - BizBusinessOrderInfo businessOrder = new BizBusinessOrderInfo(); - businessOrder.setId(orderBackRequest.getId()); - businessOrder.setReceiveIllustrate(orderBackRequest.getBackReason()); - businessOrder.setReceiveStatus(alreadyBack); - if(this.baseMapper.updateById(businessOrder) > 0){ - return ReturnUtil.success(); - } - throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); - } private void initOrderInfo(BizBusinessOrderInfo businessOrder) { Long maxNo = this.baseMapper.selectMaxOrderNo(); String orderNo = NumberGeneratorUtil.getContactNo(PrefixCodeEnum.ORDER_PREFIX, maxNo); businessOrder.setCreateUserId(businessOrder.getUserId()); businessOrder.setCreateUserName(businessOrder.getUserName()); - businessOrder.setReceiveStatus(OrderStatusDictEnum.ALREADY_RECEIVED); + businessOrder.setReceiveStatus(OrderStatusDictEnum.NOT_RECEIVED); businessOrder.setOrderNo(orderNo); } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoApprovalServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoApprovalServiceImpl.java index bab78ce..5e9824d 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoApprovalServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoApprovalServiceImpl.java @@ -97,14 +97,7 @@ .setIgnoreError(true); BeanUtil.copyProperties(equipmentInfo, approvalForm, options); } - // 编辑申请:不需要审批的字段直接生效 - if (UPDATE == approvalForm.getApprovalType()) { - EquipmentInfo equipmentInfo = equipmentInfoService.getById(approvalForm.getEquipmentId()); - this.simpleUpdate(approvalForm, equipmentInfo); - if (!needApproval(approvalForm, equipmentInfo)) { - return approvalForm.getId(); - } - } + // 0. 生成设备id if (ObjectUtil.isEmpty(approvalForm.getEquipmentId())) { approvalForm.setEquipmentId(IdWorker.getId()); @@ -123,6 +116,14 @@ if (EQUIPMENT_TYPE_SPECIAL.equals(approvalForm.getEquipmentType())) { specialCertificateService.saveCertificateList(approvalForm.getEquipmentId(), approvalForm.getCertificateList()); } + // 编辑申请:不需要审批的字段直接生效 + if (UPDATE == approvalForm.getApprovalType()) { + EquipmentInfo equipmentInfo = equipmentInfoService.getById(approvalForm.getEquipmentId()); + this.simpleUpdate(approvalForm, equipmentInfo); + if (!needApproval(approvalForm, equipmentInfo)) { + return approvalForm.getId(); + } + } this.saveOrUpdate(approvalForm); // 4. 返回申请记录id return approvalForm.getId(); @@ -226,12 +227,13 @@ public EquipmentApprovalForm approvalInfoDetail(Long approvalId) { EquipmentInfoApproval approval = this.getById(approvalId); EquipmentApprovalForm info = new EquipmentApprovalForm(); + warpper(info); BeanUtil.copyProperties(approval,info); if (ObjectUtil.isNotEmpty(info)) { info.setAttachments(attachmentService.selectByEquipment(info.getEquipmentId())); info.setTechnicalTargetList(technicalTargetService.selectByEquipment(info.getEquipmentId())); info.setGroupInfos(groupInfoService.selectByEquipment(info.getEquipmentId())); - info.setCertificateList(new ArrayList<>()); // todo + info.setCertificateList(equipmentInfoService.allCertificate(info.getEquipmentId(),info.getEquipmentType())); } return info; } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoServiceImpl.java index e8a35a2..469317b 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoServiceImpl.java @@ -121,6 +121,7 @@ EquipmentInfoForm infoForm = new EquipmentInfoForm(); EquipmentInfo equipmentInfo = this.getById(equipmentId); if(ObjectUtil.isNotEmpty(equipmentInfo)){ + warpEquipmentInfo(equipmentInfo); equipmentInfo.setCompanyName(permissionContext.getDeptService().getDeptName(equipmentInfo.getCompanyId())); equipmentInfo.setDeptName(permissionContext.getDeptService().getDeptName(equipmentInfo.getDeptId())); equipmentInfo.setGroupInfos(groupInfoService.selectByEquipment(equipmentId)); @@ -134,7 +135,8 @@ return infoForm; } - private List allCertificate(Long equipmentId,String equipmentType){ + @Override + public List allCertificate(Long equipmentId,String equipmentType){ List listAll = new ArrayList<>(); listAll.addAll(this.baseMapper.bizCertificateList(equipmentId)); diff --git a/casic-metering-common/pom.xml b/casic-metering-common/pom.xml index 33f75c8..e431f85 100644 --- a/casic-metering-common/pom.xml +++ b/casic-metering-common/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -17,12 +17,12 @@ com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.github.oshi diff --git a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java index 0f37e03..250d886 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java @@ -12,6 +12,7 @@ import java.lang.reflect.Field; import java.lang.reflect.Method; import java.lang.reflect.Modifier; +import java.util.ArrayList; import java.util.Arrays; import java.util.List; @@ -26,8 +27,16 @@ * @return 全部相同返回true,有不相同的返回false */ public static boolean fieldCompare(Object beforeObj, Object afterObj, List fields) { - Field[] beforeFields = beforeObj.getClass().getDeclaredFields(); - Field[] afterFields = afterObj.getClass().getDeclaredFields(); + List beforeFieldList = Arrays.asList(beforeObj.getClass().getDeclaredFields()); + List superBeforeFileList = Arrays.asList(beforeObj.getClass().getSuperclass().getDeclaredFields()); + beforeFieldList.addAll(new ArrayList<>(superBeforeFileList)); + Field[] beforeFields = beforeFieldList.toArray(new Field[beforeFieldList.size()]); + + List afterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getDeclaredFields())); + List superAfterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getSuperclass().getDeclaredFields())); + afterFieldList.addAll(superAfterFieldList); + Field[] afterFields = afterFieldList.toArray(new Field[beforeFieldList.size()]); + Field.setAccessible(beforeFields, true); //设置私有属性可以访问到 Field.setAccessible(afterFields, true); //循环遍历比较属性 @@ -36,15 +45,19 @@ if (ObjectUtil.isNotEmpty(fields) && fields.contains(beforeFields[i].getName())) { try { Object beforeValue = beforeFields[i].get(beforeObj); //取出对应的属性值 - Object afterValue = afterFields[i].get(afterObj); + Object afterValue = null; + for (int j = 0; j < afterFields.length; j++) { + if(afterFields[j].getName().equals(beforeFields[i].getName())){ + afterValue = afterFields[j].get(afterObj); //取出对应的属性值 + break; + } + } if ((beforeValue != null && !"".equals(beforeValue) && !beforeValue.equals(afterValue)) || ((beforeValue == null || "".equals(beforeValue)) && afterValue != null)) { return false; } } catch (IllegalAccessException e) { log.error(e.getMessage()); } - - } } } diff --git a/casic-metering-dao/pom.xml b/casic-metering-dao/pom.xml index 64c6fbf..6cffff6 100644 --- a/casic-metering-dao/pom.xml +++ b/casic-metering-dao/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -16,7 +16,7 @@ com.casic casic-metering-model - 2.0.0 + 1.0.0.0 diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java index 548081b..f8ae80b 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java @@ -22,4 +22,9 @@ @Param("equipmentName") String equipmentName); PlanEquipmentStatus getPlanEquipmentStatus(@Param("equipmentId")Long equipmentId); + + + void inspectionStatusUpdate(@Param("executeStatus") String executeStatus, + @Param("inspectionId") Long inspectionId); + } diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml index a2c0944..e9d9f55 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml @@ -91,6 +91,7 @@ diff --git a/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml index bd0ad5f..ed9981e 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml @@ -19,7 +19,7 @@ id, inspection_id, equipment_id, inspection_time, plan_id, remarks, create_time, update_time - SELECT r.id AS id, r.inspection_id AS inspectionId, @@ -41,7 +41,7 @@ eqpt_inspection_equipment_relation r LEFT JOIN eqpt_equipment_info e ON e.id = r.equipment_id LEFT JOIN eqpt_plan p ON p.id = r.plan_id - AND r.inspection_id = #{inspectionId} + WHERE r.inspection_id = #{inspectionId} diff --git a/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml index 3aeb4a4..1c23860 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml @@ -67,4 +67,18 @@ LIMIT 1 + + update + eqpt_plan_equipment_relation r1, + eqpt_plan p, + eqpt_inspection_equipment_relation r2 + set r1.execute_status = #{executeStatus}, + r1.execute_time = r2.inspection_time + where r1.plan_id = p.id + and p.year = YEAR(NOW()) + and r1.execute_status = '0' + and r1.equipment_id = r2.equipment_id + and r2.inspection_id = #{inspectionId} + + diff --git a/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml index 93a8dc8..a2e8a11 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml @@ -29,7 +29,7 @@ n.notify_user as notifyUser, n.notify_dept as notifyDept, n.plan_id as planId, - p.plan_type as planType, + p.plan_category as planCategory, p.create_user_id as createUserId, p.create_user_name as createUserName, p.create_dept_id as createDeptId, diff --git a/casic-metering-eqpt-api/pom.xml b/casic-metering-eqpt-api/pom.xml index 456fdbf..99f40ca 100644 --- a/casic-metering-eqpt-api/pom.xml +++ b/casic-metering-eqpt-api/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -18,13 +18,13 @@ com.casic casic-metering-service - 2.0.0 + 1.0.0.0 com.casic casic-metering-job - 2.0.0 + 1.0.0.0 org.springframework.boot diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java index 268fb3a..06cb258 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java @@ -84,4 +84,13 @@ return businessOrderService.updateOrder(businessOrder); } + @ApiOperation("任务单取消") + @PostMapping("/cancel") + public ReturnDTO receiveOrder(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return businessOrderService.updateStatusById(idDTO.getId(), OrderStatusDictEnum.ALREADY_CANCEL); + } + } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java index 9456479..9717b78 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java @@ -16,6 +16,7 @@ import com.casic.missiles.dto.plan.PlanQueryForm; import com.casic.missiles.model.equipment.EquipmentInfoApproval; import com.casic.missiles.model.plan.Plan; +import com.casic.missiles.model.plan.PlanEquipmentRelation; import com.casic.missiles.service.ICommonApprovalService; import com.casic.missiles.service.plan.IPlanEquipmentRelationService; import com.casic.missiles.service.plan.IPlanService; @@ -76,7 +77,7 @@ }) @ApiOperation("计量计划详情-计划列表展开") @GetMapping("/relationList") - public ReturnDTO> relationList(Long planId,String equipmentName) { + public ReturnDTO> relationList(Long planId, String equipmentName) { return ReturnUtil.success(relationService.listByPlanAndName(planId,equipmentName)); } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java index 92e8e95..436fd8f 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java @@ -7,6 +7,7 @@ import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.equipment.EquipmentAggr; import com.casic.missiles.model.plan.PlanNotify; +import com.casic.missiles.model.plan.PlanNotifyRelation; import com.casic.missiles.service.plan.IPlanNotifyRelationService; import com.casic.missiles.service.plan.IPlanNotifyService; import io.swagger.annotations.Api; @@ -71,7 +72,7 @@ }) @ApiOperation("送检通知详情-送检列表展开") @GetMapping("/relationList") - public ReturnDTO> relationList(Long notifyId,String equipmentName) { + public ReturnDTO> relationList(Long notifyId, String equipmentName) { return ReturnUtil.success(relationService.listByNameAndNotify(equipmentName,notifyId)); } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java index 0090684..7f04e81 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java @@ -32,16 +32,14 @@ private final IRemindConfigService remindConfigService; @ApiOperation("编辑") - @RequestMapping("update") - @PostMapping + @PostMapping("update") public ReturnDTO update(@RequestBody RemindConfig remindConfig){ remindConfigService.updateById(remindConfig); return ReturnUtil.success(); } @ApiOperation("分页列表") - @RequestMapping("listPage") - @GetMapping + @GetMapping("listPage") public ReturnDTO> listPage(){ Page page = PageFactory.defaultPage(); page = remindConfigService.listScopePage(page); diff --git a/casic-metering-job/pom.xml b/casic-metering-job/pom.xml index 237e930..0a68bc1 100644 --- a/casic-metering-job/pom.xml +++ b/casic-metering-job/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -14,12 +14,12 @@ com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.github.oshi @@ -61,7 +61,7 @@ com.casic casic-metering-service - 2.0.0 + 1.0.0.0 compile diff --git a/casic-metering-model/pom.xml b/casic-metering-model/pom.xml index 31a2491..8ec8258 100644 --- a/casic-metering-model/pom.xml +++ b/casic-metering-model/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 diff --git a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java index 3974e29..0b7172c 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java @@ -26,6 +26,8 @@ String PLAN_CATEGORY = DICT_PREFIX + "PlanType"; String PLAN_EXECUTE_STATUS = DICT_PREFIX + "PlanExecuteStatus"; + + String PLAN_CHECK_COMPLETION = DICT_PREFIX + "PlanCheckCompletion"; //实施状态 String EFFECTIVE_STATUS = "effectiveStatus"; //文件类别 diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java index 7281705..3e4c232 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java @@ -26,18 +26,18 @@ @ApiModelProperty(value = "委托方id", dataType = "String") private String customerId; - @ApiModelProperty(value = "委托方编号", dataType = "String") - private String customerNo; - @ApiModelProperty(value = "委托方名称", dataType = "String") private String customerName; + /** + * 检定(校准)单位(固定值) + */ + @ApiModelProperty(value = "溯源单位(检定(校准)单位)", dataType = "String") + private String measureCompany; + @ApiModelProperty(value = "送检人", dataType = "String") private String deliverer; - @TableField(exist = false) - @ApiModelProperty(value = "样品数量", dataType = "String") - private Integer sampleCount; @ApiModelProperty(value = "接收状态(包括接收相关状态和检测完成状态)", dataType = "String") @DictCodeField(message = "接收状态不合法", cacheName = MeterDictCode.ORDER_STATUS) diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java index e0b4091..66809a7 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java @@ -16,6 +16,7 @@ import lombok.NoArgsConstructor; import lombok.Setter; +import static com.casic.missiles.constants.MeterDictCode.PLAN_CHECK_COMPLETION; import static com.casic.missiles.constants.MeterDictCode.PLAN_EXECUTE_STATUS; /** @@ -81,7 +82,12 @@ */ @ApiModelProperty("检定完成度") @TableField("check_completion") + @DictCodeField(cacheName = PLAN_CHECK_COMPLETION) private String checkCompletion; + + @ApiModelProperty("检定完成度名称") + @TableField(exist = false) + private String checkCompletionName; /** * 检定完成时间 */ diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java index ae10d36..c7d478c 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java @@ -8,6 +8,8 @@ import java.time.LocalDateTime; import java.util.Date; +import com.casic.missiles.annotation.DictCodeField; +import com.casic.missiles.constants.MeterDictCode; import io.swagger.annotations.ApiModelProperty; import lombok.Getter; import lombok.Setter; @@ -76,6 +78,43 @@ @TableField("plan_id") private Long planId; + @ApiModelProperty("计划分类") + @TableField(exist = false) + @DictCodeField(cacheName = MeterDictCode.PLAN_CATEGORY) + private String planCategory; + + @ApiModelProperty("计划分类名称") + @TableField(exist = false) + private String planCategoryName; + + /** + * 创建人id + */ + @ApiModelProperty("创建人id") + @TableField(exist = false) + private Long createUserId; + + /** + * 创建人姓名 + */ + @ApiModelProperty("创建人姓名") + @TableField(exist = false) + private String createUserName; + + /** + * 创建单位id + */ + @ApiModelProperty("创建单位id") + @TableField(exist = false) + private Long createDeptId; + + /** + * 创建单位名称 + */ + @ApiModelProperty("创建单位名称") + @TableField(exist = false) + private String createDeptName; + /** * 创建时间 */ diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java index f506553..7aa0b79 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java @@ -7,10 +7,16 @@ import java.time.LocalDateTime; import java.util.Date; +import com.casic.missiles.annotation.DictCodeField; import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; import lombok.Getter; +import lombok.NoArgsConstructor; import lombok.Setter; +import static com.casic.missiles.constants.MeterDictCode.PLAN_CHECK_COMPLETION; +import static com.casic.missiles.constants.MeterDictCode.PLAN_EXECUTE_STATUS; + /** *

* 受检设备-计量计划-送检通知关联表 @@ -21,6 +27,8 @@ */ @Getter @Setter +@NoArgsConstructor +@AllArgsConstructor @TableName("eqpt_plan_notify_relation") public class PlanNotifyRelation implements Serializable { @@ -128,7 +136,15 @@ */ @ApiModelProperty("执行状态") @TableField(exist = false) + @DictCodeField(cacheName = PLAN_EXECUTE_STATUS) private String executeStatus; + + /** + * 执行状态名称 + */ + @ApiModelProperty("执行状态名称") + @TableField(exist = false) + private String executeStatusName; /** * 执行时间 */ @@ -140,7 +156,12 @@ */ @ApiModelProperty("检定完成度") @TableField(exist = false) + @DictCodeField(cacheName = PLAN_CHECK_COMPLETION) private String checkCompletion; + + @ApiModelProperty("检定完成度名称") + @TableField(exist = false) + private String checkCompletionName; /** * 检定完成时间 */ @@ -148,6 +169,7 @@ @TableField(exist = false) private Date checkFinishTime; + public PlanNotifyRelation(Long notifyId, Long planRelationId) { this.notifyId = notifyId; this.planRelationId = planRelationId; diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/SampleStatueUpdate.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/SampleStatueUpdate.java index bdc2abe..b27b122 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/SampleStatueUpdate.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/SampleStatueUpdate.java @@ -19,6 +19,6 @@ @ApiModelProperty(value = "样品状态",required = true) private String sampleStatus; - @ApiModelProperty(value = "检定完成时间",required = true) + @ApiModelProperty(value = "检定完成时间",required = false) private Date finishTime; } diff --git a/casic-metering-service/pom.xml b/casic-metering-service/pom.xml index c146795..62c6519 100644 --- a/casic-metering-service/pom.xml +++ b/casic-metering-service/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -16,19 +16,19 @@ com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.casic casic-metering-common - 2.0.0 + 1.0.0.0 org.springframework.boot diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBizBusinessOrderInfoService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBizBusinessOrderInfoService.java index 5f93b15..f7010f6 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBizBusinessOrderInfoService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBizBusinessOrderInfoService.java @@ -28,5 +28,5 @@ ReturnDTO updateStatusById(Long id, String alreadyReceived); - ReturnDTO backOrder(OrderBackRequest orderBackRequest, String alreadyBack); + } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java index aa53fed..c2f939d 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java @@ -26,6 +26,8 @@ EquipmentInfoForm detail(Long equipmentId); + List allCertificate(Long equipmentId,String equipmentType); + boolean updateEquipmentStatus(Long equipmentId,String usageStatus); boolean updateCertificateValid(Long equipmentId, Date certificateValid); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/business/BizBusinessOrderInfoServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/business/BizBusinessOrderInfoServiceImpl.java index 79c720d..31bd60c 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/business/BizBusinessOrderInfoServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/business/BizBusinessOrderInfoServiceImpl.java @@ -1,8 +1,10 @@ package com.casic.missiles.service.impl.business; +import cn.hutool.core.collection.CollUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.business.OrderBackRequest; @@ -44,18 +46,18 @@ private final BusinessOrderListResponseMapper orderListResponseMapper; private final IBizBusinessOrderSampleRelationService sampleRelationService; private final BizBusinessOrderSampleRelationMapper sampleRelationMapper; + private final AbstractPermissionContext permissionContext; @Override public Page orderListPage(Page page, OrderListRequest request) throws Exception { QueryWrapper wrapper = listParamWrapperBuilder(request); + + // 查找本单位提交的 + Long deptId = permissionContext.getAuthService().getLoginUser().getDeptId(); + List parentDeptIds = permissionContext.getDeptService().getParentListById(deptId); + wrapper.and(i->i.eq("customer_id",deptId).or(CollUtil.isNotEmpty(parentDeptIds)).in("customer_id",parentDeptIds)); + Page resultPage = orderListResponseMapper.selectPage(page, wrapper); - List orderSampleList = sampleRelationMapper.selectList(null); - Map> orderSampleMap = orderSampleList.stream().collect( - Collectors.groupingBy(BizBusinessOrderSampleRelation::getOrderId) - ); - resultPage.getRecords().forEach( - orderSample -> orderSample.setSampleCount(orderSampleMap.containsKey(orderSample.getId()) ? orderSampleMap.get(orderSample.getId()).size() : 0) - ); for (OrderListResponse customerAdviceInfo : resultPage.getRecords()) { DictCodeUtils.convertDictCodeToName(customerAdviceInfo); } @@ -118,24 +120,13 @@ throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } - @Override - public ReturnDTO backOrder(OrderBackRequest orderBackRequest, String alreadyBack) { - BizBusinessOrderInfo businessOrder = new BizBusinessOrderInfo(); - businessOrder.setId(orderBackRequest.getId()); - businessOrder.setReceiveIllustrate(orderBackRequest.getBackReason()); - businessOrder.setReceiveStatus(alreadyBack); - if(this.baseMapper.updateById(businessOrder) > 0){ - return ReturnUtil.success(); - } - throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); - } private void initOrderInfo(BizBusinessOrderInfo businessOrder) { Long maxNo = this.baseMapper.selectMaxOrderNo(); String orderNo = NumberGeneratorUtil.getContactNo(PrefixCodeEnum.ORDER_PREFIX, maxNo); businessOrder.setCreateUserId(businessOrder.getUserId()); businessOrder.setCreateUserName(businessOrder.getUserName()); - businessOrder.setReceiveStatus(OrderStatusDictEnum.ALREADY_RECEIVED); + businessOrder.setReceiveStatus(OrderStatusDictEnum.NOT_RECEIVED); businessOrder.setOrderNo(orderNo); } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoApprovalServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoApprovalServiceImpl.java index bab78ce..5e9824d 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoApprovalServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoApprovalServiceImpl.java @@ -97,14 +97,7 @@ .setIgnoreError(true); BeanUtil.copyProperties(equipmentInfo, approvalForm, options); } - // 编辑申请:不需要审批的字段直接生效 - if (UPDATE == approvalForm.getApprovalType()) { - EquipmentInfo equipmentInfo = equipmentInfoService.getById(approvalForm.getEquipmentId()); - this.simpleUpdate(approvalForm, equipmentInfo); - if (!needApproval(approvalForm, equipmentInfo)) { - return approvalForm.getId(); - } - } + // 0. 生成设备id if (ObjectUtil.isEmpty(approvalForm.getEquipmentId())) { approvalForm.setEquipmentId(IdWorker.getId()); @@ -123,6 +116,14 @@ if (EQUIPMENT_TYPE_SPECIAL.equals(approvalForm.getEquipmentType())) { specialCertificateService.saveCertificateList(approvalForm.getEquipmentId(), approvalForm.getCertificateList()); } + // 编辑申请:不需要审批的字段直接生效 + if (UPDATE == approvalForm.getApprovalType()) { + EquipmentInfo equipmentInfo = equipmentInfoService.getById(approvalForm.getEquipmentId()); + this.simpleUpdate(approvalForm, equipmentInfo); + if (!needApproval(approvalForm, equipmentInfo)) { + return approvalForm.getId(); + } + } this.saveOrUpdate(approvalForm); // 4. 返回申请记录id return approvalForm.getId(); @@ -226,12 +227,13 @@ public EquipmentApprovalForm approvalInfoDetail(Long approvalId) { EquipmentInfoApproval approval = this.getById(approvalId); EquipmentApprovalForm info = new EquipmentApprovalForm(); + warpper(info); BeanUtil.copyProperties(approval,info); if (ObjectUtil.isNotEmpty(info)) { info.setAttachments(attachmentService.selectByEquipment(info.getEquipmentId())); info.setTechnicalTargetList(technicalTargetService.selectByEquipment(info.getEquipmentId())); info.setGroupInfos(groupInfoService.selectByEquipment(info.getEquipmentId())); - info.setCertificateList(new ArrayList<>()); // todo + info.setCertificateList(equipmentInfoService.allCertificate(info.getEquipmentId(),info.getEquipmentType())); } return info; } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoServiceImpl.java index e8a35a2..469317b 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoServiceImpl.java @@ -121,6 +121,7 @@ EquipmentInfoForm infoForm = new EquipmentInfoForm(); EquipmentInfo equipmentInfo = this.getById(equipmentId); if(ObjectUtil.isNotEmpty(equipmentInfo)){ + warpEquipmentInfo(equipmentInfo); equipmentInfo.setCompanyName(permissionContext.getDeptService().getDeptName(equipmentInfo.getCompanyId())); equipmentInfo.setDeptName(permissionContext.getDeptService().getDeptName(equipmentInfo.getDeptId())); equipmentInfo.setGroupInfos(groupInfoService.selectByEquipment(equipmentId)); @@ -134,7 +135,8 @@ return infoForm; } - private List allCertificate(Long equipmentId,String equipmentType){ + @Override + public List allCertificate(Long equipmentId,String equipmentType){ List listAll = new ArrayList<>(); listAll.addAll(this.baseMapper.bizCertificateList(equipmentId)); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentTechnicalTargetServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentTechnicalTargetServiceImpl.java index fcd4cb0..7ad7da3 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentTechnicalTargetServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentTechnicalTargetServiceImpl.java @@ -38,7 +38,7 @@ public boolean removeByEquipment(Long equipmentId) { QueryWrapper wrapper = new QueryWrapper<>(); wrapper.eq("equipment_id",equipmentId); - wrapper.notExists("(select id from eqpt_equipment_info i where i.id = eqpt_equipment_attachment.equipment_id)"); + wrapper.notExists("(select id from eqpt_equipment_info i where i.id = eqpt_equipment_technical_target.equipment_id)"); return this.remove(wrapper); } diff --git a/casic-metering-common/pom.xml b/casic-metering-common/pom.xml index 33f75c8..e431f85 100644 --- a/casic-metering-common/pom.xml +++ b/casic-metering-common/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -17,12 +17,12 @@ com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.github.oshi diff --git a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java index 0f37e03..250d886 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java @@ -12,6 +12,7 @@ import java.lang.reflect.Field; import java.lang.reflect.Method; import java.lang.reflect.Modifier; +import java.util.ArrayList; import java.util.Arrays; import java.util.List; @@ -26,8 +27,16 @@ * @return 全部相同返回true,有不相同的返回false */ public static boolean fieldCompare(Object beforeObj, Object afterObj, List fields) { - Field[] beforeFields = beforeObj.getClass().getDeclaredFields(); - Field[] afterFields = afterObj.getClass().getDeclaredFields(); + List beforeFieldList = Arrays.asList(beforeObj.getClass().getDeclaredFields()); + List superBeforeFileList = Arrays.asList(beforeObj.getClass().getSuperclass().getDeclaredFields()); + beforeFieldList.addAll(new ArrayList<>(superBeforeFileList)); + Field[] beforeFields = beforeFieldList.toArray(new Field[beforeFieldList.size()]); + + List afterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getDeclaredFields())); + List superAfterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getSuperclass().getDeclaredFields())); + afterFieldList.addAll(superAfterFieldList); + Field[] afterFields = afterFieldList.toArray(new Field[beforeFieldList.size()]); + Field.setAccessible(beforeFields, true); //设置私有属性可以访问到 Field.setAccessible(afterFields, true); //循环遍历比较属性 @@ -36,15 +45,19 @@ if (ObjectUtil.isNotEmpty(fields) && fields.contains(beforeFields[i].getName())) { try { Object beforeValue = beforeFields[i].get(beforeObj); //取出对应的属性值 - Object afterValue = afterFields[i].get(afterObj); + Object afterValue = null; + for (int j = 0; j < afterFields.length; j++) { + if(afterFields[j].getName().equals(beforeFields[i].getName())){ + afterValue = afterFields[j].get(afterObj); //取出对应的属性值 + break; + } + } if ((beforeValue != null && !"".equals(beforeValue) && !beforeValue.equals(afterValue)) || ((beforeValue == null || "".equals(beforeValue)) && afterValue != null)) { return false; } } catch (IllegalAccessException e) { log.error(e.getMessage()); } - - } } } diff --git a/casic-metering-dao/pom.xml b/casic-metering-dao/pom.xml index 64c6fbf..6cffff6 100644 --- a/casic-metering-dao/pom.xml +++ b/casic-metering-dao/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -16,7 +16,7 @@ com.casic casic-metering-model - 2.0.0 + 1.0.0.0 diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java index 548081b..f8ae80b 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java @@ -22,4 +22,9 @@ @Param("equipmentName") String equipmentName); PlanEquipmentStatus getPlanEquipmentStatus(@Param("equipmentId")Long equipmentId); + + + void inspectionStatusUpdate(@Param("executeStatus") String executeStatus, + @Param("inspectionId") Long inspectionId); + } diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml index a2c0944..e9d9f55 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml @@ -91,6 +91,7 @@ diff --git a/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml index bd0ad5f..ed9981e 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml @@ -19,7 +19,7 @@ id, inspection_id, equipment_id, inspection_time, plan_id, remarks, create_time, update_time - SELECT r.id AS id, r.inspection_id AS inspectionId, @@ -41,7 +41,7 @@ eqpt_inspection_equipment_relation r LEFT JOIN eqpt_equipment_info e ON e.id = r.equipment_id LEFT JOIN eqpt_plan p ON p.id = r.plan_id - AND r.inspection_id = #{inspectionId} + WHERE r.inspection_id = #{inspectionId} diff --git a/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml index 3aeb4a4..1c23860 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml @@ -67,4 +67,18 @@ LIMIT 1 + + update + eqpt_plan_equipment_relation r1, + eqpt_plan p, + eqpt_inspection_equipment_relation r2 + set r1.execute_status = #{executeStatus}, + r1.execute_time = r2.inspection_time + where r1.plan_id = p.id + and p.year = YEAR(NOW()) + and r1.execute_status = '0' + and r1.equipment_id = r2.equipment_id + and r2.inspection_id = #{inspectionId} + + diff --git a/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml index 93a8dc8..a2e8a11 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml @@ -29,7 +29,7 @@ n.notify_user as notifyUser, n.notify_dept as notifyDept, n.plan_id as planId, - p.plan_type as planType, + p.plan_category as planCategory, p.create_user_id as createUserId, p.create_user_name as createUserName, p.create_dept_id as createDeptId, diff --git a/casic-metering-eqpt-api/pom.xml b/casic-metering-eqpt-api/pom.xml index 456fdbf..99f40ca 100644 --- a/casic-metering-eqpt-api/pom.xml +++ b/casic-metering-eqpt-api/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -18,13 +18,13 @@ com.casic casic-metering-service - 2.0.0 + 1.0.0.0 com.casic casic-metering-job - 2.0.0 + 1.0.0.0 org.springframework.boot diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java index 268fb3a..06cb258 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java @@ -84,4 +84,13 @@ return businessOrderService.updateOrder(businessOrder); } + @ApiOperation("任务单取消") + @PostMapping("/cancel") + public ReturnDTO receiveOrder(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return businessOrderService.updateStatusById(idDTO.getId(), OrderStatusDictEnum.ALREADY_CANCEL); + } + } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java index 9456479..9717b78 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java @@ -16,6 +16,7 @@ import com.casic.missiles.dto.plan.PlanQueryForm; import com.casic.missiles.model.equipment.EquipmentInfoApproval; import com.casic.missiles.model.plan.Plan; +import com.casic.missiles.model.plan.PlanEquipmentRelation; import com.casic.missiles.service.ICommonApprovalService; import com.casic.missiles.service.plan.IPlanEquipmentRelationService; import com.casic.missiles.service.plan.IPlanService; @@ -76,7 +77,7 @@ }) @ApiOperation("计量计划详情-计划列表展开") @GetMapping("/relationList") - public ReturnDTO> relationList(Long planId,String equipmentName) { + public ReturnDTO> relationList(Long planId, String equipmentName) { return ReturnUtil.success(relationService.listByPlanAndName(planId,equipmentName)); } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java index 92e8e95..436fd8f 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java @@ -7,6 +7,7 @@ import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.equipment.EquipmentAggr; import com.casic.missiles.model.plan.PlanNotify; +import com.casic.missiles.model.plan.PlanNotifyRelation; import com.casic.missiles.service.plan.IPlanNotifyRelationService; import com.casic.missiles.service.plan.IPlanNotifyService; import io.swagger.annotations.Api; @@ -71,7 +72,7 @@ }) @ApiOperation("送检通知详情-送检列表展开") @GetMapping("/relationList") - public ReturnDTO> relationList(Long notifyId,String equipmentName) { + public ReturnDTO> relationList(Long notifyId, String equipmentName) { return ReturnUtil.success(relationService.listByNameAndNotify(equipmentName,notifyId)); } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java index 0090684..7f04e81 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java @@ -32,16 +32,14 @@ private final IRemindConfigService remindConfigService; @ApiOperation("编辑") - @RequestMapping("update") - @PostMapping + @PostMapping("update") public ReturnDTO update(@RequestBody RemindConfig remindConfig){ remindConfigService.updateById(remindConfig); return ReturnUtil.success(); } @ApiOperation("分页列表") - @RequestMapping("listPage") - @GetMapping + @GetMapping("listPage") public ReturnDTO> listPage(){ Page page = PageFactory.defaultPage(); page = remindConfigService.listScopePage(page); diff --git a/casic-metering-job/pom.xml b/casic-metering-job/pom.xml index 237e930..0a68bc1 100644 --- a/casic-metering-job/pom.xml +++ b/casic-metering-job/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -14,12 +14,12 @@ com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.github.oshi @@ -61,7 +61,7 @@ com.casic casic-metering-service - 2.0.0 + 1.0.0.0 compile diff --git a/casic-metering-model/pom.xml b/casic-metering-model/pom.xml index 31a2491..8ec8258 100644 --- a/casic-metering-model/pom.xml +++ b/casic-metering-model/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 diff --git a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java index 3974e29..0b7172c 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java @@ -26,6 +26,8 @@ String PLAN_CATEGORY = DICT_PREFIX + "PlanType"; String PLAN_EXECUTE_STATUS = DICT_PREFIX + "PlanExecuteStatus"; + + String PLAN_CHECK_COMPLETION = DICT_PREFIX + "PlanCheckCompletion"; //实施状态 String EFFECTIVE_STATUS = "effectiveStatus"; //文件类别 diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java index 7281705..3e4c232 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java @@ -26,18 +26,18 @@ @ApiModelProperty(value = "委托方id", dataType = "String") private String customerId; - @ApiModelProperty(value = "委托方编号", dataType = "String") - private String customerNo; - @ApiModelProperty(value = "委托方名称", dataType = "String") private String customerName; + /** + * 检定(校准)单位(固定值) + */ + @ApiModelProperty(value = "溯源单位(检定(校准)单位)", dataType = "String") + private String measureCompany; + @ApiModelProperty(value = "送检人", dataType = "String") private String deliverer; - @TableField(exist = false) - @ApiModelProperty(value = "样品数量", dataType = "String") - private Integer sampleCount; @ApiModelProperty(value = "接收状态(包括接收相关状态和检测完成状态)", dataType = "String") @DictCodeField(message = "接收状态不合法", cacheName = MeterDictCode.ORDER_STATUS) diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java index e0b4091..66809a7 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java @@ -16,6 +16,7 @@ import lombok.NoArgsConstructor; import lombok.Setter; +import static com.casic.missiles.constants.MeterDictCode.PLAN_CHECK_COMPLETION; import static com.casic.missiles.constants.MeterDictCode.PLAN_EXECUTE_STATUS; /** @@ -81,7 +82,12 @@ */ @ApiModelProperty("检定完成度") @TableField("check_completion") + @DictCodeField(cacheName = PLAN_CHECK_COMPLETION) private String checkCompletion; + + @ApiModelProperty("检定完成度名称") + @TableField(exist = false) + private String checkCompletionName; /** * 检定完成时间 */ diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java index ae10d36..c7d478c 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java @@ -8,6 +8,8 @@ import java.time.LocalDateTime; import java.util.Date; +import com.casic.missiles.annotation.DictCodeField; +import com.casic.missiles.constants.MeterDictCode; import io.swagger.annotations.ApiModelProperty; import lombok.Getter; import lombok.Setter; @@ -76,6 +78,43 @@ @TableField("plan_id") private Long planId; + @ApiModelProperty("计划分类") + @TableField(exist = false) + @DictCodeField(cacheName = MeterDictCode.PLAN_CATEGORY) + private String planCategory; + + @ApiModelProperty("计划分类名称") + @TableField(exist = false) + private String planCategoryName; + + /** + * 创建人id + */ + @ApiModelProperty("创建人id") + @TableField(exist = false) + private Long createUserId; + + /** + * 创建人姓名 + */ + @ApiModelProperty("创建人姓名") + @TableField(exist = false) + private String createUserName; + + /** + * 创建单位id + */ + @ApiModelProperty("创建单位id") + @TableField(exist = false) + private Long createDeptId; + + /** + * 创建单位名称 + */ + @ApiModelProperty("创建单位名称") + @TableField(exist = false) + private String createDeptName; + /** * 创建时间 */ diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java index f506553..7aa0b79 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java @@ -7,10 +7,16 @@ import java.time.LocalDateTime; import java.util.Date; +import com.casic.missiles.annotation.DictCodeField; import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; import lombok.Getter; +import lombok.NoArgsConstructor; import lombok.Setter; +import static com.casic.missiles.constants.MeterDictCode.PLAN_CHECK_COMPLETION; +import static com.casic.missiles.constants.MeterDictCode.PLAN_EXECUTE_STATUS; + /** *

* 受检设备-计量计划-送检通知关联表 @@ -21,6 +27,8 @@ */ @Getter @Setter +@NoArgsConstructor +@AllArgsConstructor @TableName("eqpt_plan_notify_relation") public class PlanNotifyRelation implements Serializable { @@ -128,7 +136,15 @@ */ @ApiModelProperty("执行状态") @TableField(exist = false) + @DictCodeField(cacheName = PLAN_EXECUTE_STATUS) private String executeStatus; + + /** + * 执行状态名称 + */ + @ApiModelProperty("执行状态名称") + @TableField(exist = false) + private String executeStatusName; /** * 执行时间 */ @@ -140,7 +156,12 @@ */ @ApiModelProperty("检定完成度") @TableField(exist = false) + @DictCodeField(cacheName = PLAN_CHECK_COMPLETION) private String checkCompletion; + + @ApiModelProperty("检定完成度名称") + @TableField(exist = false) + private String checkCompletionName; /** * 检定完成时间 */ @@ -148,6 +169,7 @@ @TableField(exist = false) private Date checkFinishTime; + public PlanNotifyRelation(Long notifyId, Long planRelationId) { this.notifyId = notifyId; this.planRelationId = planRelationId; diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/SampleStatueUpdate.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/SampleStatueUpdate.java index bdc2abe..b27b122 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/SampleStatueUpdate.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/SampleStatueUpdate.java @@ -19,6 +19,6 @@ @ApiModelProperty(value = "样品状态",required = true) private String sampleStatus; - @ApiModelProperty(value = "检定完成时间",required = true) + @ApiModelProperty(value = "检定完成时间",required = false) private Date finishTime; } diff --git a/casic-metering-service/pom.xml b/casic-metering-service/pom.xml index c146795..62c6519 100644 --- a/casic-metering-service/pom.xml +++ b/casic-metering-service/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -16,19 +16,19 @@ com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.casic casic-metering-common - 2.0.0 + 1.0.0.0 org.springframework.boot diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBizBusinessOrderInfoService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBizBusinessOrderInfoService.java index 5f93b15..f7010f6 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBizBusinessOrderInfoService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBizBusinessOrderInfoService.java @@ -28,5 +28,5 @@ ReturnDTO updateStatusById(Long id, String alreadyReceived); - ReturnDTO backOrder(OrderBackRequest orderBackRequest, String alreadyBack); + } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java index aa53fed..c2f939d 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java @@ -26,6 +26,8 @@ EquipmentInfoForm detail(Long equipmentId); + List allCertificate(Long equipmentId,String equipmentType); + boolean updateEquipmentStatus(Long equipmentId,String usageStatus); boolean updateCertificateValid(Long equipmentId, Date certificateValid); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/business/BizBusinessOrderInfoServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/business/BizBusinessOrderInfoServiceImpl.java index 79c720d..31bd60c 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/business/BizBusinessOrderInfoServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/business/BizBusinessOrderInfoServiceImpl.java @@ -1,8 +1,10 @@ package com.casic.missiles.service.impl.business; +import cn.hutool.core.collection.CollUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.business.OrderBackRequest; @@ -44,18 +46,18 @@ private final BusinessOrderListResponseMapper orderListResponseMapper; private final IBizBusinessOrderSampleRelationService sampleRelationService; private final BizBusinessOrderSampleRelationMapper sampleRelationMapper; + private final AbstractPermissionContext permissionContext; @Override public Page orderListPage(Page page, OrderListRequest request) throws Exception { QueryWrapper wrapper = listParamWrapperBuilder(request); + + // 查找本单位提交的 + Long deptId = permissionContext.getAuthService().getLoginUser().getDeptId(); + List parentDeptIds = permissionContext.getDeptService().getParentListById(deptId); + wrapper.and(i->i.eq("customer_id",deptId).or(CollUtil.isNotEmpty(parentDeptIds)).in("customer_id",parentDeptIds)); + Page resultPage = orderListResponseMapper.selectPage(page, wrapper); - List orderSampleList = sampleRelationMapper.selectList(null); - Map> orderSampleMap = orderSampleList.stream().collect( - Collectors.groupingBy(BizBusinessOrderSampleRelation::getOrderId) - ); - resultPage.getRecords().forEach( - orderSample -> orderSample.setSampleCount(orderSampleMap.containsKey(orderSample.getId()) ? orderSampleMap.get(orderSample.getId()).size() : 0) - ); for (OrderListResponse customerAdviceInfo : resultPage.getRecords()) { DictCodeUtils.convertDictCodeToName(customerAdviceInfo); } @@ -118,24 +120,13 @@ throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } - @Override - public ReturnDTO backOrder(OrderBackRequest orderBackRequest, String alreadyBack) { - BizBusinessOrderInfo businessOrder = new BizBusinessOrderInfo(); - businessOrder.setId(orderBackRequest.getId()); - businessOrder.setReceiveIllustrate(orderBackRequest.getBackReason()); - businessOrder.setReceiveStatus(alreadyBack); - if(this.baseMapper.updateById(businessOrder) > 0){ - return ReturnUtil.success(); - } - throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); - } private void initOrderInfo(BizBusinessOrderInfo businessOrder) { Long maxNo = this.baseMapper.selectMaxOrderNo(); String orderNo = NumberGeneratorUtil.getContactNo(PrefixCodeEnum.ORDER_PREFIX, maxNo); businessOrder.setCreateUserId(businessOrder.getUserId()); businessOrder.setCreateUserName(businessOrder.getUserName()); - businessOrder.setReceiveStatus(OrderStatusDictEnum.ALREADY_RECEIVED); + businessOrder.setReceiveStatus(OrderStatusDictEnum.NOT_RECEIVED); businessOrder.setOrderNo(orderNo); } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoApprovalServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoApprovalServiceImpl.java index bab78ce..5e9824d 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoApprovalServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoApprovalServiceImpl.java @@ -97,14 +97,7 @@ .setIgnoreError(true); BeanUtil.copyProperties(equipmentInfo, approvalForm, options); } - // 编辑申请:不需要审批的字段直接生效 - if (UPDATE == approvalForm.getApprovalType()) { - EquipmentInfo equipmentInfo = equipmentInfoService.getById(approvalForm.getEquipmentId()); - this.simpleUpdate(approvalForm, equipmentInfo); - if (!needApproval(approvalForm, equipmentInfo)) { - return approvalForm.getId(); - } - } + // 0. 生成设备id if (ObjectUtil.isEmpty(approvalForm.getEquipmentId())) { approvalForm.setEquipmentId(IdWorker.getId()); @@ -123,6 +116,14 @@ if (EQUIPMENT_TYPE_SPECIAL.equals(approvalForm.getEquipmentType())) { specialCertificateService.saveCertificateList(approvalForm.getEquipmentId(), approvalForm.getCertificateList()); } + // 编辑申请:不需要审批的字段直接生效 + if (UPDATE == approvalForm.getApprovalType()) { + EquipmentInfo equipmentInfo = equipmentInfoService.getById(approvalForm.getEquipmentId()); + this.simpleUpdate(approvalForm, equipmentInfo); + if (!needApproval(approvalForm, equipmentInfo)) { + return approvalForm.getId(); + } + } this.saveOrUpdate(approvalForm); // 4. 返回申请记录id return approvalForm.getId(); @@ -226,12 +227,13 @@ public EquipmentApprovalForm approvalInfoDetail(Long approvalId) { EquipmentInfoApproval approval = this.getById(approvalId); EquipmentApprovalForm info = new EquipmentApprovalForm(); + warpper(info); BeanUtil.copyProperties(approval,info); if (ObjectUtil.isNotEmpty(info)) { info.setAttachments(attachmentService.selectByEquipment(info.getEquipmentId())); info.setTechnicalTargetList(technicalTargetService.selectByEquipment(info.getEquipmentId())); info.setGroupInfos(groupInfoService.selectByEquipment(info.getEquipmentId())); - info.setCertificateList(new ArrayList<>()); // todo + info.setCertificateList(equipmentInfoService.allCertificate(info.getEquipmentId(),info.getEquipmentType())); } return info; } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoServiceImpl.java index e8a35a2..469317b 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoServiceImpl.java @@ -121,6 +121,7 @@ EquipmentInfoForm infoForm = new EquipmentInfoForm(); EquipmentInfo equipmentInfo = this.getById(equipmentId); if(ObjectUtil.isNotEmpty(equipmentInfo)){ + warpEquipmentInfo(equipmentInfo); equipmentInfo.setCompanyName(permissionContext.getDeptService().getDeptName(equipmentInfo.getCompanyId())); equipmentInfo.setDeptName(permissionContext.getDeptService().getDeptName(equipmentInfo.getDeptId())); equipmentInfo.setGroupInfos(groupInfoService.selectByEquipment(equipmentId)); @@ -134,7 +135,8 @@ return infoForm; } - private List allCertificate(Long equipmentId,String equipmentType){ + @Override + public List allCertificate(Long equipmentId,String equipmentType){ List listAll = new ArrayList<>(); listAll.addAll(this.baseMapper.bizCertificateList(equipmentId)); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentTechnicalTargetServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentTechnicalTargetServiceImpl.java index fcd4cb0..7ad7da3 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentTechnicalTargetServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentTechnicalTargetServiceImpl.java @@ -38,7 +38,7 @@ public boolean removeByEquipment(Long equipmentId) { QueryWrapper wrapper = new QueryWrapper<>(); wrapper.eq("equipment_id",equipmentId); - wrapper.notExists("(select id from eqpt_equipment_info i where i.id = eqpt_equipment_attachment.equipment_id)"); + wrapper.notExists("(select id from eqpt_equipment_info i where i.id = eqpt_equipment_technical_target.equipment_id)"); return this.remove(wrapper); } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/InspectionApprovalServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/InspectionApprovalServiceImpl.java index 80f34f4..a726353 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/InspectionApprovalServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/InspectionApprovalServiceImpl.java @@ -27,6 +27,7 @@ import org.springframework.transaction.annotation.Transactional; import java.util.List; +import java.util.Map; import java.util.stream.Collectors; import static com.casic.missiles.enums.equipment.EquipmentTypeEnum.EQUIPMENT_TYPE_NORMAL; @@ -77,17 +78,8 @@ @Transactional public void finishApproval(Long approvalId) { super.finishApproval(approvalId); - InspectionApproval approval = this.getById(approvalId); - List relations = relationService.listByInspection(approvalId); - if(CollUtil.isNotEmpty(relations)){ - List equipments = relations.stream().map(InspectionEquipmentRelation::getEquipmentId).collect(Collectors.toList()); - UpdateWrapper updateWrapper = new UpdateWrapper<>(); - updateWrapper.set("execute_status",INSPECTION_TYPE_EARLY.equals(approval.getApprovalType()) ? ExecuteStatusEnum.EARLY : ExecuteStatusEnum.DELAY); - updateWrapper.in("equipment_id",equipments); - updateWrapper.eq("execute_status",ExecuteStatusEnum.UN_EXECUTE); - planEquipmentRelationService.update(updateWrapper); - } + planEquipmentRelationService.inspectionStatusUpdate(INSPECTION_TYPE_EARLY.equals(approval.getApprovalType()) ? ExecuteStatusEnum.EARLY : ExecuteStatusEnum.DELAY,approvalId); } @Override diff --git a/casic-metering-common/pom.xml b/casic-metering-common/pom.xml index 33f75c8..e431f85 100644 --- a/casic-metering-common/pom.xml +++ b/casic-metering-common/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -17,12 +17,12 @@ com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.github.oshi diff --git a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java index 0f37e03..250d886 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java @@ -12,6 +12,7 @@ import java.lang.reflect.Field; import java.lang.reflect.Method; import java.lang.reflect.Modifier; +import java.util.ArrayList; import java.util.Arrays; import java.util.List; @@ -26,8 +27,16 @@ * @return 全部相同返回true,有不相同的返回false */ public static boolean fieldCompare(Object beforeObj, Object afterObj, List fields) { - Field[] beforeFields = beforeObj.getClass().getDeclaredFields(); - Field[] afterFields = afterObj.getClass().getDeclaredFields(); + List beforeFieldList = Arrays.asList(beforeObj.getClass().getDeclaredFields()); + List superBeforeFileList = Arrays.asList(beforeObj.getClass().getSuperclass().getDeclaredFields()); + beforeFieldList.addAll(new ArrayList<>(superBeforeFileList)); + Field[] beforeFields = beforeFieldList.toArray(new Field[beforeFieldList.size()]); + + List afterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getDeclaredFields())); + List superAfterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getSuperclass().getDeclaredFields())); + afterFieldList.addAll(superAfterFieldList); + Field[] afterFields = afterFieldList.toArray(new Field[beforeFieldList.size()]); + Field.setAccessible(beforeFields, true); //设置私有属性可以访问到 Field.setAccessible(afterFields, true); //循环遍历比较属性 @@ -36,15 +45,19 @@ if (ObjectUtil.isNotEmpty(fields) && fields.contains(beforeFields[i].getName())) { try { Object beforeValue = beforeFields[i].get(beforeObj); //取出对应的属性值 - Object afterValue = afterFields[i].get(afterObj); + Object afterValue = null; + for (int j = 0; j < afterFields.length; j++) { + if(afterFields[j].getName().equals(beforeFields[i].getName())){ + afterValue = afterFields[j].get(afterObj); //取出对应的属性值 + break; + } + } if ((beforeValue != null && !"".equals(beforeValue) && !beforeValue.equals(afterValue)) || ((beforeValue == null || "".equals(beforeValue)) && afterValue != null)) { return false; } } catch (IllegalAccessException e) { log.error(e.getMessage()); } - - } } } diff --git a/casic-metering-dao/pom.xml b/casic-metering-dao/pom.xml index 64c6fbf..6cffff6 100644 --- a/casic-metering-dao/pom.xml +++ b/casic-metering-dao/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -16,7 +16,7 @@ com.casic casic-metering-model - 2.0.0 + 1.0.0.0 diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java index 548081b..f8ae80b 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java @@ -22,4 +22,9 @@ @Param("equipmentName") String equipmentName); PlanEquipmentStatus getPlanEquipmentStatus(@Param("equipmentId")Long equipmentId); + + + void inspectionStatusUpdate(@Param("executeStatus") String executeStatus, + @Param("inspectionId") Long inspectionId); + } diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml index a2c0944..e9d9f55 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml @@ -91,6 +91,7 @@ diff --git a/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml index bd0ad5f..ed9981e 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml @@ -19,7 +19,7 @@ id, inspection_id, equipment_id, inspection_time, plan_id, remarks, create_time, update_time - SELECT r.id AS id, r.inspection_id AS inspectionId, @@ -41,7 +41,7 @@ eqpt_inspection_equipment_relation r LEFT JOIN eqpt_equipment_info e ON e.id = r.equipment_id LEFT JOIN eqpt_plan p ON p.id = r.plan_id - AND r.inspection_id = #{inspectionId} + WHERE r.inspection_id = #{inspectionId} diff --git a/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml index 3aeb4a4..1c23860 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml @@ -67,4 +67,18 @@ LIMIT 1 + + update + eqpt_plan_equipment_relation r1, + eqpt_plan p, + eqpt_inspection_equipment_relation r2 + set r1.execute_status = #{executeStatus}, + r1.execute_time = r2.inspection_time + where r1.plan_id = p.id + and p.year = YEAR(NOW()) + and r1.execute_status = '0' + and r1.equipment_id = r2.equipment_id + and r2.inspection_id = #{inspectionId} + + diff --git a/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml index 93a8dc8..a2e8a11 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml @@ -29,7 +29,7 @@ n.notify_user as notifyUser, n.notify_dept as notifyDept, n.plan_id as planId, - p.plan_type as planType, + p.plan_category as planCategory, p.create_user_id as createUserId, p.create_user_name as createUserName, p.create_dept_id as createDeptId, diff --git a/casic-metering-eqpt-api/pom.xml b/casic-metering-eqpt-api/pom.xml index 456fdbf..99f40ca 100644 --- a/casic-metering-eqpt-api/pom.xml +++ b/casic-metering-eqpt-api/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -18,13 +18,13 @@ com.casic casic-metering-service - 2.0.0 + 1.0.0.0 com.casic casic-metering-job - 2.0.0 + 1.0.0.0 org.springframework.boot diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java index 268fb3a..06cb258 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java @@ -84,4 +84,13 @@ return businessOrderService.updateOrder(businessOrder); } + @ApiOperation("任务单取消") + @PostMapping("/cancel") + public ReturnDTO receiveOrder(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return businessOrderService.updateStatusById(idDTO.getId(), OrderStatusDictEnum.ALREADY_CANCEL); + } + } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java index 9456479..9717b78 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java @@ -16,6 +16,7 @@ import com.casic.missiles.dto.plan.PlanQueryForm; import com.casic.missiles.model.equipment.EquipmentInfoApproval; import com.casic.missiles.model.plan.Plan; +import com.casic.missiles.model.plan.PlanEquipmentRelation; import com.casic.missiles.service.ICommonApprovalService; import com.casic.missiles.service.plan.IPlanEquipmentRelationService; import com.casic.missiles.service.plan.IPlanService; @@ -76,7 +77,7 @@ }) @ApiOperation("计量计划详情-计划列表展开") @GetMapping("/relationList") - public ReturnDTO> relationList(Long planId,String equipmentName) { + public ReturnDTO> relationList(Long planId, String equipmentName) { return ReturnUtil.success(relationService.listByPlanAndName(planId,equipmentName)); } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java index 92e8e95..436fd8f 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java @@ -7,6 +7,7 @@ import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.equipment.EquipmentAggr; import com.casic.missiles.model.plan.PlanNotify; +import com.casic.missiles.model.plan.PlanNotifyRelation; import com.casic.missiles.service.plan.IPlanNotifyRelationService; import com.casic.missiles.service.plan.IPlanNotifyService; import io.swagger.annotations.Api; @@ -71,7 +72,7 @@ }) @ApiOperation("送检通知详情-送检列表展开") @GetMapping("/relationList") - public ReturnDTO> relationList(Long notifyId,String equipmentName) { + public ReturnDTO> relationList(Long notifyId, String equipmentName) { return ReturnUtil.success(relationService.listByNameAndNotify(equipmentName,notifyId)); } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java index 0090684..7f04e81 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java @@ -32,16 +32,14 @@ private final IRemindConfigService remindConfigService; @ApiOperation("编辑") - @RequestMapping("update") - @PostMapping + @PostMapping("update") public ReturnDTO update(@RequestBody RemindConfig remindConfig){ remindConfigService.updateById(remindConfig); return ReturnUtil.success(); } @ApiOperation("分页列表") - @RequestMapping("listPage") - @GetMapping + @GetMapping("listPage") public ReturnDTO> listPage(){ Page page = PageFactory.defaultPage(); page = remindConfigService.listScopePage(page); diff --git a/casic-metering-job/pom.xml b/casic-metering-job/pom.xml index 237e930..0a68bc1 100644 --- a/casic-metering-job/pom.xml +++ b/casic-metering-job/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -14,12 +14,12 @@ com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.github.oshi @@ -61,7 +61,7 @@ com.casic casic-metering-service - 2.0.0 + 1.0.0.0 compile diff --git a/casic-metering-model/pom.xml b/casic-metering-model/pom.xml index 31a2491..8ec8258 100644 --- a/casic-metering-model/pom.xml +++ b/casic-metering-model/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 diff --git a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java index 3974e29..0b7172c 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java @@ -26,6 +26,8 @@ String PLAN_CATEGORY = DICT_PREFIX + "PlanType"; String PLAN_EXECUTE_STATUS = DICT_PREFIX + "PlanExecuteStatus"; + + String PLAN_CHECK_COMPLETION = DICT_PREFIX + "PlanCheckCompletion"; //实施状态 String EFFECTIVE_STATUS = "effectiveStatus"; //文件类别 diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java index 7281705..3e4c232 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java @@ -26,18 +26,18 @@ @ApiModelProperty(value = "委托方id", dataType = "String") private String customerId; - @ApiModelProperty(value = "委托方编号", dataType = "String") - private String customerNo; - @ApiModelProperty(value = "委托方名称", dataType = "String") private String customerName; + /** + * 检定(校准)单位(固定值) + */ + @ApiModelProperty(value = "溯源单位(检定(校准)单位)", dataType = "String") + private String measureCompany; + @ApiModelProperty(value = "送检人", dataType = "String") private String deliverer; - @TableField(exist = false) - @ApiModelProperty(value = "样品数量", dataType = "String") - private Integer sampleCount; @ApiModelProperty(value = "接收状态(包括接收相关状态和检测完成状态)", dataType = "String") @DictCodeField(message = "接收状态不合法", cacheName = MeterDictCode.ORDER_STATUS) diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java index e0b4091..66809a7 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java @@ -16,6 +16,7 @@ import lombok.NoArgsConstructor; import lombok.Setter; +import static com.casic.missiles.constants.MeterDictCode.PLAN_CHECK_COMPLETION; import static com.casic.missiles.constants.MeterDictCode.PLAN_EXECUTE_STATUS; /** @@ -81,7 +82,12 @@ */ @ApiModelProperty("检定完成度") @TableField("check_completion") + @DictCodeField(cacheName = PLAN_CHECK_COMPLETION) private String checkCompletion; + + @ApiModelProperty("检定完成度名称") + @TableField(exist = false) + private String checkCompletionName; /** * 检定完成时间 */ diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java index ae10d36..c7d478c 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java @@ -8,6 +8,8 @@ import java.time.LocalDateTime; import java.util.Date; +import com.casic.missiles.annotation.DictCodeField; +import com.casic.missiles.constants.MeterDictCode; import io.swagger.annotations.ApiModelProperty; import lombok.Getter; import lombok.Setter; @@ -76,6 +78,43 @@ @TableField("plan_id") private Long planId; + @ApiModelProperty("计划分类") + @TableField(exist = false) + @DictCodeField(cacheName = MeterDictCode.PLAN_CATEGORY) + private String planCategory; + + @ApiModelProperty("计划分类名称") + @TableField(exist = false) + private String planCategoryName; + + /** + * 创建人id + */ + @ApiModelProperty("创建人id") + @TableField(exist = false) + private Long createUserId; + + /** + * 创建人姓名 + */ + @ApiModelProperty("创建人姓名") + @TableField(exist = false) + private String createUserName; + + /** + * 创建单位id + */ + @ApiModelProperty("创建单位id") + @TableField(exist = false) + private Long createDeptId; + + /** + * 创建单位名称 + */ + @ApiModelProperty("创建单位名称") + @TableField(exist = false) + private String createDeptName; + /** * 创建时间 */ diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java index f506553..7aa0b79 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java @@ -7,10 +7,16 @@ import java.time.LocalDateTime; import java.util.Date; +import com.casic.missiles.annotation.DictCodeField; import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; import lombok.Getter; +import lombok.NoArgsConstructor; import lombok.Setter; +import static com.casic.missiles.constants.MeterDictCode.PLAN_CHECK_COMPLETION; +import static com.casic.missiles.constants.MeterDictCode.PLAN_EXECUTE_STATUS; + /** *

* 受检设备-计量计划-送检通知关联表 @@ -21,6 +27,8 @@ */ @Getter @Setter +@NoArgsConstructor +@AllArgsConstructor @TableName("eqpt_plan_notify_relation") public class PlanNotifyRelation implements Serializable { @@ -128,7 +136,15 @@ */ @ApiModelProperty("执行状态") @TableField(exist = false) + @DictCodeField(cacheName = PLAN_EXECUTE_STATUS) private String executeStatus; + + /** + * 执行状态名称 + */ + @ApiModelProperty("执行状态名称") + @TableField(exist = false) + private String executeStatusName; /** * 执行时间 */ @@ -140,7 +156,12 @@ */ @ApiModelProperty("检定完成度") @TableField(exist = false) + @DictCodeField(cacheName = PLAN_CHECK_COMPLETION) private String checkCompletion; + + @ApiModelProperty("检定完成度名称") + @TableField(exist = false) + private String checkCompletionName; /** * 检定完成时间 */ @@ -148,6 +169,7 @@ @TableField(exist = false) private Date checkFinishTime; + public PlanNotifyRelation(Long notifyId, Long planRelationId) { this.notifyId = notifyId; this.planRelationId = planRelationId; diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/SampleStatueUpdate.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/SampleStatueUpdate.java index bdc2abe..b27b122 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/SampleStatueUpdate.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/SampleStatueUpdate.java @@ -19,6 +19,6 @@ @ApiModelProperty(value = "样品状态",required = true) private String sampleStatus; - @ApiModelProperty(value = "检定完成时间",required = true) + @ApiModelProperty(value = "检定完成时间",required = false) private Date finishTime; } diff --git a/casic-metering-service/pom.xml b/casic-metering-service/pom.xml index c146795..62c6519 100644 --- a/casic-metering-service/pom.xml +++ b/casic-metering-service/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -16,19 +16,19 @@ com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.casic casic-metering-common - 2.0.0 + 1.0.0.0 org.springframework.boot diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBizBusinessOrderInfoService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBizBusinessOrderInfoService.java index 5f93b15..f7010f6 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBizBusinessOrderInfoService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBizBusinessOrderInfoService.java @@ -28,5 +28,5 @@ ReturnDTO updateStatusById(Long id, String alreadyReceived); - ReturnDTO backOrder(OrderBackRequest orderBackRequest, String alreadyBack); + } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java index aa53fed..c2f939d 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java @@ -26,6 +26,8 @@ EquipmentInfoForm detail(Long equipmentId); + List allCertificate(Long equipmentId,String equipmentType); + boolean updateEquipmentStatus(Long equipmentId,String usageStatus); boolean updateCertificateValid(Long equipmentId, Date certificateValid); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/business/BizBusinessOrderInfoServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/business/BizBusinessOrderInfoServiceImpl.java index 79c720d..31bd60c 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/business/BizBusinessOrderInfoServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/business/BizBusinessOrderInfoServiceImpl.java @@ -1,8 +1,10 @@ package com.casic.missiles.service.impl.business; +import cn.hutool.core.collection.CollUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.business.OrderBackRequest; @@ -44,18 +46,18 @@ private final BusinessOrderListResponseMapper orderListResponseMapper; private final IBizBusinessOrderSampleRelationService sampleRelationService; private final BizBusinessOrderSampleRelationMapper sampleRelationMapper; + private final AbstractPermissionContext permissionContext; @Override public Page orderListPage(Page page, OrderListRequest request) throws Exception { QueryWrapper wrapper = listParamWrapperBuilder(request); + + // 查找本单位提交的 + Long deptId = permissionContext.getAuthService().getLoginUser().getDeptId(); + List parentDeptIds = permissionContext.getDeptService().getParentListById(deptId); + wrapper.and(i->i.eq("customer_id",deptId).or(CollUtil.isNotEmpty(parentDeptIds)).in("customer_id",parentDeptIds)); + Page resultPage = orderListResponseMapper.selectPage(page, wrapper); - List orderSampleList = sampleRelationMapper.selectList(null); - Map> orderSampleMap = orderSampleList.stream().collect( - Collectors.groupingBy(BizBusinessOrderSampleRelation::getOrderId) - ); - resultPage.getRecords().forEach( - orderSample -> orderSample.setSampleCount(orderSampleMap.containsKey(orderSample.getId()) ? orderSampleMap.get(orderSample.getId()).size() : 0) - ); for (OrderListResponse customerAdviceInfo : resultPage.getRecords()) { DictCodeUtils.convertDictCodeToName(customerAdviceInfo); } @@ -118,24 +120,13 @@ throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } - @Override - public ReturnDTO backOrder(OrderBackRequest orderBackRequest, String alreadyBack) { - BizBusinessOrderInfo businessOrder = new BizBusinessOrderInfo(); - businessOrder.setId(orderBackRequest.getId()); - businessOrder.setReceiveIllustrate(orderBackRequest.getBackReason()); - businessOrder.setReceiveStatus(alreadyBack); - if(this.baseMapper.updateById(businessOrder) > 0){ - return ReturnUtil.success(); - } - throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); - } private void initOrderInfo(BizBusinessOrderInfo businessOrder) { Long maxNo = this.baseMapper.selectMaxOrderNo(); String orderNo = NumberGeneratorUtil.getContactNo(PrefixCodeEnum.ORDER_PREFIX, maxNo); businessOrder.setCreateUserId(businessOrder.getUserId()); businessOrder.setCreateUserName(businessOrder.getUserName()); - businessOrder.setReceiveStatus(OrderStatusDictEnum.ALREADY_RECEIVED); + businessOrder.setReceiveStatus(OrderStatusDictEnum.NOT_RECEIVED); businessOrder.setOrderNo(orderNo); } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoApprovalServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoApprovalServiceImpl.java index bab78ce..5e9824d 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoApprovalServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoApprovalServiceImpl.java @@ -97,14 +97,7 @@ .setIgnoreError(true); BeanUtil.copyProperties(equipmentInfo, approvalForm, options); } - // 编辑申请:不需要审批的字段直接生效 - if (UPDATE == approvalForm.getApprovalType()) { - EquipmentInfo equipmentInfo = equipmentInfoService.getById(approvalForm.getEquipmentId()); - this.simpleUpdate(approvalForm, equipmentInfo); - if (!needApproval(approvalForm, equipmentInfo)) { - return approvalForm.getId(); - } - } + // 0. 生成设备id if (ObjectUtil.isEmpty(approvalForm.getEquipmentId())) { approvalForm.setEquipmentId(IdWorker.getId()); @@ -123,6 +116,14 @@ if (EQUIPMENT_TYPE_SPECIAL.equals(approvalForm.getEquipmentType())) { specialCertificateService.saveCertificateList(approvalForm.getEquipmentId(), approvalForm.getCertificateList()); } + // 编辑申请:不需要审批的字段直接生效 + if (UPDATE == approvalForm.getApprovalType()) { + EquipmentInfo equipmentInfo = equipmentInfoService.getById(approvalForm.getEquipmentId()); + this.simpleUpdate(approvalForm, equipmentInfo); + if (!needApproval(approvalForm, equipmentInfo)) { + return approvalForm.getId(); + } + } this.saveOrUpdate(approvalForm); // 4. 返回申请记录id return approvalForm.getId(); @@ -226,12 +227,13 @@ public EquipmentApprovalForm approvalInfoDetail(Long approvalId) { EquipmentInfoApproval approval = this.getById(approvalId); EquipmentApprovalForm info = new EquipmentApprovalForm(); + warpper(info); BeanUtil.copyProperties(approval,info); if (ObjectUtil.isNotEmpty(info)) { info.setAttachments(attachmentService.selectByEquipment(info.getEquipmentId())); info.setTechnicalTargetList(technicalTargetService.selectByEquipment(info.getEquipmentId())); info.setGroupInfos(groupInfoService.selectByEquipment(info.getEquipmentId())); - info.setCertificateList(new ArrayList<>()); // todo + info.setCertificateList(equipmentInfoService.allCertificate(info.getEquipmentId(),info.getEquipmentType())); } return info; } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoServiceImpl.java index e8a35a2..469317b 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoServiceImpl.java @@ -121,6 +121,7 @@ EquipmentInfoForm infoForm = new EquipmentInfoForm(); EquipmentInfo equipmentInfo = this.getById(equipmentId); if(ObjectUtil.isNotEmpty(equipmentInfo)){ + warpEquipmentInfo(equipmentInfo); equipmentInfo.setCompanyName(permissionContext.getDeptService().getDeptName(equipmentInfo.getCompanyId())); equipmentInfo.setDeptName(permissionContext.getDeptService().getDeptName(equipmentInfo.getDeptId())); equipmentInfo.setGroupInfos(groupInfoService.selectByEquipment(equipmentId)); @@ -134,7 +135,8 @@ return infoForm; } - private List allCertificate(Long equipmentId,String equipmentType){ + @Override + public List allCertificate(Long equipmentId,String equipmentType){ List listAll = new ArrayList<>(); listAll.addAll(this.baseMapper.bizCertificateList(equipmentId)); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentTechnicalTargetServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentTechnicalTargetServiceImpl.java index fcd4cb0..7ad7da3 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentTechnicalTargetServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentTechnicalTargetServiceImpl.java @@ -38,7 +38,7 @@ public boolean removeByEquipment(Long equipmentId) { QueryWrapper wrapper = new QueryWrapper<>(); wrapper.eq("equipment_id",equipmentId); - wrapper.notExists("(select id from eqpt_equipment_info i where i.id = eqpt_equipment_attachment.equipment_id)"); + wrapper.notExists("(select id from eqpt_equipment_info i where i.id = eqpt_equipment_technical_target.equipment_id)"); return this.remove(wrapper); } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/InspectionApprovalServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/InspectionApprovalServiceImpl.java index 80f34f4..a726353 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/InspectionApprovalServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/InspectionApprovalServiceImpl.java @@ -27,6 +27,7 @@ import org.springframework.transaction.annotation.Transactional; import java.util.List; +import java.util.Map; import java.util.stream.Collectors; import static com.casic.missiles.enums.equipment.EquipmentTypeEnum.EQUIPMENT_TYPE_NORMAL; @@ -77,17 +78,8 @@ @Transactional public void finishApproval(Long approvalId) { super.finishApproval(approvalId); - InspectionApproval approval = this.getById(approvalId); - List relations = relationService.listByInspection(approvalId); - if(CollUtil.isNotEmpty(relations)){ - List equipments = relations.stream().map(InspectionEquipmentRelation::getEquipmentId).collect(Collectors.toList()); - UpdateWrapper updateWrapper = new UpdateWrapper<>(); - updateWrapper.set("execute_status",INSPECTION_TYPE_EARLY.equals(approval.getApprovalType()) ? ExecuteStatusEnum.EARLY : ExecuteStatusEnum.DELAY); - updateWrapper.in("equipment_id",equipments); - updateWrapper.eq("execute_status",ExecuteStatusEnum.UN_EXECUTE); - planEquipmentRelationService.update(updateWrapper); - } + planEquipmentRelationService.inspectionStatusUpdate(INSPECTION_TYPE_EARLY.equals(approval.getApprovalType()) ? ExecuteStatusEnum.EARLY : ExecuteStatusEnum.DELAY,approvalId); } @Override diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanEquipmentRelationServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanEquipmentRelationServiceImpl.java index a95a3ac..495239b 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanEquipmentRelationServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanEquipmentRelationServiceImpl.java @@ -134,4 +134,9 @@ updateWrapper.exists(String.format("select id from eqpt_plan b where b.id = eqpt_plan_equipment_relation.plan_id and b.year = %d", Calendar.getInstance().get(Calendar.YEAR))); this.update(updateWrapper); } + + @Override + public void inspectionStatusUpdate(String executeStatus, Long inspectionId) { + this.baseMapper.inspectionStatusUpdate(executeStatus, inspectionId); + } } diff --git a/casic-metering-common/pom.xml b/casic-metering-common/pom.xml index 33f75c8..e431f85 100644 --- a/casic-metering-common/pom.xml +++ b/casic-metering-common/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -17,12 +17,12 @@ com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.github.oshi diff --git a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java index 0f37e03..250d886 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java @@ -12,6 +12,7 @@ import java.lang.reflect.Field; import java.lang.reflect.Method; import java.lang.reflect.Modifier; +import java.util.ArrayList; import java.util.Arrays; import java.util.List; @@ -26,8 +27,16 @@ * @return 全部相同返回true,有不相同的返回false */ public static boolean fieldCompare(Object beforeObj, Object afterObj, List fields) { - Field[] beforeFields = beforeObj.getClass().getDeclaredFields(); - Field[] afterFields = afterObj.getClass().getDeclaredFields(); + List beforeFieldList = Arrays.asList(beforeObj.getClass().getDeclaredFields()); + List superBeforeFileList = Arrays.asList(beforeObj.getClass().getSuperclass().getDeclaredFields()); + beforeFieldList.addAll(new ArrayList<>(superBeforeFileList)); + Field[] beforeFields = beforeFieldList.toArray(new Field[beforeFieldList.size()]); + + List afterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getDeclaredFields())); + List superAfterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getSuperclass().getDeclaredFields())); + afterFieldList.addAll(superAfterFieldList); + Field[] afterFields = afterFieldList.toArray(new Field[beforeFieldList.size()]); + Field.setAccessible(beforeFields, true); //设置私有属性可以访问到 Field.setAccessible(afterFields, true); //循环遍历比较属性 @@ -36,15 +45,19 @@ if (ObjectUtil.isNotEmpty(fields) && fields.contains(beforeFields[i].getName())) { try { Object beforeValue = beforeFields[i].get(beforeObj); //取出对应的属性值 - Object afterValue = afterFields[i].get(afterObj); + Object afterValue = null; + for (int j = 0; j < afterFields.length; j++) { + if(afterFields[j].getName().equals(beforeFields[i].getName())){ + afterValue = afterFields[j].get(afterObj); //取出对应的属性值 + break; + } + } if ((beforeValue != null && !"".equals(beforeValue) && !beforeValue.equals(afterValue)) || ((beforeValue == null || "".equals(beforeValue)) && afterValue != null)) { return false; } } catch (IllegalAccessException e) { log.error(e.getMessage()); } - - } } } diff --git a/casic-metering-dao/pom.xml b/casic-metering-dao/pom.xml index 64c6fbf..6cffff6 100644 --- a/casic-metering-dao/pom.xml +++ b/casic-metering-dao/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -16,7 +16,7 @@ com.casic casic-metering-model - 2.0.0 + 1.0.0.0 diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java index 548081b..f8ae80b 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java @@ -22,4 +22,9 @@ @Param("equipmentName") String equipmentName); PlanEquipmentStatus getPlanEquipmentStatus(@Param("equipmentId")Long equipmentId); + + + void inspectionStatusUpdate(@Param("executeStatus") String executeStatus, + @Param("inspectionId") Long inspectionId); + } diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml index a2c0944..e9d9f55 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml @@ -91,6 +91,7 @@ diff --git a/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml index bd0ad5f..ed9981e 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml @@ -19,7 +19,7 @@ id, inspection_id, equipment_id, inspection_time, plan_id, remarks, create_time, update_time - SELECT r.id AS id, r.inspection_id AS inspectionId, @@ -41,7 +41,7 @@ eqpt_inspection_equipment_relation r LEFT JOIN eqpt_equipment_info e ON e.id = r.equipment_id LEFT JOIN eqpt_plan p ON p.id = r.plan_id - AND r.inspection_id = #{inspectionId} + WHERE r.inspection_id = #{inspectionId} diff --git a/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml index 3aeb4a4..1c23860 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml @@ -67,4 +67,18 @@ LIMIT 1 + + update + eqpt_plan_equipment_relation r1, + eqpt_plan p, + eqpt_inspection_equipment_relation r2 + set r1.execute_status = #{executeStatus}, + r1.execute_time = r2.inspection_time + where r1.plan_id = p.id + and p.year = YEAR(NOW()) + and r1.execute_status = '0' + and r1.equipment_id = r2.equipment_id + and r2.inspection_id = #{inspectionId} + + diff --git a/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml index 93a8dc8..a2e8a11 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml @@ -29,7 +29,7 @@ n.notify_user as notifyUser, n.notify_dept as notifyDept, n.plan_id as planId, - p.plan_type as planType, + p.plan_category as planCategory, p.create_user_id as createUserId, p.create_user_name as createUserName, p.create_dept_id as createDeptId, diff --git a/casic-metering-eqpt-api/pom.xml b/casic-metering-eqpt-api/pom.xml index 456fdbf..99f40ca 100644 --- a/casic-metering-eqpt-api/pom.xml +++ b/casic-metering-eqpt-api/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -18,13 +18,13 @@ com.casic casic-metering-service - 2.0.0 + 1.0.0.0 com.casic casic-metering-job - 2.0.0 + 1.0.0.0 org.springframework.boot diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java index 268fb3a..06cb258 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java @@ -84,4 +84,13 @@ return businessOrderService.updateOrder(businessOrder); } + @ApiOperation("任务单取消") + @PostMapping("/cancel") + public ReturnDTO receiveOrder(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return businessOrderService.updateStatusById(idDTO.getId(), OrderStatusDictEnum.ALREADY_CANCEL); + } + } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java index 9456479..9717b78 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java @@ -16,6 +16,7 @@ import com.casic.missiles.dto.plan.PlanQueryForm; import com.casic.missiles.model.equipment.EquipmentInfoApproval; import com.casic.missiles.model.plan.Plan; +import com.casic.missiles.model.plan.PlanEquipmentRelation; import com.casic.missiles.service.ICommonApprovalService; import com.casic.missiles.service.plan.IPlanEquipmentRelationService; import com.casic.missiles.service.plan.IPlanService; @@ -76,7 +77,7 @@ }) @ApiOperation("计量计划详情-计划列表展开") @GetMapping("/relationList") - public ReturnDTO> relationList(Long planId,String equipmentName) { + public ReturnDTO> relationList(Long planId, String equipmentName) { return ReturnUtil.success(relationService.listByPlanAndName(planId,equipmentName)); } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java index 92e8e95..436fd8f 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java @@ -7,6 +7,7 @@ import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.equipment.EquipmentAggr; import com.casic.missiles.model.plan.PlanNotify; +import com.casic.missiles.model.plan.PlanNotifyRelation; import com.casic.missiles.service.plan.IPlanNotifyRelationService; import com.casic.missiles.service.plan.IPlanNotifyService; import io.swagger.annotations.Api; @@ -71,7 +72,7 @@ }) @ApiOperation("送检通知详情-送检列表展开") @GetMapping("/relationList") - public ReturnDTO> relationList(Long notifyId,String equipmentName) { + public ReturnDTO> relationList(Long notifyId, String equipmentName) { return ReturnUtil.success(relationService.listByNameAndNotify(equipmentName,notifyId)); } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java index 0090684..7f04e81 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java @@ -32,16 +32,14 @@ private final IRemindConfigService remindConfigService; @ApiOperation("编辑") - @RequestMapping("update") - @PostMapping + @PostMapping("update") public ReturnDTO update(@RequestBody RemindConfig remindConfig){ remindConfigService.updateById(remindConfig); return ReturnUtil.success(); } @ApiOperation("分页列表") - @RequestMapping("listPage") - @GetMapping + @GetMapping("listPage") public ReturnDTO> listPage(){ Page page = PageFactory.defaultPage(); page = remindConfigService.listScopePage(page); diff --git a/casic-metering-job/pom.xml b/casic-metering-job/pom.xml index 237e930..0a68bc1 100644 --- a/casic-metering-job/pom.xml +++ b/casic-metering-job/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -14,12 +14,12 @@ com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.github.oshi @@ -61,7 +61,7 @@ com.casic casic-metering-service - 2.0.0 + 1.0.0.0 compile diff --git a/casic-metering-model/pom.xml b/casic-metering-model/pom.xml index 31a2491..8ec8258 100644 --- a/casic-metering-model/pom.xml +++ b/casic-metering-model/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 diff --git a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java index 3974e29..0b7172c 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java @@ -26,6 +26,8 @@ String PLAN_CATEGORY = DICT_PREFIX + "PlanType"; String PLAN_EXECUTE_STATUS = DICT_PREFIX + "PlanExecuteStatus"; + + String PLAN_CHECK_COMPLETION = DICT_PREFIX + "PlanCheckCompletion"; //实施状态 String EFFECTIVE_STATUS = "effectiveStatus"; //文件类别 diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java index 7281705..3e4c232 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java @@ -26,18 +26,18 @@ @ApiModelProperty(value = "委托方id", dataType = "String") private String customerId; - @ApiModelProperty(value = "委托方编号", dataType = "String") - private String customerNo; - @ApiModelProperty(value = "委托方名称", dataType = "String") private String customerName; + /** + * 检定(校准)单位(固定值) + */ + @ApiModelProperty(value = "溯源单位(检定(校准)单位)", dataType = "String") + private String measureCompany; + @ApiModelProperty(value = "送检人", dataType = "String") private String deliverer; - @TableField(exist = false) - @ApiModelProperty(value = "样品数量", dataType = "String") - private Integer sampleCount; @ApiModelProperty(value = "接收状态(包括接收相关状态和检测完成状态)", dataType = "String") @DictCodeField(message = "接收状态不合法", cacheName = MeterDictCode.ORDER_STATUS) diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java index e0b4091..66809a7 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java @@ -16,6 +16,7 @@ import lombok.NoArgsConstructor; import lombok.Setter; +import static com.casic.missiles.constants.MeterDictCode.PLAN_CHECK_COMPLETION; import static com.casic.missiles.constants.MeterDictCode.PLAN_EXECUTE_STATUS; /** @@ -81,7 +82,12 @@ */ @ApiModelProperty("检定完成度") @TableField("check_completion") + @DictCodeField(cacheName = PLAN_CHECK_COMPLETION) private String checkCompletion; + + @ApiModelProperty("检定完成度名称") + @TableField(exist = false) + private String checkCompletionName; /** * 检定完成时间 */ diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java index ae10d36..c7d478c 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java @@ -8,6 +8,8 @@ import java.time.LocalDateTime; import java.util.Date; +import com.casic.missiles.annotation.DictCodeField; +import com.casic.missiles.constants.MeterDictCode; import io.swagger.annotations.ApiModelProperty; import lombok.Getter; import lombok.Setter; @@ -76,6 +78,43 @@ @TableField("plan_id") private Long planId; + @ApiModelProperty("计划分类") + @TableField(exist = false) + @DictCodeField(cacheName = MeterDictCode.PLAN_CATEGORY) + private String planCategory; + + @ApiModelProperty("计划分类名称") + @TableField(exist = false) + private String planCategoryName; + + /** + * 创建人id + */ + @ApiModelProperty("创建人id") + @TableField(exist = false) + private Long createUserId; + + /** + * 创建人姓名 + */ + @ApiModelProperty("创建人姓名") + @TableField(exist = false) + private String createUserName; + + /** + * 创建单位id + */ + @ApiModelProperty("创建单位id") + @TableField(exist = false) + private Long createDeptId; + + /** + * 创建单位名称 + */ + @ApiModelProperty("创建单位名称") + @TableField(exist = false) + private String createDeptName; + /** * 创建时间 */ diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java index f506553..7aa0b79 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java @@ -7,10 +7,16 @@ import java.time.LocalDateTime; import java.util.Date; +import com.casic.missiles.annotation.DictCodeField; import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; import lombok.Getter; +import lombok.NoArgsConstructor; import lombok.Setter; +import static com.casic.missiles.constants.MeterDictCode.PLAN_CHECK_COMPLETION; +import static com.casic.missiles.constants.MeterDictCode.PLAN_EXECUTE_STATUS; + /** *

* 受检设备-计量计划-送检通知关联表 @@ -21,6 +27,8 @@ */ @Getter @Setter +@NoArgsConstructor +@AllArgsConstructor @TableName("eqpt_plan_notify_relation") public class PlanNotifyRelation implements Serializable { @@ -128,7 +136,15 @@ */ @ApiModelProperty("执行状态") @TableField(exist = false) + @DictCodeField(cacheName = PLAN_EXECUTE_STATUS) private String executeStatus; + + /** + * 执行状态名称 + */ + @ApiModelProperty("执行状态名称") + @TableField(exist = false) + private String executeStatusName; /** * 执行时间 */ @@ -140,7 +156,12 @@ */ @ApiModelProperty("检定完成度") @TableField(exist = false) + @DictCodeField(cacheName = PLAN_CHECK_COMPLETION) private String checkCompletion; + + @ApiModelProperty("检定完成度名称") + @TableField(exist = false) + private String checkCompletionName; /** * 检定完成时间 */ @@ -148,6 +169,7 @@ @TableField(exist = false) private Date checkFinishTime; + public PlanNotifyRelation(Long notifyId, Long planRelationId) { this.notifyId = notifyId; this.planRelationId = planRelationId; diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/SampleStatueUpdate.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/SampleStatueUpdate.java index bdc2abe..b27b122 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/SampleStatueUpdate.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/SampleStatueUpdate.java @@ -19,6 +19,6 @@ @ApiModelProperty(value = "样品状态",required = true) private String sampleStatus; - @ApiModelProperty(value = "检定完成时间",required = true) + @ApiModelProperty(value = "检定完成时间",required = false) private Date finishTime; } diff --git a/casic-metering-service/pom.xml b/casic-metering-service/pom.xml index c146795..62c6519 100644 --- a/casic-metering-service/pom.xml +++ b/casic-metering-service/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -16,19 +16,19 @@ com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.casic casic-metering-common - 2.0.0 + 1.0.0.0 org.springframework.boot diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBizBusinessOrderInfoService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBizBusinessOrderInfoService.java index 5f93b15..f7010f6 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBizBusinessOrderInfoService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBizBusinessOrderInfoService.java @@ -28,5 +28,5 @@ ReturnDTO updateStatusById(Long id, String alreadyReceived); - ReturnDTO backOrder(OrderBackRequest orderBackRequest, String alreadyBack); + } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java index aa53fed..c2f939d 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java @@ -26,6 +26,8 @@ EquipmentInfoForm detail(Long equipmentId); + List allCertificate(Long equipmentId,String equipmentType); + boolean updateEquipmentStatus(Long equipmentId,String usageStatus); boolean updateCertificateValid(Long equipmentId, Date certificateValid); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/business/BizBusinessOrderInfoServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/business/BizBusinessOrderInfoServiceImpl.java index 79c720d..31bd60c 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/business/BizBusinessOrderInfoServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/business/BizBusinessOrderInfoServiceImpl.java @@ -1,8 +1,10 @@ package com.casic.missiles.service.impl.business; +import cn.hutool.core.collection.CollUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.business.OrderBackRequest; @@ -44,18 +46,18 @@ private final BusinessOrderListResponseMapper orderListResponseMapper; private final IBizBusinessOrderSampleRelationService sampleRelationService; private final BizBusinessOrderSampleRelationMapper sampleRelationMapper; + private final AbstractPermissionContext permissionContext; @Override public Page orderListPage(Page page, OrderListRequest request) throws Exception { QueryWrapper wrapper = listParamWrapperBuilder(request); + + // 查找本单位提交的 + Long deptId = permissionContext.getAuthService().getLoginUser().getDeptId(); + List parentDeptIds = permissionContext.getDeptService().getParentListById(deptId); + wrapper.and(i->i.eq("customer_id",deptId).or(CollUtil.isNotEmpty(parentDeptIds)).in("customer_id",parentDeptIds)); + Page resultPage = orderListResponseMapper.selectPage(page, wrapper); - List orderSampleList = sampleRelationMapper.selectList(null); - Map> orderSampleMap = orderSampleList.stream().collect( - Collectors.groupingBy(BizBusinessOrderSampleRelation::getOrderId) - ); - resultPage.getRecords().forEach( - orderSample -> orderSample.setSampleCount(orderSampleMap.containsKey(orderSample.getId()) ? orderSampleMap.get(orderSample.getId()).size() : 0) - ); for (OrderListResponse customerAdviceInfo : resultPage.getRecords()) { DictCodeUtils.convertDictCodeToName(customerAdviceInfo); } @@ -118,24 +120,13 @@ throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } - @Override - public ReturnDTO backOrder(OrderBackRequest orderBackRequest, String alreadyBack) { - BizBusinessOrderInfo businessOrder = new BizBusinessOrderInfo(); - businessOrder.setId(orderBackRequest.getId()); - businessOrder.setReceiveIllustrate(orderBackRequest.getBackReason()); - businessOrder.setReceiveStatus(alreadyBack); - if(this.baseMapper.updateById(businessOrder) > 0){ - return ReturnUtil.success(); - } - throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); - } private void initOrderInfo(BizBusinessOrderInfo businessOrder) { Long maxNo = this.baseMapper.selectMaxOrderNo(); String orderNo = NumberGeneratorUtil.getContactNo(PrefixCodeEnum.ORDER_PREFIX, maxNo); businessOrder.setCreateUserId(businessOrder.getUserId()); businessOrder.setCreateUserName(businessOrder.getUserName()); - businessOrder.setReceiveStatus(OrderStatusDictEnum.ALREADY_RECEIVED); + businessOrder.setReceiveStatus(OrderStatusDictEnum.NOT_RECEIVED); businessOrder.setOrderNo(orderNo); } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoApprovalServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoApprovalServiceImpl.java index bab78ce..5e9824d 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoApprovalServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoApprovalServiceImpl.java @@ -97,14 +97,7 @@ .setIgnoreError(true); BeanUtil.copyProperties(equipmentInfo, approvalForm, options); } - // 编辑申请:不需要审批的字段直接生效 - if (UPDATE == approvalForm.getApprovalType()) { - EquipmentInfo equipmentInfo = equipmentInfoService.getById(approvalForm.getEquipmentId()); - this.simpleUpdate(approvalForm, equipmentInfo); - if (!needApproval(approvalForm, equipmentInfo)) { - return approvalForm.getId(); - } - } + // 0. 生成设备id if (ObjectUtil.isEmpty(approvalForm.getEquipmentId())) { approvalForm.setEquipmentId(IdWorker.getId()); @@ -123,6 +116,14 @@ if (EQUIPMENT_TYPE_SPECIAL.equals(approvalForm.getEquipmentType())) { specialCertificateService.saveCertificateList(approvalForm.getEquipmentId(), approvalForm.getCertificateList()); } + // 编辑申请:不需要审批的字段直接生效 + if (UPDATE == approvalForm.getApprovalType()) { + EquipmentInfo equipmentInfo = equipmentInfoService.getById(approvalForm.getEquipmentId()); + this.simpleUpdate(approvalForm, equipmentInfo); + if (!needApproval(approvalForm, equipmentInfo)) { + return approvalForm.getId(); + } + } this.saveOrUpdate(approvalForm); // 4. 返回申请记录id return approvalForm.getId(); @@ -226,12 +227,13 @@ public EquipmentApprovalForm approvalInfoDetail(Long approvalId) { EquipmentInfoApproval approval = this.getById(approvalId); EquipmentApprovalForm info = new EquipmentApprovalForm(); + warpper(info); BeanUtil.copyProperties(approval,info); if (ObjectUtil.isNotEmpty(info)) { info.setAttachments(attachmentService.selectByEquipment(info.getEquipmentId())); info.setTechnicalTargetList(technicalTargetService.selectByEquipment(info.getEquipmentId())); info.setGroupInfos(groupInfoService.selectByEquipment(info.getEquipmentId())); - info.setCertificateList(new ArrayList<>()); // todo + info.setCertificateList(equipmentInfoService.allCertificate(info.getEquipmentId(),info.getEquipmentType())); } return info; } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoServiceImpl.java index e8a35a2..469317b 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoServiceImpl.java @@ -121,6 +121,7 @@ EquipmentInfoForm infoForm = new EquipmentInfoForm(); EquipmentInfo equipmentInfo = this.getById(equipmentId); if(ObjectUtil.isNotEmpty(equipmentInfo)){ + warpEquipmentInfo(equipmentInfo); equipmentInfo.setCompanyName(permissionContext.getDeptService().getDeptName(equipmentInfo.getCompanyId())); equipmentInfo.setDeptName(permissionContext.getDeptService().getDeptName(equipmentInfo.getDeptId())); equipmentInfo.setGroupInfos(groupInfoService.selectByEquipment(equipmentId)); @@ -134,7 +135,8 @@ return infoForm; } - private List allCertificate(Long equipmentId,String equipmentType){ + @Override + public List allCertificate(Long equipmentId,String equipmentType){ List listAll = new ArrayList<>(); listAll.addAll(this.baseMapper.bizCertificateList(equipmentId)); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentTechnicalTargetServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentTechnicalTargetServiceImpl.java index fcd4cb0..7ad7da3 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentTechnicalTargetServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentTechnicalTargetServiceImpl.java @@ -38,7 +38,7 @@ public boolean removeByEquipment(Long equipmentId) { QueryWrapper wrapper = new QueryWrapper<>(); wrapper.eq("equipment_id",equipmentId); - wrapper.notExists("(select id from eqpt_equipment_info i where i.id = eqpt_equipment_attachment.equipment_id)"); + wrapper.notExists("(select id from eqpt_equipment_info i where i.id = eqpt_equipment_technical_target.equipment_id)"); return this.remove(wrapper); } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/InspectionApprovalServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/InspectionApprovalServiceImpl.java index 80f34f4..a726353 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/InspectionApprovalServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/InspectionApprovalServiceImpl.java @@ -27,6 +27,7 @@ import org.springframework.transaction.annotation.Transactional; import java.util.List; +import java.util.Map; import java.util.stream.Collectors; import static com.casic.missiles.enums.equipment.EquipmentTypeEnum.EQUIPMENT_TYPE_NORMAL; @@ -77,17 +78,8 @@ @Transactional public void finishApproval(Long approvalId) { super.finishApproval(approvalId); - InspectionApproval approval = this.getById(approvalId); - List relations = relationService.listByInspection(approvalId); - if(CollUtil.isNotEmpty(relations)){ - List equipments = relations.stream().map(InspectionEquipmentRelation::getEquipmentId).collect(Collectors.toList()); - UpdateWrapper updateWrapper = new UpdateWrapper<>(); - updateWrapper.set("execute_status",INSPECTION_TYPE_EARLY.equals(approval.getApprovalType()) ? ExecuteStatusEnum.EARLY : ExecuteStatusEnum.DELAY); - updateWrapper.in("equipment_id",equipments); - updateWrapper.eq("execute_status",ExecuteStatusEnum.UN_EXECUTE); - planEquipmentRelationService.update(updateWrapper); - } + planEquipmentRelationService.inspectionStatusUpdate(INSPECTION_TYPE_EARLY.equals(approval.getApprovalType()) ? ExecuteStatusEnum.EARLY : ExecuteStatusEnum.DELAY,approvalId); } @Override diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanEquipmentRelationServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanEquipmentRelationServiceImpl.java index a95a3ac..495239b 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanEquipmentRelationServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanEquipmentRelationServiceImpl.java @@ -134,4 +134,9 @@ updateWrapper.exists(String.format("select id from eqpt_plan b where b.id = eqpt_plan_equipment_relation.plan_id and b.year = %d", Calendar.getInstance().get(Calendar.YEAR))); this.update(updateWrapper); } + + @Override + public void inspectionStatusUpdate(String executeStatus, Long inspectionId) { + this.baseMapper.inspectionStatusUpdate(executeStatus, inspectionId); + } } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanNotifyRelationServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanNotifyRelationServiceImpl.java index b62905a..97ddfdc 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanNotifyRelationServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanNotifyRelationServiceImpl.java @@ -45,7 +45,7 @@ @Override public List groupByName(Long notifyId) { QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.exists(String.format(" (select id from eqpt_plan_equipment_relation r1 where r1.equipment_id = id and EXISTS (select id from eqpt_plan_notify_relation r2 where r2.plan_relation_id = r1.id and r2.notify_id = %d))",notifyId)); + queryWrapper.exists(String.format(" (select id from eqpt_plan_equipment_relation r1 where r1.equipment_id = eqpt_equipment_info.id and EXISTS (select id from eqpt_plan_notify_relation r2 where r2.plan_relation_id = r1.id and r2.notify_id = %d))",notifyId)); queryWrapper.groupBy("equipment_name"); queryWrapper.select("equipment_name as 'equipmentName',count(*) as 'count'"); List> resMap = equipmentInfoService.listMaps(queryWrapper); diff --git a/casic-metering-common/pom.xml b/casic-metering-common/pom.xml index 33f75c8..e431f85 100644 --- a/casic-metering-common/pom.xml +++ b/casic-metering-common/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -17,12 +17,12 @@ com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.github.oshi diff --git a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java index 0f37e03..250d886 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java @@ -12,6 +12,7 @@ import java.lang.reflect.Field; import java.lang.reflect.Method; import java.lang.reflect.Modifier; +import java.util.ArrayList; import java.util.Arrays; import java.util.List; @@ -26,8 +27,16 @@ * @return 全部相同返回true,有不相同的返回false */ public static boolean fieldCompare(Object beforeObj, Object afterObj, List fields) { - Field[] beforeFields = beforeObj.getClass().getDeclaredFields(); - Field[] afterFields = afterObj.getClass().getDeclaredFields(); + List beforeFieldList = Arrays.asList(beforeObj.getClass().getDeclaredFields()); + List superBeforeFileList = Arrays.asList(beforeObj.getClass().getSuperclass().getDeclaredFields()); + beforeFieldList.addAll(new ArrayList<>(superBeforeFileList)); + Field[] beforeFields = beforeFieldList.toArray(new Field[beforeFieldList.size()]); + + List afterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getDeclaredFields())); + List superAfterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getSuperclass().getDeclaredFields())); + afterFieldList.addAll(superAfterFieldList); + Field[] afterFields = afterFieldList.toArray(new Field[beforeFieldList.size()]); + Field.setAccessible(beforeFields, true); //设置私有属性可以访问到 Field.setAccessible(afterFields, true); //循环遍历比较属性 @@ -36,15 +45,19 @@ if (ObjectUtil.isNotEmpty(fields) && fields.contains(beforeFields[i].getName())) { try { Object beforeValue = beforeFields[i].get(beforeObj); //取出对应的属性值 - Object afterValue = afterFields[i].get(afterObj); + Object afterValue = null; + for (int j = 0; j < afterFields.length; j++) { + if(afterFields[j].getName().equals(beforeFields[i].getName())){ + afterValue = afterFields[j].get(afterObj); //取出对应的属性值 + break; + } + } if ((beforeValue != null && !"".equals(beforeValue) && !beforeValue.equals(afterValue)) || ((beforeValue == null || "".equals(beforeValue)) && afterValue != null)) { return false; } } catch (IllegalAccessException e) { log.error(e.getMessage()); } - - } } } diff --git a/casic-metering-dao/pom.xml b/casic-metering-dao/pom.xml index 64c6fbf..6cffff6 100644 --- a/casic-metering-dao/pom.xml +++ b/casic-metering-dao/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -16,7 +16,7 @@ com.casic casic-metering-model - 2.0.0 + 1.0.0.0 diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java index 548081b..f8ae80b 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java @@ -22,4 +22,9 @@ @Param("equipmentName") String equipmentName); PlanEquipmentStatus getPlanEquipmentStatus(@Param("equipmentId")Long equipmentId); + + + void inspectionStatusUpdate(@Param("executeStatus") String executeStatus, + @Param("inspectionId") Long inspectionId); + } diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml index a2c0944..e9d9f55 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml @@ -91,6 +91,7 @@ diff --git a/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml index bd0ad5f..ed9981e 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml @@ -19,7 +19,7 @@ id, inspection_id, equipment_id, inspection_time, plan_id, remarks, create_time, update_time - SELECT r.id AS id, r.inspection_id AS inspectionId, @@ -41,7 +41,7 @@ eqpt_inspection_equipment_relation r LEFT JOIN eqpt_equipment_info e ON e.id = r.equipment_id LEFT JOIN eqpt_plan p ON p.id = r.plan_id - AND r.inspection_id = #{inspectionId} + WHERE r.inspection_id = #{inspectionId} diff --git a/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml index 3aeb4a4..1c23860 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml @@ -67,4 +67,18 @@ LIMIT 1 + + update + eqpt_plan_equipment_relation r1, + eqpt_plan p, + eqpt_inspection_equipment_relation r2 + set r1.execute_status = #{executeStatus}, + r1.execute_time = r2.inspection_time + where r1.plan_id = p.id + and p.year = YEAR(NOW()) + and r1.execute_status = '0' + and r1.equipment_id = r2.equipment_id + and r2.inspection_id = #{inspectionId} + + diff --git a/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml index 93a8dc8..a2e8a11 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml @@ -29,7 +29,7 @@ n.notify_user as notifyUser, n.notify_dept as notifyDept, n.plan_id as planId, - p.plan_type as planType, + p.plan_category as planCategory, p.create_user_id as createUserId, p.create_user_name as createUserName, p.create_dept_id as createDeptId, diff --git a/casic-metering-eqpt-api/pom.xml b/casic-metering-eqpt-api/pom.xml index 456fdbf..99f40ca 100644 --- a/casic-metering-eqpt-api/pom.xml +++ b/casic-metering-eqpt-api/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -18,13 +18,13 @@ com.casic casic-metering-service - 2.0.0 + 1.0.0.0 com.casic casic-metering-job - 2.0.0 + 1.0.0.0 org.springframework.boot diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java index 268fb3a..06cb258 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java @@ -84,4 +84,13 @@ return businessOrderService.updateOrder(businessOrder); } + @ApiOperation("任务单取消") + @PostMapping("/cancel") + public ReturnDTO receiveOrder(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return businessOrderService.updateStatusById(idDTO.getId(), OrderStatusDictEnum.ALREADY_CANCEL); + } + } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java index 9456479..9717b78 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java @@ -16,6 +16,7 @@ import com.casic.missiles.dto.plan.PlanQueryForm; import com.casic.missiles.model.equipment.EquipmentInfoApproval; import com.casic.missiles.model.plan.Plan; +import com.casic.missiles.model.plan.PlanEquipmentRelation; import com.casic.missiles.service.ICommonApprovalService; import com.casic.missiles.service.plan.IPlanEquipmentRelationService; import com.casic.missiles.service.plan.IPlanService; @@ -76,7 +77,7 @@ }) @ApiOperation("计量计划详情-计划列表展开") @GetMapping("/relationList") - public ReturnDTO> relationList(Long planId,String equipmentName) { + public ReturnDTO> relationList(Long planId, String equipmentName) { return ReturnUtil.success(relationService.listByPlanAndName(planId,equipmentName)); } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java index 92e8e95..436fd8f 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java @@ -7,6 +7,7 @@ import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.equipment.EquipmentAggr; import com.casic.missiles.model.plan.PlanNotify; +import com.casic.missiles.model.plan.PlanNotifyRelation; import com.casic.missiles.service.plan.IPlanNotifyRelationService; import com.casic.missiles.service.plan.IPlanNotifyService; import io.swagger.annotations.Api; @@ -71,7 +72,7 @@ }) @ApiOperation("送检通知详情-送检列表展开") @GetMapping("/relationList") - public ReturnDTO> relationList(Long notifyId,String equipmentName) { + public ReturnDTO> relationList(Long notifyId, String equipmentName) { return ReturnUtil.success(relationService.listByNameAndNotify(equipmentName,notifyId)); } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java index 0090684..7f04e81 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java @@ -32,16 +32,14 @@ private final IRemindConfigService remindConfigService; @ApiOperation("编辑") - @RequestMapping("update") - @PostMapping + @PostMapping("update") public ReturnDTO update(@RequestBody RemindConfig remindConfig){ remindConfigService.updateById(remindConfig); return ReturnUtil.success(); } @ApiOperation("分页列表") - @RequestMapping("listPage") - @GetMapping + @GetMapping("listPage") public ReturnDTO> listPage(){ Page page = PageFactory.defaultPage(); page = remindConfigService.listScopePage(page); diff --git a/casic-metering-job/pom.xml b/casic-metering-job/pom.xml index 237e930..0a68bc1 100644 --- a/casic-metering-job/pom.xml +++ b/casic-metering-job/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -14,12 +14,12 @@ com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.github.oshi @@ -61,7 +61,7 @@ com.casic casic-metering-service - 2.0.0 + 1.0.0.0 compile diff --git a/casic-metering-model/pom.xml b/casic-metering-model/pom.xml index 31a2491..8ec8258 100644 --- a/casic-metering-model/pom.xml +++ b/casic-metering-model/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 diff --git a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java index 3974e29..0b7172c 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java @@ -26,6 +26,8 @@ String PLAN_CATEGORY = DICT_PREFIX + "PlanType"; String PLAN_EXECUTE_STATUS = DICT_PREFIX + "PlanExecuteStatus"; + + String PLAN_CHECK_COMPLETION = DICT_PREFIX + "PlanCheckCompletion"; //实施状态 String EFFECTIVE_STATUS = "effectiveStatus"; //文件类别 diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java index 7281705..3e4c232 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java @@ -26,18 +26,18 @@ @ApiModelProperty(value = "委托方id", dataType = "String") private String customerId; - @ApiModelProperty(value = "委托方编号", dataType = "String") - private String customerNo; - @ApiModelProperty(value = "委托方名称", dataType = "String") private String customerName; + /** + * 检定(校准)单位(固定值) + */ + @ApiModelProperty(value = "溯源单位(检定(校准)单位)", dataType = "String") + private String measureCompany; + @ApiModelProperty(value = "送检人", dataType = "String") private String deliverer; - @TableField(exist = false) - @ApiModelProperty(value = "样品数量", dataType = "String") - private Integer sampleCount; @ApiModelProperty(value = "接收状态(包括接收相关状态和检测完成状态)", dataType = "String") @DictCodeField(message = "接收状态不合法", cacheName = MeterDictCode.ORDER_STATUS) diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java index e0b4091..66809a7 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java @@ -16,6 +16,7 @@ import lombok.NoArgsConstructor; import lombok.Setter; +import static com.casic.missiles.constants.MeterDictCode.PLAN_CHECK_COMPLETION; import static com.casic.missiles.constants.MeterDictCode.PLAN_EXECUTE_STATUS; /** @@ -81,7 +82,12 @@ */ @ApiModelProperty("检定完成度") @TableField("check_completion") + @DictCodeField(cacheName = PLAN_CHECK_COMPLETION) private String checkCompletion; + + @ApiModelProperty("检定完成度名称") + @TableField(exist = false) + private String checkCompletionName; /** * 检定完成时间 */ diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java index ae10d36..c7d478c 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java @@ -8,6 +8,8 @@ import java.time.LocalDateTime; import java.util.Date; +import com.casic.missiles.annotation.DictCodeField; +import com.casic.missiles.constants.MeterDictCode; import io.swagger.annotations.ApiModelProperty; import lombok.Getter; import lombok.Setter; @@ -76,6 +78,43 @@ @TableField("plan_id") private Long planId; + @ApiModelProperty("计划分类") + @TableField(exist = false) + @DictCodeField(cacheName = MeterDictCode.PLAN_CATEGORY) + private String planCategory; + + @ApiModelProperty("计划分类名称") + @TableField(exist = false) + private String planCategoryName; + + /** + * 创建人id + */ + @ApiModelProperty("创建人id") + @TableField(exist = false) + private Long createUserId; + + /** + * 创建人姓名 + */ + @ApiModelProperty("创建人姓名") + @TableField(exist = false) + private String createUserName; + + /** + * 创建单位id + */ + @ApiModelProperty("创建单位id") + @TableField(exist = false) + private Long createDeptId; + + /** + * 创建单位名称 + */ + @ApiModelProperty("创建单位名称") + @TableField(exist = false) + private String createDeptName; + /** * 创建时间 */ diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java index f506553..7aa0b79 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java @@ -7,10 +7,16 @@ import java.time.LocalDateTime; import java.util.Date; +import com.casic.missiles.annotation.DictCodeField; import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; import lombok.Getter; +import lombok.NoArgsConstructor; import lombok.Setter; +import static com.casic.missiles.constants.MeterDictCode.PLAN_CHECK_COMPLETION; +import static com.casic.missiles.constants.MeterDictCode.PLAN_EXECUTE_STATUS; + /** *

* 受检设备-计量计划-送检通知关联表 @@ -21,6 +27,8 @@ */ @Getter @Setter +@NoArgsConstructor +@AllArgsConstructor @TableName("eqpt_plan_notify_relation") public class PlanNotifyRelation implements Serializable { @@ -128,7 +136,15 @@ */ @ApiModelProperty("执行状态") @TableField(exist = false) + @DictCodeField(cacheName = PLAN_EXECUTE_STATUS) private String executeStatus; + + /** + * 执行状态名称 + */ + @ApiModelProperty("执行状态名称") + @TableField(exist = false) + private String executeStatusName; /** * 执行时间 */ @@ -140,7 +156,12 @@ */ @ApiModelProperty("检定完成度") @TableField(exist = false) + @DictCodeField(cacheName = PLAN_CHECK_COMPLETION) private String checkCompletion; + + @ApiModelProperty("检定完成度名称") + @TableField(exist = false) + private String checkCompletionName; /** * 检定完成时间 */ @@ -148,6 +169,7 @@ @TableField(exist = false) private Date checkFinishTime; + public PlanNotifyRelation(Long notifyId, Long planRelationId) { this.notifyId = notifyId; this.planRelationId = planRelationId; diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/SampleStatueUpdate.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/SampleStatueUpdate.java index bdc2abe..b27b122 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/SampleStatueUpdate.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/SampleStatueUpdate.java @@ -19,6 +19,6 @@ @ApiModelProperty(value = "样品状态",required = true) private String sampleStatus; - @ApiModelProperty(value = "检定完成时间",required = true) + @ApiModelProperty(value = "检定完成时间",required = false) private Date finishTime; } diff --git a/casic-metering-service/pom.xml b/casic-metering-service/pom.xml index c146795..62c6519 100644 --- a/casic-metering-service/pom.xml +++ b/casic-metering-service/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -16,19 +16,19 @@ com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.casic casic-metering-common - 2.0.0 + 1.0.0.0 org.springframework.boot diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBizBusinessOrderInfoService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBizBusinessOrderInfoService.java index 5f93b15..f7010f6 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBizBusinessOrderInfoService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBizBusinessOrderInfoService.java @@ -28,5 +28,5 @@ ReturnDTO updateStatusById(Long id, String alreadyReceived); - ReturnDTO backOrder(OrderBackRequest orderBackRequest, String alreadyBack); + } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java index aa53fed..c2f939d 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java @@ -26,6 +26,8 @@ EquipmentInfoForm detail(Long equipmentId); + List allCertificate(Long equipmentId,String equipmentType); + boolean updateEquipmentStatus(Long equipmentId,String usageStatus); boolean updateCertificateValid(Long equipmentId, Date certificateValid); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/business/BizBusinessOrderInfoServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/business/BizBusinessOrderInfoServiceImpl.java index 79c720d..31bd60c 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/business/BizBusinessOrderInfoServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/business/BizBusinessOrderInfoServiceImpl.java @@ -1,8 +1,10 @@ package com.casic.missiles.service.impl.business; +import cn.hutool.core.collection.CollUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.business.OrderBackRequest; @@ -44,18 +46,18 @@ private final BusinessOrderListResponseMapper orderListResponseMapper; private final IBizBusinessOrderSampleRelationService sampleRelationService; private final BizBusinessOrderSampleRelationMapper sampleRelationMapper; + private final AbstractPermissionContext permissionContext; @Override public Page orderListPage(Page page, OrderListRequest request) throws Exception { QueryWrapper wrapper = listParamWrapperBuilder(request); + + // 查找本单位提交的 + Long deptId = permissionContext.getAuthService().getLoginUser().getDeptId(); + List parentDeptIds = permissionContext.getDeptService().getParentListById(deptId); + wrapper.and(i->i.eq("customer_id",deptId).or(CollUtil.isNotEmpty(parentDeptIds)).in("customer_id",parentDeptIds)); + Page resultPage = orderListResponseMapper.selectPage(page, wrapper); - List orderSampleList = sampleRelationMapper.selectList(null); - Map> orderSampleMap = orderSampleList.stream().collect( - Collectors.groupingBy(BizBusinessOrderSampleRelation::getOrderId) - ); - resultPage.getRecords().forEach( - orderSample -> orderSample.setSampleCount(orderSampleMap.containsKey(orderSample.getId()) ? orderSampleMap.get(orderSample.getId()).size() : 0) - ); for (OrderListResponse customerAdviceInfo : resultPage.getRecords()) { DictCodeUtils.convertDictCodeToName(customerAdviceInfo); } @@ -118,24 +120,13 @@ throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } - @Override - public ReturnDTO backOrder(OrderBackRequest orderBackRequest, String alreadyBack) { - BizBusinessOrderInfo businessOrder = new BizBusinessOrderInfo(); - businessOrder.setId(orderBackRequest.getId()); - businessOrder.setReceiveIllustrate(orderBackRequest.getBackReason()); - businessOrder.setReceiveStatus(alreadyBack); - if(this.baseMapper.updateById(businessOrder) > 0){ - return ReturnUtil.success(); - } - throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); - } private void initOrderInfo(BizBusinessOrderInfo businessOrder) { Long maxNo = this.baseMapper.selectMaxOrderNo(); String orderNo = NumberGeneratorUtil.getContactNo(PrefixCodeEnum.ORDER_PREFIX, maxNo); businessOrder.setCreateUserId(businessOrder.getUserId()); businessOrder.setCreateUserName(businessOrder.getUserName()); - businessOrder.setReceiveStatus(OrderStatusDictEnum.ALREADY_RECEIVED); + businessOrder.setReceiveStatus(OrderStatusDictEnum.NOT_RECEIVED); businessOrder.setOrderNo(orderNo); } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoApprovalServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoApprovalServiceImpl.java index bab78ce..5e9824d 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoApprovalServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoApprovalServiceImpl.java @@ -97,14 +97,7 @@ .setIgnoreError(true); BeanUtil.copyProperties(equipmentInfo, approvalForm, options); } - // 编辑申请:不需要审批的字段直接生效 - if (UPDATE == approvalForm.getApprovalType()) { - EquipmentInfo equipmentInfo = equipmentInfoService.getById(approvalForm.getEquipmentId()); - this.simpleUpdate(approvalForm, equipmentInfo); - if (!needApproval(approvalForm, equipmentInfo)) { - return approvalForm.getId(); - } - } + // 0. 生成设备id if (ObjectUtil.isEmpty(approvalForm.getEquipmentId())) { approvalForm.setEquipmentId(IdWorker.getId()); @@ -123,6 +116,14 @@ if (EQUIPMENT_TYPE_SPECIAL.equals(approvalForm.getEquipmentType())) { specialCertificateService.saveCertificateList(approvalForm.getEquipmentId(), approvalForm.getCertificateList()); } + // 编辑申请:不需要审批的字段直接生效 + if (UPDATE == approvalForm.getApprovalType()) { + EquipmentInfo equipmentInfo = equipmentInfoService.getById(approvalForm.getEquipmentId()); + this.simpleUpdate(approvalForm, equipmentInfo); + if (!needApproval(approvalForm, equipmentInfo)) { + return approvalForm.getId(); + } + } this.saveOrUpdate(approvalForm); // 4. 返回申请记录id return approvalForm.getId(); @@ -226,12 +227,13 @@ public EquipmentApprovalForm approvalInfoDetail(Long approvalId) { EquipmentInfoApproval approval = this.getById(approvalId); EquipmentApprovalForm info = new EquipmentApprovalForm(); + warpper(info); BeanUtil.copyProperties(approval,info); if (ObjectUtil.isNotEmpty(info)) { info.setAttachments(attachmentService.selectByEquipment(info.getEquipmentId())); info.setTechnicalTargetList(technicalTargetService.selectByEquipment(info.getEquipmentId())); info.setGroupInfos(groupInfoService.selectByEquipment(info.getEquipmentId())); - info.setCertificateList(new ArrayList<>()); // todo + info.setCertificateList(equipmentInfoService.allCertificate(info.getEquipmentId(),info.getEquipmentType())); } return info; } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoServiceImpl.java index e8a35a2..469317b 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoServiceImpl.java @@ -121,6 +121,7 @@ EquipmentInfoForm infoForm = new EquipmentInfoForm(); EquipmentInfo equipmentInfo = this.getById(equipmentId); if(ObjectUtil.isNotEmpty(equipmentInfo)){ + warpEquipmentInfo(equipmentInfo); equipmentInfo.setCompanyName(permissionContext.getDeptService().getDeptName(equipmentInfo.getCompanyId())); equipmentInfo.setDeptName(permissionContext.getDeptService().getDeptName(equipmentInfo.getDeptId())); equipmentInfo.setGroupInfos(groupInfoService.selectByEquipment(equipmentId)); @@ -134,7 +135,8 @@ return infoForm; } - private List allCertificate(Long equipmentId,String equipmentType){ + @Override + public List allCertificate(Long equipmentId,String equipmentType){ List listAll = new ArrayList<>(); listAll.addAll(this.baseMapper.bizCertificateList(equipmentId)); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentTechnicalTargetServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentTechnicalTargetServiceImpl.java index fcd4cb0..7ad7da3 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentTechnicalTargetServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentTechnicalTargetServiceImpl.java @@ -38,7 +38,7 @@ public boolean removeByEquipment(Long equipmentId) { QueryWrapper wrapper = new QueryWrapper<>(); wrapper.eq("equipment_id",equipmentId); - wrapper.notExists("(select id from eqpt_equipment_info i where i.id = eqpt_equipment_attachment.equipment_id)"); + wrapper.notExists("(select id from eqpt_equipment_info i where i.id = eqpt_equipment_technical_target.equipment_id)"); return this.remove(wrapper); } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/InspectionApprovalServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/InspectionApprovalServiceImpl.java index 80f34f4..a726353 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/InspectionApprovalServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/InspectionApprovalServiceImpl.java @@ -27,6 +27,7 @@ import org.springframework.transaction.annotation.Transactional; import java.util.List; +import java.util.Map; import java.util.stream.Collectors; import static com.casic.missiles.enums.equipment.EquipmentTypeEnum.EQUIPMENT_TYPE_NORMAL; @@ -77,17 +78,8 @@ @Transactional public void finishApproval(Long approvalId) { super.finishApproval(approvalId); - InspectionApproval approval = this.getById(approvalId); - List relations = relationService.listByInspection(approvalId); - if(CollUtil.isNotEmpty(relations)){ - List equipments = relations.stream().map(InspectionEquipmentRelation::getEquipmentId).collect(Collectors.toList()); - UpdateWrapper updateWrapper = new UpdateWrapper<>(); - updateWrapper.set("execute_status",INSPECTION_TYPE_EARLY.equals(approval.getApprovalType()) ? ExecuteStatusEnum.EARLY : ExecuteStatusEnum.DELAY); - updateWrapper.in("equipment_id",equipments); - updateWrapper.eq("execute_status",ExecuteStatusEnum.UN_EXECUTE); - planEquipmentRelationService.update(updateWrapper); - } + planEquipmentRelationService.inspectionStatusUpdate(INSPECTION_TYPE_EARLY.equals(approval.getApprovalType()) ? ExecuteStatusEnum.EARLY : ExecuteStatusEnum.DELAY,approvalId); } @Override diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanEquipmentRelationServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanEquipmentRelationServiceImpl.java index a95a3ac..495239b 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanEquipmentRelationServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanEquipmentRelationServiceImpl.java @@ -134,4 +134,9 @@ updateWrapper.exists(String.format("select id from eqpt_plan b where b.id = eqpt_plan_equipment_relation.plan_id and b.year = %d", Calendar.getInstance().get(Calendar.YEAR))); this.update(updateWrapper); } + + @Override + public void inspectionStatusUpdate(String executeStatus, Long inspectionId) { + this.baseMapper.inspectionStatusUpdate(executeStatus, inspectionId); + } } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanNotifyRelationServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanNotifyRelationServiceImpl.java index b62905a..97ddfdc 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanNotifyRelationServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanNotifyRelationServiceImpl.java @@ -45,7 +45,7 @@ @Override public List groupByName(Long notifyId) { QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.exists(String.format(" (select id from eqpt_plan_equipment_relation r1 where r1.equipment_id = id and EXISTS (select id from eqpt_plan_notify_relation r2 where r2.plan_relation_id = r1.id and r2.notify_id = %d))",notifyId)); + queryWrapper.exists(String.format(" (select id from eqpt_plan_equipment_relation r1 where r1.equipment_id = eqpt_equipment_info.id and EXISTS (select id from eqpt_plan_notify_relation r2 where r2.plan_relation_id = r1.id and r2.notify_id = %d))",notifyId)); queryWrapper.groupBy("equipment_name"); queryWrapper.select("equipment_name as 'equipmentName',count(*) as 'count'"); List> resMap = equipmentInfoService.listMaps(queryWrapper); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanNotifyServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanNotifyServiceImpl.java index 1ffe44e..0cf2db9 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanNotifyServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanNotifyServiceImpl.java @@ -56,6 +56,10 @@ */ @Override public void notify(Long planId) { + if(checkHaveSent(planId)){ + return; + } + List relationList = planRelationService.listByPlanAndName(planId,null); List userList = userService.getUsersByRoleTips(null,null); Plan planInfo = planService.getById(planId); @@ -72,6 +76,8 @@ planNotify.setNotifyUser(user.getId()); planNotify.setNotifyNo(planInfo.getPlanNo()); planNotify.setNotifyName(planInfo.getPlanName()); + planNotify.setCreateTime(planInfo.getCreateTime()); + this.save(planNotify); List planRelations = directorMaps.get(director); notifyRelationService.saveRelations(planNotify.getId(), planRelations); @@ -87,12 +93,19 @@ planNotify.setNotifyDept(dept); planNotify.setNotifyNo(planInfo.getPlanNo()); planNotify.setNotifyName(planInfo.getPlanName()); + planNotify.setCreateTime(planInfo.getCreateTime()); this.save(planNotify); List planRelations = deptMaps.get(dept); notifyRelationService.saveRelations(planNotify.getId(), planRelations); } } + private boolean checkHaveSent(Long planId){ + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("plan_id",planId); + return this.count(queryWrapper) > 0; + } + private String getNotifyNo(String notifyType){ Long maxNo = this.baseMapper.selectMaxNo(notifyType); String prefix = NOTIFY_TYPE_USER.equals(notifyType) ? PrefixCodeEnum.NOTIFY_USER_PREFIX : PrefixCodeEnum.NOTIFY_DEPT_PREFIX; diff --git a/casic-metering-common/pom.xml b/casic-metering-common/pom.xml index 33f75c8..e431f85 100644 --- a/casic-metering-common/pom.xml +++ b/casic-metering-common/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -17,12 +17,12 @@ com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.github.oshi diff --git a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java index 0f37e03..250d886 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java @@ -12,6 +12,7 @@ import java.lang.reflect.Field; import java.lang.reflect.Method; import java.lang.reflect.Modifier; +import java.util.ArrayList; import java.util.Arrays; import java.util.List; @@ -26,8 +27,16 @@ * @return 全部相同返回true,有不相同的返回false */ public static boolean fieldCompare(Object beforeObj, Object afterObj, List fields) { - Field[] beforeFields = beforeObj.getClass().getDeclaredFields(); - Field[] afterFields = afterObj.getClass().getDeclaredFields(); + List beforeFieldList = Arrays.asList(beforeObj.getClass().getDeclaredFields()); + List superBeforeFileList = Arrays.asList(beforeObj.getClass().getSuperclass().getDeclaredFields()); + beforeFieldList.addAll(new ArrayList<>(superBeforeFileList)); + Field[] beforeFields = beforeFieldList.toArray(new Field[beforeFieldList.size()]); + + List afterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getDeclaredFields())); + List superAfterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getSuperclass().getDeclaredFields())); + afterFieldList.addAll(superAfterFieldList); + Field[] afterFields = afterFieldList.toArray(new Field[beforeFieldList.size()]); + Field.setAccessible(beforeFields, true); //设置私有属性可以访问到 Field.setAccessible(afterFields, true); //循环遍历比较属性 @@ -36,15 +45,19 @@ if (ObjectUtil.isNotEmpty(fields) && fields.contains(beforeFields[i].getName())) { try { Object beforeValue = beforeFields[i].get(beforeObj); //取出对应的属性值 - Object afterValue = afterFields[i].get(afterObj); + Object afterValue = null; + for (int j = 0; j < afterFields.length; j++) { + if(afterFields[j].getName().equals(beforeFields[i].getName())){ + afterValue = afterFields[j].get(afterObj); //取出对应的属性值 + break; + } + } if ((beforeValue != null && !"".equals(beforeValue) && !beforeValue.equals(afterValue)) || ((beforeValue == null || "".equals(beforeValue)) && afterValue != null)) { return false; } } catch (IllegalAccessException e) { log.error(e.getMessage()); } - - } } } diff --git a/casic-metering-dao/pom.xml b/casic-metering-dao/pom.xml index 64c6fbf..6cffff6 100644 --- a/casic-metering-dao/pom.xml +++ b/casic-metering-dao/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -16,7 +16,7 @@ com.casic casic-metering-model - 2.0.0 + 1.0.0.0 diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java index 548081b..f8ae80b 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java @@ -22,4 +22,9 @@ @Param("equipmentName") String equipmentName); PlanEquipmentStatus getPlanEquipmentStatus(@Param("equipmentId")Long equipmentId); + + + void inspectionStatusUpdate(@Param("executeStatus") String executeStatus, + @Param("inspectionId") Long inspectionId); + } diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml index a2c0944..e9d9f55 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml @@ -91,6 +91,7 @@ diff --git a/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml index bd0ad5f..ed9981e 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml @@ -19,7 +19,7 @@ id, inspection_id, equipment_id, inspection_time, plan_id, remarks, create_time, update_time - SELECT r.id AS id, r.inspection_id AS inspectionId, @@ -41,7 +41,7 @@ eqpt_inspection_equipment_relation r LEFT JOIN eqpt_equipment_info e ON e.id = r.equipment_id LEFT JOIN eqpt_plan p ON p.id = r.plan_id - AND r.inspection_id = #{inspectionId} + WHERE r.inspection_id = #{inspectionId} diff --git a/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml index 3aeb4a4..1c23860 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml @@ -67,4 +67,18 @@ LIMIT 1 + + update + eqpt_plan_equipment_relation r1, + eqpt_plan p, + eqpt_inspection_equipment_relation r2 + set r1.execute_status = #{executeStatus}, + r1.execute_time = r2.inspection_time + where r1.plan_id = p.id + and p.year = YEAR(NOW()) + and r1.execute_status = '0' + and r1.equipment_id = r2.equipment_id + and r2.inspection_id = #{inspectionId} + + diff --git a/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml index 93a8dc8..a2e8a11 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml @@ -29,7 +29,7 @@ n.notify_user as notifyUser, n.notify_dept as notifyDept, n.plan_id as planId, - p.plan_type as planType, + p.plan_category as planCategory, p.create_user_id as createUserId, p.create_user_name as createUserName, p.create_dept_id as createDeptId, diff --git a/casic-metering-eqpt-api/pom.xml b/casic-metering-eqpt-api/pom.xml index 456fdbf..99f40ca 100644 --- a/casic-metering-eqpt-api/pom.xml +++ b/casic-metering-eqpt-api/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -18,13 +18,13 @@ com.casic casic-metering-service - 2.0.0 + 1.0.0.0 com.casic casic-metering-job - 2.0.0 + 1.0.0.0 org.springframework.boot diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java index 268fb3a..06cb258 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java @@ -84,4 +84,13 @@ return businessOrderService.updateOrder(businessOrder); } + @ApiOperation("任务单取消") + @PostMapping("/cancel") + public ReturnDTO receiveOrder(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return businessOrderService.updateStatusById(idDTO.getId(), OrderStatusDictEnum.ALREADY_CANCEL); + } + } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java index 9456479..9717b78 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java @@ -16,6 +16,7 @@ import com.casic.missiles.dto.plan.PlanQueryForm; import com.casic.missiles.model.equipment.EquipmentInfoApproval; import com.casic.missiles.model.plan.Plan; +import com.casic.missiles.model.plan.PlanEquipmentRelation; import com.casic.missiles.service.ICommonApprovalService; import com.casic.missiles.service.plan.IPlanEquipmentRelationService; import com.casic.missiles.service.plan.IPlanService; @@ -76,7 +77,7 @@ }) @ApiOperation("计量计划详情-计划列表展开") @GetMapping("/relationList") - public ReturnDTO> relationList(Long planId,String equipmentName) { + public ReturnDTO> relationList(Long planId, String equipmentName) { return ReturnUtil.success(relationService.listByPlanAndName(planId,equipmentName)); } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java index 92e8e95..436fd8f 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java @@ -7,6 +7,7 @@ import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.equipment.EquipmentAggr; import com.casic.missiles.model.plan.PlanNotify; +import com.casic.missiles.model.plan.PlanNotifyRelation; import com.casic.missiles.service.plan.IPlanNotifyRelationService; import com.casic.missiles.service.plan.IPlanNotifyService; import io.swagger.annotations.Api; @@ -71,7 +72,7 @@ }) @ApiOperation("送检通知详情-送检列表展开") @GetMapping("/relationList") - public ReturnDTO> relationList(Long notifyId,String equipmentName) { + public ReturnDTO> relationList(Long notifyId, String equipmentName) { return ReturnUtil.success(relationService.listByNameAndNotify(equipmentName,notifyId)); } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java index 0090684..7f04e81 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java @@ -32,16 +32,14 @@ private final IRemindConfigService remindConfigService; @ApiOperation("编辑") - @RequestMapping("update") - @PostMapping + @PostMapping("update") public ReturnDTO update(@RequestBody RemindConfig remindConfig){ remindConfigService.updateById(remindConfig); return ReturnUtil.success(); } @ApiOperation("分页列表") - @RequestMapping("listPage") - @GetMapping + @GetMapping("listPage") public ReturnDTO> listPage(){ Page page = PageFactory.defaultPage(); page = remindConfigService.listScopePage(page); diff --git a/casic-metering-job/pom.xml b/casic-metering-job/pom.xml index 237e930..0a68bc1 100644 --- a/casic-metering-job/pom.xml +++ b/casic-metering-job/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -14,12 +14,12 @@ com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.github.oshi @@ -61,7 +61,7 @@ com.casic casic-metering-service - 2.0.0 + 1.0.0.0 compile diff --git a/casic-metering-model/pom.xml b/casic-metering-model/pom.xml index 31a2491..8ec8258 100644 --- a/casic-metering-model/pom.xml +++ b/casic-metering-model/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 diff --git a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java index 3974e29..0b7172c 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java @@ -26,6 +26,8 @@ String PLAN_CATEGORY = DICT_PREFIX + "PlanType"; String PLAN_EXECUTE_STATUS = DICT_PREFIX + "PlanExecuteStatus"; + + String PLAN_CHECK_COMPLETION = DICT_PREFIX + "PlanCheckCompletion"; //实施状态 String EFFECTIVE_STATUS = "effectiveStatus"; //文件类别 diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java index 7281705..3e4c232 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java @@ -26,18 +26,18 @@ @ApiModelProperty(value = "委托方id", dataType = "String") private String customerId; - @ApiModelProperty(value = "委托方编号", dataType = "String") - private String customerNo; - @ApiModelProperty(value = "委托方名称", dataType = "String") private String customerName; + /** + * 检定(校准)单位(固定值) + */ + @ApiModelProperty(value = "溯源单位(检定(校准)单位)", dataType = "String") + private String measureCompany; + @ApiModelProperty(value = "送检人", dataType = "String") private String deliverer; - @TableField(exist = false) - @ApiModelProperty(value = "样品数量", dataType = "String") - private Integer sampleCount; @ApiModelProperty(value = "接收状态(包括接收相关状态和检测完成状态)", dataType = "String") @DictCodeField(message = "接收状态不合法", cacheName = MeterDictCode.ORDER_STATUS) diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java index e0b4091..66809a7 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java @@ -16,6 +16,7 @@ import lombok.NoArgsConstructor; import lombok.Setter; +import static com.casic.missiles.constants.MeterDictCode.PLAN_CHECK_COMPLETION; import static com.casic.missiles.constants.MeterDictCode.PLAN_EXECUTE_STATUS; /** @@ -81,7 +82,12 @@ */ @ApiModelProperty("检定完成度") @TableField("check_completion") + @DictCodeField(cacheName = PLAN_CHECK_COMPLETION) private String checkCompletion; + + @ApiModelProperty("检定完成度名称") + @TableField(exist = false) + private String checkCompletionName; /** * 检定完成时间 */ diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java index ae10d36..c7d478c 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java @@ -8,6 +8,8 @@ import java.time.LocalDateTime; import java.util.Date; +import com.casic.missiles.annotation.DictCodeField; +import com.casic.missiles.constants.MeterDictCode; import io.swagger.annotations.ApiModelProperty; import lombok.Getter; import lombok.Setter; @@ -76,6 +78,43 @@ @TableField("plan_id") private Long planId; + @ApiModelProperty("计划分类") + @TableField(exist = false) + @DictCodeField(cacheName = MeterDictCode.PLAN_CATEGORY) + private String planCategory; + + @ApiModelProperty("计划分类名称") + @TableField(exist = false) + private String planCategoryName; + + /** + * 创建人id + */ + @ApiModelProperty("创建人id") + @TableField(exist = false) + private Long createUserId; + + /** + * 创建人姓名 + */ + @ApiModelProperty("创建人姓名") + @TableField(exist = false) + private String createUserName; + + /** + * 创建单位id + */ + @ApiModelProperty("创建单位id") + @TableField(exist = false) + private Long createDeptId; + + /** + * 创建单位名称 + */ + @ApiModelProperty("创建单位名称") + @TableField(exist = false) + private String createDeptName; + /** * 创建时间 */ diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java index f506553..7aa0b79 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java @@ -7,10 +7,16 @@ import java.time.LocalDateTime; import java.util.Date; +import com.casic.missiles.annotation.DictCodeField; import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; import lombok.Getter; +import lombok.NoArgsConstructor; import lombok.Setter; +import static com.casic.missiles.constants.MeterDictCode.PLAN_CHECK_COMPLETION; +import static com.casic.missiles.constants.MeterDictCode.PLAN_EXECUTE_STATUS; + /** *

* 受检设备-计量计划-送检通知关联表 @@ -21,6 +27,8 @@ */ @Getter @Setter +@NoArgsConstructor +@AllArgsConstructor @TableName("eqpt_plan_notify_relation") public class PlanNotifyRelation implements Serializable { @@ -128,7 +136,15 @@ */ @ApiModelProperty("执行状态") @TableField(exist = false) + @DictCodeField(cacheName = PLAN_EXECUTE_STATUS) private String executeStatus; + + /** + * 执行状态名称 + */ + @ApiModelProperty("执行状态名称") + @TableField(exist = false) + private String executeStatusName; /** * 执行时间 */ @@ -140,7 +156,12 @@ */ @ApiModelProperty("检定完成度") @TableField(exist = false) + @DictCodeField(cacheName = PLAN_CHECK_COMPLETION) private String checkCompletion; + + @ApiModelProperty("检定完成度名称") + @TableField(exist = false) + private String checkCompletionName; /** * 检定完成时间 */ @@ -148,6 +169,7 @@ @TableField(exist = false) private Date checkFinishTime; + public PlanNotifyRelation(Long notifyId, Long planRelationId) { this.notifyId = notifyId; this.planRelationId = planRelationId; diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/SampleStatueUpdate.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/SampleStatueUpdate.java index bdc2abe..b27b122 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/SampleStatueUpdate.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/SampleStatueUpdate.java @@ -19,6 +19,6 @@ @ApiModelProperty(value = "样品状态",required = true) private String sampleStatus; - @ApiModelProperty(value = "检定完成时间",required = true) + @ApiModelProperty(value = "检定完成时间",required = false) private Date finishTime; } diff --git a/casic-metering-service/pom.xml b/casic-metering-service/pom.xml index c146795..62c6519 100644 --- a/casic-metering-service/pom.xml +++ b/casic-metering-service/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -16,19 +16,19 @@ com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.casic casic-metering-common - 2.0.0 + 1.0.0.0 org.springframework.boot diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBizBusinessOrderInfoService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBizBusinessOrderInfoService.java index 5f93b15..f7010f6 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBizBusinessOrderInfoService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBizBusinessOrderInfoService.java @@ -28,5 +28,5 @@ ReturnDTO updateStatusById(Long id, String alreadyReceived); - ReturnDTO backOrder(OrderBackRequest orderBackRequest, String alreadyBack); + } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java index aa53fed..c2f939d 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java @@ -26,6 +26,8 @@ EquipmentInfoForm detail(Long equipmentId); + List allCertificate(Long equipmentId,String equipmentType); + boolean updateEquipmentStatus(Long equipmentId,String usageStatus); boolean updateCertificateValid(Long equipmentId, Date certificateValid); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/business/BizBusinessOrderInfoServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/business/BizBusinessOrderInfoServiceImpl.java index 79c720d..31bd60c 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/business/BizBusinessOrderInfoServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/business/BizBusinessOrderInfoServiceImpl.java @@ -1,8 +1,10 @@ package com.casic.missiles.service.impl.business; +import cn.hutool.core.collection.CollUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.business.OrderBackRequest; @@ -44,18 +46,18 @@ private final BusinessOrderListResponseMapper orderListResponseMapper; private final IBizBusinessOrderSampleRelationService sampleRelationService; private final BizBusinessOrderSampleRelationMapper sampleRelationMapper; + private final AbstractPermissionContext permissionContext; @Override public Page orderListPage(Page page, OrderListRequest request) throws Exception { QueryWrapper wrapper = listParamWrapperBuilder(request); + + // 查找本单位提交的 + Long deptId = permissionContext.getAuthService().getLoginUser().getDeptId(); + List parentDeptIds = permissionContext.getDeptService().getParentListById(deptId); + wrapper.and(i->i.eq("customer_id",deptId).or(CollUtil.isNotEmpty(parentDeptIds)).in("customer_id",parentDeptIds)); + Page resultPage = orderListResponseMapper.selectPage(page, wrapper); - List orderSampleList = sampleRelationMapper.selectList(null); - Map> orderSampleMap = orderSampleList.stream().collect( - Collectors.groupingBy(BizBusinessOrderSampleRelation::getOrderId) - ); - resultPage.getRecords().forEach( - orderSample -> orderSample.setSampleCount(orderSampleMap.containsKey(orderSample.getId()) ? orderSampleMap.get(orderSample.getId()).size() : 0) - ); for (OrderListResponse customerAdviceInfo : resultPage.getRecords()) { DictCodeUtils.convertDictCodeToName(customerAdviceInfo); } @@ -118,24 +120,13 @@ throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } - @Override - public ReturnDTO backOrder(OrderBackRequest orderBackRequest, String alreadyBack) { - BizBusinessOrderInfo businessOrder = new BizBusinessOrderInfo(); - businessOrder.setId(orderBackRequest.getId()); - businessOrder.setReceiveIllustrate(orderBackRequest.getBackReason()); - businessOrder.setReceiveStatus(alreadyBack); - if(this.baseMapper.updateById(businessOrder) > 0){ - return ReturnUtil.success(); - } - throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); - } private void initOrderInfo(BizBusinessOrderInfo businessOrder) { Long maxNo = this.baseMapper.selectMaxOrderNo(); String orderNo = NumberGeneratorUtil.getContactNo(PrefixCodeEnum.ORDER_PREFIX, maxNo); businessOrder.setCreateUserId(businessOrder.getUserId()); businessOrder.setCreateUserName(businessOrder.getUserName()); - businessOrder.setReceiveStatus(OrderStatusDictEnum.ALREADY_RECEIVED); + businessOrder.setReceiveStatus(OrderStatusDictEnum.NOT_RECEIVED); businessOrder.setOrderNo(orderNo); } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoApprovalServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoApprovalServiceImpl.java index bab78ce..5e9824d 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoApprovalServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoApprovalServiceImpl.java @@ -97,14 +97,7 @@ .setIgnoreError(true); BeanUtil.copyProperties(equipmentInfo, approvalForm, options); } - // 编辑申请:不需要审批的字段直接生效 - if (UPDATE == approvalForm.getApprovalType()) { - EquipmentInfo equipmentInfo = equipmentInfoService.getById(approvalForm.getEquipmentId()); - this.simpleUpdate(approvalForm, equipmentInfo); - if (!needApproval(approvalForm, equipmentInfo)) { - return approvalForm.getId(); - } - } + // 0. 生成设备id if (ObjectUtil.isEmpty(approvalForm.getEquipmentId())) { approvalForm.setEquipmentId(IdWorker.getId()); @@ -123,6 +116,14 @@ if (EQUIPMENT_TYPE_SPECIAL.equals(approvalForm.getEquipmentType())) { specialCertificateService.saveCertificateList(approvalForm.getEquipmentId(), approvalForm.getCertificateList()); } + // 编辑申请:不需要审批的字段直接生效 + if (UPDATE == approvalForm.getApprovalType()) { + EquipmentInfo equipmentInfo = equipmentInfoService.getById(approvalForm.getEquipmentId()); + this.simpleUpdate(approvalForm, equipmentInfo); + if (!needApproval(approvalForm, equipmentInfo)) { + return approvalForm.getId(); + } + } this.saveOrUpdate(approvalForm); // 4. 返回申请记录id return approvalForm.getId(); @@ -226,12 +227,13 @@ public EquipmentApprovalForm approvalInfoDetail(Long approvalId) { EquipmentInfoApproval approval = this.getById(approvalId); EquipmentApprovalForm info = new EquipmentApprovalForm(); + warpper(info); BeanUtil.copyProperties(approval,info); if (ObjectUtil.isNotEmpty(info)) { info.setAttachments(attachmentService.selectByEquipment(info.getEquipmentId())); info.setTechnicalTargetList(technicalTargetService.selectByEquipment(info.getEquipmentId())); info.setGroupInfos(groupInfoService.selectByEquipment(info.getEquipmentId())); - info.setCertificateList(new ArrayList<>()); // todo + info.setCertificateList(equipmentInfoService.allCertificate(info.getEquipmentId(),info.getEquipmentType())); } return info; } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoServiceImpl.java index e8a35a2..469317b 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoServiceImpl.java @@ -121,6 +121,7 @@ EquipmentInfoForm infoForm = new EquipmentInfoForm(); EquipmentInfo equipmentInfo = this.getById(equipmentId); if(ObjectUtil.isNotEmpty(equipmentInfo)){ + warpEquipmentInfo(equipmentInfo); equipmentInfo.setCompanyName(permissionContext.getDeptService().getDeptName(equipmentInfo.getCompanyId())); equipmentInfo.setDeptName(permissionContext.getDeptService().getDeptName(equipmentInfo.getDeptId())); equipmentInfo.setGroupInfos(groupInfoService.selectByEquipment(equipmentId)); @@ -134,7 +135,8 @@ return infoForm; } - private List allCertificate(Long equipmentId,String equipmentType){ + @Override + public List allCertificate(Long equipmentId,String equipmentType){ List listAll = new ArrayList<>(); listAll.addAll(this.baseMapper.bizCertificateList(equipmentId)); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentTechnicalTargetServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentTechnicalTargetServiceImpl.java index fcd4cb0..7ad7da3 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentTechnicalTargetServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentTechnicalTargetServiceImpl.java @@ -38,7 +38,7 @@ public boolean removeByEquipment(Long equipmentId) { QueryWrapper wrapper = new QueryWrapper<>(); wrapper.eq("equipment_id",equipmentId); - wrapper.notExists("(select id from eqpt_equipment_info i where i.id = eqpt_equipment_attachment.equipment_id)"); + wrapper.notExists("(select id from eqpt_equipment_info i where i.id = eqpt_equipment_technical_target.equipment_id)"); return this.remove(wrapper); } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/InspectionApprovalServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/InspectionApprovalServiceImpl.java index 80f34f4..a726353 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/InspectionApprovalServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/InspectionApprovalServiceImpl.java @@ -27,6 +27,7 @@ import org.springframework.transaction.annotation.Transactional; import java.util.List; +import java.util.Map; import java.util.stream.Collectors; import static com.casic.missiles.enums.equipment.EquipmentTypeEnum.EQUIPMENT_TYPE_NORMAL; @@ -77,17 +78,8 @@ @Transactional public void finishApproval(Long approvalId) { super.finishApproval(approvalId); - InspectionApproval approval = this.getById(approvalId); - List relations = relationService.listByInspection(approvalId); - if(CollUtil.isNotEmpty(relations)){ - List equipments = relations.stream().map(InspectionEquipmentRelation::getEquipmentId).collect(Collectors.toList()); - UpdateWrapper updateWrapper = new UpdateWrapper<>(); - updateWrapper.set("execute_status",INSPECTION_TYPE_EARLY.equals(approval.getApprovalType()) ? ExecuteStatusEnum.EARLY : ExecuteStatusEnum.DELAY); - updateWrapper.in("equipment_id",equipments); - updateWrapper.eq("execute_status",ExecuteStatusEnum.UN_EXECUTE); - planEquipmentRelationService.update(updateWrapper); - } + planEquipmentRelationService.inspectionStatusUpdate(INSPECTION_TYPE_EARLY.equals(approval.getApprovalType()) ? ExecuteStatusEnum.EARLY : ExecuteStatusEnum.DELAY,approvalId); } @Override diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanEquipmentRelationServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanEquipmentRelationServiceImpl.java index a95a3ac..495239b 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanEquipmentRelationServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanEquipmentRelationServiceImpl.java @@ -134,4 +134,9 @@ updateWrapper.exists(String.format("select id from eqpt_plan b where b.id = eqpt_plan_equipment_relation.plan_id and b.year = %d", Calendar.getInstance().get(Calendar.YEAR))); this.update(updateWrapper); } + + @Override + public void inspectionStatusUpdate(String executeStatus, Long inspectionId) { + this.baseMapper.inspectionStatusUpdate(executeStatus, inspectionId); + } } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanNotifyRelationServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanNotifyRelationServiceImpl.java index b62905a..97ddfdc 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanNotifyRelationServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanNotifyRelationServiceImpl.java @@ -45,7 +45,7 @@ @Override public List groupByName(Long notifyId) { QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.exists(String.format(" (select id from eqpt_plan_equipment_relation r1 where r1.equipment_id = id and EXISTS (select id from eqpt_plan_notify_relation r2 where r2.plan_relation_id = r1.id and r2.notify_id = %d))",notifyId)); + queryWrapper.exists(String.format(" (select id from eqpt_plan_equipment_relation r1 where r1.equipment_id = eqpt_equipment_info.id and EXISTS (select id from eqpt_plan_notify_relation r2 where r2.plan_relation_id = r1.id and r2.notify_id = %d))",notifyId)); queryWrapper.groupBy("equipment_name"); queryWrapper.select("equipment_name as 'equipmentName',count(*) as 'count'"); List> resMap = equipmentInfoService.listMaps(queryWrapper); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanNotifyServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanNotifyServiceImpl.java index 1ffe44e..0cf2db9 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanNotifyServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanNotifyServiceImpl.java @@ -56,6 +56,10 @@ */ @Override public void notify(Long planId) { + if(checkHaveSent(planId)){ + return; + } + List relationList = planRelationService.listByPlanAndName(planId,null); List userList = userService.getUsersByRoleTips(null,null); Plan planInfo = planService.getById(planId); @@ -72,6 +76,8 @@ planNotify.setNotifyUser(user.getId()); planNotify.setNotifyNo(planInfo.getPlanNo()); planNotify.setNotifyName(planInfo.getPlanName()); + planNotify.setCreateTime(planInfo.getCreateTime()); + this.save(planNotify); List planRelations = directorMaps.get(director); notifyRelationService.saveRelations(planNotify.getId(), planRelations); @@ -87,12 +93,19 @@ planNotify.setNotifyDept(dept); planNotify.setNotifyNo(planInfo.getPlanNo()); planNotify.setNotifyName(planInfo.getPlanName()); + planNotify.setCreateTime(planInfo.getCreateTime()); this.save(planNotify); List planRelations = deptMaps.get(dept); notifyRelationService.saveRelations(planNotify.getId(), planRelations); } } + private boolean checkHaveSent(Long planId){ + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("plan_id",planId); + return this.count(queryWrapper) > 0; + } + private String getNotifyNo(String notifyType){ Long maxNo = this.baseMapper.selectMaxNo(notifyType); String prefix = NOTIFY_TYPE_USER.equals(notifyType) ? PrefixCodeEnum.NOTIFY_USER_PREFIX : PrefixCodeEnum.NOTIFY_DEPT_PREFIX; diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/status/EquipmentStatusLogServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/status/EquipmentStatusLogServiceImpl.java index 6caa177..4c429c9 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/status/EquipmentStatusLogServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/status/EquipmentStatusLogServiceImpl.java @@ -48,7 +48,7 @@ public List listByEquipment(Long equipmentId) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("equipment_id",equipmentId); - List list = this.listByEquipment(equipmentId); + List list = this.list(queryWrapper); list.forEach(i-> { try { DictCodeUtils.convertDictCodeToName(i); diff --git a/casic-metering-common/pom.xml b/casic-metering-common/pom.xml index 33f75c8..e431f85 100644 --- a/casic-metering-common/pom.xml +++ b/casic-metering-common/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -17,12 +17,12 @@ com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.github.oshi diff --git a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java index 0f37e03..250d886 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java @@ -12,6 +12,7 @@ import java.lang.reflect.Field; import java.lang.reflect.Method; import java.lang.reflect.Modifier; +import java.util.ArrayList; import java.util.Arrays; import java.util.List; @@ -26,8 +27,16 @@ * @return 全部相同返回true,有不相同的返回false */ public static boolean fieldCompare(Object beforeObj, Object afterObj, List fields) { - Field[] beforeFields = beforeObj.getClass().getDeclaredFields(); - Field[] afterFields = afterObj.getClass().getDeclaredFields(); + List beforeFieldList = Arrays.asList(beforeObj.getClass().getDeclaredFields()); + List superBeforeFileList = Arrays.asList(beforeObj.getClass().getSuperclass().getDeclaredFields()); + beforeFieldList.addAll(new ArrayList<>(superBeforeFileList)); + Field[] beforeFields = beforeFieldList.toArray(new Field[beforeFieldList.size()]); + + List afterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getDeclaredFields())); + List superAfterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getSuperclass().getDeclaredFields())); + afterFieldList.addAll(superAfterFieldList); + Field[] afterFields = afterFieldList.toArray(new Field[beforeFieldList.size()]); + Field.setAccessible(beforeFields, true); //设置私有属性可以访问到 Field.setAccessible(afterFields, true); //循环遍历比较属性 @@ -36,15 +45,19 @@ if (ObjectUtil.isNotEmpty(fields) && fields.contains(beforeFields[i].getName())) { try { Object beforeValue = beforeFields[i].get(beforeObj); //取出对应的属性值 - Object afterValue = afterFields[i].get(afterObj); + Object afterValue = null; + for (int j = 0; j < afterFields.length; j++) { + if(afterFields[j].getName().equals(beforeFields[i].getName())){ + afterValue = afterFields[j].get(afterObj); //取出对应的属性值 + break; + } + } if ((beforeValue != null && !"".equals(beforeValue) && !beforeValue.equals(afterValue)) || ((beforeValue == null || "".equals(beforeValue)) && afterValue != null)) { return false; } } catch (IllegalAccessException e) { log.error(e.getMessage()); } - - } } } diff --git a/casic-metering-dao/pom.xml b/casic-metering-dao/pom.xml index 64c6fbf..6cffff6 100644 --- a/casic-metering-dao/pom.xml +++ b/casic-metering-dao/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -16,7 +16,7 @@ com.casic casic-metering-model - 2.0.0 + 1.0.0.0 diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java index 548081b..f8ae80b 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java @@ -22,4 +22,9 @@ @Param("equipmentName") String equipmentName); PlanEquipmentStatus getPlanEquipmentStatus(@Param("equipmentId")Long equipmentId); + + + void inspectionStatusUpdate(@Param("executeStatus") String executeStatus, + @Param("inspectionId") Long inspectionId); + } diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml index a2c0944..e9d9f55 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml @@ -91,6 +91,7 @@ diff --git a/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml index bd0ad5f..ed9981e 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml @@ -19,7 +19,7 @@ id, inspection_id, equipment_id, inspection_time, plan_id, remarks, create_time, update_time - SELECT r.id AS id, r.inspection_id AS inspectionId, @@ -41,7 +41,7 @@ eqpt_inspection_equipment_relation r LEFT JOIN eqpt_equipment_info e ON e.id = r.equipment_id LEFT JOIN eqpt_plan p ON p.id = r.plan_id - AND r.inspection_id = #{inspectionId} + WHERE r.inspection_id = #{inspectionId} diff --git a/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml index 3aeb4a4..1c23860 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml @@ -67,4 +67,18 @@ LIMIT 1 + + update + eqpt_plan_equipment_relation r1, + eqpt_plan p, + eqpt_inspection_equipment_relation r2 + set r1.execute_status = #{executeStatus}, + r1.execute_time = r2.inspection_time + where r1.plan_id = p.id + and p.year = YEAR(NOW()) + and r1.execute_status = '0' + and r1.equipment_id = r2.equipment_id + and r2.inspection_id = #{inspectionId} + + diff --git a/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml index 93a8dc8..a2e8a11 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml @@ -29,7 +29,7 @@ n.notify_user as notifyUser, n.notify_dept as notifyDept, n.plan_id as planId, - p.plan_type as planType, + p.plan_category as planCategory, p.create_user_id as createUserId, p.create_user_name as createUserName, p.create_dept_id as createDeptId, diff --git a/casic-metering-eqpt-api/pom.xml b/casic-metering-eqpt-api/pom.xml index 456fdbf..99f40ca 100644 --- a/casic-metering-eqpt-api/pom.xml +++ b/casic-metering-eqpt-api/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -18,13 +18,13 @@ com.casic casic-metering-service - 2.0.0 + 1.0.0.0 com.casic casic-metering-job - 2.0.0 + 1.0.0.0 org.springframework.boot diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java index 268fb3a..06cb258 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java @@ -84,4 +84,13 @@ return businessOrderService.updateOrder(businessOrder); } + @ApiOperation("任务单取消") + @PostMapping("/cancel") + public ReturnDTO receiveOrder(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return businessOrderService.updateStatusById(idDTO.getId(), OrderStatusDictEnum.ALREADY_CANCEL); + } + } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java index 9456479..9717b78 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java @@ -16,6 +16,7 @@ import com.casic.missiles.dto.plan.PlanQueryForm; import com.casic.missiles.model.equipment.EquipmentInfoApproval; import com.casic.missiles.model.plan.Plan; +import com.casic.missiles.model.plan.PlanEquipmentRelation; import com.casic.missiles.service.ICommonApprovalService; import com.casic.missiles.service.plan.IPlanEquipmentRelationService; import com.casic.missiles.service.plan.IPlanService; @@ -76,7 +77,7 @@ }) @ApiOperation("计量计划详情-计划列表展开") @GetMapping("/relationList") - public ReturnDTO> relationList(Long planId,String equipmentName) { + public ReturnDTO> relationList(Long planId, String equipmentName) { return ReturnUtil.success(relationService.listByPlanAndName(planId,equipmentName)); } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java index 92e8e95..436fd8f 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java @@ -7,6 +7,7 @@ import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.equipment.EquipmentAggr; import com.casic.missiles.model.plan.PlanNotify; +import com.casic.missiles.model.plan.PlanNotifyRelation; import com.casic.missiles.service.plan.IPlanNotifyRelationService; import com.casic.missiles.service.plan.IPlanNotifyService; import io.swagger.annotations.Api; @@ -71,7 +72,7 @@ }) @ApiOperation("送检通知详情-送检列表展开") @GetMapping("/relationList") - public ReturnDTO> relationList(Long notifyId,String equipmentName) { + public ReturnDTO> relationList(Long notifyId, String equipmentName) { return ReturnUtil.success(relationService.listByNameAndNotify(equipmentName,notifyId)); } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java index 0090684..7f04e81 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java @@ -32,16 +32,14 @@ private final IRemindConfigService remindConfigService; @ApiOperation("编辑") - @RequestMapping("update") - @PostMapping + @PostMapping("update") public ReturnDTO update(@RequestBody RemindConfig remindConfig){ remindConfigService.updateById(remindConfig); return ReturnUtil.success(); } @ApiOperation("分页列表") - @RequestMapping("listPage") - @GetMapping + @GetMapping("listPage") public ReturnDTO> listPage(){ Page page = PageFactory.defaultPage(); page = remindConfigService.listScopePage(page); diff --git a/casic-metering-job/pom.xml b/casic-metering-job/pom.xml index 237e930..0a68bc1 100644 --- a/casic-metering-job/pom.xml +++ b/casic-metering-job/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -14,12 +14,12 @@ com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.github.oshi @@ -61,7 +61,7 @@ com.casic casic-metering-service - 2.0.0 + 1.0.0.0 compile diff --git a/casic-metering-model/pom.xml b/casic-metering-model/pom.xml index 31a2491..8ec8258 100644 --- a/casic-metering-model/pom.xml +++ b/casic-metering-model/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 diff --git a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java index 3974e29..0b7172c 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java @@ -26,6 +26,8 @@ String PLAN_CATEGORY = DICT_PREFIX + "PlanType"; String PLAN_EXECUTE_STATUS = DICT_PREFIX + "PlanExecuteStatus"; + + String PLAN_CHECK_COMPLETION = DICT_PREFIX + "PlanCheckCompletion"; //实施状态 String EFFECTIVE_STATUS = "effectiveStatus"; //文件类别 diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java index 7281705..3e4c232 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java @@ -26,18 +26,18 @@ @ApiModelProperty(value = "委托方id", dataType = "String") private String customerId; - @ApiModelProperty(value = "委托方编号", dataType = "String") - private String customerNo; - @ApiModelProperty(value = "委托方名称", dataType = "String") private String customerName; + /** + * 检定(校准)单位(固定值) + */ + @ApiModelProperty(value = "溯源单位(检定(校准)单位)", dataType = "String") + private String measureCompany; + @ApiModelProperty(value = "送检人", dataType = "String") private String deliverer; - @TableField(exist = false) - @ApiModelProperty(value = "样品数量", dataType = "String") - private Integer sampleCount; @ApiModelProperty(value = "接收状态(包括接收相关状态和检测完成状态)", dataType = "String") @DictCodeField(message = "接收状态不合法", cacheName = MeterDictCode.ORDER_STATUS) diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java index e0b4091..66809a7 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java @@ -16,6 +16,7 @@ import lombok.NoArgsConstructor; import lombok.Setter; +import static com.casic.missiles.constants.MeterDictCode.PLAN_CHECK_COMPLETION; import static com.casic.missiles.constants.MeterDictCode.PLAN_EXECUTE_STATUS; /** @@ -81,7 +82,12 @@ */ @ApiModelProperty("检定完成度") @TableField("check_completion") + @DictCodeField(cacheName = PLAN_CHECK_COMPLETION) private String checkCompletion; + + @ApiModelProperty("检定完成度名称") + @TableField(exist = false) + private String checkCompletionName; /** * 检定完成时间 */ diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java index ae10d36..c7d478c 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java @@ -8,6 +8,8 @@ import java.time.LocalDateTime; import java.util.Date; +import com.casic.missiles.annotation.DictCodeField; +import com.casic.missiles.constants.MeterDictCode; import io.swagger.annotations.ApiModelProperty; import lombok.Getter; import lombok.Setter; @@ -76,6 +78,43 @@ @TableField("plan_id") private Long planId; + @ApiModelProperty("计划分类") + @TableField(exist = false) + @DictCodeField(cacheName = MeterDictCode.PLAN_CATEGORY) + private String planCategory; + + @ApiModelProperty("计划分类名称") + @TableField(exist = false) + private String planCategoryName; + + /** + * 创建人id + */ + @ApiModelProperty("创建人id") + @TableField(exist = false) + private Long createUserId; + + /** + * 创建人姓名 + */ + @ApiModelProperty("创建人姓名") + @TableField(exist = false) + private String createUserName; + + /** + * 创建单位id + */ + @ApiModelProperty("创建单位id") + @TableField(exist = false) + private Long createDeptId; + + /** + * 创建单位名称 + */ + @ApiModelProperty("创建单位名称") + @TableField(exist = false) + private String createDeptName; + /** * 创建时间 */ diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java index f506553..7aa0b79 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java @@ -7,10 +7,16 @@ import java.time.LocalDateTime; import java.util.Date; +import com.casic.missiles.annotation.DictCodeField; import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; import lombok.Getter; +import lombok.NoArgsConstructor; import lombok.Setter; +import static com.casic.missiles.constants.MeterDictCode.PLAN_CHECK_COMPLETION; +import static com.casic.missiles.constants.MeterDictCode.PLAN_EXECUTE_STATUS; + /** *

* 受检设备-计量计划-送检通知关联表 @@ -21,6 +27,8 @@ */ @Getter @Setter +@NoArgsConstructor +@AllArgsConstructor @TableName("eqpt_plan_notify_relation") public class PlanNotifyRelation implements Serializable { @@ -128,7 +136,15 @@ */ @ApiModelProperty("执行状态") @TableField(exist = false) + @DictCodeField(cacheName = PLAN_EXECUTE_STATUS) private String executeStatus; + + /** + * 执行状态名称 + */ + @ApiModelProperty("执行状态名称") + @TableField(exist = false) + private String executeStatusName; /** * 执行时间 */ @@ -140,7 +156,12 @@ */ @ApiModelProperty("检定完成度") @TableField(exist = false) + @DictCodeField(cacheName = PLAN_CHECK_COMPLETION) private String checkCompletion; + + @ApiModelProperty("检定完成度名称") + @TableField(exist = false) + private String checkCompletionName; /** * 检定完成时间 */ @@ -148,6 +169,7 @@ @TableField(exist = false) private Date checkFinishTime; + public PlanNotifyRelation(Long notifyId, Long planRelationId) { this.notifyId = notifyId; this.planRelationId = planRelationId; diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/SampleStatueUpdate.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/SampleStatueUpdate.java index bdc2abe..b27b122 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/SampleStatueUpdate.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/SampleStatueUpdate.java @@ -19,6 +19,6 @@ @ApiModelProperty(value = "样品状态",required = true) private String sampleStatus; - @ApiModelProperty(value = "检定完成时间",required = true) + @ApiModelProperty(value = "检定完成时间",required = false) private Date finishTime; } diff --git a/casic-metering-service/pom.xml b/casic-metering-service/pom.xml index c146795..62c6519 100644 --- a/casic-metering-service/pom.xml +++ b/casic-metering-service/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -16,19 +16,19 @@ com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.casic casic-metering-common - 2.0.0 + 1.0.0.0 org.springframework.boot diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBizBusinessOrderInfoService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBizBusinessOrderInfoService.java index 5f93b15..f7010f6 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBizBusinessOrderInfoService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBizBusinessOrderInfoService.java @@ -28,5 +28,5 @@ ReturnDTO updateStatusById(Long id, String alreadyReceived); - ReturnDTO backOrder(OrderBackRequest orderBackRequest, String alreadyBack); + } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java index aa53fed..c2f939d 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java @@ -26,6 +26,8 @@ EquipmentInfoForm detail(Long equipmentId); + List allCertificate(Long equipmentId,String equipmentType); + boolean updateEquipmentStatus(Long equipmentId,String usageStatus); boolean updateCertificateValid(Long equipmentId, Date certificateValid); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/business/BizBusinessOrderInfoServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/business/BizBusinessOrderInfoServiceImpl.java index 79c720d..31bd60c 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/business/BizBusinessOrderInfoServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/business/BizBusinessOrderInfoServiceImpl.java @@ -1,8 +1,10 @@ package com.casic.missiles.service.impl.business; +import cn.hutool.core.collection.CollUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.business.OrderBackRequest; @@ -44,18 +46,18 @@ private final BusinessOrderListResponseMapper orderListResponseMapper; private final IBizBusinessOrderSampleRelationService sampleRelationService; private final BizBusinessOrderSampleRelationMapper sampleRelationMapper; + private final AbstractPermissionContext permissionContext; @Override public Page orderListPage(Page page, OrderListRequest request) throws Exception { QueryWrapper wrapper = listParamWrapperBuilder(request); + + // 查找本单位提交的 + Long deptId = permissionContext.getAuthService().getLoginUser().getDeptId(); + List parentDeptIds = permissionContext.getDeptService().getParentListById(deptId); + wrapper.and(i->i.eq("customer_id",deptId).or(CollUtil.isNotEmpty(parentDeptIds)).in("customer_id",parentDeptIds)); + Page resultPage = orderListResponseMapper.selectPage(page, wrapper); - List orderSampleList = sampleRelationMapper.selectList(null); - Map> orderSampleMap = orderSampleList.stream().collect( - Collectors.groupingBy(BizBusinessOrderSampleRelation::getOrderId) - ); - resultPage.getRecords().forEach( - orderSample -> orderSample.setSampleCount(orderSampleMap.containsKey(orderSample.getId()) ? orderSampleMap.get(orderSample.getId()).size() : 0) - ); for (OrderListResponse customerAdviceInfo : resultPage.getRecords()) { DictCodeUtils.convertDictCodeToName(customerAdviceInfo); } @@ -118,24 +120,13 @@ throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } - @Override - public ReturnDTO backOrder(OrderBackRequest orderBackRequest, String alreadyBack) { - BizBusinessOrderInfo businessOrder = new BizBusinessOrderInfo(); - businessOrder.setId(orderBackRequest.getId()); - businessOrder.setReceiveIllustrate(orderBackRequest.getBackReason()); - businessOrder.setReceiveStatus(alreadyBack); - if(this.baseMapper.updateById(businessOrder) > 0){ - return ReturnUtil.success(); - } - throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); - } private void initOrderInfo(BizBusinessOrderInfo businessOrder) { Long maxNo = this.baseMapper.selectMaxOrderNo(); String orderNo = NumberGeneratorUtil.getContactNo(PrefixCodeEnum.ORDER_PREFIX, maxNo); businessOrder.setCreateUserId(businessOrder.getUserId()); businessOrder.setCreateUserName(businessOrder.getUserName()); - businessOrder.setReceiveStatus(OrderStatusDictEnum.ALREADY_RECEIVED); + businessOrder.setReceiveStatus(OrderStatusDictEnum.NOT_RECEIVED); businessOrder.setOrderNo(orderNo); } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoApprovalServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoApprovalServiceImpl.java index bab78ce..5e9824d 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoApprovalServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoApprovalServiceImpl.java @@ -97,14 +97,7 @@ .setIgnoreError(true); BeanUtil.copyProperties(equipmentInfo, approvalForm, options); } - // 编辑申请:不需要审批的字段直接生效 - if (UPDATE == approvalForm.getApprovalType()) { - EquipmentInfo equipmentInfo = equipmentInfoService.getById(approvalForm.getEquipmentId()); - this.simpleUpdate(approvalForm, equipmentInfo); - if (!needApproval(approvalForm, equipmentInfo)) { - return approvalForm.getId(); - } - } + // 0. 生成设备id if (ObjectUtil.isEmpty(approvalForm.getEquipmentId())) { approvalForm.setEquipmentId(IdWorker.getId()); @@ -123,6 +116,14 @@ if (EQUIPMENT_TYPE_SPECIAL.equals(approvalForm.getEquipmentType())) { specialCertificateService.saveCertificateList(approvalForm.getEquipmentId(), approvalForm.getCertificateList()); } + // 编辑申请:不需要审批的字段直接生效 + if (UPDATE == approvalForm.getApprovalType()) { + EquipmentInfo equipmentInfo = equipmentInfoService.getById(approvalForm.getEquipmentId()); + this.simpleUpdate(approvalForm, equipmentInfo); + if (!needApproval(approvalForm, equipmentInfo)) { + return approvalForm.getId(); + } + } this.saveOrUpdate(approvalForm); // 4. 返回申请记录id return approvalForm.getId(); @@ -226,12 +227,13 @@ public EquipmentApprovalForm approvalInfoDetail(Long approvalId) { EquipmentInfoApproval approval = this.getById(approvalId); EquipmentApprovalForm info = new EquipmentApprovalForm(); + warpper(info); BeanUtil.copyProperties(approval,info); if (ObjectUtil.isNotEmpty(info)) { info.setAttachments(attachmentService.selectByEquipment(info.getEquipmentId())); info.setTechnicalTargetList(technicalTargetService.selectByEquipment(info.getEquipmentId())); info.setGroupInfos(groupInfoService.selectByEquipment(info.getEquipmentId())); - info.setCertificateList(new ArrayList<>()); // todo + info.setCertificateList(equipmentInfoService.allCertificate(info.getEquipmentId(),info.getEquipmentType())); } return info; } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoServiceImpl.java index e8a35a2..469317b 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoServiceImpl.java @@ -121,6 +121,7 @@ EquipmentInfoForm infoForm = new EquipmentInfoForm(); EquipmentInfo equipmentInfo = this.getById(equipmentId); if(ObjectUtil.isNotEmpty(equipmentInfo)){ + warpEquipmentInfo(equipmentInfo); equipmentInfo.setCompanyName(permissionContext.getDeptService().getDeptName(equipmentInfo.getCompanyId())); equipmentInfo.setDeptName(permissionContext.getDeptService().getDeptName(equipmentInfo.getDeptId())); equipmentInfo.setGroupInfos(groupInfoService.selectByEquipment(equipmentId)); @@ -134,7 +135,8 @@ return infoForm; } - private List allCertificate(Long equipmentId,String equipmentType){ + @Override + public List allCertificate(Long equipmentId,String equipmentType){ List listAll = new ArrayList<>(); listAll.addAll(this.baseMapper.bizCertificateList(equipmentId)); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentTechnicalTargetServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentTechnicalTargetServiceImpl.java index fcd4cb0..7ad7da3 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentTechnicalTargetServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentTechnicalTargetServiceImpl.java @@ -38,7 +38,7 @@ public boolean removeByEquipment(Long equipmentId) { QueryWrapper wrapper = new QueryWrapper<>(); wrapper.eq("equipment_id",equipmentId); - wrapper.notExists("(select id from eqpt_equipment_info i where i.id = eqpt_equipment_attachment.equipment_id)"); + wrapper.notExists("(select id from eqpt_equipment_info i where i.id = eqpt_equipment_technical_target.equipment_id)"); return this.remove(wrapper); } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/InspectionApprovalServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/InspectionApprovalServiceImpl.java index 80f34f4..a726353 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/InspectionApprovalServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/InspectionApprovalServiceImpl.java @@ -27,6 +27,7 @@ import org.springframework.transaction.annotation.Transactional; import java.util.List; +import java.util.Map; import java.util.stream.Collectors; import static com.casic.missiles.enums.equipment.EquipmentTypeEnum.EQUIPMENT_TYPE_NORMAL; @@ -77,17 +78,8 @@ @Transactional public void finishApproval(Long approvalId) { super.finishApproval(approvalId); - InspectionApproval approval = this.getById(approvalId); - List relations = relationService.listByInspection(approvalId); - if(CollUtil.isNotEmpty(relations)){ - List equipments = relations.stream().map(InspectionEquipmentRelation::getEquipmentId).collect(Collectors.toList()); - UpdateWrapper updateWrapper = new UpdateWrapper<>(); - updateWrapper.set("execute_status",INSPECTION_TYPE_EARLY.equals(approval.getApprovalType()) ? ExecuteStatusEnum.EARLY : ExecuteStatusEnum.DELAY); - updateWrapper.in("equipment_id",equipments); - updateWrapper.eq("execute_status",ExecuteStatusEnum.UN_EXECUTE); - planEquipmentRelationService.update(updateWrapper); - } + planEquipmentRelationService.inspectionStatusUpdate(INSPECTION_TYPE_EARLY.equals(approval.getApprovalType()) ? ExecuteStatusEnum.EARLY : ExecuteStatusEnum.DELAY,approvalId); } @Override diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanEquipmentRelationServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanEquipmentRelationServiceImpl.java index a95a3ac..495239b 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanEquipmentRelationServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanEquipmentRelationServiceImpl.java @@ -134,4 +134,9 @@ updateWrapper.exists(String.format("select id from eqpt_plan b where b.id = eqpt_plan_equipment_relation.plan_id and b.year = %d", Calendar.getInstance().get(Calendar.YEAR))); this.update(updateWrapper); } + + @Override + public void inspectionStatusUpdate(String executeStatus, Long inspectionId) { + this.baseMapper.inspectionStatusUpdate(executeStatus, inspectionId); + } } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanNotifyRelationServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanNotifyRelationServiceImpl.java index b62905a..97ddfdc 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanNotifyRelationServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanNotifyRelationServiceImpl.java @@ -45,7 +45,7 @@ @Override public List groupByName(Long notifyId) { QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.exists(String.format(" (select id from eqpt_plan_equipment_relation r1 where r1.equipment_id = id and EXISTS (select id from eqpt_plan_notify_relation r2 where r2.plan_relation_id = r1.id and r2.notify_id = %d))",notifyId)); + queryWrapper.exists(String.format(" (select id from eqpt_plan_equipment_relation r1 where r1.equipment_id = eqpt_equipment_info.id and EXISTS (select id from eqpt_plan_notify_relation r2 where r2.plan_relation_id = r1.id and r2.notify_id = %d))",notifyId)); queryWrapper.groupBy("equipment_name"); queryWrapper.select("equipment_name as 'equipmentName',count(*) as 'count'"); List> resMap = equipmentInfoService.listMaps(queryWrapper); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanNotifyServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanNotifyServiceImpl.java index 1ffe44e..0cf2db9 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanNotifyServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanNotifyServiceImpl.java @@ -56,6 +56,10 @@ */ @Override public void notify(Long planId) { + if(checkHaveSent(planId)){ + return; + } + List relationList = planRelationService.listByPlanAndName(planId,null); List userList = userService.getUsersByRoleTips(null,null); Plan planInfo = planService.getById(planId); @@ -72,6 +76,8 @@ planNotify.setNotifyUser(user.getId()); planNotify.setNotifyNo(planInfo.getPlanNo()); planNotify.setNotifyName(planInfo.getPlanName()); + planNotify.setCreateTime(planInfo.getCreateTime()); + this.save(planNotify); List planRelations = directorMaps.get(director); notifyRelationService.saveRelations(planNotify.getId(), planRelations); @@ -87,12 +93,19 @@ planNotify.setNotifyDept(dept); planNotify.setNotifyNo(planInfo.getPlanNo()); planNotify.setNotifyName(planInfo.getPlanName()); + planNotify.setCreateTime(planInfo.getCreateTime()); this.save(planNotify); List planRelations = deptMaps.get(dept); notifyRelationService.saveRelations(planNotify.getId(), planRelations); } } + private boolean checkHaveSent(Long planId){ + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("plan_id",planId); + return this.count(queryWrapper) > 0; + } + private String getNotifyNo(String notifyType){ Long maxNo = this.baseMapper.selectMaxNo(notifyType); String prefix = NOTIFY_TYPE_USER.equals(notifyType) ? PrefixCodeEnum.NOTIFY_USER_PREFIX : PrefixCodeEnum.NOTIFY_DEPT_PREFIX; diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/status/EquipmentStatusLogServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/status/EquipmentStatusLogServiceImpl.java index 6caa177..4c429c9 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/status/EquipmentStatusLogServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/status/EquipmentStatusLogServiceImpl.java @@ -48,7 +48,7 @@ public List listByEquipment(Long equipmentId) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("equipment_id",equipmentId); - List list = this.listByEquipment(equipmentId); + List list = this.list(queryWrapper); list.forEach(i-> { try { DictCodeUtils.convertDictCodeToName(i); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/system/RemindConfigServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/system/RemindConfigServiceImpl.java index 9c7b016..4d4904e 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/system/RemindConfigServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/system/RemindConfigServiceImpl.java @@ -1,5 +1,6 @@ package com.casic.missiles.service.impl.system; +import cn.hutool.core.collection.CollUtil; import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; @@ -42,7 +43,10 @@ public Integer getRemindTimeByDeptId(Long deptId) { List parentIds = permissionContext.getDeptService().getParentListById(deptId); QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.eq("create_dept_id",deptId).or().in("create_dept_id",parentIds); + queryWrapper.eq("create_dept_id",deptId); + if(CollUtil.isNotEmpty(parentIds)){ + queryWrapper.or().in("create_dept_id",parentIds); + } queryWrapper.last("limit 1"); RemindConfig remindConfig = this.getOne(queryWrapper); if(ObjectUtil.isNotEmpty(remindConfig)){ diff --git a/casic-metering-common/pom.xml b/casic-metering-common/pom.xml index 33f75c8..e431f85 100644 --- a/casic-metering-common/pom.xml +++ b/casic-metering-common/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -17,12 +17,12 @@ com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.github.oshi diff --git a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java index 0f37e03..250d886 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java @@ -12,6 +12,7 @@ import java.lang.reflect.Field; import java.lang.reflect.Method; import java.lang.reflect.Modifier; +import java.util.ArrayList; import java.util.Arrays; import java.util.List; @@ -26,8 +27,16 @@ * @return 全部相同返回true,有不相同的返回false */ public static boolean fieldCompare(Object beforeObj, Object afterObj, List fields) { - Field[] beforeFields = beforeObj.getClass().getDeclaredFields(); - Field[] afterFields = afterObj.getClass().getDeclaredFields(); + List beforeFieldList = Arrays.asList(beforeObj.getClass().getDeclaredFields()); + List superBeforeFileList = Arrays.asList(beforeObj.getClass().getSuperclass().getDeclaredFields()); + beforeFieldList.addAll(new ArrayList<>(superBeforeFileList)); + Field[] beforeFields = beforeFieldList.toArray(new Field[beforeFieldList.size()]); + + List afterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getDeclaredFields())); + List superAfterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getSuperclass().getDeclaredFields())); + afterFieldList.addAll(superAfterFieldList); + Field[] afterFields = afterFieldList.toArray(new Field[beforeFieldList.size()]); + Field.setAccessible(beforeFields, true); //设置私有属性可以访问到 Field.setAccessible(afterFields, true); //循环遍历比较属性 @@ -36,15 +45,19 @@ if (ObjectUtil.isNotEmpty(fields) && fields.contains(beforeFields[i].getName())) { try { Object beforeValue = beforeFields[i].get(beforeObj); //取出对应的属性值 - Object afterValue = afterFields[i].get(afterObj); + Object afterValue = null; + for (int j = 0; j < afterFields.length; j++) { + if(afterFields[j].getName().equals(beforeFields[i].getName())){ + afterValue = afterFields[j].get(afterObj); //取出对应的属性值 + break; + } + } if ((beforeValue != null && !"".equals(beforeValue) && !beforeValue.equals(afterValue)) || ((beforeValue == null || "".equals(beforeValue)) && afterValue != null)) { return false; } } catch (IllegalAccessException e) { log.error(e.getMessage()); } - - } } } diff --git a/casic-metering-dao/pom.xml b/casic-metering-dao/pom.xml index 64c6fbf..6cffff6 100644 --- a/casic-metering-dao/pom.xml +++ b/casic-metering-dao/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -16,7 +16,7 @@ com.casic casic-metering-model - 2.0.0 + 1.0.0.0 diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java index 548081b..f8ae80b 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java @@ -22,4 +22,9 @@ @Param("equipmentName") String equipmentName); PlanEquipmentStatus getPlanEquipmentStatus(@Param("equipmentId")Long equipmentId); + + + void inspectionStatusUpdate(@Param("executeStatus") String executeStatus, + @Param("inspectionId") Long inspectionId); + } diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml index a2c0944..e9d9f55 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml @@ -91,6 +91,7 @@ diff --git a/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml index bd0ad5f..ed9981e 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml @@ -19,7 +19,7 @@ id, inspection_id, equipment_id, inspection_time, plan_id, remarks, create_time, update_time - SELECT r.id AS id, r.inspection_id AS inspectionId, @@ -41,7 +41,7 @@ eqpt_inspection_equipment_relation r LEFT JOIN eqpt_equipment_info e ON e.id = r.equipment_id LEFT JOIN eqpt_plan p ON p.id = r.plan_id - AND r.inspection_id = #{inspectionId} + WHERE r.inspection_id = #{inspectionId} diff --git a/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml index 3aeb4a4..1c23860 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml @@ -67,4 +67,18 @@ LIMIT 1 + + update + eqpt_plan_equipment_relation r1, + eqpt_plan p, + eqpt_inspection_equipment_relation r2 + set r1.execute_status = #{executeStatus}, + r1.execute_time = r2.inspection_time + where r1.plan_id = p.id + and p.year = YEAR(NOW()) + and r1.execute_status = '0' + and r1.equipment_id = r2.equipment_id + and r2.inspection_id = #{inspectionId} + + diff --git a/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml index 93a8dc8..a2e8a11 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml @@ -29,7 +29,7 @@ n.notify_user as notifyUser, n.notify_dept as notifyDept, n.plan_id as planId, - p.plan_type as planType, + p.plan_category as planCategory, p.create_user_id as createUserId, p.create_user_name as createUserName, p.create_dept_id as createDeptId, diff --git a/casic-metering-eqpt-api/pom.xml b/casic-metering-eqpt-api/pom.xml index 456fdbf..99f40ca 100644 --- a/casic-metering-eqpt-api/pom.xml +++ b/casic-metering-eqpt-api/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -18,13 +18,13 @@ com.casic casic-metering-service - 2.0.0 + 1.0.0.0 com.casic casic-metering-job - 2.0.0 + 1.0.0.0 org.springframework.boot diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java index 268fb3a..06cb258 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java @@ -84,4 +84,13 @@ return businessOrderService.updateOrder(businessOrder); } + @ApiOperation("任务单取消") + @PostMapping("/cancel") + public ReturnDTO receiveOrder(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return businessOrderService.updateStatusById(idDTO.getId(), OrderStatusDictEnum.ALREADY_CANCEL); + } + } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java index 9456479..9717b78 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java @@ -16,6 +16,7 @@ import com.casic.missiles.dto.plan.PlanQueryForm; import com.casic.missiles.model.equipment.EquipmentInfoApproval; import com.casic.missiles.model.plan.Plan; +import com.casic.missiles.model.plan.PlanEquipmentRelation; import com.casic.missiles.service.ICommonApprovalService; import com.casic.missiles.service.plan.IPlanEquipmentRelationService; import com.casic.missiles.service.plan.IPlanService; @@ -76,7 +77,7 @@ }) @ApiOperation("计量计划详情-计划列表展开") @GetMapping("/relationList") - public ReturnDTO> relationList(Long planId,String equipmentName) { + public ReturnDTO> relationList(Long planId, String equipmentName) { return ReturnUtil.success(relationService.listByPlanAndName(planId,equipmentName)); } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java index 92e8e95..436fd8f 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java @@ -7,6 +7,7 @@ import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.equipment.EquipmentAggr; import com.casic.missiles.model.plan.PlanNotify; +import com.casic.missiles.model.plan.PlanNotifyRelation; import com.casic.missiles.service.plan.IPlanNotifyRelationService; import com.casic.missiles.service.plan.IPlanNotifyService; import io.swagger.annotations.Api; @@ -71,7 +72,7 @@ }) @ApiOperation("送检通知详情-送检列表展开") @GetMapping("/relationList") - public ReturnDTO> relationList(Long notifyId,String equipmentName) { + public ReturnDTO> relationList(Long notifyId, String equipmentName) { return ReturnUtil.success(relationService.listByNameAndNotify(equipmentName,notifyId)); } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java index 0090684..7f04e81 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java @@ -32,16 +32,14 @@ private final IRemindConfigService remindConfigService; @ApiOperation("编辑") - @RequestMapping("update") - @PostMapping + @PostMapping("update") public ReturnDTO update(@RequestBody RemindConfig remindConfig){ remindConfigService.updateById(remindConfig); return ReturnUtil.success(); } @ApiOperation("分页列表") - @RequestMapping("listPage") - @GetMapping + @GetMapping("listPage") public ReturnDTO> listPage(){ Page page = PageFactory.defaultPage(); page = remindConfigService.listScopePage(page); diff --git a/casic-metering-job/pom.xml b/casic-metering-job/pom.xml index 237e930..0a68bc1 100644 --- a/casic-metering-job/pom.xml +++ b/casic-metering-job/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -14,12 +14,12 @@ com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.github.oshi @@ -61,7 +61,7 @@ com.casic casic-metering-service - 2.0.0 + 1.0.0.0 compile diff --git a/casic-metering-model/pom.xml b/casic-metering-model/pom.xml index 31a2491..8ec8258 100644 --- a/casic-metering-model/pom.xml +++ b/casic-metering-model/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 diff --git a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java index 3974e29..0b7172c 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java @@ -26,6 +26,8 @@ String PLAN_CATEGORY = DICT_PREFIX + "PlanType"; String PLAN_EXECUTE_STATUS = DICT_PREFIX + "PlanExecuteStatus"; + + String PLAN_CHECK_COMPLETION = DICT_PREFIX + "PlanCheckCompletion"; //实施状态 String EFFECTIVE_STATUS = "effectiveStatus"; //文件类别 diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java index 7281705..3e4c232 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java @@ -26,18 +26,18 @@ @ApiModelProperty(value = "委托方id", dataType = "String") private String customerId; - @ApiModelProperty(value = "委托方编号", dataType = "String") - private String customerNo; - @ApiModelProperty(value = "委托方名称", dataType = "String") private String customerName; + /** + * 检定(校准)单位(固定值) + */ + @ApiModelProperty(value = "溯源单位(检定(校准)单位)", dataType = "String") + private String measureCompany; + @ApiModelProperty(value = "送检人", dataType = "String") private String deliverer; - @TableField(exist = false) - @ApiModelProperty(value = "样品数量", dataType = "String") - private Integer sampleCount; @ApiModelProperty(value = "接收状态(包括接收相关状态和检测完成状态)", dataType = "String") @DictCodeField(message = "接收状态不合法", cacheName = MeterDictCode.ORDER_STATUS) diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java index e0b4091..66809a7 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java @@ -16,6 +16,7 @@ import lombok.NoArgsConstructor; import lombok.Setter; +import static com.casic.missiles.constants.MeterDictCode.PLAN_CHECK_COMPLETION; import static com.casic.missiles.constants.MeterDictCode.PLAN_EXECUTE_STATUS; /** @@ -81,7 +82,12 @@ */ @ApiModelProperty("检定完成度") @TableField("check_completion") + @DictCodeField(cacheName = PLAN_CHECK_COMPLETION) private String checkCompletion; + + @ApiModelProperty("检定完成度名称") + @TableField(exist = false) + private String checkCompletionName; /** * 检定完成时间 */ diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java index ae10d36..c7d478c 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java @@ -8,6 +8,8 @@ import java.time.LocalDateTime; import java.util.Date; +import com.casic.missiles.annotation.DictCodeField; +import com.casic.missiles.constants.MeterDictCode; import io.swagger.annotations.ApiModelProperty; import lombok.Getter; import lombok.Setter; @@ -76,6 +78,43 @@ @TableField("plan_id") private Long planId; + @ApiModelProperty("计划分类") + @TableField(exist = false) + @DictCodeField(cacheName = MeterDictCode.PLAN_CATEGORY) + private String planCategory; + + @ApiModelProperty("计划分类名称") + @TableField(exist = false) + private String planCategoryName; + + /** + * 创建人id + */ + @ApiModelProperty("创建人id") + @TableField(exist = false) + private Long createUserId; + + /** + * 创建人姓名 + */ + @ApiModelProperty("创建人姓名") + @TableField(exist = false) + private String createUserName; + + /** + * 创建单位id + */ + @ApiModelProperty("创建单位id") + @TableField(exist = false) + private Long createDeptId; + + /** + * 创建单位名称 + */ + @ApiModelProperty("创建单位名称") + @TableField(exist = false) + private String createDeptName; + /** * 创建时间 */ diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java index f506553..7aa0b79 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java @@ -7,10 +7,16 @@ import java.time.LocalDateTime; import java.util.Date; +import com.casic.missiles.annotation.DictCodeField; import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; import lombok.Getter; +import lombok.NoArgsConstructor; import lombok.Setter; +import static com.casic.missiles.constants.MeterDictCode.PLAN_CHECK_COMPLETION; +import static com.casic.missiles.constants.MeterDictCode.PLAN_EXECUTE_STATUS; + /** *

* 受检设备-计量计划-送检通知关联表 @@ -21,6 +27,8 @@ */ @Getter @Setter +@NoArgsConstructor +@AllArgsConstructor @TableName("eqpt_plan_notify_relation") public class PlanNotifyRelation implements Serializable { @@ -128,7 +136,15 @@ */ @ApiModelProperty("执行状态") @TableField(exist = false) + @DictCodeField(cacheName = PLAN_EXECUTE_STATUS) private String executeStatus; + + /** + * 执行状态名称 + */ + @ApiModelProperty("执行状态名称") + @TableField(exist = false) + private String executeStatusName; /** * 执行时间 */ @@ -140,7 +156,12 @@ */ @ApiModelProperty("检定完成度") @TableField(exist = false) + @DictCodeField(cacheName = PLAN_CHECK_COMPLETION) private String checkCompletion; + + @ApiModelProperty("检定完成度名称") + @TableField(exist = false) + private String checkCompletionName; /** * 检定完成时间 */ @@ -148,6 +169,7 @@ @TableField(exist = false) private Date checkFinishTime; + public PlanNotifyRelation(Long notifyId, Long planRelationId) { this.notifyId = notifyId; this.planRelationId = planRelationId; diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/SampleStatueUpdate.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/SampleStatueUpdate.java index bdc2abe..b27b122 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/SampleStatueUpdate.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/SampleStatueUpdate.java @@ -19,6 +19,6 @@ @ApiModelProperty(value = "样品状态",required = true) private String sampleStatus; - @ApiModelProperty(value = "检定完成时间",required = true) + @ApiModelProperty(value = "检定完成时间",required = false) private Date finishTime; } diff --git a/casic-metering-service/pom.xml b/casic-metering-service/pom.xml index c146795..62c6519 100644 --- a/casic-metering-service/pom.xml +++ b/casic-metering-service/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -16,19 +16,19 @@ com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.casic casic-metering-common - 2.0.0 + 1.0.0.0 org.springframework.boot diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBizBusinessOrderInfoService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBizBusinessOrderInfoService.java index 5f93b15..f7010f6 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBizBusinessOrderInfoService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBizBusinessOrderInfoService.java @@ -28,5 +28,5 @@ ReturnDTO updateStatusById(Long id, String alreadyReceived); - ReturnDTO backOrder(OrderBackRequest orderBackRequest, String alreadyBack); + } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java index aa53fed..c2f939d 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java @@ -26,6 +26,8 @@ EquipmentInfoForm detail(Long equipmentId); + List allCertificate(Long equipmentId,String equipmentType); + boolean updateEquipmentStatus(Long equipmentId,String usageStatus); boolean updateCertificateValid(Long equipmentId, Date certificateValid); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/business/BizBusinessOrderInfoServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/business/BizBusinessOrderInfoServiceImpl.java index 79c720d..31bd60c 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/business/BizBusinessOrderInfoServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/business/BizBusinessOrderInfoServiceImpl.java @@ -1,8 +1,10 @@ package com.casic.missiles.service.impl.business; +import cn.hutool.core.collection.CollUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.business.OrderBackRequest; @@ -44,18 +46,18 @@ private final BusinessOrderListResponseMapper orderListResponseMapper; private final IBizBusinessOrderSampleRelationService sampleRelationService; private final BizBusinessOrderSampleRelationMapper sampleRelationMapper; + private final AbstractPermissionContext permissionContext; @Override public Page orderListPage(Page page, OrderListRequest request) throws Exception { QueryWrapper wrapper = listParamWrapperBuilder(request); + + // 查找本单位提交的 + Long deptId = permissionContext.getAuthService().getLoginUser().getDeptId(); + List parentDeptIds = permissionContext.getDeptService().getParentListById(deptId); + wrapper.and(i->i.eq("customer_id",deptId).or(CollUtil.isNotEmpty(parentDeptIds)).in("customer_id",parentDeptIds)); + Page resultPage = orderListResponseMapper.selectPage(page, wrapper); - List orderSampleList = sampleRelationMapper.selectList(null); - Map> orderSampleMap = orderSampleList.stream().collect( - Collectors.groupingBy(BizBusinessOrderSampleRelation::getOrderId) - ); - resultPage.getRecords().forEach( - orderSample -> orderSample.setSampleCount(orderSampleMap.containsKey(orderSample.getId()) ? orderSampleMap.get(orderSample.getId()).size() : 0) - ); for (OrderListResponse customerAdviceInfo : resultPage.getRecords()) { DictCodeUtils.convertDictCodeToName(customerAdviceInfo); } @@ -118,24 +120,13 @@ throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } - @Override - public ReturnDTO backOrder(OrderBackRequest orderBackRequest, String alreadyBack) { - BizBusinessOrderInfo businessOrder = new BizBusinessOrderInfo(); - businessOrder.setId(orderBackRequest.getId()); - businessOrder.setReceiveIllustrate(orderBackRequest.getBackReason()); - businessOrder.setReceiveStatus(alreadyBack); - if(this.baseMapper.updateById(businessOrder) > 0){ - return ReturnUtil.success(); - } - throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); - } private void initOrderInfo(BizBusinessOrderInfo businessOrder) { Long maxNo = this.baseMapper.selectMaxOrderNo(); String orderNo = NumberGeneratorUtil.getContactNo(PrefixCodeEnum.ORDER_PREFIX, maxNo); businessOrder.setCreateUserId(businessOrder.getUserId()); businessOrder.setCreateUserName(businessOrder.getUserName()); - businessOrder.setReceiveStatus(OrderStatusDictEnum.ALREADY_RECEIVED); + businessOrder.setReceiveStatus(OrderStatusDictEnum.NOT_RECEIVED); businessOrder.setOrderNo(orderNo); } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoApprovalServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoApprovalServiceImpl.java index bab78ce..5e9824d 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoApprovalServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoApprovalServiceImpl.java @@ -97,14 +97,7 @@ .setIgnoreError(true); BeanUtil.copyProperties(equipmentInfo, approvalForm, options); } - // 编辑申请:不需要审批的字段直接生效 - if (UPDATE == approvalForm.getApprovalType()) { - EquipmentInfo equipmentInfo = equipmentInfoService.getById(approvalForm.getEquipmentId()); - this.simpleUpdate(approvalForm, equipmentInfo); - if (!needApproval(approvalForm, equipmentInfo)) { - return approvalForm.getId(); - } - } + // 0. 生成设备id if (ObjectUtil.isEmpty(approvalForm.getEquipmentId())) { approvalForm.setEquipmentId(IdWorker.getId()); @@ -123,6 +116,14 @@ if (EQUIPMENT_TYPE_SPECIAL.equals(approvalForm.getEquipmentType())) { specialCertificateService.saveCertificateList(approvalForm.getEquipmentId(), approvalForm.getCertificateList()); } + // 编辑申请:不需要审批的字段直接生效 + if (UPDATE == approvalForm.getApprovalType()) { + EquipmentInfo equipmentInfo = equipmentInfoService.getById(approvalForm.getEquipmentId()); + this.simpleUpdate(approvalForm, equipmentInfo); + if (!needApproval(approvalForm, equipmentInfo)) { + return approvalForm.getId(); + } + } this.saveOrUpdate(approvalForm); // 4. 返回申请记录id return approvalForm.getId(); @@ -226,12 +227,13 @@ public EquipmentApprovalForm approvalInfoDetail(Long approvalId) { EquipmentInfoApproval approval = this.getById(approvalId); EquipmentApprovalForm info = new EquipmentApprovalForm(); + warpper(info); BeanUtil.copyProperties(approval,info); if (ObjectUtil.isNotEmpty(info)) { info.setAttachments(attachmentService.selectByEquipment(info.getEquipmentId())); info.setTechnicalTargetList(technicalTargetService.selectByEquipment(info.getEquipmentId())); info.setGroupInfos(groupInfoService.selectByEquipment(info.getEquipmentId())); - info.setCertificateList(new ArrayList<>()); // todo + info.setCertificateList(equipmentInfoService.allCertificate(info.getEquipmentId(),info.getEquipmentType())); } return info; } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoServiceImpl.java index e8a35a2..469317b 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoServiceImpl.java @@ -121,6 +121,7 @@ EquipmentInfoForm infoForm = new EquipmentInfoForm(); EquipmentInfo equipmentInfo = this.getById(equipmentId); if(ObjectUtil.isNotEmpty(equipmentInfo)){ + warpEquipmentInfo(equipmentInfo); equipmentInfo.setCompanyName(permissionContext.getDeptService().getDeptName(equipmentInfo.getCompanyId())); equipmentInfo.setDeptName(permissionContext.getDeptService().getDeptName(equipmentInfo.getDeptId())); equipmentInfo.setGroupInfos(groupInfoService.selectByEquipment(equipmentId)); @@ -134,7 +135,8 @@ return infoForm; } - private List allCertificate(Long equipmentId,String equipmentType){ + @Override + public List allCertificate(Long equipmentId,String equipmentType){ List listAll = new ArrayList<>(); listAll.addAll(this.baseMapper.bizCertificateList(equipmentId)); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentTechnicalTargetServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentTechnicalTargetServiceImpl.java index fcd4cb0..7ad7da3 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentTechnicalTargetServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentTechnicalTargetServiceImpl.java @@ -38,7 +38,7 @@ public boolean removeByEquipment(Long equipmentId) { QueryWrapper wrapper = new QueryWrapper<>(); wrapper.eq("equipment_id",equipmentId); - wrapper.notExists("(select id from eqpt_equipment_info i where i.id = eqpt_equipment_attachment.equipment_id)"); + wrapper.notExists("(select id from eqpt_equipment_info i where i.id = eqpt_equipment_technical_target.equipment_id)"); return this.remove(wrapper); } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/InspectionApprovalServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/InspectionApprovalServiceImpl.java index 80f34f4..a726353 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/InspectionApprovalServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/InspectionApprovalServiceImpl.java @@ -27,6 +27,7 @@ import org.springframework.transaction.annotation.Transactional; import java.util.List; +import java.util.Map; import java.util.stream.Collectors; import static com.casic.missiles.enums.equipment.EquipmentTypeEnum.EQUIPMENT_TYPE_NORMAL; @@ -77,17 +78,8 @@ @Transactional public void finishApproval(Long approvalId) { super.finishApproval(approvalId); - InspectionApproval approval = this.getById(approvalId); - List relations = relationService.listByInspection(approvalId); - if(CollUtil.isNotEmpty(relations)){ - List equipments = relations.stream().map(InspectionEquipmentRelation::getEquipmentId).collect(Collectors.toList()); - UpdateWrapper updateWrapper = new UpdateWrapper<>(); - updateWrapper.set("execute_status",INSPECTION_TYPE_EARLY.equals(approval.getApprovalType()) ? ExecuteStatusEnum.EARLY : ExecuteStatusEnum.DELAY); - updateWrapper.in("equipment_id",equipments); - updateWrapper.eq("execute_status",ExecuteStatusEnum.UN_EXECUTE); - planEquipmentRelationService.update(updateWrapper); - } + planEquipmentRelationService.inspectionStatusUpdate(INSPECTION_TYPE_EARLY.equals(approval.getApprovalType()) ? ExecuteStatusEnum.EARLY : ExecuteStatusEnum.DELAY,approvalId); } @Override diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanEquipmentRelationServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanEquipmentRelationServiceImpl.java index a95a3ac..495239b 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanEquipmentRelationServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanEquipmentRelationServiceImpl.java @@ -134,4 +134,9 @@ updateWrapper.exists(String.format("select id from eqpt_plan b where b.id = eqpt_plan_equipment_relation.plan_id and b.year = %d", Calendar.getInstance().get(Calendar.YEAR))); this.update(updateWrapper); } + + @Override + public void inspectionStatusUpdate(String executeStatus, Long inspectionId) { + this.baseMapper.inspectionStatusUpdate(executeStatus, inspectionId); + } } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanNotifyRelationServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanNotifyRelationServiceImpl.java index b62905a..97ddfdc 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanNotifyRelationServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanNotifyRelationServiceImpl.java @@ -45,7 +45,7 @@ @Override public List groupByName(Long notifyId) { QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.exists(String.format(" (select id from eqpt_plan_equipment_relation r1 where r1.equipment_id = id and EXISTS (select id from eqpt_plan_notify_relation r2 where r2.plan_relation_id = r1.id and r2.notify_id = %d))",notifyId)); + queryWrapper.exists(String.format(" (select id from eqpt_plan_equipment_relation r1 where r1.equipment_id = eqpt_equipment_info.id and EXISTS (select id from eqpt_plan_notify_relation r2 where r2.plan_relation_id = r1.id and r2.notify_id = %d))",notifyId)); queryWrapper.groupBy("equipment_name"); queryWrapper.select("equipment_name as 'equipmentName',count(*) as 'count'"); List> resMap = equipmentInfoService.listMaps(queryWrapper); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanNotifyServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanNotifyServiceImpl.java index 1ffe44e..0cf2db9 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanNotifyServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanNotifyServiceImpl.java @@ -56,6 +56,10 @@ */ @Override public void notify(Long planId) { + if(checkHaveSent(planId)){ + return; + } + List relationList = planRelationService.listByPlanAndName(planId,null); List userList = userService.getUsersByRoleTips(null,null); Plan planInfo = planService.getById(planId); @@ -72,6 +76,8 @@ planNotify.setNotifyUser(user.getId()); planNotify.setNotifyNo(planInfo.getPlanNo()); planNotify.setNotifyName(planInfo.getPlanName()); + planNotify.setCreateTime(planInfo.getCreateTime()); + this.save(planNotify); List planRelations = directorMaps.get(director); notifyRelationService.saveRelations(planNotify.getId(), planRelations); @@ -87,12 +93,19 @@ planNotify.setNotifyDept(dept); planNotify.setNotifyNo(planInfo.getPlanNo()); planNotify.setNotifyName(planInfo.getPlanName()); + planNotify.setCreateTime(planInfo.getCreateTime()); this.save(planNotify); List planRelations = deptMaps.get(dept); notifyRelationService.saveRelations(planNotify.getId(), planRelations); } } + private boolean checkHaveSent(Long planId){ + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("plan_id",planId); + return this.count(queryWrapper) > 0; + } + private String getNotifyNo(String notifyType){ Long maxNo = this.baseMapper.selectMaxNo(notifyType); String prefix = NOTIFY_TYPE_USER.equals(notifyType) ? PrefixCodeEnum.NOTIFY_USER_PREFIX : PrefixCodeEnum.NOTIFY_DEPT_PREFIX; diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/status/EquipmentStatusLogServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/status/EquipmentStatusLogServiceImpl.java index 6caa177..4c429c9 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/status/EquipmentStatusLogServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/status/EquipmentStatusLogServiceImpl.java @@ -48,7 +48,7 @@ public List listByEquipment(Long equipmentId) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("equipment_id",equipmentId); - List list = this.listByEquipment(equipmentId); + List list = this.list(queryWrapper); list.forEach(i-> { try { DictCodeUtils.convertDictCodeToName(i); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/system/RemindConfigServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/system/RemindConfigServiceImpl.java index 9c7b016..4d4904e 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/system/RemindConfigServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/system/RemindConfigServiceImpl.java @@ -1,5 +1,6 @@ package com.casic.missiles.service.impl.system; +import cn.hutool.core.collection.CollUtil; import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; @@ -42,7 +43,10 @@ public Integer getRemindTimeByDeptId(Long deptId) { List parentIds = permissionContext.getDeptService().getParentListById(deptId); QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.eq("create_dept_id",deptId).or().in("create_dept_id",parentIds); + queryWrapper.eq("create_dept_id",deptId); + if(CollUtil.isNotEmpty(parentIds)){ + queryWrapper.or().in("create_dept_id",parentIds); + } queryWrapper.last("limit 1"); RemindConfig remindConfig = this.getOne(queryWrapper); if(ObjectUtil.isNotEmpty(remindConfig)){ diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/plan/IPlanEquipmentRelationService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/plan/IPlanEquipmentRelationService.java index 8dafcd0..f043eaf 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/plan/IPlanEquipmentRelationService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/plan/IPlanEquipmentRelationService.java @@ -33,4 +33,6 @@ void sampleStatusUpdate(SampleStatueUpdate sampleStatueUpdate); + void inspectionStatusUpdate(String executeStatus,Long inspectionId); + } diff --git a/casic-metering-common/pom.xml b/casic-metering-common/pom.xml index 33f75c8..e431f85 100644 --- a/casic-metering-common/pom.xml +++ b/casic-metering-common/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -17,12 +17,12 @@ com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.github.oshi diff --git a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java index 0f37e03..250d886 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/utils/CasicBeanUtil.java @@ -12,6 +12,7 @@ import java.lang.reflect.Field; import java.lang.reflect.Method; import java.lang.reflect.Modifier; +import java.util.ArrayList; import java.util.Arrays; import java.util.List; @@ -26,8 +27,16 @@ * @return 全部相同返回true,有不相同的返回false */ public static boolean fieldCompare(Object beforeObj, Object afterObj, List fields) { - Field[] beforeFields = beforeObj.getClass().getDeclaredFields(); - Field[] afterFields = afterObj.getClass().getDeclaredFields(); + List beforeFieldList = Arrays.asList(beforeObj.getClass().getDeclaredFields()); + List superBeforeFileList = Arrays.asList(beforeObj.getClass().getSuperclass().getDeclaredFields()); + beforeFieldList.addAll(new ArrayList<>(superBeforeFileList)); + Field[] beforeFields = beforeFieldList.toArray(new Field[beforeFieldList.size()]); + + List afterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getDeclaredFields())); + List superAfterFieldList = new ArrayList<>(Arrays.asList(afterObj.getClass().getSuperclass().getDeclaredFields())); + afterFieldList.addAll(superAfterFieldList); + Field[] afterFields = afterFieldList.toArray(new Field[beforeFieldList.size()]); + Field.setAccessible(beforeFields, true); //设置私有属性可以访问到 Field.setAccessible(afterFields, true); //循环遍历比较属性 @@ -36,15 +45,19 @@ if (ObjectUtil.isNotEmpty(fields) && fields.contains(beforeFields[i].getName())) { try { Object beforeValue = beforeFields[i].get(beforeObj); //取出对应的属性值 - Object afterValue = afterFields[i].get(afterObj); + Object afterValue = null; + for (int j = 0; j < afterFields.length; j++) { + if(afterFields[j].getName().equals(beforeFields[i].getName())){ + afterValue = afterFields[j].get(afterObj); //取出对应的属性值 + break; + } + } if ((beforeValue != null && !"".equals(beforeValue) && !beforeValue.equals(afterValue)) || ((beforeValue == null || "".equals(beforeValue)) && afterValue != null)) { return false; } } catch (IllegalAccessException e) { log.error(e.getMessage()); } - - } } } diff --git a/casic-metering-dao/pom.xml b/casic-metering-dao/pom.xml index 64c6fbf..6cffff6 100644 --- a/casic-metering-dao/pom.xml +++ b/casic-metering-dao/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -16,7 +16,7 @@ com.casic casic-metering-model - 2.0.0 + 1.0.0.0 diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java index 548081b..f8ae80b 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/plan/PlanEquipmentRelationMapper.java @@ -22,4 +22,9 @@ @Param("equipmentName") String equipmentName); PlanEquipmentStatus getPlanEquipmentStatus(@Param("equipmentId")Long equipmentId); + + + void inspectionStatusUpdate(@Param("executeStatus") String executeStatus, + @Param("inspectionId") Long inspectionId); + } diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml index a2c0944..e9d9f55 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentInfoMapper.xml @@ -91,6 +91,7 @@ diff --git a/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml index bd0ad5f..ed9981e 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/InspectionEquipmentRelationMapper.xml @@ -19,7 +19,7 @@ id, inspection_id, equipment_id, inspection_time, plan_id, remarks, create_time, update_time - SELECT r.id AS id, r.inspection_id AS inspectionId, @@ -41,7 +41,7 @@ eqpt_inspection_equipment_relation r LEFT JOIN eqpt_equipment_info e ON e.id = r.equipment_id LEFT JOIN eqpt_plan p ON p.id = r.plan_id - AND r.inspection_id = #{inspectionId} + WHERE r.inspection_id = #{inspectionId} diff --git a/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml index 3aeb4a4..1c23860 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/PlanEquipmentRelationMapper.xml @@ -67,4 +67,18 @@ LIMIT 1 + + update + eqpt_plan_equipment_relation r1, + eqpt_plan p, + eqpt_inspection_equipment_relation r2 + set r1.execute_status = #{executeStatus}, + r1.execute_time = r2.inspection_time + where r1.plan_id = p.id + and p.year = YEAR(NOW()) + and r1.execute_status = '0' + and r1.equipment_id = r2.equipment_id + and r2.inspection_id = #{inspectionId} + + diff --git a/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml b/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml index 93a8dc8..a2e8a11 100644 --- a/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/plan/PlanNotifyMapper.xml @@ -29,7 +29,7 @@ n.notify_user as notifyUser, n.notify_dept as notifyDept, n.plan_id as planId, - p.plan_type as planType, + p.plan_category as planCategory, p.create_user_id as createUserId, p.create_user_name as createUserName, p.create_dept_id as createDeptId, diff --git a/casic-metering-eqpt-api/pom.xml b/casic-metering-eqpt-api/pom.xml index 456fdbf..99f40ca 100644 --- a/casic-metering-eqpt-api/pom.xml +++ b/casic-metering-eqpt-api/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -18,13 +18,13 @@ com.casic casic-metering-service - 2.0.0 + 1.0.0.0 com.casic casic-metering-job - 2.0.0 + 1.0.0.0 org.springframework.boot diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java index 268fb3a..06cb258 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/BizBusinessOrderInfoController.java @@ -84,4 +84,13 @@ return businessOrderService.updateOrder(businessOrder); } + @ApiOperation("任务单取消") + @PostMapping("/cancel") + public ReturnDTO receiveOrder(@RequestBody @Valid IdDTO idDTO) { + Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); + return businessOrderService.updateStatusById(idDTO.getId(), OrderStatusDictEnum.ALREADY_CANCEL); + } + } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java index 9456479..9717b78 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanController.java @@ -16,6 +16,7 @@ import com.casic.missiles.dto.plan.PlanQueryForm; import com.casic.missiles.model.equipment.EquipmentInfoApproval; import com.casic.missiles.model.plan.Plan; +import com.casic.missiles.model.plan.PlanEquipmentRelation; import com.casic.missiles.service.ICommonApprovalService; import com.casic.missiles.service.plan.IPlanEquipmentRelationService; import com.casic.missiles.service.plan.IPlanService; @@ -76,7 +77,7 @@ }) @ApiOperation("计量计划详情-计划列表展开") @GetMapping("/relationList") - public ReturnDTO> relationList(Long planId,String equipmentName) { + public ReturnDTO> relationList(Long planId, String equipmentName) { return ReturnUtil.success(relationService.listByPlanAndName(planId,equipmentName)); } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java index 92e8e95..436fd8f 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/plan/PlanNotifyController.java @@ -7,6 +7,7 @@ import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.equipment.EquipmentAggr; import com.casic.missiles.model.plan.PlanNotify; +import com.casic.missiles.model.plan.PlanNotifyRelation; import com.casic.missiles.service.plan.IPlanNotifyRelationService; import com.casic.missiles.service.plan.IPlanNotifyService; import io.swagger.annotations.Api; @@ -71,7 +72,7 @@ }) @ApiOperation("送检通知详情-送检列表展开") @GetMapping("/relationList") - public ReturnDTO> relationList(Long notifyId,String equipmentName) { + public ReturnDTO> relationList(Long notifyId, String equipmentName) { return ReturnUtil.success(relationService.listByNameAndNotify(equipmentName,notifyId)); } diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java index 0090684..7f04e81 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/system/RemindConfigController.java @@ -32,16 +32,14 @@ private final IRemindConfigService remindConfigService; @ApiOperation("编辑") - @RequestMapping("update") - @PostMapping + @PostMapping("update") public ReturnDTO update(@RequestBody RemindConfig remindConfig){ remindConfigService.updateById(remindConfig); return ReturnUtil.success(); } @ApiOperation("分页列表") - @RequestMapping("listPage") - @GetMapping + @GetMapping("listPage") public ReturnDTO> listPage(){ Page page = PageFactory.defaultPage(); page = remindConfigService.listScopePage(page); diff --git a/casic-metering-job/pom.xml b/casic-metering-job/pom.xml index 237e930..0a68bc1 100644 --- a/casic-metering-job/pom.xml +++ b/casic-metering-job/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -14,12 +14,12 @@ com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.github.oshi @@ -61,7 +61,7 @@ com.casic casic-metering-service - 2.0.0 + 1.0.0.0 compile diff --git a/casic-metering-model/pom.xml b/casic-metering-model/pom.xml index 31a2491..8ec8258 100644 --- a/casic-metering-model/pom.xml +++ b/casic-metering-model/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 diff --git a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java index 3974e29..0b7172c 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java @@ -26,6 +26,8 @@ String PLAN_CATEGORY = DICT_PREFIX + "PlanType"; String PLAN_EXECUTE_STATUS = DICT_PREFIX + "PlanExecuteStatus"; + + String PLAN_CHECK_COMPLETION = DICT_PREFIX + "PlanCheckCompletion"; //实施状态 String EFFECTIVE_STATUS = "effectiveStatus"; //文件类别 diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java index 7281705..3e4c232 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/OrderListResponse.java @@ -26,18 +26,18 @@ @ApiModelProperty(value = "委托方id", dataType = "String") private String customerId; - @ApiModelProperty(value = "委托方编号", dataType = "String") - private String customerNo; - @ApiModelProperty(value = "委托方名称", dataType = "String") private String customerName; + /** + * 检定(校准)单位(固定值) + */ + @ApiModelProperty(value = "溯源单位(检定(校准)单位)", dataType = "String") + private String measureCompany; + @ApiModelProperty(value = "送检人", dataType = "String") private String deliverer; - @TableField(exist = false) - @ApiModelProperty(value = "样品数量", dataType = "String") - private Integer sampleCount; @ApiModelProperty(value = "接收状态(包括接收相关状态和检测完成状态)", dataType = "String") @DictCodeField(message = "接收状态不合法", cacheName = MeterDictCode.ORDER_STATUS) diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java index e0b4091..66809a7 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanEquipmentRelation.java @@ -16,6 +16,7 @@ import lombok.NoArgsConstructor; import lombok.Setter; +import static com.casic.missiles.constants.MeterDictCode.PLAN_CHECK_COMPLETION; import static com.casic.missiles.constants.MeterDictCode.PLAN_EXECUTE_STATUS; /** @@ -81,7 +82,12 @@ */ @ApiModelProperty("检定完成度") @TableField("check_completion") + @DictCodeField(cacheName = PLAN_CHECK_COMPLETION) private String checkCompletion; + + @ApiModelProperty("检定完成度名称") + @TableField(exist = false) + private String checkCompletionName; /** * 检定完成时间 */ diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java index ae10d36..c7d478c 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotify.java @@ -8,6 +8,8 @@ import java.time.LocalDateTime; import java.util.Date; +import com.casic.missiles.annotation.DictCodeField; +import com.casic.missiles.constants.MeterDictCode; import io.swagger.annotations.ApiModelProperty; import lombok.Getter; import lombok.Setter; @@ -76,6 +78,43 @@ @TableField("plan_id") private Long planId; + @ApiModelProperty("计划分类") + @TableField(exist = false) + @DictCodeField(cacheName = MeterDictCode.PLAN_CATEGORY) + private String planCategory; + + @ApiModelProperty("计划分类名称") + @TableField(exist = false) + private String planCategoryName; + + /** + * 创建人id + */ + @ApiModelProperty("创建人id") + @TableField(exist = false) + private Long createUserId; + + /** + * 创建人姓名 + */ + @ApiModelProperty("创建人姓名") + @TableField(exist = false) + private String createUserName; + + /** + * 创建单位id + */ + @ApiModelProperty("创建单位id") + @TableField(exist = false) + private Long createDeptId; + + /** + * 创建单位名称 + */ + @ApiModelProperty("创建单位名称") + @TableField(exist = false) + private String createDeptName; + /** * 创建时间 */ diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java index f506553..7aa0b79 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/PlanNotifyRelation.java @@ -7,10 +7,16 @@ import java.time.LocalDateTime; import java.util.Date; +import com.casic.missiles.annotation.DictCodeField; import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; import lombok.Getter; +import lombok.NoArgsConstructor; import lombok.Setter; +import static com.casic.missiles.constants.MeterDictCode.PLAN_CHECK_COMPLETION; +import static com.casic.missiles.constants.MeterDictCode.PLAN_EXECUTE_STATUS; + /** *

* 受检设备-计量计划-送检通知关联表 @@ -21,6 +27,8 @@ */ @Getter @Setter +@NoArgsConstructor +@AllArgsConstructor @TableName("eqpt_plan_notify_relation") public class PlanNotifyRelation implements Serializable { @@ -128,7 +136,15 @@ */ @ApiModelProperty("执行状态") @TableField(exist = false) + @DictCodeField(cacheName = PLAN_EXECUTE_STATUS) private String executeStatus; + + /** + * 执行状态名称 + */ + @ApiModelProperty("执行状态名称") + @TableField(exist = false) + private String executeStatusName; /** * 执行时间 */ @@ -140,7 +156,12 @@ */ @ApiModelProperty("检定完成度") @TableField(exist = false) + @DictCodeField(cacheName = PLAN_CHECK_COMPLETION) private String checkCompletion; + + @ApiModelProperty("检定完成度名称") + @TableField(exist = false) + private String checkCompletionName; /** * 检定完成时间 */ @@ -148,6 +169,7 @@ @TableField(exist = false) private Date checkFinishTime; + public PlanNotifyRelation(Long notifyId, Long planRelationId) { this.notifyId = notifyId; this.planRelationId = planRelationId; diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/SampleStatueUpdate.java b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/SampleStatueUpdate.java index bdc2abe..b27b122 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/plan/SampleStatueUpdate.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/plan/SampleStatueUpdate.java @@ -19,6 +19,6 @@ @ApiModelProperty(value = "样品状态",required = true) private String sampleStatus; - @ApiModelProperty(value = "检定完成时间",required = true) + @ApiModelProperty(value = "检定完成时间",required = false) private Date finishTime; } diff --git a/casic-metering-service/pom.xml b/casic-metering-service/pom.xml index c146795..62c6519 100644 --- a/casic-metering-service/pom.xml +++ b/casic-metering-service/pom.xml @@ -5,7 +5,7 @@ casic-metering-eqpt-xichang com.casic - 2.0.0 + 1.0.0.0 4.0.0 @@ -16,19 +16,19 @@ com.casic casic-metering-dao - 2.0.0 + 1.0.0.0 com.casic casic-metering-model - 2.0.0 + 1.0.0.0 com.casic casic-metering-common - 2.0.0 + 1.0.0.0 org.springframework.boot diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBizBusinessOrderInfoService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBizBusinessOrderInfoService.java index 5f93b15..f7010f6 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBizBusinessOrderInfoService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBizBusinessOrderInfoService.java @@ -28,5 +28,5 @@ ReturnDTO updateStatusById(Long id, String alreadyReceived); - ReturnDTO backOrder(OrderBackRequest orderBackRequest, String alreadyBack); + } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java index aa53fed..c2f939d 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java @@ -26,6 +26,8 @@ EquipmentInfoForm detail(Long equipmentId); + List allCertificate(Long equipmentId,String equipmentType); + boolean updateEquipmentStatus(Long equipmentId,String usageStatus); boolean updateCertificateValid(Long equipmentId, Date certificateValid); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/business/BizBusinessOrderInfoServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/business/BizBusinessOrderInfoServiceImpl.java index 79c720d..31bd60c 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/business/BizBusinessOrderInfoServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/business/BizBusinessOrderInfoServiceImpl.java @@ -1,8 +1,10 @@ package com.casic.missiles.service.impl.business; +import cn.hutool.core.collection.CollUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.core.application.context.AbstractPermissionContext; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.business.OrderBackRequest; @@ -44,18 +46,18 @@ private final BusinessOrderListResponseMapper orderListResponseMapper; private final IBizBusinessOrderSampleRelationService sampleRelationService; private final BizBusinessOrderSampleRelationMapper sampleRelationMapper; + private final AbstractPermissionContext permissionContext; @Override public Page orderListPage(Page page, OrderListRequest request) throws Exception { QueryWrapper wrapper = listParamWrapperBuilder(request); + + // 查找本单位提交的 + Long deptId = permissionContext.getAuthService().getLoginUser().getDeptId(); + List parentDeptIds = permissionContext.getDeptService().getParentListById(deptId); + wrapper.and(i->i.eq("customer_id",deptId).or(CollUtil.isNotEmpty(parentDeptIds)).in("customer_id",parentDeptIds)); + Page resultPage = orderListResponseMapper.selectPage(page, wrapper); - List orderSampleList = sampleRelationMapper.selectList(null); - Map> orderSampleMap = orderSampleList.stream().collect( - Collectors.groupingBy(BizBusinessOrderSampleRelation::getOrderId) - ); - resultPage.getRecords().forEach( - orderSample -> orderSample.setSampleCount(orderSampleMap.containsKey(orderSample.getId()) ? orderSampleMap.get(orderSample.getId()).size() : 0) - ); for (OrderListResponse customerAdviceInfo : resultPage.getRecords()) { DictCodeUtils.convertDictCodeToName(customerAdviceInfo); } @@ -118,24 +120,13 @@ throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } - @Override - public ReturnDTO backOrder(OrderBackRequest orderBackRequest, String alreadyBack) { - BizBusinessOrderInfo businessOrder = new BizBusinessOrderInfo(); - businessOrder.setId(orderBackRequest.getId()); - businessOrder.setReceiveIllustrate(orderBackRequest.getBackReason()); - businessOrder.setReceiveStatus(alreadyBack); - if(this.baseMapper.updateById(businessOrder) > 0){ - return ReturnUtil.success(); - } - throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); - } private void initOrderInfo(BizBusinessOrderInfo businessOrder) { Long maxNo = this.baseMapper.selectMaxOrderNo(); String orderNo = NumberGeneratorUtil.getContactNo(PrefixCodeEnum.ORDER_PREFIX, maxNo); businessOrder.setCreateUserId(businessOrder.getUserId()); businessOrder.setCreateUserName(businessOrder.getUserName()); - businessOrder.setReceiveStatus(OrderStatusDictEnum.ALREADY_RECEIVED); + businessOrder.setReceiveStatus(OrderStatusDictEnum.NOT_RECEIVED); businessOrder.setOrderNo(orderNo); } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoApprovalServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoApprovalServiceImpl.java index bab78ce..5e9824d 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoApprovalServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoApprovalServiceImpl.java @@ -97,14 +97,7 @@ .setIgnoreError(true); BeanUtil.copyProperties(equipmentInfo, approvalForm, options); } - // 编辑申请:不需要审批的字段直接生效 - if (UPDATE == approvalForm.getApprovalType()) { - EquipmentInfo equipmentInfo = equipmentInfoService.getById(approvalForm.getEquipmentId()); - this.simpleUpdate(approvalForm, equipmentInfo); - if (!needApproval(approvalForm, equipmentInfo)) { - return approvalForm.getId(); - } - } + // 0. 生成设备id if (ObjectUtil.isEmpty(approvalForm.getEquipmentId())) { approvalForm.setEquipmentId(IdWorker.getId()); @@ -123,6 +116,14 @@ if (EQUIPMENT_TYPE_SPECIAL.equals(approvalForm.getEquipmentType())) { specialCertificateService.saveCertificateList(approvalForm.getEquipmentId(), approvalForm.getCertificateList()); } + // 编辑申请:不需要审批的字段直接生效 + if (UPDATE == approvalForm.getApprovalType()) { + EquipmentInfo equipmentInfo = equipmentInfoService.getById(approvalForm.getEquipmentId()); + this.simpleUpdate(approvalForm, equipmentInfo); + if (!needApproval(approvalForm, equipmentInfo)) { + return approvalForm.getId(); + } + } this.saveOrUpdate(approvalForm); // 4. 返回申请记录id return approvalForm.getId(); @@ -226,12 +227,13 @@ public EquipmentApprovalForm approvalInfoDetail(Long approvalId) { EquipmentInfoApproval approval = this.getById(approvalId); EquipmentApprovalForm info = new EquipmentApprovalForm(); + warpper(info); BeanUtil.copyProperties(approval,info); if (ObjectUtil.isNotEmpty(info)) { info.setAttachments(attachmentService.selectByEquipment(info.getEquipmentId())); info.setTechnicalTargetList(technicalTargetService.selectByEquipment(info.getEquipmentId())); info.setGroupInfos(groupInfoService.selectByEquipment(info.getEquipmentId())); - info.setCertificateList(new ArrayList<>()); // todo + info.setCertificateList(equipmentInfoService.allCertificate(info.getEquipmentId(),info.getEquipmentType())); } return info; } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoServiceImpl.java index e8a35a2..469317b 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoServiceImpl.java @@ -121,6 +121,7 @@ EquipmentInfoForm infoForm = new EquipmentInfoForm(); EquipmentInfo equipmentInfo = this.getById(equipmentId); if(ObjectUtil.isNotEmpty(equipmentInfo)){ + warpEquipmentInfo(equipmentInfo); equipmentInfo.setCompanyName(permissionContext.getDeptService().getDeptName(equipmentInfo.getCompanyId())); equipmentInfo.setDeptName(permissionContext.getDeptService().getDeptName(equipmentInfo.getDeptId())); equipmentInfo.setGroupInfos(groupInfoService.selectByEquipment(equipmentId)); @@ -134,7 +135,8 @@ return infoForm; } - private List allCertificate(Long equipmentId,String equipmentType){ + @Override + public List allCertificate(Long equipmentId,String equipmentType){ List listAll = new ArrayList<>(); listAll.addAll(this.baseMapper.bizCertificateList(equipmentId)); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentTechnicalTargetServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentTechnicalTargetServiceImpl.java index fcd4cb0..7ad7da3 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentTechnicalTargetServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentTechnicalTargetServiceImpl.java @@ -38,7 +38,7 @@ public boolean removeByEquipment(Long equipmentId) { QueryWrapper wrapper = new QueryWrapper<>(); wrapper.eq("equipment_id",equipmentId); - wrapper.notExists("(select id from eqpt_equipment_info i where i.id = eqpt_equipment_attachment.equipment_id)"); + wrapper.notExists("(select id from eqpt_equipment_info i where i.id = eqpt_equipment_technical_target.equipment_id)"); return this.remove(wrapper); } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/InspectionApprovalServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/InspectionApprovalServiceImpl.java index 80f34f4..a726353 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/InspectionApprovalServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/InspectionApprovalServiceImpl.java @@ -27,6 +27,7 @@ import org.springframework.transaction.annotation.Transactional; import java.util.List; +import java.util.Map; import java.util.stream.Collectors; import static com.casic.missiles.enums.equipment.EquipmentTypeEnum.EQUIPMENT_TYPE_NORMAL; @@ -77,17 +78,8 @@ @Transactional public void finishApproval(Long approvalId) { super.finishApproval(approvalId); - InspectionApproval approval = this.getById(approvalId); - List relations = relationService.listByInspection(approvalId); - if(CollUtil.isNotEmpty(relations)){ - List equipments = relations.stream().map(InspectionEquipmentRelation::getEquipmentId).collect(Collectors.toList()); - UpdateWrapper updateWrapper = new UpdateWrapper<>(); - updateWrapper.set("execute_status",INSPECTION_TYPE_EARLY.equals(approval.getApprovalType()) ? ExecuteStatusEnum.EARLY : ExecuteStatusEnum.DELAY); - updateWrapper.in("equipment_id",equipments); - updateWrapper.eq("execute_status",ExecuteStatusEnum.UN_EXECUTE); - planEquipmentRelationService.update(updateWrapper); - } + planEquipmentRelationService.inspectionStatusUpdate(INSPECTION_TYPE_EARLY.equals(approval.getApprovalType()) ? ExecuteStatusEnum.EARLY : ExecuteStatusEnum.DELAY,approvalId); } @Override diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanEquipmentRelationServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanEquipmentRelationServiceImpl.java index a95a3ac..495239b 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanEquipmentRelationServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanEquipmentRelationServiceImpl.java @@ -134,4 +134,9 @@ updateWrapper.exists(String.format("select id from eqpt_plan b where b.id = eqpt_plan_equipment_relation.plan_id and b.year = %d", Calendar.getInstance().get(Calendar.YEAR))); this.update(updateWrapper); } + + @Override + public void inspectionStatusUpdate(String executeStatus, Long inspectionId) { + this.baseMapper.inspectionStatusUpdate(executeStatus, inspectionId); + } } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanNotifyRelationServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanNotifyRelationServiceImpl.java index b62905a..97ddfdc 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanNotifyRelationServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanNotifyRelationServiceImpl.java @@ -45,7 +45,7 @@ @Override public List groupByName(Long notifyId) { QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.exists(String.format(" (select id from eqpt_plan_equipment_relation r1 where r1.equipment_id = id and EXISTS (select id from eqpt_plan_notify_relation r2 where r2.plan_relation_id = r1.id and r2.notify_id = %d))",notifyId)); + queryWrapper.exists(String.format(" (select id from eqpt_plan_equipment_relation r1 where r1.equipment_id = eqpt_equipment_info.id and EXISTS (select id from eqpt_plan_notify_relation r2 where r2.plan_relation_id = r1.id and r2.notify_id = %d))",notifyId)); queryWrapper.groupBy("equipment_name"); queryWrapper.select("equipment_name as 'equipmentName',count(*) as 'count'"); List> resMap = equipmentInfoService.listMaps(queryWrapper); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanNotifyServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanNotifyServiceImpl.java index 1ffe44e..0cf2db9 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanNotifyServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/plan/PlanNotifyServiceImpl.java @@ -56,6 +56,10 @@ */ @Override public void notify(Long planId) { + if(checkHaveSent(planId)){ + return; + } + List relationList = planRelationService.listByPlanAndName(planId,null); List userList = userService.getUsersByRoleTips(null,null); Plan planInfo = planService.getById(planId); @@ -72,6 +76,8 @@ planNotify.setNotifyUser(user.getId()); planNotify.setNotifyNo(planInfo.getPlanNo()); planNotify.setNotifyName(planInfo.getPlanName()); + planNotify.setCreateTime(planInfo.getCreateTime()); + this.save(planNotify); List planRelations = directorMaps.get(director); notifyRelationService.saveRelations(planNotify.getId(), planRelations); @@ -87,12 +93,19 @@ planNotify.setNotifyDept(dept); planNotify.setNotifyNo(planInfo.getPlanNo()); planNotify.setNotifyName(planInfo.getPlanName()); + planNotify.setCreateTime(planInfo.getCreateTime()); this.save(planNotify); List planRelations = deptMaps.get(dept); notifyRelationService.saveRelations(planNotify.getId(), planRelations); } } + private boolean checkHaveSent(Long planId){ + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("plan_id",planId); + return this.count(queryWrapper) > 0; + } + private String getNotifyNo(String notifyType){ Long maxNo = this.baseMapper.selectMaxNo(notifyType); String prefix = NOTIFY_TYPE_USER.equals(notifyType) ? PrefixCodeEnum.NOTIFY_USER_PREFIX : PrefixCodeEnum.NOTIFY_DEPT_PREFIX; diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/status/EquipmentStatusLogServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/status/EquipmentStatusLogServiceImpl.java index 6caa177..4c429c9 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/status/EquipmentStatusLogServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/status/EquipmentStatusLogServiceImpl.java @@ -48,7 +48,7 @@ public List listByEquipment(Long equipmentId) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("equipment_id",equipmentId); - List list = this.listByEquipment(equipmentId); + List list = this.list(queryWrapper); list.forEach(i-> { try { DictCodeUtils.convertDictCodeToName(i); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/system/RemindConfigServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/system/RemindConfigServiceImpl.java index 9c7b016..4d4904e 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/system/RemindConfigServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/system/RemindConfigServiceImpl.java @@ -1,5 +1,6 @@ package com.casic.missiles.service.impl.system; +import cn.hutool.core.collection.CollUtil; import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; @@ -42,7 +43,10 @@ public Integer getRemindTimeByDeptId(Long deptId) { List parentIds = permissionContext.getDeptService().getParentListById(deptId); QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.eq("create_dept_id",deptId).or().in("create_dept_id",parentIds); + queryWrapper.eq("create_dept_id",deptId); + if(CollUtil.isNotEmpty(parentIds)){ + queryWrapper.or().in("create_dept_id",parentIds); + } queryWrapper.last("limit 1"); RemindConfig remindConfig = this.getOne(queryWrapper); if(ObjectUtil.isNotEmpty(remindConfig)){ diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/plan/IPlanEquipmentRelationService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/plan/IPlanEquipmentRelationService.java index 8dafcd0..f043eaf 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/plan/IPlanEquipmentRelationService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/plan/IPlanEquipmentRelationService.java @@ -33,4 +33,6 @@ void sampleStatusUpdate(SampleStatueUpdate sampleStatueUpdate); + void inspectionStatusUpdate(String executeStatus,Long inspectionId); + } diff --git a/pom.xml b/pom.xml index 56c8808..247ae77 100644 --- a/pom.xml +++ b/pom.xml @@ -3,7 +3,7 @@ 4.0.0 com.casic casic-metering-eqpt-xichang - 2.0.0 + 1.0.0.0 casic-metering-eqpt-xichang pom