Bladeren bron

修改设备

ouyj 6 maanden geleden
bovenliggende
commit
a55765429e

+ 24 - 0
ygtx-gxt/src/main/java/com/ygtx/gxt/domain/GxtEquipment.java

@@ -5,6 +5,8 @@ import org.apache.commons.lang3.builder.ToStringStyle;
 import com.ygtx.common.annotation.Excel;
 import com.ygtx.common.core.domain.BaseEntity;
 
+import java.math.BigInteger;
+
 /**
  * 设备管理对象 gxt_equipment
  * 
@@ -51,6 +53,12 @@ public class GxtEquipment extends BaseEntity
     /** 责任人ID */
     private Long responsiblePersonId;
 
+    /** 维保中心id */
+    private Long maintenanceCenterId;
+
+    /** 场站id */
+    private Long stationId;
+
     public void setEquipmentId(Long equipmentId) 
     {
         this.equipmentId = equipmentId;
@@ -147,6 +155,22 @@ public class GxtEquipment extends BaseEntity
         this.responsiblePersonId = responsiblePersonId;
     }
 
+    public Long getMaintenanceCenterId() {
+        return maintenanceCenterId;
+    }
+
+    public void setMaintenanceCenterId(Long maintenanceCenterId) {
+        this.maintenanceCenterId = maintenanceCenterId;
+    }
+
+    public Long getStationId() {
+        return stationId;
+    }
+
+    public void setStationId(Long stationId) {
+        this.stationId = stationId;
+    }
+
     @Override
     public String toString() {
         return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)

+ 40 - 4
ygtx-gxt/src/main/java/com/ygtx/gxt/service/impl/GxtEquipmentServiceImpl.java

@@ -13,7 +13,9 @@ import javax.validation.Validator;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import com.ygtx.system.service.ISysUserService;
+import com.ygtx.system.service.ISysDeptService;
 import com.ygtx.common.core.domain.entity.SysUser;
+import com.ygtx.common.core.domain.entity.SysDept;
 import java.util.List;
 
 /**
@@ -31,6 +33,9 @@ public class GxtEquipmentServiceImpl implements IGxtEquipmentService
     @Autowired
     private ISysUserService sysUserService;
     
+    @Autowired
+    private ISysDeptService sysDeptService;
+    
     @Autowired
     protected Validator validator;
 
@@ -114,8 +119,6 @@ public class GxtEquipmentServiceImpl implements IGxtEquipmentService
     @Override
     public int insertGxtEquipment(GxtEquipment gxtEquipment)
     {
-        // 处理责任人信息
-        processResponsiblePerson(gxtEquipment);
         gxtEquipment.setCreateTime(DateUtils.getNowDate());
         return gxtEquipmentMapper.insertGxtEquipment(gxtEquipment);
     }
@@ -129,8 +132,6 @@ public class GxtEquipmentServiceImpl implements IGxtEquipmentService
     @Override
     public int updateGxtEquipment(GxtEquipment gxtEquipment)
     {
-        // 处理责任人信息
-        processResponsiblePerson(gxtEquipment);
         gxtEquipment.setUpdateTime(DateUtils.getNowDate());
         return gxtEquipmentMapper.updateGxtEquipment(gxtEquipment);
     }
@@ -198,6 +199,9 @@ public class GxtEquipmentServiceImpl implements IGxtEquipmentService
                     throw new ServiceException("机型不能为空!");
                 }
                 
+                // 处理维保中心和场站的部门ID
+                processDeptInfo(equipment);
+                
                 // 处理责任人信息
                 processResponsiblePerson(equipment);
                 
@@ -265,4 +269,36 @@ public class GxtEquipmentServiceImpl implements IGxtEquipmentService
             // 如果找到多个用户或未找到用户,则不设置责任人ID,保持原值
         }
     }
+    
+    /**
+     * 处理维保中心和场站的部门ID信息
+     * 根据维保中心和场站名称查找对应的部门信息
+     * 
+     * @param equipment 设备对象
+     */
+    private void processDeptInfo(GxtEquipment equipment) {
+        // 处理维保中心ID
+        if (StringUtils.isNotEmpty(equipment.getMaintenanceCenter())) {
+            SysDept dept = new SysDept();
+            dept.setDeptName(equipment.getMaintenanceCenter());
+            dept.setLevel("2"); // 维保中心层级为2
+            List<SysDept> depts = sysDeptService.selectDeptList(dept);
+            // 如果只找到一个维保中心,则设置维保中心ID
+            if (depts != null && depts.size() == 1) {
+                equipment.setMaintenanceCenterId(depts.get(0).getDeptId());
+            }
+        }
+        
+        // 处理场站ID
+        if (StringUtils.isNotEmpty(equipment.getStation())) {
+            SysDept dept = new SysDept();
+            dept.setDeptName(equipment.getStation());
+            dept.setLevel("3"); // 场站层级为3
+            List<SysDept> depts = sysDeptService.selectDeptList(dept);
+            // 如果只找到一个场站,则设置场站ID
+            if (depts != null && depts.size() == 1) {
+                equipment.setStationId(depts.get(0).getDeptId());
+            }
+        }
+    }
 }

+ 40 - 0
ygtx-gxt/src/main/java/com/ygtx/gxt/task/EquipmentSyncTask.java

@@ -5,7 +5,9 @@ import com.ygtx.common.utils.StringUtils;
 import com.ygtx.gxt.domain.GxtEquipment;
 import com.ygtx.gxt.mapper.GxtEquipmentMapper;
 import com.ygtx.system.service.ISysUserService;
+import com.ygtx.system.service.ISysDeptService;
 import com.ygtx.common.core.domain.entity.SysUser;
+import com.ygtx.common.core.domain.entity.SysDept;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -34,6 +36,9 @@ public class EquipmentSyncTask {
     
     @Autowired
     private ISysUserService sysUserService;
+    
+    @Autowired
+    private ISysDeptService sysDeptService;
 
     @Autowired
     @Qualifier("sourceDataSource")
@@ -74,6 +79,9 @@ public class EquipmentSyncTask {
                 equipment.setBrand(rs.getString("brand"));
                 equipment.setModel(rs.getString("model"));
                 
+                // 处理维保中心和场站的部门ID
+                processDeptInfo(equipment);
+                
                 // 处理责任人信息
                 String responsiblePersonName = rs.getString("responsible_person_name");
                 if (StringUtils.isNotEmpty(responsiblePersonName)) {
@@ -121,6 +129,38 @@ public class EquipmentSyncTask {
         }
     }
     
+    /**
+     * 处理维保中心和场站的部门ID信息
+     * 根据维保中心和场站名称查找对应的部门信息
+     * 
+     * @param equipment 设备对象
+     */
+    private void processDeptInfo(GxtEquipment equipment) {
+        // 处理维保中心ID
+        if (StringUtils.isNotEmpty(equipment.getMaintenanceCenter())) {
+            SysDept dept = new SysDept();
+            dept.setDeptName(equipment.getMaintenanceCenter());
+            dept.setLevel("2"); // 维保中心层级为2
+            List<SysDept> depts = sysDeptService.selectDeptList(dept);
+            // 如果只找到一个维保中心,则设置维保中心ID
+            if (depts != null && depts.size() == 1) {
+                equipment.setMaintenanceCenterId(depts.get(0).getDeptId());
+            }
+        }
+        
+        // 处理场站ID
+        if (StringUtils.isNotEmpty(equipment.getStation())) {
+            SysDept dept = new SysDept();
+            dept.setDeptName(equipment.getStation());
+            dept.setLevel("3"); // 场站层级为3
+            List<SysDept> depts = sysDeptService.selectDeptList(dept);
+            // 如果只找到一个场站,则设置场站ID
+            if (depts != null && depts.size() == 1) {
+                equipment.setStationId(depts.get(0).getDeptId());
+            }
+        }
+    }
+    
     /**
      * 同步数据到目标数据库
      * 

+ 9 - 1
ygtx-gxt/src/main/resources/mapper/gxt/GxtEquipmentMapper.xml

@@ -15,6 +15,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <result property="status"    column="status"    />
         <result property="responsiblePersonName"    column="responsible_person_name"    />
         <result property="responsiblePersonId"    column="responsible_person_id"    />
+        <result property="maintenanceCenterId"    column="maintenance_center_id"    />
+        <result property="stationId"    column="station_id"    />
         <result property="createBy"    column="create_by"    />
         <result property="createTime"    column="create_time"    />
         <result property="updateBy"    column="update_by"    />
@@ -22,7 +24,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
     </resultMap>
 
     <sql id="selectGxtEquipmentVo">
-        select equipment_id, equipment_code, maintenance_center, station, brand, model, equipment_type, status, responsible_person_name, responsible_person_id, create_by, create_time, update_by, update_time from gxt_equipment
+        select equipment_id, equipment_code, maintenance_center, station, brand, model, equipment_type, status, responsible_person_name, responsible_person_id, maintenance_center_id, station_id, create_by, create_time, update_by, update_time from gxt_equipment
     </sql>
 
     <select id="selectGxtEquipmentList" parameterType="GxtEquipment" resultMap="GxtEquipmentResult">
@@ -75,6 +77,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="status != null">status,</if>
             <if test="responsiblePersonName != null">responsible_person_name,</if>
             <if test="responsiblePersonId != null">responsible_person_id,</if>
+            <if test="maintenanceCenterId != null">maintenance_center_id,</if>
+            <if test="stationId != null">station_id,</if>
             <if test="createBy != null">create_by,</if>
             <if test="createTime != null">create_time,</if>
             <if test="updateBy != null">update_by,</if>
@@ -90,6 +94,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="status != null">#{status},</if>
             <if test="responsiblePersonName != null">#{responsiblePersonName},</if>
             <if test="responsiblePersonId != null">#{responsiblePersonId},</if>
+            <if test="maintenanceCenterId != null">#{maintenanceCenterId},</if>
+            <if test="stationId != null">#{stationId},</if>
             <if test="createBy != null">#{createBy},</if>
             <if test="createTime != null">#{createTime},</if>
             <if test="updateBy != null">#{updateBy},</if>
@@ -109,6 +115,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="status != null">status = #{status},</if>
             <if test="responsiblePersonName != null">responsible_person_name = #{responsiblePersonName},</if>
             <if test="responsiblePersonId != null">responsible_person_id = #{responsiblePersonId},</if>
+            <if test="maintenanceCenterId != null">maintenance_center_id = #{maintenanceCenterId},</if>
+            <if test="stationId != null">station_id = #{stationId},</if>
             <if test="createBy != null">create_by = #{createBy},</if>
             <if test="createTime != null">create_time = #{createTime},</if>
             <if test="updateBy != null">update_by = #{updateBy},</if>