Sfoglia il codice sorgente

【功能开发】app 端:存粮人相关接口

duhuajie 3 settimane fa
parent
commit
1f3ae97175
14 ha cambiato i file con 362 aggiunte e 35 eliminazioni
  1. 0 4
      delivery-module-core/delivery-module-core-api/src/main/java/com/unis/module/core/enums/project/DeliveryHyState.java
  2. 26 6
      delivery-module-core/delivery-module-core-biz/src/main/java/com/unis/module/coding/controller/admin/task/TaskController.java
  3. 6 0
      delivery-module-core/delivery-module-core-biz/src/main/java/com/unis/module/coding/controller/admin/task/vo/TaskCaxxRespVO.java
  4. 15 2
      delivery-module-core/delivery-module-core-biz/src/main/java/com/unis/module/coding/controller/admin/task/vo/TaskPageReqVO.java
  5. 1 0
      delivery-module-core/delivery-module-core-biz/src/main/java/com/unis/module/coding/controller/admin/task/vo/TaskRespVO.java
  6. 38 0
      delivery-module-core/delivery-module-core-biz/src/main/java/com/unis/module/coding/dal/dataobject/users/UsersDO.java
  7. 4 8
      delivery-module-core/delivery-module-core-biz/src/main/java/com/unis/module/coding/dal/mysql/caxx/CaxxMapper.java
  8. 9 0
      delivery-module-core/delivery-module-core-biz/src/main/java/com/unis/module/coding/dal/mysql/dk/DkMapper.java
  9. 15 0
      delivery-module-core/delivery-module-core-biz/src/main/java/com/unis/module/coding/dal/mysql/users/UsersMapper.java
  10. 8 0
      delivery-module-core/delivery-module-core-biz/src/main/java/com/unis/module/coding/service/task/TaskService.java
  11. 93 13
      delivery-module-core/delivery-module-core-biz/src/main/java/com/unis/module/coding/service/task/TaskServiceImpl.java
  12. 133 2
      delivery-module-core/delivery-module-core-biz/src/main/resources/mapper/dk/DkMapper.xml
  13. 12 0
      delivery-module-core/delivery-module-core-biz/src/main/resources/mapper/users/UsersMapper.xml
  14. 2 0
      delivery-module-system/delivery-module-system-api/src/main/java/com/unis/module/system/enums/permission/RoleCodeEnum.java

+ 0 - 4
delivery-module-core/delivery-module-core-api/src/main/java/com/unis/module/core/enums/project/DeliveryHyState.java

@@ -12,13 +12,9 @@ import lombok.Getter;
12 12
 @Getter
13 13
 @AllArgsConstructor
14 14
 public enum DeliveryHyState {
15
-    //    核验中	3
16 15
     WAIT_HY(3, "核验中"),
17
-    //    核验不通过	2
18 16
     NO_HY(2, "核验不通过"),
19
-    //    核验通过	1
20 17
     YES_HY(1, "核验通过"),
21
-    //    待核验	0
22 18
     WAIT(0, "待核验"),
23 19
 
24 20
     ;

+ 26 - 6
delivery-module-core/delivery-module-core-biz/src/main/java/com/unis/module/coding/controller/admin/task/TaskController.java

@@ -32,22 +32,42 @@ public class TaskController {
32 32
     public CommonResult<IPage<TaskRespVO>> getTaskList(@Valid @RequestBody TaskPageReqVO pageReqVO) {
33 33
         return success(taskService.getTaskList(pageReqVO));
34 34
     }
35
+    @PostMapping("/getAllStoreroomList")
36
+    @Operation(summary = "获取存粮人可以 选择的交收库列表(存粮人)")
37
+    public CommonResult<IPage<TaskRespVO>> getAllStoreroomList(@Valid @RequestBody TaskPageReqVO pageReqVO) {
38
+        return success(taskService.getAllStoreroomList(pageReqVO));
39
+    }
40
+    @PostMapping("/getMyStoreroomList")
41
+    @Operation(summary = "获取存粮人选择的交收库列表(存粮人)")
42
+    public CommonResult<IPage<TaskRespVO>> getMyStoreroomList(@Valid @RequestBody TaskPageReqVO pageReqVO) {
43
+        return success(taskService.getMyStoreroomList(pageReqVO));
44
+    }
35 45
     @PostMapping("/getTasks")
36
-    @Operation(summary = "领取任务(多个):参数:kqIds列表,hyState:核验状态(0:待查验,1:查验通过,2:查验不通过3:核验中)")
46
+    @Operation(summary = "领取/核验任务(多个):参数:kqIds列表,hyState:核验状态(0:待查验,1:查验通过,2:查验不通过3:核验中)")
37 47
     public CommonResult<Boolean> getTasks(@RequestBody TaskPageReqVO reqVO) {
38 48
         return success(taskService.getTasks(reqVO));
39 49
     }
40
-    @PostMapping("/hyKqxx")
41
-    @Operation(summary = "核验通过/不通过:参数:kqIds列表,hyState:核验状态(0:待查验,1:查验通过,2:查验不通过3:核验中)")
42
-    public CommonResult<Boolean> hyKqxx(@RequestBody TaskPageReqVO reqVO) {
43
-        return success(taskService.hyKqxx(reqVO));
50
+    @PostMapping("/getStoreroom")
51
+    @Operation(summary = "选择交收库(存粮人)")
52
+    public CommonResult<Boolean> getStoreroom(@RequestBody TaskPageReqVO reqVO) {
53
+        return success(taskService.getStoreroom(reqVO));
44 54
     }
55
+//    @PostMapping("/hyKqxx")
56
+//    @Operation(summary = "核验通过/不通过:参数:kqIds列表,hyState:核验状态(0:待查验,1:查验通过,2:查验不通过3:核验中)")
57
+//    public CommonResult<Boolean> hyKqxx(@RequestBody TaskPageReqVO reqVO) {
58
+//        return success(taskService.hyKqxx(reqVO));
59
+//    }
45 60
 
46 61
     @PostMapping("/getCaxxByKqId")
47
-    @Operation(summary = "获取仓房信息(根据库区id 查询仓房列表)")
62
+    @Operation(summary = "获取仓房列表信息(根据库区id 查询仓房列表-不分页)")
48 63
     public CommonResult<List<TaskCaxxRespVO>> getCaxxByKqId(@RequestBody TaskPageReqVO reqVO) {
49 64
         return success(taskService.getCaxxByKqId(reqVO));
50 65
     }
66
+    @PostMapping("/getCaxxByKqIdForClr")
67
+    @Operation(summary = "存粮人获取仓房列表信息(根据库区id 查询仓房列表-不分页)(存粮人)")
68
+    public CommonResult<List<TaskCaxxRespVO>> getCaxxByKqIdForClr(@RequestBody TaskPageReqVO reqVO) {
69
+        return success(taskService.getCaxxByKqIdForClr(reqVO));
70
+    }
51 71
 
52 72
     @PostMapping("/getKqxxByKqId")
53 73
     @Operation(summary = "获取库区信息(根据库区id)")

+ 6 - 0
delivery-module-core/delivery-module-core-biz/src/main/java/com/unis/module/coding/controller/admin/task/vo/TaskCaxxRespVO.java

@@ -11,6 +11,12 @@ import java.math.BigDecimal;
11 11
 @ExcelIgnoreUnannotated
12 12
 public class TaskCaxxRespVO {
13 13
 
14
+    @Schema(description = "库区id(DELIVERY_KQXX.ID)", requiredMode = Schema.RequiredMode.REQUIRED, example = "1709")
15
+    private Long kqId;
16
+
17
+    @Schema(description = "仓房id(DELIVERY_CAXX.ID)", requiredMode = Schema.RequiredMode.REQUIRED, example = "14592")
18
+    private Long caId;
19
+
14 20
     @Schema(description = "仓房名称")
15 21
     private String cfmc;
16 22
 

+ 15 - 2
delivery-module-core/delivery-module-core-biz/src/main/java/com/unis/module/coding/controller/admin/task/vo/TaskPageReqVO.java

@@ -14,10 +14,15 @@ import java.util.List;
14 14
 @ToString(callSuper = true)
15 15
 public class TaskPageReqVO extends PageParam {
16 16
 
17
-    /** 待领取任务列表 */
17
+    @Schema(description = "待领取任务列表")
18 18
     public static final Integer LIST_TYPE_TASK1 = 1;
19
-    /** 我的任务列表 */
19
+    @Schema(description = "已领取任务列表")
20 20
     public static final Integer LIST_TYPE_TASK2 = 2;
21
+    @Schema(description = "存粮人可选列表")
22
+    public static final Integer LIST_TYPE_TASK3 = 3;
23
+    @Schema(description = "存粮人已选列表")
24
+    public static final Integer LIST_TYPE_TASK4 = 4;
25
+
21 26
     /** 省已选择-表名 */
22 27
     public static final String TABLE_NAME_DELIVERY_PROVINCE = "DELIVERY_PROVINCE";
23 28
     /** 银行已选择-表名 */
@@ -56,8 +61,16 @@ public class TaskPageReqVO extends PageParam {
56 61
     @Schema(description = "库区 ids 领取任务/核验通过 使用")
57 62
     List<Long> kqIds;
58 63
 
64
+    @Schema(description = "仓房 ids 存粮人选择仓房 使用")
65
+    List<Long> caIds;
66
+
59 67
     private String tableName;
60 68
 
61 69
     private String deptId;
62 70
 
71
+    @Schema(description = "存粮人是否选定(0:未选定,1:已选定)")
72
+    private Integer clrsfxd;
73
+
74
+    private String creator;
75
+
63 76
 }

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

@@ -14,6 +14,7 @@ public class TaskRespVO {
14 14
 
15 15
     @Schema(description = "仓房id(DELIVERY_CAXX.ID)", requiredMode = Schema.RequiredMode.REQUIRED, example = "14592")
16 16
     private Long caId;
17
+
17 18
     @Schema(description = "库区代码")
18 19
     private String kqdm;
19 20
 

+ 38 - 0
delivery-module-core/delivery-module-core-biz/src/main/java/com/unis/module/coding/dal/dataobject/users/UsersDO.java

@@ -0,0 +1,38 @@
1
+package com.unis.module.coding.dal.dataobject.users;
2
+
3
+import com.baomidou.mybatisplus.annotation.KeySequence;
4
+import com.baomidou.mybatisplus.annotation.TableId;
5
+import com.baomidou.mybatisplus.annotation.TableName;
6
+import com.unis.framework.mybatis.core.dataobject.BaseDO;
7
+import lombok.*;
8
+
9
+/**
10
+ * 存粮人选定仓 DO
11
+ *
12
+ * @author 超级管理员
13
+ */
14
+@TableName("delivery_users")
15
+@KeySequence("delivery_users_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。
16
+@Data
17
+@EqualsAndHashCode(callSuper = true)
18
+@ToString(callSuper = true)
19
+@Builder
20
+@NoArgsConstructor
21
+@AllArgsConstructor
22
+public class UsersDO extends BaseDO {
23
+
24
+    /**
25
+     * 雪花id
26
+     */
27
+    @TableId
28
+    private Long id;
29
+    /**
30
+     * 库区id(DELIVERY_KQXX.ID)
31
+     */
32
+    private Long kqId;
33
+    /**
34
+     * 仓房id(DELIVERY_CAXX.ID)
35
+     */
36
+    private Long caId;
37
+
38
+}

+ 4 - 8
delivery-module-core/delivery-module-core-biz/src/main/java/com/unis/module/coding/dal/mysql/caxx/CaxxMapper.java

@@ -1,23 +1,19 @@
1 1
 package com.unis.module.coding.dal.mysql.caxx;
2 2
 
3
-import java.util.*;
4
-import java.util.stream.Collectors;
5
-
6
-import cn.hutool.core.util.ObjectUtil;
7 3
 import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
8 4
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
9 5
 import com.unis.framework.common.pojo.PageResult;
10
-import com.unis.framework.common.util.object.ObjectUtils;
11
-import com.unis.framework.mybatis.core.query.LambdaQueryWrapperX;
12 6
 import com.unis.framework.mybatis.core.mapper.BaseMapperX;
7
+import com.unis.framework.mybatis.core.query.LambdaQueryWrapperX;
8
+import com.unis.module.coding.controller.admin.caxx.vo.CaxxPageReqVO;
13 9
 import com.unis.module.coding.controller.admin.delivery.vo.SparePageReqVO;
14 10
 import com.unis.module.coding.controller.admin.delivery.vo.SpareRespVO;
15
-import com.unis.module.coding.dal.dataobject.bank.BankDO;
16 11
 import com.unis.module.coding.dal.dataobject.caxx.CaxxDO;
17 12
 import org.apache.ibatis.annotations.Mapper;
18
-import com.unis.module.coding.controller.admin.caxx.vo.*;
19 13
 import org.apache.ibatis.annotations.Param;
20 14
 
15
+import java.util.List;
16
+
21 17
 /**
22 18
  * 仓廒信息; Mapper
23 19
  *

+ 9 - 0
delivery-module-core/delivery-module-core-biz/src/main/java/com/unis/module/coding/dal/mysql/dk/DkMapper.java

@@ -2,12 +2,15 @@ package com.unis.module.coding.dal.mysql.dk;
2 2
 
3 3
 import com.baomidou.mybatisplus.core.metadata.IPage;
4 4
 import com.unis.framework.mybatis.core.mapper.BaseMapperX;
5
+import com.unis.module.coding.controller.admin.task.vo.TaskCaxxRespVO;
5 6
 import com.unis.module.coding.controller.admin.task.vo.TaskPageReqVO;
6 7
 import com.unis.module.coding.controller.admin.task.vo.TaskRespVO;
7 8
 import com.unis.module.coding.dal.dataobject.dk.DkDO;
8 9
 import org.apache.ibatis.annotations.Mapper;
9 10
 import org.apache.ibatis.annotations.Param;
10 11
 
12
+import java.util.List;
13
+
11 14
 /**
12 15
  * 打卡信息 Mapper
13 16
  *
@@ -21,4 +24,10 @@ public interface DkMapper extends BaseMapperX<DkDO> {
21 24
     default DkDO selectByKqIdAndUserId(Long kqId, Long loginUserId){
22 25
         return selectOne("kqId", kqId, "userId", loginUserId);
23 26
     }
27
+
28
+    IPage<TaskRespVO> getMyStoreroomList(IPage<TaskRespVO> page,@Param("pageReqVO") TaskPageReqVO pageReqVO);
29
+
30
+    IPage<TaskRespVO> getAllStoreroomList(IPage<TaskRespVO> page,@Param("pageReqVO")  TaskPageReqVO pageReqVO);
31
+
32
+    List<TaskCaxxRespVO> getCaxxByKqIdForClr(@Param("pageReqVO") TaskPageReqVO reqVO);
24 33
 }

+ 15 - 0
delivery-module-core/delivery-module-core-biz/src/main/java/com/unis/module/coding/dal/mysql/users/UsersMapper.java

@@ -0,0 +1,15 @@
1
+package com.unis.module.coding.dal.mysql.users;
2
+
3
+import com.unis.framework.mybatis.core.mapper.BaseMapperX;
4
+import com.unis.module.coding.dal.dataobject.users.UsersDO;
5
+import org.apache.ibatis.annotations.Mapper;
6
+
7
+/**
8
+ * 存粮人选定仓 Mapper
9
+ *
10
+ * @author 超级管理员
11
+ */
12
+@Mapper
13
+public interface UsersMapper extends BaseMapperX<UsersDO> {
14
+
15
+}

+ 8 - 0
delivery-module-core/delivery-module-core-biz/src/main/java/com/unis/module/coding/service/task/TaskService.java

@@ -15,6 +15,10 @@ public interface TaskService {
15 15
 
16 16
     IPage<TaskRespVO> getTaskList(TaskPageReqVO pageReqVO);
17 17
 
18
+    IPage<TaskRespVO> getAllStoreroomList(TaskPageReqVO pageReqVO);
19
+
20
+    IPage<TaskRespVO> getMyStoreroomList(TaskPageReqVO pageReqVO);
21
+
18 22
     Boolean getTasks(TaskPageReqVO reqVO);
19 23
 
20 24
     Boolean hyKqxx(TaskPageReqVO reqVO);
@@ -28,4 +32,8 @@ public interface TaskService {
28 32
     TaskDkxxRespVO getDkxxByKqId(TaskPageReqVO reqVO);
29 33
 
30 34
     Boolean setDkxxByKqId(TaskDkxxSaveVO saveVO);
35
+
36
+    Boolean getStoreroom(TaskPageReqVO reqVO);
37
+
38
+    List<TaskCaxxRespVO> getCaxxByKqIdForClr(TaskPageReqVO reqVO);
31 39
 }

+ 93 - 13
delivery-module-core/delivery-module-core-biz/src/main/java/com/unis/module/coding/service/task/TaskServiceImpl.java

@@ -1,5 +1,6 @@
1 1
 package com.unis.module.coding.service.task;
2 2
 
3
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
3 4
 import com.baomidou.mybatisplus.core.metadata.IPage;
4 5
 import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
5 6
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -17,6 +18,7 @@ import com.unis.module.coding.dal.dataobject.dk.DkDO;
17 18
 import com.unis.module.coding.dal.dataobject.dwxx.DwxxDO;
18 19
 import com.unis.module.coding.dal.dataobject.kqxx.KqxxDO;
19 20
 import com.unis.module.coding.dal.dataobject.province.ProvinceDO;
21
+import com.unis.module.coding.dal.dataobject.users.UsersDO;
20 22
 import com.unis.module.coding.dal.mysql.bank.BankMapper;
21 23
 import com.unis.module.coding.dal.mysql.caxx.CaxxMapper;
22 24
 import com.unis.module.coding.dal.mysql.cwxx.CwxxMapper;
@@ -25,6 +27,7 @@ import com.unis.module.coding.dal.mysql.dk.DkMapper;
25 27
 import com.unis.module.coding.dal.mysql.dwxx.DwxxMapper;
26 28
 import com.unis.module.coding.dal.mysql.kqxx.KqxxMapper;
27 29
 import com.unis.module.coding.dal.mysql.province.ProvinceMapper;
30
+import com.unis.module.coding.dal.mysql.users.UsersMapper;
28 31
 import com.unis.module.core.enums.ErrorCodeConstants;
29 32
 import com.unis.module.core.enums.project.DeliveryHyState;
30 33
 import com.unis.module.system.api.permission.PermissionApi;
@@ -71,6 +74,8 @@ public class TaskServiceImpl implements TaskService {
71 74
     private CwxxYearMapper cwxxYearMapper;
72 75
     @Resource
73 76
     private BankMapper bankMapper;
77
+    @Resource
78
+    private UsersMapper usersMapper;
74 79
 
75 80
     @Override
76 81
     public IPage<TaskRespVO> getTaskList(TaskPageReqVO pageReqVO) {
@@ -84,6 +89,31 @@ public class TaskServiceImpl implements TaskService {
84 89
     }
85 90
 
86 91
     @Override
92
+    public IPage<TaskRespVO> getAllStoreroomList(TaskPageReqVO pageReqVO) {
93
+        // 根据角色不同,查询不同数据
94
+        addParamDeptIds(pageReqVO);
95
+
96
+        IPage<TaskRespVO> page = new Page<>(pageReqVO.getPageNo(), pageReqVO.getPageSize());
97
+        return dkMapper.getAllStoreroomList(page, pageReqVO);
98
+    }
99
+
100
+    @Override
101
+    public IPage<TaskRespVO> getMyStoreroomList(TaskPageReqVO pageReqVO) {
102
+        Long loginUserId = SecurityFrameworkUtils.getLoginUserIdNotNull();
103
+        // 查询登录人角色标识
104
+        Set<String> roleCodes = permissionApi.getUserRoleCodeListByUserIdFromCache(loginUserId);
105
+
106
+        // 存粮人
107
+        if(!roleCodes.contains(RoleCodeEnum.GRAIN_DEPOSITOR.getCode())) {
108
+            throw exception(ErrorCodeConstants.APP_ACCOUNT_PERMISSION_DENIED);
109
+        }
110
+
111
+        pageReqVO.setCreator(String.valueOf(loginUserId));
112
+        IPage<TaskRespVO> page = new Page<>(pageReqVO.getPageNo(), pageReqVO.getPageSize());
113
+        return dkMapper.getMyStoreroomList(page, pageReqVO);
114
+    }
115
+
116
+    @Override
87 117
     @Transactional(rollbackFor = Exception.class)
88 118
     public Boolean getTasks(TaskPageReqVO reqVO) {
89 119
 
@@ -120,6 +150,30 @@ public class TaskServiceImpl implements TaskService {
120 150
     }
121 151
 
122 152
     @Override
153
+    public Boolean getStoreroom(TaskPageReqVO reqVO) {
154
+
155
+        // 存粮人选定仓 新增数据 以仓房为单位
156
+        if(0 == reqVO.getClrsfxd()) {
157
+            //存粮人删除选定
158
+            reqVO.getCaIds().forEach(caId ->
159
+                    usersMapper.delete(new QueryWrapper<UsersDO>().lambda()
160
+                    .eq(UsersDO::getCreator, SecurityFrameworkUtils.getLoginUserId())
161
+                    .eq(UsersDO::getCaId, caId)));
162
+        }else{
163
+            // 校验 是登录人可选的任务
164
+            List<TaskCaxxRespVO> taskCaxxRespVOS = verifyStoreroom(reqVO);
165
+
166
+            taskCaxxRespVOS.forEach(taskCaxxRespVO ->
167
+                    usersMapper.insert(new UsersDO()
168
+                            .setId(YitIdHelper.nextId())
169
+                            .setKqId(taskCaxxRespVO.getKqId())
170
+                            .setCaId(taskCaxxRespVO.getCaId())));
171
+        }
172
+
173
+        return true;
174
+    }
175
+
176
+    @Override
123 177
     @Transactional(rollbackFor = Exception.class)
124 178
     public Boolean hyKqxx(TaskPageReqVO reqVO) {
125 179
         //校验是登录人可选的任务
@@ -165,6 +219,13 @@ public class TaskServiceImpl implements TaskService {
165 219
 
166 220
         return new ArrayList<>();
167 221
     }
222
+    @Override
223
+    public List<TaskCaxxRespVO> getCaxxByKqIdForClr(TaskPageReqVO reqVO) {
224
+        // 根据角色不同,查询不同数据
225
+        addParamDeptIds(reqVO);
226
+
227
+        return dkMapper.getCaxxByKqIdForClr(reqVO);
228
+    }
168 229
 
169 230
     @Override
170 231
     public TaskKqxxRespVO getKqxxByKqId(TaskPageReqVO reqVO) {
@@ -280,6 +341,20 @@ public class TaskServiceImpl implements TaskService {
280 341
             throw exception(ErrorCodeConstants.APP_TASK_RECEIVE_ERROR);
281 342
         }
282 343
     }
344
+    private  List<TaskCaxxRespVO> verifyStoreroom(TaskPageReqVO reqVO) {
345
+
346
+        TaskPageReqVO pageReqVO = new TaskPageReqVO();
347
+        pageReqVO.setCaIds(reqVO.getCaIds());
348
+        pageReqVO.setListType(TaskPageReqVO.LIST_TYPE_TASK3);
349
+        pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
350
+
351
+        List<TaskCaxxRespVO> taskList = getCaxxByKqIdForClr(pageReqVO);
352
+
353
+        if(taskList.size() != reqVO.getKqIds().size()) {
354
+            throw exception(ErrorCodeConstants.APP_TASK_RECEIVE_ERROR);
355
+        }
356
+        return taskList;
357
+    }
283 358
 
284 359
     private void addParamDeptIds(@NotNull TaskPageReqVO pageReqVO) {
285 360
 
@@ -291,10 +366,21 @@ public class TaskServiceImpl implements TaskService {
291 366
         // 查询待核验列表
292 367
         if(pageReqVO.getListType() == null){
293 368
             throw exception(ErrorCodeConstants.APP_PARAM_ERROR);
294
-        }else if(1 == pageReqVO.getListType()) {
369
+        }else if(TaskPageReqVO.LIST_TYPE_TASK1.equals(pageReqVO.getListType())) {
370
+            // 可选任务
295 371
             pageReqVO.setHyState(DeliveryHyState.WAIT.getCode());
296
-        } else if(2 == pageReqVO.getListType()) {
372
+        } else if(TaskPageReqVO.LIST_TYPE_TASK2.equals(pageReqVO.getListType())) {
373
+            // 已选任务
297 374
             pageReqVO.setHyryId(loginUserId);
375
+        } else if(TaskPageReqVO.LIST_TYPE_TASK3.equals(pageReqVO.getListType())) {
376
+            // 存粮人可选列表
377
+            pageReqVO.setHyState(DeliveryHyState.YES_HY.getCode());
378
+            pageReqVO.setClrsfxd(0);
379
+        } else if(TaskPageReqVO.LIST_TYPE_TASK4.equals(pageReqVO.getListType())) {
380
+            // 存粮人已选列表
381
+            pageReqVO.setHyState(DeliveryHyState.YES_HY.getCode());
382
+            pageReqVO.setClrsfxd(1);
383
+            pageReqVO.setCreator(String.valueOf(loginUserId));
298 384
         } else {
299 385
             throw exception(ErrorCodeConstants.APP_PARAM_ERROR);
300 386
         }
@@ -312,18 +398,12 @@ public class TaskServiceImpl implements TaskService {
312 398
             }
313 399
             return;
314 400
         }
315
-        // 银行核验人员
316
-        if(roleCodes.contains(RoleCodeEnum.VERIFICATION_PERSONNEL.getCode())) {
401
+        // 银行核验人员 | 存粮人
402
+        if(roleCodes.contains(RoleCodeEnum.VERIFICATION_PERSONNEL.getCode()) ||
403
+                roleCodes.contains(RoleCodeEnum.GRAIN_DEPOSITOR.getCode())) {
317 404
             if(loginUser != null) {
318
-                String areaLevel = loginUser.getInfo().get("areaLevel");
319
-                if("1".equals(areaLevel)) {
320
-                    pageReqVO.setSheng(loginUser.getInfo().get("sheng_code"));
321
-                    //银行需要查询自己银行选定的
322
-                    pageReqVO.setDeptId(loginUser.getInfo().get("deptId"));
323
-                    pageReqVO.setTableName(TaskPageReqVO.TABLE_NAME_DELIVERY_BANK);
324
-                } else {
325
-                    throw exception(ErrorCodeConstants.APP_ACCOUNT_PERMISSION_DENIED);
326
-                }
405
+                pageReqVO.setDeptId(loginUser.getInfo().get("deptId"));
406
+                pageReqVO.setTableName(TaskPageReqVO.TABLE_NAME_DELIVERY_BANK);
327 407
             }
328 408
             return;
329 409
         }

+ 133 - 2
delivery-module-core/delivery-module-core-biz/src/main/resources/mapper/dk/DkMapper.xml

@@ -20,11 +20,11 @@
20 20
             dp.HYRY_ID ,
21 21
             dp.HYRY_NAME ,
22 22
             dp.HY_STATE ,
23
-            COUNT(dc.ID) AS HY_NUM
23
+            COUNT(distinct dc.ID) AS HY_NUM
24 24
         FROM
25 25
             ${pageReqVO.tableName} dp
26 26
         LEFT JOIN DELIVERY_KQXX dk ON dp.KQ_ID = dk.ID
27
-        LEFT JOIN DELIVERY_CAXX dc ON dp.CA_ID = dc.KQID AND dc.DELETED = 0
27
+        LEFT JOIN DELIVERY_CAXX dc ON dk.ID = dc.KQID AND dc.DELETED = 0
28 28
         WHERE
29 29
             dk.DELETED = 0 AND dk.SFZX = 0 and dp.DELETED = 0
30 30
         <if test="pageReqVO.sheng != null and pageReqVO.sheng != ''">
@@ -45,9 +45,140 @@
45 45
         <if test="pageReqVO.deptId != null and pageReqVO.deptId != ''">
46 46
             AND FIND_IN_SET(pageReqVO.deptId,dp.RDYH_ID)
47 47
         </if>
48
+        <if test="pageReqVO.kqIds != null and pageReqVO.kqIds.size() > 0">
49
+            AND dp.KQ_ID IN
50
+            <foreach collection="pageReqVO.kqIds" item="kqId" open="(" separator="," close=")">
51
+                #{kqId}
52
+            </foreach>
53
+        </if>
48 54
         GROUP BY
49 55
             dk.ID
50 56
         ORDER BY
51 57
             dp.ID desc
52 58
     </select>
59
+    <select id="getMyStoreroomList" resultType="com.unis.module.coding.controller.admin.task.vo.TaskRespVO">
60
+        SELECT
61
+        dk.ID AS kqId,
62
+        dk.KQDM ,
63
+        dk.KQMC ,
64
+        dk.JTDZ ,
65
+        dk.SHENG ,dk.SHI ,dk.XIAN ,
66
+        COUNT(distinct dc.ID) AS HY_NUM
67
+        FROM
68
+        DELIVERY_USERS du
69
+        LEFT JOIN DELIVERY_KQXX dk ON du.KQ_ID = dk.ID
70
+        LEFT JOIN DELIVERY_CAXX dc ON dk.ID = dc.KQID AND dc.DELETED = 0
71
+        WHERE dk.DELETED = 0 AND dk.SFZX = 0 and du.DELETED = 0
72
+            <if test="pageReqVO.sheng != null and pageReqVO.sheng != ''">
73
+                AND dk.SHENG = #{pageReqVO.sheng}
74
+            </if>
75
+            <if test="pageReqVO.shi != null and pageReqVO.shi != ''">
76
+                AND dk.SHI = #{pageReqVO.shi}
77
+            </if>
78
+            <if test="pageReqVO.xian != null and pageReqVO.xian != ''">
79
+                AND dk.XIAN = #{pageReqVO.xian}
80
+            </if>
81
+            <if test="pageReqVO.creator != null">
82
+                AND du.CREATOR = #{pageReqVO.creator}
83
+            </if>
84
+        GROUP BY
85
+            dk.ID
86
+        ORDER BY
87
+            du.ID desc
88
+    </select>
89
+    <select id="getAllStoreroomList" resultType="com.unis.module.coding.controller.admin.task.vo.TaskRespVO">
90
+        SELECT
91
+        dk.ID AS kqId,
92
+        dk.KQDM ,
93
+        dk.KQMC ,
94
+        dk.JTDZ ,
95
+        dk.SHENG ,dk.SHI ,dk.XIAN ,
96
+        dp.HYRY_ID ,
97
+        dp.HYRY_NAME ,
98
+        dp.HY_STATE ,
99
+        COUNT(distinct dc.ID) AS HY_NUM
100
+        FROM
101
+        DELIVERY_BANK dp
102
+        LEFT JOIN DELIVERY_KQXX dk ON dp.KQ_ID = dk.ID
103
+        LEFT JOIN DELIVERY_CAXX dc ON dk.ID = dc.KQID
104
+        LEFT JOIN DELIVERY_USERS du ON dc.ID = du.CA_ID AND du.DELETED = 0
105
+        WHERE
106
+        dk.DELETED = 0 AND dk.SFZX = 0 and dp.DELETED = 0 AND dc.DELETED = 0
107
+        AND du.ID IS NULL
108
+        <if test="pageReqVO.sheng != null and pageReqVO.sheng != ''">
109
+            AND dk.SHENG = #{pageReqVO.sheng}
110
+        </if>
111
+        <if test="pageReqVO.shi != null and pageReqVO.shi != ''">
112
+            AND dk.SHI = #{pageReqVO.shi}
113
+        </if>
114
+        <if test="pageReqVO.xian != null and pageReqVO.xian != ''">
115
+            AND dk.XIAN = #{pageReqVO.xian}
116
+        </if>
117
+        <if test="pageReqVO.hyState != null">
118
+            AND dp.HY_STATE = #{pageReqVO.hyState}
119
+        </if>
120
+        <if test="pageReqVO.hyryId != null">
121
+            AND dp.HYRY_ID = #{pageReqVO.hyryId}
122
+        </if>
123
+        <if test="pageReqVO.deptId != null and pageReqVO.deptId != ''">
124
+            AND FIND_IN_SET(pageReqVO.deptId,dp.RDYH_ID)
125
+        </if>
126
+        <if test="pageReqVO.kqIds != null and pageReqVO.kqIds.size() > 0">
127
+            AND dp.KQ_ID IN
128
+            <foreach collection="pageReqVO.kqIds" item="kqId" open="(" separator="," close=")">
129
+                #{kqId}
130
+            </foreach>
131
+        </if>
132
+        GROUP BY
133
+        dk.ID
134
+        ORDER BY
135
+        dp.ID desc
136
+    </select>
137
+    <select id="getCaxxByKqIdForClr" resultType="com.unis.module.coding.controller.admin.task.vo.TaskCaxxRespVO">
138
+        SELECT
139
+            dk.ID AS kqId,
140
+            dc.ID AS caId,
141
+            dc.CFMC ,
142
+            dc.CFLX ,
143
+            dc.CAZT ,
144
+            dc.SJCR ,
145
+            dc.SFKC ,
146
+            dk."zcckj" ,
147
+            dk."wtbgckj"
148
+        FROM
149
+            DELIVERY_KQXX dk
150
+        LEFT JOIN DELIVERY_CAXX dc ON dk.ID = dc.KQID
151
+        left join DELIVERY_BANK db on dk.ID = db.KQ_ID and db.deleted = 0
152
+        LEFT JOIN DELIVERY_USERS du ON dc.ID = du.CA_ID and du.deleted = 0
153
+        WHERE
154
+            dk.DELETED =0 AND dc.DELETED = 0 AND dk.SFZX = 0
155
+        <if test="pageReqVO.kqId != null">
156
+            AND dk.ID = #{pageReqVO.kqId}
157
+        </if>
158
+        <if test="pageReqVO.deptId != null and pageReqVO.deptId != ''">
159
+            AND FIND_IN_SET(pageReqVO.deptId,dp.RDYH_ID)
160
+        </if>
161
+        <if test="pageReqVO.clrsfxd != null and pageReqVO.clrsfxd == 0 ">
162
+            AND du.ID IS NULL
163
+        </if>
164
+        <if test="pageReqVO.clrsfxd != null and pageReqVO.clrsfxd == 1 ">
165
+            AND du.ID IS NOT NULL
166
+        </if>
167
+        <if test="pageReqVO.creator != null">
168
+            AND du.CREATOR = #{pageReqVO.creator}
169
+        </if>
170
+        <if test="pageReqVO.hyState != null">
171
+            AND db.HY_STATE = #{pageReqVO.hyState}
172
+        </if>
173
+        <if test="pageReqVO.caIds != null and pageReqVO.caIds.size() > 0">
174
+            AND dc.ID IN
175
+            <foreach collection="pageReqVO.caIds" item="caId" open="(" separator="," close=")">
176
+                #{caId}
177
+            </foreach>
178
+        </if>
179
+        GROUP BY
180
+        dc.ID
181
+        ORDER BY
182
+        dc.ID desc
183
+    </select>
53 184
 </mapper>

+ 12 - 0
delivery-module-core/delivery-module-core-biz/src/main/resources/mapper/users/UsersMapper.xml

@@ -0,0 +1,12 @@
1
+<?xml version="1.0" encoding="UTF-8"?>
2
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
3
+<mapper namespace="com.unis.module.coding.dal.mysql.users.UsersMapper">
4
+
5
+    <!--
6
+        一般情况下,尽可能使用 Mapper 进行 CRUD 增删改查即可。
7
+        无法满足的场景,例如说多表关联查询,才使用 XML 编写 SQL。
8
+        代码生成器暂时只生成 Mapper XML 文件本身,更多推荐 MybatisX 快速开发插件来生成查询。
9
+        文档可见:https://www.iocoder.cn/MyBatis/x-plugins/
10
+     -->
11
+
12
+</mapper>

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

@@ -25,6 +25,8 @@ public enum RoleCodeEnum {
25 25
     INSURANCE_COMPANY("insurance_company", "保险公司"),
26 26
     //    银行核验人员	verification_personnel
27 27
     VERIFICATION_PERSONNEL("verification_personnel", "银行核验人员"),
28
+    //    存粮人(贷款人) grain_depositor
29
+    GRAIN_DEPOSITOR("grain_depositor", "存粮人(贷款人)"),
28 30
     //    省局	sheng_admin
29 31
     SHENG_ADMIN("sheng_admin", "省局"),
30 32
     //    市局	shi_admin