Просмотр исходного кода

Merge branch 'dev' into sky_v1

15928045575 2 лет назад
Родитель
Сommit
de4a1e5043
32 измененных файлов с 538 добавлено и 107 удалено
  1. 5 0
      sckw-modules/sckw-contract/src/main/java/com/sckw/contract/model/dto/req/QueryListReqDto.java
  2. 2 3
      sckw-modules/sckw-contract/src/main/java/com/sckw/contract/service/CommonBusinessService.java
  3. 24 0
      sckw-modules/sckw-contract/src/main/java/com/sckw/contract/service/KwcContractLogisticsService.java
  4. 33 9
      sckw-modules/sckw-contract/src/main/java/com/sckw/contract/service/KwcContractTradeService.java
  5. 15 2
      sckw-modules/sckw-contract/src/main/resources/mapper/KwcContractLogisticsMapper.xml
  6. 16 2
      sckw-modules/sckw-contract/src/main/resources/mapper/KwcContractTradeMapper.xml
  7. 23 13
      sckw-modules/sckw-message/src/main/java/com/sckw/message/controller/MessageController.java
  8. 2 2
      sckw-modules/sckw-message/src/main/java/com/sckw/message/dao/KwmMessageMapper.java
  9. 44 0
      sckw-modules/sckw-message/src/main/java/com/sckw/message/enums/MsgStatusEnum.java
  10. 0 33
      sckw-modules/sckw-message/src/main/java/com/sckw/message/model/FindMessagePageParam.java
  11. 5 0
      sckw-modules/sckw-message/src/main/java/com/sckw/message/model/KwmMessage.java
  12. 5 0
      sckw-modules/sckw-message/src/main/java/com/sckw/message/model/KwmMessageUser.java
  13. 5 0
      sckw-modules/sckw-message/src/main/java/com/sckw/message/model/KwmSms.java
  14. 48 0
      sckw-modules/sckw-message/src/main/java/com/sckw/message/model/dto/SelectMessagesDTO.java
  15. 12 0
      sckw-modules/sckw-message/src/main/java/com/sckw/message/model/vo/req/SelectMessagesReqVO.java
  16. 40 0
      sckw-modules/sckw-message/src/main/java/com/sckw/message/model/vo/req/StatisticsMessagesReqVO.java
  17. 73 0
      sckw-modules/sckw-message/src/main/java/com/sckw/message/model/vo/res/KwmMessageListResVO.java
  18. 4 4
      sckw-modules/sckw-message/src/main/java/com/sckw/message/service/KwmMessageService.java
  19. 50 9
      sckw-modules/sckw-message/src/main/java/com/sckw/message/service/MessageService.java
  20. 6 0
      sckw-modules/sckw-message/src/main/resources/mapper/KwmMessageMapper.xml
  21. 0 8
      sckw-modules/sckw-system/src/main/java/com/sckw/system/controller/KwsRoleController.java
  22. 5 0
      sckw-modules/sckw-system/src/main/java/com/sckw/system/controller/KwsUserController.java
  23. 2 0
      sckw-modules/sckw-system/src/main/java/com/sckw/system/dao/KwsMenuRightsDao.java
  24. 5 0
      sckw-modules/sckw-system/src/main/java/com/sckw/system/model/vo/req/EditRoleReqVo.java
  25. 50 0
      sckw-modules/sckw-system/src/main/java/com/sckw/system/service/CommonService.java
  26. 1 1
      sckw-modules/sckw-system/src/main/java/com/sckw/system/service/KwsEnterpriseService.java
  27. 34 10
      sckw-modules/sckw-system/src/main/java/com/sckw/system/service/KwsMenuService.java
  28. 3 1
      sckw-modules/sckw-system/src/main/java/com/sckw/system/service/KwsRoleService.java
  29. 3 0
      sckw-modules/sckw-system/src/main/java/com/sckw/system/service/KwsUserService.java
  30. 1 0
      sckw-modules/sckw-system/src/main/resources/mapper/KwsMenuDao.xml
  31. 5 1
      sckw-modules/sckw-system/src/main/resources/mapper/KwsMenuRightsDao.xml
  32. 17 9
      sckw-modules/sckw-transport/src/main/java/com/sckw/transport/service/KwtWaybillOrderService.java

+ 5 - 0
sckw-modules/sckw-contract/src/main/java/com/sckw/contract/model/dto/req/QueryListReqDto.java

@@ -48,6 +48,11 @@ public class QueryListReqDto {
      */
     private Long entId;
 
+    /**
+     * 所有企业
+     */
+    private List<Long> allEnt;
+
     /**
      * 签约方式
      */

+ 2 - 3
sckw-modules/sckw-contract/src/main/java/com/sckw/contract/service/CommonBusinessService.java

@@ -81,11 +81,10 @@ public class CommonBusinessService {
     @Transactional(rollbackFor = {})
     public void approval(ESignCallBackReqVo reqVo) {
         Long contractId = reqVo.getContractId();
-        int code = ContractTrackEnum.SIGNING.getCode();
         KwcContractTrade kwcContractTrade = kwcContractTradeMapper.selectById(contractId);
         if (Objects.nonNull(kwcContractTrade)) {
             kwcContractTradeService.approval(reqVo.getContractId(), reqVo.getStatus(), reqVo.getRemark());
-            kwcContractLogisticsTrackService.saveContractLogisticsTrack(contractId, code);
+            kwcContractTradeTrackService.saveContractTradeTrack(contractId, reqVo.getStatus());
             notifyOrder(contractId, kwcContractTrade.getCreateBy());
             return;
         }
@@ -93,7 +92,7 @@ public class CommonBusinessService {
         KwcContractLogistics kwcContractLogistics = kwcContractLogisticsMapper.selectById(contractId);
         if (Objects.nonNull(kwcContractLogistics)) {
             kwcContractLogisticsService.approval(reqVo.getContractId(), reqVo.getStatus(), reqVo.getRemark());
-            kwcContractTradeTrackService.saveContractTradeTrack(contractId, code);
+            kwcContractLogisticsTrackService.saveContractLogisticsTrack(contractId, reqVo.getStatus());
             notifyOrder(contractId, kwcContractLogistics.getCreateBy());
             return;
         }

+ 24 - 0
sckw-modules/sckw-contract/src/main/java/com/sckw/contract/service/KwcContractLogisticsService.java

@@ -28,6 +28,7 @@ import com.sckw.core.web.context.LoginUserHolder;
 import com.sckw.excel.utils.EasyExcelUtil;
 import com.sckw.product.api.dubbo.GoodsInfoService;
 import com.sckw.system.api.RemoteSystemService;
+import com.sckw.system.api.model.dto.res.EntCacheResDto;
 import com.sckw.system.api.model.dto.res.SysDictResDto;
 import com.sckw.system.api.model.dto.res.UserCacheResDto;
 import lombok.extern.slf4j.Slf4j;
@@ -532,9 +533,21 @@ public class KwcContractLogisticsService {
         PageHelper.startPage(reqVo.getPage(), reqVo.getPageSize());
         QueryListReqDto queryListReqDto = new QueryListReqDto();
         BeanUtils.copyProperties(reqVo, queryListReqDto);
+        List<Long> allEnt = new ArrayList<>();
         if (Objects.isNull(reqVo.getEntId())) {
             queryListReqDto.setEntId(LoginUserHolder.getEntId());
         }
+        allEnt.add(queryListReqDto.getEntId());
+
+        EntCacheResDto entCacheResDto = remoteSystemService.queryEntTreeById(queryListReqDto.getEntId());
+        if (Objects.nonNull(entCacheResDto)) {
+            EntCacheResDto entCacheResDto1 = remoteSystemService.queryEntTreeById(entCacheResDto.getId());
+            List<EntCacheResDto> child = entCacheResDto1.getChild();
+            if (CollectionUtils.isNotEmpty(child)) {
+                allEnt.addAll(child.stream().map(EntCacheResDto::getId).toList());
+            }
+        }
+        queryListReqDto.setAllEnt(allEnt);
         List<QueryListResDto> queryListResDtos = kwcContractLogisticsMapper.queryList(queryListReqDto);
         if (CollectionUtils.isEmpty(queryListResDtos)) {
             return PageHelperUtil.getPageResult(new PageInfo<>());
@@ -651,10 +664,21 @@ public class KwcContractLogisticsService {
 
         QueryListReqDto queryListReqDto = new QueryListReqDto();
         BeanUtils.copyProperties(reqVo, queryListReqDto);
+        List<Long> allEnt = new ArrayList<>();
         if (Objects.isNull(reqVo.getEntId())) {
             queryListReqDto.setEntId(LoginUserHolder.getEntId());
         }
+        allEnt.add(queryListReqDto.getEntId());
 
+        EntCacheResDto entCacheResDto = remoteSystemService.queryEntTreeById(queryListReqDto.getEntId());
+        if (Objects.nonNull(entCacheResDto)) {
+            EntCacheResDto entCacheResDto1 = remoteSystemService.queryEntTreeById(entCacheResDto.getId());
+            List<EntCacheResDto> child = entCacheResDto1.getChild();
+            if (CollectionUtils.isNotEmpty(child)) {
+                allEnt.addAll(child.stream().map(EntCacheResDto::getId).toList());
+            }
+        }
+        queryListReqDto.setAllEnt(allEnt);
         List<QueryListResDto> queryListResDtoList = kwcContractLogisticsMapper.queryList(queryListReqDto);
         if (CollectionUtils.isNotEmpty(queryListResDtoList)) {
             Map<Integer, List<QueryListResDto>> collect = queryListResDtoList.stream().collect(Collectors.groupingBy(QueryListResDto::getStatus));

+ 33 - 9
sckw-modules/sckw-contract/src/main/java/com/sckw/contract/service/KwcContractTradeService.java

@@ -28,6 +28,7 @@ import com.sckw.order.api.dubbo.TradeOrderInfoService;
 import com.sckw.order.api.model.ContractSignCompletedParam;
 import com.sckw.product.api.dubbo.GoodsInfoService;
 import com.sckw.product.api.model.KwpGoods;
+import com.sckw.system.api.model.dto.res.EntCacheResDto;
 import com.sckw.system.api.model.dto.res.SysDictResDto;
 import com.sckw.system.api.model.dto.res.UserCacheResDto;
 import lombok.extern.slf4j.Slf4j;
@@ -40,6 +41,7 @@ import com.sckw.system.api.RemoteSystemService;
 import java.math.BigDecimal;
 import java.util.*;
 import java.util.stream.Collectors;
+
 import com.sckw.contract.dao.KwcContractTradeMapper;
 
 /**
@@ -87,9 +89,21 @@ public class KwcContractTradeService {
         PageHelper.startPage(reqVo.getPage(), reqVo.getPageSize());
         QueryListReqDto queryListReqDto = new QueryListReqDto();
         BeanUtils.copyProperties(reqVo, queryListReqDto);
+        List<Long> allEnt = new ArrayList<>();
         if (Objects.isNull(reqVo.getEntId())) {
             queryListReqDto.setEntId(LoginUserHolder.getEntId());
         }
+        allEnt.add(queryListReqDto.getEntId());
+
+        EntCacheResDto entCacheResDto = remoteSystemService.queryEntTreeById(queryListReqDto.getEntId());
+        if (Objects.nonNull(entCacheResDto)) {
+            EntCacheResDto entCacheResDto1 = remoteSystemService.queryEntTreeById(entCacheResDto.getId());
+            List<EntCacheResDto> child = entCacheResDto1.getChild();
+            if (CollectionUtils.isNotEmpty(child)) {
+                allEnt.addAll(child.stream().map(EntCacheResDto::getId).toList());
+            }
+        }
+        queryListReqDto.setAllEnt(allEnt);
         List<QueryListResDto> queryListResDtos = kwcContractTradeMapper.queryList(queryListReqDto);
         if (CollectionUtils.isEmpty(queryListResDtos)) {
             return PageHelperUtil.getPageResult(new PageInfo<>());
@@ -415,15 +429,13 @@ public class KwcContractTradeService {
      */
     private void sign(ContractTradeReqVo reqVo, Long id) {
         if (DictEnum.SIGNING_WAY_1.getValue().equals(String.valueOf(reqVo.getBaseInfo().getSigningWay()))) {
-            if (DictEnum.SIGNING_WAY_1.getValue().equals(String.valueOf(reqVo.getBaseInfo().getSigningWay()))) {
-                commonBusinessService.postToEsign(reqVo.getBaseInfo().getProvidePhone(),
-                        reqVo.getBaseInfo().getPurchasePhone(),
-                        reqVo.getBaseInfo().getProvideEntId(),
-                        reqVo.getBaseInfo().getPurchaseEntId(),
-                        reqVo.getContractFile(),
-                        id,
-                        reqVo.getBaseInfo().getContractName());
-            }
+            commonBusinessService.postToEsign(reqVo.getBaseInfo().getProvidePhone(),
+                    reqVo.getBaseInfo().getPurchasePhone(),
+                    reqVo.getBaseInfo().getProvideEntId(),
+                    reqVo.getBaseInfo().getPurchaseEntId(),
+                    reqVo.getContractFile(),
+                    id,
+                    reqVo.getBaseInfo().getContractName());
         }
 
         //线下签约直接通过
@@ -655,9 +667,21 @@ public class KwcContractTradeService {
 
         QueryListReqDto queryListReqDto = new QueryListReqDto();
         BeanUtils.copyProperties(reqVo, queryListReqDto);
+        List<Long> allEnt = new ArrayList<>();
         if (Objects.isNull(reqVo.getEntId())) {
             queryListReqDto.setEntId(LoginUserHolder.getEntId());
         }
+        allEnt.add(queryListReqDto.getEntId());
+
+        EntCacheResDto entCacheResDto = remoteSystemService.queryEntTreeById(queryListReqDto.getEntId());
+        if (Objects.nonNull(entCacheResDto)) {
+            EntCacheResDto entCacheResDto1 = remoteSystemService.queryEntTreeById(entCacheResDto.getId());
+            List<EntCacheResDto> child = entCacheResDto1.getChild();
+            if (CollectionUtils.isNotEmpty(child)) {
+                allEnt.addAll(child.stream().map(EntCacheResDto::getId).toList());
+            }
+        }
+        queryListReqDto.setAllEnt(allEnt);
         List<QueryListResDto> queryListResDtoList = kwcContractTradeMapper.queryList(queryListReqDto);
         if (CollectionUtils.isNotEmpty(queryListResDtoList)) {
             Map<Integer, List<QueryListResDto>> collect = queryListResDtoList.stream().collect(Collectors.groupingBy(QueryListResDto::getStatus));

+ 15 - 2
sckw-modules/sckw-contract/src/main/resources/mapper/KwcContractLogisticsMapper.xml

@@ -63,12 +63,25 @@
                 a.performed_amount performedAmount,
                 a.contract_pid contractPid
           from kwc_contract_logistics a
-          left join kwc_contract_logistics_unit b on a.id = b.contract_id and b.unit_type = #{entType} and b.del_flag = 0
+          left join kwc_contract_logistics_unit b
+            on a.id = b.contract_id
+           and b.unit_type = #{entType}
+           and case when a.status != 3 then b.ent_id in
+                <foreach collection="allEnt" separator="," open="(" close=")" item="item">
+                    #{item}
+                </foreach>
+                 end
+            and b.del_flag = 0
           left join kwc_contract_logistics_track c on a.id = c.contract_id and c.del_flag = 0 and c.type = 1
           left join kwc_contract_logistics_track d on a.id = d.contract_id and d.del_flag = 0 and d.type = 0
           left join kwc_contract_logistics_unit e on a.id = e.contract_id and e.unit_type != #{entType} and e.del_flag = 0
         where a.del_flag = 0
-          and case when a.status = 3 then a.ent_id = #{entId} and #{entType} = 3 else a.ent_id = #{entId} end
+          and case when a.status = 3 then a.ent_id = #{entId}
+              else (b.ent_id in
+                    <foreach collection="allEnt" separator="," open="(" close=")" item="item">
+                        #{item}
+                    </foreach> and b.id is not null)
+                end
           <if test="startTime != null">
               and a.create_time >= #{startTime}
           </if>

+ 16 - 2
sckw-modules/sckw-contract/src/main/resources/mapper/KwcContractTradeMapper.xml

@@ -61,12 +61,26 @@
                e.firm_name targetEntName,
                a.contract_pid contractPid
           from kwc_contract_trade a
-          left join kwc_contract_trade_unit b on a.id = b.contract_id and b.unit_type = #{entType} and b.del_flag = 0
+          left join kwc_contract_trade_unit b
+            on a.id = b.contract_id
+           and b.unit_type = #{entType}
+           and case when a.status != 3 then b.ent_id in
+                <foreach collection="allEnt" separator="," open="(" close=")" item="item">
+                    #{item}
+                </foreach>
+                end
+           and b.del_flag = 0
           left join kwc_contract_trade_track c on a.id = c.contract_id and c.del_flag = 0 and c.type = 1
           left join kwc_contract_trade_track d on a.id = d.contract_id and d.del_flag = 0 and d.type = 0
           left join kwc_contract_trade_unit e on a.id = e.contract_id and e.unit_type != #{entType} and e.del_flag = 0
          where a.del_flag = 0
-           and case when a.status = 3 then a.ent_id = #{entId} and #{entType} = 1 else a.ent_id = #{entId} end
+           and case when a.status = 3 then a.ent_id = #{entId}
+                else (b.ent_id in
+                        <foreach collection="allEnt" separator="," open="(" close=")" item="item">
+                            #{item}
+                        </foreach>
+                        and b.id is not null)
+                end
         <if test="startTime != null">
             and a.create_time >= #{startTime}
         </if>

+ 23 - 13
sckw-modules/sckw-message/src/main/java/com/sckw/message/controller/MessageController.java

@@ -6,10 +6,8 @@ import com.sckw.core.model.page.PageHelperUtil;
 import com.sckw.core.model.page.PageResult;
 import com.sckw.core.web.response.HttpResult;
 import com.sckw.message.model.KwmMessage;
-import com.sckw.message.model.vo.req.DeleteMessagesReqVO;
-import com.sckw.message.model.vo.req.FindMessagesReqVO;
-import com.sckw.message.model.vo.req.ReadMessagesReqVO;
-import com.sckw.message.model.vo.req.SelectMessagesReqVO;
+import com.sckw.message.model.vo.req.*;
+import com.sckw.message.model.vo.res.KwmMessageListResVO;
 import com.sckw.message.model.vo.res.MessagesStatisticsResVO;
 import com.sckw.message.service.MessageService;
 import jakarta.validation.Valid;
@@ -43,7 +41,7 @@ public class MessageController {
     @GetMapping("/detail")
     public HttpResult detail(@RequestParam Long id) {
         KwmMessage message = messageService.detail(id);
-        return HttpResult.ok(message);
+        return HttpResult.ok("获取消息详情成功", message);
     }
 
     /**
@@ -56,9 +54,21 @@ public class MessageController {
     @PostMapping(value = "/select", produces = MediaType.APPLICATION_JSON_VALUE)
     public HttpResult select(@RequestBody @Valid SelectMessagesReqVO params) {
         PageHelper.startPage(params.getPage(), params.getPageSize());
-        List<KwmMessage> list = messageService.select(params);
+        List<KwmMessageListResVO> list = messageService.select(params);
         PageResult result = PageHelperUtil.getPageResult(new PageInfo<>(list));
-        return HttpResult.ok(result);
+        return HttpResult.ok("分页查询消息成功", result);
+    }
+
+    /**
+     * @desc: 消息列表统计查询
+     * @author: yzc
+     * @date: 2023-08-22 10:57
+     * @Param params:
+     * @return: com.sckw.core.web.response.HttpResult
+     */
+    @PostMapping(value = "/statisticsList", produces = MediaType.APPLICATION_JSON_VALUE)
+    public HttpResult statisticsList(@RequestBody @Valid StatisticsMessagesReqVO params) {
+        return HttpResult.ok("消息列表统计查询成功", messageService.statisticsList(params));
     }
 
     /**
@@ -71,7 +81,7 @@ public class MessageController {
     @PostMapping(value = "/read", produces = MediaType.APPLICATION_JSON_VALUE)
     public HttpResult read(@RequestBody ReadMessagesReqVO readMessagesReqVO) {
         messageService.read(readMessagesReqVO);
-        return HttpResult.ok();
+        return HttpResult.ok("读取消息成功");
     }
 
     /**
@@ -84,20 +94,20 @@ public class MessageController {
     @PostMapping(value = "/delete", produces = MediaType.APPLICATION_JSON_VALUE)
     public HttpResult delete(@RequestBody DeleteMessagesReqVO deleteMessagesReqVO) {
         messageService.delete(deleteMessagesReqVO);
-        return HttpResult.ok();
+        return HttpResult.ok("删除消息成功");
     }
 
     /**
+     * @param category
+     * @return com.sckw.core.web.response.HttpResult
      * @desc: 消息统计查询
      * @author: yzc
      * @date: 2023-06-14 10:54
-     * @param category
-     * @return com.sckw.core.web.response.HttpResult
      */
     @GetMapping(value = "/statistics")
     public HttpResult statistics(@RequestParam(required = false) String category) {
         List<MessagesStatisticsResVO> result = messageService.statistics(category);
-        return HttpResult.ok(result);
+        return HttpResult.ok("消息统计查询", result);
     }
 
     /**
@@ -109,7 +119,7 @@ public class MessageController {
      */
     @PostMapping(value = "/findList", produces = MediaType.APPLICATION_JSON_VALUE)
     public HttpResult findList(@RequestBody FindMessagesReqVO findMessagesReqVO) {
-        return HttpResult.ok(messageService.selectMessages(findMessagesReqVO));
+        return HttpResult.ok("查找消息集合", messageService.selectMessages(findMessagesReqVO));
     }
 
 }

+ 2 - 2
sckw-modules/sckw-message/src/main/java/com/sckw/message/dao/KwmMessageMapper.java

@@ -1,7 +1,7 @@
 package com.sckw.message.dao;
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.sckw.message.model.FindMessagePageParam;
+import com.sckw.message.model.dto.SelectMessagesDTO;
 import com.sckw.message.model.KwmMessage;
 import org.apache.ibatis.annotations.Mapper;
 import org.apache.ibatis.annotations.Param;
@@ -22,5 +22,5 @@ public interface KwmMessageMapper extends BaseMapper<KwmMessage> {
      * @param item
      * @return java.util.List<com.sckw.message.model.KwmMessage>
      */
-    List<KwmMessage> findPage(@Param("item") FindMessagePageParam item);
+    List<KwmMessage> findPage(@Param("item") SelectMessagesDTO item);
 }

+ 44 - 0
sckw-modules/sckw-message/src/main/java/com/sckw/message/enums/MsgStatusEnum.java

@@ -0,0 +1,44 @@
+package com.sckw.message.enums;
+
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+
+import java.util.Arrays;
+import java.util.Comparator;
+import java.util.List;
+import java.util.Objects;
+
+/**
+ * @desc: 消息状态枚举
+ * @author: yzc
+ * @date: 2023-08-22 11:43
+ */
+@Getter
+@AllArgsConstructor
+public enum MsgStatusEnum {
+
+    /**
+     * 产品状态枚举
+     */
+    UN_READ(0, "未读"),
+    READ(1, "已读");
+
+    private final Integer code;
+    private final String msg;
+
+
+    public static String getNameByCode(Integer code) {
+        MsgStatusEnum[] enums = MsgStatusEnum.values();
+        for (MsgStatusEnum instance : enums) {
+            if (Objects.equals(instance.getCode(), code)) {
+                return instance.getMsg();
+            }
+        }
+        return null;
+    }
+
+    public static List<MsgStatusEnum> getSortList() {
+        MsgStatusEnum[] enums = MsgStatusEnum.values();
+        return Arrays.stream(enums).sorted(Comparator.comparingInt(MsgStatusEnum::getCode)).toList();
+    }
+}

+ 0 - 33
sckw-modules/sckw-message/src/main/java/com/sckw/message/model/FindMessagePageParam.java

@@ -1,33 +0,0 @@
-package com.sckw.message.model;
-
-import lombok.Builder;
-import lombok.Getter;
-import lombok.Setter;
-import lombok.ToString;
-
-/**
- * @desc: 获取消息分页参数
- * @author: yzc
- * @date: 2023-06-13 16:30
- */
-@Getter
-@Setter
-@ToString
-@Builder
-public class FindMessagePageParam {
-
-    /**
-     * 用户id
-     */
-    private Long userId;
-
-    /**
-     * 消息分类
-     */
-    private String category;
-
-    /**
-     * 消息类型
-     */
-    private String type;
-}

+ 5 - 0
sckw-modules/sckw-message/src/main/java/com/sckw/message/model/KwmMessage.java

@@ -7,6 +7,8 @@ import lombok.Getter;
 import lombok.Setter;
 import lombok.ToString;
 
+import java.io.Serial;
+
 /**
  * @author: yzc
  * @date: 2023-06-08 15:44
@@ -18,6 +20,9 @@ import lombok.ToString;
 @Builder
 @TableName("kwm_message")
 public class KwmMessage extends BaseModel {
+    @Serial
+    private static final long serialVersionUID = -675413476264729352L;
+
     /**
      * 消息分类
      */

+ 5 - 0
sckw-modules/sckw-message/src/main/java/com/sckw/message/model/KwmMessageUser.java

@@ -7,6 +7,8 @@ import lombok.Getter;
 import lombok.Setter;
 import lombok.ToString;
 
+import java.io.Serial;
+
 /**
  * @author: yzc
  * @date: 2023-06-08 15:44
@@ -18,6 +20,9 @@ import lombok.ToString;
 @Builder
 @TableName("kwm_message_user")
 public class KwmMessageUser extends BaseModel {
+    @Serial
+    private static final long serialVersionUID = -4745868973185016717L;
+
     /**
      * 消息id
      */

+ 5 - 0
sckw-modules/sckw-message/src/main/java/com/sckw/message/model/KwmSms.java

@@ -7,6 +7,8 @@ import lombok.Getter;
 import lombok.Setter;
 import lombok.ToString;
 
+import java.io.Serial;
+
 /**
  * @author: yzc
  * @date: 2023-06-08 15:44
@@ -18,6 +20,9 @@ import lombok.ToString;
 @Builder
 @TableName("kwm_sms")
 public class KwmSms extends BaseModel {
+    @Serial
+    private static final long serialVersionUID = 7454247600187996886L;
+
     /**
      * 短信类型
      */

+ 48 - 0
sckw-modules/sckw-message/src/main/java/com/sckw/message/model/dto/SelectMessagesDTO.java

@@ -0,0 +1,48 @@
+package com.sckw.message.model.dto;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.Builder;
+import lombok.Getter;
+import lombok.Setter;
+import lombok.ToString;
+
+import java.util.Date;
+
+/**
+ * @desc: 获取消息分页参数
+ * @author: yzc
+ * @date: 2023-06-13 16:30
+ */
+@Getter
+@Setter
+@ToString
+@Builder
+public class SelectMessagesDTO {
+
+    /**
+     * 用户id
+     */
+    private Long userId;
+
+    /**
+     * 消息分类
+     */
+    private String category;
+
+    /**
+     * 消息类型
+     */
+    private String type;
+
+    /**
+     * 创建时间开始(yyyy-MM-dd HH:mm:ss)
+     */
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+    private Date startCreateTime;
+
+    /**
+     * 创建时间结束(yyyy-MM-dd HH:mm:ss)
+     */
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+    private Date endCreateTime;
+}

+ 12 - 0
sckw-modules/sckw-message/src/main/java/com/sckw/message/model/vo/req/SelectMessagesReqVO.java

@@ -5,6 +5,8 @@ import lombok.Getter;
 import lombok.Setter;
 import lombok.ToString;
 
+import java.util.Date;
+
 /**
  * @desc: 查找消息列表请求参数
  * @author: yzc
@@ -25,5 +27,15 @@ public class SelectMessagesReqVO extends PageRequest {
      */
     private String type;
 
+    /**
+     * 创建时间开始(yyyy-MM-dd HH:mm:ss)
+     */
+    private Date startCreateTime;
+
+    /**
+     * 创建时间结束(yyyy-MM-dd HH:mm:ss)
+     */
+    private Date endCreateTime;
+
 
 }

+ 40 - 0
sckw-modules/sckw-message/src/main/java/com/sckw/message/model/vo/req/StatisticsMessagesReqVO.java

@@ -0,0 +1,40 @@
+package com.sckw.message.model.vo.req;
+
+import lombok.Getter;
+import lombok.Setter;
+import lombok.ToString;
+
+import java.util.Date;
+
+/**
+ * @desc: 统计消息列表请求参数
+ * @author: yzc
+ * @date: 2023-06-09 11:34
+ */
+@Getter
+@Setter
+@ToString
+public class StatisticsMessagesReqVO {
+
+    /**
+     * 消息分类
+     */
+    private String category;
+
+    /**
+     * 消息类型
+     */
+    private String type;
+
+    /**
+     * 创建时间开始(yyyy-MM-dd HH:mm:ss)
+     */
+    private Date startCreateTime;
+
+    /**
+     * 创建时间结束(yyyy-MM-dd HH:mm:ss)
+     */
+    private Date endCreateTime;
+
+
+}

+ 73 - 0
sckw-modules/sckw-message/src/main/java/com/sckw/message/model/vo/res/KwmMessageListResVO.java

@@ -0,0 +1,73 @@
+package com.sckw.message.model.vo.res;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.Getter;
+import lombok.Setter;
+import lombok.ToString;
+
+import java.util.Date;
+
+/**
+ * @desc: 消息列表响应
+ * @author: yzc
+ * @date: 2023-08-22 11:05
+ */
+@Getter
+@Setter
+@ToString
+public class KwmMessageListResVO {
+
+    private Long id;
+
+    private Integer status;
+
+    private String statusLabel;
+
+    /**
+     * 消息分类
+     */
+    private String category;
+
+    /**
+     * 消息类型
+     */
+    private String type;
+
+    /**
+     * 消息标题
+     */
+    private String title;
+
+    /**
+     * 消息内容
+     */
+    private String content;
+
+    /**
+     * 消息跳转url
+     */
+    private String url;
+
+    /**
+     * 消息跳转参数
+     */
+    private String params;
+
+    /**
+     * 推送设备类型
+     */
+    private String clientType;
+
+    /**
+     * 创建时间
+     */
+    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+    private Date createTime;
+
+    /**
+     * 更新时间
+     */
+    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+    private Date updateTime;
+
+}

+ 4 - 4
sckw-modules/sckw-message/src/main/java/com/sckw/message/service/KwmMessageService.java

@@ -6,7 +6,7 @@ import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.sckw.core.utils.CollectionUtils;
 import com.sckw.core.utils.StringUtils;
 import com.sckw.message.dao.KwmMessageMapper;
-import com.sckw.message.model.FindMessagePageParam;
+import com.sckw.message.model.dto.SelectMessagesDTO;
 import com.sckw.message.model.KwmMessage;
 import lombok.RequiredArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
@@ -90,14 +90,14 @@ public class KwmMessageService {
     }
 
     /**
-     * @param findMessagePageParam
+     * @param dto
      * @return java.util.List<com.sckw.message.model.KwmMessage>
      * @desc: 分页查询
      * @author: yzc
      * @date: 2023-06-13 9:08
      */
-    public List<KwmMessage> findPage(FindMessagePageParam findMessagePageParam) {
-        return kwmMessageMapper.findPage(findMessagePageParam);
+    public List<KwmMessage> findPage(SelectMessagesDTO dto) {
+        return kwmMessageMapper.findPage(dto);
     }
 
     /**

+ 50 - 9
sckw-modules/sckw-message/src/main/java/com/sckw/message/service/MessageService.java

@@ -1,17 +1,19 @@
 package com.sckw.message.service;
 
 import com.sckw.core.model.constant.Global;
+import com.sckw.core.model.vo.TableBottom;
+import com.sckw.core.model.vo.TableStatisticRes;
+import com.sckw.core.model.vo.TableTop;
 import com.sckw.core.utils.BeanUtils;
 import com.sckw.core.utils.CollectionUtils;
 import com.sckw.core.utils.StringUtils;
 import com.sckw.core.web.context.LoginUserHolder;
-import com.sckw.message.model.FindMessagePageParam;
+import com.sckw.message.enums.MsgStatusEnum;
 import com.sckw.message.model.KwmMessage;
 import com.sckw.message.model.KwmMessageUser;
-import com.sckw.message.model.vo.req.DeleteMessagesReqVO;
-import com.sckw.message.model.vo.req.FindMessagesReqVO;
-import com.sckw.message.model.vo.req.ReadMessagesReqVO;
-import com.sckw.message.model.vo.req.SelectMessagesReqVO;
+import com.sckw.message.model.dto.SelectMessagesDTO;
+import com.sckw.message.model.vo.req.*;
+import com.sckw.message.model.vo.res.KwmMessageListResVO;
 import com.sckw.message.model.vo.res.MessagesStatisticsResVO;
 import lombok.RequiredArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
@@ -127,10 +129,20 @@ public class MessageService {
      * @author: yzc
      * @date: 2023-06-13 9:05
      */
-    public List<KwmMessage> select(SelectMessagesReqVO reqVO) {
-        FindMessagePageParam findMessagePageParam = FindMessagePageParam.builder().userId(LoginUserHolder.getUserId())
-                .category(reqVO.getCategory()).type(reqVO.getType()).build();
-        return kwmMessageService.findPage(findMessagePageParam);
+    public List<KwmMessageListResVO> select(SelectMessagesReqVO reqVO) {
+        SelectMessagesDTO dto = BeanUtils.copyProperties(reqVO, SelectMessagesDTO.class);
+        dto.setUserId(LoginUserHolder.getUserId());
+        List<KwmMessage> list = kwmMessageService.findPage(dto);
+        if (CollectionUtils.isEmpty(list)) {
+            return Collections.emptyList();
+        }
+        List<KwmMessageListResVO> result = new ArrayList<>(list.size());
+        list.forEach(e -> {
+            KwmMessageListResVO res = BeanUtils.copyProperties(e, KwmMessageListResVO.class);
+            res.setStatusLabel(MsgStatusEnum.getNameByCode(res.getStatus()));
+            result.add(res);
+        });
+        return result;
     }
 
     /**
@@ -200,4 +212,33 @@ public class MessageService {
         kwmMessageUserService.readByUserAndMsgIds(userId, ids);
         return message;
     }
+
+    /**
+     * @desc: 消息列表统计
+     * @author: yzc
+     * @date: 2023-08-22 11:48
+     * @Param params:
+     * @return: com.sckw.core.model.vo.TableStatisticRes
+     */
+    public TableStatisticRes statisticsList(StatisticsMessagesReqVO params) {
+        TableStatisticRes res = new TableStatisticRes();
+        List<KwmMessageListResVO> messages = this.select(BeanUtils.copyProperties(params, SelectMessagesReqVO.class));
+        Map<Integer, List<KwmMessageListResVO>> map = messages.stream().collect(Collectors.groupingBy(KwmMessageListResVO::getStatus));
+        List<TableTop> tableTops = new ArrayList<>();
+        TableTop all = new TableTop();
+        all.setName("全部").setTotal(CollectionUtils.isEmpty(messages) ? 0 : messages.size());
+        tableTops.add(all);
+        List<MsgStatusEnum> enums = MsgStatusEnum.getSortList();
+        enums.forEach(e -> {
+            List<KwmMessageListResVO> list = map.get(e.getCode());
+            int total = CollectionUtils.isEmpty(list) ? 0 : list.size();
+            TableTop tableTop = new TableTop();
+            tableTop.setName(e.getMsg()).setValue(e.getCode()).setTotal(total);
+            tableTops.add(tableTop);
+        });
+        TableBottom tableBottom = new TableBottom();
+        tableBottom.setTotal(CollectionUtils.isEmpty(messages) ? 0 : messages.size());
+        res.setTableTops(tableTops).setTableBottom(tableBottom);
+        return res;
+    }
 }

+ 6 - 0
sckw-modules/sckw-message/src/main/resources/mapper/KwmMessageMapper.xml

@@ -17,6 +17,12 @@
         <if test="item.type != null and item.type != ''">
           and m.type = #{item.type}
         </if>
+        <if test="item.startCreateTime != null">
+            and m.create_time &gt;= #{item.startCreateTime,jdbcType=TIMESTAMP}
+        </if>
+        <if test="item.endCreateTime != null">
+            and m.create_time &lt;= #{item.endCreateTime,jdbcType=TIMESTAMP}
+        </if>
     </where>
     ORDER BY m.status, m.create_time desc
   </select>

+ 0 - 8
sckw-modules/sckw-system/src/main/java/com/sckw/system/controller/KwsRoleController.java

@@ -1,23 +1,15 @@
 package com.sckw.system.controller;
 
-import com.github.pagehelper.PageHelper;
-import com.github.pagehelper.PageInfo;
 import com.sckw.core.exception.SystemException;
-import com.sckw.core.model.page.PageHelperUtil;
-import com.sckw.core.model.page.PageResult;
-import com.sckw.core.utils.BeanUtils;
 import com.sckw.core.web.constant.HttpStatus;
 import com.sckw.core.web.response.HttpResult;
-import com.sckw.system.model.KwsRole;
 import com.sckw.system.model.vo.req.EditRoleReqVo;
 import com.sckw.system.model.vo.req.UserBindRoleReqVo;
-import com.sckw.system.model.vo.res.RoleResVo;
 import com.sckw.system.service.KwsRoleService;
 import jakarta.validation.Valid;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 import java.util.HashMap;
-import java.util.List;
 
 /**
  * 角色

+ 5 - 0
sckw-modules/sckw-system/src/main/java/com/sckw/system/controller/KwsUserController.java

@@ -14,6 +14,7 @@ import com.sckw.system.model.vo.req.QueryEntUserReqVo;
 import com.sckw.system.model.vo.req.ResetPasswordReqVo;
 import com.sckw.system.model.vo.req.UserAddReqVo;
 import com.sckw.system.model.vo.res.KwsUserResVo;
+import com.sckw.system.service.CommonService;
 import com.sckw.system.service.KwsUserService;
 import jakarta.validation.Valid;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -36,6 +37,9 @@ public class KwsUserController {
     @Autowired
     private KwsUserService kwsUserService;
 
+    @Autowired
+    private CommonService commonService;
+
     /**
      * @param id 主键ID
      * @description 根据主键查询
@@ -170,6 +174,7 @@ public class KwsUserController {
 
     @PostMapping("testApprove")
     public HttpResult testApprove() {
+        commonService.test();
         return HttpResult.ok(HttpStatus.MSG_004);
     }
 }

+ 2 - 0
sckw-modules/sckw-system/src/main/java/com/sckw/system/dao/KwsMenuRightsDao.java

@@ -61,4 +61,6 @@ public interface KwsMenuRightsDao {
      * @date: 2023/6/13
      */
     int saveBatch(@Param(value = "list") List<KwsMenuRights> list);
+
+    List<KwsMenuRights> selectEntMenus(Long id);
 }

+ 5 - 0
sckw-modules/sckw-system/src/main/java/com/sckw/system/model/vo/req/EditRoleReqVo.java

@@ -54,4 +54,9 @@ public class EditRoleReqVo implements Serializable {
      */
     @Size(max = 200, message = "备注超长")
     private String remark;
+
+    /**
+     * 是否是管理员
+     */
+    private Boolean isManage;
 }

+ 50 - 0
sckw-modules/sckw-system/src/main/java/com/sckw/system/service/CommonService.java

@@ -1,9 +1,11 @@
 package com.sckw.system.service;
+import java.util.Date;
 
 import com.alibaba.fastjson.JSON;
 import com.sckw.core.exception.SystemException;
 import com.sckw.core.model.constant.Global;
 import com.sckw.core.utils.CollectionUtils;
+import com.sckw.core.utils.IdWorker;
 import com.sckw.core.utils.RegularUtils;
 import com.sckw.core.utils.StringUtils;
 import com.sckw.core.web.constant.HttpStatus;
@@ -11,11 +13,18 @@ import com.sckw.core.web.model.EntCertificateInfo;
 import com.sckw.core.web.model.LoginEntInfo;
 import com.sckw.redis.utils.RedissonUtils;
 import com.sckw.system.dao.KwsEnterpriseDao;
+import com.sckw.system.dao.KwsMenuDao;
+import com.sckw.system.dao.KwsMenuRightsDao;
 import com.sckw.system.model.KwsEnterprise;
+import com.sckw.system.model.KwsMenu;
+import com.sckw.system.model.KwsMenuRights;
+import com.sckw.system.model.vo.res.FindEntListResVo;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
+import java.util.ArrayList;
 import java.util.List;
+import java.util.Objects;
 
 /**
  * @author czh
@@ -28,6 +37,12 @@ public class CommonService {
     @Autowired
     private KwsEnterpriseDao kwsEnterpriseDao;
 
+    @Autowired
+    private KwsMenuRightsDao kwsMenuRightsDao;
+
+    @Autowired
+    private KwsMenuDao kwsMenuDao;
+
     /**
      * @desc: 更新资质
      * @param: entId 企业id entCertificateInfoList 资质信息
@@ -70,4 +85,39 @@ public class CommonService {
     }
 
 
+    public void test() {
+        List<FindEntListResVo> list = kwsEnterpriseDao.findList(null);
+        KwsMenu kwsMenu = new KwsMenu();
+        kwsMenu.setClientType(2);
+        kwsMenu.setDelFlag(Global.NO);
+        List<KwsMenu> select = kwsMenuDao.select(kwsMenu);
+        for (FindEntListResVo findEntListResVo : list) {
+            Long id = findEntListResVo.getId();
+
+            List<KwsMenuRights> currrent =  kwsMenuRightsDao.selectEntMenus(id);
+            if (CollectionUtils.isNotEmpty(currrent)) {
+                continue;
+            }
+            Long userId = findEntListResVo.getUserId();
+            if (Objects.isNull(userId)) {
+                userId = 0L;
+            }
+            List<KwsMenuRights> kwsMenuRightsList = new ArrayList<>();
+            Date date = new Date();
+            for (KwsMenu kwsMenu1 : select) {
+                KwsMenuRights kwsMenuRights = new KwsMenuRights();
+                kwsMenuRights.setEntId(id);
+                kwsMenuRights.setMenuId(kwsMenu1.getId());
+                kwsMenuRights.setId(new IdWorker(1L).nextId());
+                kwsMenuRights.setStatus(0);
+                kwsMenuRights.setCreateBy(userId);
+                kwsMenuRights.setCreateTime(date);
+                kwsMenuRights.setUpdateBy(userId);
+                kwsMenuRights.setUpdateTime(date);
+                kwsMenuRights.setDelFlag(0);
+                kwsMenuRightsList.add(kwsMenuRights);
+            }
+            kwsMenuRightsDao.saveBatch(kwsMenuRightsList);
+        }
+    }
 }

+ 1 - 1
sckw-modules/sckw-system/src/main/java/com/sckw/system/service/KwsEnterpriseService.java

@@ -886,11 +886,11 @@ public class KwsEnterpriseService {
             }
 
             if (EntTypeEnum.LOGISTICS3.getCode() == kwsEntType.getType()) {
+                cooperateTypeList.add(CooperateTypeEnum.CONSIGN.getCode());
                 cooperateTypeList.add(CooperateTypeEnum.CARRIAGE.getCode());
             }
 
             if (EntTypeEnum.LOGISTICS4.getCode() == kwsEntType.getType()) {
-                cooperateTypeList.add(CooperateTypeEnum.CONSIGN.getCode());
                 cooperateTypeList.add(CooperateTypeEnum.CARRIAGE.getCode());
             }
         }

+ 34 - 10
sckw-modules/sckw-system/src/main/java/com/sckw/system/service/KwsMenuService.java

@@ -17,15 +17,8 @@ import com.sckw.core.web.context.LoginUserHolder;
 import com.sckw.system.dao.*;
 import com.sckw.system.model.*;
 import com.sckw.system.model.pojo.FindMenuTreePojo;
-import com.sckw.system.model.vo.req.FindMenuTreeReqVo;
-import com.sckw.system.model.vo.req.MoveMenuReqVo;
-import com.sckw.system.model.vo.req.QueryChildMenuReqVo;
-import com.sckw.system.model.vo.req.RoleBindMenuReqVo;
-import com.sckw.system.model.vo.res.FindMenuTreeResVo;
-import com.sckw.system.model.vo.res.KwsMenuResVo;
-import com.sckw.system.model.vo.res.MenuDetailResVo;
-import com.sckw.system.model.vo.res.QueryChildMenuResVo;
-import org.apache.zookeeper.Login;
+import com.sckw.system.model.vo.req.*;
+import com.sckw.system.model.vo.res.*;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
@@ -98,9 +91,36 @@ public class KwsMenuService {
             params.setSort(sort);
         }
 
+        long menuId = new IdWorker(1L).nextId();
+        params.setId(menuId);
         if (kwsMenuDao.insert(params) <= 0) {
             throw new SystemException(HttpStatus.CRUD_FAIL_CODE, HttpStatus.INSERT_FAIL);
         }
+
+        List<FindEntListResVo> list = kwsEnterpriseDao.findList(new FindListReqVo());
+        if (CollectionUtils.isNotEmpty(list)) {
+            List<Long> entIds = list.stream().map(FindEntListResVo::getId).distinct().toList();
+            List<KwsMenuRights> kwsMenuRightsList = new ArrayList<>();
+            Date date = new Date();
+            for (Long entId : entIds) {
+                KwsMenuRights kwsMenuRights = new KwsMenuRights();
+                kwsMenuRights.setEntId(entId);
+                kwsMenuRights.setMenuId(menuId);
+                kwsMenuRights.setId(new IdWorker(1L).nextId());
+                kwsMenuRights.setDelFlag(Global.NO);
+                kwsMenuRights.setStatus(Global.NO);
+                kwsMenuRights.setCreateBy(LoginUserHolder.getUserId());
+                kwsMenuRights.setUpdateBy(LoginUserHolder.getUserId());
+                kwsMenuRights.setCreateTime(date);
+                kwsMenuRights.setUpdateTime(date);
+                kwsMenuRightsList.add(kwsMenuRights);
+            }
+
+            if (kwsMenuRightsDao.saveBatch(kwsMenuRightsList) < kwsMenuRightsList.size()) {
+                throw new SystemException(HttpStatus.CRUD_FAIL_CODE, HttpStatus.INSERT_FAIL);
+            }
+        }
+
     }
 
     /**
@@ -265,7 +285,11 @@ public class KwsMenuService {
 
     private void extracted(Long userId, FindMenuTreePojo findMenuTreePojo) {
         //运营端的管理员不做过滤
-        if (Objects.equals(LoginUserHolder.getIsMain(), Global.YES) && Objects.equals(LoginUserHolder.getSystemType(), SystemTypeEnum.MANAGE.getCode())) {
+        if (Objects.equals(LoginUserHolder.getSystemType(), SystemTypeEnum.MANAGE.getCode())) {
+            return;
+        }
+        if (Objects.equals(LoginUserHolder.getIsMain(), Global.YES)) {
+            findMenuTreePojo.setEntId(LoginUserHolder.getEntId());
             return;
         }
 

+ 3 - 1
sckw-modules/sckw-system/src/main/java/com/sckw/system/service/KwsRoleService.java

@@ -121,7 +121,9 @@ public class KwsRoleService {
 
         /*2、绑定菜单功能*/
         RoleBindMenuReqVo roleBindMenuReqVo = new RoleBindMenuReqVo();
-        roleBindMenuReqVo.setRoleId(roleId);
+        if (!reqVo.getIsManage()) {
+            roleBindMenuReqVo.setRoleId(roleId);
+        }
         roleBindMenuReqVo.setEntId(kwsDept.getEntId());
         roleBindMenuReqVo.setMenuIds(reqVo.getMenuIds());
         kwsMenuService.roleBindMenu(roleBindMenuReqVo);

+ 3 - 0
sckw-modules/sckw-system/src/main/java/com/sckw/system/service/KwsUserService.java

@@ -185,6 +185,7 @@ public class KwsUserService {
             editRoleReqVo.setCurrentUnitId(kwsDept.getId());
             editRoleReqVo.setMenuIds(String.join(Global.COMMA, kwsMenus.stream().map(KwsMenu::getId).map(String::valueOf).toList()));
             editRoleReqVo.setVisiblePersonal(false);
+            editRoleReqVo.setIsManage(true);
             kwsRoleService.add(editRoleReqVo);
         }
 
@@ -597,6 +598,8 @@ public class KwsUserService {
     public List<AreaTreeFrontResDto> test(List<Integer> list) {
         List<SysDictResDto> asdasd = remoteSystemService.queryDictByType("asdasd");
 
+
+
         return remoteSystemService.queryAreaTreeFrontByCodeList(list);
     }
 

+ 1 - 0
sckw-modules/sckw-system/src/main/resources/mapper/KwsMenuDao.xml

@@ -278,6 +278,7 @@
     </if>
     <if test="entId != null">
       and smr.ent_id = #{entId}
+      and smr.role_id is null
     </if>
     <if test="roleIds != null and roleIds.size() > 0">
       and smr.role_id in

+ 5 - 1
sckw-modules/sckw-system/src/main/resources/mapper/KwsMenuRightsDao.xml

@@ -49,7 +49,11 @@
     </foreach>
   </select>
 
-  <insert id="insert" parameterType="com.sckw.system.model.KwsMenuRights">
+    <select id="selectEntMenus" resultType="com.sckw.system.model.KwsMenuRights">
+      select * from kws_menu_rights where ent_id = #{id} and role_id is null and del_flag = 0
+    </select>
+
+    <insert id="insert" parameterType="com.sckw.system.model.KwsMenuRights">
     insert into kws_menu_rights
     <trim prefix="(" suffix=")" suffixOverrides=",">
       <if test="id != null">

+ 17 - 9
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/service/KwtWaybillOrderService.java

@@ -1618,11 +1618,19 @@ public class KwtWaybillOrderService {
         if (ticket == null) {
             return HttpResult.error("车辆运单榜单信息不存在!");
         }
+        if (params.getType() == Global.NUMERICAL_ONE && (waybillOrder.getStatus() != CarWaybillEnum.COMPLETION_LOADING.getCode()
+                && waybillOrder.getStatus() != CarWaybillEnum.WAIT_UNLOADING.getCode()
+                && waybillOrder.getStatus() != CarWaybillEnum.COMPLETION_UNLOADING.getCode())) {
+            return HttpResult.error("当前运单不能编辑装货榜单!");
+        }
+        if (params.getType() == Global.NUMERICAL_TWO && waybillOrder.getStatus() != CarWaybillEnum.COMPLETION_UNLOADING.getCode()) {
+            return HttpResult.error("当前运单不能编辑卸货榜单!");
+        }
 
         /**2更新车辆运单信息**/
         KwtLogisticsOrder logisticsOrder = logisticsOrderDao.selectById(waybillOrder.getLOrderId());
-        waybillOrder.setLoadAmount(params.getType() == 1 ? params.getAmount() : waybillOrder.getLoadAmount());
-        waybillOrder.setUnloadAmount(params.getType() == 2 ? params.getAmount() : waybillOrder.getUnloadAmount());
+        waybillOrder.setLoadAmount(params.getType() == Global.NUMERICAL_ONE ? params.getAmount() : waybillOrder.getLoadAmount());
+        waybillOrder.setUnloadAmount(params.getType() == Global.NUMERICAL_TWO ? params.getAmount() : waybillOrder.getUnloadAmount());
         waybillOrder.setDeficitAmount(waybillOrder.getLoadAmount().subtract(waybillOrder.getUnloadAmount()));
         BigDecimal deficitPrice = deficitPrice(waybillOrder.getLoadAmount(), waybillOrder.getDeficitAmount(),
                 logisticsOrder.getLoss(), logisticsOrder.getGoodsPrice());
@@ -1638,14 +1646,14 @@ public class KwtWaybillOrderService {
         SckwWaybillOrder wOrder = new SckwWaybillOrder();
         wOrder.set_id(waybillOrder.getId());
         wOrder.setLoadAmount(waybillOrder.getLoadAmount());
-        wOrder.setLoadTime(params.getType() == 1 ? params.getOperateTime() : null);
-        wOrder.setUnloadUrls(params.getType() == 1 ? params.getUrls() : null);
+        wOrder.setLoadTime(params.getType() == Global.NUMERICAL_ONE ? params.getOperateTime() : null);
+        wOrder.setUnloadUrls(params.getType() == Global.NUMERICAL_ONE ? params.getUrls() : null);
         wOrder.setUnloadAmount(waybillOrder.getUnloadAmount());
-        wOrder.setUnloadTime(params.getType() == 2 ? params.getOperateTime() : null);
-        wOrder.setLoadUrls(params.getType() == 2 ? params.getUrls() : null);
+        wOrder.setUnloadTime(params.getType() == Global.NUMERICAL_TWO ? params.getOperateTime() : null);
+        wOrder.setLoadUrls(params.getType() == Global.NUMERICAL_TWO ? params.getUrls() : null);
         wOrder.setDeficitAmount(waybillOrder.getDeficitAmount());
         wOrder.setDeficitPrice(waybillOrder.getDeficitPrice());
-        editSckwWaybillOrder(wOrder, waybillOrder, 2);
+        editSckwWaybillOrder(wOrder, waybillOrder, Global.NUMERICAL_TWO);
 
         //2承运订单
         /*SckwLogisticsOrder lOrder = new SckwLogisticsOrder();
@@ -1756,7 +1764,7 @@ public class KwtWaybillOrderService {
             /**5更新承运订单信息**/
             Map queryParams = new HashMap();
             queryParams.put("lOrderId", waybillOrder.getLOrderId());
-            queryParams.put("passStatus", 1);
+            queryParams.put("passStatus", Global.NUMERICAL_ONE);
             WaybillCountVo waybillCount = waybillOrderDao.findWaybillOrderCount(queryParams);
 
             //更新卸货量/卸货时间/亏吨/亏吨扣款
@@ -1790,7 +1798,7 @@ public class KwtWaybillOrderService {
         //1车辆运单
         SckwWaybillOrder wOrder = new SckwWaybillOrder();
         wOrder.set_id(waybillOrder.getId());
-        editSckwWaybillOrder(wOrder, waybillOrder, 2);
+        editSckwWaybillOrder(wOrder, waybillOrder, Global.NUMERICAL_TWO);
 
         /**8发送消息**/