提交
This commit is contained in:
@@ -0,0 +1,63 @@
|
|||||||
|
package org.nl.wms.common;
|
||||||
|
|
||||||
|
import cn.hutool.core.util.IdUtil;
|
||||||
|
import cn.hutool.core.util.ObjectUtil;
|
||||||
|
import cn.hutool.core.util.StrUtil;
|
||||||
|
import com.alibaba.fastjson.JSONArray;
|
||||||
|
import com.alibaba.fastjson.JSONObject;
|
||||||
|
import org.nl.exception.BadRequestException;
|
||||||
|
import org.nl.wql.WQL;
|
||||||
|
import org.nl.wql.core.bean.WQLObject;
|
||||||
|
|
||||||
|
public class SortingUtil {
|
||||||
|
//记录分拣 木托盘对应钢托盘
|
||||||
|
public static void record(JSONObject whereJson) {
|
||||||
|
String device_code = (String) whereJson.get("device_code");
|
||||||
|
String vehicle_code = (String) whereJson.get("vehicle_code");
|
||||||
|
//木托盘对应刚托盘记录主表【st_buss_vehicleRelaRecord】
|
||||||
|
WQLObject ehicleRelaRecordmst = WQLObject.getWQLObject("st_buss_vehicleRelaRecord");
|
||||||
|
//木托盘对应刚托盘记录明细【st_buss_vehicleRelaRecordtl】
|
||||||
|
WQLObject ehicleRelaRecordmstdtl = WQLObject.getWQLObject("st_buss_vehicleRelaRecordtl");
|
||||||
|
//st_buss_vehiclegroup
|
||||||
|
WQLObject groupTable = WQLObject.getWQLObject("st_buss_vehicleRelaRecordtl");
|
||||||
|
JSONObject mstObj = ehicleRelaRecordmst.query("vehicle_code='" + vehicle_code + "'").uniqueResult(0);
|
||||||
|
String record_id = IdUtil.getSnowflake(1, 1).nextIdStr();
|
||||||
|
if (ObjectUtil.isEmpty(mstObj)) {
|
||||||
|
mstObj.put("record_id", record_id);
|
||||||
|
mstObj.put("vehicle_code", vehicle_code);
|
||||||
|
ehicleRelaRecordmst.insert(mstObj);
|
||||||
|
}
|
||||||
|
|
||||||
|
JSONArray pointArr = new JSONArray();
|
||||||
|
//假如是分拣机械手3,则去查询分拣机械手3下料位置的托盘号码
|
||||||
|
if (StrUtil.equals(device_code, "FJJXSSLW301") || StrUtil.equals("FJJXSSLW302", device_code)) {
|
||||||
|
pointArr = WQL.getWO("WMSTOJN_001").addParam("flag", "4").process().getResultJSONArray(0);
|
||||||
|
} else {
|
||||||
|
pointArr = WQL.getWO("WMSTOJN_001").addParam("flag", "5").process().getResultJSONArray(0);
|
||||||
|
|
||||||
|
}
|
||||||
|
for (int i = 0; i < pointArr.size(); i++) {
|
||||||
|
JSONObject jo = pointArr.getJSONObject(i);
|
||||||
|
String Sl_vehicle_code = jo.getString("vehicle_code");
|
||||||
|
record_id = mstObj.getString("record_id");
|
||||||
|
JSONObject dtljo = ehicleRelaRecordmstdtl.query("record_id='" + record_id + "' and vehicle_code ='" + Sl_vehicle_code + "'").uniqueResult(0);
|
||||||
|
if (ObjectUtil.isEmpty(dtljo)) {
|
||||||
|
JSONObject groupObj = groupTable.query("vehicle_code='" + Sl_vehicle_code + "'", "create_time desc").uniqueResult(0);
|
||||||
|
if (ObjectUtil.isEmpty(groupObj)) {
|
||||||
|
throw new BadRequestException("未找到托盘编号为'" + vehicle_code + "'");
|
||||||
|
}
|
||||||
|
dtljo.put("recordtl_id", IdUtil.getSnowflake(1, 1).nextId());
|
||||||
|
dtljo.put("record_id", record_id);
|
||||||
|
dtljo.put("vehicle_code", Sl_vehicle_code);
|
||||||
|
dtljo.put("producetask_id", groupObj.get("producetask_id"));
|
||||||
|
dtljo.put("material_move_id", groupObj.get("material_move_id"));
|
||||||
|
mstObj.put("material_id", groupObj.get("material_id"));
|
||||||
|
ehicleRelaRecordmst.update(mstObj);
|
||||||
|
ehicleRelaRecordmstdtl.insert(dtljo);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
@@ -109,7 +109,7 @@ IF 输入.flag = "3"
|
|||||||
point.vehicle_code,
|
point.vehicle_code,
|
||||||
ivt.canuse_qty,
|
ivt.canuse_qty,
|
||||||
ivt.workprocedure_id,
|
ivt.workprocedure_id,
|
||||||
ivt.qty_unit_id,
|
ivt.producetask_id,
|
||||||
ruledis.out_seq_no
|
ruledis.out_seq_no
|
||||||
FROM
|
FROM
|
||||||
st_ivt_structivt ivt
|
st_ivt_structivt ivt
|
||||||
@@ -274,8 +274,6 @@ IF 输入.flag = "9"
|
|||||||
point.point_name AS struct_name,
|
point.point_name AS struct_name,
|
||||||
point.vehicle_code,
|
point.vehicle_code,
|
||||||
ivt.canuse_qty,
|
ivt.canuse_qty,
|
||||||
ivt.workprocedure_id,
|
|
||||||
ivt.qty_unit_id,
|
|
||||||
ruledis.out_seq_no,
|
ruledis.out_seq_no,
|
||||||
material.material_id,
|
material.material_id,
|
||||||
material.material_code,
|
material.material_code,
|
||||||
|
|||||||
@@ -90,7 +90,7 @@ public class MaterialDto implements Serializable {
|
|||||||
/**
|
/**
|
||||||
* 是否人工打包
|
* 是否人工打包
|
||||||
*/
|
*/
|
||||||
private String is_manmade;
|
private String is_auto_package;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 码垛数量
|
* 码垛数量
|
||||||
@@ -106,6 +106,10 @@ public class MaterialDto implements Serializable {
|
|||||||
* 外部标识
|
* 外部标识
|
||||||
*/
|
*/
|
||||||
private String ext_id;
|
private String ext_id;
|
||||||
|
/**
|
||||||
|
* 打印模板
|
||||||
|
*/
|
||||||
|
private String print_model;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 静止时间
|
* 静止时间
|
||||||
|
|||||||
@@ -2,6 +2,8 @@
|
|||||||
package org.nl.wms.ext.acs.rest;
|
package org.nl.wms.ext.acs.rest;
|
||||||
|
|
||||||
|
|
||||||
|
import com.alibaba.fastjson.JSON;
|
||||||
|
import com.alibaba.fastjson.JSONArray;
|
||||||
import io.swagger.annotations.Api;
|
import io.swagger.annotations.Api;
|
||||||
import io.swagger.annotations.ApiOperation;
|
import io.swagger.annotations.ApiOperation;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
@@ -106,7 +108,7 @@ public class AcsToWmsController {
|
|||||||
@PostMapping("/status")
|
@PostMapping("/status")
|
||||||
@Log("ACS给WMS反馈任务状态")
|
@Log("ACS给WMS反馈任务状态")
|
||||||
@ApiOperation("ACS给WMS反馈任务状态")
|
@ApiOperation("ACS给WMS反馈任务状态")
|
||||||
public ResponseEntity<Object> receiveTaskStatusAcs(@RequestBody String string) {
|
public ResponseEntity<Object> receiveTaskStatusAcs(@RequestBody String material_code) {
|
||||||
return new ResponseEntity<>(acsToWmsService.receiveTaskStatusAcs(string), HttpStatus.OK);
|
return new ResponseEntity<>(acsToWmsService.receiveTaskStatusAcs(material_code), HttpStatus.OK);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -72,4 +72,5 @@ public class WmsToAcsController {
|
|||||||
return new ResponseEntity<>(wmsToAcsService.queryPointStatus(arr), HttpStatus.OK);
|
return new ResponseEntity<>(wmsToAcsService.queryPointStatus(arr), HttpStatus.OK);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -44,7 +44,35 @@ public class WmsToJnController {
|
|||||||
return new ResponseEntity<>(WmsToJnService.synchroMaterial(whereJson), HttpStatus.OK);
|
return new ResponseEntity<>(WmsToJnService.synchroMaterial(whereJson), HttpStatus.OK);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@PostMapping("/feedBackStatus")
|
||||||
|
@Log("反馈设备状态")
|
||||||
|
@ApiOperation("反馈设备状态")
|
||||||
|
public ResponseEntity<Object> feedBackStatus(@RequestBody Map whereJson) {
|
||||||
|
return new ResponseEntity<>(WmsToJnService.feedBackStatus(whereJson), HttpStatus.OK);
|
||||||
|
}
|
||||||
|
@PostMapping("/feedBackCarryRecord")
|
||||||
|
@Log("反馈搬运记录")
|
||||||
|
@ApiOperation("反馈搬运记录")
|
||||||
|
public ResponseEntity<Object> feedBackCarryRecord(@RequestBody Map whereJson) {
|
||||||
|
return new ResponseEntity<>(WmsToJnService.feedBackCarryRecord(whereJson), HttpStatus.OK);
|
||||||
|
}
|
||||||
|
@PostMapping("/feedBackInKiln")
|
||||||
|
@Log("反馈进窑信息")
|
||||||
|
@ApiOperation("反馈进窑信息")
|
||||||
|
public ResponseEntity<Object> feedBackInKiln(@RequestBody Map whereJson) {
|
||||||
|
return new ResponseEntity<>(WmsToJnService.feedBackInKiln(whereJson), HttpStatus.OK);
|
||||||
|
}
|
||||||
|
@PostMapping("/feedBackOutKiln")
|
||||||
|
@Log("反馈出窑信息")
|
||||||
|
@ApiOperation("反馈出窑信息")
|
||||||
|
public ResponseEntity<Object> feedBackOutKiln(@RequestBody Map whereJson) {
|
||||||
|
return new ResponseEntity<>(WmsToJnService.feedBackOutKiln(whereJson), HttpStatus.OK);
|
||||||
|
}
|
||||||
|
@PostMapping("/feedBackPackage")
|
||||||
|
@Log("反馈包装信息")
|
||||||
|
@ApiOperation("反馈包装信息")
|
||||||
|
public ResponseEntity<Object> feedBackPackage(@RequestBody Map whereJson) {
|
||||||
|
return new ResponseEntity<>(WmsToJnService.feedBackPackage(whereJson), HttpStatus.OK);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -86,10 +86,19 @@ public interface AcsToWmsService {
|
|||||||
* ACS客户端--->WMS服务端
|
* ACS客户端--->WMS服务端
|
||||||
* ACS向WMS反馈任务状态
|
* ACS向WMS反馈任务状态
|
||||||
*
|
*
|
||||||
* @param jsonObject 条件
|
* @param string 条件
|
||||||
* @return Map<String, Object>
|
* @return Map<String, Object>
|
||||||
*/
|
*/
|
||||||
|
|
||||||
Map<String, Object> receiveTaskStatusAcs(String string);
|
Map<String, Object> receiveTaskStatusAcs(String string);
|
||||||
|
/**
|
||||||
|
* ACS客户端--->WMS服务端
|
||||||
|
* 根据物料编码获取垛形参数
|
||||||
|
*
|
||||||
|
* @param string 条件 物料条码
|
||||||
|
* @return Map<String, Object>
|
||||||
|
*/
|
||||||
|
|
||||||
|
Map<String, Object> CribbingInfoByCode(String material_code);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -32,14 +32,7 @@ public interface WmsToJnService {
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
Map<String, Object> feedBackStatus(Map whereJson);
|
Map<String, Object> feedBackStatus(Map whereJson);
|
||||||
/**
|
|
||||||
* WMS 反馈物料托盘参数信息
|
|
||||||
*
|
|
||||||
* @param
|
|
||||||
* @return Map<String, Object>
|
|
||||||
*/
|
|
||||||
|
|
||||||
Map<String, Object> feedBackGroup(Map whereJson);
|
|
||||||
/**
|
/**
|
||||||
* WMS 反馈搬运记录
|
* WMS 反馈搬运记录
|
||||||
*
|
*
|
||||||
@@ -49,6 +42,33 @@ public interface WmsToJnService {
|
|||||||
|
|
||||||
Map<String, Object> feedBackCarryRecord(Map whereJson);
|
Map<String, Object> feedBackCarryRecord(Map whereJson);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* WMS 反馈进窑信息
|
||||||
|
*
|
||||||
|
* @param
|
||||||
|
* @return Map<String, Object>
|
||||||
|
*/
|
||||||
|
|
||||||
|
Map<String, Object> feedBackInKiln(Map whereJson);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* WMS 反馈出窑信息
|
||||||
|
*
|
||||||
|
* @param
|
||||||
|
* @return Map<String, Object>
|
||||||
|
*/
|
||||||
|
|
||||||
|
Map<String, Object> feedBackOutKiln(Map whereJson);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* WMS 反馈包装信息
|
||||||
|
*
|
||||||
|
* @param
|
||||||
|
* @return Map<String, Object>
|
||||||
|
*/
|
||||||
|
|
||||||
|
Map<String, Object> feedBackPackage(Map whereJson);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -9,7 +9,6 @@ import com.alibaba.fastjson.JSONArray;
|
|||||||
import com.alibaba.fastjson.JSONObject;
|
import com.alibaba.fastjson.JSONObject;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.checkerframework.checker.units.qual.K;
|
|
||||||
import org.nl.exception.BadRequestException;
|
import org.nl.exception.BadRequestException;
|
||||||
import org.nl.modules.system.util.CodeUtil;
|
import org.nl.modules.system.util.CodeUtil;
|
||||||
import org.nl.utils.SecurityUtils;
|
import org.nl.utils.SecurityUtils;
|
||||||
@@ -81,7 +80,7 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
|
|||||||
throw new BadRequestException("托盘是否满托不能为空!");
|
throw new BadRequestException("托盘是否满托不能为空!");
|
||||||
}
|
}
|
||||||
String material_code = (String) jsonObject.get("material_code");
|
String material_code = (String) jsonObject.get("material_code");
|
||||||
String pcsn = (String) jsonObject.get("pcsn");
|
String producetask_id = (String)jsonObject.get("producetask_id");
|
||||||
String material_id = "";
|
String material_id = "";
|
||||||
JSONObject materialObj = WQLObject.getWQLObject("md_me_material").query("material_code ='" + material_code + "'").uniqueResult(0);
|
JSONObject materialObj = WQLObject.getWQLObject("md_me_material").query("material_code ='" + material_code + "'").uniqueResult(0);
|
||||||
if (StrUtil.isEmpty(material_code) && (!StrUtil.equals(device_code, "CYSSX101"))) {
|
if (StrUtil.isEmpty(material_code) && (!StrUtil.equals(device_code, "CYSSX101"))) {
|
||||||
@@ -101,18 +100,15 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
|
|||||||
throw new BadRequestException("为找到载具号为'" + vehicle_code + "'的组盘信息!");
|
throw new BadRequestException("为找到载具号为'" + vehicle_code + "'的组盘信息!");
|
||||||
}
|
}
|
||||||
material_id = vehicleObj.getString("material_id");
|
material_id = vehicleObj.getString("material_id");
|
||||||
pcsn = vehicleObj.getString("pcsn");
|
|
||||||
jsonObject.put("qty", vehicleObj.getString("qty"));
|
jsonObject.put("qty", vehicleObj.getString("qty"));
|
||||||
jsonObject.put("vehicle_code", vehicle_code);
|
jsonObject.put("vehicle_code", vehicle_code);
|
||||||
}
|
}
|
||||||
|
jsonObject.put("producetask_id",producetask_id);
|
||||||
jsonObject.put("pcsn", pcsn);
|
|
||||||
jsonObject.put("create_mode", "01");
|
jsonObject.put("create_mode", "01");
|
||||||
jsonObject.put("material_id", material_id);
|
jsonObject.put("material_id", material_id);
|
||||||
JSONObject materiralObj = WQLObject.getWQLObject("md_me_material").query("material_id = '" + material_id + "'").uniqueResult(0);
|
JSONObject materiralObj = WQLObject.getWQLObject("md_me_material").query("material_id = '" + material_id + "'").uniqueResult(0);
|
||||||
Double stewing_time = materiralObj.getDouble("stewing_time");
|
Double stewing_time = materiralObj.getDouble("stewing_time");
|
||||||
jsonObject.put("stewing_time", stewing_time);
|
jsonObject.put("stewing_time", stewing_time);
|
||||||
jsonObject.put("producetask_id", produceInfoByCode.getString("producetask_id"));
|
|
||||||
//假如是压制下料的几个位置,则要考虑是入输送线 还是入立体库
|
//假如是压制下料的几个位置,则要考虑是入输送线 还是入立体库
|
||||||
String area_type = pointTable.query("point_code ='" + device_code + "'").uniqueResult(0).getString("area_type");
|
String area_type = pointTable.query("point_code ='" + device_code + "'").uniqueResult(0).getString("area_type");
|
||||||
if (StrUtil.equals(area_type, AreaEnum.YZQY.getCode()) && stewing_time <= 0) {
|
if (StrUtil.equals(area_type, AreaEnum.YZQY.getCode()) && stewing_time <= 0) {
|
||||||
@@ -262,7 +258,6 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
|
|||||||
JSONObject groubObj = new JSONObject();
|
JSONObject groubObj = new JSONObject();
|
||||||
String group_id = IdUtil.getSnowflake(1, 1).nextId() + "";
|
String group_id = IdUtil.getSnowflake(1, 1).nextId() + "";
|
||||||
groubObj.put("group_id", group_id);
|
groubObj.put("group_id", group_id);
|
||||||
|
|
||||||
groubObj.put("material_id", material_id);
|
groubObj.put("material_id", material_id);
|
||||||
groubObj.put("material_code", materialObj.getString("material_code"));
|
groubObj.put("material_code", materialObj.getString("material_code"));
|
||||||
groubObj.put("material_name", materialObj.getString("material_name"));
|
groubObj.put("material_name", materialObj.getString("material_name"));
|
||||||
@@ -330,11 +325,8 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
|
|||||||
groubObj.put("create_id", SecurityUtils.getCurrentUserId());
|
groubObj.put("create_id", SecurityUtils.getCurrentUserId());
|
||||||
groubObj.put("create_name", SecurityUtils.getNickName());
|
groubObj.put("create_name", SecurityUtils.getNickName());
|
||||||
groubObj.put("create_time", DateUtil.now());
|
groubObj.put("create_time", DateUtil.now());
|
||||||
String is_autopackage = "1";
|
//去自动码垛还是人工码垛从物料信息里面去取
|
||||||
if (StrUtil.equals(device_code, "MDJXS601")) {
|
groubObj.put("is_autopackage", materialObj.getString("is_auto_package"));
|
||||||
is_autopackage = "0";
|
|
||||||
}
|
|
||||||
groubObj.put("is_autopackage", is_autopackage);
|
|
||||||
//假如是分拣机械手,并且托盘为空,则托盘从点位上取
|
//假如是分拣机械手,并且托盘为空,则托盘从点位上取
|
||||||
if ((StrUtil.equals(device_code, "FJJXSXLW201") ||
|
if ((StrUtil.equals(device_code, "FJJXSXLW201") ||
|
||||||
StrUtil.equals(device_code, "FJJXSXLW202") ||
|
StrUtil.equals(device_code, "FJJXSXLW202") ||
|
||||||
@@ -349,6 +341,7 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
|
|||||||
WQLObject.getWQLObject("st_buss_vehiclegroup").insert(groubObj);
|
WQLObject.getWQLObject("st_buss_vehiclegroup").insert(groubObj);
|
||||||
jsonObject.put("type", "1");
|
jsonObject.put("type", "1");
|
||||||
jsonObject.put("group_id", group_id);
|
jsonObject.put("group_id", group_id);
|
||||||
|
jsonObject.put("producetask_id", producetask_id);
|
||||||
this.receiveTaskFromAcs(jsonObject);
|
this.receiveTaskFromAcs(jsonObject);
|
||||||
JSONObject result = new JSONObject();
|
JSONObject result = new JSONObject();
|
||||||
result.put("status", HttpStatus.OK.value());
|
result.put("status", HttpStatus.OK.value());
|
||||||
@@ -574,10 +567,10 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
//根据设备去找设备id
|
//根据设备去找设备id
|
||||||
JSONObject deviceObj = WQLObject.getWQLObject("PDM_BASE_DEVICE").query("device_code='" + device_code + "'").uniqueResult(0);
|
String device_id = WQLObject.getWQLObject("sch_base_point").query("point_code='" + device_code + "'").uniqueResult(0).getString("device_id");
|
||||||
//根据物料code 去找物料id
|
//根据物料code 去找物料id
|
||||||
JSONObject materiObj = WQLObject.getWQLObject("MD_ME_Material").query("material_code='" + material_code + "'").uniqueResult(0);
|
JSONObject materiObj = WQLObject.getWQLObject("MD_ME_Material").query("material_code='" + material_code + "'").uniqueResult(0);
|
||||||
if (!StrUtil.equals(deviceObj.getString("device_id"), taskObj.getString("device_id"))) {
|
if (!StrUtil.equals(device_id, taskObj.getString("device_id"))) {
|
||||||
throw new BadRequestException("设备标识不一样!");
|
throw new BadRequestException("设备标识不一样!");
|
||||||
}
|
}
|
||||||
if (!StrUtil.equals(materiObj.getString("material_id"), taskObj.getString("material_id"))) {
|
if (!StrUtil.equals(materiObj.getString("material_id"), taskObj.getString("material_id"))) {
|
||||||
@@ -687,6 +680,22 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Map<String, Object> CribbingInfoByCode(String material_code) {
|
||||||
|
if (StrUtil.isEmpty(material_code)) {
|
||||||
|
throw new BadRequestException("物料条码不能为空!");
|
||||||
|
}
|
||||||
|
JSONObject returnjo = WQLObject.getWQLObject("MD_ME_CribbingInfo").query("material_code='" + material_code + "'").uniqueResult(0);
|
||||||
|
if (ObjectUtil.isEmpty(returnjo)) {
|
||||||
|
throw new BadRequestException("未找到物料编码为'" + material_code + "'的垛形参数信息!");
|
||||||
|
}
|
||||||
|
JSONObject result = new JSONObject();
|
||||||
|
result.put("status", HttpStatus.OK.value());
|
||||||
|
result.put("message", "任务状态反馈成功!");
|
||||||
|
result.put("data", returnjo);
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
private JSONObject getProduceInfoByCode(String code) {
|
private JSONObject getProduceInfoByCode(String code) {
|
||||||
//根据 设备点位去找生产任务信息
|
//根据 设备点位去找生产任务信息
|
||||||
//1 根据点位去找设备,去找对应的设备信息
|
//1 根据点位去找设备,去找对应的设备信息
|
||||||
@@ -694,7 +703,7 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
|
|||||||
String device_id = pointObj.getString("device_id");
|
String device_id = pointObj.getString("device_id");
|
||||||
//2 根据设备去找对应的生产任务
|
//2 根据设备去找对应的生产任务
|
||||||
JSONObject productTaskObj = WQLObject.getWQLObject("PDM_MG_produceTask")
|
JSONObject productTaskObj = WQLObject.getWQLObject("PDM_MG_produceTask")
|
||||||
.query("device_id ='" + device_id + "' and producetask_status in ('03','02','04')", "seq_no")
|
.query("device_id ='" + device_id + "' and producetask_status in ('03','02','04')")
|
||||||
.uniqueResult(0);
|
.uniqueResult(0);
|
||||||
if (ObjectUtil.isEmpty(productTaskObj)) {
|
if (ObjectUtil.isEmpty(productTaskObj)) {
|
||||||
throw new BadRequestException("未找到点位为'" + code + "'的生产任务!");
|
throw new BadRequestException("未找到点位为'" + code + "'的生产任务!");
|
||||||
|
|||||||
@@ -9,12 +9,19 @@ import com.alibaba.fastjson.JSONArray;
|
|||||||
import com.alibaba.fastjson.JSONObject;
|
import com.alibaba.fastjson.JSONObject;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.apache.poi.ss.formula.functions.T;
|
||||||
|
import org.nl.exception.BadRequestException;
|
||||||
|
import org.nl.modules.system.util.CodeUtil;
|
||||||
|
import org.nl.utils.SecurityUtils;
|
||||||
import org.nl.wms.ext.acs.service.WmsToAcsService;
|
import org.nl.wms.ext.acs.service.WmsToAcsService;
|
||||||
import org.nl.wms.ext.acs.service.WmsToJnService;
|
import org.nl.wms.ext.acs.service.WmsToJnService;
|
||||||
import org.nl.wms.sch.AcsUtil;
|
import org.nl.wms.sch.AcsUtil;
|
||||||
import org.nl.wql.WQL;
|
import org.nl.wql.WQL;
|
||||||
import org.nl.wql.core.bean.WQLObject;
|
import org.nl.wql.core.bean.WQLObject;
|
||||||
|
import org.nl.wql.core.engine.object.WO;
|
||||||
|
import org.springframework.http.HttpStatus;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
|
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
@@ -25,106 +32,206 @@ import java.util.Map;
|
|||||||
public class WmsToJnServiceImpl implements WmsToJnService {
|
public class WmsToJnServiceImpl implements WmsToJnService {
|
||||||
private String URL = "192.168.23.32";
|
private String URL = "192.168.23.32";
|
||||||
final static int timeout = 3000;
|
final static int timeout = 3000;
|
||||||
private String today = DateUtil.today();
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Map<String, Object> synchroDaySchedule(Map whereJson) {
|
public Map<String, Object> synchroDaySchedule(Map whereJson) {
|
||||||
|
String today = DateUtil.today();
|
||||||
//同步日计划
|
//同步日计划
|
||||||
JSONObject obj = new JSONObject();
|
JSONObject obj = new JSONObject();
|
||||||
obj.put("date", today);
|
obj.put("startdate", whereJson.get("startdate"));
|
||||||
|
obj.put("enddate", whereJson.get("enddate"));
|
||||||
String resultMsg = HttpRequest.post(URL)
|
String resultMsg = HttpRequest.post(URL)
|
||||||
.body(String.valueOf(obj)).timeout(timeout)
|
.body(String.valueOf(obj)).timeout(timeout)
|
||||||
.execute().body();
|
.execute().body();
|
||||||
JSONObject result = JSONObject.parseObject(resultMsg);
|
JSONObject result = JSONObject.parseObject(resultMsg);
|
||||||
String code = result.getString("code");
|
String status = result.getString("status");
|
||||||
if (StrUtil.isNotEmpty(code) && code.equals("200")) {
|
if (StrUtil.isNotEmpty(status) && status.equals("1")) {
|
||||||
log.info("wms同步嘉耐日计划成功!");
|
log.info("wms同步嘉耐工单成功!");
|
||||||
} else {
|
} else {
|
||||||
log.info("wms同步嘉耐日计划失败!");
|
log.info("wms同步嘉耐工单失败!");
|
||||||
}
|
}
|
||||||
WQLObject dayScheduleTable = WQLObject.getWQLObject("pdm_bi_dayschedule");
|
WQLObject produceTaskTable = WQLObject.getWQLObject("PDM_MG_produceTask");
|
||||||
JSONArray dayScheduleArr = result.getJSONArray("data");
|
WQLObject material_table = WQLObject.getWQLObject("md_me_materialbase");
|
||||||
|
WQLObject device_Table = WQLObject.getWQLObject("PDM_BASE_DEVICE");
|
||||||
|
JSONArray dayScheduleArr = result.getJSONObject("returnData").getJSONArray("Table");
|
||||||
for (int i = 0; i < dayScheduleArr.size(); i++) {
|
for (int i = 0; i < dayScheduleArr.size(); i++) {
|
||||||
JSONObject dayScheduleObj = dayScheduleArr.getJSONObject(i);
|
JSONObject dayScheduleObj = dayScheduleArr.getJSONObject(i);
|
||||||
JSONObject scheduleObj = dayScheduleTable.query("ext_dayschedule_code='" + dayScheduleObj.getString("ext_dayschedule_code") + "'").uniqueResult(0);
|
//计划单号
|
||||||
|
String SHOPORDERNO = dayScheduleObj.getString("SHOPORDERNO");
|
||||||
|
//物料代码
|
||||||
|
String ITEMCODE = dayScheduleObj.getString("ITEMCODE");
|
||||||
|
//压机编号
|
||||||
|
String SBDM = dayScheduleObj.getString("SBDM");
|
||||||
|
JSONObject materialObj = material_table.query("material_code ='" + ITEMCODE + "'").uniqueResult(0);
|
||||||
|
JSONObject deviceObj = device_Table.query("ext_device_code='" + SBDM + "'").uniqueResult(0);
|
||||||
|
JSONObject scheduleObj = produceTaskTable.query("ext_shoporder_no='" + SHOPORDERNO + "'").uniqueResult(0);
|
||||||
if (ObjectUtil.isEmpty(scheduleObj)) {
|
if (ObjectUtil.isEmpty(scheduleObj)) {
|
||||||
JSONObject jo = new JSONObject();
|
JSONObject jo = new JSONObject();
|
||||||
jo.put("dayschedule_id", IdUtil.getSnowflake(1, 1).nextId());
|
jo.put("producetask_id", IdUtil.getSnowflake(1, 1).nextId());
|
||||||
jo.put("ext_dayschedule_code", scheduleObj.getString("ext_dayschedule_code"));
|
jo.put("producetask_code", CodeUtil.getNewCode("PRODUCE_CODE"));
|
||||||
jo.put("date", today);
|
jo.put("producetask_status", "01");
|
||||||
jo.put("ext_dayschedule_code", scheduleObj.getString("ext_dayschedule_code"));
|
jo.put("material_id", materialObj.getString("material_id"));
|
||||||
jo.put("ext_device_code", scheduleObj.getString("ext_device_code"));
|
jo.put("device_id", deviceObj.getString("device_id"));
|
||||||
jo.put("device_id", scheduleObj.getString("device_id"));
|
jo.put("plan_qty", deviceObj.getString("REQQTY"));
|
||||||
jo.put("device_code", scheduleObj.getString("device_code"));
|
jo.put("vehicle_type", deviceObj.getString("STOCKTYPE"));
|
||||||
jo.put("material_id", scheduleObj.getString("material_id"));
|
jo.put("plan_date", deviceObj.getString("PLANSTARTDATE"));
|
||||||
jo.put("material_code", scheduleObj.getString("material_code"));
|
jo.put("classes", deviceObj.getString("BANCI"));
|
||||||
jo.put("material_name", scheduleObj.getString("material_name"));
|
jo.put("ext_shoporder_no", deviceObj.getString("SHOPORDERNO"));
|
||||||
jo.put("material_spec", scheduleObj.getString("material_spec"));
|
jo.put("print_type", deviceObj.getString("PRINTTYPE"));
|
||||||
jo.put("single_weight", scheduleObj.getString("single_weight"));
|
jo.put("print_dm", deviceObj.getString("PRINTDM"));
|
||||||
jo.put("qty", scheduleObj.getString("qty"));
|
jo.put("print_name", deviceObj.getString("PRINTNAME"));
|
||||||
jo.put("qty_unit_id", scheduleObj.getString("qty_unit_id"));
|
jo.put("print_gg", deviceObj.getString("PRINTGG"));
|
||||||
jo.put("label", scheduleObj.getString("label"));
|
jo.put("print_pc", deviceObj.getString("PRINTPC"));
|
||||||
jo.put("is_delete", "1");
|
jo.put("yh_name", deviceObj.getString("YHNAME"));
|
||||||
dayScheduleTable.insert(jo);
|
jo.put("is_export", "1");
|
||||||
|
jo.put("is_export", deviceObj.getString("STOCKTYPE"));
|
||||||
|
jo.put("create_id", SecurityUtils.getCurrentUserId());
|
||||||
|
jo.put("create_name", SecurityUtils.getNickName());
|
||||||
|
jo.put("create_time", DateUtil.now());
|
||||||
|
produceTaskTable.insert(jo);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return null;
|
JSONObject returnjo = new JSONObject();
|
||||||
|
returnjo.put("status", HttpStatus.OK.value());
|
||||||
|
returnjo.put("message", "任务状态反馈成功!");
|
||||||
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@Transactional(rollbackFor = Exception.class)
|
||||||
public Map<String, Object> synchroMaterial(Map whereJson) {
|
public Map<String, Object> synchroMaterial(Map whereJson) {
|
||||||
String material_code = (String) whereJson.get("material_code");
|
String methon = "getItems";
|
||||||
String material_name = (String) whereJson.get("material_name");
|
/**
|
||||||
String material_spec = (String) whereJson.get("material_spec");
|
* DM: "物料代码",
|
||||||
String ext_id = (String) whereJson.get("ext_id");
|
* NAME: "物料名称",
|
||||||
WQLObject materialTable = WQLObject.getWQLObject("md_me_material");
|
* GG: "规格型号",
|
||||||
|
* JLDWNAME: "计量单位",
|
||||||
|
* PRINTTYPE: "打印模板编码",
|
||||||
|
* WAITTIME:”静止时间(分钟)”,
|
||||||
|
* ISAUTO:”是否自动码垛” 0-否 1-是
|
||||||
|
*/
|
||||||
|
WQLObject material_table = WQLObject.getWQLObject("MD_ME_Material");
|
||||||
JSONObject obj = new JSONObject();
|
JSONObject obj = new JSONObject();
|
||||||
obj.put("material_code", material_code);
|
|
||||||
obj.put("material_spec", material_spec);
|
|
||||||
String resultMsg = HttpRequest.post(URL)
|
String resultMsg = HttpRequest.post(URL)
|
||||||
.body(String.valueOf(obj)).timeout(timeout)
|
.body(String.valueOf(obj)).timeout(timeout)
|
||||||
.execute().body();
|
.execute().body();
|
||||||
JSONObject result = JSONObject.parseObject(resultMsg);
|
JSONObject result = JSONObject.parseObject(resultMsg);
|
||||||
String code = result.getString("code");
|
String status = result.getString("status");
|
||||||
if (StrUtil.isNotEmpty(code) && code.equals("200")) {
|
if (StrUtil.isNotEmpty(status) && status.equals("1")) {
|
||||||
log.info("wms同步嘉耐物料成功!");
|
log.info("wms同步嘉耐物料成功!");
|
||||||
} else {
|
} else {
|
||||||
log.info("wms同步嘉耐物料失败!");
|
log.info("wms同步嘉耐物料失败!");
|
||||||
}
|
}
|
||||||
JSONArray materialarr = result.getJSONArray("data");
|
JSONArray Table = new JSONArray();
|
||||||
|
JSONObject param = new JSONObject();
|
||||||
|
|
||||||
|
JSONArray materialarr = result.getJSONArray("Table");
|
||||||
for (int i = 0; i < materialarr.size(); i++) {
|
for (int i = 0; i < materialarr.size(); i++) {
|
||||||
JSONObject materialjo = materialarr.getJSONObject(i);
|
JSONObject materialjo = materialarr.getJSONObject(i);
|
||||||
JSONObject materialObj = new JSONObject();
|
String DM = materialjo.getString("DM");
|
||||||
materialObj.put("material_id", IdUtil.getSnowflake(1, 1).nextId());
|
param.put("ITEMCODE", DM);
|
||||||
materialObj.put("material_code", materialjo.getString("material_code"));
|
Table.add(param);
|
||||||
materialObj.put("material_name", materialjo.getString("material_name"));
|
JSONObject materialObj = material_table.query("material_code='" + DM + "'").uniqueResult(0);
|
||||||
materialObj.put("material_spec", materialjo.getString("material_spec"));
|
//如果有就更新,没有就插入
|
||||||
materialObj.put("material_model", materialjo.getString("material_name"));
|
if (ObjectUtil.isEmpty(materialObj)) {
|
||||||
materialObj.put("create_id", "1");
|
materialObj.put("material_name", materialjo.getString("NAME"));
|
||||||
materialObj.put("create_time", DateUtil.now());
|
materialObj.put("material_spec", materialjo.getString("GG"));
|
||||||
materialObj.put("create_name", "qinx");
|
materialObj.put("material_model", materialjo.getString("GG"));
|
||||||
|
materialObj.put("english_name", materialjo.getString("NAME"));
|
||||||
|
materialObj.put("stewing_time", materialjo.getString("WAITTIME"));
|
||||||
|
materialObj.put("print_model", materialjo.getString("PRINTTYPE"));
|
||||||
|
materialObj.put("is_auto_package", materialjo.getString("ISAUTO"));
|
||||||
materialObj.put("is_used", "1");
|
materialObj.put("is_used", "1");
|
||||||
materialObj.put("is_manmade", "1");
|
materialObj.put("update_optid", SecurityUtils.getCurrentUserId());
|
||||||
materialObj.put("ext_id", materialjo.getString("ext_id"));
|
materialObj.put("update_optname", SecurityUtils.getNickName());
|
||||||
materialObj.put("stewing_time", 0);
|
materialObj.put("update_time", DateUtil.now());
|
||||||
materialTable.insert(materialjo);
|
material_table.update(materialObj);
|
||||||
|
} else {
|
||||||
|
materialObj.put("material_id", IdUtil.getSnowflake(1, 1).nextId());
|
||||||
|
materialObj.put("material_name", materialjo.getString("NAME"));
|
||||||
|
materialObj.put("material_code", materialjo.getString("GG"));
|
||||||
|
materialObj.put("material_model", materialjo.getString("GG"));
|
||||||
|
materialObj.put("english_name", materialjo.getString("NAME"));
|
||||||
|
materialObj.put("print_model", materialjo.getString("PRINTTYPE"));
|
||||||
|
materialObj.put("is_auto_package", materialjo.getString("ISAUTO"));
|
||||||
|
materialObj.put("is_used", "1");
|
||||||
|
materialObj.put("create_id", SecurityUtils.getCurrentUserId());
|
||||||
|
materialObj.put("create_name", SecurityUtils.getNickName());
|
||||||
|
materialObj.put("create_time", DateUtil.now());
|
||||||
|
materialObj.put("update_optid", SecurityUtils.getCurrentUserId());
|
||||||
|
materialObj.put("update_optname", SecurityUtils.getNickName());
|
||||||
|
materialObj.put("update_time", DateUtil.now());
|
||||||
|
material_table.insert(materialObj);
|
||||||
}
|
}
|
||||||
return null;
|
|
||||||
|
}
|
||||||
|
//调用接口告诉wms 调用已经同步该物料
|
||||||
|
String returnResultMsg = HttpRequest.post(URL)
|
||||||
|
.body(String.valueOf(obj)).timeout(timeout)
|
||||||
|
.execute().body();
|
||||||
|
JSONObject returnResult = JSONObject.parseObject(returnResultMsg);
|
||||||
|
String returnStatus = returnResult.getString("status");
|
||||||
|
if (StrUtil.isNotEmpty(returnStatus) && returnStatus.equals("1")) {
|
||||||
|
log.info("wms反馈嘉耐物料成功!");
|
||||||
|
} else {
|
||||||
|
log.info("wms反馈嘉耐物料失败!");
|
||||||
|
}
|
||||||
|
JSONObject returnjo = new JSONObject();
|
||||||
|
returnjo.put("status", HttpStatus.OK.value());
|
||||||
|
returnjo.put("message", "任务状态反馈成功!");
|
||||||
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Map<String, Object> feedBackStatus(Map whereJson) {
|
public Map<String, Object> feedBackStatus(Map whereJson) {
|
||||||
|
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public Map<String, Object> feedBackGroup(Map whereJson) {
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Map<String, Object> feedBackCarryRecord(Map whereJson) {
|
public Map<String, Object> feedBackCarryRecord(Map whereJson) {
|
||||||
|
String value = WQLObject.getWQLObject("sys_param").query("code='IS_CONNECT_JN'").uniqueResult(0).getString("value");
|
||||||
|
//如果连接了嘉耐 则反馈搬运记录
|
||||||
|
if (StrUtil.equals(value, "1")) {
|
||||||
|
String task_id = (String) whereJson.get("task_id");
|
||||||
|
JSONObject jsonObject = WQL.getWO("WMSTOJN_001").addParam("flag", "1").addParam("task_id", task_id).process().uniqueResult(0);
|
||||||
|
String returnResultMsg = HttpRequest.post(URL)
|
||||||
|
.body(String.valueOf(jsonObject)).timeout(timeout)
|
||||||
|
.execute().body();
|
||||||
|
}
|
||||||
|
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Map<String, Object> feedBackInKiln(Map whereJson) {
|
||||||
|
String vehicle_code = (String) whereJson.get("vehicle_code");
|
||||||
|
JSONObject jsonObject = WQL.getWO("WMSTOJN_001").addParam("flag", "2").addParam("vehicle_code", vehicle_code).process().uniqueResult(0);
|
||||||
|
String returnResultMsg = HttpRequest.post(URL)
|
||||||
|
.body(String.valueOf(jsonObject)).timeout(timeout)
|
||||||
|
.execute().body();
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Map<String, Object> feedBackOutKiln(Map whereJson) {
|
||||||
|
String vehicle_code = (String) whereJson.get("vehicle_code");
|
||||||
|
JSONObject jsonObject = WQL.getWO("WMSTOJN_001").addParam("flag", "3").addParam("vehicle_code", vehicle_code).process().uniqueResult(0);
|
||||||
|
String returnResultMsg = HttpRequest.post(URL)
|
||||||
|
.body(String.valueOf(jsonObject)).timeout(timeout)
|
||||||
|
.execute().body();
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Map<String, Object> feedBackPackage(Map whereJson) {
|
||||||
|
//木托盘号码
|
||||||
|
String vehicle_code = (String) whereJson.get("vehicle_code");
|
||||||
|
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,121 @@
|
|||||||
|
[交易说明]
|
||||||
|
交易名: wms给嘉耐发请求
|
||||||
|
所属模块:
|
||||||
|
功能简述:
|
||||||
|
版权所有:
|
||||||
|
表引用:
|
||||||
|
版本经历:
|
||||||
|
|
||||||
|
[数据库]
|
||||||
|
--指定数据库,为空采用默认值,默认为db.properties中列出的第一个库
|
||||||
|
|
||||||
|
[IO定义]
|
||||||
|
#################################################
|
||||||
|
## 表字段对应输入参数
|
||||||
|
#################################################
|
||||||
|
输入.flag TYPEAS s_string
|
||||||
|
输入.task TYPEAS s_string
|
||||||
|
|
||||||
|
[临时表]
|
||||||
|
--这边列出来的临时表就会在运行期动态创建
|
||||||
|
|
||||||
|
[临时变量]
|
||||||
|
--所有中间过程变量均可在此处定义
|
||||||
|
|
||||||
|
[业务过程]
|
||||||
|
|
||||||
|
##########################################
|
||||||
|
# 1、输入输出检查 #
|
||||||
|
##########################################
|
||||||
|
|
||||||
|
|
||||||
|
##########################################
|
||||||
|
# 2、主过程前处理 #
|
||||||
|
##########################################
|
||||||
|
|
||||||
|
|
||||||
|
##########################################
|
||||||
|
# 3、业务主过程 #
|
||||||
|
##########################################
|
||||||
|
|
||||||
|
IF 输入.flag = "1"
|
||||||
|
QUERY
|
||||||
|
SELECT
|
||||||
|
vehicle_group.material_move_id AS ID,
|
||||||
|
device.ext_device_code AS SBDM,
|
||||||
|
task.car_no AS AGVNO,
|
||||||
|
producetask.ext_shoporder_no AS SHOPORDERNO,
|
||||||
|
vehicle_group.material_code AS ITEMCODE,
|
||||||
|
task.create_time AS STARTDATE,
|
||||||
|
task.update_time AS WAITDATE,
|
||||||
|
task.vehicle_code AS STOCKNO,
|
||||||
|
vehicle_group.qty AS QTY
|
||||||
|
FROM
|
||||||
|
sch_base_task task
|
||||||
|
LEFT JOIN st_buss_vehiclegroup vehicle_group ON vehicle_group.material_move_id = task.task_id
|
||||||
|
LEFT JOIN sch_base_point point ON point.point_code = task.start_point_code
|
||||||
|
LEFT JOIN pdm_base_device device ON device.device_id = point.device_id
|
||||||
|
LEFT JOIN pdm_mg_producetask producetask ON producetask.producetask_id = vehicle_group.producetask_id
|
||||||
|
OPTION 输入.task_id <> ""
|
||||||
|
task.task_id = 输入.task_id
|
||||||
|
ENDOPTION
|
||||||
|
ENDSELECT
|
||||||
|
ENDQUERY
|
||||||
|
ENDIF
|
||||||
|
|
||||||
|
|
||||||
|
IF 输入.flag = "2"
|
||||||
|
QUERY
|
||||||
|
SELECT
|
||||||
|
vehicle_group.vehicle_code,
|
||||||
|
vehicle_group.material_move_id AS ID,
|
||||||
|
kiln.in_time AS INDATE
|
||||||
|
FROM
|
||||||
|
pdm_bi_kilnrecord kiln
|
||||||
|
LEFT JOIN st_buss_vehiclegroup vehicle_group ON kiln.vehicle_code = vehicle_group.vehicle_code
|
||||||
|
OPTION 输入.vehicle_code <> ""
|
||||||
|
kiln.vehicle_code = 输入.vehicle_code
|
||||||
|
ENDOPTION
|
||||||
|
ENDSELECT
|
||||||
|
ENDQUERY
|
||||||
|
ENDIF
|
||||||
|
|
||||||
|
IF 输入.flag = "3"
|
||||||
|
QUERY
|
||||||
|
SELECT
|
||||||
|
vehicle_group.vehicle_code,
|
||||||
|
vehicle_group.material_move_id AS ID,
|
||||||
|
kiln.out_time AS OUTDATE
|
||||||
|
FROM
|
||||||
|
pdm_bi_kilnrecord kiln
|
||||||
|
LEFT JOIN st_buss_vehiclegroup vehicle_group ON kiln.vehicle_code = vehicle_group.vehicle_code
|
||||||
|
OPTION 输入.vehicle_code <> ""
|
||||||
|
kiln.vehicle_code = 输入.vehicle_code
|
||||||
|
ENDOPTION
|
||||||
|
ENDSELECT
|
||||||
|
ENDQUERY
|
||||||
|
ENDIF
|
||||||
|
IF 输入.flag = "4"
|
||||||
|
QUERY
|
||||||
|
SELECT
|
||||||
|
*
|
||||||
|
FROM
|
||||||
|
sch_base_point point
|
||||||
|
WHERE
|
||||||
|
point.point_code IN ( 'FJJXSXLW301', 'FJJXSXLW302' )
|
||||||
|
ENDSELECT
|
||||||
|
ENDQUERY
|
||||||
|
ENDIF
|
||||||
|
|
||||||
|
|
||||||
|
IF 输入.flag = "5"
|
||||||
|
QUERY
|
||||||
|
SELECT
|
||||||
|
*
|
||||||
|
FROM
|
||||||
|
sch_base_point point
|
||||||
|
WHERE
|
||||||
|
point.point_code IN ( 'FJJXSXLW201', 'FJJXSXLW202' )
|
||||||
|
ENDSELECT
|
||||||
|
ENDQUERY
|
||||||
|
ENDIF
|
||||||
@@ -98,4 +98,18 @@ public class ProducetaskDto implements Serializable {
|
|||||||
|
|
||||||
/** 静置时间 */
|
/** 静置时间 */
|
||||||
private BigDecimal stewing_time;
|
private BigDecimal stewing_time;
|
||||||
|
/**
|
||||||
|
* 计划日期
|
||||||
|
*/
|
||||||
|
private String ext_shoporder_no;
|
||||||
|
private String print_type;
|
||||||
|
private String print_dm;
|
||||||
|
private String print_name;
|
||||||
|
private String print_gg;
|
||||||
|
private String print_pc;
|
||||||
|
private String yh_name;
|
||||||
|
private String plan_date;
|
||||||
|
private String classes;
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -51,14 +51,14 @@
|
|||||||
device.workprocedure_id,
|
device.workprocedure_id,
|
||||||
device.device_name,
|
device.device_name,
|
||||||
material.material_name,
|
material.material_name,
|
||||||
cust.cust_name,
|
|
||||||
produceline.produceline_name
|
produceline.produceline_name
|
||||||
FROM
|
FROM
|
||||||
PDM_MG_produceTask task
|
PDM_MG_produceTask task
|
||||||
left join md_me_material material on task.material_id = material.material_id
|
left join md_me_material material on task.material_id = material.material_id
|
||||||
left join pdm_base_device device on task.device_id = device.device_id
|
left join pdm_base_device device on task.device_id = device.device_id
|
||||||
left join pdm_base_produceline produceline on task.produceline_id = produceline.produceline_id
|
left join pdm_base_produceline produceline on task.produceline_id = produceline.produceline_id
|
||||||
left join MD_CS_CustomerBase cust on task.cust_id = cust.cust_id
|
|
||||||
WHERE
|
WHERE
|
||||||
task.is_delete = '0'
|
task.is_delete = '0'
|
||||||
OPTION 输入.search <> ""
|
OPTION 输入.search <> ""
|
||||||
@@ -76,9 +76,7 @@
|
|||||||
OPTION 输入.produceline_id <> ""
|
OPTION 输入.produceline_id <> ""
|
||||||
(task.produceline_id = 输入.produceline_id)
|
(task.produceline_id = 输入.produceline_id)
|
||||||
ENDOPTION
|
ENDOPTION
|
||||||
OPTION 输入.cust_id <> ""
|
|
||||||
(task.cust_id = 输入.cust_id)
|
|
||||||
ENDOPTION
|
|
||||||
ENDSELECT
|
ENDSELECT
|
||||||
ENDPAGEQUERY
|
ENDPAGEQUERY
|
||||||
ENDIF
|
ENDIF
|
||||||
@@ -90,14 +88,14 @@
|
|||||||
task.*,
|
task.*,
|
||||||
device.device_name,
|
device.device_name,
|
||||||
material.material_name,
|
material.material_name,
|
||||||
cust.cust_name,
|
|
||||||
produceline.produceline_name
|
produceline.produceline_name
|
||||||
FROM
|
FROM
|
||||||
PDM_MG_produceTask task
|
PDM_MG_produceTask task
|
||||||
left join md_me_material material on task.material_id = material.material_id
|
left join md_me_material material on task.material_id = material.material_id
|
||||||
left join pdm_base_device device on task.device_id = device.device_id
|
left join pdm_base_device device on task.device_id = device.device_id
|
||||||
left join pdm_base_produceline produceline on task.produceline_id = produceline.produceline_id
|
left join pdm_base_produceline produceline on task.produceline_id = produceline.produceline_id
|
||||||
left join MD_CS_CustomerBase cust on task.cust_id = cust.cust_id
|
|
||||||
WHERE
|
WHERE
|
||||||
task.is_delete = '0' and task.device_id = 输入.device_id and task.producetask_status = '01'
|
task.is_delete = '0' and task.device_id = 输入.device_id and task.producetask_status = '01'
|
||||||
ENDSELECT
|
ENDSELECT
|
||||||
@@ -108,16 +106,16 @@
|
|||||||
IF 输入.flag = "3"
|
IF 输入.flag = "3"
|
||||||
QUERY
|
QUERY
|
||||||
SELECT
|
SELECT
|
||||||
|
point.point_code AS device_code,
|
||||||
task.*,
|
task.*,
|
||||||
device.device_code,
|
|
||||||
device.device_name,
|
|
||||||
material.material_code,
|
material.material_code,
|
||||||
material.material_name,
|
material.material_name,
|
||||||
material.material_spec,
|
material.material_spec,
|
||||||
material.material_model
|
material.material_model
|
||||||
FROM
|
FROM
|
||||||
pdm_mg_producetask task
|
pdm_mg_producetask task
|
||||||
LEFT JOIN pdm_base_device device ON task.device_id = device.device_id
|
LEFT JOIN sch_base_point point ON point.device_id = task.device_id
|
||||||
|
AND point.point_code <> 'MDJXS102'
|
||||||
LEFT JOIN md_me_material material ON material.material_id = task.material_id
|
LEFT JOIN md_me_material material ON material.material_id = task.material_id
|
||||||
WHERE
|
WHERE
|
||||||
1 =1
|
1 =1
|
||||||
|
|||||||
@@ -51,6 +51,14 @@ public abstract class AbstractAcsTask {
|
|||||||
taskDto.setExt_task_uuid(json.getString("task_id"));
|
taskDto.setExt_task_uuid(json.getString("task_id"));
|
||||||
taskDto.setTask_code(json.getString("task_code"));
|
taskDto.setTask_code(json.getString("task_code"));
|
||||||
taskDto.setTask_type("1");
|
taskDto.setTask_type("1");
|
||||||
|
//如果起点是码垛机械手的下料位置,终点是货架,type要给2
|
||||||
|
JSONObject stratrObj = WQLObject.getWQLObject("sch_base_point").query("point_code='" + json.getString("start_point_code") + "'").uniqueResult(0);
|
||||||
|
JSONObject nextObj = WQLObject.getWQLObject("sch_base_point").query("point_code='" + json.getString("next_point_code") + "'").uniqueResult(0);
|
||||||
|
if (StrUtil.equals(stratrObj.getString("area_type"), AreaEnum.YZQY.getCode()) &&
|
||||||
|
StrUtil.equals(nextObj.getString("area_type"), AreaEnum.RYHCHJ.getCode())
|
||||||
|
) {
|
||||||
|
taskDto.setTask_type("2");
|
||||||
|
}
|
||||||
taskDto.setRoute_plan_code("normal");
|
taskDto.setRoute_plan_code("normal");
|
||||||
taskDto.setStart_device_code(json.getString("start_point_code"));
|
taskDto.setStart_device_code(json.getString("start_point_code"));
|
||||||
taskDto.setNext_device_code(json.getString("next_point_code"));
|
taskDto.setNext_device_code(json.getString("next_point_code"));
|
||||||
@@ -117,12 +125,19 @@ public abstract class AbstractAcsTask {
|
|||||||
taskDto.setExt_task_uuid(json.getString("task_id"));
|
taskDto.setExt_task_uuid(json.getString("task_id"));
|
||||||
taskDto.setTask_code(json.getString("task_code"));
|
taskDto.setTask_code(json.getString("task_code"));
|
||||||
taskDto.setTask_type("1");
|
taskDto.setTask_type("1");
|
||||||
|
//如果起点是码垛机械手的下料位置,终点是货架,type要给2
|
||||||
|
JSONObject stratrObj = WQLObject.getWQLObject("sch_base_point").query("point_code='" + json.getString("start_point_code") + "'").uniqueResult(0);
|
||||||
|
JSONObject nextObj = WQLObject.getWQLObject("sch_base_point").query("point_code='" + json.getString("next_point_code") + "'").uniqueResult(0);
|
||||||
|
if (StrUtil.equals(stratrObj.getString("area_type"), AreaEnum.YZQY.getCode()) &&
|
||||||
|
StrUtil.equals(nextObj.getString("area_type"), AreaEnum.RYHCHJ.getCode())
|
||||||
|
) {
|
||||||
|
taskDto.setTask_type("2");
|
||||||
|
}
|
||||||
taskDto.setRoute_plan_code("normal");
|
taskDto.setRoute_plan_code("normal");
|
||||||
taskDto.setStart_device_code(json.getString("start_point_code"));
|
taskDto.setStart_device_code(json.getString("start_point_code"));
|
||||||
taskDto.setNext_device_code(json.getString("next_point_code"));
|
taskDto.setNext_device_code(json.getString("next_point_code"));
|
||||||
taskDto.setVehicle_code(json.getString("vehicle_code"));
|
taskDto.setVehicle_code(json.getString("vehicle_code"));
|
||||||
jsonArray.add(JSONObject.parse(JSON.toJSONString(taskDto)));
|
jsonArray.add(JSONObject.parse(JSON.toJSONString(taskDto)));
|
||||||
|
|
||||||
}
|
}
|
||||||
return AcsUtil.notifyAcs("api/wms/task", jsonArray);
|
return AcsUtil.notifyAcs("api/wms/task", jsonArray);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -310,6 +310,7 @@ public class CallMaterialTask extends AbstractAcsTask {
|
|||||||
iosObj.put("ivt_workprocedure_id", ivt_workprocedure_id);
|
iosObj.put("ivt_workprocedure_id", ivt_workprocedure_id);
|
||||||
iosObj.put("material_id", material_id);
|
iosObj.put("material_id", material_id);
|
||||||
iosObj.put("vehicle_code", outStructObj.getString("vehicle_code"));
|
iosObj.put("vehicle_code", outStructObj.getString("vehicle_code"));
|
||||||
|
iosObj.put("producetask_id", outStructObj.getString("producetask_id"));
|
||||||
iosObj.put("qty", qty);
|
iosObj.put("qty", qty);
|
||||||
iosObj.put("qty_unit_id", qty_unit_id);
|
iosObj.put("qty_unit_id", qty_unit_id);
|
||||||
//默认是分配状态
|
//默认是分配状态
|
||||||
@@ -322,8 +323,8 @@ public class CallMaterialTask extends AbstractAcsTask {
|
|||||||
iosObj.put("create_mode", create_mode);
|
iosObj.put("create_mode", create_mode);
|
||||||
iosObj.put("task_id", task_id);
|
iosObj.put("task_id", task_id);
|
||||||
iosObj.put("pcsn", pcsn);
|
iosObj.put("pcsn", pcsn);
|
||||||
iosObj.put("create_id",SecurityUtils.getCurrentUserId());
|
iosObj.put("create_id","1");
|
||||||
iosObj.put("create_name", SecurityUtils.getNickName());
|
iosObj.put("create_name", "管理员");
|
||||||
iosObj.put("create_time", DateUtil.now());
|
iosObj.put("create_time", DateUtil.now());
|
||||||
WQLObject.getWQLObject("ST_IVT_workProcedureIOS").insert(iosObj);
|
WQLObject.getWQLObject("ST_IVT_workProcedureIOS").insert(iosObj);
|
||||||
//将组盘里面的task_id改为当前的任务
|
//将组盘里面的task_id改为当前的任务
|
||||||
@@ -370,8 +371,8 @@ public class CallMaterialTask extends AbstractAcsTask {
|
|||||||
taskObj.put("vehicle_code", vehicle_code);
|
taskObj.put("vehicle_code", vehicle_code);
|
||||||
taskObj.put("handle_class", THIS_CLASS);
|
taskObj.put("handle_class", THIS_CLASS);
|
||||||
taskObj.put("is_auto_issue", "1");
|
taskObj.put("is_auto_issue", "1");
|
||||||
taskObj.put("create_name", SecurityUtils.getNickName());
|
taskObj.put("create_name", "管理员");
|
||||||
taskObj.put("create_id", SecurityUtils.getCurrentUserId());
|
taskObj.put("create_id", "1");
|
||||||
taskObj.put("create_time", DateUtil.now());
|
taskObj.put("create_time", DateUtil.now());
|
||||||
taskObj.put("is_delete", "0");
|
taskObj.put("is_delete", "0");
|
||||||
taskTable.insert(taskObj);
|
taskTable.insert(taskObj);
|
||||||
|
|||||||
@@ -15,6 +15,7 @@ import org.nl.utils.SpringContextHolder;
|
|||||||
import org.nl.wms.BussConstant;
|
import org.nl.wms.BussConstant;
|
||||||
import org.nl.wms.WorkProcedureEnum;
|
import org.nl.wms.WorkProcedureEnum;
|
||||||
import org.nl.wms.common.StructFindUtil;
|
import org.nl.wms.common.StructFindUtil;
|
||||||
|
import org.nl.wms.ext.acs.service.WmsToJnService;
|
||||||
import org.nl.wms.sch.manage.AbstractAcsTask;
|
import org.nl.wms.sch.manage.AbstractAcsTask;
|
||||||
import org.nl.wms.sch.manage.AreaEnum;
|
import org.nl.wms.sch.manage.AreaEnum;
|
||||||
import org.nl.wms.sch.manage.BillTypeEnum;
|
import org.nl.wms.sch.manage.BillTypeEnum;
|
||||||
@@ -36,21 +37,23 @@ import java.util.HashMap;
|
|||||||
@Slf4j
|
@Slf4j
|
||||||
public class SendMaterialTask extends AbstractAcsTask {
|
public class SendMaterialTask extends AbstractAcsTask {
|
||||||
private final String THIS_CLASS = SendMaterialTask.class.getName();
|
private final String THIS_CLASS = SendMaterialTask.class.getName();
|
||||||
|
private final WmsToJnService wmsToJnService;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@Transactional
|
@Transactional
|
||||||
public void updateTaskStatus(JSONObject taskObj, String status) {
|
public void updateTaskStatus(JSONObject taskObj, String status) {
|
||||||
/**
|
/**
|
||||||
*改变任务状态
|
*改变任务状态2
|
||||||
**/
|
**/
|
||||||
String task_id = taskObj.getString("task_id");
|
String task_id = taskObj.getString("task_id");
|
||||||
|
String car_no = taskObj.getString("car_no");
|
||||||
WQLObject taskTab = WQLObject.getWQLObject("sch_base_task");
|
WQLObject taskTab = WQLObject.getWQLObject("sch_base_task");
|
||||||
JSONObject jsonTask = taskTab.query("task_id='" + task_id + "'").uniqueResult(0);
|
JSONObject jsonTask = taskTab.query("task_id='" + task_id + "'").uniqueResult(0);
|
||||||
if (TaskStatusEnum.EXECUTING.getCode().equals(status)) {
|
if (TaskStatusEnum.EXECUTING.getCode().equals(status)) {
|
||||||
//更新任务状态为执行中
|
//更新任务状态为执行中
|
||||||
jsonTask.put("task_status", TaskStatusEnum.EXECUTING.getCode());
|
jsonTask.put("task_status", TaskStatusEnum.EXECUTING.getCode());
|
||||||
jsonTask.put("update_time", DateUtil.now());
|
jsonTask.put("update_time", DateUtil.now());
|
||||||
|
jsonTask.put("car_no", car_no);
|
||||||
taskTab.update(jsonTask);
|
taskTab.update(jsonTask);
|
||||||
HashMap map = new HashMap();
|
HashMap map = new HashMap();
|
||||||
map.put("update_optid", SecurityUtils.getCurrentUserId());
|
map.put("update_optid", SecurityUtils.getCurrentUserId());
|
||||||
@@ -188,6 +191,7 @@ public class SendMaterialTask extends AbstractAcsTask {
|
|||||||
String pcsn = form.getString("pcsn");
|
String pcsn = form.getString("pcsn");
|
||||||
String vehicle_code = form.getString("vehicle_code");
|
String vehicle_code = form.getString("vehicle_code");
|
||||||
String group_id = form.getString("group_id");
|
String group_id = form.getString("group_id");
|
||||||
|
String print_pc = form.getString("print_pc");
|
||||||
WQLObject taskTable = WQLObject.getWQLObject("SCH_BASE_Task");
|
WQLObject taskTable = WQLObject.getWQLObject("SCH_BASE_Task");
|
||||||
if (StrUtil.isEmpty(start_point_code)) {
|
if (StrUtil.isEmpty(start_point_code)) {
|
||||||
throw new BadRequestException("起点不能为空!");
|
throw new BadRequestException("起点不能为空!");
|
||||||
@@ -288,6 +292,7 @@ public class SendMaterialTask extends AbstractAcsTask {
|
|||||||
iosObj.put("stewing_time", stewing_time);
|
iosObj.put("stewing_time", stewing_time);
|
||||||
iosObj.put("qty", qty);
|
iosObj.put("qty", qty);
|
||||||
iosObj.put("qty_unit_id", qty_unit_id);
|
iosObj.put("qty_unit_id", qty_unit_id);
|
||||||
|
iosObj.put("print_pc", print_pc);
|
||||||
//默认是分配状态
|
//默认是分配状态
|
||||||
iosObj.put("bill_status", "20");
|
iosObj.put("bill_status", "20");
|
||||||
iosObj.put("start_point_code", start_point_code);
|
iosObj.put("start_point_code", start_point_code);
|
||||||
@@ -341,8 +346,13 @@ public class SendMaterialTask extends AbstractAcsTask {
|
|||||||
JSONObject groupInfo = groupTable.query("group_id='" + group_id + "'").uniqueResult(0);
|
JSONObject groupInfo = groupTable.query("group_id='" + group_id + "'").uniqueResult(0);
|
||||||
if (ObjectUtil.isNotEmpty(groupInfo)) {
|
if (ObjectUtil.isNotEmpty(groupInfo)) {
|
||||||
groupInfo.put("task_id", task_id);
|
groupInfo.put("task_id", task_id);
|
||||||
|
groupInfo.put("material_move_id", task_id);
|
||||||
groupTable.update(groupInfo);
|
groupTable.update(groupInfo);
|
||||||
}
|
}
|
||||||
|
//调用接口反馈给嘉耐 搬运任务
|
||||||
|
JSONObject param = new JSONObject();
|
||||||
|
param.put("task_id", task_id);
|
||||||
|
wmsToJnService.feedBackCarryRecord(param);
|
||||||
}
|
}
|
||||||
return task_id;
|
return task_id;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -15,6 +15,7 @@ import org.nl.utils.SpringContextHolder;
|
|||||||
import org.nl.wms.BussConstant;
|
import org.nl.wms.BussConstant;
|
||||||
import org.nl.wms.WorkProcedureEnum;
|
import org.nl.wms.WorkProcedureEnum;
|
||||||
import org.nl.wms.common.StructFindUtil;
|
import org.nl.wms.common.StructFindUtil;
|
||||||
|
import org.nl.wms.ext.acs.service.WmsToJnService;
|
||||||
import org.nl.wms.sch.manage.AbstractAcsTask;
|
import org.nl.wms.sch.manage.AbstractAcsTask;
|
||||||
import org.nl.wms.sch.manage.AreaEnum;
|
import org.nl.wms.sch.manage.AreaEnum;
|
||||||
import org.nl.wms.sch.manage.BillTypeEnum;
|
import org.nl.wms.sch.manage.BillTypeEnum;
|
||||||
@@ -36,6 +37,7 @@ import java.util.HashMap;
|
|||||||
@Slf4j
|
@Slf4j
|
||||||
public class ToConveyorTask extends AbstractAcsTask {
|
public class ToConveyorTask extends AbstractAcsTask {
|
||||||
private final String THIS_CLASS = ToConveyorTask.class.getName();
|
private final String THIS_CLASS = ToConveyorTask.class.getName();
|
||||||
|
private final WmsToJnService wmsToJnService;
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -45,11 +47,13 @@ public class ToConveyorTask extends AbstractAcsTask {
|
|||||||
*改变任务状态
|
*改变任务状态
|
||||||
**/
|
**/
|
||||||
String task_id = taskObj.getString("task_id");
|
String task_id = taskObj.getString("task_id");
|
||||||
|
String car_no = taskObj.getString("car_no");
|
||||||
WQLObject taskTab = WQLObject.getWQLObject("sch_base_task");
|
WQLObject taskTab = WQLObject.getWQLObject("sch_base_task");
|
||||||
JSONObject jsonTask = taskTab.query("task_id='" + task_id + "'").uniqueResult(0);
|
JSONObject jsonTask = taskTab.query("task_id='" + task_id + "'").uniqueResult(0);
|
||||||
if (TaskStatusEnum.EXECUTING.getCode().equals(status)) {
|
if (TaskStatusEnum.EXECUTING.getCode().equals(status)) {
|
||||||
//更新任务状态为执行中
|
//更新任务状态为执行中
|
||||||
jsonTask.put("task_status", TaskStatusEnum.EXECUTING.getCode());
|
jsonTask.put("task_status", TaskStatusEnum.EXECUTING.getCode());
|
||||||
|
jsonTask.put("car_no", car_no);
|
||||||
jsonTask.put("update_time", DateUtil.now());
|
jsonTask.put("update_time", DateUtil.now());
|
||||||
taskTab.update(jsonTask);
|
taskTab.update(jsonTask);
|
||||||
HashMap map = new HashMap();
|
HashMap map = new HashMap();
|
||||||
@@ -67,6 +71,10 @@ public class ToConveyorTask extends AbstractAcsTask {
|
|||||||
jsonTask.put("update_time", DateUtil.now());
|
jsonTask.put("update_time", DateUtil.now());
|
||||||
jsonTask.put("remark", "任务执行完成");
|
jsonTask.put("remark", "任务执行完成");
|
||||||
taskTab.update(jsonTask);
|
taskTab.update(jsonTask);
|
||||||
|
//调用接口反馈给嘉耐 搬运任务
|
||||||
|
JSONObject param = new JSONObject();
|
||||||
|
param.put("task_id", task_id);
|
||||||
|
wmsToJnService.feedBackCarryRecord(param);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -77,7 +85,8 @@ public class ToConveyorTask extends AbstractAcsTask {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void findNextPoint() {}
|
public void findNextPoint() {
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@Transactional
|
@Transactional
|
||||||
@@ -116,6 +125,7 @@ public class ToConveyorTask extends AbstractAcsTask {
|
|||||||
WQLObject groupTable = WQLObject.getWQLObject("st_buss_vehiclegroup");
|
WQLObject groupTable = WQLObject.getWQLObject("st_buss_vehiclegroup");
|
||||||
JSONObject groupInfo = groupTable.query("group_id='" + group_id + "'").uniqueResult(0);
|
JSONObject groupInfo = groupTable.query("group_id='" + group_id + "'").uniqueResult(0);
|
||||||
groupInfo.put("task_id", task_id);
|
groupInfo.put("task_id", task_id);
|
||||||
|
groupInfo.put("material_move_id", task_id);
|
||||||
groupTable.update(groupInfo);
|
groupTable.update(groupInfo);
|
||||||
|
|
||||||
PointService pointService = SpringContextHolder.getBean(PointService.class);
|
PointService pointService = SpringContextHolder.getBean(PointService.class);
|
||||||
|
|||||||
@@ -13,6 +13,7 @@ import org.nl.wms.sch.manage.buss.CallMaterialTask;
|
|||||||
import org.nl.wql.WQL;
|
import org.nl.wql.WQL;
|
||||||
import org.nl.wql.core.bean.WQLObject;
|
import org.nl.wql.core.bean.WQLObject;
|
||||||
import org.springframework.stereotype.Component;
|
import org.springframework.stereotype.Component;
|
||||||
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
|
|
||||||
|
|
||||||
@Slf4j
|
@Slf4j
|
||||||
@@ -26,7 +27,7 @@ public class AutoOutStructTask {
|
|||||||
this.doExecute();
|
this.doExecute();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Transactional(rollbackFor = Exception.class)
|
||||||
private void doExecute() {
|
private void doExecute() {
|
||||||
WQLObject param_Table = WQLObject.getWQLObject("sys_param");
|
WQLObject param_Table = WQLObject.getWQLObject("sys_param");
|
||||||
int num = param_Table.query("code='stewing_num' ").uniqueResult(0).getInteger("value");
|
int num = param_Table.query("code='stewing_num' ").uniqueResult(0).getInteger("value");
|
||||||
|
|||||||
@@ -44,7 +44,7 @@ import cn.hutool.core.util.ObjectUtil;
|
|||||||
@Slf4j
|
@Slf4j
|
||||||
public class WorkprocedureiosServiceImpl implements WorkprocedureiosService {
|
public class WorkprocedureiosServiceImpl implements WorkprocedureiosService {
|
||||||
private final String THIS_CLASS = SendMaterialTask.class.getName();
|
private final String THIS_CLASS = SendMaterialTask.class.getName();
|
||||||
|
private SendMaterialTask sendMaterialTask;
|
||||||
@Override
|
@Override
|
||||||
public Map<String, Object> queryAll(Map whereJson, Pageable page) {
|
public Map<String, Object> queryAll(Map whereJson, Pageable page) {
|
||||||
|
|
||||||
@@ -265,7 +265,6 @@ public class WorkprocedureiosServiceImpl implements WorkprocedureiosService {
|
|||||||
form.put("is_full",is_full);
|
form.put("is_full",is_full);
|
||||||
form.put("ivt_workprocedure_id",ivt_workprocedure_id);
|
form.put("ivt_workprocedure_id",ivt_workprocedure_id);
|
||||||
form.put("iostorinv_id",iostorinv_id);
|
form.put("iostorinv_id",iostorinv_id);
|
||||||
SendMaterialTask sendMaterialTask = new SendMaterialTask();
|
|
||||||
String task_id = sendMaterialTask.createTask(form);
|
String task_id = sendMaterialTask.createTask(form);
|
||||||
JSONObject json = new JSONObject();
|
JSONObject json = new JSONObject();
|
||||||
json.put("task_id", task_id);
|
json.put("task_id", task_id);
|
||||||
|
|||||||
@@ -54,7 +54,6 @@ public class StructivtServiceImpl implements StructivtService {
|
|||||||
map.put("stor_uuid", stor_uuid);
|
map.put("stor_uuid", stor_uuid);
|
||||||
map.put("material_name", material_name);
|
map.put("material_name", material_name);
|
||||||
map.put("storagevehicle_code", storagevehicle_code);
|
map.put("storagevehicle_code", storagevehicle_code);
|
||||||
map.put("pcsn", pcsn);
|
|
||||||
map.put("struct_name", struct_name);
|
map.put("struct_name", struct_name);
|
||||||
JSONObject json = WQL.getWO("QIVT_001").addParamMap(map).pageQuery(WqlUtil.getHttpContext(page), "struct_code");
|
JSONObject json = WQL.getWO("QIVT_001").addParamMap(map).pageQuery(WqlUtil.getHttpContext(page), "struct_code");
|
||||||
JSONArray jsonArray = json.getJSONArray("content");
|
JSONArray jsonArray = json.getJSONArray("content");
|
||||||
|
|||||||
@@ -57,15 +57,11 @@
|
|||||||
material.material_id,
|
material.material_id,
|
||||||
material.material_code,
|
material.material_code,
|
||||||
material.material_name,
|
material.material_name,
|
||||||
ivt.pcsn,
|
|
||||||
ivt.canuse_qty,
|
ivt.canuse_qty,
|
||||||
ivt.ivt_qty,
|
ivt.ivt_qty,
|
||||||
ivt.frozen_qty,
|
ivt.frozen_qty,
|
||||||
ivt.is_full,
|
ivt.is_full,
|
||||||
ivt.mix_seq,
|
|
||||||
ivt.stewing_time,
|
ivt.stewing_time,
|
||||||
unitqty.unit_code,
|
|
||||||
unitqty.unit_name,
|
|
||||||
ivt.instorage_time,
|
ivt.instorage_time,
|
||||||
sect.sect_name,
|
sect.sect_name,
|
||||||
workprocedure.workprocedure_name
|
workprocedure.workprocedure_name
|
||||||
@@ -73,7 +69,6 @@
|
|||||||
st_ivt_structivt ivt
|
st_ivt_structivt ivt
|
||||||
LEFT JOIN sch_base_point point ON point.point_id = ivt.struct_id
|
LEFT JOIN sch_base_point point ON point.point_id = ivt.struct_id
|
||||||
LEFT JOIN md_me_material material ON material.material_id = ivt.material_id
|
LEFT JOIN md_me_material material ON material.material_id = ivt.material_id
|
||||||
LEFT JOIN md_pb_measureunit unitqty ON unitqty.unit_id = ivt.qty_unit_id
|
|
||||||
left join st_ivt_structattr struct on struct.struct_id = ivt.struct_id
|
left join st_ivt_structattr struct on struct.struct_id = ivt.struct_id
|
||||||
left join ST_IVT_SectAttr sect on struct.sect_id = sect.sect_id
|
left join ST_IVT_SectAttr sect on struct.sect_id = sect.sect_id
|
||||||
left join pdm_base_workprocedure workprocedure on workprocedure.workprocedure_id = ivt.workprocedure_id
|
left join pdm_base_workprocedure workprocedure on workprocedure.workprocedure_id = ivt.workprocedure_id
|
||||||
@@ -83,9 +78,7 @@
|
|||||||
(material.material_name like "%"输入.material_name"%" or
|
(material.material_name like "%"输入.material_name"%" or
|
||||||
material.material_code like "%"输入.material_name"%")
|
material.material_code like "%"输入.material_name"%")
|
||||||
ENDOPTION
|
ENDOPTION
|
||||||
OPTION 输入.pcsn <> ""
|
|
||||||
ivt.pcsn like "%"输入.pcsn"%"
|
|
||||||
ENDOPTION
|
|
||||||
OPTION 输入.struct_name <> ""
|
OPTION 输入.struct_name <> ""
|
||||||
(point.point_code like "%"输入.struct_name"%" or
|
(point.point_code like "%"输入.struct_name"%" or
|
||||||
point.point_name like "%"输入.struct_name"%")
|
point.point_name like "%"输入.struct_name"%")
|
||||||
|
|||||||
Binary file not shown.
@@ -8,10 +8,13 @@ spring:
|
|||||||
druid:
|
druid:
|
||||||
db-type: com.alibaba.druid.pool.DruidDataSource
|
db-type: com.alibaba.druid.pool.DruidDataSource
|
||||||
driverClassName: net.sf.log4jdbc.sql.jdbcapi.DriverSpy
|
driverClassName: net.sf.log4jdbc.sql.jdbcapi.DriverSpy
|
||||||
url: jdbc:log4jdbc:mysql://${DB_HOST:192.168.81.252}:${DB_PORT:3306}/${DB_NAME:jl_wms}?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false&useOldAliasMetadataBehavior=true
|
#url: jdbc:log4jdbc:mysql://${DB_HOST:192.168.81.252}:${DB_PORT:3306}/${DB_NAME:jl_wms}?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false&useOldAliasMetadataBehavior=true
|
||||||
|
#url: jdbc:log4jdbc:mysql://${DB_HOST:192.168.81.252}:${DB_PORT:3306}/${DB_NAME:jl_wms}?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false&useOldAliasMetadataBehavior=true
|
||||||
|
url: jdbc:log4jdbc:mysql://${DB_HOST:localhost}:${DB_PORT:3306}/${DB_NAME:jl_wms}?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false&useOldAliasMetadataBehavior=true&allowPublicKeyRetrieval=true
|
||||||
username: ${DB_USER:root}
|
username: ${DB_USER:root}
|
||||||
#password: ${DB_PWD:P@ssw0rd}
|
#password: ${DB_PWD:P@ssw0rd}
|
||||||
password: ${DB_PWD:Root.123456}
|
password: ${DB_PWD:root}
|
||||||
|
#password: ${DB_PWD:Root.123456}
|
||||||
# 初始连接数
|
# 初始连接数
|
||||||
initial-size: 5
|
initial-size: 5
|
||||||
# 最小连接数
|
# 最小连接数
|
||||||
|
|||||||
@@ -36,28 +36,12 @@
|
|||||||
<el-form-item label="是否启用" prop="is_used">
|
<el-form-item label="是否启用" prop="is_used">
|
||||||
<el-radio v-for="item in dict.is_active" :key="item.id" v-model="form.is_used" :label="item.value">{{ item.label }}</el-radio>
|
<el-radio v-for="item in dict.is_active" :key="item.id" v-model="form.is_used" :label="item.value">{{ item.label }}</el-radio>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="是否人工打包" prop="is_manmade">
|
<el-form-item label="是否人工打包" prop="is_auto_package">
|
||||||
<el-radio v-for="item in dict.is_active" :key="item.id" v-model="form.is_manmade" :label="item.value">{{ item.label }}</el-radio>
|
<el-radio v-for="item in dict.is_active" :key="item.id" v-model="form.is_auto_package" :label="item.value">{{ item.label }}</el-radio>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="码垛数量" prop="palletize_num">
|
|
||||||
<el-input-number v-model="form.palletize_num" controls-position="right" :min="0" :max="9999" />
|
<el-form-item label="打印模板">
|
||||||
</el-form-item>
|
<el-input v-model="form.print_model" style="width: 270px;" />
|
||||||
<el-form-item label="托盘类型" prop="vehicle_type">
|
|
||||||
<el-select
|
|
||||||
v-model="form.vehicle_type"
|
|
||||||
clearable
|
|
||||||
size="mini"
|
|
||||||
placeholder="请选择"
|
|
||||||
class="filter-item"
|
|
||||||
style="width: 250px;"
|
|
||||||
>
|
|
||||||
<el-option
|
|
||||||
v-for="item in dict.MD_EVEHICLE_TYPE"
|
|
||||||
:key="item.value"
|
|
||||||
:label="item.label"
|
|
||||||
:value="item.value"
|
|
||||||
/>
|
|
||||||
</el-select>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="外部标识">
|
<el-form-item label="外部标识">
|
||||||
<el-input v-model="form.ext_id" style="width: 370px;" />
|
<el-input v-model="form.ext_id" style="width: 370px;" />
|
||||||
@@ -99,22 +83,17 @@
|
|||||||
<el-table-column prop="is_used" label="是否人工打包" width="100px">
|
<el-table-column prop="is_used" label="是否人工打包" width="100px">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<el-switch
|
<el-switch
|
||||||
v-model="scope.row.is_manmade"
|
v-model="scope.row.is_auto_package"
|
||||||
active-color="#409EFF"
|
active-color="#409EFF"
|
||||||
inactive-color="#F56C6C"
|
inactive-color="#F56C6C"
|
||||||
active-value="1"
|
active-value="1"
|
||||||
inactive-value="0"
|
inactive-value="0"
|
||||||
@change="changeEnabledManmade(scope.row, scope.row.is_manmade)"
|
@change="changeEnabledManmade(scope.row, scope.row.is_auto_package)"
|
||||||
/>
|
/>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column prop="palletize_num" label="码垛数量" />
|
|
||||||
<el-table-column prop="vehicle_type" label="托盘类型">
|
|
||||||
<template slot-scope="scope">
|
|
||||||
{{ dict.label.MD_EVEHICLE_TYPE[scope.row.vehicle_type] }}
|
|
||||||
</template>
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column v-if="false" prop="ext_id" label="外部标识" />
|
<el-table-column v-if="false" prop="ext_id" label="外部标识" />
|
||||||
|
<el-table-column v-if="false" prop="print_model" label="打印模板" />
|
||||||
<el-table-column v-permission="[]" label="操作" width="120px" align="center" fixed="right">
|
<el-table-column v-permission="[]" label="操作" width="120px" align="center" fixed="right">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<udOperation
|
<udOperation
|
||||||
@@ -153,10 +132,11 @@ const defaultForm = {
|
|||||||
update_time: null,
|
update_time: null,
|
||||||
is_used: '1',
|
is_used: '1',
|
||||||
is_delete: null,
|
is_delete: null,
|
||||||
is_manmade: '1',
|
is_auto_package: '1',
|
||||||
vehicle_type: null,
|
vehicle_type: null,
|
||||||
palletize_num: '1',
|
palletize_num: '1',
|
||||||
ext_id: null,
|
ext_id: null,
|
||||||
|
print_model: null,
|
||||||
stewing_time: null
|
stewing_time: null
|
||||||
}
|
}
|
||||||
export default {
|
export default {
|
||||||
@@ -188,15 +168,9 @@ export default {
|
|||||||
is_used: [
|
is_used: [
|
||||||
{ required: true, message: '是否启用不能为空', trigger: 'blur' }
|
{ required: true, message: '是否启用不能为空', trigger: 'blur' }
|
||||||
],
|
],
|
||||||
is_manmade: [
|
is_auto_package: [
|
||||||
{ required: true, message: '是否人工打包不能为空', trigger: 'blur' }
|
{ required: true, message: '是否人工打包不能为空', trigger: 'blur' }
|
||||||
],
|
],
|
||||||
palletize_num: [
|
|
||||||
{ required: true, message: '码垛数量不能为空', trigger: 'blur' }
|
|
||||||
],
|
|
||||||
vehicle_type: [
|
|
||||||
{ required: true, message: '托盘类型不能为空', trigger: 'blur' }
|
|
||||||
],
|
|
||||||
stewing_time: [
|
stewing_time: [
|
||||||
{ required: true, message: '静止时间不能为空', trigger: 'blur' }
|
{ required: true, message: '静止时间不能为空', trigger: 'blur' }
|
||||||
]
|
]
|
||||||
@@ -251,22 +225,22 @@ export default {
|
|||||||
this.crud.notify((val === 1 ? '切换人工打包' : '切换机器打包') + '成功', CRUD.NOTIFICATION_TYPE.SUCCESS)
|
this.crud.notify((val === 1 ? '切换人工打包' : '切换机器打包') + '成功', CRUD.NOTIFICATION_TYPE.SUCCESS)
|
||||||
}).catch(() => {
|
}).catch(() => {
|
||||||
debugger
|
debugger
|
||||||
if (data.is_manmade === '0') {
|
if (data.is_auto_package === '0') {
|
||||||
data.is_manmade = '1'
|
data.is_auto_package = '1'
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
if (data.is_manmade === '1') {
|
if (data.is_auto_package === '1') {
|
||||||
data.is_manmade = '0'
|
data.is_auto_package = '0'
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
}).catch(() => {
|
}).catch(() => {
|
||||||
debugger
|
debugger
|
||||||
if (data.is_manmade === '0') {
|
if (data.is_auto_package === '0') {
|
||||||
data.is_manmade = '1'
|
data.is_auto_package = '1'
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
if (data.is_manmade === '1') {
|
if (data.is_auto_package === '1') {
|
||||||
data.is_manmade = '0'
|
data.is_auto_package = '0'
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -158,7 +158,7 @@
|
|||||||
/>
|
/>
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="客户名称">
|
<el-form-item v-if="false" label="客户名称">
|
||||||
<el-select v-model="form.cust_id" filterable clearable class="filter-item" style="width: 200px" placeholder="请选择客户">
|
<el-select v-model="form.cust_id" filterable clearable class="filter-item" style="width: 200px" placeholder="请选择客户">
|
||||||
<el-option
|
<el-option
|
||||||
v-for="item in custList"
|
v-for="item in custList"
|
||||||
@@ -178,21 +178,33 @@
|
|||||||
<el-form-item label="计划生产数量" prop="plan_qty">
|
<el-form-item label="计划生产数量" prop="plan_qty">
|
||||||
<el-input v-model="form.plan_qty" style="width: 200px;" />
|
<el-input v-model="form.plan_qty" style="width: 200px;" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="实际生产数量">
|
|
||||||
<el-input v-model="form.real_qty" style="width: 200px;" />
|
<el-form-item label="班次" prop="classes">
|
||||||
|
<label slot="label">名 称</label>
|
||||||
|
<el-input v-model="form.classes" style="width: 200px; " />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="计划开始时间" prop="plan_start_time">
|
<el-form-item label="计划单号" prop="ext_shoporder_no">
|
||||||
<el-date-picker v-model="form.plan_start_time" clearable value-format="yyyy-MM-dd HH:mm:ss" format="yyyy-MM-dd HH:mm:ss" type="datetime" style="width: 200px;" />
|
<el-input v-model="form.ext_shoporder_no" style="width: 200px;" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="计划结束时间" prop="plan_end_time">
|
<el-form-item label="打印名称" prop="print_type">
|
||||||
<el-date-picker v-model="form.plan_end_time" clearable value-format="yyyy-MM-dd HH:mm:ss" format="yyyy-MM-dd HH:mm:ss" type="datetime" style="width: 200px;" />
|
<el-input v-model="form.print_type" style="width: 200px;" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="实际开始时间">
|
<el-form-item label="打印使用单位" prop="print_dm">
|
||||||
<el-date-picker v-model="form.real_start_time" clearable value-format="yyyy-MM-dd HH:mm:ss" format="yyyy-MM-dd HH:mm:ss" type="datetime" style="width: 200px;" />
|
<el-input v-model="form.print_dm" style="width: 200px;" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="实际结束时间">
|
<el-form-item label="打印物料名称" prop="print_name">
|
||||||
<el-date-picker v-model="form.real_end_time" clearable value-format="yyyy-MM-dd HH:mm:ss" format="yyyy-MM-dd HH:mm:ss" type="datetime" style="width: 200px;" />
|
<el-input v-model="form.print_name" style="width: 200px;" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
<el-form-item label="打印物料规格" prop="print_gg">
|
||||||
|
<el-input v-model="form.print_gg" style="width: 200px;" />
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="打印批次" prop="print_pc">
|
||||||
|
<el-input v-model="form.print_pc" style="width: 200px;" />
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="计划日期" prop="plan_date">
|
||||||
|
<el-date-picker v-model="form.plan_date" clearable value-format="yyyy-MM-dd " format="yyyy-MM-dd" type="date" style="width: 200px;" />
|
||||||
|
</el-form-item>
|
||||||
|
|
||||||
<el-form-item label="载具类型">
|
<el-form-item label="载具类型">
|
||||||
<el-select
|
<el-select
|
||||||
v-model="form.vehicle_type"
|
v-model="form.vehicle_type"
|
||||||
@@ -202,7 +214,7 @@
|
|||||||
clearable
|
clearable
|
||||||
>
|
>
|
||||||
<el-option
|
<el-option
|
||||||
v-for="item in dict.MD_EVEHICLE_TYPE"
|
v-for="item in dict.MD_MTPVEHICLE_TYPE"
|
||||||
:key="item.value"
|
:key="item.value"
|
||||||
:label="item.label"
|
:label="item.label"
|
||||||
:value="item.value"
|
:value="item.value"
|
||||||
@@ -242,33 +254,47 @@
|
|||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column prop="material_name" label="物料名称" />
|
<el-table-column prop="material_name" label="物料名称" />
|
||||||
<el-table-column prop="device_name" label="设备名称" width="120" />
|
<el-table-column prop="device_name" label="设备名称" width="120" />
|
||||||
<el-table-column prop="produceline_name" label="产线名称" />
|
<el-table-column v-if="false" prop="produceline_name" label="产线名称" />
|
||||||
<el-table-column prop="cust_name" label="客户名称" />
|
<el-table-column v-if="false" prop="cust_name" label="客户名称" />
|
||||||
<el-table-column prop="seq_no" label="生产顺序" />
|
|
||||||
<el-table-column prop="plan_qty" label="计划生产数量" width="120" />
|
<el-table-column prop="plan_qty" label="计划生产数量" width="120" />
|
||||||
<el-table-column prop="real_qty" label="实际生产数量" width="120" />
|
<el-table-column prop="real_qty" label="实际生产数量" width="120" />
|
||||||
<el-table-column prop="plan_start_time" label="计划开始时间" width="150" />
|
<el-table-column prop="plan_date" label="计划日期" width="150" />
|
||||||
<el-table-column prop="real_start_time" label="实际开始时间" width="150" />
|
<el-table-column prop="classes" label="班次" width="150" />
|
||||||
<el-table-column prop="plan_end_time" label="计划结束时间" width="150" />
|
<el-table-column prop="ext_shoporder_no" label="外部计划单号" width="150" />
|
||||||
<el-table-column prop="real_end_time" label="实际结束时间" width="150" />
|
<el-table-column prop="print_type" label="打印名称" width="150" />
|
||||||
<el-table-column prop="producetask_finish_type" label="任务结束类型" width="120">
|
<el-table-column prop="print_dm" label="打印使用单位" width="150" />
|
||||||
|
<el-table-column prop="print_name" label="打印物料名称" width="150" />
|
||||||
|
<el-table-column prop="print_gg" label="打印物料规格" width="150" />
|
||||||
|
<el-table-column prop="print_pc" label=" 打印 批次" width="150" />
|
||||||
|
<el-table-column prop="print_type" label="打印名称" width="150" />
|
||||||
|
<el-table-column prop="yh_name" label="客户单位" width="150" />
|
||||||
|
<el-table-column prop="is_export" label="是否导入">
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<el-tag
|
||||||
|
:type="scope.row.is_export === '0' ? 'primary' : 'success'"
|
||||||
|
disable-transitions
|
||||||
|
>
|
||||||
|
{{ isFull(scope.row.is_export) }}
|
||||||
|
</el-tag>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
|
||||||
|
<el-table-column v-if="false" prop="producetask_finish_type" label="任务结束类型" width="120">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
{{ dict.label.PRODUCETASK_STATUS_TYPE[scope.row.producetask_finish_type] }}
|
{{ dict.label.PRODUCETASK_STATUS_TYPE[scope.row.producetask_finish_type] }}
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column prop="vehicle_type" label="载具类型" width="270">
|
<el-table-column prop="vehicle_type" label="载具类型" width="270">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
{{ dict.label.MD_EVEHICLE_TYPE[scope.row.vehicle_type] }}
|
{{ dict.label.MD_MTPVEHICLE_TYPE[scope.row.vehicle_type] }}
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column prop="model" label="型号" />
|
<el-table-column v-if="fasle" prop="stewing_time" label="静置时间" />
|
||||||
<el-table-column prop="molten_pool" label="熔池" />
|
|
||||||
<el-table-column prop="stewing_time" label="静置时间" />
|
|
||||||
<el-table-column prop="remark" label="备注" />
|
<el-table-column prop="remark" label="备注" />
|
||||||
<el-table-column prop="create_name" label="创建者" />
|
<el-table-column prop="create_name" label="创建者" />
|
||||||
<el-table-column prop="create_time" label="创建时间" width="150" />
|
<el-table-column prop="create_time" label="创建时间" width="150" />
|
||||||
<el-table-column prop="update_optname" label="修改者" />
|
<el-table-column v-if="false" prop="update_optname" label="修改者" />
|
||||||
<el-table-column prop="update_time" label="修改时间" width="150" />
|
<el-table-column v-if="false" prop="update_time" label="修改时间" width="150" />
|
||||||
<el-table-column v-permission="[]" label="操作" width="120px" align="center" fixed="right">
|
<el-table-column v-permission="[]" label="操作" width="120px" align="center" fixed="right">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<udOperation
|
<udOperation
|
||||||
@@ -300,10 +326,46 @@ import UploadDialog from '@/views/wms/pdm/produceTask/UploadDialog'
|
|||||||
import CopyDialog from '@/views/wms/pdm/produceTask/CopyDialog'
|
import CopyDialog from '@/views/wms/pdm/produceTask/CopyDialog'
|
||||||
import SortDialog from '@/views/wms/pdm/produceTask/SortDialog'
|
import SortDialog from '@/views/wms/pdm/produceTask/SortDialog'
|
||||||
|
|
||||||
const defaultForm = { producetask_id: null, producetask_code: null, producetask_status: null, material_id: null, device_id: null, produceline_id: null, cust_id: null, seq_no: null, plan_qty: null, real_qty: null, plan_start_time: null, real_start_time: null, plan_end_time: null, real_end_time: null, producetask_finish_type: null, stand_hour: null, remark: null, create_id: null, create_name: null, create_time: null, update_optid: null, update_optname: null, update_time: null, is_delete: null, model: null, molten_pool: null }
|
const defaultForm = {
|
||||||
|
producetask_id: null,
|
||||||
|
producetask_code: null,
|
||||||
|
producetask_status: null,
|
||||||
|
material_id: null,
|
||||||
|
device_id: null,
|
||||||
|
produceline_id: null,
|
||||||
|
cust_id: null,
|
||||||
|
seq_no: null,
|
||||||
|
plan_qty: null,
|
||||||
|
real_qty: null,
|
||||||
|
plan_start_time: null,
|
||||||
|
real_start_time: null,
|
||||||
|
plan_end_time: null,
|
||||||
|
real_end_time: null,
|
||||||
|
producetask_finish_type: null,
|
||||||
|
stand_hour: null,
|
||||||
|
remark: null,
|
||||||
|
create_id: null,
|
||||||
|
create_name: null,
|
||||||
|
create_time: null,
|
||||||
|
update_optid: null,
|
||||||
|
update_optname: null,
|
||||||
|
update_time: null,
|
||||||
|
is_delete: null,
|
||||||
|
model: null,
|
||||||
|
molten_pool: null,
|
||||||
|
classes: null,
|
||||||
|
ext_shoporder_no: null,
|
||||||
|
print_type: null,
|
||||||
|
print_dm: null,
|
||||||
|
print_name: null,
|
||||||
|
print_gg: null,
|
||||||
|
print_pc: null,
|
||||||
|
yh_name: null,
|
||||||
|
is_export: 0
|
||||||
|
}
|
||||||
export default {
|
export default {
|
||||||
name: 'Producetask',
|
name: 'Producetask',
|
||||||
dicts: ['PRODUCETASK_STATUS', 'PRODUCETASK_STATUS_TYPE', 'MD_EVEHICLE_TYPE'],
|
dicts: ['PRODUCETASK_STATUS', 'PRODUCETASK_STATUS_TYPE', 'MD_MTPVEHICLE_TYPE'],
|
||||||
components: { pagination, crudOperation, rrOperation, udOperation, UploadDialog, CopyDialog, SortDialog },
|
components: { pagination, crudOperation, rrOperation, udOperation, UploadDialog, CopyDialog, SortDialog },
|
||||||
mixins: [presenter(), header(), form(defaultForm), crud()],
|
mixins: [presenter(), header(), form(defaultForm), crud()],
|
||||||
cruds() {
|
cruds() {
|
||||||
@@ -344,11 +406,8 @@ export default {
|
|||||||
plan_qty: [
|
plan_qty: [
|
||||||
{ required: true, message: '计划生产数量不能为空', trigger: 'blur' }
|
{ required: true, message: '计划生产数量不能为空', trigger: 'blur' }
|
||||||
],
|
],
|
||||||
plan_start_time: [
|
plan_date: [
|
||||||
{ required: true, message: '计划开始时间不能为空', trigger: 'blur' }
|
{ required: true, message: '计划生产日期不能为空', trigger: 'blur' }
|
||||||
],
|
|
||||||
plan_end_time: [
|
|
||||||
{ required: true, message: '计划结束时间不能为空', trigger: 'blur' }
|
|
||||||
],
|
],
|
||||||
stand_hour: [
|
stand_hour: [
|
||||||
{ required: true, message: '静置时间不能为空', trigger: 'blur' }
|
{ required: true, message: '静置时间不能为空', trigger: 'blur' }
|
||||||
@@ -452,6 +511,13 @@ export default {
|
|||||||
this.crud.toQuery()
|
this.crud.toQuery()
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
isFull(val) {
|
||||||
|
if (val === '1') {
|
||||||
|
return '是'
|
||||||
|
} else {
|
||||||
|
return '否'
|
||||||
|
}
|
||||||
|
},
|
||||||
getCust() {
|
getCust() {
|
||||||
crudProducetask.getCust().then(res => {
|
crudProducetask.getCust().then(res => {
|
||||||
this.custList = res
|
this.custList = res
|
||||||
|
|||||||
@@ -243,7 +243,7 @@
|
|||||||
>
|
>
|
||||||
<el-table-column type="selection" width="55" />
|
<el-table-column type="selection" width="55" />
|
||||||
<el-table-column prop="point_code" label="点位编码" width="130" />
|
<el-table-column prop="point_code" label="点位编码" width="130" />
|
||||||
<el-table-column prop="point_name" label="点位名称" width="130" />
|
<el-table-column prop="point_name" label="点位名称" width="180" />
|
||||||
<el-table-column prop="area_type" label="所属区域" width="130">
|
<el-table-column prop="area_type" label="所属区域" width="130">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
{{ dict.label.sch_area_type[scope.row.area_type] }}
|
{{ dict.label.sch_area_type[scope.row.area_type] }}
|
||||||
|
|||||||
@@ -117,8 +117,6 @@
|
|||||||
{{ fun(scope.row.ivt_qty) }}
|
{{ fun(scope.row.ivt_qty) }}
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column prop="unit_name" label="单位" />
|
|
||||||
<el-table-column prop="mix_seq" label="黏次" />
|
|
||||||
<el-table-column v-permission="[]" label="操作" width="100px" align="center" fixed="right">
|
<el-table-column v-permission="[]" label="操作" width="100px" align="center" fixed="right">
|
||||||
<!-- <template slot-scope="scope">
|
<!-- <template slot-scope="scope">
|
||||||
<el-button :disabled="scope.row.stationary_state === '1'" type="primary">静止完成</el-button>
|
<el-button :disabled="scope.row.stationary_state === '1'" type="primary">静止完成</el-button>
|
||||||
|
|||||||
Reference in New Issue
Block a user