rev:刻字上料方案修改
This commit is contained in:
@@ -78,7 +78,10 @@ public class AcsToWmsServiceImpl implements AcsToWmsService{
|
|||||||
try {
|
try {
|
||||||
RedissonUtils.lock(()->{
|
RedissonUtils.lock(()->{
|
||||||
//业务处理
|
//业务处理
|
||||||
Task_Collent.get(taskEnum).createTask(param);
|
AbstractAcsTask abstractAcsTask = Task_Collent.get(taskEnum);
|
||||||
|
if (abstractAcsTask!=null){
|
||||||
|
abstractAcsTask.createTask(param);
|
||||||
|
}
|
||||||
},param.getString("type"),5);
|
},param.getString("type"),5);
|
||||||
}catch (Exception ex){
|
}catch (Exception ex){
|
||||||
log.error("acs申请任务失败:ex:{}",ex.getMessage());
|
log.error("acs申请任务失败:ex:{}",ex.getMessage());
|
||||||
|
|||||||
@@ -12,7 +12,7 @@
|
|||||||
LEFT JOIN md_pb_measureunit unit ON unit.measure_unit_id = mater.base_unit_id
|
LEFT JOIN md_pb_measureunit unit ON unit.measure_unit_id = mater.base_unit_id
|
||||||
LEFT JOIN md_pb_classstandard class ON class.class_id = mater.material_type_id
|
LEFT JOIN md_pb_classstandard class ON class.class_id = mater.material_type_id
|
||||||
WHERE
|
WHERE
|
||||||
1 = 1
|
1 = 1 and mater.material_type_id = '1528555445302726656'
|
||||||
<if test="query.material_code != null and query.material_code != ''">
|
<if test="query.material_code != null and query.material_code != ''">
|
||||||
AND (mater.material_code LIKE '%${query.material_code}%' or
|
AND (mater.material_code LIKE '%${query.material_code}%' or
|
||||||
mater.material_name LIKE '%${query.material_code}%')
|
mater.material_name LIKE '%${query.material_code}%')
|
||||||
|
|||||||
@@ -33,6 +33,7 @@ import org.nl.wms.masterdata_manage.storage.service.storage.dao.StIvtSectattr;
|
|||||||
import org.nl.wms.masterdata_manage.storage.service.storage.dao.StIvtStructattr;
|
import org.nl.wms.masterdata_manage.storage.service.storage.dao.StIvtStructattr;
|
||||||
import org.nl.wms.scheduler_manage.service.extendtask.Engrave.EngraveCallService;
|
import org.nl.wms.scheduler_manage.service.extendtask.Engrave.EngraveCallService;
|
||||||
import org.nl.wms.scheduler_manage.service.extendtask.Engrave.EngraveSendEmpTask;
|
import org.nl.wms.scheduler_manage.service.extendtask.Engrave.EngraveSendEmpTask;
|
||||||
|
import org.nl.wms.scheduler_manage.service.extendtask.manage.TaskStatusEnum;
|
||||||
import org.nl.wms.scheduler_manage.service.extendtask.plotter.PlotterCallEmptyTask;
|
import org.nl.wms.scheduler_manage.service.extendtask.plotter.PlotterCallEmptyTask;
|
||||||
import org.nl.wms.scheduler_manage.service.point.ISchBasePointService;
|
import org.nl.wms.scheduler_manage.service.point.ISchBasePointService;
|
||||||
import org.nl.wms.scheduler_manage.service.point.dao.SchBasePoint;
|
import org.nl.wms.scheduler_manage.service.point.dao.SchBasePoint;
|
||||||
@@ -260,7 +261,13 @@ public class TmpKZController {
|
|||||||
JSONObject result = wmsToAcsService.request(jo, "api/wms/engravingIn");
|
JSONObject result = wmsToAcsService.request(jo, "api/wms/engravingIn");
|
||||||
if (!result.getString("status").equals("200")){
|
if (!result.getString("status").equals("200")){
|
||||||
log.error("刻字上料输送线任务下发异常:{}",result.getString("message"));
|
log.error("刻字上料输送线任务下发异常:{}",result.getString("message"));
|
||||||
|
baseTask.setRemark(result.getString("message"));
|
||||||
|
baseTask.setTask_status(TaskStatusEnum.SURE_START_ERROR.getCode());
|
||||||
|
taskService.updateById(baseTask);
|
||||||
throw new BadRequestException(result.getString("message"));
|
throw new BadRequestException(result.getString("message"));
|
||||||
|
}else {
|
||||||
|
baseTask.setTask_status(TaskStatusEnum.ISSUE.getCode());
|
||||||
|
taskService.updateById(baseTask);
|
||||||
}
|
}
|
||||||
}else {
|
}else {
|
||||||
taskService.operation(MapOf.of("method_name","immediateNotifyAcs","task_id",param.getString("task_id")));
|
taskService.operation(MapOf.of("method_name","immediateNotifyAcs","task_id",param.getString("task_id")));
|
||||||
|
|||||||
@@ -102,7 +102,7 @@ public class EngraveTranSportTask extends AbstractAcsTask {
|
|||||||
jo.put("to_sort_array", Arrays.stream(to_sort_array).collect(Collectors.joining(",")));
|
jo.put("to_sort_array", Arrays.stream(to_sort_array).collect(Collectors.joining(",")));
|
||||||
jo.put("to_devices_array",Arrays.stream(to_devices_array).collect(Collectors.joining(",")));
|
jo.put("to_devices_array",Arrays.stream(to_devices_array).collect(Collectors.joining(",")));
|
||||||
jo.put("to_weight_array", Arrays.stream(to_weight_array).collect(Collectors.joining(",")));
|
jo.put("to_weight_array", Arrays.stream(to_weight_array).collect(Collectors.joining(",")));
|
||||||
wms.asyncRequest(jo, "api/wms/engravingIn");
|
// wms.asyncRequest(jo, "api/wms/engravingIn");
|
||||||
taskService.save(baseTask);
|
taskService.save(baseTask);
|
||||||
return baseTask.getTask_id();
|
return baseTask.getTask_id();
|
||||||
}catch (Exception ex){
|
}catch (Exception ex){
|
||||||
@@ -130,7 +130,7 @@ public class EngraveTranSportTask extends AbstractAcsTask {
|
|||||||
baseTask.setTask_code(CodeUtil.getNewCode("TASK_CODE"));
|
baseTask.setTask_code(CodeUtil.getNewCode("TASK_CODE"));
|
||||||
baseTask.setTask_name( AcsTaskEnum.TASK_Engrave_CALL.getDesc());
|
baseTask.setTask_name( AcsTaskEnum.TASK_Engrave_CALL.getDesc());
|
||||||
baseTask.setTask_type( AcsTaskEnum.TASK_Engrave_CALL.getCode());
|
baseTask.setTask_type( AcsTaskEnum.TASK_Engrave_CALL.getCode());
|
||||||
baseTask.setTask_status(StatusEnum.TASK_PUBLISH.getCode());
|
baseTask.setTask_status(StatusEnum.TASK_CREATE.getCode());
|
||||||
baseTask.setPoint_code1("A1_KZ_SL");
|
baseTask.setPoint_code1("A1_KZ_SL");
|
||||||
baseTask.setPoint_code3(taskMap.entrySet().stream().map(a->a.getKey()).collect(Collectors.joining(",")));
|
baseTask.setPoint_code3(taskMap.entrySet().stream().map(a->a.getKey()).collect(Collectors.joining(",")));
|
||||||
baseTask.setMaterial_qty(new BigDecimal(canuse_qty));
|
baseTask.setMaterial_qty(new BigDecimal(canuse_qty));
|
||||||
|
|||||||
@@ -47,6 +47,7 @@ public class PointListener extends AbstraceListener<PointEvent> {
|
|||||||
task.put("material_qty", extParam.get("material_qty"));
|
task.put("material_qty", extParam.get("material_qty"));
|
||||||
task.put("table_fk_id", extParam.get("table_fk_id"));
|
task.put("table_fk_id", extParam.get("table_fk_id"));
|
||||||
task.put("qtyArr", JSON.toJSONString(extParam.get("qtyArr")));
|
task.put("qtyArr", JSON.toJSONString(extParam.get("qtyArr")));
|
||||||
|
task.put("task_step",1);
|
||||||
}
|
}
|
||||||
task.put("is_delete", StatusEnum.LOCK_OFF.getCode());
|
task.put("is_delete", StatusEnum.LOCK_OFF.getCode());
|
||||||
task.put("create_id", SecurityUtils.getCurrentUserId());
|
task.put("create_id", SecurityUtils.getCurrentUserId());
|
||||||
|
|||||||
@@ -104,7 +104,7 @@ public class WashCallEmptyTask extends AbstractAcsTask {
|
|||||||
@Override
|
@Override
|
||||||
@Transactional(rollbackFor = Exception.class)
|
@Transactional(rollbackFor = Exception.class)
|
||||||
public String createTask(JSONObject param) {
|
public String createTask(JSONObject param) {
|
||||||
|
RedissonUtils.lock(()->{
|
||||||
List<SchBaseTask> list = taskService.list(new QueryWrapper<SchBaseTask>()
|
List<SchBaseTask> list = taskService.list(new QueryWrapper<SchBaseTask>()
|
||||||
.lt("task_status", StatusEnum.TASK_FINISH.getCode())
|
.lt("task_status", StatusEnum.TASK_FINISH.getCode())
|
||||||
.eq("point_code3", param.getString("device_code")));
|
.eq("point_code3", param.getString("device_code")));
|
||||||
@@ -142,7 +142,9 @@ public class WashCallEmptyTask extends AbstractAcsTask {
|
|||||||
schBaseTask.setTask_status(StatusEnum.TASK_START_ERROR.getCode());
|
schBaseTask.setTask_status(StatusEnum.TASK_START_ERROR.getCode());
|
||||||
taskService.updateById(schBaseTask);
|
taskService.updateById(schBaseTask);
|
||||||
}
|
}
|
||||||
return task.getString("task_id");
|
},AcsTaskEnum.REQUEST_WARP_SEND_EMP.getCode(),2);
|
||||||
|
|
||||||
|
return null;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -2,12 +2,10 @@ package org.nl.wms.storage_manage.pda.controller;
|
|||||||
|
|
||||||
|
|
||||||
import com.alibaba.fastjson.JSONObject;
|
import com.alibaba.fastjson.JSONObject;
|
||||||
import io.swagger.annotations.ApiOperation;
|
|
||||||
import org.nl.common.TableDataInfo;
|
import org.nl.common.TableDataInfo;
|
||||||
import org.nl.common.anno.Log;
|
import org.nl.common.anno.Log;
|
||||||
import org.nl.common.domain.query.PageQuery;
|
import org.nl.common.domain.query.PageQuery;
|
||||||
import org.nl.wms.storage_manage.pda.service.PdaStBcpInService;
|
import org.nl.wms.storage_manage.pda.service.PdaStBcpInService;
|
||||||
import org.nl.wms.storage_manage.pda.service.dto.PdaQuery;
|
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.http.HttpStatus;
|
import org.springframework.http.HttpStatus;
|
||||||
import org.springframework.http.ResponseEntity;
|
import org.springframework.http.ResponseEntity;
|
||||||
@@ -62,8 +60,8 @@ public class PdaStBcpInController {
|
|||||||
@PostMapping("/callVehicle")
|
@PostMapping("/callVehicle")
|
||||||
@Log("呼叫空载具")
|
@Log("呼叫空载具")
|
||||||
//("呼叫空载具")
|
//("呼叫空载具")
|
||||||
public ResponseEntity<Object> callVehicle() {
|
public ResponseEntity<Object> callVehicle(JSONObject param) {
|
||||||
pdaStBcpInService.callVehicle();
|
pdaStBcpInService.callVehicle(param.getString("point"));
|
||||||
return new ResponseEntity<>(TableDataInfo.build(), HttpStatus.OK);
|
return new ResponseEntity<>(TableDataInfo.build(), HttpStatus.OK);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -71,7 +69,8 @@ public class PdaStBcpInController {
|
|||||||
@Log("确认入库")
|
@Log("确认入库")
|
||||||
//("确认入库")
|
//("确认入库")
|
||||||
public ResponseEntity<Object> createIn(@RequestBody JSONObject whereJson) {
|
public ResponseEntity<Object> createIn(@RequestBody JSONObject whereJson) {
|
||||||
return new ResponseEntity<>(pdaStBcpInService.createIn(whereJson), HttpStatus.OK);
|
pdaStBcpInService.createIn(whereJson);
|
||||||
|
return new ResponseEntity<>(TableDataInfo.build(), HttpStatus.OK);
|
||||||
}
|
}
|
||||||
|
|
||||||
@PostMapping("/getAll")
|
@PostMapping("/getAll")
|
||||||
|
|||||||
@@ -2,7 +2,6 @@ package org.nl.wms.storage_manage.pda.service;
|
|||||||
|
|
||||||
import com.alibaba.fastjson.JSONObject;
|
import com.alibaba.fastjson.JSONObject;
|
||||||
import org.nl.common.domain.query.PageQuery;
|
import org.nl.common.domain.query.PageQuery;
|
||||||
import org.nl.wms.storage_manage.pda.service.dto.PdaQuery;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* <p>
|
* <p>
|
||||||
@@ -42,8 +41,9 @@ public interface PdaStBcpInService {
|
|||||||
/**
|
/**
|
||||||
* 呼叫空载具
|
* 呼叫空载具
|
||||||
* @return JSONObject /
|
* @return JSONObject /
|
||||||
|
* @param pointCode3
|
||||||
*/
|
*/
|
||||||
JSONObject callVehicle();
|
JSONObject callVehicle(String pointCode3);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 确认入库
|
* 确认入库
|
||||||
|
|||||||
@@ -9,6 +9,7 @@ import com.alibaba.fastjson.JSONArray;
|
|||||||
import com.alibaba.fastjson.JSONObject;
|
import com.alibaba.fastjson.JSONObject;
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||||
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
|
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
|
||||||
|
import org.apache.commons.lang3.StringUtils;
|
||||||
import org.nl.common.domain.query.PageQuery;
|
import org.nl.common.domain.query.PageQuery;
|
||||||
import org.nl.common.enums.AcsTaskEnum;
|
import org.nl.common.enums.AcsTaskEnum;
|
||||||
import org.nl.common.publish.BussEventMulticaster;
|
import org.nl.common.publish.BussEventMulticaster;
|
||||||
@@ -125,7 +126,7 @@ public class PdaStBcpInServiceImpl implements PdaStBcpInService {
|
|||||||
if (ObjectUtil.isEmpty(whereJson1.getString("material_code"))) {
|
if (ObjectUtil.isEmpty(whereJson1.getString("material_code"))) {
|
||||||
List<MdMeMaterialbase> list1 = iMdMeMaterialbaseService.list(
|
List<MdMeMaterialbase> list1 = iMdMeMaterialbaseService.list(
|
||||||
new QueryWrapper<MdMeMaterialbase>().lambda()
|
new QueryWrapper<MdMeMaterialbase>().lambda()
|
||||||
.in(MdMeMaterialbase::getMaterial_type_id, childIdStr)
|
.eq(MdMeMaterialbase::getMaterial_type_id, "1528555445302726656")
|
||||||
);
|
);
|
||||||
list = list1.subList(0, Math.min(list1.size(), size));
|
list = list1.subList(0, Math.min(list1.size(), size));
|
||||||
} else {
|
} else {
|
||||||
@@ -155,7 +156,10 @@ public class PdaStBcpInServiceImpl implements PdaStBcpInService {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
@Transactional
|
@Transactional
|
||||||
public JSONObject callVehicle() {
|
public JSONObject callVehicle(String pointCode3) {
|
||||||
|
if (StringUtils.isEmpty(pointCode3)){
|
||||||
|
throw new BadRequestException("请求参数不能为空");
|
||||||
|
}
|
||||||
JSONObject result = new JSONObject();
|
JSONObject result = new JSONObject();
|
||||||
result.put("message", "下发失败");
|
result.put("message", "下发失败");
|
||||||
RedissonUtils.lock(() -> {
|
RedissonUtils.lock(() -> {
|
||||||
@@ -165,23 +169,23 @@ public class PdaStBcpInServiceImpl implements PdaStBcpInService {
|
|||||||
new QueryWrapper<SchBaseTask>().lambda()
|
new QueryWrapper<SchBaseTask>().lambda()
|
||||||
.eq(SchBaseTask::getIs_delete, false)
|
.eq(SchBaseTask::getIs_delete, false)
|
||||||
.lt(SchBaseTask::getTask_status, TaskStatusEnum.FINISHED.getCode())
|
.lt(SchBaseTask::getTask_status, TaskStatusEnum.FINISHED.getCode())
|
||||||
.and(qr -> qr.eq(SchBaseTask::getPoint_code1, "A1_CPQXJ_01_X")
|
.and(qr -> qr.eq(SchBaseTask::getPoint_code1, pointCode3)
|
||||||
.or()
|
.or()
|
||||||
.eq(SchBaseTask::getPoint_code3, "A1_CPQXJ_01_X")
|
.eq(SchBaseTask::getPoint_code3, pointCode3)
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
|
||||||
if (ObjectUtil.isNotEmpty(taskList)) {
|
if (ObjectUtil.isNotEmpty(taskList)) {
|
||||||
throw new BadRequestException("清洗下料有正在执行中的任务,请稍后在尝试!"+taskList.stream().map(SchBaseTask::getTask_code).collect(Collectors.joining(",")));
|
throw new BadRequestException("半成品手动入库位存在正在执行的任务!"+taskList.stream().map(SchBaseTask::getTask_code).collect(Collectors.joining(",")));
|
||||||
}
|
}
|
||||||
|
|
||||||
// 3.找一个空载具
|
// 3.找一个空载具
|
||||||
StIvtStructattr attrDao = structattrService.getOne(
|
StIvtStructattr attrDao = structattrService.getOne(
|
||||||
new QueryWrapper<StIvtStructattr>().lambda()
|
new QueryWrapper<StIvtStructattr>().lambda()
|
||||||
.eq(StIvtStructattr::getIs_emptyvehicle,IOSEnum.IS_USED.code("是"))
|
.eq(StIvtStructattr::getIs_emptyvehicle,IOSEnum.IS_USED.code("是"))
|
||||||
.eq(StIvtStructattr::getSect_code, PDAEnum.SECT_CODE.code("半成品库区"))
|
.eq(StIvtStructattr::getSect_code, PDAEnum.SECT_CODE.code("半成品库区"))
|
||||||
.eq(StIvtStructattr::getLock_type, IOSEnum.LOCK_TYPE.code("未锁定"))
|
.eq(StIvtStructattr::getLock_type, IOSEnum.LOCK_TYPE.code("未锁定"))
|
||||||
.eq(StIvtStructattr::getIs_used,true),false
|
.eq(StIvtStructattr::getIs_used,true)
|
||||||
|
.orderByDesc(StIvtStructattr::getXqty)
|
||||||
|
.orderByAsc(StIvtStructattr::getZqty),false
|
||||||
);
|
);
|
||||||
|
|
||||||
if (ObjectUtil.isEmpty(attrDao)) throw new BadRequestException("未找到空载具!");
|
if (ObjectUtil.isEmpty(attrDao)) throw new BadRequestException("未找到空载具!");
|
||||||
@@ -192,7 +196,7 @@ public class PdaStBcpInServiceImpl implements PdaStBcpInService {
|
|||||||
.acs_task_type("7")
|
.acs_task_type("7")
|
||||||
.task_group_id(IdUtil.getStringId())
|
.task_group_id(IdUtil.getStringId())
|
||||||
.point_code1(attrDao.getStruct_code())
|
.point_code1(attrDao.getStruct_code())
|
||||||
.point_code3("A1_CPQXJ_01_X")
|
.point_code3(pointCode3)
|
||||||
.vehicle_code(attrDao.getStoragevehicle_code())
|
.vehicle_code(attrDao.getStoragevehicle_code())
|
||||||
.product_area("A1") // 暂时写死
|
.product_area("A1") // 暂时写死
|
||||||
.build();
|
.build();
|
||||||
@@ -202,7 +206,6 @@ public class PdaStBcpInServiceImpl implements PdaStBcpInService {
|
|||||||
attrDao.setLock_type(IOSEnum.LOCK_TYPE.code("其他锁"));
|
attrDao.setLock_type(IOSEnum.LOCK_TYPE.code("其他锁"));
|
||||||
structattrService.updateById(attrDao);
|
structattrService.updateById(attrDao);
|
||||||
|
|
||||||
|
|
||||||
// 6.下发任务
|
// 6.下发任务
|
||||||
String task_id = iSchBaseTaskService.getOne(
|
String task_id = iSchBaseTaskService.getOne(
|
||||||
new QueryWrapper<SchBaseTask>().lambda()
|
new QueryWrapper<SchBaseTask>().lambda()
|
||||||
|
|||||||
@@ -115,7 +115,7 @@
|
|||||||
</el-input>
|
</el-input>
|
||||||
</template>
|
</template>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="载具重量(kg)" prop="vehicle_weight">
|
<el-form-item label="载具重量(g)" prop="vehicle_weight">
|
||||||
<el-input-number v-model="updateForm.vehicle_weight" clearable style="width: 370px;" />
|
<el-input-number v-model="updateForm.vehicle_weight" clearable style="width: 370px;" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-form>
|
</el-form>
|
||||||
|
|||||||
Reference in New Issue
Block a user