出库单据

This commit is contained in:
张怡蓉
2025-09-24 10:40:08 +08:00
parent e1bb244091
commit e055bc4920
7 changed files with 79 additions and 22 deletions

View File

@@ -29,12 +29,23 @@ public class ToWmsApiController {
private IRequestLogService requestLogService;
/**
* 入库任务请求
* 入库请求生成作业
*/
@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;
}
/**
* 请求补码作业
*/
@RequestMapping("/requestByNoTrayCode")
public AjaxResult startSignal(@RequestBody RequestEnter requestEnter) {
AjaxResult ajaxResult = toWmsService.selectMydoJobByEntranceId(requestEnter);
RequestLog requestLog = requestLogService.getRequestLog(JSONUtil.toJsonStr(requestEnter), "请求补码作业",ajaxResult);
requestLogService.insertRequestLog(requestLog);
return ajaxResult;
}

View File

@@ -16,6 +16,8 @@ public interface IToWmsService {
*/
AjaxResult requestEnterByTrayCode(RequestEnter requestEnter);
AjaxResult selectMydoJobByEntranceId(RequestEnter requestEnter);
/**
* 入库、出库 任务完成回传
* Map<String, String>

View File

@@ -104,26 +104,26 @@ public class ToWmsServiceImpl implements IToWmsService {
}
log.info("生成调拨单{}", saveTransferBill);
//解析扫码内容
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, split[6].length() - 2);
String gw = split[7].substring(5, split[7].length() - 2);
String productId = split[8].substring(10);
String bm = split[9].substring(2, split[9].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("二维码详情 productId:{} model:{},color:{},serial:{},v:{},hz:{},ph:{},nw:{},gw:{},erpBill:{},xh:{},jx:{},fx:{},xlh:{}", productId, model, color, serial, v, hz, ph, nw, gw, erpBill, xh, jx, fx, xlh);
//解析扫码内容
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, split[6].length() - 2);
String gw = split[7].substring(5, split[7].length() - 2);
String productId = split[8].substring(10);
String bm = split[9].substring(2, split[9].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("二维码详情 productId:{} model:{},color:{},serial:{},v:{},hz:{},ph:{},nw:{},gw:{},erpBill:{},xh:{},jx:{},fx:{},xlh:{}", productId, model, color, serial, v, hz, ph, nw, gw, erpBill, xh, jx, fx, xlh);
//查询物料信息
BasProduct basProductParam = new BasProduct();
@@ -237,15 +237,46 @@ public class ToWmsServiceImpl implements IToWmsService {
transferBillCallback.setStatus("1");
transferBillCallbackService.insertTransferBillCallback(transferBillCallback);
}
//修改作业状态为正执行
HashMap<String,String> result = new HashMap<>();
result.put("jobId", mydoJob.getJobId());
result.put("taskNo", mydoJob.getTaskNo());
result.put("cargoSpaceId", mydoJob.getCargoSpaceId());
result.put("roadwayId", mydoJob.getRoadwayId());
result.put("entranceId", mydoJob.getEntranceId());
return AjaxResult.success(result);
}
@Override
public AjaxResult selectMydoJobByEntranceId(RequestEnter requestEnter) {
MydoJob mydoJob = new MydoJob();
mydoJob.setStatus("1");
mydoJob.setEntranceId("G1005");
MydoJob mydoJob2 = mydoJobService.selectMydoJobByEntranceId(mydoJob);
if(mydoJob2 != null){
//todo 根据包装方式 主要包装方式 描述 长 宽 高 包装材积 判断巷道1 还是巷道2
switch (requestEnter.getSize()) {
case "1":
mydoJob.setRoadwayId("1");
break;
case "2":
mydoJob.setRoadwayId("2");
break;
case "4":
break;
default:
return AjaxResult.error("规格不存在");
}
}
//查子作业,查物料规格,判断是否对的上
return null;
}
@Override
public AjaxResult jobFinish(WmsJobRequest wmsJobRequest) {

View File

@@ -72,4 +72,6 @@ public interface MydoJobMapper
void pointOut(HashMap<String, Object> map);
MydoJob selectByTrayCode(String trayCode);
MydoJob selectMydoJobByEntranceId(MydoJob mydoJob);
}

View File

@@ -105,4 +105,6 @@ public interface IMydoJobService
* @return
*/
MydoJob selectMydoJobByTrayCode(String trayCode);
MydoJob selectMydoJobByEntranceId(MydoJob mydoJob);
}

View File

@@ -436,4 +436,9 @@ public class MydoJobServiceImpl implements IMydoJobService {
public MydoJob selectMydoJobByTrayCode(String trayCode) {
return mydoJobMapper.selectByTrayCode(trayCode);
}
@Override
public MydoJob selectMydoJobByEntranceId(MydoJob mydoJob) {
return mydoJobMapper.selectMydoJobByEntranceId(mydoJob);
}
}

View File

@@ -227,4 +227,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<include refid="selectMydoJobVo"/>
where mj.tray_code = #{trayCode}
</select>
<select id="selectMydoJobByEntranceId" parameterType="MydoJob" resultMap="MydoJobResult">
select top(1)* from mydo_job mj where in_or_out&lt;20 and mj.entrance_id = #{entranceId} and mj.status = #{status} order by mj.create_time
</select>
</mapper>