add:增加混碾满料接口,混碾工单增加任务下发和工单完成功能,物料维护增加泥料编码
This commit is contained in:
@@ -61,4 +61,6 @@ public interface AcsToWmsService {
|
||||
BaseResponse woodenPalletBinding(JSONObject param);
|
||||
|
||||
JSONObject errorDeviceRecord(JSONObject param);
|
||||
/** 混碾机满料 任务不下发*/
|
||||
BaseResponse mixFull(JSONObject param);
|
||||
}
|
||||
|
||||
@@ -580,6 +580,10 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
|
||||
return BaseResponse.responseError(requestNo, "未找到工单号[" + workorderCode + "]的记录!");
|
||||
}
|
||||
bdWorkorder.setWorkorder_status(WorkOrderStatusEnum.COMPLETE.getCode());
|
||||
//如果是混碾工单,则先暂存,手持或者lms那边再手动进行工单完成
|
||||
if("HN".equals(bdWorkorder.getRegion_code())){
|
||||
bdWorkorder.setWorkorder_status(WorkOrderStatusEnum.STAGING.getCode());
|
||||
}
|
||||
bdWorkorder.setRealproduceend_date(DateUtil.now());
|
||||
TaskUtils.setWorkOrderUpdateByAcs(bdWorkorder);
|
||||
// 统计合不合格数量到工单字段中
|
||||
@@ -1059,4 +1063,27 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
|
||||
result.put("message", "故障上报完成!");
|
||||
return result;
|
||||
}
|
||||
|
||||
@Override
|
||||
public BaseResponse mixFull(JSONObject param) {
|
||||
String requestNo = param.getString("requestNo");
|
||||
String workorderCode = param.getString("order_code");
|
||||
// String deviceCode = param.getString("device_code");
|
||||
String weight = param.getString("weight");
|
||||
if (ObjectUtil.isEmpty(workorderCode)) {
|
||||
return BaseResponse.responseError(requestNo,"工单号不能为空");
|
||||
}
|
||||
if (ObjectUtil.isEmpty(weight)) {
|
||||
return BaseResponse.responseError(requestNo,"生产重量不能为空");
|
||||
}
|
||||
PdmBdWorkorder workorder = workorderService.getByCode(workorderCode);
|
||||
if (ObjectUtil.isEmpty(workorder)){
|
||||
return BaseResponse.responseError(requestNo,"未查询到相应工单");
|
||||
}
|
||||
BigDecimal bigDecimal = BigDecimal.valueOf(Long.parseLong(weight));
|
||||
workorder.setReal_weight(workorder.getReal_weight().add(bigDecimal));
|
||||
workorder.setWorkorder_status(WorkOrderStatusEnum.STAGING.getCode());
|
||||
workorderService.update(workorder);
|
||||
return BaseResponse.responseOk(requestNo);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -261,4 +261,18 @@ public class PdaController {
|
||||
return new ResponseEntity<>(pdaService.updateData(shelfSaveDto), HttpStatus.OK);
|
||||
}
|
||||
|
||||
|
||||
@PostMapping("/orderFinish")
|
||||
@Log("工单完成")
|
||||
@ApiOperation("工单完成")
|
||||
public ResponseEntity<Object> orderFinish(@RequestBody OrderFinishReq req) {
|
||||
return new ResponseEntity<>(pdaService.orderFinish(req), HttpStatus.OK);
|
||||
}
|
||||
|
||||
@PostMapping("/hnmlTask")
|
||||
@Log("工单完成")
|
||||
@ApiOperation("工单完成")
|
||||
public ResponseEntity<Object> hnmlTask(@RequestBody OrderFinishReq req) {
|
||||
return new ResponseEntity<>(pdaService.hnmlTask(req), HttpStatus.OK);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -65,4 +65,8 @@ public interface PdaService {
|
||||
PdaResponseVo updateData(ShelfSaveDto shelfSaveDto);
|
||||
|
||||
List<DropdownListVo> pressPointList();
|
||||
|
||||
PdaResponseVo orderFinish(OrderFinishReq req);
|
||||
|
||||
PdaResponseVo hnmlTask(OrderFinishReq req);
|
||||
}
|
||||
|
||||
@@ -0,0 +1,12 @@
|
||||
package org.nl.wms.pda.service.dao.dto;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* @author sxp
|
||||
*/
|
||||
@Data
|
||||
public class OrderFinishReq {
|
||||
private String orderCode;
|
||||
private String barCode;
|
||||
}
|
||||
@@ -6,11 +6,13 @@ import cn.hutool.core.util.ObjectUtil;
|
||||
import com.alibaba.fastjson.JSONArray;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.lang.StringUtils;
|
||||
import org.nl.common.exception.BadRequestException;
|
||||
import org.nl.common.utils.SecurityUtils;
|
||||
import org.nl.wms.database.material.service.IMdBaseMaterialService;
|
||||
import org.nl.wms.database.material.service.dao.MdBaseMaterial;
|
||||
import org.nl.wms.ext.acs.service.WmsToAcsService;
|
||||
import org.nl.wms.ext.acs.service.dto.to.BaseResponse;
|
||||
import org.nl.wms.ext.acs.service.dto.to.acs.DeviceInfoDto;
|
||||
import org.nl.wms.ext.acs.service.dto.to.wms.AcsResponse;
|
||||
import org.nl.wms.pda.service.PdaService;
|
||||
@@ -389,6 +391,44 @@ public class PdaServiceImpl implements PdaService {
|
||||
return pdaMapper.getAllPressPoint();
|
||||
}
|
||||
|
||||
@Override
|
||||
public PdaResponseVo orderFinish(OrderFinishReq req) {
|
||||
if (StringUtils.isEmpty(req.getOrderCode())) {
|
||||
throw new BadRequestException("工单不能为空");
|
||||
}
|
||||
PdmBdWorkorder bdWorkorder = workorderService.getByCode(req.getOrderCode());
|
||||
if (bdWorkorder == null) {
|
||||
throw new BadRequestException("未找到对应工单");
|
||||
}
|
||||
if (!WorkOrderStatusEnum.STAGING.getCode().equals(bdWorkorder.getWorkorder_status())){
|
||||
throw new BadRequestException("只能选择暂存中的工单");
|
||||
}
|
||||
bdWorkorder.setWorkorder_status(WorkOrderStatusEnum.COMPLETE.getCode());
|
||||
bdWorkorder.setRealproduceend_date(DateUtil.now());
|
||||
TaskUtils.setWorkOrderUpdateByAcs(bdWorkorder);
|
||||
// 统计合不合格数量到工单字段中
|
||||
workorderService.updateById(bdWorkorder);
|
||||
return PdaResponseVo.pdaResultOk("工单完成");
|
||||
}
|
||||
|
||||
@Override
|
||||
public PdaResponseVo hnmlTask(OrderFinishReq req) {
|
||||
if (StringUtils.isEmpty(req.getOrderCode())) {
|
||||
throw new BadRequestException("工单不能为空");
|
||||
}
|
||||
if (StringUtils.isEmpty(req.getBarCode())) {
|
||||
throw new BadRequestException("条码不能为空");
|
||||
}
|
||||
//下发拆包机到货架的任务
|
||||
JSONObject param = new JSONObject();
|
||||
param.put("device_code", "CBJ01");
|
||||
param.put("config_code","HNMLTask");
|
||||
param.put("vehicle_code", req.getBarCode());
|
||||
param.put("workorder_code",req.getOrderCode());
|
||||
taskService.apply(param);
|
||||
return PdaResponseVo.pdaResultOk("包装入库请求成功");
|
||||
}
|
||||
|
||||
/**
|
||||
* 保存组盘信息
|
||||
* @param shelfSaveDto
|
||||
|
||||
@@ -15,7 +15,8 @@ public enum WorkOrderStatusEnum {
|
||||
ISSUED("2", "已下发"),
|
||||
PRODUCING("3", "生产中"),
|
||||
STOP("4", "暂停"),
|
||||
COMPLETE("5", "完成");
|
||||
COMPLETE("5", "完成"),
|
||||
STAGING("6", "暂存中");
|
||||
private final String code;
|
||||
private final String name;
|
||||
}
|
||||
|
||||
@@ -275,8 +275,10 @@ public class HNMLTask extends AbstractTask {
|
||||
BigDecimal weight = param.getBigDecimal("weight");
|
||||
// 泥料号
|
||||
String materialCode = param.getString("material_code");
|
||||
PdmBdWorkorder productionTask = workorderService.getByCode(param.getString("workorder_code"));
|
||||
|
||||
// 获取工单
|
||||
PdmBdWorkorder productionTask = workorderService.getDeviceDockingProductionTask(deviceCode);
|
||||
// PdmBdWorkorder productionTask = workorderService.getDeviceDockingProductionTask(deviceCode);
|
||||
SchBasePoint basePoint = pointService.getOne(new LambdaQueryWrapper<SchBasePoint>()
|
||||
.eq(SchBasePoint::getPoint_code, deviceCode)
|
||||
.eq(SchBasePoint::getIs_used, true));
|
||||
|
||||
Reference in New Issue
Block a user