This commit is contained in:
2022-11-09 10:53:31 +08:00
parent 019f0bdd43
commit 27fc5ecc65
15 changed files with 368 additions and 189 deletions

View File

@@ -22,8 +22,9 @@ import org.springframework.stereotype.Service;
@Service
@RequiredArgsConstructor
@Slf4j
public class LmsToMesServiceImpl implements LmsToMesService {
public class LmsToMesServiceImpl implements LmsToMesService {
private static String is_connect_mes = "0";
/**
* LMS的PDA操作AGV下卷AGV称重完成后AGV称重信息发送MES
@@ -33,13 +34,12 @@ public class LmsToMesServiceImpl implements LmsToMesService {
@LokiLog(type = LokiLogType.LMS_TO_MES)
@Override
public JSONObject momRollFoilWeighing(JSONObject param) {
log.info("momRollFoilWeighing接口输入参数为-------------------"+param);
System.out.println("momRollFoilWeighing接口输入参数为-------------------"+param);
log.info("momRollFoilWeighing接口输入参数为-------------------" + param);
System.out.println("momRollFoilWeighing接口输入参数为-------------------" + param);
JSONObject result = new JSONObject();
String isConnect = "1";
if (StrUtil.equals("0", isConnect)) {
if (StrUtil.equals("0", is_connect_mes)) {
result.put("status", HttpStatus.OK.value());
result.put("message", "下发成功但未连接MES!");
result.put("data", new JSONObject());
@@ -51,13 +51,13 @@ public class LmsToMesServiceImpl implements LmsToMesService {
// String url = acsUrl + api;
String url = SpringContextHolder.getBean(ParamServiceImpl.class).findByCode("MES_URL").getValue();
String api = "";
url = url+api;
url = url + api;
try {
String resultMsg = HttpRequest.post(url)
.body(String.valueOf(list))
.execute().body();
result = JSONObject.parseObject(resultMsg);
log.info("momRollFoilWeighing接口输出参数为-------------------"+result.toString());
log.info("momRollFoilWeighing接口输出参数为-------------------" + result.toString());
} catch (Exception e) {
@@ -81,11 +81,10 @@ public class LmsToMesServiceImpl implements LmsToMesService {
@LokiLog(type = LokiLogType.LMS_TO_MES)
@Override
public JSONObject momRollBakeInBound(JSONObject param) {
log.info("momRollBakeInBound接口输入参数为-------------------"+param.toString());
log.info("momRollBakeInBound接口输入参数为-------------------" + param.toString());
JSONObject result = new JSONObject();
String isConnect = "0";
if (StrUtil.equals("0", isConnect)) {
if (StrUtil.equals("0", is_connect_mes)) {
result.put("status", HttpStatus.OK.value());
result.put("message", "下发成功但未连接MES!");
result.put("data", new JSONObject());
@@ -97,13 +96,13 @@ public class LmsToMesServiceImpl implements LmsToMesService {
// String url = acsUrl + api;
String url = SpringContextHolder.getBean(ParamServiceImpl.class).findByCode("MES_URL").getValue();
String api = "CamstarApi/MomRollBakeInBound";
url = url+api;
url = url + api;
try {
String resultMsg = HttpRequest.post(url)
.body(String.valueOf(param))
.execute().body();
result = JSONObject.parseObject(resultMsg);
log.info("momRollBakeInBound接口输出参数为-------------------"+result.toString());
log.info("momRollBakeInBound接口输出参数为-------------------" + result.toString());
} catch (Exception e) {
@@ -127,11 +126,10 @@ public class LmsToMesServiceImpl implements LmsToMesService {
@LokiLog(type = LokiLogType.LMS_TO_MES)
@Override
public JSONObject momRollBakeOutBound(JSONObject param) {
log.info("momRollBakeOutBound接口输入参数为-------------------"+param.toString());
log.info("momRollBakeOutBound接口输入参数为-------------------" + param.toString());
JSONObject result = new JSONObject();
String isConnect = "0";
if (StrUtil.equals("0", isConnect)) {
if (StrUtil.equals("0", is_connect_mes)) {
result.put("status", HttpStatus.OK.value());
result.put("message", "下发成功但未连接MES!");
result.put("data", new JSONObject());
@@ -143,13 +141,13 @@ public class LmsToMesServiceImpl implements LmsToMesService {
// String url = acsUrl + api;
String url = SpringContextHolder.getBean(ParamServiceImpl.class).findByCode("MES_URL").getValue();
String api = "CamstarApi/MomRollBakeOutBound";
url = url+api;
url = url + api;
try {
String resultMsg = HttpRequest.post(url)
.body(String.valueOf(param))
.execute().body();
result = JSONObject.parseObject(resultMsg);
log.info("momRollBakeOutBound接口输出参数为-------------------"+result.toString());
log.info("momRollBakeOutBound接口输出参数为-------------------" + result.toString());
} catch (Exception e) {
@@ -173,11 +171,10 @@ public class LmsToMesServiceImpl implements LmsToMesService {
@LokiLog(type = LokiLogType.LMS_TO_MES)
@Override
public JSONObject momRollSemiFGInboundComplete(JSONObject param) {
log.info("momRollSemiFGInboundComplete接口输入参数为-------------------"+param.toString());
log.info("momRollSemiFGInboundComplete接口输入参数为-------------------" + param.toString());
JSONObject result = new JSONObject();
String isConnect = "0";
if (StrUtil.equals("0", isConnect)) {
if (StrUtil.equals("0", is_connect_mes)) {
result.put("status", HttpStatus.OK.value());
result.put("message", "下发成功但未连接MES!");
result.put("data", new JSONObject());
@@ -189,13 +186,13 @@ public class LmsToMesServiceImpl implements LmsToMesService {
// String url = acsUrl + api;
String url = SpringContextHolder.getBean(ParamServiceImpl.class).findByCode("MES_URL").getValue();
String api = "CamstarApi/MomRollSemiFGInboundComplete";
url = url+api;
url = url + api;
try {
String resultMsg = HttpRequest.post(url)
.body(String.valueOf(param))
.execute().body();
result = JSONObject.parseObject(resultMsg);
log.info("momRollSemiFGInboundComplete接口输出参数为-------------------"+result.toString());
log.info("momRollSemiFGInboundComplete接口输出参数为-------------------" + result.toString());
} catch (Exception e) {
@@ -219,16 +216,15 @@ public class LmsToMesServiceImpl implements LmsToMesService {
@LokiLog(type = LokiLogType.LMS_TO_MES)
@Override
public JSONObject airSwellWithPaperTubeAssComplete(JSONObject param) {
log.info("airSwellWithPaperTubeAssComplete接口输入参数为-------------------"+param.toString());
log.info("airSwellWithPaperTubeAssComplete接口输入参数为-------------------" + param.toString());
String container_name = param.getString("container_name");
if (StrUtil.isEmpty(container_name)){
if (StrUtil.isEmpty(container_name)) {
throw new BadRequestException("子卷号不能为空!");
}
JSONObject result = new JSONObject();
String isConnect = "1";
if (StrUtil.equals("0", isConnect)) {
if (StrUtil.equals("0", is_connect_mes)) {
result.put("status", HttpStatus.OK.value());
result.put("message", "下发成功但未连接MES!");
result.put("data", new JSONObject());
@@ -236,19 +232,19 @@ public class LmsToMesServiceImpl implements LmsToMesService {
}
JSONObject jo = new JSONObject();
jo.put("iContainerName",container_name);
jo.put("iisAirSwellAssComplete",1);
jo.put("iContainerName", container_name);
jo.put("iisAirSwellAssComplete", 1);
// String url = acsUrl + api;
String url = SpringContextHolder.getBean(ParamServiceImpl.class).findByCode("MES_URL").getValue();
String api = "CamstarApi/AirSwellWithPaperTubeAssComplete";
url = url+api;
url = url + api;
try {
String resultMsg = HttpRequest.post(url)
.body(String.valueOf(jo))
.execute().body();
result = JSONObject.parseObject(resultMsg);
log.info("airSwellWithPaperTubeAssComplete接口输出参数为-------------------"+result.toString());
log.info("airSwellWithPaperTubeAssComplete接口输出参数为-------------------" + result.toString());
} catch (Exception e) {
@@ -272,11 +268,10 @@ public class LmsToMesServiceImpl implements LmsToMesService {
@LokiLog(type = LokiLogType.LMS_TO_MES)
@Override
public JSONObject cutPlanMomRollDeliveryComplete(JSONObject param) {
log.info("cutPlanMomRollDeliveryComplete接口输入参数为-------------------"+param.toString());
log.info("cutPlanMomRollDeliveryComplete接口输入参数为-------------------" + param.toString());
JSONObject result = new JSONObject();
String isConnect = "1";
if (StrUtil.equals("0", isConnect)) {
if (StrUtil.equals("0", is_connect_mes)) {
result.put("status", HttpStatus.OK.value());
result.put("message", "下发成功但未连接MES!");
result.put("data", new JSONObject());
@@ -288,13 +283,13 @@ public class LmsToMesServiceImpl implements LmsToMesService {
// String url = acsUrl + api;
String url = SpringContextHolder.getBean(ParamServiceImpl.class).findByCode("MES_URL").getValue();
String api = "CamstarApi/CutPlanMomRollDeliveryComplete";
url = url+api;
url = url + api;
try {
String resultMsg = HttpRequest.post(url)
.body(String.valueOf(param))
.execute().body();
result = JSONObject.parseObject(resultMsg);
log.info("airSwellWithPaperTubeAssComplete接口输出参数为-------------------"+result.toString());
log.info("airSwellWithPaperTubeAssComplete接口输出参数为-------------------" + result.toString());
} catch (Exception e) {
@@ -318,16 +313,15 @@ public class LmsToMesServiceImpl implements LmsToMesService {
@LokiLog(type = LokiLogType.LMS_TO_MES)
@Override
public JSONObject airSwellWithPaperTubeAssArrival(JSONObject param) {
log.info("airSwellWithPaperTubeAssArrival接口输入参数为-------------------"+param.toString());
log.info("airSwellWithPaperTubeAssArrival接口输入参数为-------------------" + param.toString());
String container_name = param.getString("container_name");
if (StrUtil.isEmpty(container_name)){
if (StrUtil.isEmpty(container_name)) {
throw new BadRequestException("子卷号不能为空!");
}
JSONObject result = new JSONObject();
String isConnect = "1";
if (StrUtil.equals("0", isConnect)) {
if (StrUtil.equals("0", is_connect_mes)) {
result.put("status", HttpStatus.OK.value());
result.put("message", "下发成功但未连接MES!");
result.put("data", new JSONObject());
@@ -335,19 +329,19 @@ public class LmsToMesServiceImpl implements LmsToMesService {
}
JSONObject jo = new JSONObject();
jo.put("iContainerName",container_name);
jo.put("iisAirSwellDeliveryComplete",1);
jo.put("iContainerName", container_name);
jo.put("iisAirSwellDeliveryComplete", 1);
// String url = acsUrl + api;
String url = SpringContextHolder.getBean(ParamServiceImpl.class).findByCode("MES_URL").getValue();
String api = "CamstarApi/AirSwellWithPaperTubeAssArrival";
url = url+api;
url = url + api;
try {
String resultMsg = HttpRequest.post(url)
.body(String.valueOf(jo))
.execute().body();
result = JSONObject.parseObject(resultMsg);
log.info("airSwellWithPaperTubeAssArrival接口输出参数为-------------------"+result.toString());
log.info("airSwellWithPaperTubeAssArrival接口输出参数为-------------------" + result.toString());
} catch (Exception e) {
@@ -371,13 +365,12 @@ public class LmsToMesServiceImpl implements LmsToMesService {
@LokiLog(type = LokiLogType.LMS_TO_MES)
@Override
public JSONObject childRollFGInboundComplete(JSONObject param) {
log.info("childRollFGInboundComplete接口输入参数为-------------------"+param.toString());
log.info("childRollFGInboundComplete接口输入参数为-------------------" + param.toString());
String PackageBoxSN = param.getString("PackageBoxSN");
String User = param.getString("User");
JSONObject result = new JSONObject();
String isConnect = "1";
if (StrUtil.equals("0", isConnect)) {
if (StrUtil.equals("0", is_connect_mes)) {
result.put("status", HttpStatus.OK.value());
result.put("message", "下发成功但未连接MES!");
result.put("data", new JSONObject());
@@ -385,22 +378,22 @@ public class LmsToMesServiceImpl implements LmsToMesService {
}
JSONObject jo = new JSONObject();
jo.put("iPackageBoxSN",PackageBoxSN);
jo.put("iSpec","FGPRODUCT");
jo.put("iWarehouse","3");
jo.put("iPackageBoxSN", PackageBoxSN);
jo.put("iSpec", "FGPRODUCT");
jo.put("iWarehouse", "3");
jo.put("iArrivalDate", DateUtil.now());
jo.put("iUser", User);
// String url = acsUrl + api;
String url = SpringContextHolder.getBean(ParamServiceImpl.class).findByCode("MES_URL").getValue();
String api = "CamstarApi/ChildRollFGInboundComplete";
url = url+api;
url = url + api;
try {
String resultMsg = HttpRequest.post(url)
.body(String.valueOf(param))
.execute().body();
result = JSONObject.parseObject(resultMsg);
log.info("childRollFGInboundComplete接口输出参数为-------------------"+result.toString());
log.info("childRollFGInboundComplete接口输出参数为-------------------" + result.toString());
} catch (Exception e) {
@@ -424,12 +417,11 @@ public class LmsToMesServiceImpl implements LmsToMesService {
@LokiLog(type = LokiLogType.LMS_TO_MES)
@Override
public JSONObject childRollFGOutboundComplete(JSONObject param) {
log.info("childRollFGOutboundComplete接口输入参数为-------------------"+param.toString());
log.info("childRollFGOutboundComplete接口输入参数为-------------------" + param.toString());
JSONObject result = new JSONObject();
String isConnect = "1";
if (StrUtil.equals("0", isConnect)) {
if (StrUtil.equals("0", is_connect_mes)) {
result.put("status", HttpStatus.OK.value());
result.put("message", "下发成功但未连接MES!");
result.put("data", new JSONObject());
@@ -441,13 +433,13 @@ public class LmsToMesServiceImpl implements LmsToMesService {
// String url = acsUrl + api;
String url = SpringContextHolder.getBean(ParamServiceImpl.class).findByCode("MES_URL").getValue();
String api = "CamstarApi/ChildRollFGOutboundComplete";
url = url+api;
url = url + api;
try {
String resultMsg = HttpRequest.post(url)
.body(String.valueOf(param))
.execute().body();
result = JSONObject.parseObject(resultMsg);
log.info("childRollFGOutboundComplete接口输出参数为-------------------"+result.toString());
log.info("childRollFGOutboundComplete接口输出参数为-------------------" + result.toString());
} catch (Exception e) {

View File

@@ -409,7 +409,7 @@ public class MesToLmsServiceImpl implements MesToLmsService {
json.put("split_height", SplitHeight);
json.put("split_weight", SplitWeight);
json.put("start_time", DateUtil.now());
json.put("status", "0");
json.put("status", "01");
json.put("is_parent_ok", "0");
json.put("is_child_tz_ok", "0");
json.put("is_child_ps_ok", "0");
@@ -631,10 +631,10 @@ public class MesToLmsServiceImpl implements MesToLmsService {
//查询对应的分切计划
JSONObject plan_jo = WQLObject.getWQLObject("pdm_bi_slittingproductionplan").query("container_name = '"+row.getString("ContainerGroup")+"'").uniqueResult(0);
if (row.getString("ContainerPosition").equals("1")){
up_rows.add(row);
up_rows.add(plan_jo);
}
if (row.getString("ContainerPosition").equals("2")){
down_rows.add(row);
down_rows.add(plan_jo);
}
}
@@ -642,12 +642,14 @@ public class MesToLmsServiceImpl implements MesToLmsService {
JSONObject jo = new JSONObject();
jo.put("point_code",up_point_code);
jo.put("cut_rows",up_rows);
jo.put("is_last","0");
outService.confirm(jo);
}
if (down_rows.size()>0){
JSONObject jo = new JSONObject();
jo.put("point_code",down_point_code);
jo.put("cut_rows",down_rows);
jo.put("is_last","0");
outService.confirm(jo);
}
}

View File

@@ -50,7 +50,7 @@ public class InServiceImpl implements InService {
public JSONObject confirm(JSONObject whereJson) {
String point_code = whereJson.getString("point_code");
JSONObject cut_row = whereJson.getJSONObject("cut_row");
JSONObject cut_row = whereJson.getJSONObject("cut_rows");
//查询该点位对应的机台编号
JSONObject cut_ivt = WQLObject.getWQLObject("ST_IVT_CutPointIvt").query("up_point_code ='" + point_code + "' OR down_point_code ='" + point_code + "'").uniqueResult(0);
@@ -60,8 +60,8 @@ public class InServiceImpl implements InService {
}
JSONObject jo = new JSONObject();
jo.put("point_code1", cut_row.getString("point_code"));
jo.put("point_code2", "point_code");
jo.put("point_code1", cut_row.getString("delivery_code"));
jo.put("point_code2", point_code);
jo.put("vehicle_code", cut_row.getString("qzzno"));
jo.put("task_type", "010405");
cutTrussTask.createTask(jo);

View File

@@ -21,7 +21,8 @@
输入.sort_seq TYPEAS s_string
输入.point_location TYPEAS s_string
输入.sql_str TYPEAS f_string
输入.device_code TYPEAS f_string
输入.device_code TYPEAS s_string
输入.container_name TYPEAS s_string
[临时表]
@@ -94,8 +95,11 @@
OPTION 输入.product_area <> ""
ivt.product_area = 输入.product_area
ENDOPTION
OPTION 输入.qzzno <> ""
plan.qzzno = 输入.qzzno
OPTION 输入.container_name <> ""
plan.container_name = 输入.container_name
ENDOPTION
OPTION 输入.device_code <> ""
ivt.point_code = 输入.device_code
ENDOPTION
ENDSELECT
ENDQUERY
@@ -109,6 +113,16 @@
st_ivt_deliverypointivt ivt
WHERE
point_status = '02'
AND NOT EXISTS (
SELECT
*
FROM
sch_base_task
WHERE
( point_code1 = ivt.point_code OR point_code2 = ivt.point_code )
AND task_status < '07'
AND is_delete = '0'
)
OPTION 输入.product_area <> ""
ivt.product_area = 输入.product_area
ENDOPTION
@@ -203,7 +217,8 @@
plan.manufacture_sort,
plan.manufacture_date,
(case when plan.is_child_ps_ok = '1' then '是' else '否' end) AS is_child_ps_ok,
del.point_code AS delivery_code
del.point_code AS delivery_code,
del.qzzno
FROM
st_ivt_deliverypointivt del
LEFT JOIN pdm_bi_slittingproductionplan plan ON plan.qzzno = del.qzzno
@@ -212,6 +227,8 @@
del.point_status = '03'
AND
plan.is_child_ps_ok = '1'
AND
plan.status = '01'
OPTION 输入.product_area <> ""
del.product_area = 输入.product_area
ENDOPTION

View File

@@ -98,6 +98,7 @@ public class CutConveyorTask extends AbstractAcsTask {
// 更新分切输送库存状态
jsonIvt.put("point_status", "01");
jsonIvt.put("qzzno", "");
ivtTab.update(jsonIvt);
}
if (jsonTask.getString("task_type").equals("010402")) {
@@ -108,8 +109,12 @@ public class CutConveyorTask extends AbstractAcsTask {
}
// 更新分切输送库存状态
jsonIvt.put("point_status", "03");
jsonIvt.put("qzzno", jsonTask.getString("vehicle_code"));
if (StrUtil.isNotEmpty(jsonTask.getString("vehicle_code"))){
jsonIvt.put("point_status", "03");
jsonIvt.put("qzzno", jsonTask.getString("vehicle_code"));
}else {
jsonIvt.put("point_status", "02");
}
ivtTab.update(jsonIvt);
//更新对应气涨轴的分切计划表为配送完成

View File

@@ -8,6 +8,7 @@ import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.checkerframework.checker.units.qual.C;
import org.nl.modules.common.exception.BadRequestException;
import org.nl.modules.common.utils.SecurityUtils;
import org.nl.modules.system.util.CodeUtil;
@@ -58,6 +59,7 @@ public class CutTrussTask extends AbstractAcsTask {
public void updateTaskStatus(JSONObject taskObj, String status) {
WQLObject taskTab = WQLObject.getWQLObject("SCH_BASE_Task");
WQLObject ivtTab = WQLObject.getWQLObject("ST_IVT_DeliveryPointIvt");
CutConveyorTask cutConveyorTask = new CutConveyorTask();
String task_id = taskObj.getString("task_id");
JSONObject jsonTask = taskTab.query("task_id = '" + task_id + "'").uniqueResult(0);
@@ -127,6 +129,65 @@ public class CutTrussTask extends AbstractAcsTask {
plan_row.put("end_time", DateUtil.now());
WQLObject.getWQLObject("PDM_BI_SlittingProductionPlan").update(plan_row);
}
//生成一个输送线出库任务
JSONObject form = new JSONObject();
form.put("point_code1",jsonTask.getString("point_code1"));
form.put("point_code2","SS01");
form.put("task_type","010401");
cutConveyorTask.createTask(form);
}
if (jsonTask.getString("task_type").equals("010404")) {
//更新输送线的气涨轴编码
JSONObject delivery_point = WQLObject.getWQLObject("ST_IVT_DeliveryPointIvt").query("point_code = '" + jsonTask.getString("point_code2") + "'").uniqueResult(0);
if (ObjectUtil.isEmpty(delivery_point)) {
throw new BadRequestException("未查询到对应的输送线点位!");
}
delivery_point.put("qzzno", jsonTask.getString("vehicle_code"));
delivery_point.put("point_status", "04");
WQLObject.getWQLObject("ST_IVT_DeliveryPointIvt").update(delivery_point);
//更新出站气涨轴的分切计划状态
JSONArray plan_jo2 = WQLObject.getWQLObject("PDM_BI_SlittingProductionPlan").query("qzzno = '" + jsonTask.getString("vehicle_code") + "' AND is_child_tz_ok = '1' AND is_child_ps_ok = '1' AND is_delete = '0' AND status = '06'").getResultJSONArray(0);
if (ObjectUtil.isEmpty(plan_jo2)) {
throw new BadRequestException("未查询到气涨轴:" + jsonTask.getString("vehicle_code") + "对应的分切计划!");
}
for (int i = 0; i < plan_jo2.size(); i++) {
JSONObject plan_row = plan_jo2.getJSONObject(i);
plan_row.put("status", "09");
plan_row.put("end_time", DateUtil.now());
WQLObject.getWQLObject("PDM_BI_SlittingProductionPlan").update(plan_row);
}
//生成一个输送线出库任务
JSONObject form = new JSONObject();
form.put("point_code1",jsonTask.getString("point_code2"));
form.put("point_code2","SS01");
form.put("task_type","010401");
cutConveyorTask.createTask(form);
}
if (jsonTask.getString("task_type").equals("010405")) {
//更新输送线的气涨轴编码
JSONObject delivery_point = WQLObject.getWQLObject("ST_IVT_DeliveryPointIvt").query("point_code = '" + jsonTask.getString("point_code1") + "'").uniqueResult(0);
if (ObjectUtil.isEmpty(delivery_point)) {
throw new BadRequestException("未查询到对应的输送线点位!");
}
delivery_point.put("qzzno", "");
delivery_point.put("point_status", "02");
WQLObject.getWQLObject("ST_IVT_DeliveryPointIvt").update(delivery_point);
//更新入站气涨轴的分切计划状态
JSONArray plan_jo = WQLObject.getWQLObject("PDM_BI_SlittingProductionPlan").query("qzzno = '" + jsonTask.getString("vehicle_code") + "' AND is_child_tz_ok = '1' AND is_child_ps_ok = '1' AND is_delete = '0' AND status = '04'").getResultJSONArray(0);
if (ObjectUtil.isEmpty(plan_jo)) {
throw new BadRequestException("未查询到气涨轴:" + jsonTask.getString("vehicle_code") + "对应的分切计划!");
}
for (int i = 0; i < plan_jo.size(); i++) {
JSONObject plan_row = plan_jo.getJSONObject(i);
plan_row.put("status", "05");
plan_row.put("end_time", DateUtil.now());
WQLObject.getWQLObject("PDM_BI_SlittingProductionPlan").update(plan_row);
}
}
}
}

View File

@@ -459,25 +459,10 @@ public class RawAssistIStorServiceImpl implements RawAssistIStorService {
Boolean checked = whereJson2.getBoolean("checked");
//是否分配货位
if (ObjectUtil.isNotEmpty(checked) && checked) {
//自动分配一个货位
MaterialbaseDto materialbaseDto = null;
Long material_type_id = materialbaseDto.getMaterial_type_id();
BigDecimal height = materialbaseDto.getHeight();
HashMap struct_map = new HashMap();
if (StrUtil.isNotEmpty((String) whereJson.get("sect_id"))) {
struct_map.put("sect_id", (String) whereJson.get("sect_id"));
}
if (StrUtil.isNotEmpty((String) whereJson.get("stor_id"))) {
struct_map.put("stor_id", (String) whereJson.get("stor_id"));
}
//struct_map.put("height", height + "");
struct_map.put("material_type_id", material_type_id + "");
struct_map.put("flag", "7");
JSONArray sect_rows = WQLObject.getWQLObject("st_ivt_structrelamaterial").query("material_type_id = '" + material_type_id + "'").getResultJSONArray(0);
if (sect_rows.size() > 0) {
struct_map.put("sect_flag", "1");
}
JSONObject struct_jo = WQL.getWO("QST_IVT_RAWASSISTISTOR").addParamMap(struct_map).process().uniqueResult(0);
JSONObject jo_form = new JSONObject();
jo_form.put("box_no",map.get("box_no"));
jo_form.put("sect_id","1582991348217286656");
JSONObject struct_jo = this.autoDis(jo_form);
if (ObjectUtil.isEmpty(struct_jo)) {
throw new BadRequestException("未查询到适用仓位!");
}
@@ -807,7 +792,9 @@ public class RawAssistIStorServiceImpl implements RawAssistIStorService {
String box_no = whereJson.getString("box_no");
JSONObject sub_jo = WQLObject.getWQLObject("pdm_bi_subpackagerelation").query(" = '" + box_no + "' AND status < 2").uniqueResult(0);
String sect_id = whereJson.getString("sect_id");
JSONObject sub_jo = WQLObject.getWQLObject("pdm_bi_subpackagerelation").query("package_box_sn = '" + box_no + "' AND status < 2").uniqueResult(0);
String material_code = sub_jo.getString("product_name");
@@ -816,6 +803,7 @@ public class RawAssistIStorServiceImpl implements RawAssistIStorService {
HashMap<String, String> row_map = new HashMap<>();
row_map.put("material_code", material_code);
row_map.put("sale_order_name", sale_order_name);
row_map.put("sect_id", sect_id);
row_map.put("flag", "11");
//查询到当前可用的巷道
JSONObject row_jo = WQL.getWO("QST_IVT_RAWASSISTISTOR").addParamMap(row_map).process().uniqueResult(0);

View File

@@ -471,15 +471,9 @@ public class StorPublicServiceImpl implements StorPublicService {
map.put("inv_id",from.getString("inv_id"));
map.put("inv_code",from.getString("inv_code"));
if (StrUtil.isNotEmpty(storagevehicle_code)) {
JSONObject Storage = wo_Storage.query("storagevehicle_code='"+storagevehicle_code+"'").uniqueResult(0);
if(ObjectUtil.isEmpty(Storage)){
throw new BadRequestException(storagevehicle_code+"载具参数异常!");
}
map.put("storagevehicle_code",Storage.getString("storagevehicle_code"));
map.put("storagevehicle_code",storagevehicle_code);
map.put("storagevehicle_qty","1");
map.put("storagevehicle_type",Storage.getString("storagevehicle_type"));
map.put("storagevehicle_id",Storage.getString("storagevehicle_id"));
map.put("vehicle_code",Storage.getString("storagevehicle_code"));
map.put("vehicle_code",storagevehicle_code);
map.put("point_status","01");
}
}

View File

@@ -28,6 +28,7 @@
输入.iostorinvdtl_id TYPEAS s_string
输入.sale_order_name TYPEAS s_string
输入.material_code TYPEAS s_string
输入.sect_id TYPEAS s_string
输入.sql_str TYPEAS f_string
@@ -410,6 +411,8 @@
IFNULL(sa2.storagevehicle_code,'') = ''
AND
sa2.lock_type = '1'
AND
sa.sect_id = 输入.sect_id
OPTION 输入.material_code <> ""
mb.material_code = 输入.material_code
ENDOPTION
@@ -455,7 +458,7 @@
WHERE
sa.is_delete = '0'
AND is_used = '1'
AND sa.sect_id = '1582991348217286656'
AND sa.sect_id = 输入.sect_id
GROUP BY
sa.block_num,
sa.row_num,
@@ -493,6 +496,61 @@
ENDQUERY
ENDIF
IF 输入.flag = "14"
QUERY
SELECT
*
FROM
(
SELECT
sa.block_num,
sa.row_num,
sa.placement_type,
COUNT( sa.struct_code ) AS struct_num
FROM
st_ivt_structattr sa
WHERE
sa.is_delete = '0'
AND is_used = '1'
AND placement_type = '01'
AND sa.sect_id = 输入.sect_id
GROUP BY
sa.block_num,
sa.row_num,
sa.placement_type
) a
WHERE
EXISTS (
SELECT
*
FROM
(
SELECT
block_num,
row_num,
placement_type
FROM
st_ivt_structattr sa2
WHERE
sa2.lock_type = '1'
AND IFNULL( sa2.storagevehicle_code, '' ) = ''
GROUP BY
sa2.block_num,
sa2.row_num,
sa2.placement_type
) b
WHERE
b.block_num = a.block_num
AND
b.row_num = a.row_num
AND
b.placement_type = a.placement_type
)
输入.sql_str
ENDSELECT
ENDQUERY
ENDIF

View File

@@ -93,7 +93,7 @@ public class HandMoveStorServiceImpl implements HandMoveStorService {
wo_Task.update(task_map, "task_id='" + jo.getString("task_id") + "'");
//解锁起点点位、仓位
JSONObject from_start = new JSONObject();
from_start.put("lock_type", "00");
from_start.put("lock_type", "1");
from_start.put("struct_id", jo.getString("turnout_struct_id"));
storPublicService.updateStructAndPoint(from_start);
//解锁终点点位、仓位
@@ -134,6 +134,8 @@ public class HandMoveStorServiceImpl implements HandMoveStorService {
String now = DateUtil.now();
String moveinv_id = IdUtil.getSnowflake(1, 1).nextId() + "";
String bill_code = CodeUtil.getNewCode("MOVE_CODE");
String biz_date = (String) map.get("biz_date");
biz_date = biz_date.substring(0,10);
map.put("moveinv_id", moveinv_id);
map.put("bill_code", bill_code);
map.put("buss_type", "");
@@ -146,6 +148,7 @@ public class HandMoveStorServiceImpl implements HandMoveStorService {
map.put("update_time", now);
map.put("is_delete", "0");
map.put("is_upload", "0");
map.put("biz_date", biz_date);
Long deptId = SecurityUtils.getDeptId();
map.put("sysdeptid", deptId);
map.put("syscompanyid", deptId);
@@ -229,7 +232,7 @@ public class HandMoveStorServiceImpl implements HandMoveStorService {
throw new BadRequestException(row.getString("turnin_struct_code") + "仓位数据异常,找不到对应点位!");
}
//判断是否已生成过了任务,无未生成则插入任务
JSONObject task = wo_Task.query("is_delete = '0' and taskdtl_type='07' and task_status='01' and start_point_code='" + jo.getString("start_point_code") + "'").uniqueResult(0);
JSONObject task = wo_Task.query("is_delete = '0' and task_status='01' and point_code1='" + jo.getString("start_point_code") + "'").uniqueResult(0);
if (task != null) {
jo.put("task_id", task.getString("task_id"));
} else {
@@ -243,8 +246,8 @@ public class HandMoveStorServiceImpl implements HandMoveStorService {
task.put("task_type", "05");
task.put("taskdtl_type", "07");
task.put("task_status", "01");
task.put("start_point_code", jo.getString("start_point_code"));
task.put("next_point_code", point.getString("point_code"));
task.put("point_code1", jo.getString("start_point_code"));
task.put("point_code2", point.getString("point_code"));
task.put("vehicle_code", jo.getString("storagevehicle_code"));
task.put("handle_class", HandMoveStorAcsTask.class.getName());
task.put("finished_type", "");
@@ -589,13 +592,13 @@ public class HandMoveStorServiceImpl implements HandMoveStorService {
//解锁起点仓位点位
JSONObject from_start = new JSONObject();
from_start.put("struct_id", dis.getString("struct_id"));
from_start.put("lock_type", "00");
from_start.put("lock_type", "1");
storPublicService.updateStructAndPoint(from_start);
//解锁终点仓位点位
if (StrUtil.isNotEmpty(dis.getString("point_code"))) {
JSONObject from_end = new JSONObject();
from_end.put("point_code", dis.getString("point_code"));
from_end.put("lock_type", "00");
from_end.put("lock_type", "1");
storPublicService.updateStructAndPoint(from_end);
}
} else {//仓位载具扔有冻结数,需改任务类型为拣选出库
@@ -665,14 +668,14 @@ public class HandMoveStorServiceImpl implements HandMoveStorService {
wo_Task.update(task_map, "task_id='" + jo.getString("task_id") + "'");
//解锁起点点位、仓位,清除载具
JSONObject from_start = new JSONObject();
from_start.put("lock_type", "00");
from_start.put("lock_type", "1");
from_start.put("storagevehicle_code", jo.getString("storagevehicle_code"));
from_start.put("is_free", "1");
from_start.put("struct_id", jo.getString("turnout_struct_id"));
storPublicService.updateStructAndPoint(from_start);
//解锁终点点位、仓位,添加载具
JSONObject from_end = new JSONObject();
from_end.put("lock_type", "00");
from_end.put("lock_type", "1");
from_end.put("struct_id", jo.getString("turnin_struct_id"));
from_end.put("storagevehicle_code", jo.getString("storagevehicle_code"));
storPublicService.updateStructAndPoint(from_end);
@@ -749,18 +752,17 @@ public class HandMoveStorServiceImpl implements HandMoveStorService {
WQLObject wo_dis = WQLObject.getWQLObject("st_ivt_moveinvdtl");
//任务表
WQLObject wo_Task = WQLObject.getWQLObject("SCH_BASE_Task");
String taskdtl_id = whereJson.getString("taskdtl_id");
String task_id = whereJson.getString("task_id");
Long currentUserId = SecurityUtils.getCurrentUserId();
String nickName = SecurityUtils.getCurrentNickName();
String now = DateUtil.now();
JSONObject task = wo_Task.query("task_status<>'99' and taskdtl_id='" + taskdtl_id + "'").uniqueResult(0);
JSONObject task = wo_Task.query("task_status<>'99' and task_id='" + task_id + "'").uniqueResult(0);
if (task == null) {
throw new BadRequestException("查询不到操作的任务记录!");
}
String taskdtl_type = task.getString("taskdtl_type");
String task_id = task.getString("task_id");
HashMap<String, String> map = new HashMap<>();
//更新任务为完成
map.put("task_status", TaskStatusEnum.FINISHED.getCode());
@@ -768,7 +770,7 @@ public class HandMoveStorServiceImpl implements HandMoveStorService {
map.put("update_optid", currentUserId + "");
map.put("update_optname", nickName);
map.put("update_time", now);
wo_Task.update(map, "taskdtl_id='" + taskdtl_id + "'");
wo_Task.update(map, "task_id='" + task_id + "'");
map.put("work_status", "99");
wo_dis.update(map, "task_id='" + task_id + "'");
JSONObject dis = wo_dis.query("task_id='" + task_id + "'").uniqueResult(0);
@@ -924,9 +926,9 @@ public class HandMoveStorServiceImpl implements HandMoveStorService {
}
for (int i = 0; i < ja.size(); i++) {
JSONObject jo = ja.getJSONObject(i);
String taskdtl_id = jo.getString("taskdtl_id");
JSONObject result = handMoveStorAcsTask.notifyAcs(taskdtl_id);
JSONObject task = wo_Task.query("taskdtl_id='" + taskdtl_id + "'").uniqueResult(0);
String task_id = jo.getString("task_id");
JSONObject result = handMoveStorAcsTask.notifyAcs(task_id);
JSONObject task = wo_Task.query("task_id='" + task_id + "'").uniqueResult(0);
if (ObjectUtil.isNotEmpty(result)) {
String status = result.getString("status");
if ("200".equals(status)) {
@@ -940,7 +942,7 @@ public class HandMoveStorServiceImpl implements HandMoveStorService {
map.put("update_optid", currentUserId + "");
map.put("update_optname", nickName);
map.put("update_time", now);
wo_Task.update(map, "is_delete ='0' and task_status='01' and taskdtl_id='" + taskdtl_id + "'");
wo_Task.update(map, "is_delete ='0' and task_status='01' and task_id='" + task_id + "'");
} else {
throw new BadRequestException("任务下发失败,请稍后重试!");
}

View File

@@ -86,7 +86,7 @@ public class HandMoveStorAcsTask extends AbstractAcsTask {
WQLObject wo_dtl = WQLObject.getWQLObject("st_ivt_moveinvdtl");
//任务表
WQLObject wo_Task = WQLObject.getWQLObject("SCH_BASE_Task");
JSONObject task = wo_Task.query("task_status<>'99' and taskdtl_id='"+taskdtl_id+"'").uniqueResult(0);
JSONObject task = wo_Task.query("task_status<>'99' and task_id='"+taskdtl_id+"'").uniqueResult(0);
if(task==null){
throw new BadRequestException("查询不到操作的任务记录!");
}

View File

@@ -199,10 +199,8 @@
ivt2.material_id,
ivt2.pcsn,
ivt2.quality_scode,
ivt2.ivt_level,
ivt2.is_active,
ivt2.qty_unit_id,
ivt2.qty_unit_name,
mu.unit_name AS qty_unit_name,
ivt2.ivt_qty AS qty,
mb.material_code,
mb.material_name,
@@ -220,10 +218,11 @@
INNER JOIN ST_IVT_StructIvt ivt2 ON struct.struct_id = ivt2.struct_id
LEFT JOIN md_me_materialbase mb ON mb.material_id = ivt2.material_id
LEFT JOIN SCH_BASE_Point point ON point.source_id = struct.struct_id
LEFT JOIN md_pb_measureunit mu ON mu.measure_unit_id = mb.base_unit_id
WHERE
1 = 1
AND struct.lock_type = '00'
AND struct.storagevehicle_id > 0
AND struct.lock_type = '1'
AND IFNULL(struct.storagevehicle_code,'') <> ''
OPTION 输入.material_id <> ""
ivt2.material_id = 输入.material_id
ENDOPTION
@@ -249,7 +248,7 @@
IF 输入.flag = "4"
QUERY
SELECT
DISTINCT(taskdtl_id)
DISTINCT(task.task_id)
FROM
ST_IVT_MoveInvDtl dtl
INNER JOIN ST_IVT_MoveInv mst ON mst.moveinv_id = dtl.moveinv_id