Browse Source

Merge branch 'master' of http://101.36.160.140:21044/delivery-warehouse-java/delivery-depot-admin into liuj_pc_dev

liujing-123 2 weeks ago
parent
commit
aef4d8826c

+ 80 - 0
delivery-framework/delivery-common/src/main/java/com/unis/framework/common/util/orderNum/OrderNumberUtil.java

@@ -0,0 +1,80 @@
1
+package com.unis.framework.common.util.orderNum;
2
+
3
+import com.baomidou.mybatisplus.core.toolkit.StringUtils;
4
+
5
+import java.time.LocalDate;
6
+import java.util.ArrayList;
7
+import java.util.Arrays;
8
+import java.util.List;
9
+
10
+/**
11
+ * @author qingsong.han
12
+ * @description: 生成单号
13
+ * @create 2024-05-21 14:18
14
+ */
15
+public class OrderNumberUtil {
16
+
17
+    /**
18
+     * int 定长拼接-后缀顺序号
19
+     *
20
+     * @param length 总长度
21
+     * @param param  参数
22
+     * @return 参数前补0
23
+     */
24
+    public static String integerToString(int length, int param) {
25
+        return String.format("%0" + length + "d", param);
26
+    }
27
+
28
+    /**
29
+     * 主方法
30
+     * 调用生成完整规则序号: 尾数+1的编号
31
+     * @param length 位数必须大于0
32
+     * @param xh 字符串
33
+     * @return 尾数+1的编号
34
+     */
35
+    public synchronized static String initNum(int length, String xh) {
36
+        // 初始化
37
+        int num = 1;
38
+        if (!StringUtils.isEmpty(xh)) {
39
+            String substring = xh.substring(xh.length() - length);
40
+            int i = Integer.parseInt(substring);
41
+            if (i < maxNum(length))
42
+                num += i;
43
+        }
44
+        return integerToString(length, num);
45
+    }
46
+
47
+    /**
48
+     * 获取int位数的最大值:如6位->999999
49
+     * @param length int位数
50
+     * @return int
51
+     */
52
+    private static int maxNum(int length) {
53
+        if (0 < length) {
54
+            StringBuilder builder = new StringBuilder();
55
+            for (int i = 0; i < length; i++) {
56
+                builder.append(9);
57
+            }
58
+            return Integer.parseInt(builder.toString());
59
+        }
60
+        return 0;
61
+    }
62
+
63
+    public synchronized static String generateCode(List<String> stringList) {
64
+        StringBuilder code = new StringBuilder();
65
+
66
+        if (stringList != null && !stringList.isEmpty()) {
67
+            for (String string : stringList) {
68
+                code.append(string);
69
+            }
70
+        }
71
+        return code.toString();
72
+    }
73
+//    public static void main(String[] args) {
74
+//        System.out.println(frontData("JH",4, 2));
75
+//        System.out.println("-->" + maxNum(3));
76
+//        System.out.println("-->" + initNum("AJXXSJG", 3, "AJXXSJG20240622001"));
77
+//        System.out.println("-->" + initNum("AJXXSJG", 3, ""));
78
+//    }
79
+
80
+}

+ 2 - 0
delivery-module-core/delivery-module-core-biz/src/main/java/com/unis/module/coding/controller/admin/delivery/vo/DeliveryPageReqVO.java

@@ -61,4 +61,6 @@ public class DeliveryPageReqVO extends PageParam {
61 61
     private String areaSheng;
62 62
     @Schema(description = "所选区县")
63 63
     private String areaXian;
64
+    @Schema(description = "银行名称")
65
+    private String yhmc;
64 66
 }

+ 1 - 1
delivery-module-core/delivery-module-core-biz/src/main/java/com/unis/module/coding/controller/admin/delivery/vo/StoreRespVO.java

@@ -43,5 +43,5 @@ public class StoreRespVO {
43 43
     private String mobile;
44 44
 
45 45
     @Schema(description = "储存状态")
46
-    private String cczt;
46
+    private Integer cczt;
47 47
 }

+ 2 - 1
delivery-module-core/delivery-module-core-biz/src/main/java/com/unis/module/coding/dal/mysql/bank/BankMapper.java

@@ -12,6 +12,7 @@ import com.unis.module.coding.controller.admin.delivery.vo.StoreRespVO;
12 12
 import com.unis.module.coding.dal.dataobject.bank.BankDO;
13 13
 import com.unis.module.coding.dal.dataobject.province.ProvinceDO;
14 14
 import org.apache.ibatis.annotations.Mapper;
15
+import org.apache.ibatis.annotations.Param;
15 16
 
16 17
 import java.util.List;
17 18
 
@@ -35,7 +36,7 @@ public interface BankMapper extends BaseMapperX<BankDO> {
35 36
                 .likeIfPresent(BankDO::getRdyhName, reqVO.getRdyhName())
36 37
                 .orderByDesc(BankDO::getId));
37 38
     }
38
-    List<StoreRespVO> getStoreListForBank( Long  kqId);
39
+    List<StoreRespVO> getStoreListForBank(@Param("kqId") Long  kqId, @Param("yhmc")String yhmc);
39 40
 
40 41
     default int deleteListByKqIdAndCaIdsAndBank(Long  kqId, List<Long> caIds,String bankType) {
41 42
         return delete(

+ 5 - 0
delivery-module-core/delivery-module-core-biz/src/main/java/com/unis/module/coding/service/caxx/CaxxServiceImpl.java

@@ -141,6 +141,11 @@ public class CaxxServiceImpl implements CaxxService {
141 141
                 String[] items = roleIdsReal.split(",");
142 142
                 List<String> roleIdList = Arrays.asList(items);
143 143
                 if (roleIdList.contains(RoleIdEnum.BANK_ADMIN.getRoleId())) {
144
+                    String bankType = loginUser.getInfo().get("bankType");
145
+                    if (StringUtils.isBlank(bankType)) {
146
+                        throw exception(ERROR, "当前银行用户不存在银行信息");
147
+                    }
148
+                    pageReqVO.setYhmc(bankType);
144 149
                     page = caxxMapper.selectWrapperPageForBank(new Page<>(pageReqVO.getPageNo(), pageReqVO.getPageSize()), pageReqVO);
145 150
                 } else {
146 151
                     page = caxxMapper.selectWrapperPageForSheng(new Page<>(pageReqVO.getPageNo(), pageReqVO.getPageSize()), pageReqVO);

+ 7 - 3
delivery-module-core/delivery-module-core-biz/src/main/java/com/unis/module/coding/service/dwxx/DwxxServiceImpl.java

@@ -223,6 +223,11 @@ public class DwxxServiceImpl implements DwxxService {
223 223
                 String[] items = roleIdsReal.split(",");
224 224
                 List<String> roleIdList = Arrays.asList(items);
225 225
                 if (roleIdList.contains(RoleIdEnum.BANK_ADMIN.getRoleId())) {
226
+                    String bankType = loginUser.getInfo().get("bankType");
227
+                    if (StringUtils.isBlank(bankType)) {
228
+                        throw exception(ERROR, "当前银行用户不存在银行信息");
229
+                    }
230
+                    pageReqVO.setYhmc(bankType);
226 231
                     page = dwxxMapper.selectWrapperPageForBank(new Page<>(pageReqVO.getPageNo(), pageReqVO.getPageSize()), pageReqVO);
227 232
                 } else {
228 233
                     page = dwxxMapper.selectWrapperPageForSheng(new Page<>(pageReqVO.getPageNo(), pageReqVO.getPageSize()), pageReqVO);
@@ -298,7 +303,7 @@ public class DwxxServiceImpl implements DwxxService {
298 303
                     }
299 304
                     if (YXZT.NOT_SELECTED.getCode().equals(pageReqVO.getYxcf())) {
300 305
                         List<StoreRespVO> storeListForBank = provinceMapper.getStoreListForProvince(pageReqVO.getKqId(), 1);
301
-                        List<StoreRespVO> storeListSelelct = bankMapper.getStoreListForBank(pageReqVO.getKqId());
306
+                        List<StoreRespVO> storeListSelelct = bankMapper.getStoreListForBank(pageReqVO.getKqId(),bankType);
302 307
                         if (!ObjectUtils.isEmpty(storeListForBank)) {
303 308
                             if (!ObjectUtils.isEmpty(storeListSelelct)) {
304 309
                                 List<Long> idsExist = storeListSelelct.stream().map(StoreRespVO::getId).collect(Collectors.toList());
@@ -309,7 +314,7 @@ public class DwxxServiceImpl implements DwxxService {
309 314
                             return storeListForBank;
310 315
                         }
311 316
                     } else if (YXZT.SELECTED.getCode().equals(pageReqVO.getYxcf()) || YXZT.OPTION.getCode().equals(pageReqVO.getYxcf())) {
312
-                        List<StoreRespVO> storeListForBank = bankMapper.getStoreListForBank(pageReqVO.getKqId());
317
+                        List<StoreRespVO> storeListForBank = bankMapper.getStoreListForBank(pageReqVO.getKqId(),bankType);
313 318
                         return storeListForBank;
314 319
                     } else if (YXZT.IDENTIFY.getCode().equals(pageReqVO.getYxcf())) {
315 320
                         List<StoreRespVO> storeRespVOS = caxxMapper.selectListForIdentify(pageReqVO.getKqId(), bankType);
@@ -335,7 +340,6 @@ public class DwxxServiceImpl implements DwxxService {
335 340
                             }
336 341
                             return storeListForProvice;
337 342
                         }
338
-
339 343
                     } else if (YXZT.SELECTED.getCode().equals(pageReqVO.getYxcf()) || YXZT.OPTION.getCode().equals(pageReqVO.getYxcf())) {
340 344
                         List<StoreRespVO> storeListForProvince = provinceMapper.getStoreListForProvince(pageReqVO.getKqId(), 0);
341 345
                         return storeListForProvince;

+ 1 - 1
delivery-module-core/delivery-module-core-biz/src/main/resources/mapper/bank/BankMapper.xml

@@ -21,7 +21,7 @@
21 21
                 cc.yxcf
22 22
         from  DELIVERY_CAXX cc
23 23
         join  DELIVERY_BANK bk on bk.CA_ID=cc.ID
24
-        where bk.KQ_ID=#{kqId} and   bk.deleted=0
24
+        where bk.KQ_ID=#{kqId} and   bk.deleted=0  and bk.rdyh_id = #{pageReqVO.yhmc}
25 25
         order by bk.KQ_ID desc
26 26
     </select>
27 27
 </mapper>

+ 11 - 9
delivery-module-core/delivery-module-core-biz/src/main/resources/mapper/caxx/CaxxMapper.xml

@@ -170,7 +170,7 @@
170 170
                         hy_state,
171 171
                         LISTAGG(DISTINCT rdyh_name, ',') rdyh_name
172 172
                 from DELIVERY_BANK
173
-                where  DELETED=0
173
+                where  DELETED=0  and rdyh_id = #{pageReqVO.yhmc}
174 174
                 group by  KQ_ID
175 175
                 having  count(CA_ID)>0
176 176
         ) t1 on t1.KQ_ID=ck.id
@@ -202,12 +202,14 @@
202 202
         #{id}
203 203
     </foreach>
204 204
     </delete>
205
+
205 206
     <delete id="deleteListByKqId">
206 207
      DELETE FROM DELIVERY_CAXX  where  KQID = #{kqId}
207 208
     </delete>
209
+
208 210
     <select id="getIdentifySparePage"
209 211
         resultType="com.unis.module.coding.controller.admin.delivery.vo.SpareRespVO">
210
-       select   distinct
212
+       select
211 213
             ck.id kqId,
212 214
             cd.id deptId,
213 215
             ck.sheng_name SHENG,
@@ -267,9 +269,10 @@
267 269
         </where>
268 270
         order by cd.id desc
269 271
     </select>
272
+
270 273
     <select id="getIdentifyPageForBank"
271 274
                 resultType="com.unis.module.coding.controller.admin.delivery.vo.SpareRespVO">
272
-     select distinct
275
+     select
273 276
             ck.id kqId,
274 277
             cd.id deptId,
275 278
             t2.cwId,
@@ -286,7 +289,6 @@
286 289
             t1.rdyh_name
287 290
         from DELIVERY_DWXX cd
288 291
         join DELIVERY_KQXX ck on ck.DWID=cd.id
289
-        join DELIVERY_BANK  bk  on  bk.KQ_ID=ck.id
290 292
         join
291 293
         (
292 294
                 select
@@ -318,8 +320,7 @@
318 320
                    )  cy  on cx.id=cy.CWXX_ID
319 321
         ) t2 on t2.DEPT_ID=cd.id
320 322
         <where>
321
-            cd.qyxz!='10'
322
-            and cd.DELETED=0  and bk.DELETED=0 and bk.HY_STATE=1
323
+            cd.qyxz!='10'and cd.DELETED=0
323 324
             <if test="pageReqVO.dwmc!=null and pageReqVO.dwmc!=''">
324 325
                 and cd.DWMC like #{pageReqVO.dwmc}
325 326
             </if>
@@ -338,6 +339,7 @@
338 339
         </where>
339 340
         order by cd.id desc
340 341
     </select>
342
+
341 343
     <select id="getIdentifyPageForSheng"
342 344
                 resultType="com.unis.module.coding.controller.admin.delivery.vo.SpareRespVO">
343 345
      select   distinct
@@ -471,7 +473,7 @@
471 473
 
472 474
     <select id="getSelectSparePage"
473 475
                       resultType="com.unis.module.coding.controller.admin.delivery.vo.SpareRespVO">
474
-    select   distinct
476
+    select
475 477
             ck.id kqId,
476 478
             cd.id deptId,
477 479
             ck.sheng_name SHENG,
@@ -536,7 +538,7 @@
536 538
 
537 539
     <select id="getSelectPageForBank"
538 540
                      resultType="com.unis.module.coding.controller.admin.delivery.vo.SpareRespVO">
539
-         select   distinct
541
+         select
540 542
             ck.id kqId,
541 543
             cd.id deptId,
542 544
             ck.sheng_name SHENG,
@@ -622,7 +624,7 @@
622 624
 
623 625
     <select id="getSelectPageForSheng"
624 626
                       resultType="com.unis.module.coding.controller.admin.delivery.vo.SpareRespVO">
625
-    select   distinct
627
+    select
626 628
             ck.id kqId,
627 629
             cd.id deptId,
628 630
             ck.sheng_name SHENG,

+ 27 - 26
delivery-module-core/delivery-module-core-biz/src/main/resources/mapper/dwxx/DwxxMapper.xml

@@ -12,13 +12,13 @@
12 12
             cd.TYXYDM,
13 13
             cd.DWMC,
14 14
             ck.KQMC,
15
-            t1.sjcrNum,
16
-            t1.cfnum- ifnull(t2.yxcfnum, 0)  cfnum,
15
+            ifnull(t1.sjcrNum, 0) sjcrNum,
16
+            ifnull(t1.cfnum, 0) cfnum,
17 17
             ifnull(t2.yxcfnum, 0) yxcfnum,
18 18
             ck.xzqhdm
19 19
         from  CODING_DWXX cd
20 20
         left join coding_kqxx ck on ck.DWID=cd.id
21
-        inner join
21
+        left join
22 22
         (
23 23
                 select
24 24
                         cf.BASE_KQXX_ID,
@@ -27,11 +27,12 @@
27 27
                         ck.xzqhdm
28 28
                 from
29 29
                         CODING_CAXX cc
30
-                inner join CODING_FMXX cf on cc.id=cf.BASE_CAXX_ID
31
-                inner join CODING_KQXX ck on cc.KQID=ck.id
30
+                join CODING_FMXX cf on cc.id=cf.BASE_CAXX_ID
31
+                join CODING_KQXX ck on cc.KQID=ck.id
32 32
                 <where>
33 33
                         cf.deleted=0
34 34
                     and cf.lsxz='000'
35
+                    AND NOT EXISTS (SELECT 1  from  DELIVERY_CAXX dc   where dc.DELETED=0 AND  cc.id=dc.id)
35 36
                     <if test="pageReqVO.cflx!=null and pageReqVO.cflx!=''">
36 37
                         and cc.CFLX=#{pageReqVO.cflx}
37 38
                     </if>
@@ -49,7 +50,6 @@
49 50
                     </if>
50 51
                 </where>
51 52
                 group by cf.BASE_KQXX_ID
52
-                having  count(cf.BASE_CAXX_ID)>0
53 53
         ) t1 on t1.BASE_KQXX_ID=ck.id
54 54
         left join
55 55
         (
@@ -57,16 +57,15 @@
57 57
                 cc.KQID,
58 58
                 count(cc.id) yxcfnum,
59 59
                 ck.xzqhdm
60
-        from DELIVERY_DWXX cd
61
-        inner join DELIVERY_KQXX ck on ck.DWID=cd.id
62
-        inner join DELIVERY_CAXX cc on cc.KQID=ck.id
63
-        where cd.DELETED=0 and cc.yxcf=1 and ck.deleted=0 and  cc.deleted=0
60
+        from  DELIVERY_KQXX ck
61
+        join  DELIVERY_CAXX cc on cc.KQID=ck.id
62
+        where cc.yxcf=1 and ck.deleted=0 and  cc.deleted=0
64 63
         group by ck.id
65 64
         ) t2 on t2.KQID=ck.id
66 65
         <where>
67 66
             cd.bz is null
68 67
             and cd.qyxz!='10'
69
-            and cd.DELETED=0
68
+            and cd.DELETED=0   and (t1.cfnum!=0   or  t2.yxcfnum!=0)
70 69
             <if test="pageReqVO.areaCode!=null and pageReqVO.areaCode!=''">
71 70
                 and ck.xzqhdm like #{pageReqVO.areaCode}
72 71
             </if>
@@ -96,20 +95,20 @@
96 95
             cd.TYXYDM,
97 96
             cd.DWMC,
98 97
             ck.KQMC,
99
-            t1.sjcrNum,
100
-            t1.cfnum- ifnull(t2.yxcfnum, 0) cfnum,
98
+            ifnull(t1.sjcrNum, 0) sjcrNum,
99
+            ifnull(t1.cfnum, 0) cfnum,
101 100
             ifnull(t2.yxcfnum, 0) yxcfnum
102 101
         from  DELIVERY_DWXX cd
103 102
         left join DELIVERY_KQXX ck on ck.DWID=cd.id
104
-        inner join
103
+        left join
105 104
         (
106 105
                 select
107 106
                         cc.KQID,
108 107
                         sum(cc.SJCR) sjcrNum,
109 108
                         count(cc.ID) cfnum
110 109
                 from DELIVERY_CAXX cc
111
-                inner join DELIVERY_KQXX ck on cc.KQID=ck.id
112 110
                 <where>
111
+                     NOT EXISTS (SELECT 1  from  DELIVERY_PROVINCE dp   where dp.DELETED=0 AND  cc.id=dp.CA_ID)
113 112
                     <if test="pageReqVO.cflx!=null and pageReqVO.cflx!=''">
114 113
                         and cc.CFLX=#{pageReqVO.cflx}
115 114
                     </if>
@@ -127,7 +126,6 @@
127 126
                     </if>
128 127
                 </where>
129 128
                 group by cc.KQID
130
-                having  count(cc.ID)>0
131 129
         ) t1 on t1.KQID=ck.id
132 130
         left join
133 131
         (
@@ -177,8 +175,8 @@
177 175
             cd.TYXYDM,
178 176
             cd.DWMC,
179 177
             ck.KQMC,
180
-            t1.sjcrNum,
181
-            t1.cfnum-ifnull(t3.yxcfnum, 0) cfnum,
178
+            ifnull(t1.sjcrNum, 0) sjcrNum,
179
+            ifnull(t1.cfnum, 0) cfnum,
182 180
             ifnull(t3.yxcfnum, 0) yxcfnum,
183 181
             ifnull(t2.SYNDZZC, 0) zzc,
184 182
             ifnull(t2.JLR, 0) sndjlr,
@@ -186,7 +184,7 @@
186 184
             ck.LXDH lxdh
187 185
         from  DELIVERY_DWXX cd
188 186
         join DELIVERY_KQXX ck on ck.DWID=cd.id
189
-        join
187
+        left join
190 188
         (
191 189
                 select
192 190
                         pe.KQ_ID,
@@ -195,7 +193,8 @@
195 193
                 from  DELIVERY_CAXX cc
196 194
                 join DELIVERY_PROVINCE  pe  on cc.id=pe.CA_ID
197 195
                 <where>
198
-                    pe.HY_STATE=1   and    pe.DELETED=0
196
+                    pe.HY_STATE=1  and  pe.DELETED=0
197
+                    AND NOT EXISTS (SELECT 1  from  DELIVERY_BANK bk   where bk.DELETED=0 AND  cc.id=bk.CA_ID )
199 198
                     <if test="pageReqVO.cflx!=null and pageReqVO.cflx!=''">
200 199
                         and cc.CFLX=#{pageReqVO.cflx}
201 200
                     </if>
@@ -213,7 +212,6 @@
213 212
                     </if>
214 213
                 </where>
215 214
                 group by pe.KQ_ID
216
-                having   count(cc.id)>0
217 215
         ) t1 on t1.KQ_ID=ck.id
218 216
         left join
219 217
         (
@@ -237,11 +235,14 @@
237 235
         left join
238 236
         (
239 237
         select
240
-                bk.KQ_ID,
241
-                count( distinct bk.CA_ID) yxcfnum
242
-        from  DELIVERY_BANK  bk
243
-        where bk.DELETED=0
244
-        group by bk.KQ_ID
238
+                KQ_ID,
239
+                count( distinct CA_ID) yxcfnum
240
+        from  DELIVERY_BANK
241
+        where DELETED=0
242
+        <if test="pageReqVO.yhmc!=null and pageReqVO.yhmc!=''">
243
+             and rdyh_id = #{pageReqVO.yhmc}
244
+        </if>
245
+        group by KQ_ID
245 246
         ) t3 on t3.KQ_ID=ck.id
246 247
         <where>
247 248
             cd.qyxz!='10' and cd.DELETED=0

+ 2 - 0
delivery-module-system/delivery-module-system-api/src/main/java/com/unis/module/system/enums/DictTypeConstants.java

@@ -31,4 +31,6 @@ public interface DictTypeConstants {
31 31
      * 库存性质
32 32
      */
33 33
     String HY_STATE = "hy_state";
34
+
35
+    String BANK_TYPE = "bank_type"; //银行类型
34 36
 }

+ 17 - 0
delivery-module-system/delivery-module-system-biz/src/main/java/com/unis/module/system/controller/admin/user/vo/user/UserRespVO.java

@@ -75,4 +75,21 @@ public class UserRespVO{
75 75
     @Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED, example = "时间戳格式")
76 76
     private LocalDateTime createTime;
77 77
 
78
+    @Schema(description = "省code")
79
+    @ExcelProperty("省")
80
+    private String shengCode;
81
+
82
+    @Schema(description = "市code")
83
+    @ExcelProperty("市")
84
+    private String shiCode;
85
+
86
+    @Schema(description = "县code")
87
+    @ExcelProperty("县")
88
+    private String xianCode;
89
+
90
+    @Schema(description = "银行类型")
91
+    @ExcelProperty(value = "银行类型", converter = DictConvert.class)
92
+    @DictFormat(DictTypeConstants.BANK_TYPE)
93
+    private String bankType;
94
+
78 95
 }