rev:海柔功能修改
This commit is contained in:
@@ -80,6 +80,7 @@ public enum AcsTaskEnum {
|
||||
///api/dict/dictDetail/api/dict/dictDetail/api/dict/dictDetail
|
||||
AGV_SYSTEM_NB("1","诺宝机器人任务"),
|
||||
AGV_SYSTEM_XC("2","叉车任务"),
|
||||
AGV_SYSTEM_HR("3","海柔任务"),
|
||||
|
||||
ACS_TASK_TYPE_NOBLE_DOUBLE_TASK("1","诺宝双工任务"),
|
||||
ACS_TASK_TYPE_NOBLE_SINGLE_TASK("2","诺宝单工任务"),
|
||||
|
||||
@@ -6,6 +6,7 @@ import com.alibaba.fastjson.JSONObject;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.nl.common.enums.AcsTaskEnum;
|
||||
import org.nl.common.enums.StatusEnum;
|
||||
import org.nl.common.utils.AcsUtil;
|
||||
import org.nl.common.utils.IdUtil;
|
||||
@@ -137,6 +138,7 @@ public class WmsToAcsServiceImpl implements WmsToAcsService{
|
||||
|
||||
@Override
|
||||
public Map<String, Object> issueTaskToAcs4(JSONArray arr) {
|
||||
String HR_TASK_TYPE = "18";
|
||||
JSONArray form = new JSONArray();
|
||||
for (Object o : arr) {
|
||||
JSONObject task = (JSONObject) o;
|
||||
@@ -148,13 +150,14 @@ public class WmsToAcsServiceImpl implements WmsToAcsService{
|
||||
, "task_group_id", task.getString("task_group_id")
|
||||
, "start_point_code", task.getString("point_code1")
|
||||
, "next_point_code", task.getString("point_code3")
|
||||
, "task_type", "18"
|
||||
, "task_type", HR_TASK_TYPE
|
||||
, "storage_task_type", task.getString("acs_task_type")
|
||||
, "task_group_id", StringUtils.isBlank(task.getString("task_group_id"))? IdUtil.getStringId():task.getString("task_group_id")
|
||||
, "priority", task.getString("priority")
|
||||
, "is_send", task.getBoolean("is_send")?"1":"0"
|
||||
, "vehicle_code", task.getString("vehicle_code")
|
||||
, "agv_system_type", task.getString("agv_system_type")
|
||||
, "agv_system_type", AcsTaskEnum.AGV_SYSTEM_HR.getCode()
|
||||
, "acs", "A3_acs_url"
|
||||
));
|
||||
form.add(param);
|
||||
}
|
||||
|
||||
@@ -18,6 +18,9 @@
|
||||
mater.material_name LIKE '%${query.material_code}%' or
|
||||
mater.material_spec LIKE '%${query.material_code}%')
|
||||
</if>
|
||||
<if test="query.product_area != null and query.product_area != ''">
|
||||
AND mater.product_area = #{query.product_area}
|
||||
</if>
|
||||
order by mater.material_code ASC
|
||||
|
||||
</select>
|
||||
|
||||
@@ -90,6 +90,9 @@ public class MdPbStoragevehicleinfoServiceImpl extends ServiceImpl<MdPbStorageve
|
||||
case "05":
|
||||
code = "VEHICCLE_CODE_LX";
|
||||
break;
|
||||
case "06":
|
||||
code = "VEHICCLE_CODE_HR";
|
||||
break;
|
||||
}
|
||||
JSONArray resultCodeArr = new JSONArray();
|
||||
int num = MapUtil.getInt(map, "num");
|
||||
@@ -120,7 +123,7 @@ public class MdPbStoragevehicleinfoServiceImpl extends ServiceImpl<MdPbStorageve
|
||||
}
|
||||
MdMeMaterialbase one = iMdMeMaterialbaseService.getOne(new QueryWrapper<MdMeMaterialbase>()
|
||||
.eq("material_code", vorm.getString("material_code"))
|
||||
.eq("is_delete",false));
|
||||
.eq("is_delete",false));
|
||||
if (one==null){
|
||||
throw new BadRequestException("当前物料编号不存在:"+vorm.getString("material_code"));
|
||||
}
|
||||
@@ -208,6 +211,9 @@ public class MdPbStoragevehicleinfoServiceImpl extends ServiceImpl<MdPbStorageve
|
||||
case "05":
|
||||
term = "VEHICCLE_CODE_LX";
|
||||
break;
|
||||
case "06":
|
||||
term = "VEHICCLE_CODE_HR";
|
||||
break;
|
||||
}
|
||||
|
||||
HashMap<String, String> map = new HashMap<>();
|
||||
|
||||
@@ -20,6 +20,7 @@ import org.nl.common.utils.SecurityUtils;
|
||||
import org.nl.modules.common.exception.BadRequestException;
|
||||
import org.nl.modules.system.util.CodeUtil;
|
||||
import org.nl.modules.wql.util.SpringContextHolder;
|
||||
import org.nl.wms.ext_manage.acs.service.WmsToAcsService;
|
||||
import org.nl.wms.ext_manage.acs.service.impl.WmsToAcsServiceImpl;
|
||||
import org.nl.wms.scheduler_manage.service.extendtask.manage.AbstractAcsTask;
|
||||
import org.nl.wms.scheduler_manage.service.extendtask.manage.TaskStatusEnum;
|
||||
@@ -166,7 +167,14 @@ public class SchBaseTaskServiceImpl extends ServiceImpl<SchBaseTaskMapper, SchBa
|
||||
}
|
||||
JSONArray array = new JSONArray();
|
||||
array.add(JSON.toJSON(task));
|
||||
Map<String, Object> result = WmsToAcsServiceImpl.staticIssueTaskToAcs(array);
|
||||
Map<String, Object> result;
|
||||
if (task.getProduct_area().equals("A3")){
|
||||
WmsToAcsService bean = SpringContextHolder.getBean(WmsToAcsService.class);
|
||||
result = bean.issueTaskToAcs4(array);
|
||||
}else {
|
||||
result = WmsToAcsServiceImpl.staticIssueTaskToAcs(array);
|
||||
}
|
||||
|
||||
String status = String.valueOf(result.get("status"));
|
||||
if (!status.equals("200")) {
|
||||
throw new BadRequestException(result.get("message") != null ? String.valueOf(result.get("message")) : "acs反馈异常");
|
||||
@@ -215,7 +223,7 @@ public class SchBaseTaskServiceImpl extends ServiceImpl<SchBaseTaskMapper, SchBa
|
||||
task.put("point_code1",start);
|
||||
task.put("task_status",StatusEnum.TASK_START_END_P.getCode());
|
||||
task.put("task_group_id", IdUtil.getStringId());
|
||||
return task;
|
||||
return task;
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -276,6 +276,7 @@ public class StIvtIostorinvHrBcpInServiceImpl extends ServiceImpl<StIvtIostorinv
|
||||
.canuse_qty(mst.getPlan_qty())
|
||||
.workshop_id(mst.getWorkshop_id())
|
||||
.unit_weight(mst.getUnit_weight())
|
||||
.workprocedure_id(mst.getWorkprocedure_id())
|
||||
.build();
|
||||
structivtBcpService.save(ivtDao);
|
||||
|
||||
@@ -313,7 +314,9 @@ public class StIvtIostorinvHrBcpInServiceImpl extends ServiceImpl<StIvtIostorinv
|
||||
.set(SchBaseTask::getTask_status, TaskStatusEnum.FINISHED.getCode())
|
||||
.eq(SchBaseTask::getTask_id, mst.getTask_id())
|
||||
);
|
||||
|
||||
//删除入库顺序表
|
||||
iStIvtIostorinvOrderService.remove(new UpdateWrapper<StIvtIostorinvOrder>()
|
||||
.eq("bar_code",mst.getStoragevehicle_code()));
|
||||
return null;
|
||||
}
|
||||
|
||||
@@ -455,6 +458,7 @@ public class StIvtIostorinvHrBcpInServiceImpl extends ServiceImpl<StIvtIostorinv
|
||||
new QueryWrapper<StIvtIostorinvOrder>().lambda()
|
||||
.eq(StIvtIostorinvOrder::getIn_device, device_code)
|
||||
.eq(StIvtIostorinvOrder::getBar_code, barcode)
|
||||
.eq(StIvtIostorinvOrder::getIs_delete, false)
|
||||
.eq(StIvtIostorinvOrder::getType, IOSEnum.IO_TYPE.code("入库"))
|
||||
.orderByDesc(StIvtIostorinvOrder::getCreate_time)
|
||||
, false
|
||||
@@ -505,11 +509,13 @@ public class StIvtIostorinvHrBcpInServiceImpl extends ServiceImpl<StIvtIostorinv
|
||||
);
|
||||
|
||||
// 解锁仓位
|
||||
structattrService.update(
|
||||
new UpdateWrapper<StIvtStructattr>().lambda()
|
||||
.set(StIvtStructattr::getLock_type, IOSEnum.LOCK_TYPE.code("未锁定"))
|
||||
.eq(StIvtStructattr::getStruct_id, mstDao.getStruct_id())
|
||||
);
|
||||
if (mstDao !=null){
|
||||
structattrService.update(
|
||||
new UpdateWrapper<StIvtStructattr>().lambda()
|
||||
.set(StIvtStructattr::getLock_type, IOSEnum.LOCK_TYPE.code("未锁定"))
|
||||
.eq(StIvtStructattr::getStruct_id, mstDao.getStruct_id())
|
||||
);
|
||||
}
|
||||
|
||||
// 删除任务
|
||||
iSchBaseTaskService.update(
|
||||
|
||||
@@ -239,9 +239,6 @@ public class StIvtIostorinvHrBcpOutServiceImpl extends ServiceImpl<StIvtIostorin
|
||||
new QueryWrapper<MdPbStoragevehicleext>().lambda()
|
||||
.eq(MdPbStoragevehicleext::getStoragevehicle_code,mst.getStoragevehicle_code())
|
||||
);
|
||||
if (StringUtils.isNotEmpty(mst.getStoragevehicle_code())){
|
||||
iStIvtIostorinvOrderService.remove(new QueryWrapper<StIvtIostorinvOrder>().eq("bar_code",mst.getStoragevehicle_code()));
|
||||
}
|
||||
|
||||
// 插入出入库顺序表
|
||||
StIvtIostorinvOrder dao = new StIvtIostorinvOrder();
|
||||
@@ -308,16 +305,16 @@ public class StIvtIostorinvHrBcpOutServiceImpl extends ServiceImpl<StIvtIostorin
|
||||
@Transactional
|
||||
public StIvtStructivtBcp autoConfirmout(JSONObject form) {
|
||||
StIvtStructivtBcp bcpStruct = RedissonUtils.lockAndReturn(() -> {
|
||||
MdMeMaterialbase material = materialbaseService.getOne(new QueryWrapper<MdMeMaterialbase>().eq("material_id", form.getString("material_id")));
|
||||
JSONObject param = new JSONObject();
|
||||
param.put("stor_id", form.getString("stor_id"));
|
||||
param.put("sect_id", form.getString("sect_id"));
|
||||
param.put("material_id", form.getString("material_id"));
|
||||
param.put("rule_type", RuleUtil.PRODUCTION_OUT_2);
|
||||
// 2.锁定仓位
|
||||
MdMeMaterialbase material = materialbaseService.getOne(new QueryWrapper<MdMeMaterialbase>().eq("material_id", form.getString("material_id")));
|
||||
JSONObject param = new JSONObject();
|
||||
param.put("stor_id", form.getString("stor_id"));
|
||||
param.put("sect_id", form.getString("sect_id"));
|
||||
param.put("material_id", form.getString("material_id"));
|
||||
param.put("rule_type", RuleUtil.PRODUCTION_OUT_2);
|
||||
// 2.锁定仓位
|
||||
StIvtStructivtBcp stIvtStructivtBcp;
|
||||
if (form.get("stIvtStructivt")==null){
|
||||
stIvtStructivtBcp = divRuleCpService.divRuleOutBcp(param);
|
||||
stIvtStructivtBcp = divRuleCpService.divRuleOutBcp(param);
|
||||
}else {
|
||||
stIvtStructivtBcp=(StIvtStructivtBcp)form.get("stIvtStructivt");
|
||||
}
|
||||
@@ -445,7 +442,7 @@ public class StIvtIostorinvHrBcpOutServiceImpl extends ServiceImpl<StIvtIostorin
|
||||
this.save(mst);
|
||||
this.lockStruct(structattr[0].getStruct_code(), "出库锁",mst.getTask_id());
|
||||
}
|
||||
} ,"banchengpin_ruku",2);
|
||||
} ,"banchengpin_ruku",2);
|
||||
return structattr[0];
|
||||
}
|
||||
|
||||
|
||||
@@ -309,8 +309,8 @@ public class StIvtMoveinvHrBcpServiceImpl extends ServiceImpl<StIvtMoveinvHrBcpM
|
||||
// 更新任务
|
||||
taskService.update(
|
||||
new UpdateWrapper<SchBaseTask>().lambda()
|
||||
.eq(SchBaseTask::getTask_id, form.getString("task_id"))
|
||||
.set(SchBaseTask::getTask_status, TaskStatusEnum.EXECUTING.getCode())
|
||||
.eq(SchBaseTask::getTask_id, form.getString("task_id"))
|
||||
.set(SchBaseTask::getTask_status, TaskStatusEnum.EXECUTING.getCode())
|
||||
);
|
||||
|
||||
break;
|
||||
|
||||
Reference in New Issue
Block a user