From 643e1af242a139b408969dfa1ba2f52e554c8c41 Mon Sep 17 00:00:00 2001
From: “linengliang” <vanSuperEnergy@163.com>
Date: 星期三, 25 十月 2023 17:03:53 +0800
Subject: [PATCH] 已经处理的问题

---
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/RepairOrder.java                            |    6 +++
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EquipmentReportRepairServiceImpl.java |   11 ++++-
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/RepairOrderMapper.xml                   |    9 ++++
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/RepairOrderMapper.java                      |    5 ++
 lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/entity/SysUser.java          |    2 +
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/RepairOrderController.java              |   42 ++++++++++++++++++++
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/RepairOrderServiceImpl.java           |    2 
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EquipmentReportRepairController.java    |   28 ++++++++++++--
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EquipmentReportRepair.java                  |    3 +
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EquipmentReportRepairMapper.xml         |   11 +++++
 10 files changed, 110 insertions(+), 9 deletions(-)

diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EquipmentReportRepairController.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EquipmentReportRepairController.java
index 5710b28..f82e765 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EquipmentReportRepairController.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EquipmentReportRepairController.java
@@ -7,6 +7,7 @@
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import lombok.extern.slf4j.Slf4j;
+import org.jeecg.common.api.dto.message.MessageDTO;
 import org.jeecg.common.api.vo.Result;
 import org.jeecg.common.aspect.annotation.AutoLog;
 import org.jeecg.common.constant.CommonConstant;
@@ -19,11 +20,15 @@
 import org.jeecg.modules.eam.service.IEamEquipmentService;
 import org.jeecg.modules.eam.service.IEquipmentReportRepairService;
 import org.jeecg.modules.eam.service.IFaultDescriptionService;
+import org.jeecg.modules.system.entity.SysUser;
+import org.jeecg.modules.system.service.ISysUserService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.context.annotation.Lazy;
+import org.springframework.transaction.annotation.Transactional;
 import org.springframework.web.bind.annotation.*;
 
 import javax.servlet.http.HttpServletRequest;
+import java.util.List;
 import java.util.Map;
 
 /**
@@ -44,13 +49,12 @@
 
     @Autowired
     private ISysBaseAPI sysBaseApi;
+    @Autowired
+    private ISysUserService userService;
 
     @Autowired
     @Lazy
     private IFaultDescriptionService faultDescriptionService;
-//    @Autowired
-//    private IUploadRelaService uploadRelaService;
-
     /**
      * 鍒嗛〉鍒楄〃鏌ヨ
      *
@@ -89,6 +93,7 @@
     @AutoLog(value = "mom_eam_equipment_report_repair-娣诲姞")
     @ApiOperation(value = "mom_eam_equipment_report_repair-娣诲姞", notes = "mom_eam_equipment_report_repair-娣诲姞")
     @PostMapping(value = "/add")
+    @Transactional(rollbackFor = {Exception.class})
     public Result<String> add(@RequestBody EquipmentReportRepair equipmentReportRepair) {
         equipmentReportRepair.setStatus("1");
         equipmentReportRepair.setSource("1");
@@ -98,7 +103,21 @@
         equipment.setEquipmentStatus("2");
         String teamId = equipment.getTeamId();
         if(StringUtils.isNotBlank(teamId)){
-            
+            List<SysUser> sysUsers = userService.list(new QueryWrapper<SysUser>()
+                    .eq("team_id",teamId)
+                    .eq("del_flag",0));
+            for(SysUser user:sysUsers){
+                String msg = "缁熶竴缂栧彿涓恒��"+equipment.getNum()+"銆戠殑璁惧闇�瑕佺淮淇紝璇风Щ姝ヨ嚦鏁呴殰鎶ヤ慨鏌ョ湅";
+                MessageDTO messageDTO = new MessageDTO();
+                messageDTO.setTitle("鏁呴殰鎶ヤ慨鎻愰啋");
+                messageDTO.setContent(msg);
+                messageDTO.setCategory("鏁呴殰鎶ヤ慨鎻愰啋");
+                messageDTO.setFromUser("鏁呴殰鎶ヤ慨鎻愰啋灏忓姪鎵�");
+                messageDTO.setToUser(user.getUsername());
+                sysBaseApi.sendSysAnnouncement(messageDTO);
+            }
+        }else {
+            return Result.error("璇ヨ澶囧皻鏈淮鎶ょ淮淇彮缁�,璇风淮鎶ゅ悗鍐嶆姤淇�");
         }
         //娣诲姞鏁呴殰鎻忚堪淇℃伅
         FaultDescription faultDescription = new FaultDescription();
@@ -106,6 +125,7 @@
         faultDescription.setFaultId(equipmentReportRepair.getId());
         faultDescription.setPhoto(equipmentReportRepair.getPhoto());
         faultDescriptionService.save(faultDescription);
+        equipmentService.updateById(equipment);
         return Result.OK("娣诲姞鎴愬姛锛�");
     }
 
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/RepairOrderController.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/RepairOrderController.java
index cfa62f0..073cfe2 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/RepairOrderController.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/RepairOrderController.java
@@ -92,6 +92,12 @@
 	 @Autowired
 	 @Lazy
 	 private IProjectMaintenanceOrderService projectMaintenanceOrderService;
+	 @Autowired
+	 @Lazy
+	 private IdentityService sysIdentityService;
+
+
+
 
 
 
@@ -1491,7 +1497,18 @@
 	  * @return
 	  */
 	 @PutMapping(value = "/start")
+	 @Transactional(rollbackFor = Exception.class)
 	 public Result<?> orderStart(@RequestBody RepairOrder repairOrder){
+	 	if(StringUtils.isNotBlank(repairOrder.getReportRepairId())){
+			EquipmentReportRepair equipmentReportRepair = equipmentReportRepairService.getById(repairOrder.getReportRepairId());
+			equipmentReportRepair.setStatus("3");
+			equipmentReportRepairService.updateById(equipmentReportRepair);
+			if(StringUtils.isNotBlank(equipmentReportRepair.getEquipmentId())){
+				Equipment equipment = equipmentService.getById(equipmentReportRepair.getEquipmentId());
+				equipment.setEquipmentStatus("7");
+				equipmentService.updateById(equipment);
+			}
+		}
 	 	if(StringUtils.isNotBlank(repairOrder.getProjectMaintenanceOrderId())){
 			//鍒ゆ柇椤圭洰鎬х淮淇瓙琛ㄧ姸鎬�
 	 		ProjectMaintenanceOrderDetail projectMaintenanceOrderDetail = projectMaintenanceOrderDetailService.getById(repairOrder.getProjectMaintenanceOrderId());
@@ -1578,5 +1595,28 @@
 		 }
 		 return Result.OK(repairOrderService.update(new UpdateWrapper<RepairOrder>().set("status",7).eq("id",repairOrder.getId())));
 	 }
-
+	 @PostMapping("addBySelectReport")
+	 public Result<?> addBySelectReport(@RequestBody List<EquipmentReportRepair> equipmentReportRepairs){
+	 	LoginUser user= (LoginUser)SecurityUtils.getSubject().getPrincipal();
+	 	for(EquipmentReportRepair equipmentReportRepair:equipmentReportRepairs){
+			String num = sysIdentityService.getNumByTypeAndLength("RepairOrder",4);
+			Equipment equipment = equipmentService.getById(equipmentReportRepair.getEquipmentId());
+	 		equipmentReportRepair.setStatus("2");
+	 		RepairOrder repairOrder = new RepairOrder();
+	 		repairOrder.setNum(num);
+	 		repairOrder.setReportRepairId(equipmentReportRepair.getId());
+	 		repairOrder.setStatus("2");
+	 		repairOrder.setEquipmentId(equipment.getId());
+	 		repairOrder.setTeamId(equipment.getTeamId());
+	 		repairOrder.setDepartId(equipment.getUseId());
+	 		repairOrder.setFaultDescription(equipmentReportRepair.getFaultDescription());
+	 		repairOrder.setFaultTime(equipmentReportRepair.getFaultTime());
+	 		repairOrder.setResponsibilityId(user.getId());
+	 		repairOrder.setRepairOrderType(0);
+	 		repairOrder.setDelFlag(0);
+	 		repairOrderService.save(repairOrder);
+		}
+	 	equipmentReportRepairService.updateBatchById(equipmentReportRepairs);
+	 	return Result.OK("棰嗗彇鎴愬姛");
+	 }
 }
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EquipmentReportRepair.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EquipmentReportRepair.java
index 1d08152..187628a 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EquipmentReportRepair.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EquipmentReportRepair.java
@@ -177,4 +177,7 @@
      */
     @TableField(exist = false)
     private List<SysUpload> sysUploadList;
+
+    @TableField(exist = false)
+    private String teamId;
 }
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/RepairOrder.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/RepairOrder.java
index 34b5611..c0fa349 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/RepairOrder.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/RepairOrder.java
@@ -280,4 +280,10 @@
     @TableField(exist = false)
     List<RepairOrderDetail> orderDetails;
 
+    @TableField(exist = false)
+    private String factoryModelId;
+    @TableField(exist = false)
+    private String equipmentCategoryId;
+
+
 }
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/RepairOrderMapper.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/RepairOrderMapper.java
index 4ffd7a2..c568a66 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/RepairOrderMapper.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/RepairOrderMapper.java
@@ -30,7 +30,10 @@
                                             @Param("equipmentNum") String equipmentNum,
                                             @Param("equipmentName")  String equipmentName,
                                             @Param("status")  String status,
-                                            @Param("repairOrderType") Integer repairOrderType
+                                            @Param("repairOrderType") Integer repairOrderType,
+                                         @Param("equipmentCategoryId")   String equipmentCategoryId,
+                                         @Param("factoryModelId")    String  factoryModelId,
+                                         @Param("specificEquipment")     String     specificEquipment
     );
 
     IPage<Map<String, Object>> getUserTeam(IPage<Map> pageData, @Param("realname") String realname);
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EquipmentReportRepairMapper.xml b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EquipmentReportRepairMapper.xml
index ac70eca..79d1969 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EquipmentReportRepairMapper.xml
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EquipmentReportRepairMapper.xml
@@ -26,6 +26,7 @@
             t2.num equipmentNum,
             t2.name equipmentName,
             t2.model equipmentModel,
+            t2.team_id teamId,
             t2.specification equipmentSpecification,
             t3.depart_name departName,
             t4.item_text urgencyName,
@@ -35,6 +36,7 @@
         mom_eam_equipment_report_repair t1
         left join mom_eam_equipment t2 on t1.equipment_id = t2.id
         left join sys_depart t3 on t1.use_depart_id = t3.id
+        left join sys_user t8 on t2.team_id = t2.team_id
         left join (select * from v_sys_dict where dict_code='urgency') t4 on t1.urgency = t4.item_value
         left join (select * from v_sys_dict where dict_code='equipment_report_repair_status') t5 on t1.status = t5.item_value
         left join (select * from v_sys_dict where dict_code='is_stop') t6 on t1.is_stop = t6.item_value
@@ -48,6 +50,15 @@
         <if test="params.equipmentNum != null and params.equipmentNum != ''">
             and t2.num like concat('%',#{params.equipmentNum},'%')
         </if>
+        <if test="params.equipmentName != null and params.equipmentName != ''">
+            and t2.name like concat('%',#{params.equipmentName},'%')
+        </if>
+        <if test="params.status != null and params.status != ''">
+            and t1.status = #{params.status}
+        </if>
+        <if test="params.teamId != null and params.teamId != ''">
+            and t2.team_id = #{params.teamId}
+        </if>
         ORDER BY t1.create_time desc
     </select>
 </mapper>
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/RepairOrderMapper.xml b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/RepairOrderMapper.xml
index dd580f2..87f5160 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/RepairOrderMapper.xml
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/RepairOrderMapper.xml
@@ -62,6 +62,15 @@
         <if test="status != null and status != ''">
             and t1.status = #{status}
         </if>
+        <if test="equipmentCategoryId != null and equipmentCategoryId != ''">
+            and t2.equipment_category_id = #{equipmentCategoryId}
+        </if>
+        <if test="factoryModelId != null and factoryModelId != ''">
+            and t2.factory_model_id = #{factoryModelId}
+        </if>
+        <if test="specificEquipment != null and specificEquipment != ''">
+            and t2.specific_equipment = #{specificEquipment}
+        </if>
         and t1.repair_order_type = #{repairOrderType}
         order by t1.create_time desc
     </select>
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EquipmentReportRepairServiceImpl.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EquipmentReportRepairServiceImpl.java
index a72bb38..606c9bb 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EquipmentReportRepairServiceImpl.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EquipmentReportRepairServiceImpl.java
@@ -1,6 +1,7 @@
 package org.jeecg.modules.eam.service.impl;
 
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.StringUtils;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.github.xiaoymin.knife4j.core.util.CollectionUtils;
@@ -13,6 +14,8 @@
 //import org.jeecg.modules.system.entity.SysUpload;
 //import org.jeecg.modules.system.entity.SysUploadRela;
 //import org.jeecg.modules.system.service.IUploadRelaService;
+import org.jeecg.modules.system.entity.SysUser;
+import org.jeecg.modules.system.mapper.SysUserMapper;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
@@ -37,6 +40,8 @@
 //    private IUploadRelaService uploadRelaService;
     @Autowired
     private ISysBaseAPI sysBaseApi;
+    @Autowired
+    private SysUserMapper userMapper;
     /**
      * 鏁呴殰鎶ヤ慨娣诲姞
      *
@@ -61,7 +66,6 @@
         baseMapper.updateById(faultTimeVerify(equipmentReportRepair));
         // 楠岃瘉淇敼鍓嶄慨鏀瑰悗鏄惁涓�鑷�
         if (!equipmentReportRepair.getPhoto().equals(equipmentReportRepair1.getPhoto())) {
-//            uploadRelaService.delSysUploadRelaByBusIdAndBusType(id, "equipment_management_failure_photo");
             sysBaseApi.delSysUploadRelaByBusIdAndBusType(id, "equipment_management_failure_photo");
             establishRelations(equipmentReportRepair.getSysUploadList(), id);
         }
@@ -89,7 +93,6 @@
                     sysUploadRelaList.add(sysUploadRela);
                 });
                 // 涓婁紶鏂囦欢涓庝笟鍔℃暟鎹叧绯�
-//                uploadRelaService.saveBatch(sysUploadRelaList);
                 sysBaseApi.saveOrUpdateBatchUploadRela(sysUploadRelaList);
             }
         }
@@ -98,6 +101,10 @@
     @Override
     public IPage<Map<String, Object>> getReportRepairList(Integer pageNo, Integer pageSize, Map<String, Object> params) {
         IPage<Map> pageData = new Page<Map>(pageNo, pageSize);
+        if(StringUtils.isNotBlank((String)params.get("userId"))){
+            SysUser sysUser = userMapper.selectById((String)params.get("userId"));
+            params.put("teamId",sysUser.getTeamId());
+        }
         return super.getBaseMapper().getReportRepairList(pageData, params) ;
     }
 }
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/RepairOrderServiceImpl.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/RepairOrderServiceImpl.java
index 63623a6..07867b0 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/RepairOrderServiceImpl.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/RepairOrderServiceImpl.java
@@ -76,7 +76,7 @@
 	@Override
 	public Page<RepairOrder> getRepairOrderList(Page<RepairOrder> page, RepairOrder repairOrder) {
 
-		return page.setRecords(baseMapper.getRepairOrderList(page,repairOrder.getNum(),repairOrder.getEquipmentNum(),repairOrder.getEquipmentName(),repairOrder.getStatus(),repairOrder.getRepairOrderType()));
+		return page.setRecords(baseMapper.getRepairOrderList(page,repairOrder.getNum(),repairOrder.getEquipmentNum(),repairOrder.getEquipmentName(),repairOrder.getStatus(),repairOrder.getRepairOrderType(),repairOrder.getEquipmentCategoryId(),repairOrder.getFactoryModelId(),repairOrder.getSpecificEquipment()));
 	}
 
 	@Override
diff --git a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/entity/SysUser.java b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/entity/SysUser.java
index bd2bb94..35eea80 100644
--- a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/entity/SysUser.java
+++ b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/entity/SysUser.java
@@ -195,4 +195,6 @@
      */
     @TableField(exist = false)
     private String homePath;
+    @Dict(dicCode = "id",dictTable = "mom_base_team",dicText = "name")
+    private String teamId;
 }

--
Gitblit v1.9.3