add:添加刻字回流
This commit is contained in:
@@ -15,6 +15,7 @@ import org.nl.common.TableDataInfo;
|
||||
import org.nl.common.anno.Log;
|
||||
import org.nl.common.domain.query.PageQuery;
|
||||
import org.nl.common.enums.WorkerOrderEnum;
|
||||
import org.nl.common.utils.MapOf;
|
||||
import org.nl.common.utils.RedissonUtils;
|
||||
import org.nl.common.utils.SecurityUtils;
|
||||
import org.nl.wms.product_manage.service.device.IPdmBiDeviceService;
|
||||
@@ -69,7 +70,13 @@ public class PdmProduceWorkorderController {
|
||||
public ResponseEntity<Object> queryPad(@RequestBody WorkorderQuery query) {
|
||||
PageQuery page = new PageQuery();page.setPage(0);page.setSize(99);
|
||||
query.setOrder_status(WorkerOrderEnum.PRODUCTING.getCode());
|
||||
return new ResponseEntity<>(iPdmProduceWorkorderService.queryAll(query, page), HttpStatus.OK);
|
||||
TableDataInfo tableDataInfo = iPdmProduceWorkorderService.queryAll(query, page);
|
||||
List content = tableDataInfo.getContent();
|
||||
content.add(MapOf.of("device_code","A1_KZ_14",
|
||||
"workorder_code","刻字回流点",
|
||||
"material_code","刻字回流点",
|
||||
"material_spec","刻字回流点","material_name","刻字回流点"));
|
||||
return new ResponseEntity<>(tableDataInfo,HttpStatus.OK);
|
||||
}
|
||||
|
||||
@PostMapping("/create")
|
||||
|
||||
@@ -3,6 +3,7 @@ package org.nl.wms.product_manage.service.workorder;
|
||||
import com.alibaba.fastjson.JSONArray;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import org.nl.common.TableDataInfo;
|
||||
import org.nl.common.domain.query.PageQuery;
|
||||
import org.nl.wms.product_manage.service.workorder.dao.PdmProduceWorkorder;
|
||||
import org.nl.wms.product_manage.service.workorder.dto.PdmProduceWorkorderDto;
|
||||
@@ -33,7 +34,7 @@ public interface IPdmProduceWorkorderService extends IService<PdmProduceWorkorde
|
||||
* @param page 分页参数
|
||||
* @return Map<String,Object>
|
||||
*/
|
||||
Object queryAll(WorkorderQuery whereJson, PageQuery page);
|
||||
TableDataInfo queryAll(WorkorderQuery whereJson, PageQuery page);
|
||||
|
||||
/**
|
||||
* 查询所有数据不分页
|
||||
|
||||
@@ -98,7 +98,7 @@ public class IPdmProduceWorkorderServiceImpl extends ServiceImpl<PdmProduceWorko
|
||||
private ISchBaseTaskService taskService;
|
||||
|
||||
@Override
|
||||
public Object queryAll(WorkorderQuery query, PageQuery pageQuery) {
|
||||
public TableDataInfo queryAll(WorkorderQuery query, PageQuery pageQuery) {
|
||||
if (!StringUtils.isEmpty(query.getProduct_series())) {
|
||||
String collect = classstandardService.getChildIdStr(query.getProduct_series())
|
||||
.stream().collect(Collectors.joining("','"));
|
||||
|
||||
@@ -61,7 +61,9 @@ public class EngraveCallService {
|
||||
|
||||
public void createTask(JSONArray param){
|
||||
// [{"device_code":"A1_KZ_06","weight":"27160.500"},{"device_code":"A1_KZ_04","weight":"27160.500"}]
|
||||
Assert.notNull(param,"请求参数不能为空");
|
||||
if (param.size()==0){
|
||||
throw new BadRequestException("请求参数不能为空");
|
||||
}
|
||||
String struct_code = null;
|
||||
List<String> kzDevice= new ArrayList<>();
|
||||
Map<String, String> map = new HashMap<>();
|
||||
@@ -71,28 +73,31 @@ public class EngraveCallService {
|
||||
kzDevice.add(item.getString("device_code"));
|
||||
map.put(item.getString("device_code"),item.getString("weight"));
|
||||
}
|
||||
List<PdmProduceWorkorder> workorders = workorderService.list(new QueryWrapper<PdmProduceWorkorder>()
|
||||
.eq("workprocedure_id", ENGRAVE_WORKPRODURE)
|
||||
.in("device_code", kzDevice)
|
||||
.eq("workorder_status", WorkerOrderEnum.PRODUCTING.getCode()));
|
||||
if (workorders.size()!=kzDevice.size()){
|
||||
throw new BadRequestException("当前刻字工单不在生产状态");
|
||||
}
|
||||
if (workorders.stream().map(PdmProduceWorkorder::getMaterial_id).collect(Collectors.toSet()).size()>1){
|
||||
throw new BadRequestException("所选刻字机的物料规格不是同一种");
|
||||
}
|
||||
kzDevice.remove("A1_KZ_14");
|
||||
StIvtStructivtBcp stIvtStructivt = iStIvtStructivtBcpService.getOne(new QueryWrapper<StIvtStructivtBcp>()
|
||||
.eq("struct_code", struct_code));
|
||||
if(!workorders.get(0).getMaterial_id().equals(stIvtStructivt.getMaterial_id())){
|
||||
throw new BadRequestException("半成品库存物料规格与刻字机工单物料不一致");
|
||||
}
|
||||
List<SchBaseTask> list = taskService.list(new QueryWrapper<SchBaseTask>()
|
||||
.lt("task_status", StatusEnum.TASK_FINISH.getCode())
|
||||
.in("task_type", AcsTaskEnum.TASK_STRUCT_OUT.getCode(),AcsTaskEnum.TASK_Engrave_CALL.getCode(), AcsTaskEnum.TASK_Engrave_EMPTY.getCode()));
|
||||
if (!CollectionUtils.isEmpty(list)){
|
||||
throw new BadRequestException("存在正在执行的刻字上料相关任务:"+list.stream().map(SchBaseTask::getTask_code).collect(Collectors.joining(",")));
|
||||
}
|
||||
.eq("struct_code", struct_code));
|
||||
if (!CollectionUtils.isEmpty(kzDevice)){
|
||||
List<PdmProduceWorkorder> workorders = workorderService.list(new QueryWrapper<PdmProduceWorkorder>()
|
||||
.eq("workprocedure_id", ENGRAVE_WORKPRODURE)
|
||||
.in("device_code", kzDevice)
|
||||
.eq("workorder_status", WorkerOrderEnum.PRODUCTING.getCode()));
|
||||
if (workorders.size()!=kzDevice.size()){
|
||||
throw new BadRequestException("当前刻字工单不在生产状态");
|
||||
}
|
||||
if (workorders.stream().map(PdmProduceWorkorder::getMaterial_id).collect(Collectors.toSet()).size()>1){
|
||||
throw new BadRequestException("所选刻字机的物料规格不是同一种");
|
||||
}
|
||||
|
||||
if(!workorders.get(0).getMaterial_id().equals(stIvtStructivt.getMaterial_id())){
|
||||
throw new BadRequestException("半成品库存物料规格与刻字机工单物料不一致");
|
||||
}
|
||||
List<SchBaseTask> list = taskService.list(new QueryWrapper<SchBaseTask>()
|
||||
.lt("task_status", StatusEnum.TASK_FINISH.getCode())
|
||||
.in("task_type", AcsTaskEnum.TASK_STRUCT_OUT.getCode(),AcsTaskEnum.TASK_Engrave_CALL.getCode(), AcsTaskEnum.TASK_Engrave_EMPTY.getCode()));
|
||||
if (!CollectionUtils.isEmpty(list)){
|
||||
throw new BadRequestException("存在正在执行的刻字上料相关任务:"+list.stream().map(SchBaseTask::getTask_code).collect(Collectors.joining(",")));
|
||||
}
|
||||
}
|
||||
JSONObject form = new JSONObject();
|
||||
form.put("stor_id", IOSEnum.STOR_CODE.code("半成品仓库"));//st_ivt_sectattr紫铜车间-半成品库区
|
||||
form.put("sect_id",IOSEnum.SECT_CODE.code("半成品库区"));
|
||||
|
||||
Reference in New Issue
Block a user