diff --git a/aucma-dms/src/main/java/com/aucma/dms/controller/DmsBillsFaultInstanceController.java b/aucma-dms/src/main/java/com/aucma/dms/controller/DmsBillsFaultInstanceController.java index 06e636b..894a717 100644 --- a/aucma-dms/src/main/java/com/aucma/dms/controller/DmsBillsFaultInstanceController.java +++ b/aucma-dms/src/main/java/com/aucma/dms/controller/DmsBillsFaultInstanceController.java @@ -7,7 +7,9 @@ import com.aucma.common.utils.poi.ExcelUtil; import com.aucma.dms.domain.DmsBillsFaultInstance; import com.aucma.dms.domain.DmsFaultCompentsParts; import com.aucma.dms.domain.DmsFaultInstanceActivity; +import com.aucma.dms.domain.DmsKnowledgeRepair; import com.aucma.dms.service.IDmsBillsFaultInstanceService; +import com.aucma.dms.service.IDmsKnowledgeRepairService; import com.aucma.dms.utils.TemplateExcelUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.access.prepost.PreAuthorize; @@ -34,6 +36,19 @@ public class DmsBillsFaultInstanceController extends BaseController { @Autowired private IDmsBillsFaultInstanceService dmsBillsFaultInstanceService; + + @Autowired + private IDmsKnowledgeRepairService dmsKnowledgeRepairService; + + /** + * 查询维修知识库列表(用于下拉选择) + */ + @GetMapping("/knowledge/list") + public AjaxResult listKnowledge(DmsKnowledgeRepair dmsKnowledgeRepair) + { + List list = dmsKnowledgeRepairService.selectDmsKnowledgeRepairList(dmsKnowledgeRepair); + return success(list); + } /** * 查询检修工单列表 diff --git a/aucma-dms/src/main/java/com/aucma/dms/controller/DmsKnowledgeRepairController.java b/aucma-dms/src/main/java/com/aucma/dms/controller/DmsKnowledgeRepairController.java index c04ccc1..62a9179 100644 --- a/aucma-dms/src/main/java/com/aucma/dms/controller/DmsKnowledgeRepairController.java +++ b/aucma-dms/src/main/java/com/aucma/dms/controller/DmsKnowledgeRepairController.java @@ -103,4 +103,15 @@ public class DmsKnowledgeRepairController extends BaseController { return toAjax(dmsKnowledgeRepairService.deleteDmsKnowledgeRepairByKnowledgeRepairIds(knowledgeRepairIds)); } + + /** + * 查询维修知识库列表 + */ + @PreAuthorize("@ss.hasPermi('dms:knowledgeRepair:list')" ) + @GetMapping("/getKnowledgeRepairList") + public AjaxResult getKnowledgeRepairList(DmsKnowledgeRepair dmsKnowledgeRepair) + { + List list = dmsKnowledgeRepairService.selectDmsKnowledgeRepairList(dmsKnowledgeRepair); + return success(list); + } } diff --git a/aucma-dms/src/main/java/com/aucma/dms/controller/DmsMobileController.java b/aucma-dms/src/main/java/com/aucma/dms/controller/DmsMobileController.java index 500f3df..c1aa7dc 100644 --- a/aucma-dms/src/main/java/com/aucma/dms/controller/DmsMobileController.java +++ b/aucma-dms/src/main/java/com/aucma/dms/controller/DmsMobileController.java @@ -212,7 +212,7 @@ public class DmsMobileController extends BaseController { // @PreAuthorize("@ss.hasPermi('qms:checkresultdetail:add')" ) ////@Log(title = "故障报修工单", businessType = BusinessType.COMPLETE) @PostMapping("/completeRepair") - public AjaxResult completeRepair(DmsFaultInstanceActivity dmsFaultInstanceActivity,@RequestParam(value = "files") List files) throws JsonProcessingException { + public AjaxResult completeRepair(DmsFaultInstanceActivity dmsFaultInstanceActivity,@RequestParam(value = "files", required = false) List files) throws JsonProcessingException { dmsFaultInstanceActivity.setRepairConfirm(2); dmsFaultInstanceActivity.setConfirmTime(new Date()); String parts1 = dmsFaultInstanceActivity.getParts1(); diff --git a/aucma-dms/src/main/java/com/aucma/dms/domain/DmsBillsFaultInstance.java b/aucma-dms/src/main/java/com/aucma/dms/domain/DmsBillsFaultInstance.java index e395727..38a43e8 100644 --- a/aucma-dms/src/main/java/com/aucma/dms/domain/DmsBillsFaultInstance.java +++ b/aucma-dms/src/main/java/com/aucma/dms/domain/DmsBillsFaultInstance.java @@ -104,6 +104,12 @@ public class DmsBillsFaultInstance extends DmsBaseEntity private Long outsrcId; private String processHandleResolution; + + /** 关联维修知识库ID */ + private Long knowledgeRepairId; + + /** 验证方法 */ + private String verifyMethod; private List fileUrls; @@ -380,6 +386,22 @@ public class DmsBillsFaultInstance extends DmsBaseEntity this.dmsInstanceFiles = dmsInstanceFiles; } + public Long getKnowledgeRepairId() { + return knowledgeRepairId; + } + + public void setKnowledgeRepairId(Long knowledgeRepairId) { + this.knowledgeRepairId = knowledgeRepairId; + } + + public String getVerifyMethod() { + return verifyMethod; + } + + public void setVerifyMethod(String verifyMethod) { + this.verifyMethod = verifyMethod; + } + @Override public String toString() { return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) diff --git a/aucma-dms/src/main/java/com/aucma/dms/domain/vo/ModelBoardVo.java b/aucma-dms/src/main/java/com/aucma/dms/domain/vo/ModelBoardVo.java index 8d2ad97..4c22185 100644 --- a/aucma-dms/src/main/java/com/aucma/dms/domain/vo/ModelBoardVo.java +++ b/aucma-dms/src/main/java/com/aucma/dms/domain/vo/ModelBoardVo.java @@ -1,7 +1,7 @@ package com.aucma.dms.domain.vo; -import com.aucma.common.core.domain.BaseEntity; +import com.aucma.dms.domain.DmsBaseEntity; /** * 模型看板Vo对象 ModelBoardVo @@ -9,7 +9,7 @@ import com.aucma.common.core.domain.BaseEntity; * @author Yinq * @date 2024-08-21 */ -public class ModelBoardVo extends BaseEntity +public class ModelBoardVo extends DmsBaseEntity { private static final long serialVersionUID = 1L; diff --git a/aucma-dms/src/main/java/com/aucma/dms/mapper/DmsInstanceFileMapper.java b/aucma-dms/src/main/java/com/aucma/dms/mapper/DmsInstanceFileMapper.java index c10d031..9dbbac0 100644 --- a/aucma-dms/src/main/java/com/aucma/dms/mapper/DmsInstanceFileMapper.java +++ b/aucma-dms/src/main/java/com/aucma/dms/mapper/DmsInstanceFileMapper.java @@ -77,6 +77,13 @@ public interface DmsInstanceFileMapper * */ int deleteDmsInstanceFileByUpdate(Long targetId); + /** + * 根据目标ID删除文件(不限定target_type) + * @param targetId 目标ID + * @return 结果 + */ + int deleteDmsInstanceFileByTargetId(Long targetId); + /** * 查询工单文件;转换字段名称,供前端页面统一展示 * diff --git a/aucma-dms/src/main/java/com/aucma/dms/service/impl/DmsBillsFaultInstanceServiceImpl.java b/aucma-dms/src/main/java/com/aucma/dms/service/impl/DmsBillsFaultInstanceServiceImpl.java index 4aa282d..6350426 100644 --- a/aucma-dms/src/main/java/com/aucma/dms/service/impl/DmsBillsFaultInstanceServiceImpl.java +++ b/aucma-dms/src/main/java/com/aucma/dms/service/impl/DmsBillsFaultInstanceServiceImpl.java @@ -1,21 +1,5 @@ package com.aucma.dms.service.impl; -//import com.hw.common.core.constant.DmsConstants; -//import com.hw.common.core.constant.WfConstants; -//import com.hw.common.core.exception.ServiceException; -//import com.hw.common.core.utils.DateUtils; -//import com.hw.common.core.utils.uuid.Seq; -//import com.hw.common.security.utils.SecurityUtils; -//import com.aucma.dms.domain.DmsBillsFaultInstance; -//import com.aucma.dms.domain.DmsFaultCompentsParts; -//import com.aucma.dms.domain.DmsFaultInstanceActivity; -//import com.aucma.dms.domain.DmsInstanceFile; -//import com.aucma.dms.domain.vo.DmsBillsFaultInstanceScanVo; -//import com.aucma.dms.mapper.DmsBillsFaultInstanceMapper; -//import com.aucma.dms.mapper.DmsFaultInstanceActivityMapper; -//import com.aucma.dms.mapper.DmsInstanceFileMapper; -//import com.aucma.dms.service.IDmsBillsFaultInstanceService; - import com.aucma.common.constant.DmsConstants; import com.aucma.common.exception.ServiceException; import com.aucma.common.utils.DateUtils; @@ -68,39 +52,67 @@ public class DmsBillsFaultInstanceServiceImpl implements IDmsBillsFaultInstanceS */ @Override public DmsBillsFaultInstance selectDmsBillsFaultInstanceByRepairInstanceId(Long repairInstanceId) { -// DmsFaultInstanceActivity dmsFaultInstanceActivity = dmsFaultInstanceActivityMapper.selectDmsFaultInstanceActivityByRepairIdMin(repairInstanceId); -// DmsBillsFaultInstance dmsBillsFaultInstance = dmsBillsFaultInstanceMapper.selectDmsBillsFaultInstanceByRepairInstanceId(repairInstanceId); - DmsBillsFaultInstance dmsBillsFaultInstance = dmsBillsFaultInstanceMapper.selectFaultInstanceJoinFirstAndDeviceById(repairInstanceId); - DmsInstanceFile queryInstanceFile = new DmsInstanceFile(); - queryInstanceFile.setTargetType(DmsConstants.DMS_INSTANCE_FILE_TARGET_TYPE_FAULT_INSTANCE_ACTIVITY); - queryInstanceFile.setTargetId(dmsBillsFaultInstance.getInstanceActivityId()); - List dmsInstanceFiles = dmsInstanceFileMapper.selectDmsInstanceFileList(queryInstanceFile); + // 使用包含完整操作记录列表的查询方法 + DmsBillsFaultInstance dmsBillsFaultInstance = dmsBillsFaultInstanceMapper.selectFaultInstanceJoinActivityByRepairInstanceId(repairInstanceId); + + // 获取第一步操作记录的附件 + if (dmsBillsFaultInstance.getInstanceActivityId() != null) { + DmsInstanceFile queryInstanceFile = new DmsInstanceFile(); + queryInstanceFile.setTargetType(DmsConstants.DMS_INSTANCE_FILE_TARGET_TYPE_FAULT_INSTANCE_ACTIVITY); + queryInstanceFile.setTargetId(dmsBillsFaultInstance.getInstanceActivityId()); + List dmsInstanceFiles = dmsInstanceFileMapper.selectDmsInstanceFileList(queryInstanceFile); - for (DmsInstanceFile dmsInstanceFile : dmsInstanceFiles){ - String filePath = dmsInstanceFile.getFilePath(); - log.info("filePath1:"+filePath); - if(!filePath.contains("7309")){ - if(filePath.contains("https")){ - filePath.replaceFirst("https","http"); + for (DmsInstanceFile dmsInstanceFile : dmsInstanceFiles){ + String filePath = dmsInstanceFile.getFilePath(); + log.info("filePath1:"+filePath); + if(!filePath.contains("7309")){ + if(filePath.contains("https")){ + filePath.replaceFirst("https","http"); + } + int index= filePath.indexOf("/statics"); + filePath = "http://172.16.12.100:7309"+filePath.substring(index); + log.info("filePath2:"+filePath); + dmsInstanceFile.setUrl(filePath); + dmsInstanceFile.setFilePath(filePath); + }else{ + dmsInstanceFile.setUrl(dmsInstanceFile.getFilePath()); } - int index= filePath.indexOf("/statics"); - filePath = "http://172.16.12.100:7309"+filePath.substring(index); - log.info("filePath2:"+filePath); - dmsInstanceFile.setUrl(filePath); - dmsInstanceFile.setFilePath(filePath); - }else{ - dmsInstanceFile.setUrl(dmsInstanceFile.getFilePath()); } - + dmsBillsFaultInstance.setDmsInstanceFiles(dmsInstanceFiles); } - dmsBillsFaultInstance.setDmsInstanceFiles(dmsInstanceFiles); + + // 为每个操作记录加载附件 + List activityList = dmsBillsFaultInstance.getDmsFaultInstanceActivityList(); + if (!CollectionUtils.isEmpty(activityList)) { + for (DmsFaultInstanceActivity activity : activityList) { + DmsInstanceFile queryFile = new DmsInstanceFile(); + queryFile.setTargetType(DmsConstants.DMS_INSTANCE_FILE_TARGET_TYPE_FAULT_INSTANCE_ACTIVITY); + queryFile.setTargetId(activity.getInstanceActivityId()); + List activityFiles = dmsInstanceFileMapper.selectDmsInstanceFileList(queryFile); + + // 处理文件路径 + for (DmsInstanceFile file : activityFiles) { + String filePath = file.getFilePath(); + if(!filePath.contains("7309")){ + if(filePath.contains("https")){ + filePath = filePath.replaceFirst("https","http"); + } + int index= filePath.indexOf("/statics"); + if (index > -1) { + filePath = "http://172.16.12.100:7309"+filePath.substring(index); + } + file.setUrl(filePath); + file.setFilePath(filePath); + }else{ + file.setUrl(file.getFilePath()); + } + } - -// dmsBillsFaultInstance.setFaultType(dmsFaultInstanceActivity.getFaultType()); -// dmsBillsFaultInstance.setFaultDescription(dmsFaultInstanceActivity.getFaultDescription()); -// dmsBillsFaultInstance.setDesignOperations(dmsFaultInstanceActivity.getDesignOperations()); -// dmsBillsFaultInstance.setDeviceId(dmsFaultInstanceActivity.getDeviceId()); -// dmsBillsFaultInstance.setRepairType(dmsFaultInstanceActivity.getRepairType()); +// // 设置附件数量和文件列表 +// activity.setFileCount(activityFiles.size()); +// activity.setDmsInstanceFiles(activityFiles); + } + } return dmsBillsFaultInstance; } @@ -126,16 +138,17 @@ public class DmsBillsFaultInstanceServiceImpl implements IDmsBillsFaultInstanceS @Transactional @Override public int insertDmsBillsFaultInstance(DmsBillsFaultInstance dmsBillsFaultInstance) { - Date curretnDate = new Date(); + Date currentDate = new Date(); String userName = SecurityUtils.getLoginUser()==null ? SecurityUtils.getUsername() :SecurityUtils.getLoginUser().getUser().getNickName() ; // dmsBillsFaultInstance.setWfProcessId(WfConstants.WF_BILLS_FAULT_INSTANCE_PROCESS_ID); dmsBillsFaultInstance.setApplyUser(userName); - dmsBillsFaultInstance.setApplyTime(curretnDate); - dmsBillsFaultInstance.setCreateTime(curretnDate); + dmsBillsFaultInstance.setApplyTime(currentDate); + dmsBillsFaultInstance.setCreateTime(currentDate); dmsBillsFaultInstance.setCreateBy(SecurityUtils.getUserId()); dmsBillsFaultInstance.setBillsFaultCode(Seq.getId(Seq.dmsBillsFaultInstanceSeqType, Seq.dmsBillsFaultInstanceSeqCode)); dmsBillsFaultInstance.setBillsStatus(DmsConstants.DMS_BILLS_FAULT_INSTANCE_STATUS_TO_REPAIR); dmsBillsFaultInstance.setInstanceType(DmsConstants.DMS_BILLS_FAULT_INSTANCE_TYPE_MAUAL); + dmsBillsFaultInstance.setIsFlag("1"); int rows = dmsBillsFaultInstanceMapper.insertDmsBillsFaultInstance(dmsBillsFaultInstance); @@ -158,7 +171,30 @@ public class DmsBillsFaultInstanceServiceImpl implements IDmsBillsFaultInstanceS //存储图片 List fileUrls = dmsBillsFaultInstance.getFileUrls(); - batchInsertInstanceFiles(fileUrls, dmsFaultInstanceActivity.getInstanceActivityId()); + if (fileUrls != null && !fileUrls.isEmpty()) { + batchInsertInstanceFiles(fileUrls, dmsFaultInstanceActivity.getInstanceActivityId()); + } + + // 保存前端传来的操作记录列表(如果有) + List activityList = dmsBillsFaultInstance.getDmsFaultInstanceActivityList(); + if (!CollectionUtils.isEmpty(activityList)) { + for (int i = 0; i < activityList.size(); i++) { + DmsFaultInstanceActivity activity = activityList.get(i); + activity.setRepairInstanceId(dmsBillsFaultInstance.getRepairInstanceId()); + activity.setProcessStepOrder((long)(i + 2)); // 从第2步开始,第1步已经创建 + activity.setCreateTime(currentDate); + activity.setCreateBy(SecurityUtils.getUserId()); + activity.setProcessHandleStatus(DmsConstants.DMS_BILLS_FAULT_INSTANCE_ACTIVITY_HANDLE_STATUS_TO_PICK); + + // 插入操作记录 + dmsFaultInstanceActivityMapper.insertDmsFaultInstanceActivity(activity); + + // 处理操作记录的附件 + if (activity.getFileUrls() != null && !activity.getFileUrls().isEmpty()) { + batchInsertInstanceFiles(activity.getFileUrls(), activity.getInstanceActivityId()); + } + } + } return rows; } @@ -169,18 +205,72 @@ public class DmsBillsFaultInstanceServiceImpl implements IDmsBillsFaultInstanceS * @param dmsBillsFaultInstance 报修工单 * @return 结果 */ + @Transactional @Override public int updateDmsBillsFaultInstance(DmsBillsFaultInstance dmsBillsFaultInstance) { String username =SecurityUtils.getLoginUser()==null ? SecurityUtils.getUsername() :SecurityUtils.getLoginUser().getUser().getNickName() ; if (dmsBillsFaultInstance.getRepairConfirm()!=null){ dmsBillsFaultInstance.setConfirmer(username); } - dmsBillsFaultInstance.setUpdateTime(DateUtils.getNowDate()); - dmsInstanceFileMapper.deleteDmsInstanceFileByUpdate(dmsBillsFaultInstance.getRepairInstanceId()); + Date currentDate = DateUtils.getNowDate(); + dmsBillsFaultInstance.setUpdateTime(currentDate); + dmsBillsFaultInstance.setUpdateBy(SecurityUtils.getUserId()); + + // 更新主工单 int i = dmsBillsFaultInstanceMapper.updateDmsBillsFaultInstance(dmsBillsFaultInstance); - //存储图片 - List fileUrls = dmsBillsFaultInstance.getFileUrls(); - batchInsertInstanceFiles(fileUrls, dmsBillsFaultInstance.getInstanceActivityId()); + + // 处理主工单的附件(如果有) + if (dmsBillsFaultInstance.getInstanceActivityId() != null) { + dmsInstanceFileMapper.deleteDmsInstanceFileByUpdate(dmsBillsFaultInstance.getRepairInstanceId()); + List fileUrls = dmsBillsFaultInstance.getFileUrls(); + if (fileUrls != null && !fileUrls.isEmpty()) { + batchInsertInstanceFiles(fileUrls, dmsBillsFaultInstance.getInstanceActivityId()); + } + } + + // 处理操作记录列表 + List activityList = dmsBillsFaultInstance.getDmsFaultInstanceActivityList(); + if (!CollectionUtils.isEmpty(activityList)) { + for (DmsFaultInstanceActivity activity : activityList) { + if (activity.getInstanceActivityId() != null && activity.getInstanceActivityId() > 0) { + // 更新已有记录 + activity.setUpdateTime(currentDate); + activity.setUpdateBy(SecurityUtils.getUserId()); + dmsFaultInstanceActivityMapper.updateDmsFaultInstanceActivity(activity); + + // 更新附件:先删除旧的,再插入新的 + if (activity.getFileUrls() != null && !activity.getFileUrls().isEmpty()) { + dmsInstanceFileMapper.deleteDmsInstanceFileByTargetId(activity.getInstanceActivityId()); + batchInsertInstanceFiles(activity.getFileUrls(), activity.getInstanceActivityId()); + } + } else { + // 新增记录 + activity.setRepairInstanceId(dmsBillsFaultInstance.getRepairInstanceId()); + activity.setCreateTime(currentDate); + activity.setCreateBy(SecurityUtils.getUserId()); + activity.setProcessHandleStatus(DmsConstants.DMS_BILLS_FAULT_INSTANCE_ACTIVITY_HANDLE_STATUS_TO_PICK); + + // 设置步骤顺序(查询当前最大步骤号+1) + DmsFaultInstanceActivity queryActivity = new DmsFaultInstanceActivity(); + queryActivity.setRepairInstanceId(dmsBillsFaultInstance.getRepairInstanceId()); + List existingList = dmsFaultInstanceActivityMapper.selectDmsFaultInstanceActivityList(queryActivity); + long maxOrder = existingList.stream() + .mapToLong(a -> a.getProcessStepOrder() != null ? a.getProcessStepOrder() : 0) + .max() + .orElse(0); + activity.setProcessStepOrder(maxOrder + 1); + + // 插入新记录 + dmsFaultInstanceActivityMapper.insertDmsFaultInstanceActivity(activity); + + // 插入附件 + if (activity.getFileUrls() != null && !activity.getFileUrls().isEmpty()) { + batchInsertInstanceFiles(activity.getFileUrls(), activity.getInstanceActivityId()); + } + } + } + } + return i; } diff --git a/aucma-dms/src/main/java/com/aucma/dms/service/impl/ModelInterfacesServiceImpl.java b/aucma-dms/src/main/java/com/aucma/dms/service/impl/ModelInterfacesServiceImpl.java index fd7eb06..bde76e0 100644 --- a/aucma-dms/src/main/java/com/aucma/dms/service/impl/ModelInterfacesServiceImpl.java +++ b/aucma-dms/src/main/java/com/aucma/dms/service/impl/ModelInterfacesServiceImpl.java @@ -1,5 +1,12 @@ package com.aucma.dms.service.impl; +//import com.aucma.dms.domain.DmsRealtimeStatus; +//import com.aucma.dms.domain.WcsAgvStatus; +//import com.aucma.dms.domain.vo.ModelBoardVo; +//import com.aucma.dms.mapper.DmsRealtimeStatusMapper; +//import com.aucma.dms.mapper.WcsAgvStatusMapper; +//import com.aucma.dms.service.IModelInterfacesService; + import com.aucma.dms.domain.DmsRealtimeStatus; import com.aucma.dms.domain.WcsAgvStatus; import com.aucma.dms.domain.vo.ModelBoardVo; diff --git a/aucma-dms/src/main/resources/mapper/dms/DmsBillsFaultInstanceMapper.xml b/aucma-dms/src/main/resources/mapper/dms/DmsBillsFaultInstanceMapper.xml index 3315539..64aa5af 100644 --- a/aucma-dms/src/main/resources/mapper/dms/DmsBillsFaultInstanceMapper.xml +++ b/aucma-dms/src/main/resources/mapper/dms/DmsBillsFaultInstanceMapper.xml @@ -102,9 +102,13 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" where repair_instance_id = #{repairInstanceId} - + + + SELECT seq_dms_bills_fault_instance.NEXTVAL FROM DUAL + insert into dms_bills_fault_instance + repair_instance_id, fault_source_type, fault_source_id, bills_fault_code, @@ -126,6 +130,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + #{repairInstanceId}, #{faultSourceType}, #{faultSourceId}, #{billsFaultCode}, @@ -155,7 +160,6 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" fault_source_id = #{faultSourceId}, bills_fault_code = #{billsFaultCode}, bills_status = #{billsStatus}, - fault_source_type = #{faultSourceType}, apply_user = #{applyUser}, apply_time = #{applyTime}, real_begin_time = #{realBeginTime}, @@ -180,7 +184,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" delete from dms_bills_fault_instance where repair_instance_id = #{repairInstanceId} - + delete from dms_bills_fault_instance where repair_instance_id in #{repairInstanceId} @@ -196,7 +200,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" select dbfi.repair_instance_id, dbfi.fault_source_type, dbfi.fault_source_id, dbfi.bills_fault_code, dbfi.bills_status, dbfi.apply_user, dbfi.apply_time, dbfi.real_begin_time, dbfi.real_end_time, dbfi.require_end_time, dbfi.device_id,dbfi.approveStatus, - dbdl.device_code,dbdl.device_name,dbdl.device_location,dbdl.device_spec + dbdl.device_code, + dbdl.device_name, + dbdl.device_address as device_location, + dbdl.device_model as device_spec from dms_bills_fault_instance dbfi left join base_deviceledger dbdl on dbfi.device_id=dbdl.OBJ_ID @@ -225,7 +232,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - select a.repair_instance_id, a.fault_source_type, a.fault_source_id, a.bills_fault_code, a.bills_status, a.apply_user, a.apply_time, a.real_begin_time, a.real_end_time, a.require_end_time, a.instance_type, a.is_flag, a.remark, a.create_by, a.create_time, a.update_by, a.update_time,a.approveStatus,dbdl.device_code,dbdl.device_name,dbdl.device_location,dbdl.device_spec, - b.instance_activity_id as sub_instance_activity_id, b.repair_instance_id as sub_repair_instance_id, b.process_activity_id as sub_process_activity_id, b.fault_type as sub_fault_type, b.fault_description as sub_fault_description, b.design_operations as sub_design_operations, b.OBJ_ID as sub_device_id, b.repair_type as sub_repair_type, b.outsrc_id as sub_outsrc_id, b.process_handle_resolution as sub_process_handle_resolution, b.remark as sub_remark, b.process_handle_status as sub_process_handle_status, b.process_step_order as sub_process_step_order, b.start_time as sub_start_time, b.end_time as sub_end_time, b.handle_user_id as sub_handle_user_id, b.handle_by as sub_handle_by, b.handle_time as sub_handle_time, + select a.repair_instance_id, a.fault_source_type, a.fault_source_id, a.bills_fault_code, a.bills_status, a.apply_user, a.apply_time, a.real_begin_time, a.real_end_time, a.require_end_time, a.instance_type, a.is_flag, a.remark, a.create_by, a.create_time, a.update_by, a.update_time,a.approveStatus, + dbdl.device_code, + dbdl.device_name, + dbdl.device_address as device_location, + dbdl.device_model as device_spec, + b.instance_activity_id as sub_instance_activity_id, b.repair_instance_id as sub_repair_instance_id, b.process_activity_id as sub_process_activity_id, b.fault_type as sub_fault_type, b.fault_description as sub_fault_description, b.design_operations as sub_design_operations, b.device_id as sub_device_id, b.repair_type as sub_repair_type, b.outsrc_id as sub_outsrc_id, b.process_handle_resolution as sub_process_handle_resolution, b.remark as sub_remark, b.process_handle_status as sub_process_handle_status, b.process_step_order as sub_process_step_order, b.start_time as sub_start_time, b.end_time as sub_end_time, b.handle_user_id as sub_handle_user_id, b.handle_by as sub_handle_by, b.handle_time as sub_handle_time, a.approveStatus from dms_bills_fault_instance a left join base_deviceledger dbdl on a.device_id=dbdl.OBJ_ID @@ -278,7 +292,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" x.repairer , a.device_name , a.device_code, - a.device_location , + a.device_address as device_location , b.apply_user , b.apply_time , b.real_begin_time , @@ -287,7 +301,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" b.update_time, b.confirmer from - dms_fault_instance_activity x left join base_deviceledger a on x.device_id = a.device_id + dms_fault_instance_activity x left join base_deviceledger a on x.device_id = a.OBJ_ID left join dms_bills_fault_instance b on x.repair_instance_id = b.repair_instance_id where x.repair_instance_id = #{repairInstanceId} select instance_file_id, target_type, target_id, file_path as name,file_path as url from dms_instance_file