Merge branch 'master' of http://121.40.234.130:7788/lyd/zhuzhouzhongwu
This commit is contained in:
@@ -35,6 +35,10 @@
|
|||||||
<!-- <version>1.1.7</version>-->
|
<!-- <version>1.1.7</version>-->
|
||||||
<!-- </dependency>-->
|
<!-- </dependency>-->
|
||||||
<dependency>
|
<dependency>
|
||||||
|
<groupId>org.reflections</groupId>
|
||||||
|
<artifactId>reflections</artifactId>
|
||||||
|
<version>0.9.10</version>
|
||||||
|
</dependency> <dependency>
|
||||||
<groupId>org.codehaus.groovy</groupId>
|
<groupId>org.codehaus.groovy</groupId>
|
||||||
<artifactId>groovy-all</artifactId>
|
<artifactId>groovy-all</artifactId>
|
||||||
<version>3.0.13</version>
|
<version>3.0.13</version>
|
||||||
|
|||||||
@@ -45,8 +45,8 @@ public class MdPbStoragevehicleinfoServiceImpl extends ServiceImpl<MdPbStorageve
|
|||||||
public IPage<MdPbStoragevehicleinfo> queryAll(Map whereJson, PageQuery page) {
|
public IPage<MdPbStoragevehicleinfo> queryAll(Map whereJson, PageQuery page) {
|
||||||
// 查询条件
|
// 查询条件
|
||||||
LambdaQueryWrapper<MdPbStoragevehicleinfo> queryWrapper = new QueryWrapper<MdPbStoragevehicleinfo>().lambda();
|
LambdaQueryWrapper<MdPbStoragevehicleinfo> queryWrapper = new QueryWrapper<MdPbStoragevehicleinfo>().lambda();
|
||||||
String search = MapUtil.getStr(whereJson, "storagevehicle_code");
|
String search = MapUtil.getStr(whereJson, "vehicle_code");
|
||||||
String storagevehicle_type = MapUtil.getStr(whereJson, "storagevehicle_type");
|
String storagevehicle_type = MapUtil.getStr(whereJson, "vehicle_type");
|
||||||
|
|
||||||
if (ObjectUtil.isNotEmpty(search)) {
|
if (ObjectUtil.isNotEmpty(search)) {
|
||||||
queryWrapper.likeRight(MdPbStoragevehicleinfo::getStoragevehicle_code, search)
|
queryWrapper.likeRight(MdPbStoragevehicleinfo::getStoragevehicle_code, search)
|
||||||
|
|||||||
@@ -148,7 +148,7 @@ public class StructattrServiceImpl extends ServiceImpl<StructattrMapper, Structa
|
|||||||
dto.setCreate_time(now);
|
dto.setCreate_time(now);
|
||||||
|
|
||||||
Sectattr sectattr = iSectattrService.getOne(new LambdaQueryWrapper<Sectattr>()
|
Sectattr sectattr = iSectattrService.getOne(new LambdaQueryWrapper<Sectattr>()
|
||||||
.eq(Sectattr::getSect_code, dto.getSect_id())
|
.eq(Sectattr::getSect_code, dto.getSect_code())
|
||||||
.eq(Sectattr::getIs_delete, BaseDataEnum.IS_YES_NOT.code("否")));
|
.eq(Sectattr::getIs_delete, BaseDataEnum.IS_YES_NOT.code("否")));
|
||||||
BsrealStorattr bsrealStorattr = iBsrealStorattrService.findById(sectattr.getStor_id());
|
BsrealStorattr bsrealStorattr = iBsrealStorattrService.findById(sectattr.getStor_id());
|
||||||
dto.setSect_id(sectattr.getSect_id());
|
dto.setSect_id(sectattr.getSect_id());
|
||||||
|
|||||||
@@ -7,6 +7,7 @@ import com.alibaba.fastjson.JSONObject;
|
|||||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||||
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||||
|
import lombok.SneakyThrows;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.nl.common.exception.BadRequestException;
|
import org.nl.common.exception.BadRequestException;
|
||||||
import org.nl.common.utils.CodeUtil;
|
import org.nl.common.utils.CodeUtil;
|
||||||
@@ -29,9 +30,13 @@ import org.nl.wms.pm_manage.service.IPdmBdWorkorderService;
|
|||||||
import org.nl.wms.pm_manage.service.dao.PdmBdWorkorder;
|
import org.nl.wms.pm_manage.service.dao.PdmBdWorkorder;
|
||||||
import org.nl.wms.record_manage.service.IMdPbRegionMemberService;
|
import org.nl.wms.record_manage.service.IMdPbRegionMemberService;
|
||||||
import org.nl.wms.record_manage.service.dao.MdPbRegionMember;
|
import org.nl.wms.record_manage.service.dao.MdPbRegionMember;
|
||||||
|
import org.nl.wms.sch_manage.enums.TaskStatus;
|
||||||
import org.nl.wms.sch_manage.service.ISchBasePointService;
|
import org.nl.wms.sch_manage.service.ISchBasePointService;
|
||||||
|
import org.nl.wms.sch_manage.service.ISchBaseTaskService;
|
||||||
import org.nl.wms.sch_manage.service.dao.SchBasePoint;
|
import org.nl.wms.sch_manage.service.dao.SchBasePoint;
|
||||||
|
import org.nl.wms.sch_manage.service.dao.SchBaseTask;
|
||||||
import org.nl.wms.sch_manage.service.util.tasks.jb.JbUpAgvTask;
|
import org.nl.wms.sch_manage.service.util.tasks.jb.JbUpAgvTask;
|
||||||
|
import org.nl.wms.system_manage.enums.TagNameEnum;
|
||||||
import org.nl.wms.system_manage.service.dict.ISysDictService;
|
import org.nl.wms.system_manage.service.dict.ISysDictService;
|
||||||
import org.nl.wms.system_manage.service.dict.dao.Dict;
|
import org.nl.wms.system_manage.service.dict.dao.Dict;
|
||||||
import org.nl.wms.system_manage.service.param.ISysParamService;
|
import org.nl.wms.system_manage.service.param.ISysParamService;
|
||||||
@@ -47,6 +52,9 @@ import org.nl.wms.warehouse_manage.inAndOut.service.dao.mapper.IOStorInvDtlMappe
|
|||||||
import org.nl.wms.warehouse_manage.inAndOut.service.dto.IOStorInvDisDto;
|
import org.nl.wms.warehouse_manage.inAndOut.service.dto.IOStorInvDisDto;
|
||||||
import org.nl.wms.warehouse_manage.service.IMdPbGroupplateService;
|
import org.nl.wms.warehouse_manage.service.IMdPbGroupplateService;
|
||||||
import org.nl.wms.warehouse_manage.service.dao.GroupPlate;
|
import org.nl.wms.warehouse_manage.service.dao.GroupPlate;
|
||||||
|
import org.redisson.api.RLock;
|
||||||
|
import org.redisson.api.RedissonClient;
|
||||||
|
import org.slf4j.MDC;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import org.springframework.transaction.annotation.Transactional;
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
@@ -54,6 +62,8 @@ import org.springframework.transaction.annotation.Transactional;
|
|||||||
import javax.annotation.Resource;
|
import javax.annotation.Resource;
|
||||||
import java.math.BigDecimal;
|
import java.math.BigDecimal;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
|
import java.util.concurrent.TimeUnit;
|
||||||
|
import java.util.function.Consumer;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @Author: lyd
|
* @Author: lyd
|
||||||
@@ -100,6 +110,10 @@ public class PdaJBServiceImpl implements PdaJBService {
|
|||||||
private ISysParamService sysParamService;
|
private ISysParamService sysParamService;
|
||||||
@Resource
|
@Resource
|
||||||
private IMdPbRegionMemberService regionMemberService;
|
private IMdPbRegionMemberService regionMemberService;
|
||||||
|
@Resource
|
||||||
|
private RedissonClient redissonClient;
|
||||||
|
@Resource
|
||||||
|
private ISchBaseTaskService taskService;
|
||||||
@Override
|
@Override
|
||||||
public PdaResponse getOrderList(JSONObject whereJson) {
|
public PdaResponse getOrderList(JSONObject whereJson) {
|
||||||
String flag = whereJson.getString("flag");
|
String flag = whereJson.getString("flag");
|
||||||
@@ -109,12 +123,17 @@ public class PdaJBServiceImpl implements PdaJBService {
|
|||||||
return PdaResponse.requestParamOk(workorders);
|
return PdaResponse.requestParamOk(workorders);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@SneakyThrows
|
||||||
@Override
|
@Override
|
||||||
@Transactional(rollbackFor = Exception.class)
|
@Transactional(rollbackFor = Exception.class)
|
||||||
public PdaResponse callMaterial(JSONObject whereJson) {
|
public PdaResponse callMaterial(JSONObject whereJson) {
|
||||||
log.info("解包叫料,请求参数:{}", whereJson);
|
log.info("解包叫料,请求参数:{}", whereJson);
|
||||||
// workorder_id、area、point_code
|
// workorder_id、area、point_code
|
||||||
String pointCode = whereJson.getString("point_code");
|
String pointCode = whereJson.getString("point_code");
|
||||||
|
RLock lock = redissonClient.getLock(pointCode);
|
||||||
|
boolean tryLock = lock.tryLock(0, TimeUnit.SECONDS);
|
||||||
|
try {
|
||||||
|
if (tryLock) {
|
||||||
String workorderId = whereJson.getString("workorder_id");
|
String workorderId = whereJson.getString("workorder_id");
|
||||||
PdmBdWorkorder workorder = workorderService.getById(workorderId);
|
PdmBdWorkorder workorder = workorderService.getById(workorderId);
|
||||||
if (ObjectUtil.isEmpty(workorder)) {
|
if (ObjectUtil.isEmpty(workorder)) {
|
||||||
@@ -214,12 +233,19 @@ public class PdaJBServiceImpl implements PdaJBService {
|
|||||||
workorder.setUpdate_id(SecurityUtils.getCurrentUserId());
|
workorder.setUpdate_id(SecurityUtils.getCurrentUserId());
|
||||||
workorder.setUpdate_name(SecurityUtils.getCurrentNickName());
|
workorder.setUpdate_name(SecurityUtils.getCurrentNickName());
|
||||||
workorderService.updateById(workorder);
|
workorderService.updateById(workorder);
|
||||||
|
} else {
|
||||||
|
throw new BadRequestException("速度太快啦,稍后再试...");
|
||||||
|
}
|
||||||
|
} finally {
|
||||||
|
if (tryLock) {
|
||||||
|
lock.unlock();
|
||||||
|
}
|
||||||
|
}
|
||||||
return PdaResponse.requestOk();
|
return PdaResponse.requestOk();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public PdaResponse getWeight(JSONObject whereJson) {
|
public PdaResponse getWeight(JSONObject whereJson) {
|
||||||
// todo: 调用acs获取
|
|
||||||
String currentUserId = SecurityUtils.getCurrentUserId();
|
String currentUserId = SecurityUtils.getCurrentUserId();
|
||||||
String pointCode = whereJson.getString("point_code");
|
String pointCode = whereJson.getString("point_code");
|
||||||
String workorder_id = whereJson.getString("workorder_id");
|
String workorder_id = whereJson.getString("workorder_id");
|
||||||
@@ -227,6 +253,7 @@ public class PdaJBServiceImpl implements PdaJBService {
|
|||||||
if (ObjectUtil.isEmpty(param)) {
|
if (ObjectUtil.isEmpty(param)) {
|
||||||
throw new BadRequestException("请先定义 " + JB_STANDARD_ERROR + " 系统参数!");
|
throw new BadRequestException("请先定义 " + JB_STANDARD_ERROR + " 系统参数!");
|
||||||
}
|
}
|
||||||
|
// todo: 调用acs获取
|
||||||
JSONObject res = new JSONObject();
|
JSONObject res = new JSONObject();
|
||||||
res.put("weight", "999.99");
|
res.put("weight", "999.99");
|
||||||
res.put("flag", "1");
|
res.put("flag", "1");
|
||||||
@@ -242,10 +269,12 @@ public class PdaJBServiceImpl implements PdaJBService {
|
|||||||
return PdaResponse.requestParamOk(res);
|
return PdaResponse.requestParamOk(res);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@SneakyThrows
|
||||||
@Override
|
@Override
|
||||||
@Transactional(rollbackFor = Exception.class)
|
@Transactional(rollbackFor = Exception.class)
|
||||||
public PdaResponse downMaterial(JSONObject whereJson) {
|
public PdaResponse downMaterial(JSONObject whereJson) {
|
||||||
// 用任务组的方式下发任务(3条任务)
|
// 用任务组的方式下发任务(3条任务)
|
||||||
|
MDC.put(TagNameEnum.TAG_NAME.getTag(), TagNameEnum.PDA_JB_DOWN_MATERIAL.getTag());
|
||||||
log.info("解包下料,请求参数:{}", whereJson);
|
log.info("解包下料,请求参数:{}", whereJson);
|
||||||
String currentUserId = SecurityUtils.getCurrentUserId();
|
String currentUserId = SecurityUtils.getCurrentUserId();
|
||||||
String nickName = SecurityUtils.getCurrentNickName();
|
String nickName = SecurityUtils.getCurrentNickName();
|
||||||
@@ -254,11 +283,25 @@ public class PdaJBServiceImpl implements PdaJBService {
|
|||||||
String area = whereJson.getString("area");
|
String area = whereJson.getString("area");
|
||||||
// 设备
|
// 设备
|
||||||
String pointCode = whereJson.getString("point_code");
|
String pointCode = whereJson.getString("point_code");
|
||||||
|
RLock lock = redissonClient.getLock(pointCode);
|
||||||
|
boolean tryLock = lock.tryLock(0, TimeUnit.SECONDS);
|
||||||
|
try {
|
||||||
|
if (tryLock) {
|
||||||
BigDecimal weight = whereJson.getBigDecimal("weight");
|
BigDecimal weight = whereJson.getBigDecimal("weight");
|
||||||
String tpCode = whereJson.getString("tp_code");
|
String tpCode = whereJson.getString("tp_code");
|
||||||
String ltCode = whereJson.getString("lt_code");
|
String ltCode = whereJson.getString("lt_code");
|
||||||
String workorderId = whereJson.getString("workorder_id");
|
String workorderId = whereJson.getString("workorder_id");
|
||||||
|
// 存在任务就不继续
|
||||||
|
List<SchBaseTask> list = taskService.list(new LambdaQueryWrapper<SchBaseTask>()
|
||||||
|
.lt(SchBaseTask::getTask_status, TaskStatus.FINISHED.getCode())
|
||||||
|
.eq(SchBaseTask::getIs_delete, false)
|
||||||
|
.and(ll -> ll.like(SchBaseTask::getPoint_code1, pointCode).or()
|
||||||
|
.like(SchBaseTask::getPoint_code2, pointCode).or()
|
||||||
|
.like(SchBaseTask::getPoint_code3, pointCode).or()
|
||||||
|
.like(SchBaseTask::getPoint_code4, pointCode).or()));
|
||||||
|
if (list.size() > 0) {
|
||||||
|
throw new BadRequestException(pointCode + " 该点位已存在任务!");
|
||||||
|
}
|
||||||
PdmBdWorkorder workorder = workorderService.getById(workorderId);
|
PdmBdWorkorder workorder = workorderService.getById(workorderId);
|
||||||
if (ObjectUtil.isEmpty(workorder)) {
|
if (ObjectUtil.isEmpty(workorder)) {
|
||||||
throw new BadRequestException("工单不存在!");
|
throw new BadRequestException("工单不存在!");
|
||||||
@@ -305,6 +348,14 @@ public class PdaJBServiceImpl implements PdaJBService {
|
|||||||
workorder.setWorkorder_status("5");
|
workorder.setWorkorder_status("5");
|
||||||
workorder.setRealproduceend_date(DateUtil.now());
|
workorder.setRealproduceend_date(DateUtil.now());
|
||||||
workorderService.updateById(workorder);
|
workorderService.updateById(workorder);
|
||||||
|
}
|
||||||
|
} finally {
|
||||||
|
if (tryLock) {
|
||||||
|
lock.unlock();
|
||||||
|
} else {
|
||||||
|
throw new BadRequestException("速度太快啦,稍后再试...");
|
||||||
|
}
|
||||||
|
}
|
||||||
return PdaResponse.requestOk();
|
return PdaResponse.requestOk();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -76,6 +76,11 @@ public class SchBasePointController {
|
|||||||
public ResponseEntity<Object> getPointList(@RequestBody(required = false) SchBasePoint region) {
|
public ResponseEntity<Object> getPointList(@RequestBody(required = false) SchBasePoint region) {
|
||||||
return new ResponseEntity<>(schBasePointService.getPointList(region), HttpStatus.OK);
|
return new ResponseEntity<>(schBasePointService.getPointList(region), HttpStatus.OK);
|
||||||
}
|
}
|
||||||
|
@PostMapping("/getPointsByCode")
|
||||||
|
@Log("获取区域下拉框")
|
||||||
|
public ResponseEntity<Object> getPointsByCode(@RequestBody(required = false) String region) {
|
||||||
|
return new ResponseEntity<>(schBasePointService.getPointsByCode(region), HttpStatus.OK);
|
||||||
|
}
|
||||||
@PostMapping("/getPointList2")
|
@PostMapping("/getPointList2")
|
||||||
@Log("获取区域下拉框")
|
@Log("获取区域下拉框")
|
||||||
public ResponseEntity<Object> getPointList2(@RequestBody(required = false) SchBasePoint region) {
|
public ResponseEntity<Object> getPointList2(@RequestBody(required = false) SchBasePoint region) {
|
||||||
|
|||||||
@@ -0,0 +1,30 @@
|
|||||||
|
package org.nl.wms.sch_manage.enums;
|
||||||
|
|
||||||
|
import lombok.AllArgsConstructor;
|
||||||
|
import lombok.Getter;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @Author: lyd
|
||||||
|
* @Description: 任务完成枚举
|
||||||
|
* @Date: 2023/6/13
|
||||||
|
*/
|
||||||
|
@Getter
|
||||||
|
@AllArgsConstructor
|
||||||
|
public enum TaskFinishedTypeEnum {
|
||||||
|
/**
|
||||||
|
* ACS自动完成
|
||||||
|
*/
|
||||||
|
AUTO_ACS("1", "ACS自动完成"),
|
||||||
|
/**
|
||||||
|
* PC手动完成
|
||||||
|
*/
|
||||||
|
MANUAL_PC("2", "PC手动完成"),
|
||||||
|
/**
|
||||||
|
* PDA手持
|
||||||
|
*/
|
||||||
|
MANUAL_PDA("3", "PDA手持");
|
||||||
|
|
||||||
|
private final String code;
|
||||||
|
|
||||||
|
private final String description;
|
||||||
|
}
|
||||||
@@ -133,4 +133,6 @@ public interface ISchBasePointService extends IService<SchBasePoint> {
|
|||||||
List<SchBasePoint> getCanUseCFGJs(SchBasePoint parentPoint, String pointStatus);
|
List<SchBasePoint> getCanUseCFGJs(SchBasePoint parentPoint, String pointStatus);
|
||||||
|
|
||||||
List<SchBasePoint> getPointList2(SchBasePoint region);
|
List<SchBasePoint> getPointList2(SchBasePoint region);
|
||||||
|
|
||||||
|
List<SchBasePoint> getPointsByCode(String regions);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -54,5 +54,5 @@ public interface ISchBaseTaskconfigService extends IService<SchBaseTaskconfig> {
|
|||||||
List<SchBaseTaskconfig> getTaskConfigList();
|
List<SchBaseTaskconfig> getTaskConfigList();
|
||||||
|
|
||||||
|
|
||||||
|
SchBaseTaskconfig getTaskByConfigCode(String code);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -185,10 +185,7 @@ public class SchBasePointServiceImpl extends ServiceImpl<SchBasePointMapper, Sch
|
|||||||
return this.list();
|
return this.list();
|
||||||
}
|
}
|
||||||
return pointMapper.selectList(new LambdaQueryWrapper<SchBasePoint>()
|
return pointMapper.selectList(new LambdaQueryWrapper<SchBasePoint>()
|
||||||
.eq(SchBasePoint::getRegion_code, region.getRegion_code())
|
.eq(SchBasePoint::getRegion_code, region.getRegion_code()));
|
||||||
//点位类型,根据传入的值是否为空增加判断
|
|
||||||
.eq(StringUtils.isNotBlank(region.getPoint_type()), SchBasePoint::getPoint_type, region.getPoint_type())
|
|
||||||
.eq(SchBasePoint::getIs_has_workder, true));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -332,4 +329,14 @@ public class SchBasePointServiceImpl extends ServiceImpl<SchBasePointMapper, Sch
|
|||||||
.eq(SchBasePoint::getIs_has_workder, true));
|
.eq(SchBasePoint::getIs_has_workder, true));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<SchBasePoint> getPointsByCode(String regions) {
|
||||||
|
if (ObjectUtil.isEmpty(regions)) {
|
||||||
|
return this.list();
|
||||||
|
}
|
||||||
|
List<String> collect = Arrays.stream(regions.split(",")).collect(Collectors.toList());
|
||||||
|
return pointMapper.selectList(new LambdaQueryWrapper<SchBasePoint>()
|
||||||
|
.in(SchBasePoint::getRegion_code, collect));
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -138,4 +138,10 @@ public class SchBaseTaskconfigServiceImpl extends ServiceImpl<SchBaseTaskconfigM
|
|||||||
return this.list();
|
return this.list();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public SchBaseTaskconfig getTaskByConfigCode(String code) {
|
||||||
|
return getOne(new LambdaQueryWrapper<SchBaseTaskconfig>()
|
||||||
|
.eq(SchBaseTaskconfig::getConfig_code, code));
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -70,7 +70,9 @@ public abstract class AbstractTask {
|
|||||||
// 查询未执行下发的任务
|
// 查询未执行下发的任务
|
||||||
List<SchBaseTask> taskList = taskService.list(new LambdaQueryWrapper<SchBaseTask>()
|
List<SchBaseTask> taskList = taskService.list(new LambdaQueryWrapper<SchBaseTask>()
|
||||||
.eq(SchBaseTask::getIs_delete, IOSConstant.IS_DELETE_NO)
|
.eq(SchBaseTask::getIs_delete, IOSConstant.IS_DELETE_NO)
|
||||||
.eq(SchBaseTask::getTask_status, TaskStatus.CREATE.getCode()));
|
.eq(SchBaseTask::getTask_status, TaskStatus.CREATED.getCode())
|
||||||
|
.orderByAsc(SchBaseTask::getTask_group_id)
|
||||||
|
.orderByAsc(SchBaseTask::getTask_group_seq));
|
||||||
if (ObjectUtil.isEmpty(taskList)) {
|
if (ObjectUtil.isEmpty(taskList)) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,6 +2,7 @@ package org.nl.wms.sch_manage.service.util;
|
|||||||
|
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -124,4 +125,10 @@ public class AcsTaskDto {
|
|||||||
* 扩展属性
|
* 扩展属性
|
||||||
*/
|
*/
|
||||||
Map<String, String> params;
|
Map<String, String> params;
|
||||||
|
|
||||||
|
|
||||||
|
private String task_group_id;
|
||||||
|
|
||||||
|
|
||||||
|
private BigDecimal task_group_seq;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -5,32 +5,35 @@ import cn.hutool.core.util.ObjectUtil;
|
|||||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
import lombok.SneakyThrows;
|
import lombok.SneakyThrows;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.nl.config.SpringContextHolder;
|
||||||
import org.nl.wms.sch_manage.enums.TaskStatus;
|
import org.nl.wms.sch_manage.enums.TaskStatus;
|
||||||
import org.nl.wms.sch_manage.service.ISchBaseTaskService;
|
import org.nl.wms.sch_manage.service.ISchBaseTaskService;
|
||||||
import org.nl.wms.sch_manage.service.dao.SchBaseTask;
|
import org.nl.wms.sch_manage.service.dao.SchBaseTask;
|
||||||
import org.nl.wms.system_manage.enums.TagNameEnum;
|
import org.nl.wms.system_manage.enums.TagNameEnum;
|
||||||
import org.nl.wms.warehouse_manage.enums.IOSConstant;
|
import org.nl.wms.warehouse_manage.enums.IOSConstant;
|
||||||
|
import org.reflections.Reflections;
|
||||||
import org.slf4j.MDC;
|
import org.slf4j.MDC;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.core.annotation.Order;
|
||||||
import org.springframework.stereotype.Component;
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
|
import java.lang.reflect.InvocationTargetException;
|
||||||
|
import java.lang.reflect.Method;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
@Slf4j
|
@Slf4j
|
||||||
@Component
|
@Component
|
||||||
|
@Order(value = 1)
|
||||||
public class AutoTask {
|
public class AutoTask {
|
||||||
|
|
||||||
/**
|
private static Set<Class<? extends AbstractTask>> subTypes;
|
||||||
* 任务服务
|
|
||||||
*/
|
|
||||||
@Autowired
|
|
||||||
private ISchBaseTaskService taskService;
|
|
||||||
|
|
||||||
/**
|
// 类加载时候执行扫描
|
||||||
* 任务工厂服务
|
static {
|
||||||
*/
|
Reflections reflections = new Reflections("org.nl.wms.sch_manage.service.util.tasks");
|
||||||
@Autowired
|
subTypes = reflections.getSubTypesOf(AbstractTask.class);
|
||||||
private TaskFactory taskFactory;
|
}
|
||||||
|
|
||||||
@SneakyThrows
|
@SneakyThrows
|
||||||
public void run() {
|
public void run() {
|
||||||
@@ -44,17 +47,19 @@ public class AutoTask {
|
|||||||
* 定时下发任务
|
* 定时下发任务
|
||||||
*/
|
*/
|
||||||
private void sendTask() {
|
private void sendTask() {
|
||||||
List<SchBaseTask> taskList = taskService.list(new LambdaQueryWrapper<SchBaseTask>()
|
subTypes.forEach(clz -> {
|
||||||
.eq(SchBaseTask::getIs_delete, IOSConstant.IS_DELETE_NO)
|
// 调用AbstractAcsTask类的每个子类的schedule()方法
|
||||||
.eq(SchBaseTask::getTask_status, TaskStatus.CREATE.getCode())
|
try {
|
||||||
.orderByAsc(SchBaseTask::getTask_group_seq));
|
Object obj = SpringContextHolder.getBean(clz);
|
||||||
if (ObjectUtil.isEmpty(taskList)) {
|
Method m = obj.getClass().getMethod("schedule");
|
||||||
return;
|
m.invoke(obj);
|
||||||
}
|
} catch (InvocationTargetException e) {
|
||||||
// 整理下发acs参数
|
e.printStackTrace();
|
||||||
for (SchBaseTask taskDao : taskList) {
|
log.info("定时器执行失败:{}", e.getTargetException().getMessage());
|
||||||
AbstractTask task = taskFactory.getTask(taskDao.getConfig_code());
|
} catch (Exception e) {
|
||||||
task.sendTaskOne(taskDao.getTask_id());
|
e.printStackTrace();
|
||||||
|
log.info("定时器执行失败:{}", e.getMessage());
|
||||||
}
|
}
|
||||||
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -3,15 +3,22 @@ package org.nl.wms.sch_manage.service.util.tasks.jb;
|
|||||||
import cn.hutool.core.date.DateUtil;
|
import cn.hutool.core.date.DateUtil;
|
||||||
import cn.hutool.core.util.ObjectUtil;
|
import cn.hutool.core.util.ObjectUtil;
|
||||||
import com.alibaba.fastjson.JSONObject;
|
import com.alibaba.fastjson.JSONObject;
|
||||||
|
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.nl.common.exception.BadRequestException;
|
import org.nl.common.exception.BadRequestException;
|
||||||
import org.nl.common.utils.IdUtil;
|
import org.nl.common.utils.IdUtil;
|
||||||
import org.nl.common.utils.SecurityUtils;
|
import org.nl.common.utils.SecurityUtils;
|
||||||
import org.nl.wms.sch_manage.enums.TaskStatus;
|
import org.nl.wms.sch_manage.enums.TaskStatus;
|
||||||
import org.nl.wms.sch_manage.service.ISchBaseTaskService;
|
import org.nl.wms.sch_manage.service.ISchBaseTaskService;
|
||||||
|
import org.nl.wms.sch_manage.service.ISchBaseTaskconfigService;
|
||||||
import org.nl.wms.sch_manage.service.dao.SchBaseTask;
|
import org.nl.wms.sch_manage.service.dao.SchBaseTask;
|
||||||
|
import org.nl.wms.sch_manage.service.dao.SchBaseTaskconfig;
|
||||||
import org.nl.wms.sch_manage.service.util.AbstractTask;
|
import org.nl.wms.sch_manage.service.util.AbstractTask;
|
||||||
import org.nl.wms.sch_manage.service.util.AcsTaskDto;
|
import org.nl.wms.sch_manage.service.util.AcsTaskDto;
|
||||||
|
import org.nl.wms.warehouse_manage.enums.IOSEnum;
|
||||||
|
import org.nl.wms.warehouse_manage.inAndOut.service.IInBillService;
|
||||||
|
import org.nl.wms.warehouse_manage.inAndOut.service.dao.IOStorInvDis;
|
||||||
|
import org.nl.wms.warehouse_manage.inAndOut.service.dao.mapper.IOStorInvDisMapper;
|
||||||
import org.springframework.stereotype.Component;
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
import javax.annotation.Resource;
|
import javax.annotation.Resource;
|
||||||
@@ -26,8 +33,22 @@ import javax.annotation.Resource;
|
|||||||
public class JbBackAgvTask extends AbstractTask {
|
public class JbBackAgvTask extends AbstractTask {
|
||||||
@Resource
|
@Resource
|
||||||
private ISchBaseTaskService taskService;
|
private ISchBaseTaskService taskService;
|
||||||
|
@Resource
|
||||||
|
private ISchBaseTaskconfigService taskconfigService;
|
||||||
|
@Resource
|
||||||
|
private IInBillService inBillService;
|
||||||
|
@Resource
|
||||||
|
private IOStorInvDisMapper ioStorInvDisMapper;
|
||||||
@Override
|
@Override
|
||||||
public String create(JSONObject json) {
|
public String create(JSONObject json) {
|
||||||
|
// 获取任务配置的优先级
|
||||||
|
String priority= "1";
|
||||||
|
SchBaseTaskconfig taskconfig = taskconfigService.getTaskByConfigCode(json.getString("task_type"));
|
||||||
|
if (ObjectUtil.isNotEmpty(json.getString("Priority"))) {
|
||||||
|
priority = json.getString("Priority");
|
||||||
|
} else if (ObjectUtil.isNotEmpty(taskconfig)){
|
||||||
|
priority = taskconfig.getPriority();
|
||||||
|
}
|
||||||
SchBaseTask task = new SchBaseTask();
|
SchBaseTask task = new SchBaseTask();
|
||||||
task.setTask_id(IdUtil.getStringId());
|
task.setTask_id(IdUtil.getStringId());
|
||||||
task.setTask_code(json.getString("TaskCode"));
|
task.setTask_code(json.getString("TaskCode"));
|
||||||
@@ -41,7 +62,7 @@ public class JbBackAgvTask extends AbstractTask {
|
|||||||
task.setVehicle_code2(json.getString("vehicle_code2"));
|
task.setVehicle_code2(json.getString("vehicle_code2"));
|
||||||
task.setGroup_id(json.getString("group_id"));
|
task.setGroup_id(json.getString("group_id"));
|
||||||
task.setRequest_param(json.toString());
|
task.setRequest_param(json.toString());
|
||||||
task.setPriority(json.getString("Priority"));
|
task.setPriority(priority);
|
||||||
task.setCreate_id(SecurityUtils.getCurrentUserId());
|
task.setCreate_id(SecurityUtils.getCurrentUserId());
|
||||||
task.setCreate_name(SecurityUtils.getCurrentNickName());
|
task.setCreate_name(SecurityUtils.getCurrentNickName());
|
||||||
task.setCreate_time(DateUtil.now());
|
task.setCreate_time(DateUtil.now());
|
||||||
@@ -51,7 +72,23 @@ public class JbBackAgvTask extends AbstractTask {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public AcsTaskDto sendAcsParam(String taskId) {
|
public AcsTaskDto sendAcsParam(String taskId) {
|
||||||
return null;
|
SchBaseTask taskDao = taskService.getById(taskId);
|
||||||
|
SchBaseTaskconfig taskconfig = taskconfigService.getTaskByConfigCode(taskDao.getConfig_code());
|
||||||
|
|
||||||
|
// 组织下发给acs的数据
|
||||||
|
AcsTaskDto acsTaskDto = new AcsTaskDto();
|
||||||
|
acsTaskDto.setExt_task_uuid(taskDao.getTask_id());
|
||||||
|
acsTaskDto.setTask_code(taskDao.getTask_code());
|
||||||
|
acsTaskDto.setStart_device_code(taskDao.getPoint_code1());
|
||||||
|
acsTaskDto.setNext_device_code(taskDao.getPoint_code2());
|
||||||
|
acsTaskDto.setStart_device_code2(taskDao.getPoint_code3());
|
||||||
|
acsTaskDto.setNext_device_code2(taskDao.getPoint_code4());
|
||||||
|
acsTaskDto.setPriority(taskDao.getPriority());
|
||||||
|
acsTaskDto.setAgv_system_type(taskconfig.getAcs_task_type());
|
||||||
|
acsTaskDto.setTask_type(taskconfig.getTask_type());
|
||||||
|
acsTaskDto.setTask_group_id(taskDao.getTask_group_id());
|
||||||
|
acsTaskDto.setTask_group_seq(taskDao.getTask_group_seq());
|
||||||
|
return acsTaskDto;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -87,10 +124,6 @@ public class JbBackAgvTask extends AbstractTask {
|
|||||||
this.finishTask(taskObj);
|
this.finishTask(taskObj);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void finishTask(SchBaseTask taskObj) {
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void cancel(String task_code) {
|
public void cancel(String task_code) {
|
||||||
SchBaseTask taskObj = taskService.getByCode(task_code);
|
SchBaseTask taskObj = taskService.getByCode(task_code);
|
||||||
@@ -103,8 +136,29 @@ public class JbBackAgvTask extends AbstractTask {
|
|||||||
this.cancelTask(taskObj);
|
this.cancelTask(taskObj);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void cancelTask(SchBaseTask taskObj) {
|
private void finishTask(SchBaseTask taskObj) {
|
||||||
|
// 任务完成
|
||||||
|
taskObj.setTask_status(TaskStatus.FINISHED.getCode());
|
||||||
|
taskObj.setRemark("已完成");
|
||||||
|
taskService.updateById(taskObj);
|
||||||
|
inBillService.taskFinish(taskObj);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void cancelTask(SchBaseTask taskObj) {
|
||||||
|
// 取消任务
|
||||||
|
taskService.update(new LambdaUpdateWrapper<SchBaseTask>()
|
||||||
|
.set(SchBaseTask::getTask_status, TaskStatus.CANCELED.getCode())
|
||||||
|
.set(SchBaseTask::getRemark, "已取消")
|
||||||
|
.eq(SchBaseTask::getTask_id, taskObj.getTask_id())
|
||||||
|
);
|
||||||
|
//分配表清除任务
|
||||||
|
ioStorInvDisMapper.update(new IOStorInvDis(),new LambdaUpdateWrapper<>(IOStorInvDis.class)
|
||||||
|
.set(IOStorInvDis::getTask_id,null)
|
||||||
|
.set(IOStorInvDis::getPoint_code,null)
|
||||||
|
.set(IOStorInvDis::getIs_issued,0)
|
||||||
|
.set(IOStorInvDis::getWork_status, IOSEnum.INBILL_DIS_STATUS.code("未生成"))
|
||||||
|
.eq(IOStorInvDis::getTask_id,taskObj.getTask_id())
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@@ -14,8 +14,10 @@ import org.nl.wms.pm_manage.service.dao.PdmBdWorkorder;
|
|||||||
import org.nl.wms.sch_manage.enums.TaskStatus;
|
import org.nl.wms.sch_manage.enums.TaskStatus;
|
||||||
import org.nl.wms.sch_manage.service.ISchBasePointService;
|
import org.nl.wms.sch_manage.service.ISchBasePointService;
|
||||||
import org.nl.wms.sch_manage.service.ISchBaseTaskService;
|
import org.nl.wms.sch_manage.service.ISchBaseTaskService;
|
||||||
|
import org.nl.wms.sch_manage.service.ISchBaseTaskconfigService;
|
||||||
import org.nl.wms.sch_manage.service.dao.SchBasePoint;
|
import org.nl.wms.sch_manage.service.dao.SchBasePoint;
|
||||||
import org.nl.wms.sch_manage.service.dao.SchBaseTask;
|
import org.nl.wms.sch_manage.service.dao.SchBaseTask;
|
||||||
|
import org.nl.wms.sch_manage.service.dao.SchBaseTaskconfig;
|
||||||
import org.nl.wms.sch_manage.service.util.AbstractTask;
|
import org.nl.wms.sch_manage.service.util.AbstractTask;
|
||||||
import org.nl.wms.sch_manage.service.util.AcsTaskDto;
|
import org.nl.wms.sch_manage.service.util.AcsTaskDto;
|
||||||
import org.nl.wms.warehouse_manage.enums.IOSEnum;
|
import org.nl.wms.warehouse_manage.enums.IOSEnum;
|
||||||
@@ -45,6 +47,8 @@ public class JbDownAgvTask extends AbstractTask {
|
|||||||
private IOStorInvDisMapper ioStorInvDisMapper;
|
private IOStorInvDisMapper ioStorInvDisMapper;
|
||||||
@Resource
|
@Resource
|
||||||
private ISchBasePointService pointService;
|
private ISchBasePointService pointService;
|
||||||
|
@Resource
|
||||||
|
private ISchBaseTaskconfigService taskconfigService;
|
||||||
@Override
|
@Override
|
||||||
public String create(JSONObject param) {
|
public String create(JSONObject param) {
|
||||||
// 改造:多条任务
|
// 改造:多条任务
|
||||||
@@ -80,7 +84,23 @@ public class JbDownAgvTask extends AbstractTask {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public AcsTaskDto sendAcsParam(String taskId) {
|
public AcsTaskDto sendAcsParam(String taskId) {
|
||||||
return null;
|
SchBaseTask taskDao = taskService.getById(taskId);
|
||||||
|
SchBaseTaskconfig taskconfig = taskconfigService.getTaskByConfigCode(taskDao.getConfig_code());
|
||||||
|
|
||||||
|
// 组织下发给acs的数据
|
||||||
|
AcsTaskDto acsTaskDto = new AcsTaskDto();
|
||||||
|
acsTaskDto.setExt_task_uuid(taskDao.getTask_id());
|
||||||
|
acsTaskDto.setTask_code(taskDao.getTask_code());
|
||||||
|
acsTaskDto.setStart_device_code(taskDao.getPoint_code1());
|
||||||
|
acsTaskDto.setNext_device_code(taskDao.getPoint_code2());
|
||||||
|
acsTaskDto.setStart_device_code2(taskDao.getPoint_code3());
|
||||||
|
acsTaskDto.setNext_device_code2(taskDao.getPoint_code4());
|
||||||
|
acsTaskDto.setTask_group_id(taskDao.getTask_group_id());
|
||||||
|
acsTaskDto.setTask_group_seq(taskDao.getTask_group_seq());
|
||||||
|
acsTaskDto.setPriority(taskDao.getPriority());
|
||||||
|
acsTaskDto.setAgv_system_type(taskconfig.getAcs_task_type());
|
||||||
|
acsTaskDto.setTask_type(taskconfig.getTask_type());
|
||||||
|
return acsTaskDto;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -126,7 +146,7 @@ public class JbDownAgvTask extends AbstractTask {
|
|||||||
|
|
||||||
private void finishTask(SchBaseTask taskObj) {
|
private void finishTask(SchBaseTask taskObj) {
|
||||||
// 任务完成
|
// 任务完成
|
||||||
taskObj.setRemark("等待最后一条任务完成");
|
taskObj.setRemark("该任务已完成,等待最后一条任务完成后全部完成!");
|
||||||
if ("1".equals(taskObj.getTask_group_seq().toString())) {
|
if ("1".equals(taskObj.getTask_group_seq().toString())) {
|
||||||
// 开盖设置成有盖
|
// 开盖设置成有盖
|
||||||
SchBasePoint khgPoint = pointService.getById(taskObj.getPoint_code2());
|
SchBasePoint khgPoint = pointService.getById(taskObj.getPoint_code2());
|
||||||
@@ -142,9 +162,9 @@ public class JbDownAgvTask extends AbstractTask {
|
|||||||
pointService.updateById(jbjPoint);
|
pointService.updateById(jbjPoint);
|
||||||
}
|
}
|
||||||
if ("3".equals(taskObj.getTask_group_seq().toString())) {
|
if ("3".equals(taskObj.getTask_group_seq().toString())) {
|
||||||
// 开盖设置成有盖
|
// 开盖设置成空位
|
||||||
SchBasePoint khgPoint = pointService.getById(taskObj.getPoint_code2());
|
SchBasePoint khgPoint = pointService.getById(taskObj.getPoint_code2());
|
||||||
khgPoint.setPoint_status("2");
|
khgPoint.setPoint_status("1");
|
||||||
khgPoint.setUpdate_time(DateUtil.now());
|
khgPoint.setUpdate_time(DateUtil.now());
|
||||||
pointService.updateById(khgPoint);
|
pointService.updateById(khgPoint);
|
||||||
SchBaseTask task = new SchBaseTask();
|
SchBaseTask task = new SchBaseTask();
|
||||||
|
|||||||
@@ -14,8 +14,10 @@ import org.nl.wms.pm_manage.service.dao.PdmBdWorkorder;
|
|||||||
import org.nl.wms.sch_manage.enums.TaskStatus;
|
import org.nl.wms.sch_manage.enums.TaskStatus;
|
||||||
import org.nl.wms.sch_manage.service.ISchBasePointService;
|
import org.nl.wms.sch_manage.service.ISchBasePointService;
|
||||||
import org.nl.wms.sch_manage.service.ISchBaseTaskService;
|
import org.nl.wms.sch_manage.service.ISchBaseTaskService;
|
||||||
|
import org.nl.wms.sch_manage.service.ISchBaseTaskconfigService;
|
||||||
import org.nl.wms.sch_manage.service.dao.SchBasePoint;
|
import org.nl.wms.sch_manage.service.dao.SchBasePoint;
|
||||||
import org.nl.wms.sch_manage.service.dao.SchBaseTask;
|
import org.nl.wms.sch_manage.service.dao.SchBaseTask;
|
||||||
|
import org.nl.wms.sch_manage.service.dao.SchBaseTaskconfig;
|
||||||
import org.nl.wms.sch_manage.service.util.AbstractTask;
|
import org.nl.wms.sch_manage.service.util.AbstractTask;
|
||||||
import org.nl.wms.sch_manage.service.util.AcsTaskDto;
|
import org.nl.wms.sch_manage.service.util.AcsTaskDto;
|
||||||
import org.nl.wms.warehouse_manage.enums.IOSEnum;
|
import org.nl.wms.warehouse_manage.enums.IOSEnum;
|
||||||
@@ -50,6 +52,8 @@ public class JbUpAgvTask extends AbstractTask {
|
|||||||
private IMdPbGroupplateService groupplateService;
|
private IMdPbGroupplateService groupplateService;
|
||||||
@Resource
|
@Resource
|
||||||
private IStructattrService structattrService;
|
private IStructattrService structattrService;
|
||||||
|
@Resource
|
||||||
|
private ISchBaseTaskconfigService taskconfigService;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String create(JSONObject json) {
|
public String create(JSONObject json) {
|
||||||
@@ -76,7 +80,21 @@ public class JbUpAgvTask extends AbstractTask {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public AcsTaskDto sendAcsParam(String taskId) {
|
public AcsTaskDto sendAcsParam(String taskId) {
|
||||||
return null;
|
SchBaseTask taskDao = taskService.getById(taskId);
|
||||||
|
SchBaseTaskconfig taskconfig = taskconfigService.getTaskByConfigCode(taskDao.getConfig_code());
|
||||||
|
|
||||||
|
// 组织下发给acs的数据
|
||||||
|
AcsTaskDto acsTaskDto = new AcsTaskDto();
|
||||||
|
acsTaskDto.setExt_task_uuid(taskDao.getTask_id());
|
||||||
|
acsTaskDto.setTask_code(taskDao.getTask_code());
|
||||||
|
acsTaskDto.setStart_device_code(taskDao.getPoint_code1());
|
||||||
|
acsTaskDto.setNext_device_code(taskDao.getPoint_code2());
|
||||||
|
acsTaskDto.setStart_device_code2(taskDao.getPoint_code3());
|
||||||
|
acsTaskDto.setNext_device_code2(taskDao.getPoint_code4());
|
||||||
|
acsTaskDto.setPriority(taskDao.getPriority());
|
||||||
|
acsTaskDto.setAgv_system_type(taskconfig.getAcs_task_type());
|
||||||
|
acsTaskDto.setTask_type(taskconfig.getTask_type());
|
||||||
|
return acsTaskDto;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -160,6 +178,11 @@ public class JbUpAgvTask extends AbstractTask {
|
|||||||
.set(Structattr::getStoragevehicle_code, taskObj.getVehicle_code2())
|
.set(Structattr::getStoragevehicle_code, taskObj.getVehicle_code2())
|
||||||
.set(Structattr::getOccupancy_state, 2)
|
.set(Structattr::getOccupancy_state, 2)
|
||||||
.eq(Structattr::getStruct_code, taskObj.getPoint_code4()));
|
.eq(Structattr::getStruct_code, taskObj.getPoint_code4()));
|
||||||
|
} else {
|
||||||
|
// 仓位设置空
|
||||||
|
structattrService.update(new LambdaUpdateWrapper<Structattr>()
|
||||||
|
.set(Structattr::getOccupancy_state, 1)
|
||||||
|
.eq(Structattr::getStruct_code, taskObj.getPoint_code4()));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -21,12 +21,12 @@ public class SysParamConstant {
|
|||||||
* ACS系统IP
|
* ACS系统IP
|
||||||
*/
|
*/
|
||||||
public final static String ACS_URL = "acs_url";
|
public final static String ACS_URL = "acs_url";
|
||||||
public final static String MES_URL = "mes_url";
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* ERP系统IP
|
* ERP系统IP
|
||||||
*/
|
*/
|
||||||
public final static String ERP_URL = "erp_url";
|
public final static String ERP_URL = "erp_url";
|
||||||
|
public final static String MES_URL = "mes_url";
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -19,7 +19,14 @@ public enum TagNameEnum {
|
|||||||
* LMS系统
|
* LMS系统
|
||||||
*/
|
*/
|
||||||
LMS("LMS系统"),
|
LMS("LMS系统"),
|
||||||
|
/***
|
||||||
|
* 自动下发任务到ACS
|
||||||
|
*/
|
||||||
AUTO_TASK_SEND("自动下发任务到ACS"),
|
AUTO_TASK_SEND("自动下发任务到ACS"),
|
||||||
|
/**
|
||||||
|
* 解包手持下料
|
||||||
|
*/
|
||||||
|
PDA_JB_DOWN_MATERIAL("解包手持下料"),
|
||||||
/**
|
/**
|
||||||
* 标记符号
|
* 标记符号
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -769,6 +769,8 @@ public class InBillServiceImpl extends ServiceImpl<IOStorInvMapper, IOStorInv> i
|
|||||||
task.put("point_code2", emptyPoint.getPoint_code());
|
task.put("point_code2", emptyPoint.getPoint_code());
|
||||||
task.put("point_code3", fullPoint.getPoint_code());
|
task.put("point_code3", fullPoint.getPoint_code());
|
||||||
task.put("point_code4", structCode);
|
task.put("point_code4", structCode);
|
||||||
|
task.put("vehicle_code", fullPoint.getVehicle_code());
|
||||||
|
task.put("vehicle_code2", emptyPoint.getStoragevehicle_code());
|
||||||
jbBackAgvTask.create(task);
|
jbBackAgvTask.create(task);
|
||||||
} else if (StatusEnum.IOBILL_TYPE_IN.code("来料入库").equals(invObj.getBill_type())) {
|
} else if (StatusEnum.IOBILL_TYPE_IN.code("来料入库").equals(invObj.getBill_type())) {
|
||||||
// 获取组盘信息
|
// 获取组盘信息
|
||||||
|
|||||||
@@ -980,6 +980,9 @@ public class OutBillServiceImpl extends ServiceImpl<IOStorInvMapper,IOStorInv> i
|
|||||||
if (ObjectUtil.isEmpty(inPoint) || ObjectUtil.isEmpty(outPoint)) {
|
if (ObjectUtil.isEmpty(inPoint) || ObjectUtil.isEmpty(outPoint)) {
|
||||||
throw new BadRequestException("解包机输送线点位不存在或者存在任务!");
|
throw new BadRequestException("解包机输送线点位不存在或者存在任务!");
|
||||||
}
|
}
|
||||||
|
if (!"1".equals(inPoint.getPoint_status())) {
|
||||||
|
throw new BadRequestException("原料进对接位状态不为空位,请检查确认!");
|
||||||
|
}
|
||||||
JSONObject task_form = new JSONObject();
|
JSONObject task_form = new JSONObject();
|
||||||
task_form.put("task_type", "JbUpAgvTask");
|
task_form.put("task_type", "JbUpAgvTask");
|
||||||
task_form.put("order_id", whereJson.getString("order_id"));
|
task_form.put("order_id", whereJson.getString("order_id"));
|
||||||
|
|||||||
@@ -103,9 +103,9 @@
|
|||||||
<logger name="org.hibernate" level="ERROR" additivity="true">
|
<logger name="org.hibernate" level="ERROR" additivity="true">
|
||||||
<appender-ref ref="asyncFileAppender"/>
|
<appender-ref ref="asyncFileAppender"/>
|
||||||
</logger>
|
</logger>
|
||||||
<logger name="org.quartz" level="ERROR" additivity="true">
|
<!-- <logger name="org.quartz" level="ERROR" additivity="true">-->
|
||||||
<appender-ref ref="asyncFileAppender"/>
|
<!-- <appender-ref ref="asyncFileAppender"/>-->
|
||||||
</logger>
|
<!-- </logger>-->
|
||||||
<logger name="com.google" level="ERROR" additivity="true">
|
<logger name="com.google" level="ERROR" additivity="true">
|
||||||
<appender-ref ref="asyncFileAppender"/>
|
<appender-ref ref="asyncFileAppender"/>
|
||||||
</logger>
|
</logger>
|
||||||
|
|||||||
@@ -133,7 +133,7 @@
|
|||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<el-form-item label="归属库区" prop="sect_id">
|
<el-form-item label="归属库区" prop="sect_code">
|
||||||
<el-cascader
|
<el-cascader
|
||||||
v-model="form.cascader"
|
v-model="form.cascader"
|
||||||
style="width: 200px;"
|
style="width: 200px;"
|
||||||
@@ -308,7 +308,7 @@
|
|||||||
<el-table-column prop="inv_code" label="锁定单据编码" width="150" />
|
<el-table-column prop="inv_code" label="锁定单据编码" width="150" />
|
||||||
<el-table-column prop="inv_type" label="锁定单据类型" width="150" :formatter="invtypeFormat" />
|
<el-table-column prop="inv_type" label="锁定单据类型" width="150" :formatter="invtypeFormat" />
|
||||||
<el-table-column prop="remark" label="备注" show-overflow-tooltip />
|
<el-table-column prop="remark" label="备注" show-overflow-tooltip />
|
||||||
<el-table-column prop="occupancy_state" label="占用状态" show-overflow-tooltip >
|
<el-table-column prop="occupancy_state" label="占用状态" show-overflow-tooltip>
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
{{ dict.label.occupancy_state[scope.row.occupancy_state] }}
|
{{ dict.label.occupancy_state[scope.row.occupancy_state] }}
|
||||||
</template>
|
</template>
|
||||||
|
|||||||
@@ -39,6 +39,13 @@ export function getPointList(data) {
|
|||||||
data
|
data
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
export function getPointsByCode(data) {
|
||||||
|
return request({
|
||||||
|
url: 'api/schBasePoint/getPointsByCode',
|
||||||
|
method: 'post',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
export function getPointList2(data) {
|
export function getPointList2(data) {
|
||||||
return request({
|
return request({
|
||||||
url: 'api/schBasePoint/getPointList2',
|
url: 'api/schBasePoint/getPointList2',
|
||||||
@@ -55,4 +62,4 @@ export function changeLock(data) {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
export default { add, edit, del, changeUsed, getPointList, getPointList2, changeLock }
|
export default { add, edit, del, changeUsed, getPointList, getPointsByCode, getPointList2, changeLock }
|
||||||
|
|||||||
@@ -136,6 +136,20 @@
|
|||||||
style="width: 240px;"
|
style="width: 240px;"
|
||||||
/>
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
<el-form-item label="任务方向" prop="task_direction">
|
||||||
|
<el-select
|
||||||
|
v-model="form.task_direction"
|
||||||
|
size="mini"
|
||||||
|
placeholder="任务方向"
|
||||||
|
style="width: 240px;"
|
||||||
|
>
|
||||||
|
<el-option
|
||||||
|
v-for="item in dict.task_direction"
|
||||||
|
:label="item.label"
|
||||||
|
:value="item.value"
|
||||||
|
/>
|
||||||
|
</el-select>
|
||||||
|
</el-form-item>
|
||||||
<el-form-item label="起点区域">
|
<el-form-item label="起点区域">
|
||||||
<el-select v-model="form.start_region_strs" multiple placeholder="请选择" style="width: 240px;">
|
<el-select v-model="form.start_region_strs" multiple placeholder="请选择" style="width: 240px;">
|
||||||
<el-option
|
<el-option
|
||||||
@@ -162,68 +176,54 @@
|
|||||||
<el-form-item label="终点前缀">
|
<el-form-item label="终点前缀">
|
||||||
<el-input v-model="form.next_region_pre" style="width: 240px;" />
|
<el-input v-model="form.next_region_pre" style="width: 240px;" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="任务方向" prop="task_direction">
|
<!-- <el-form-item label="是否校验工单">-->
|
||||||
<el-select
|
<!-- <el-radio-group v-model="form.is_check_workorder" style="width: 240px">-->
|
||||||
v-model="form.task_direction"
|
<!-- <el-radio :label="true">是</el-radio>-->
|
||||||
size="mini"
|
<!-- <el-radio :label="false">否</el-radio>-->
|
||||||
placeholder="任务方向"
|
<!-- </el-radio-group>-->
|
||||||
style="width: 240px;"
|
<!-- </el-form-item>-->
|
||||||
>
|
<!-- <el-form-item label="是否判断起点锁">-->
|
||||||
<el-option
|
<!-- <el-radio-group v-model="form.is_check_start_lock" style="width: 240px">-->
|
||||||
v-for="item in dict.task_direction"
|
<!-- <el-radio :label="true">是</el-radio>-->
|
||||||
:label="item.label"
|
<!-- <el-radio :label="false">否</el-radio>-->
|
||||||
:value="item.value"
|
<!-- </el-radio-group>-->
|
||||||
/>
|
<!-- </el-form-item>-->
|
||||||
</el-select>
|
<!-- <el-form-item label="是否立即创建">-->
|
||||||
</el-form-item>
|
<!-- <el-radio-group v-model="form.is_immediate_create" style="width: 240px">-->
|
||||||
<el-form-item label="是否校验工单">
|
<!-- <el-radio :label="true">是</el-radio>-->
|
||||||
<el-radio-group v-model="form.is_check_workorder" style="width: 240px">
|
<!-- <el-radio :label="false">否</el-radio>-->
|
||||||
<el-radio :label="true">是</el-radio>
|
<!-- </el-radio-group>-->
|
||||||
<el-radio :label="false">否</el-radio>
|
<!-- </el-form-item>-->
|
||||||
</el-radio-group>
|
<!-- <el-form-item label="是否判断终点锁">-->
|
||||||
</el-form-item>
|
<!-- <el-radio-group v-model="form.is_check_next_lock" style="width: 240px">-->
|
||||||
<el-form-item label="是否判断起点锁">
|
<!-- <el-radio :label="true">是</el-radio>-->
|
||||||
<el-radio-group v-model="form.is_check_start_lock" style="width: 240px">
|
<!-- <el-radio :label="false">否</el-radio>-->
|
||||||
<el-radio :label="true">是</el-radio>
|
<!-- </el-radio-group>-->
|
||||||
<el-radio :label="false">否</el-radio>
|
<!-- </el-form-item>-->
|
||||||
</el-radio-group>
|
<!-- <el-form-item label="是否起点自动">-->
|
||||||
</el-form-item>
|
<!-- <el-radio-group v-model="form.is_start_auto" style="width: 240px">-->
|
||||||
<el-form-item label="是否立即创建">
|
<!-- <el-radio :label="true">是</el-radio>-->
|
||||||
<el-radio-group v-model="form.is_immediate_create" style="width: 240px">
|
<!-- <el-radio :label="false">否</el-radio>-->
|
||||||
<el-radio :label="true">是</el-radio>
|
<!-- </el-radio-group>-->
|
||||||
<el-radio :label="false">否</el-radio>
|
<!-- </el-form-item>-->
|
||||||
</el-radio-group>
|
<!-- <el-form-item label="是否终点自动">-->
|
||||||
</el-form-item>
|
<!-- <el-radio-group v-model="form.is_next_auto" style="width: 240px">-->
|
||||||
<el-form-item label="是否判断终点锁">
|
<!-- <el-radio :label="true">是</el-radio>-->
|
||||||
<el-radio-group v-model="form.is_check_next_lock" style="width: 240px">
|
<!-- <el-radio :label="false">否</el-radio>-->
|
||||||
<el-radio :label="true">是</el-radio>
|
<!-- </el-radio-group>-->
|
||||||
<el-radio :label="false">否</el-radio>
|
<!-- </el-form-item>-->
|
||||||
</el-radio-group>
|
<!-- <el-form-item label="是否锁定起点">-->
|
||||||
</el-form-item>
|
<!-- <el-radio-group v-model="form.is_lock_start" style="width: 240px">-->
|
||||||
<el-form-item label="是否起点自动">
|
<!-- <el-radio :label="true">是</el-radio>-->
|
||||||
<el-radio-group v-model="form.is_start_auto" style="width: 240px">
|
<!-- <el-radio :label="false">否</el-radio>-->
|
||||||
<el-radio :label="true">是</el-radio>
|
<!-- </el-radio-group>-->
|
||||||
<el-radio :label="false">否</el-radio>
|
<!-- </el-form-item>-->
|
||||||
</el-radio-group>
|
<!-- <el-form-item label="是否锁定终点">-->
|
||||||
</el-form-item>
|
<!-- <el-radio-group v-model="form.is_lock_next" style="width: 240px">-->
|
||||||
<el-form-item label="是否终点自动">
|
<!-- <el-radio :label="true">是</el-radio>-->
|
||||||
<el-radio-group v-model="form.is_next_auto" style="width: 240px">
|
<!-- <el-radio :label="false">否</el-radio>-->
|
||||||
<el-radio :label="true">是</el-radio>
|
<!-- </el-radio-group>-->
|
||||||
<el-radio :label="false">否</el-radio>
|
<!-- </el-form-item>-->
|
||||||
</el-radio-group>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="是否锁定起点">
|
|
||||||
<el-radio-group v-model="form.is_lock_start" style="width: 240px">
|
|
||||||
<el-radio :label="true">是</el-radio>
|
|
||||||
<el-radio :label="false">否</el-radio>
|
|
||||||
</el-radio-group>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="是否锁定终点">
|
|
||||||
<el-radio-group v-model="form.is_lock_next" style="width: 240px">
|
|
||||||
<el-radio :label="true">是</el-radio>
|
|
||||||
<el-radio :label="false">否</el-radio>
|
|
||||||
</el-radio-group>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item v-if="false" label="生成任务的请求参数">
|
<el-form-item v-if="false" label="生成任务的请求参数">
|
||||||
<el-input v-model="form.request_param" style="width: 240px;" />
|
<el-input v-model="form.request_param" style="width: 240px;" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
@@ -236,17 +236,17 @@
|
|||||||
<el-radio :label="false">否</el-radio>
|
<el-radio :label="false">否</el-radio>
|
||||||
</el-radio-group>
|
</el-radio-group>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="路由编码" prop="route_plan_code">
|
<!-- <el-form-item label="路由编码" prop="route_plan_code">-->
|
||||||
<el-input v-model="form.route_plan_code" style="width: 240px;" />
|
<!-- <el-input v-model="form.route_plan_code" style="width: 240px;" />-->
|
||||||
</el-form-item>
|
<!-- </el-form-item>-->
|
||||||
<el-form-item label="未完成通知时间" prop="unfinish_notify_time">
|
<!-- <el-form-item label="未完成通知时间" prop="unfinish_notify_time">-->
|
||||||
<el-input-number
|
<!-- <el-input-number-->
|
||||||
v-model.number="form.unfinish_notify_time"
|
<!-- v-model.number="form.unfinish_notify_time"-->
|
||||||
:min="0"
|
<!-- :min="0"-->
|
||||||
:max="999"
|
<!-- :max="999"-->
|
||||||
style="width: 240px;"
|
<!-- style="width: 240px;"-->
|
||||||
/>
|
<!-- />-->
|
||||||
</el-form-item>
|
<!-- </el-form-item>-->
|
||||||
<el-form-item v-if="false" label="sql配置">
|
<el-form-item v-if="false" label="sql配置">
|
||||||
<el-input v-model="form.sql_param" style="width: 240px;" />
|
<el-input v-model="form.sql_param" style="width: 240px;" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
@@ -305,51 +305,51 @@
|
|||||||
<el-table-column prop="start_point_pre" label="起点前缀" :min-width="flexWidth('start_point_pre',crud.data,'起点前缀')" />
|
<el-table-column prop="start_point_pre" label="起点前缀" :min-width="flexWidth('start_point_pre',crud.data,'起点前缀')" />
|
||||||
<el-table-column prop="next_region_pre" label="终点前缀" :min-width="flexWidth('next_region_pre',crud.data,'终点前缀')" />
|
<el-table-column prop="next_region_pre" label="终点前缀" :min-width="flexWidth('next_region_pre',crud.data,'终点前缀')" />
|
||||||
<el-table-column prop="route_plan_code" label="路由编码" :min-width="flexWidth('route_plan_code',crud.data,'终点前缀')" />
|
<el-table-column prop="route_plan_code" label="路由编码" :min-width="flexWidth('route_plan_code',crud.data,'终点前缀')" />
|
||||||
<el-table-column prop="task_direction" label="任务方向" :min-width="flexWidth('task_direction',crud.data,'终点前缀')" >
|
<el-table-column prop="task_direction" label="任务方向" :min-width="flexWidth('task_direction',crud.data,'终点前缀')">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
{{ dict.label.task_direction[scope.row.task_direction] }}
|
{{ dict.label.task_direction[scope.row.task_direction] }}
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column prop="is_check_workorder" label="是否校验工单" :min-width="flexWidth('is_check_workorder',crud.data,'是否校验工单')">
|
<!-- <el-table-column prop="is_check_workorder" label="是否校验工单" :min-width="flexWidth('is_check_workorder',crud.data,'是否校验工单')">-->
|
||||||
<template slot-scope="scope">
|
<!-- <template slot-scope="scope">-->
|
||||||
{{ scope.row.is_check_workorder?'是':'否' }}
|
<!-- {{ scope.row.is_check_workorder?'是':'否' }}-->
|
||||||
</template>
|
<!-- </template>-->
|
||||||
</el-table-column>
|
<!-- </el-table-column>-->
|
||||||
<el-table-column prop="is_check_start_lock" label="是否判断起点锁" :min-width="flexWidth('is_check_start_lock',crud.data,'是否判断起点锁')">
|
<!-- <el-table-column prop="is_check_start_lock" label="是否判断起点锁" :min-width="flexWidth('is_check_start_lock',crud.data,'是否判断起点锁')">-->
|
||||||
<template slot-scope="scope">
|
<!-- <template slot-scope="scope">-->
|
||||||
{{ scope.row.is_check_start_lock?'是':'否' }}
|
<!-- {{ scope.row.is_check_start_lock?'是':'否' }}-->
|
||||||
</template>
|
<!-- </template>-->
|
||||||
</el-table-column>
|
<!-- </el-table-column>-->
|
||||||
<el-table-column prop="is_immediate_create" label="是否立即创建" :min-width="flexWidth('is_immediate_create',crud.data,'是否立即创建')">
|
<!-- <el-table-column prop="is_immediate_create" label="是否立即创建" :min-width="flexWidth('is_immediate_create',crud.data,'是否立即创建')">-->
|
||||||
<template slot-scope="scope">
|
<!-- <template slot-scope="scope">-->
|
||||||
{{ scope.row.is_immediate_create?'是':'否' }}
|
<!-- {{ scope.row.is_immediate_create?'是':'否' }}-->
|
||||||
</template>
|
<!-- </template>-->
|
||||||
</el-table-column>
|
<!-- </el-table-column>-->
|
||||||
<el-table-column prop="is_check_next_lock" label="是否判断终点锁" :min-width="flexWidth('is_check_next_lock',crud.data,'是否判断终点锁')">
|
<!-- <el-table-column prop="is_check_next_lock" label="是否判断终点锁" :min-width="flexWidth('is_check_next_lock',crud.data,'是否判断终点锁')">-->
|
||||||
<template slot-scope="scope">
|
<!-- <template slot-scope="scope">-->
|
||||||
{{ scope.row.is_check_next_lock?'是':'否' }}
|
<!-- {{ scope.row.is_check_next_lock?'是':'否' }}-->
|
||||||
</template>
|
<!-- </template>-->
|
||||||
</el-table-column>
|
<!-- </el-table-column>-->
|
||||||
<el-table-column prop="is_start_auto" label="是否起点自动" :min-width="flexWidth('is_start_auto',crud.data,'是否起点自动')">
|
<!-- <el-table-column prop="is_start_auto" label="是否起点自动" :min-width="flexWidth('is_start_auto',crud.data,'是否起点自动')">-->
|
||||||
<template slot-scope="scope">
|
<!-- <template slot-scope="scope">-->
|
||||||
{{ scope.row.is_start_auto?'是':'否' }}
|
<!-- {{ scope.row.is_start_auto?'是':'否' }}-->
|
||||||
</template>
|
<!-- </template>-->
|
||||||
</el-table-column>
|
<!-- </el-table-column>-->
|
||||||
<el-table-column prop="is_next_auto" label="是否终点自动" :min-width="flexWidth('is_next_auto',crud.data,'是否终点自动')">
|
<!-- <el-table-column prop="is_next_auto" label="是否终点自动" :min-width="flexWidth('is_next_auto',crud.data,'是否终点自动')">-->
|
||||||
<template slot-scope="scope">
|
<!-- <template slot-scope="scope">-->
|
||||||
{{ scope.row.is_next_auto?'是':'否' }}
|
<!-- {{ scope.row.is_next_auto?'是':'否' }}-->
|
||||||
</template>
|
<!-- </template>-->
|
||||||
</el-table-column>
|
<!-- </el-table-column>-->
|
||||||
<el-table-column prop="is_lock_start" label="是否锁定起点" :min-width="flexWidth('is_lock_start',crud.data,'是否锁定起点')">
|
<!-- <el-table-column prop="is_lock_start" label="是否锁定起点" :min-width="flexWidth('is_lock_start',crud.data,'是否锁定起点')">-->
|
||||||
<template slot-scope="scope">
|
<!-- <template slot-scope="scope">-->
|
||||||
{{ scope.row.is_lock_start?'是':'否' }}
|
<!-- {{ scope.row.is_lock_start?'是':'否' }}-->
|
||||||
</template>
|
<!-- </template>-->
|
||||||
</el-table-column>
|
<!-- </el-table-column>-->
|
||||||
<el-table-column prop="is_lock_next" label="是否锁定终点" :min-width="flexWidth('is_lock_next',crud.data,'是否锁定终点')">
|
<!-- <el-table-column prop="is_lock_next" label="是否锁定终点" :min-width="flexWidth('is_lock_next',crud.data,'是否锁定终点')">-->
|
||||||
<template slot-scope="scope">
|
<!-- <template slot-scope="scope">-->
|
||||||
{{ scope.row.is_lock_next?'是':'否' }}
|
<!-- {{ scope.row.is_lock_next?'是':'否' }}-->
|
||||||
</template>
|
<!-- </template>-->
|
||||||
</el-table-column>
|
<!-- </el-table-column>-->
|
||||||
<el-table-column v-if="false" prop="request_param" label="生成任务的请求参数" :min-width="flexWidth('request_param',crud.data,'生成任务的请求参数')" />
|
<el-table-column v-if="false" prop="request_param" label="生成任务的请求参数" :min-width="flexWidth('request_param',crud.data,'生成任务的请求参数')" />
|
||||||
<el-table-column v-if="false" prop="response_param" label="下发任务的请求参数" :min-width="flexWidth('response_param',crud.data,'下发任务的请求参数')" />
|
<el-table-column v-if="false" prop="response_param" label="下发任务的请求参数" :min-width="flexWidth('response_param',crud.data,'下发任务的请求参数')" />
|
||||||
<el-table-column v-if="false" prop="is_group_congrol_issue_seq" label="是否按组控制下发顺序" :min-width="flexWidth('is_group_congrol_issue_seq',crud.data,'是否按组控制下发顺序')">
|
<el-table-column v-if="false" prop="is_group_congrol_issue_seq" label="是否按组控制下发顺序" :min-width="flexWidth('is_group_congrol_issue_seq',crud.data,'是否按组控制下发顺序')">
|
||||||
|
|||||||
@@ -259,13 +259,9 @@ export default {
|
|||||||
this.sects = res.content
|
this.sects = res.content
|
||||||
})
|
})
|
||||||
|
|
||||||
const area_type = 'YLXCQ'
|
const area_type = 'RKQ,YLXCQ'
|
||||||
|
crudPoint.getPointsByCode(area_type).then(res => {
|
||||||
// 点位类型,因为卸货区的点位类型(出库区、入库区)会变动,因需要增加点位类型字段进行判断
|
this.pointList = res
|
||||||
// 1-入库区,2-出库区
|
|
||||||
const region_type = '1'
|
|
||||||
crudPoint.getPointList({ 'region_code': area_type, 'region_type': region_type }).then(res => {
|
|
||||||
this.pointlist = res
|
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
toDelete(data) {
|
toDelete(data) {
|
||||||
|
|||||||
@@ -161,6 +161,7 @@
|
|||||||
<el-select
|
<el-select
|
||||||
v-model="form2.point_code"
|
v-model="form2.point_code"
|
||||||
clearable
|
clearable
|
||||||
|
filterable
|
||||||
placeholder="请选择"
|
placeholder="请选择"
|
||||||
class="filter-item"
|
class="filter-item"
|
||||||
style="width: 150px;"
|
style="width: 150px;"
|
||||||
@@ -323,12 +324,10 @@ export default {
|
|||||||
crudSectattr.getSect({ 'stor_id': this.storId }).then(res => {
|
crudSectattr.getSect({ 'stor_id': this.storId }).then(res => {
|
||||||
this.sects = res.content
|
this.sects = res.content
|
||||||
})
|
})
|
||||||
const area_type = 'YLXCQ'
|
|
||||||
// 点位类型,因为卸货区的点位类型(出库区、入库区)会变动,因需要增加点位类型字段进行判断
|
const area_type = 'CKQ,YLXCQ'
|
||||||
// 1-入库区,2-出库区
|
crudPoint.getPointsByCode(area_type).then(res => {
|
||||||
const region_type = '2'
|
this.pointList = res
|
||||||
crudPoint.getPointList({ 'region_code': area_type, 'region_type': region_type }).then(res => {
|
|
||||||
this.pointlist = res
|
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
close() {
|
close() {
|
||||||
|
|||||||
Reference in New Issue
Block a user