guarantee-lsq il y a 1 an
Parent
commit
708ed541ee

+ 1 - 0
platform-common/src/main/java/com/platform/common/constant/CommonConstants.java

@@ -266,6 +266,7 @@ public interface CommonConstants {
     String OUT_STORE_BACK = "out_store_back"; // 仓库调拨
     String REPAIR_STATUS_RECORD = "repair_status_record"; // 维修状态记录
     String REPAIR_RECORD = "repair_record"; // 维修记录
+    String DISPATCH_RECORD = "dispatch_record"; // 转派记录
     String REPAIR_DISPATCH_RECORD = "repair_dispatch_record"; // 维修转派记录
     String REPAIR_VERIFY_RECORD = "repair_verify_record"; // 维修审核记录
     String REPAIR_TICKET_RECORD = "repair_ticket_record"; // 维修票证记录

+ 16 - 0
platform-dao/src/main/java/com/platform/dao/dto/repair/DispatchRecordTemplateData.java

@@ -0,0 +1,16 @@
+package com.platform.dao.dto.repair;
+
+import lombok.Data;
+
+import java.io.Serializable;
+
+@Data
+public class DispatchRecordTemplateData implements Serializable {
+
+    private String remark;
+
+    /**
+     * 转派理由
+     */
+    private String opinion;
+}

+ 1 - 0
platform-dao/src/main/java/com/platform/dao/dto/repair/RepairApplicationFormDTO.java

@@ -517,5 +517,6 @@ public class RepairApplicationFormDTO extends BaseDTO implements Serializable {
     private List<String> sqlString;
     private String sqlValue;
     private String tempUserId;
+    private String roleCode;
 
 }

+ 16 - 0
platform-dao/src/main/resources/mapper/repair/RepairApplicationFormMapper.xml

@@ -390,6 +390,22 @@
                     dispatch_user_id = null,
                 </otherwise>
             </choose>
+            <choose>
+                <when test="repairUserName != null">
+                    repair_user_name = #{repairUserName},
+                </when>
+                <otherwise>
+                    repair_user_name = null,
+                </otherwise>
+            </choose>
+            <choose>
+                <when test="repairEndTime != null">
+                    repair_end_time = #{repairEndTime},
+                </when>
+                <otherwise>
+                    repair_end_time = null,
+                </otherwise>
+            </choose>
             <if test="remark != null">
                 remark = #{remark},
             </if>

+ 51 - 18
platform-service/src/main/java/com/platform/service/repair/strategy/impl/LongYanRepairStrategy.java

@@ -1017,33 +1017,46 @@ public class LongYanRepairStrategy extends AbstractRepairBaseStrategy {
         }
         SysUser user = sysUserMapper.selectByPrimaryKey(model.getDispatchUserId());
         RepairApplicationForm form = repairApplicationFormMapper.selectByPrimaryKey(model.getId());
-        // 转派人为工程师时
+        // 记录转派记录
+        addDispatchRecord(form,model.getRepairDispatchRemark());
+        if("Maintenance".equals(model.getRoleCode()) || "Maintenance_Leader".equals(model.getRoleCode())){
+            // 转派给维修人员
+            form.setStatus(RepairApplicationFormStatusEnum.PROCESSING.getValue());
+            // 工程师置空
+            form.setDispatchUserId(null);
+            form.setRepairUserId(model.getDispatchUserId());
+            form.setRepairUserName(user.getUsername());
+            // 给数据
+            model.setRepairUserId(form.getRepairUserId());
+            model.setRepairUserName(form.getRepairUserName());
+            // 添加维修记录
+            addRepairRecord(model);
+        }else if("REPAIR_MANAGE".equals(model.getRoleCode())){
+            // 转派给工程师
+            form.setStatus(RepairApplicationFormStatusEnum.DISPATCH_REPAIR.getValue());
+            form.setDispatchUserId(user.getUserId());
+            form.setRepairUserId(null);
+            form.setRepairUserName(null);
+        }
+        form.setUpdateTime(LocalDateTime.now());
+        form.setRepairDeptId(model.getDeptId());
+        form.setRepairEndTime(null);
+        repairApplicationFormMapper.updateLongYan(form);
+        // 添加状态记录
+        addRepairStatusRecord(form,"维修转派");
+        return model;
+
+       /* // 转派人为工程师时
         if(model.getRoleType() == 3){
             model.setDispatchUserId(form.getDispatchUserId());
-            // 添加维修转派记录
-            //addRepairDispatchRecord(model,user);
             // 更新维修信息
             form.setDispatchUserId(user.getUserId());
             form.setRepairDeptId(sysUserDeptMapper.selectDeptIdByUserId(user.getUserId()));
-            //form.setRepairUserId(null);
-            //form.setStatus(RepairApplicationFormStatusEnum.DISPATCH_REPAIR.getValue());
-            //form.setUpdateTime(LocalDateTime.now());
-            //repairApplicationFormMapper.updateLongYan(form);
-            // 添加状态记录
-            //addRepairStatusRecord(form,"维修转派");
         }else if(model.getRoleType() == 4){ // 区域负责人转派
             model.setDispatchUserId(form.getReportLeaderId());
-            // 添加维修转派记录
-            //addRepairDispatchRecord(model,user);
             // 更新维修信息
             form.setReportLeaderId(user.getUserId());
             form.setRepairDeptId(sysUserDeptMapper.selectDeptIdByUserId(user.getUserId()));
-            //form.setRepairUserId(null);
-            //form.setStatus(RepairApplicationFormStatusEnum.DISPATCH_REPAIR.getValue());
-            //form.setUpdateTime(LocalDateTime.now());
-            //repairApplicationFormMapper.updateLongYan(form);
-            // 添加状态记录
-            //addRepairStatusRecord(form,"维修转派");
         }
         // 添加维修转派记录
         addRepairDispatchRecord(model,user);
@@ -1053,7 +1066,7 @@ public class LongYanRepairStrategy extends AbstractRepairBaseStrategy {
         repairApplicationFormMapper.updateLongYan(form);
         // 添加状态记录
         addRepairStatusRecord(form,"维修转派");
-        return model;
+        return model;*/
     }
 
     /**
@@ -1192,6 +1205,26 @@ public class LongYanRepairStrategy extends AbstractRepairBaseStrategy {
         customFieldTemplateDataMapper.insert(data);
     }
 
+    /**
+     * 添加转派记录
+     * @param form
+     */
+    private void addDispatchRecord(RepairApplicationForm form,String remark){
+        CustomFieldTemplateData data = new CustomFieldTemplateData();
+        data.setId(IdGeneratorUtils.getObjectId());
+        data.setObjId(form.getId());
+        data.setCreatedTime(LocalDateTime.now());
+        data.setCreatedUserId(form.getDispatchUserId());
+        data.setCreatedUserName(sysUserService.getModelById(form.getDispatchUserId()).getRealName());
+        data.setRemark(CommonConstants.DISPATCH_RECORD);
+        DispatchRecordTemplateData dataInfo = new DispatchRecordTemplateData();
+        dataInfo.setOpinion(remark);
+        dataInfo.setRemark(remark);
+        data.setData(JsonUtils.objectToJson(dataInfo));
+        data.setDelFlag(0);
+        customFieldTemplateDataMapper.insert(data);
+    }
+
     /**
      * 添加维修转派记录
      * @param form