Pārlūkot izejas kodu

修复部分bug

Huanyi 1 nedēļu atpakaļ
vecāks
revīzija
dc09feeaaa

+ 0 - 2
ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysPostBo.java

@@ -39,8 +39,6 @@ public class SysPostBo extends BaseEntity {
     /**
      * 岗位编码
      */
-    @NotBlank(message = "岗位编码不能为空")
-    @Size(min = 0, max = 64, message = "岗位编码长度不能超过{max}个字符")
     private String postCode;
 
     /**

+ 23 - 0
ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysPostServiceImpl.java

@@ -1,7 +1,9 @@
 package org.dromara.system.service.impl;
 
 import cn.hutool.core.collection.CollUtil;
+import cn.hutool.core.convert.Convert;
 import cn.hutool.core.util.ObjectUtil;
+import cn.hutool.core.util.RandomUtil;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -27,6 +29,7 @@ import org.springframework.stereotype.Service;
 import java.util.Collections;
 import java.util.List;
 import java.util.Map;
+import java.util.stream.Collectors;
 
 /**
  * 岗位信息 服务层处理
@@ -239,10 +242,29 @@ public class SysPostServiceImpl implements ISysPostService, PostService {
      */
     @Override
     public int insertPost(SysPostBo bo) {
+        List<Object> objs = baseMapper.selectObjs(
+            new LambdaQueryWrapper<SysPost>().select(SysPost::getPostCode));
+        List<String> postCodes = objs.stream().map(Convert::toStr).collect(Collectors.toList());
+        String postCode = generatePostCode(postCodes);
+        bo.setPostCode(postCode);
         SysPost post = MapstructUtils.convert(bo, SysPost.class);
         return baseMapper.insert(post);
     }
 
+    /**
+     * 生成岗位编码(8位字母数字组合)
+     *
+     * @param postCodes 已有岗位编码列表
+     * @return 岗位编码
+     */
+    private String generatePostCode(List<String> postCodes) {
+        String code = RandomUtil.randomString(8);
+        if (postCodes.contains(code)) {
+            return generatePostCode(postCodes);
+        }
+        return code;
+    }
+
     /**
      * 修改保存岗位信息
      *
@@ -252,6 +274,7 @@ public class SysPostServiceImpl implements ISysPostService, PostService {
     @Override
     public int updatePost(SysPostBo bo) {
         SysPost post = MapstructUtils.convert(bo, SysPost.class);
+        post.setPostCode(null);
         return baseMapper.updateById(post);
     }
 

+ 11 - 0
ruoyi-modules/yingpaipay-erp/src/main/java/org/dromara/erp/controller/ErpOrderController.java

@@ -4,6 +4,7 @@ import lombok.RequiredArgsConstructor;
 import org.dromara.common.core.domain.R;
 import org.dromara.common.mybatis.core.page.PageQuery;
 import org.dromara.common.mybatis.core.page.TableDataInfo;
+import org.dromara.common.satoken.utils.LoginHelper;
 import org.dromara.erp.domain.query.ErpOrderQuery;
 import org.dromara.erp.domain.vo.ErpOrderVo;
 import org.dromara.erp.service.IErpOrderService;
@@ -41,6 +42,16 @@ public class ErpOrderController {
         return R.ok(erpOrderService.queryList(query));
     }
 
+    /**
+     * 小程序端查询我的订单列表(按当前登录用户过滤,每页5条)
+     */
+    @GetMapping("/myList")
+    public TableDataInfo<ErpOrderVo> myList(ErpOrderQuery query, PageQuery pageQuery) {
+        query.setPlacer(LoginHelper.getUserId());
+        pageQuery.setPageSize(5);
+        return erpOrderService.queryPageList(query, pageQuery);
+    }
+
     /**
      * 按状态统计订单数量
      */