소스 검색

航运基础资料完善

lazhaoqian 4 년 전
부모
커밋
07e3fc2049

+ 25 - 0
ruoyi-admin/src/main/java/com/ruoyi/web/controller/shipping/controller/TAddressController.java

@@ -191,9 +191,34 @@ public class TAddressController extends BaseController
         if (StringUtils.isEmpty(tAddress.getfName())){
             return AjaxResult.error("地点名称不能为空");
         }
+        TAddress address = new TAddress();
+        address.setfTypes(tAddress.getfTypes());
+        address.setfName(tAddress.getfName());
+        address.setfNo(tAddress.getfNo());
         if (tAddress.getfId()==null){
+            String name = tAddressService.selectAddressFName(address);
+            if (StringUtils.isNotEmpty(name)){
+                return AjaxResult.error("名称已存在");
+            }
+            String addressFno = tAddressService.selectAddressFno(address);
+            if (StringUtils.isNotEmpty(addressFno)){
+               return AjaxResult.error("编号已存在");
+            }
             return toAjax(tAddressService.insertTAddress(tAddress));
         }else {
+            TAddress tAddressById = tAddressService.selectTAddressById(tAddress.getfId());
+            if (!tAddressById.getfNo().equals(tAddress.getfNo())){
+                String addressFno = tAddressService.selectAddressFno(address);
+                if (StringUtils.isNotEmpty(addressFno)){
+                    return AjaxResult.error("编号已存在");
+                }
+            }
+            if (!tAddressById.getfName().equals(tAddress.getfName())){
+                String name = tAddressService.selectAddressFName(address);
+                if (StringUtils.isNotEmpty(name)){
+                    return AjaxResult.error("名称已存在");
+                }
+            }
             if (tAddress.getfStatus().equals("T") ||tAddress.getfStatus().equals("正常")){
                 tAddress.setfStatus("T");
             }else {

+ 23 - 6
ruoyi-admin/src/main/java/com/ruoyi/web/controller/shipping/controller/TCntrController.java

@@ -81,19 +81,36 @@ public class TCntrController extends BaseController
     {
         if (tCntr.getfType() == null){
             return AjaxResult.error("集装箱类型不能为空");
-        }
-        if (StringUtils.isEmpty(tCntr.getfNo())){
+        }else if (StringUtils.isEmpty(tCntr.getfNo())){
             return AjaxResult.error("集装箱编号不能为空");
-        }
-        if (StringUtils.isEmpty(tCntr.getfName())){
+        }else if (StringUtils.isEmpty(tCntr.getfName())){
             return AjaxResult.error("集装箱名称不能为空");
-        }
-        if (StringUtils.isEmpty(tCntr.getfName())){
+        }else if (StringUtils.isEmpty(tCntr.getfName())){
             return AjaxResult.error("集装箱英文名不能为空");
         }
         if (tCntr.getfId() == null){
+            String name = tCntrService.selectTcnrFName(tCntr.getfName());
+            String fno = tCntrService.selectTcnrFno(tCntr.getfNo());
+            if (StringUtils.isNotEmpty(name)){
+                return AjaxResult.error("名称已存在");
+            }else if (StringUtils.isNotEmpty(fno)){
+                return AjaxResult.error("编号已存在");
+            }
             return toAjax(tCntrService.insertTCntr(tCntr));
         }else {
+            TCntr cntr = tCntrService.selectTCntrById(tCntr.getfId());
+            if (!cntr.getfName().equals(tCntr.getfName())){
+                String name = tCntrService.selectTcnrFName(tCntr.getfName());
+                if (StringUtils.isNotEmpty(name)){
+                    return AjaxResult.error("名称已存在");
+                }
+            }
+            if (!cntr.getfNo().equals(tCntr.getfNo())){
+                String fno = tCntrService.selectTcnrFno(tCntr.getfNo());
+                if (StringUtils.isNotEmpty(fno)){
+                    return AjaxResult.error("编号已存在");
+                }
+            }
             if (tCntr.getfStatus().equals("T") ||tCntr.getfStatus().equals("正常")){
                 tCntr.setfStatus("T");
             }else {

+ 9 - 1
ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/SysUser.java

@@ -65,7 +65,7 @@ public class SysUser extends BaseEntity
     private String userType;
 
     /** 用户系统(1仓储、2车队、3凯和) */
-    @Excel(name = "用户系统(1仓储经理、2仓储操作员、10车队经理、11车队操作员)")
+    //@Excel(name = "用户系统(1仓储经理、2仓储操作员、10车队经理、11车队操作员)")
     private String userSystem;
 
     /** 微信唯一Id */
@@ -111,6 +111,14 @@ public class SysUser extends BaseEntity
     /** 岗位组 */
     private Long[] postIds;
 
+    public String getUserSystem() {
+        return userSystem;
+    }
+
+    public void setUserSystem(String userSystem) {
+        this.userSystem = userSystem;
+    }
+
     public SysUser()
     {
 

+ 43 - 1
ruoyi-shipping/src/main/java/com/ruoyi/shipping/domain/TAddress.java

@@ -90,10 +90,52 @@ public class TAddress extends BaseEntity
     private String typesName;
     //港口类型中文名称
     private String havenName;
+    //航线管理员
+    private String managerName;
     //查询时间区间
     private List<String> cLoadDate;
 
-    public void setfId(Long fId) 
+    public String getPortName() {
+        return portName;
+    }
+
+    public void setPortName(String portName) {
+        this.portName = portName;
+    }
+
+    public String getTypesName() {
+        return typesName;
+    }
+
+    public void setTypesName(String typesName) {
+        this.typesName = typesName;
+    }
+
+    public String getHavenName() {
+        return havenName;
+    }
+
+    public void setHavenName(String havenName) {
+        this.havenName = havenName;
+    }
+
+    public String getManagerName() {
+        return managerName;
+    }
+
+    public void setManagerName(String managerName) {
+        this.managerName = managerName;
+    }
+
+    public List<String> getcLoadDate() {
+        return cLoadDate;
+    }
+
+    public void setcLoadDate(List<String> cLoadDate) {
+        this.cLoadDate = cLoadDate;
+    }
+
+    public void setfId(Long fId)
     {
         this.fId = fId;
     }

+ 2 - 0
ruoyi-shipping/src/main/java/com/ruoyi/shipping/domain/TCntrno.java

@@ -77,6 +77,8 @@ public class TCntrno extends BaseEntity
     private String rentName;
     //空重中文
     private String updateEFName;
+    //地点中文名称
+    private String addressName;
     //箱状态中文
     private String cntrstatusName;
     //查询时间区间

+ 8 - 0
ruoyi-shipping/src/main/java/com/ruoyi/shipping/mapper/TAddressMapper.java

@@ -5,6 +5,7 @@ import java.util.Map;
 
 import com.ruoyi.shipping.domain.TAddress;
 import org.apache.ibatis.annotations.Param;
+import org.springframework.security.core.parameters.P;
 
 import java.util.List;
 import java.util.Map;
@@ -146,4 +147,11 @@ public interface TAddressMapper
      * @return
      */
     public List<TAddress> selectadress();
+
+    /**
+     * 根据名称获取地点id
+     * @param fNam
+     * @return
+     */
+    public Long selectTAddressByfName(@Param("fNam") String fNam);
 }

+ 5 - 1
ruoyi-shipping/src/main/java/com/ruoyi/shipping/mapper/TCntrnoMapper.java

@@ -36,7 +36,11 @@ public interface TCntrnoMapper
      * @return
      */
 
-    public List<TCntrno> selectTcntrnoMessage(TCntrno tCntrno);
+    public List<TCntrno> selectTcntrnoMessage(@Param("tc") TCntrno tCntrno,
+                                              @Param("address") String address,
+                                              @Param("typeidName") String typeidName,
+                                              @Param("cntrstatusName") String cntrstatusName,
+                                              @Param("updateEFName") String updateEFName);
 
 
     /**

+ 22 - 8
ruoyi-shipping/src/main/java/com/ruoyi/shipping/service/impl/TCntrnoServiceImpl.java

@@ -7,6 +7,7 @@ import com.ruoyi.common.utils.DateUtils;
 import com.ruoyi.common.utils.SecurityUtils;
 import com.ruoyi.common.utils.StringUtils;
 import com.ruoyi.shipping.domain.TCntrtracking;
+import com.ruoyi.shipping.mapper.TAddressMapper;
 import com.ruoyi.shipping.mapper.TCntrMapper;
 import com.ruoyi.shipping.mapper.TCntrtrackingMapper;
 import com.ruoyi.system.mapper.SysDictDataMapper;
@@ -34,6 +35,8 @@ public class TCntrnoServiceImpl implements ITCntrnoService
     private TCntrMapper tCntrMapper;
     @Autowired
     private SysDictDataMapper sysDictDataMapper;
+    @Autowired
+    private TAddressMapper tAddressMapper;
 
     /**
      * 查询集装箱号
@@ -183,7 +186,7 @@ public class TCntrnoServiceImpl implements ITCntrnoService
 
     @Override
     public List<TCntrno> selectTcntrnoMessage(TCntrno tCntrno) {
-        return tCntrnoMapper.selectTcntrnoMessage(tCntrno);
+        return tCntrnoMapper.selectTcntrnoMessage(tCntrno,null,null,null,null);
     }
 
     @Override
@@ -204,21 +207,32 @@ public class TCntrnoServiceImpl implements ITCntrnoService
     @Override
     public List<TCntrno> getTCntrnoDistribute(TCntrno tCntrno) {
         //箱类型不为空查箱类型id
+        String address = null;//地点
+        String typeidName = null;//箱类型
+        String cntrstatusName = null;//箱状态
+        String updateEFName = null;//空重
+        if (StringUtils.isNotEmpty(tCntrno.getAddressName())){
+            /*Long aLong = tAddressMapper.selectTAddressByfName(tCntrno.getfUpdateaddress());*/
+            address = tCntrno.getAddressName();
+        }
         if (StringUtils.isNotEmpty(tCntrno.getTypeidName())){
-            Long fId = tCntrMapper.selectRcntrFId(tCntrno.getTypeidName());
-            tCntrno.setfTypeid(fId);
+            /*Long fId = tCntrMapper.selectRcntrFId(tCntrno.getTypeidName());
+            tCntrno.setfTypeid(fId);*/
+            typeidName = tCntrno.getTypeidName();
         }
         //箱状态不为空查箱状态
         if (StringUtils.isNotEmpty(tCntrno.getCntrstatusName())){
-            String cntrstatus = sysDictDataMapper.selectDictValue("f_cntrstatus", tCntrno.getCntrstatusName());
-            tCntrno.setfCntrstatus(cntrstatus);
+            /*String cntrstatus = sysDictDataMapper.selectDictValue("f_cntrstatus", tCntrno.getCntrstatusName());
+            tCntrno.setfCntrstatus(cntrstatus);*/
+            cntrstatusName = tCntrno.getCntrstatusName();
         }
         //箱空重部位空查空重
         if (StringUtils.isNotEmpty(tCntrno.getUpdateEFName())){
-            String cntrstatus = sysDictDataMapper.selectDictValue("f_updateEF", tCntrno.getUpdateEFName());
-            tCntrno.setfUpdateef(cntrstatus);
+            /*String cntrstatus = sysDictDataMapper.selectDictValue("f_updateEF", tCntrno.getUpdateEFName());
+            tCntrno.setfUpdateef(cntrstatus);*/
+            updateEFName = tCntrno.getUpdateEFName();
         }
-        return tCntrnoMapper.selectTcntrnoMessage(tCntrno);
+        return tCntrnoMapper.selectTcntrnoMessage(tCntrno,address,typeidName,cntrstatusName,updateEFName);
     }
 
     @Override

+ 32 - 22
ruoyi-shipping/src/main/resources/mapper/shipping/TAddressMapper.xml

@@ -34,35 +34,37 @@
 
     <select id="selectTAddressList" parameterType="TAddress" resultMap="TAddressResult">
         SELECT
-        f_id,
-        f_types,
-        f_no,
-        f_name,
-        f_ename,
-        f_laneid,
-        f_portid,
-        f_country,
-        f_province,
-        f_city,
-        f_tel,
-        f_email,
-        f_managerid,
-        f_uncode,
-        f_port,
+        t.f_id,
+        t.f_types,
+        t.f_no,
+        t.f_name,
+        t.f_ename,
+        t.f_laneid,
+        t.f_portid,
+        t.f_country,
+        t.f_province,
+        t.f_city,
+        t.f_tel,
+        t.f_email,
+        t.f_managerid,
+        su.user_name managerName,
+        t.f_uncode,
+        t.f_port,
         CASE
 
-        WHEN f_status = 'T' THEN
+        WHEN t.f_status = 'T' THEN
         '正常' ELSE '停用'
         END AS f_status,
-        create_by,
-        create_time,
-        update_by,
-        update_time,
-        remark
+        t.create_by,
+        t.create_time,
+        t.update_by,
+        t.update_time,
+        t.remark
         FROM
         t_address t
         LEFT JOIN ( SELECT dict_label, dict_value FROM sys_dict_data WHERE dict_type = 'f_types' ) s ON t.f_types =
         s.dict_value
+        LEFT JOIN sys_user su ON su.user_id = t.f_managerid
         WHERE
         t.f_status = 'T'
         AND s.dict_label = '航线'
@@ -115,6 +117,13 @@
         <include refid="selectTAddressVo"/>
         where f_id = #{fId}
     </select>
+    <select id="selectTAddressByfName" parameterType="object" resultType="long">
+        SELECT
+        f_id
+        FROM
+        t_address
+        WHERE f_name = #{fNam}
+    </select>
 
     <select id="selectTAddressListMap" resultType="java.util.Map">
 
@@ -409,7 +418,7 @@
         <if test="fName != null  and fName != ''">and f_name like concat('%', #{fName}, '%')</if>
         ORDER BY CONVERT(t.f_name USING gbk) asc
     </select>
-    <!--查看堆场名称-->
+    <!--查看码头名称-->
     <select id="selectWharfName" parameterType="TAddress" resultType="map">
         SELECT
         f_id as fId,
@@ -516,6 +525,7 @@
             t_address t
         LEFT JOIN
             sys_dict_data pro ON pro.dict_value = t.f_types and pro.dict_type = 'f_types'
+        where t.f_status = 'T'
         ORDER BY  CONVERT(t.f_name USING gbk) asc
     </select>
 

+ 125 - 78
ruoyi-shipping/src/main/resources/mapper/shipping/TCntrnoMapper.xml

@@ -64,6 +64,7 @@
         sdd.dict_label rentName,
         tc.f_updatetime,
         tc.f_updateaddress,
+        address.f_name addressName,
         tc.f_updateEF,
         sdda.dict_label updateEFName,
         tc.f_cntrstatus,
@@ -89,24 +90,29 @@
         LEFT JOIN t_cntr t ON tc.f_typeid = t.f_id
         LEFT JOIN sys_dict_data prs ON prs.dict_value = t.f_cntrsize
         AND prs.dict_type = 'f_cntrsize'
+        LEFT JOIN t_address address ON address.f_id = tc.f_updateaddress
         <where>
             tc.f_status = 'T'
-            <if test="fNo != null  and fNo != ''">and tc.f_no = #{fNo}</if>
-            <if test="fTypeid != null ">and tc.f_typeid = #{fTypeid}</if>
-            <if test="fOwner != null  and fOwner != ''">and tc.f_owner = #{fOwner}</if>
-            <if test="fSource != null  and fSource != ''">and tc.f_source = #{fSource}</if>
-            <if test="fRent != null  and fRent != ''">and tc.f_rent = #{fRent}</if>
-            <if test="fUpdatetime != null ">and tc.f_updatetime = #{fUpdatetime}</if>
-            <if test="fUpdateaddress != null  and fUpdateaddress != ''">and tc.f_updateaddress = #{fUpdateaddress}</if>
-            <if test="fUpdateef != null  and fUpdateef != ''">and tc.f_updateEF = #{fUpdateef}</if>
-            <if test="fCntrstatus != null  and fCntrstatus != ''">and tc.f_cntrstatus = #{fCntrstatus}</if>
-            <if test="fStatus != null  and fStatus != ''">and tc.f_status = #{fStatus}</if>
-            <if test='cLoadDate != null and cLoadDate[0] != null and cLoadDate[0]!= ""'>
-                and tc.create_time &gt;= #{cLoadDate[0]}
+            <if test="tc.fNo != null  and tc.fNo != ''">and tc.f_no = #{tc.fNo}</if>
+            <if test="tc.fTypeid != null ">and tc.f_typeid = #{tc.fTypeid}</if>
+            <if test="tc.fOwner != null  and tc.fOwner != ''">and tc.f_owner = #{tc.fOwner}</if>
+            <if test="tc.fSource != null  and tc.fSource != ''">and tc.f_source = #{tc.fSource}</if>
+            <if test="tc.fRent != null  and tc.fRent != ''">and tc.f_rent = #{tc.fRent}</if>
+            <if test="tc.fUpdatetime != null ">and tc.f_updatetime = #{tc.fUpdatetime}</if>
+            <if test="tc.fUpdateaddress != null  and tc.fUpdateaddress != ''">and tc.f_updateaddress = #{tc.fUpdateaddress}</if>
+            <if test="tc.fUpdateef != null  and tc.fUpdateef != ''">and tc.f_updateEF = #{tc.fUpdateef}</if>
+            <if test="tc.fCntrstatus != null  and tc.fCntrstatus != ''">and tc.f_cntrstatus = #{tc.fCntrstatus}</if>
+            <if test="tc.fStatus != null  and tc.fStatus != ''">and tc.f_status = #{tc.fStatus}</if>
+            <if test='tc.cLoadDate != null and tc.cLoadDate[0] != null and tc.cLoadDate[0]!= ""'>
+                and tc.create_time &gt;= #{tc.cLoadDate[0]}
             </if>
-            <if test='cLoadDate != null and cLoadDate[1] != null and cLoadDate[1]!= ""'>
-                and tc.create_time &lt;= #{cLoadDate[1]}
+            <if test='tc.cLoadDate != null and tc.cLoadDate[1] != null and tc.cLoadDate[1]!= ""'>
+                and tc.create_time &lt;= #{tc.cLoadDate[1]}
             </if>
+            <if test="address != null  and address != ''">and address.f_name = #{address}</if>
+            <if test="typeidName != null  and typeidName != ''">and t.f_name = #{typeidName}</if>
+            <if test="cntrstatusName != null  and cntrstatusName != ''">and pr.dict_label = #{cntrstatusName}</if>
+            <if test="updateEFName != null  and updateEFName != ''">and sdda.dict_label = #{updateEFName}</if>
         </where>
         ORDER BY tc.f_no,CONVERT(tc.f_updateaddress USING gbk),CONVERT(t.f_no USING gbk),
         tc.f_updateEF,tc.f_cntrstatus,tc.f_owner
@@ -128,6 +134,7 @@
         sdd.dict_label rentName,
         tc.f_updatetime,
         tc.f_updateaddress,
+        address.f_name addressName,
         tc.f_updateEF,
         sdda.dict_label updateEFName,
         tc.f_cntrstatus,
@@ -153,6 +160,7 @@
         LEFT JOIN t_cntr t ON tc.f_typeid = t.f_id
 		LEFT JOIN sys_dict_data prs ON prs.dict_value = t.f_cntrsize
         AND prs.dict_type = 'f_cntrsize'
+        LEFT JOIN t_address address ON address.f_id = tc.f_updateaddress
         where tc.f_id = #{fId}
     </select>
 
@@ -239,72 +247,111 @@
     </update>
     <!--获取集装动态分布信息 -->
     <select id="getTCntrnoMessage" parameterType="string" resultType="map">
-	    SELECT
-	container.*,
-	box.`空`,
-	box.`重`,
-	car.`好`,
-	car.`坏`
-FROM
-	(
-	SELECT
-		tt.f_updateaddress AS 地点
-		<if test=" sql != null and sql != ''">
+        SELECT
+        container.*,
+        box.`空`,
+        box.`重`,
+        car.`好`,
+        car.`坏`
+        FROM
+        (
+        SELECT
+        tt.f_updateaddress AS 地点
+        <if test=" sql != null and sql != ''">
             ,${sql}
         </if>
-	FROM
-		(
-		SELECT
-			tc.f_updateaddress f_updateaddress,
-			tc.typeidCount typeidCount,
-			t.f_no f_no
-		FROM
-			( SELECT f_updateaddress, f_typeid, COUNT( 1 ) typeidCount FROM t_cntrno GROUP BY f_updateaddress, f_typeid ) tc
-			LEFT JOIN t_cntr t ON tc.f_typeid = t.f_id
-		) tt
-	GROUP BY
-		tt.f_updateaddress
-	) container
-	LEFT JOIN (
-	SELECT
-		a.f_updateaddress,
-		MAX( CASE WHEN a.dict_label = '空' THEN a.efCount ELSE 0 END ) AS 空,
-		MAX( CASE WHEN a.dict_label = '重' THEN a.efCount ELSE 0 END ) AS 重
-	FROM
-		(
-		SELECT
-			tc.f_updateaddress f_updateaddress,
-			tc.f_updateEF f_updateEF,
-			tc.efCount efCount,
-			sdda.dict_label dict_label
-		FROM
-			( SELECT f_updateaddress, f_updateEF, COUNT( 1 ) efCount FROM t_cntrno GROUP BY f_updateaddress, f_updateEF ) tc
-			LEFT JOIN sys_dict_data sdda ON sdda.dict_value = tc.f_updateEF
-			AND sdda.dict_type = 'f_updateEF'
-		) a
-	GROUP BY
-		a.f_updateaddress
-	) box ON container.地点 = box.f_updateaddress
-	LEFT JOIN (
-	SELECT
-		b.f_updateaddress,
-		MAX( CASE WHEN b.dict_label = '好' THEN b.statusCount ELSE 0 END ) AS 好,
-		MAX( CASE WHEN b.dict_label = '坏' THEN b.statusCount ELSE 0 END ) AS 坏
-	FROM
-		(
-		SELECT
-			tc.f_updateaddress f_updateaddress,
-			tc.f_cntrstatus f_cntrstatus,
-			tc.statusCount statusCount,
-			sdda.dict_label dict_label
-		FROM
-			( SELECT f_updateaddress, f_cntrstatus, COUNT( 1 ) statusCount FROM t_cntrno GROUP BY f_updateaddress, f_cntrstatus ) tc
-			LEFT JOIN sys_dict_data sdda ON sdda.dict_value = tc.f_cntrstatus
-			AND sdda.dict_type = 'f_cntrstatus'
-		) b
-	GROUP BY
-	b.f_updateaddress
-	) car ON container.地点 = car.f_updateaddress
+        FROM
+        (
+        SELECT
+        tc.f_updateaddress f_updateaddress,
+        tc.typeidCount typeidCount,
+        t.f_no f_no
+        FROM
+        (
+        SELECT
+        ta.f_name f_updateaddress,
+        tcn.f_typeid,
+        COUNT( tcn.f_updateaddress ) typeidCount
+        FROM
+        t_cntrno tcn
+        LEFT JOIN t_address ta ON tcn.f_updateaddress = ta.f_id
+        WHERE
+        tcn.f_status = 'T'
+        GROUP BY
+        tcn.f_updateaddress,
+        tcn.f_typeid
+        ) tc
+        LEFT JOIN t_cntr t ON tc.f_typeid = t.f_id
+        ) tt
+        GROUP BY
+        tt.f_updateaddress
+        ) container
+        LEFT JOIN (
+        SELECT
+        a.f_updateaddress,
+        MAX( CASE WHEN a.dict_label = '空' THEN a.efCount ELSE 0 END ) AS 空,
+        MAX( CASE WHEN a.dict_label = '重' THEN a.efCount ELSE 0 END ) AS 重
+        FROM
+        (
+        SELECT
+        tc.f_updateaddress f_updateaddress,
+        tc.f_updateEF f_updateEF,
+        tc.efCount efCount,
+        sdda.dict_label dict_label
+        FROM
+        (
+        SELECT
+        ta.f_name f_updateaddress,
+        tct.f_updateEF,
+        COUNT( tct.f_updateaddress ) efCount
+        FROM
+        t_cntrno tct
+        LEFT JOIN t_address ta ON tct.f_updateaddress = ta.f_id
+        WHERE
+        tct.f_status = 'T'
+        GROUP BY
+        tct.f_updateaddress,
+        tct.f_updateEF
+        ) tc
+        LEFT JOIN sys_dict_data sdda ON sdda.dict_value = tc.f_updateEF
+        AND sdda.dict_type = 'f_updateEF'
+        ) a
+        GROUP BY
+        a.f_updateaddress
+        ) box ON container.地点 = box.f_updateaddress
+        LEFT JOIN (
+        SELECT
+        b.f_updateaddress,
+        MAX( CASE WHEN b.dict_label = '好' THEN b.statusCount ELSE 0 END ) AS 好,
+        MAX( CASE WHEN b.dict_label = '坏' THEN b.statusCount ELSE 0 END ) AS 坏
+        FROM
+        (
+        SELECT
+        tc.f_updateaddress f_updateaddress,
+        tc.f_cntrstatus f_cntrstatus,
+        tc.statusCount statusCount,
+        sdda.dict_label dict_label
+        FROM
+        (
+        SELECT
+        ta.f_name f_updateaddress,
+        tct.f_cntrstatus,
+        COUNT( tct.f_updateaddress ) statusCount
+        FROM
+        t_cntrno tct
+        LEFT JOIN t_address ta ON tct.f_updateaddress = ta.f_id
+        WHERE
+        tct.f_status = 'T'
+        GROUP BY
+        tct.f_updateaddress,
+        tct.f_cntrstatus
+        ) tc
+        LEFT JOIN sys_dict_data sdda ON sdda.dict_value = tc.f_cntrstatus
+        AND sdda.dict_type = 'f_cntrstatus'
+        ) b
+        GROUP BY
+        b.f_updateaddress
+        ) car ON container.地点 = car.f_updateaddress
 	<where>
         <if test="tCntrno.fUpdateaddress != null and tCntrno.fUpdateaddress != ''">
         container.地点   like concat('%', #{tCntrno.fUpdateaddress}, '%')</if>

+ 9 - 5
ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml

@@ -248,13 +248,17 @@
 	</delete>
 	<select id="selectUserNameFO" resultType="map">
 		SELECT
-			user_id userId,
-			user_name userName
+			su.user_id userId,
+			su.user_name userName
 		FROM
-			sys_user
-		WHERE status = '0'
+			sys_user su
+		LEFT JOIN sys_dict_data sd ON sd.dict_value = su.user_system
+		AND sd.dict_type = 'user_system'
+		WHERE
+			su.STATUS = '0'
+		AND sd.dict_label = '凯和'
 		ORDER BY
-			user_id
+			su.user_id
 	</select>
 
 </mapper>