盘点管理页面字段显示
This commit is contained in:
@@ -34,7 +34,7 @@ public class ToWmsApiController {
|
||||
@PostMapping("/requestEnterByTrayCode")
|
||||
public AjaxResult requestEnterByTrayCode(@RequestBody RequestEnter requestEnter) {
|
||||
AjaxResult ajaxResult = toWmsService.requestEnterByTrayCode(requestEnter);
|
||||
RequestLog requestLog = requestLogService.getRequestLog(JSONUtil.toJsonStr(requestEnter), "入库任务请求(托盘)",ajaxResult);
|
||||
RequestLog requestLog = requestLogService.getRequestLog(JSONUtil.toJsonStr(requestEnter), "入库任务请求",ajaxResult);
|
||||
requestLogService.insertRequestLog(requestLog);
|
||||
return ajaxResult;
|
||||
}
|
||||
|
||||
@@ -8,8 +8,6 @@ import lombok.NoArgsConstructor;
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
public class RequestEnter {
|
||||
private String entranceId;
|
||||
private String trayCode;
|
||||
private String taskNo;
|
||||
private String wmsType;
|
||||
private String spec;
|
||||
}
|
||||
|
||||
@@ -9,6 +9,10 @@ import com.ruoyi.api.domain.RequestEnter;
|
||||
import com.ruoyi.api.domain.RequestEnterResponse;
|
||||
import com.ruoyi.api.domain.WmsJobRequest;
|
||||
import com.ruoyi.api.service.IToWmsService;
|
||||
import com.ruoyi.bas.BasProduct.domain.BasProduct;
|
||||
import com.ruoyi.bas.BasProduct.service.IBasProductService;
|
||||
import com.ruoyi.bas.BasProductCode.util.ProcodeUtils;
|
||||
import com.ruoyi.bas.basJobId.service.IBasJobIdService;
|
||||
import com.ruoyi.bas.cargoSpace.domain.BasCargoSpace;
|
||||
import com.ruoyi.bas.cargoSpace.service.IBasCargoSpaceService;
|
||||
import com.ruoyi.bas.container.domain.BasContainer;
|
||||
@@ -18,8 +22,13 @@ import com.ruoyi.bas.tag.service.IBasTagService;
|
||||
import com.ruoyi.bas.taskNo.service.IBasTaskNoService;
|
||||
import com.ruoyi.common.core.domain.AjaxResult;
|
||||
import com.ruoyi.common.utils.MessageUtils;
|
||||
import com.ruoyi.common.utils.SecurityUtils;
|
||||
import com.ruoyi.device.agv.domain.AgvContainerTask;
|
||||
import com.ruoyi.device.agv.service.IAgvContainerTaskService;
|
||||
import com.ruoyi.in.stockin.domain.InStockin;
|
||||
import com.ruoyi.in.stockin.service.IInStockinService;
|
||||
import com.ruoyi.in.stockindetail.domain.InStockinDetail;
|
||||
import com.ruoyi.in.stockindetail.service.IInStockinDetailService;
|
||||
import com.ruoyi.job.mydojob.domain.MydoJob;
|
||||
import com.ruoyi.job.mydojob.service.IMydoJobService;
|
||||
import com.ruoyi.job.mydojobdetail.domain.MydoJobDetail;
|
||||
@@ -58,77 +67,110 @@ public class ToWmsServiceImpl implements IToWmsService {
|
||||
@Autowired
|
||||
private IBasCargoSpaceService basCargoSpaceService;
|
||||
@Autowired
|
||||
private IOutStockoutDetailService outStockoutDetailService;
|
||||
@Autowired
|
||||
private IOutStockoutService outStockoutService;
|
||||
@Autowired
|
||||
private IAgvContainerTaskService agvContainerTaskService;
|
||||
|
||||
@Autowired
|
||||
private IBasProductService basProductService;
|
||||
@Autowired
|
||||
private IBasJobIdService basJobIdService;
|
||||
|
||||
|
||||
@Override
|
||||
public AjaxResult requestEnterByTrayCode(RequestEnter requestEnter) {
|
||||
MydoJob mydoJobParam = new MydoJob();
|
||||
mydoJobParam.setTrayCode(requestEnter.getTrayCode());
|
||||
List<MydoJob> mydoJobs = mydoJobService.selectMydoJobListApi(mydoJobParam);
|
||||
if(mydoJobs.isEmpty()){
|
||||
return AjaxResult.warn(MessageUtils.message("warn.message"));
|
||||
if (StrUtil.isEmpty(requestEnter.getTrayCode())) {
|
||||
return AjaxResult.error("托盘条码不能为空");
|
||||
}
|
||||
MydoJob mydoJob = mydoJobs.get(0);
|
||||
if ("1".equals(mydoJob.getExecutionPhase())){
|
||||
mydoJob.setExecutionPhase("2");
|
||||
mydoJob.setEntranceId(requestEnter.getEntranceId());
|
||||
mydoJob.setStatus("2");
|
||||
mydoJobService.updateMydoJob(mydoJob);
|
||||
log.info("扫码内容{}", requestEnter.getTrayCode());
|
||||
|
||||
//解析扫码内容
|
||||
String trayCode = requestEnter.getTrayCode();
|
||||
String[] split = trayCode.split(" ");
|
||||
String model = split[0].substring(6);
|
||||
String color = split[1].substring(6);
|
||||
String serial = split[2].substring(7);
|
||||
String v = split[3].substring(2);
|
||||
String hz = split[4].substring(3);
|
||||
String ph = split[5].substring(3);
|
||||
String nw = split[6].substring(5);
|
||||
String gw = split[7].substring(5);
|
||||
String bm = split[8].substring(2, split[8].length() - 1);
|
||||
String[] decode = ProcodeUtils.decode(bm);
|
||||
String erpBill = decode[0];
|
||||
String xh = decode[1];
|
||||
String jx = decode[2];
|
||||
String fx = decode[3];
|
||||
String xlh = decode[4];
|
||||
log.info("二维码详情 model:{},color:{},serial:{},v:{},hz:{},ph:{},nw:{},gw:{},erpBill:{},xh:{},jx:{},fx:{},xlh:{}", model, color, serial, v, hz, ph, nw, gw,erpBill, xh, jx, fx, xlh);
|
||||
|
||||
BasProduct basProductParam = new BasProduct();
|
||||
basProductParam.setSpare4(xlh);
|
||||
List<BasProduct> basProducts = basProductService.selectBasProductList(basProductParam);
|
||||
if (CollUtil.isEmpty(basProducts)) {
|
||||
return AjaxResult.error("物料信息不存在");
|
||||
}
|
||||
return AjaxResult.success(new RequestEnterResponse(mydoJob.getCargoSpaceId(),mydoJob.getTrayCode(),mydoJob.getTaskNo()));
|
||||
BasProduct basProduct = basProducts.get(0);
|
||||
if (!basProduct.getSpec().equals(requestEnter.getSpec())){
|
||||
return AjaxResult.error("规格不一致");
|
||||
}
|
||||
//生成作业
|
||||
MydoJob mydoJob = new MydoJob();
|
||||
mydoJob.setJobId(basJobIdService.getJobId("RK"));
|
||||
mydoJob.setStatus("1");
|
||||
mydoJob.setTaskNo(Convert.toStr(basTaskNoService.getTaskNo("1")));
|
||||
mydoJob.setDepartmentId(Convert.toStr(SecurityUtils.getDeptId()));
|
||||
mydoJob.setTrayCode(requestEnter.getTrayCode());
|
||||
|
||||
|
||||
|
||||
return AjaxResult.success();
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public AjaxResult jobFinish(WmsJobRequest wmsJobRequest) {
|
||||
MydoJob mydoJobParam = new MydoJob();
|
||||
switch (wmsJobRequest.getWmsType()){
|
||||
switch (wmsJobRequest.getWmsType()) {
|
||||
case "1":
|
||||
if (StrUtil.isEmpty(wmsJobRequest.getTrayCode())){
|
||||
if (StrUtil.isEmpty(wmsJobRequest.getTrayCode())) {
|
||||
return AjaxResult.error(MessageUtils.message("error.message1"));
|
||||
}
|
||||
if (StrUtil.isEmpty(wmsJobRequest.getTaskNo())){
|
||||
if (StrUtil.isEmpty(wmsJobRequest.getTaskNo())) {
|
||||
return AjaxResult.error(MessageUtils.message("error.message2"));
|
||||
}
|
||||
//入库
|
||||
mydoJobParam.setTaskNo(wmsJobRequest.getTaskNo());
|
||||
mydoJobParam.setTrayCode(wmsJobRequest.getTrayCode());
|
||||
List<MydoJob> inMydoJobs = mydoJobService.selectMydoJobListApi(mydoJobParam);
|
||||
if (inMydoJobs.isEmpty()){
|
||||
if (inMydoJobs.isEmpty()) {
|
||||
return AjaxResult.error(MessageUtils.message("warn.message"));
|
||||
}
|
||||
MydoJob inMydoJob = inMydoJobs.get(0);
|
||||
mydoJobService.manualCompleted(inMydoJob,1);
|
||||
mydoJobService.manualCompleted(inMydoJob, 1);
|
||||
break;
|
||||
case "2":
|
||||
if (StrUtil.isEmpty(wmsJobRequest.getPickSsj())){
|
||||
if (StrUtil.isEmpty(wmsJobRequest.getPickSsj())) {
|
||||
return AjaxResult.error(MessageUtils.message("error.message3"));
|
||||
}
|
||||
if (StrUtil.isEmpty(wmsJobRequest.getTaskNo())){
|
||||
if (StrUtil.isEmpty(wmsJobRequest.getTaskNo())) {
|
||||
return AjaxResult.error(MessageUtils.message("error.message2"));
|
||||
}
|
||||
//出库
|
||||
mydoJobParam.setTaskNo(wmsJobRequest.getTaskNo());
|
||||
//mydoJobParam.setTrayCode(wmsJobRequest.getTrayCode());
|
||||
List<MydoJob> outMydoJobs = mydoJobService.selectMydoJobListApi(mydoJobParam);
|
||||
if (outMydoJobs.isEmpty()){
|
||||
if (outMydoJobs.isEmpty()) {
|
||||
return AjaxResult.error(MessageUtils.message("warn.message"));
|
||||
}
|
||||
MydoJob outJob = outMydoJobs.get(0);
|
||||
//料箱出库 需同步电子标签
|
||||
if("23".equals(outJob.getInOrOut())){
|
||||
if ("23".equals(outJob.getInOrOut())) {
|
||||
//查询拣选工位绑定的电子标签
|
||||
BasTag tagParam = new BasTag();
|
||||
tagParam.setPickAdd(wmsJobRequest.getPickSsj());
|
||||
tagParam.setSpare3("1");
|
||||
List<BasTag> tags = iBasTagService.selectBasTagList(tagParam);
|
||||
if (tags.isEmpty()){
|
||||
if (tags.isEmpty()) {
|
||||
return AjaxResult.error(MessageUtils.message("error.message4"));
|
||||
}
|
||||
BasTag basTag = tags.get(0);
|
||||
@@ -154,13 +196,13 @@ public class ToWmsServiceImpl implements IToWmsService {
|
||||
}
|
||||
break;
|
||||
case "3":
|
||||
if (StrUtil.isEmpty(wmsJobRequest.getContainerCode())){
|
||||
if (StrUtil.isEmpty(wmsJobRequest.getContainerCode())) {
|
||||
return AjaxResult.error(MessageUtils.message("error.message5"));
|
||||
}
|
||||
if (StrUtil.isEmpty(wmsJobRequest.getPositionCode1())){
|
||||
if (StrUtil.isEmpty(wmsJobRequest.getPositionCode1())) {
|
||||
return AjaxResult.error(MessageUtils.message("error.message6"));
|
||||
}
|
||||
if (StrUtil.isEmpty(wmsJobRequest.getPositionCode2())){
|
||||
if (StrUtil.isEmpty(wmsJobRequest.getPositionCode2())) {
|
||||
return AjaxResult.error(MessageUtils.message("error.message7"));
|
||||
}
|
||||
//agv搬运作业
|
||||
@@ -169,7 +211,7 @@ public class ToWmsServiceImpl implements IToWmsService {
|
||||
basContainerParam.setContainerId(wmsJobRequest.getContainerCode());
|
||||
//basContainerParam.setPortName(wmsJobRequest.getPositionCode2());
|
||||
List<BasContainer> basContainers = basContainerService.selectBasContainerList(basContainerParam);
|
||||
if (basContainers.isEmpty()){
|
||||
if (basContainers.isEmpty()) {
|
||||
log.error("没有该料架 {}", wmsJobRequest.getContainerCode());
|
||||
return AjaxResult.error(MessageUtils.message("error.message11"));
|
||||
}
|
||||
@@ -182,7 +224,7 @@ public class ToWmsServiceImpl implements IToWmsService {
|
||||
AgvContainerTask agvContainerTaskParam = new AgvContainerTask();
|
||||
agvContainerTaskParam.setContainer(basContainer.getContainerId());
|
||||
List<AgvContainerTask> agvContainerTasks = agvContainerTaskService.selectAgvContainerTaskList(agvContainerTaskParam);
|
||||
if (CollUtil.isNotEmpty(agvContainerTasks)){
|
||||
if (CollUtil.isNotEmpty(agvContainerTasks)) {
|
||||
for (AgvContainerTask agvContainerTask : agvContainerTasks) {
|
||||
agvContainerTask.setStatus("2");
|
||||
agvContainerTask.setFinishTime(DateUtil.formatDateTime(new Date()));
|
||||
@@ -205,10 +247,10 @@ public class ToWmsServiceImpl implements IToWmsService {
|
||||
MydoJob mydoJob = mydoJobService.selectMydoJobByJobId(reMaterialParam.getJobId());
|
||||
String warehouseId = mydoJob.getWarehouseId();
|
||||
BasCargoSpace basCargoSpace = basCargoSpaceService.selectEmptyCargoSpaceByWarehouseId(warehouseId);
|
||||
if (basCargoSpace == null){
|
||||
if (basCargoSpace == null) {
|
||||
log.error("没有空货位");
|
||||
return AjaxResult.error(MessageUtils.message("error.message20"));
|
||||
}else {
|
||||
} else {
|
||||
mydoJob.setCargoSpaceId(basCargoSpace.getCargoSpaceId());
|
||||
mydoJob.setFaultFlag("1");
|
||||
mydoJobService.updateMydoJob(mydoJob);
|
||||
@@ -235,13 +277,13 @@ public class ToWmsServiceImpl implements IToWmsService {
|
||||
*/
|
||||
@Override
|
||||
public AjaxResult startSignal(RequestEnter requestEnter) {
|
||||
switch (requestEnter.getWmsType()){
|
||||
/*switch (requestEnter.getWmsType()) {
|
||||
case "1":
|
||||
case "2":
|
||||
MydoJob mydoJobParam = new MydoJob();
|
||||
mydoJobParam.setTaskNo(requestEnter.getTaskNo());
|
||||
List<MydoJob> mydoJobs = mydoJobService.selectMydoJobListApi(mydoJobParam);
|
||||
if (mydoJobs.isEmpty()){
|
||||
if (mydoJobs.isEmpty()) {
|
||||
return AjaxResult.error();
|
||||
}
|
||||
for (MydoJob mydoJob1 : mydoJobs) {
|
||||
@@ -254,7 +296,7 @@ public class ToWmsServiceImpl implements IToWmsService {
|
||||
AgvContainerTask agvContainerTaskParam = new AgvContainerTask();
|
||||
agvContainerTaskParam.setTaskNo(requestEnter.getTaskNo());
|
||||
List<AgvContainerTask> agvContainerTasks = agvContainerTaskService.selectAgvContainerTaskList(agvContainerTaskParam);
|
||||
if (CollUtil.isEmpty(agvContainerTasks)){
|
||||
if (CollUtil.isEmpty(agvContainerTasks)) {
|
||||
return AjaxResult.error();
|
||||
}
|
||||
for (AgvContainerTask agvContainerTask : agvContainerTasks) {
|
||||
@@ -265,22 +307,24 @@ public class ToWmsServiceImpl implements IToWmsService {
|
||||
return AjaxResult.success();
|
||||
default:
|
||||
return AjaxResult.error();
|
||||
}
|
||||
}*/
|
||||
return AjaxResult.success();
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* ctu取完箱子反馈
|
||||
* @param map{
|
||||
* "portCode"
|
||||
* "wmsType"
|
||||
* }
|
||||
*
|
||||
* @param map{ "portCode"
|
||||
* "wmsType"
|
||||
* }
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public AjaxResult takeCompleted(Map<String, Object> map) {
|
||||
String wmsType = Convert.toStr(map.get("wmsType"));
|
||||
|
||||
switch (wmsType){
|
||||
switch (wmsType) {
|
||||
case "1":
|
||||
//流利架入库
|
||||
String lljCode = Convert.toStr(map.get("portCode"));
|
||||
@@ -291,20 +335,20 @@ public class ToWmsServiceImpl implements IToWmsService {
|
||||
basTag.setSpare2("2");
|
||||
iBasTagService.updateBasTag(basTag);
|
||||
}
|
||||
case "2":
|
||||
case "2":
|
||||
|
||||
break;
|
||||
case "3":
|
||||
//小车搬运料架
|
||||
String startPoint = Convert.toStr(map.get("portCode"));
|
||||
BasContainer basContainerParam = new BasContainer();
|
||||
basContainerParam.setPortName(startPoint);
|
||||
List<BasContainer> basContainers = basContainerService.selectBasContainerList(basContainerParam);
|
||||
for (BasContainer basContainer : basContainers) {
|
||||
basContainer.setPortName("");
|
||||
basContainerService.updateBasContainer(basContainer);
|
||||
}
|
||||
break;
|
||||
case "3":
|
||||
//小车搬运料架
|
||||
String startPoint = Convert.toStr(map.get("portCode"));
|
||||
BasContainer basContainerParam = new BasContainer();
|
||||
basContainerParam.setPortName(startPoint);
|
||||
List<BasContainer> basContainers = basContainerService.selectBasContainerList(basContainerParam);
|
||||
for (BasContainer basContainer : basContainers) {
|
||||
basContainer.setPortName("");
|
||||
basContainerService.updateBasContainer(basContainer);
|
||||
}
|
||||
break;
|
||||
default:
|
||||
throw new RuntimeException("wmsType错误");
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user