1
zhang
2025-08-14 4696a0be1e0235e4a9e5077c3f42e038da8c6809
zy-acs-manager/src/main/java/com/zy/acs/manager/manager/controller/OpenController.java
@@ -10,9 +10,12 @@
import com.zy.acs.manager.core.service.MainService;
import com.zy.acs.manager.manager.controller.param.OpenBusSubmitParam;
import com.zy.acs.manager.manager.entity.Loc;
import com.zy.acs.manager.manager.enums.LocStsType;
import com.zy.acs.manager.manager.entity.Sta;
import com.zy.acs.manager.manager.enums.StaStsType;
import com.zy.acs.manager.manager.service.LocService;
import com.zy.acs.manager.manager.service.StaService;
import com.zy.acs.manager.system.controller.BaseController;
import com.zy.acs.manager.system.service.ConfigService;
import io.swagger.annotations.Api;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
@@ -38,12 +41,46 @@
    @Autowired
    private LocService locService;
    @Autowired
    private StaService staService;
    @Autowired
    private ConfigService configService;
    //@PreAuthorize("hasAuthority('open:bus:submit')")
    @PostMapping("/bus/submit")
    @OperationLog("generate task from open api")
    public R save(@RequestBody OpenBusSubmitParam param) {
        if (!configService.getVal("TaskAssignMode", Boolean.class)) {
            if (configService.getVal("InAndOutMode", Boolean.class, false)) {
        mainService.generateBusAndTask(param, null);
        return R.ok("generate tasks success");
            }
        }
        return R.error("generate tasks error");
    }
    @PostMapping("/sta/update")
    @OperationLog("sync sta")
    public R updateLoc(@RequestBody Map<String, Object> map) {
        if (!configService.getVal("TaskAssignMode", Boolean.class)) {
            if (configService.getVal("InAndOutMode", Boolean.class, false)) {
                String staNo = map.get("staNo").toString();
                Sta loc = staService.selectByStaNo(staNo);
                if (staNo.equals("1001")) {
                    if (loc.getStaSts() == StaStsType.STOCK.val()) {
                        loc.setStaSts(Long.parseLong(map.get("sts").toString()));
                        return staService.updateById(loc) ? R.ok() : R.error("update loc fail");
                    }
                } else if (staNo.equals("1007")) {
                    if (loc.getStaSts() == StaStsType.IDLE.val()) {
                        loc.setStaSts(Long.parseLong(map.get("sts").toString()));
                        return staService.updateById(loc) ? R.ok() : R.error("update loc fail");
                    }
                }
            }
        }
        return R.error("update loc fail");
    }
    //@PreAuthorize("hasAuthority('open:bus:submit')")
@@ -58,6 +95,8 @@
    @PostMapping("/loc/one")
    @OperationLog("one loc")
    public R emptyLoc(@RequestBody Map<String, Object> map) {
        if (!configService.getVal("TaskAssignMode", Boolean.class)) {
            if (configService.getVal("InAndOutMode", Boolean.class, false)) {
        String staNo = map.get("staNo").toString();
        Integer startRow = null;
        Integer endRow = null;
@@ -73,13 +112,13 @@
        }else if (staNo.equals("107-2")||staNo.equals("107-3")||staNo.equals("108-2")||staNo.equals("108-3")) {
             startRow = Collections.min(LocGroupConstant.LEFT_LOC_ROW_LIST);
             endRow = Collections.max(LocGroupConstant.LEFT_LOC_ROW_LIST);
        }else if (staNo.equals("1007")){
                } else if (staNo.equals("1007") || staNo.equals("1001")) {
             startRow = Collections.min(LocGroupConstant.FAR_LEFT_LOC_ROW_LIST);
             endRow = Collections.max(LocGroupConstant.FAR_LEFT_LOC_ROW_LIST);
        }else {
            return R.error("staNo is not support");
        }
        LambdaQueryWrapper<Loc> idleWrapper = new LambdaQueryWrapper<Loc>().eq(Loc::getLocSts, LocStsType.IDLE.val());
                LambdaQueryWrapper<Loc> idleWrapper = new LambdaQueryWrapper<Loc>().eq(Loc::getLocSts, Long.parseLong(map.get("sts").toString()));
        if (null != startRow) {
            idleWrapper.ge(Loc::getRow, startRow);
        }
@@ -93,5 +132,8 @@
        Collections.shuffle(idleList);
        return R.ok().add(idleList.get(0));
    }
        }
        return R.error("未开启该模式");
    }
}