自动化立体仓库 - WMS系统
zjj
2024-11-04 4c2ac1e9f5fee2eeb7f1c97ccd7b0532ca144232
Merge remote-tracking branch 'origin/jxgtasrs' into jxgtasrs
1个文件已添加
14个文件已修改
318 ■■■■ 已修改文件
src/main/java/com/zy/asrs/controller/LocDetlController.java 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/controller/LocMastController.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/controller/OrderController.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/controller/OrderDetlController.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/controller/WorkController.java 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/controller/WrkDetlController.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/controller/WrkDetlLogController.java 90 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/controller/WrkMastController.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/controller/WrkMastLogController.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/common/utils/RoleUtils.java 122 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/common/web/AuthController.java 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/system/entity/Role.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/system/entity/User.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/mapper/WrkMastMapper.xml 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/controller/LocDetlController.java
@@ -13,12 +13,11 @@
import com.core.common.DateUtils;
import com.core.common.R;
import com.zy.asrs.entity.LocDetl;
import com.zy.asrs.entity.ManLocDetl;
import com.zy.asrs.entity.Mat;
import com.zy.asrs.mapper.LocDetlMapper;
import com.zy.asrs.service.LocDetlService;
import com.zy.asrs.service.ManLocDetlService;
import com.zy.asrs.service.MatService;
import com.zy.common.utils.RoleUtils;
import com.zy.common.web.BaseController;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@@ -83,11 +82,17 @@
                param.remove("modi_time");
            }
        }
        Page<LocDetl> stockOut = locDetlService.getStockOut(toPage(curr, limit, param, LocDetl.class));
        if (stockOut.getRecords().size()==0){
            stockOut = locDetlService.getStockOut(toPage(1, limit, param, LocDetl.class));
        param.remove("curr");
        param.remove("limit");
        EntityWrapper<LocDetl> wrapper = new EntityWrapper<>();
        convert(param, wrapper);
        // 不同继承角色显示不同库信息
        RoleUtils.addRoleWrapperByLocNo(getUserId(),wrapper);
        Page<LocDetl> locDetlPage = locDetlService.selectPage(new Page<>(curr, limit), wrapper);
        if (locDetlPage.getRecords().size()==0){
            locDetlPage = locDetlService.selectPage(new Page<>(1, limit), wrapper);
        }
        return R.ok(stockOut);
        return R.ok(locDetlPage);
    }
    @RequestMapping(value = "/stock/out/crn/list/auth")
@@ -140,6 +145,8 @@
        excludeTrash(param);
        convert(param, wrapper);
        allLike(LocDetl.class, param.keySet(), wrapper, condition);
        // 不同继承角色显示不同库信息
        RoleUtils.addRoleWrapperByLocNo(getUserId(),wrapper);
        if (!Cools.isEmpty(orderByField)){wrapper.orderBy(humpToLine(orderByField), "asc".equals(orderByType));}
//        if (!row.equals("")){
//            wrapper.and()
src/main/java/com/zy/asrs/controller/LocMastController.java
@@ -17,12 +17,11 @@
import com.zy.asrs.service.BasWhsService;
import com.zy.asrs.service.LocDetlService;
import com.zy.asrs.service.LocMastService;
import com.zy.asrs.utils.Utils;
import com.zy.common.entity.Parameter;
import com.zy.common.model.Shelves;
import com.zy.common.utils.RoleUtils;
import com.zy.common.web.BaseController;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.*;
import java.util.*;
@@ -67,6 +66,8 @@
        excludeTrash(param);
        EntityWrapper<LocMast> wrapper = new EntityWrapper<>();
        convert(param, wrapper);
        // 不同继承角色显示不同库信息
        RoleUtils.addRoleWrapperByCrn(getUserId(),wrapper);
        if (!Cools.isEmpty(orderByField)){wrapper.orderBy(humpToLine(orderByField), "asc".equals(orderByType));}
        return R.ok(locMastService.selectPage(new Page<>(curr, limit), wrapper));
    }
src/main/java/com/zy/asrs/controller/OrderController.java
@@ -14,11 +14,13 @@
import com.zy.asrs.service.*;
import com.zy.common.model.DetlDto;
import com.zy.common.web.BaseController;
import io.swagger.models.auth.In;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.*;
import javax.print.Doc;
import java.util.*;
@RestController
@@ -49,10 +51,18 @@
    public R pdaPageList(@RequestParam(required = true)Long tagId,
                         @RequestParam(defaultValue = "1")Integer curr,
                         @RequestParam(defaultValue = "10")Integer limit){
        List<DocType> docTypes = docTypeService.selectList(new EntityWrapper<DocType>().eq("pakin", 1));
        ArrayList<Integer> arrayList = new ArrayList<>();
        docTypes.forEach(docType -> {
            arrayList.add(docType.getDocId().intValue());
        });
        EntityWrapper<Order> wrapper = new EntityWrapper<>();
//        wrapper.eq("tag_id", tagId);
        wrapper.in("doc_type", arrayList);
        wrapper.in("settle",1,2);
        wrapper.orderBy("create_time", false);
        return R.ok().add(orderService.selectPage(new Page<>(curr, limit), wrapper));
        Page<Order> orderPage = orderService.selectPage(new Page<>(curr, limit), wrapper);
        return R.ok().add(orderPage);
    }
    @RequestMapping(value = "/order/nav/list/auth")
src/main/java/com/zy/asrs/controller/OrderDetlController.java
@@ -27,10 +27,10 @@
    @Autowired
    private OrderDetlService orderDetlService;
    @RequestMapping("/orderDetl/list/pda/auth")
    public R getPdaOrderDetl(@RequestParam String orderNo) {
    @PostMapping("/orderDetl/list/pda/auth")
    public R getPdaOrderDetl(@RequestBody Map<String,Object> map) {
        EntityWrapper<OrderDetl> wrapper = new EntityWrapper<>();
        wrapper.eq("order_no", orderNo);
        wrapper.eq("order_no", map.get("orderNo"));
        return R.ok(orderDetlService.selectList(wrapper));
    }
src/main/java/com/zy/asrs/controller/WorkController.java
@@ -4,7 +4,6 @@
import com.core.annotations.ManagerAuth;
import com.core.common.Cools;
import com.core.common.R;
import com.zy.asrs.entity.BasDevp;
import com.zy.asrs.entity.StaDesc;
import com.zy.asrs.entity.WaitPakin;
import com.zy.asrs.entity.param.EmptyPlateOutParam;
@@ -15,6 +14,7 @@
import com.zy.asrs.service.StaDescService;
import com.zy.asrs.service.WorkService;
import com.zy.common.model.StartupDto;
import com.zy.common.utils.RoleUtils;
import com.zy.common.web.BaseController;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestBody;
@@ -26,6 +26,7 @@
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
 * 工作流接口控制器
@@ -143,7 +144,14 @@
    @RequestMapping("/available/empty/take/site")
    @ManagerAuth()
    public R availableEmptyTakeSite(){
        return R.ok().add(basDevpService.getAvailableEmptyOutSite());
        EntityWrapper<StaDesc> wrapper = new EntityWrapper<>();
        wrapper.eq("type_no",110);
        // 不同继承角色显示不同库信息
        RoleUtils.addRoleWrapperByCrn(getUserId(),wrapper);
        List<StaDesc> staDescs = staDescService.selectList(wrapper);
        List<Integer> collect = staDescs.stream().map(StaDesc::getStnNo).distinct().collect(Collectors.toList());
        return R.ok().add(collect);
//        return R.ok().add(basDevpService.getAvailableEmptyOutSite());
    }
    @RequestMapping("/full/store/put/start")
src/main/java/com/zy/asrs/controller/WrkDetlController.java
@@ -12,6 +12,7 @@
import com.core.common.R;
import com.zy.asrs.entity.WrkDetl;
import com.zy.asrs.service.WrkDetlService;
import com.zy.common.utils.RoleUtils;
import com.zy.common.web.BaseController;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@@ -50,6 +51,8 @@
        } else {
            wrapper.orderBy("appe_time", false);
        }
        // 不同继承角色显示不同库信息
        RoleUtils.addRoleWrapperByBarcode(getUserId(),wrapper);
        return R.ok(wrkDetlService.selectPage(new Page<>(curr, limit), wrapper));
    }
src/main/java/com/zy/asrs/controller/WrkDetlLogController.java
@@ -12,11 +12,15 @@
import com.core.common.R;
import com.zy.asrs.entity.WrkDetlLog;
import com.zy.asrs.service.WrkDetlLogService;
import com.zy.common.utils.RoleUtils;
import com.zy.common.web.BaseController;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.*;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@RestController
public class WrkDetlLogController extends BaseController {
@@ -77,43 +81,55 @@
                             @RequestParam(required = false) String condition,
                             @RequestParam Map<String, Object> param) {
        try {
            Integer wrkNo = null;
            String orderNo = null;
            String matnr = null;
            String specs = null;
            String zpallet = null;
            String batch = null;
            Double anfme = null;
            Date modiTimeStart = null, modiTimeEnd = null;
            for (Map.Entry<String, Object> entry : param.entrySet()) {
                String val = String.valueOf(entry.getValue());
                if (Cools.isEmpty(val)) {
                    continue;
                }
                if (val.contains(RANGE_TIME_LINK)) {
                    String[] dates = val.split(RANGE_TIME_LINK);
                    modiTimeStart = DateUtils.convert(dates[0]);
                    modiTimeEnd = DateUtils.convert(dates[1]);
                } else if (entry.getKey().equals("wrk_no")) {
                    wrkNo = Integer.parseInt(val);
                } else if (entry.getKey().equals("order_no")) {
                    orderNo = val;
                } else if (entry.getKey().equals("specs")) {
                    specs = val;
                } else if (entry.getKey().equals("zpallet")) {
                    zpallet = val;
                } else if (entry.getKey().equals("batch")) {
                    batch = val;
                } else if (entry.getKey().equals("anfme")) {
                    anfme = Double.parseDouble(val);
                }else if (entry.getKey().equals("matnr")) {
                    matnr = val;
                }
            excludeTrash(param);
            EntityWrapper<WrkDetlLog> wrapper = new EntityWrapper<>();
            convert(param, wrapper);
            allLike(WrkDetlLog.class, param.keySet(), wrapper, condition);
            if (!Cools.isEmpty(orderByField)){
                wrapper.orderBy(humpToLine(orderByField), "asc".equals(orderByType));
            } else {
                wrapper.orderBy("appe_time", false);
            }
            List<WrkDetlLog> wrkDetlLogs = wrkDetlLogService.selectWrkDetlLogs(wrkNo, orderNo,matnr,specs,zpallet,batch,anfme, modiTimeStart, modiTimeEnd, curr, limit);
            Page<WrkDetlLog> page1 = new Page<WrkDetlLog>(curr, limit).setRecords(wrkDetlLogs);
            page1.setTotal(wrkDetlLogService.selectWrkDetlLogsTotal(wrkNo, orderNo,matnr,specs,zpallet,batch,anfme, modiTimeStart, modiTimeEnd));
            return R.ok(page1);
            // 不同继承角色显示不同库信息
            RoleUtils.addRoleWrapperByBarcode(getUserId(),wrapper);
            return R.ok(wrkDetlLogService.selectPage(new Page<>(curr, limit), wrapper));
//            Integer wrkNo = null;
//            String orderNo = null;
//            String matnr = null;
//            String specs = null;
//            String zpallet = null;
//            String batch = null;
//            Double anfme = null;
//            Date modiTimeStart = null, modiTimeEnd = null;
//            for (Map.Entry<String, Object> entry : param.entrySet()) {
//                String val = String.valueOf(entry.getValue());
//                if (Cools.isEmpty(val)) {
//                    continue;
//                }
//                if (val.contains(RANGE_TIME_LINK)) {
//                    String[] dates = val.split(RANGE_TIME_LINK);
//                    modiTimeStart = DateUtils.convert(dates[0]);
//                    modiTimeEnd = DateUtils.convert(dates[1]);
//                } else if (entry.getKey().equals("wrk_no")) {
//                    wrkNo = Integer.parseInt(val);
//                } else if (entry.getKey().equals("order_no")) {
//                    orderNo = val;
//                } else if (entry.getKey().equals("specs")) {
//                    specs = val;
//                } else if (entry.getKey().equals("zpallet")) {
//                    zpallet = val;
//                } else if (entry.getKey().equals("batch")) {
//                    batch = val;
//                } else if (entry.getKey().equals("anfme")) {
//                    anfme = Double.parseDouble(val);
//                }else if (entry.getKey().equals("matnr")) {
//                    matnr = val;
//                }
//            }
//            List<WrkDetlLog> wrkDetlLogs = wrkDetlLogService.selectWrkDetlLogs(wrkNo, orderNo,matnr,specs,zpallet,batch,anfme, modiTimeStart, modiTimeEnd, curr, limit);
//            Page<WrkDetlLog> page1 = new Page<WrkDetlLog>(curr, limit).setRecords(wrkDetlLogs);
//            page1.setTotal(wrkDetlLogService.selectWrkDetlLogsTotal(wrkNo, orderNo,matnr,specs,zpallet,batch,anfme, modiTimeStart, modiTimeEnd));
//            return R.ok(page1);
        } catch (Exception e) {
            return R.error("异常" + e);
        }
src/main/java/com/zy/asrs/controller/WrkMastController.java
@@ -12,6 +12,7 @@
import com.core.common.R;
import com.zy.asrs.entity.WrkMast;
import com.zy.asrs.service.WrkMastService;
import com.zy.common.utils.RoleUtils;
import com.zy.common.web.BaseController;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@@ -50,6 +51,8 @@
        }else {
            wrapper.orderBy("io_time", false);
        }
        // 不同继承角色显示不同库信息
        RoleUtils.addRoleWrapperByCrn(getUserId(),wrapper);
        return R.ok(wrkMastService.selectPage(new Page<>(curr, limit), wrapper));
    }
src/main/java/com/zy/asrs/controller/WrkMastLogController.java
@@ -12,6 +12,7 @@
import com.core.common.R;
import com.zy.asrs.entity.WrkMastLog;
import com.zy.asrs.service.WrkMastLogService;
import com.zy.common.utils.RoleUtils;
import com.zy.common.web.BaseController;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@@ -53,6 +54,8 @@
        }else {
            wrapper.orderBy("modi_time", false);
        }
        // 不同继承角色显示不同库信息
        RoleUtils.addRoleWrapperByCrn(getUserId(),wrapper);
        return R.ok(wrkMastLogService.selectPage(new Page<>(curr, limit), wrapper));
    }
src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
@@ -947,7 +947,7 @@
        String locNo = ""; // 待修改目标库位
        String locSts = ""; // 待修改目标库位状态
        // 入库取消(修改目标库位)
        if (wrkMast.getWrkSts() < 4) {
        if (wrkMast.getIoType() <100 ) {
            locNo = wrkMast.getLocNo();
            locSts = "O";
@@ -964,7 +964,7 @@
                locMastService.updateById(locMast);
            }
        // 出库取消(修改源库位)
        } else if (wrkMast.getWrkSts() > 10 && wrkMast.getWrkSts() != 14) {
        } else if (wrkMast.getIoType() >=100) {
            locNo = wrkMast.getSourceLocNo();
            // 出库 ===>> F.在库
            if (wrkMast.getIoType() > 100 && wrkMast.getIoType() != 110) {
src/main/java/com/zy/common/utils/RoleUtils.java
New file
@@ -0,0 +1,122 @@
package com.zy.common.utils;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.core.common.Cools;
import com.core.common.SpringUtils;
import com.zy.system.entity.User;
import com.zy.system.service.UserService;
import org.springframework.stereotype.Component;
/**
 * @author pang.jiabao
 * @description 根据角色区分不同库显示不同库存
 * @createDate 2024/11/3 14:11
 */
@Component
public class RoleUtils {
    /**
     * 以角色继承角色显示出指定库信息按堆垛机限制
     */
    public static <T> void addRoleWrapperByCrn(Long userId, EntityWrapper<T> wrapper) {
        // super账号
        if (userId == 9527) {
            return;
        }
        UserService userService = SpringUtils.getBean(UserService.class);
        User user = userService.selectById(userId);
        String roleName = user.getRoleName();
        // 管理员角色
        if (Cools.isEmpty(roleName)) {
            wrapper.eq("1", 0);
        } else if (roleName.equals("管理员")) {
            return;
        }
        // 其他角色看继承角色
        String roleLeaderCode = user.getRoleLeaderCode();
        if (Cools.isEmpty(roleLeaderCode)) {
            wrapper.eq("1", 0);
        } else if (roleLeaderCode.equals("stacker_hangar")) { // 堆垛机库
            wrapper.le("crn_no", 4); // 限制1~4号堆垛机
        } else if (roleLeaderCode.equals("four_directional_library")) { // 四向库
            wrapper.eq("crn_no", 7); // 限制7号堆垛机
        } else if (roleLeaderCode.equals("ctu_library")) { // ctu库
            wrapper.in("crn_no", 8, 9); //限制8,9号堆垛机
        }
    }
    /**
     * 以角色继承角色显示出指定库信息按库位限制
     */
    public static <T> void addRoleWrapperByLocNo(Long userId, EntityWrapper<T> wrapper) {
        // super账号
        if (userId == 9527) {
            return;
        }
        UserService userService = SpringUtils.getBean(UserService.class);
        User user = userService.selectById(userId);
        String roleName = user.getRoleName();
        // 管理员角色
        if (Cools.isEmpty(roleName)) {
            wrapper.eq("1", 0);
            return;
        } else if (roleName.equals("管理员")) {
            return;
        }
        // 其他角色看继承角色
        String roleLeaderCode = user.getRoleLeaderCode();
        if (Cools.isEmpty(roleLeaderCode)) {
            wrapper.eq("1", 0);
        } else if (roleLeaderCode.equals("stacker_hangar")) { // 堆垛机库
            wrapper.addFilter("LEFT(loc_no,2)<=16"); // 限制1~16排
        } else if (roleLeaderCode.equals("four_directional_library")) { // 四向库
            wrapper.addFilter("LEFT(loc_no,2)>=17 and LEFT(loc_no,2)<=37"); // 限制17~37排
        } else if (roleLeaderCode.equals("ctu_library")) { // ctu库
            wrapper.addFilter("LEFT(loc_no,2)>=38"); //限制38~53排
        }
    }
    /**
     * 以角色继承角色显示出指定库信息按托盘码限制
     */
    public static <T> void addRoleWrapperByBarcode(Long userId, EntityWrapper<T> wrapper) {
        // super账号
        if (userId == 9527) {
            return;
        }
        UserService userService = SpringUtils.getBean(UserService.class);
        User user = userService.selectById(userId);
        String roleName = user.getRoleName();
        // 管理员角色
        if (Cools.isEmpty(roleName)) {
            wrapper.eq("1", 0);
            return;
        } else if (roleName.equals("管理员")) {
            return;
        }
        // 其他角色看继承角色
        String roleLeaderCode = user.getRoleLeaderCode();
        if (Cools.isEmpty(roleLeaderCode)) {
            wrapper.eq("1", 0);
        } else if (roleLeaderCode.equals("stacker_hangar")) { // 堆垛机库
            // TODO 堆垛机开头未确认
//            wrapper.addFilter("LEFT(zpallet,3) =''"); // 限制
        } else if (roleLeaderCode.equals("four_directional_library")) { // 四向库
            wrapper.addFilter("LEFT(zpallet,3) ='SXK'"); // 限制SXK
        } else if (roleLeaderCode.equals("ctu_library")) { // ctu库
            wrapper.addFilter("LEFT(zpallet,3) ='CTU'"); //限制CTU
        }
    }
}
src/main/java/com/zy/common/web/AuthController.java
@@ -4,7 +4,10 @@
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.core.annotations.ManagerAuth;
import com.core.common.*;
import com.core.common.AesUtils;
import com.core.common.Cools;
import com.core.common.DateUtils;
import com.core.common.R;
import com.core.exception.CoolException;
import com.zy.common.CodeRes;
import com.zy.common.entity.Parameter;
@@ -14,7 +17,6 @@
import com.zy.common.properties.SystemProperties;
import com.zy.common.utils.RandomValidateCodeUtil;
import com.zy.system.entity.*;
import com.zy.system.entity.license.LicenseVerify;
import com.zy.system.service.*;
import com.zy.system.timer.LicenseTimer;
import org.springframework.beans.factory.annotation.Autowired;
@@ -285,12 +287,12 @@
                Resource resource = resourceService.selectOne(new EntityWrapper<Resource>().eq("id", dto.getTwo()).eq("level", 2));
                if (!Cools.isEmpty(resource)) {
                    // 校验上级权限
                    if (leaderId != null) {
                        RoleResource roleResource = roleResourceService.selectOne(new EntityWrapper<RoleResource>().eq("role_id", leaderId).eq("resource_id", resource.getId()));
                        if (null == roleResource) {
                            throw new CoolException(resource.getName().concat("无法授权给").concat(role.getName()));
                        }
                    }
//                    if (leaderId != null) {
//                        RoleResource roleResource = roleResourceService.selectOne(new EntityWrapper<RoleResource>().eq("role_id", leaderId).eq("resource_id", resource.getId()));
//                        if (null == roleResource) {
//                            throw new CoolException(resource.getName().concat("无法授权给").concat(role.getName()));
//                        }
//                    }
                    RoleResource roleResource = new RoleResource();
                    roleResource.setRoleId(roleId);
                    roleResource.setResourceId(resource.getId());
src/main/java/com/zy/system/entity/Role.java
@@ -99,6 +99,15 @@
        return null;
    }
    public String getLeaderCode(){
        RoleService service = SpringUtils.getBean(RoleService.class);
        Role role = service.selectById(this.leader);
        if (!Cools.isEmpty(role)){
            return String.valueOf(role.getCode());
        }
        return null;
    }
    public void setLeader(Long leader) {
        this.leader = leader;
    }
src/main/java/com/zy/system/entity/User.java
@@ -215,6 +215,14 @@
        }
        return null;
    }
    public String getRoleLeaderCode(){
        RoleService service = SpringUtils.getBean(RoleService.class);
        Role role = service.selectById(this.roleId);
        if (!Cools.isEmpty(role)){
            return role.getLeaderCode();
        }
        return null;
    }
    public void setRoleId(Long roleId) {
        this.roleId = roleId;
src/main/resources/mapper/WrkMastMapper.xml
@@ -70,8 +70,8 @@
        select * from asr_wrk_mast
        where wrk_sts=5
        or (wrk_sts=15 and ove_mk='Y' and wrk_no not in (select wrk_no from asr_bas_devp))
        or (wrk_sts=15 and dateadd(mi,5,crn_end_time) &lt;= getdate() and wrk_no not in (select wrk_no from asr_bas_devp))
        or (wrk_sts=15 and dateadd(mi,5,crn_end_time) &lt;= getdate() and crn_end_time is null and wrk_no not in (select wrk_no from asr_bas_devp))
        or (wrk_sts=15 and (dateadd(mi,5,crn_end_time) &lt;= getdate() or dateadd(mi,1,modi_time) &lt;= getdate()) and wrk_no not in (select wrk_no from asr_bas_devp))
        or (wrk_sts=15 and (dateadd(mi,5,crn_end_time) &lt;= getdate() or dateadd(mi,1,modi_time) &lt;= getdate()) and crn_end_time is null and wrk_no not in (select wrk_no from asr_bas_devp))
        order by io_time,wrk_no asc
    </select>