Browse Source

zhangjiangwei

master
张江玮 2 years ago
parent
commit
de8687f1cf
  1. 1
      wms/hd/nladmin-system/src/main/java/org/nl/wms/.~lock.wms.xls#
  2. 4
      wms/hd/nladmin-system/src/main/java/org/nl/wms/WorkProcedureEnum.java
  3. 7
      wms/hd/nladmin-system/src/main/java/org/nl/wms/common/PointUpdateUtil.java
  4. 57
      wms/hd/nladmin-system/src/main/java/org/nl/wms/common/StructFindUtil.java
  5. 6
      wms/hd/nladmin-system/src/main/java/org/nl/wms/common/wql/QSTRUCT_RULE.wql
  6. 84
      wms/hd/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/AcsToWmsServiceImpl.java
  7. 2
      wms/hd/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/WmsToAcsServiceImpl.java
  8. 6
      wms/hd/nladmin-system/src/main/java/org/nl/wms/ext/acs/wql/ACSTOMES_001.wql
  9. 20
      wms/hd/nladmin-system/src/main/java/org/nl/wms/sch/manage/buss/CallEmptyVehicleTask.java
  10. 190
      wms/hd/nladmin-system/src/main/java/org/nl/wms/sch/manage/buss/SendMaterialTask.java
  11. BIN
      wms/hd/nladmin-system/src/main/java/org/nl/wms/wms.xls
  12. 164
      wms/hd/nladmin-system/src/main/resources/config/application-test.yml
  13. 9
      wms/hd/nladmin-system/src/main/resources/config/businessTpye.txt
  14. 32
      wms/hd/nladmin-system/src/main/resources/log/AcsToErp.xml
  15. 32
      wms/hd/nladmin-system/src/main/resources/log/AcsToWms.xml
  16. 32
      wms/hd/nladmin-system/src/main/resources/log/AgvServiceImpl.xml
  17. 32
      wms/hd/nladmin-system/src/main/resources/log/AgvackServlet.xml
  18. 31
      wms/hd/nladmin-system/src/main/resources/log/AutoCreateInst.xml
  19. 32
      wms/hd/nladmin-system/src/main/resources/log/NDCSocketConnectionAutoRun.xml
  20. 32
      wms/hd/nladmin-system/src/main/resources/log/QueryAgvTaskStatus.xml
  21. 32
      wms/hd/nladmin-system/src/main/resources/log/QueryXZAgvTaskStatus.xml
  22. 32
      wms/hd/nladmin-system/src/main/resources/log/WmsToAcs.xml

1
wms/hd/nladmin-system/src/main/java/org/nl/wms/.~lock.wms.xls#

@ -1 +0,0 @@
,DESKTOP-BT6HP4E/zhang,DESKTOP-BT6HP4E,29.08.2022 16:51,file:///C:/Users/zhang/AppData/Roaming/LibreOffice/4;

4
wms/hd/nladmin-system/src/main/java/org/nl/wms/WorkProcedureEnum.java

@ -12,8 +12,8 @@ public enum WorkProcedureEnum {
YZGX(2, "1514444247439380480", "02", "压制工序", ""),
SZGX(3, "1514444321896665088", "03", "烧制工序", ""),
FJGX(4, "1514444386174373888", "04", "分拣工序", ""),
DPGX(4, "1514444386174373888", "05", "叠盘工序", ""),
CPGX(4, "1514444386174373888", "06", "拆盘工序", "");
DPGX(4, "1564863511488761856", "05", "叠盘工序", ""),
CPGX(4, "1565169481129529344", "06", "拆盘工序", "");
//顺序号
private int index;
//工序标识

7
wms/hd/nladmin-system/src/main/java/org/nl/wms/common/PointUpdateUtil.java

@ -22,9 +22,14 @@ public class PointUpdateUtil {
JSONObject pointjo = pointarr.getJSONObject(i);
String point_status = "0" + pointjo.getString("move");
String device_code = pointjo.getString("device_code");
pointjo.put("point_status", point_status);
int container_type = pointjo.getIntValue("container_type");
String vehicle_type = "";
if (container_type != 0) {
vehicle_type = "0" + (container_type + 2);
}
JSONObject pointObj = pointTable.query("point_code ='" + device_code + "'").uniqueResult(0);
pointObj.put("point_status", point_status);
pointObj.put("vehicle_type", vehicle_type);
pointTable.update(pointObj);
}
}

57
wms/hd/nladmin-system/src/main/java/org/nl/wms/common/StructFindUtil.java

@ -15,6 +15,7 @@ public class StructFindUtil {
String material_id = jsonObject.getString("material_id");
String area_type = jsonObject.getString("area_type");
String vehicle_code = jsonObject.getString("vehicle_code");
String point_code = jsonObject.getString("point_code");
if (StrUtil.isEmpty(vehicle_code)) {
throw new BadRequestException("托盘不能为空!");
}
@ -72,33 +73,21 @@ public class StructFindUtil {
}
public static JSONObject getEmptyVehicleInStruct(JSONObject jsonObject) {
String vehice_type = "";
String area_type = jsonObject.getString("area_type");
String vehicle_code = jsonObject.getString("vehicle_code");
String point_code = jsonObject.getString("point_code");
if (StrUtil.isEmpty(vehicle_code)) {
throw new BadRequestException("托盘不能为空!");
}
if (StrUtil.equals(point_code, "KGTDDW05")) {
JSONArray pointarr = WQL
.getWO("ACSTOMES_001")
.addParam("area_type", AreaEnum.KGTCPQ.getCode())
.addParam("flag", "2")
.process()
.getResultJSONArray(0);
if (StrUtil.equals(point_code, "KGTDTW01") || StrUtil.equals(point_code, "KGTDDW01")) {
JSONArray pointarr = WQL.getWO("ACSTOMES_001").addParam("area_type", AreaEnum.KGTCPQ.getCode()).addParam("flag", "2").process().getResultJSONArray(0);
PointUpdateUtil.updatePoint(pointarr);
} else {
//根据托盘找托盘类型,
JSONObject vehicleObj = WQLObject.getWQLObject("md_pb_vehicle").query("vehicle_code='" + vehicle_code + "'").uniqueResult(0);
if (ObjectUtil.isEmpty(vehicleObj)) {
throw new BadRequestException("未找到托盘号为'" + vehicle_code + "' 托盘信息!");
}
vehice_type = vehicleObj.getString("vehicle_type");
}
//根据托盘找托盘类型,
JSONObject vehicleObj = WQLObject
.getWQLObject("md_pb_vehicle")
.query("vehicle_code='" + vehicle_code + "'")
.uniqueResult(0);
if (ObjectUtil.isEmpty(vehicleObj)) {
throw new BadRequestException("未找到托盘号为'" + vehicle_code + "' 托盘信息!");
}
if (StrUtil.isEmpty(area_type)) {
throw new BadRequestException("区域不能为空!");
}
String vehice_type = vehicleObj.getString("vehicle_type");
JSONObject result = WQL
.getWO("QSTRUCT_RULE")
.addParam("flag", "4")
@ -113,23 +102,29 @@ public class StructFindUtil {
public static JSONObject getEmptyVehicleOutStruct(JSONObject jsonObject) {
String area_type = jsonObject.getString("area_type");
String vehicle_type = jsonObject.getString("vehicle_type");
String point_code = jsonObject.getString("point_code");
String point_code = jsonObject.getString("point_code");
//用于判断木托盘区域的托盘类型
String point_vehicle_type = jsonObject.getString("point_vehicle_type");
//如果是堆叠位5 需要更新 设备状态
if(StrUtil.equals(point_code,"KGTDDW05")){
JSONArray pointarr = WQL
.getWO("ACSTOMES_001")
if (StrUtil.equals(point_code, "KGTDDW05")) {
JSONArray pointarr = WQL.getWO("ACSTOMES_001")
.addParam("area_type", AreaEnum.KGTCPQ.getCode())
.addParam("flag", "2")
.process()
.getResultJSONArray(0);
PointUpdateUtil.updatePoint(pointarr);
}
//如果是分拣区域 需要更新覆膜机点位的状态
if (StrUtil.equals(area_type, AreaEnum.ZDCDX.getCode())) {
JSONArray pointarr = WQL.getWO("ACSTOMES_001")
.addParam("area_type", AreaEnum.RGCPQ.getCode())
.addParam("flag", "2").process().getResultJSONArray(0);
PointUpdateUtil.updatePoint(pointarr);
}
if (StrUtil.isEmpty(area_type)) {
throw new BadRequestException("区域不能为空!");
}
JSONObject result = new JSONObject();
//如果是堆叠位5 需要更新 设备状态
if (StrUtil.equals(point_code, "KGTDDW05")) {
result = WQL
.getWO("QSTRUCT_RULE")
@ -146,10 +141,10 @@ public class StructFindUtil {
.addParam("area_type", area_type)
.addParam("vehicle_type", vehicle_type)
.addParam("point_code", point_code)
.process()
.uniqueResult(0);
}
.addParam("point_vehicle_type", point_vehicle_type)
.process().uniqueResult(0);
}
return result;
}

6
wms/hd/nladmin-system/src/main/java/org/nl/wms/common/wql/QSTRUCT_RULE.wql

@ -23,6 +23,7 @@
输入.is_full TYPEAS s_string
输入.vehicle_type TYPEAS s_string
输入.point_code TYPEAS s_string
输入.point_vehicle_type TYPEAS s_string
[临时表]
@ -155,7 +156,7 @@ IF 输入.flag = "4"
point.point_code as struct_code,
point.point_name as struct_name
FROM
sch_base_point point ON point.point_id = structattr.struct_id
sch_base_point point
WHERE
point.lock_type = '00'
AND ( point.vehicle_code = '' OR point.vehicle_code IS NULL )
@ -197,6 +198,9 @@ IF 输入.flag = "5"
OPTION 输入.point_code <> ""
point.point_code = 输入.point_code
ENDOPTION
OPTION 输入.point_vehicle_type <> ""
point.vehicle_type = 输入.point_vehicle_type
ENDOPTION
ENDSELECT
ENDQUERY
ENDIF

84
wms/hd/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/AcsToWmsServiceImpl.java

@ -61,14 +61,26 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
case "1":
jsonObject.put("start_point_code", device_code);
jsonObject.put("create_mode", "01");
produceInfoByCode = this.getProduceInfoByCode(device_code);
//批次 物料,客户要从排产单里面去取
jsonObject.put("pcsn", "pcsn");
jsonObject.put("create_mode", "01");
jsonObject.put("material_id", produceInfoByCode.getString("material_id"));
jsonObject.put("cust_id", produceInfoByCode.getString("cust_id"));
jsonObject.put("stewing_time", produceInfoByCode.getString("stewing_time"));
jsonObject.put("producetask_id", produceInfoByCode.getString("producetask_id"));
if (!StrUtil.equals(device_code, "CYBZW")) {
produceInfoByCode = this.getProduceInfoByCode(device_code);
jsonObject.put("material_id", produceInfoByCode.getString("material_id"));
produceInfoByCode = this.getProduceInfoByCode(device_code);
//批次 物料,客户要从排产单里面去取
jsonObject.put("create_mode", "01");
jsonObject.put("material_id", produceInfoByCode.getString("material_id"));
jsonObject.put("cust_id", produceInfoByCode.getString("cust_id"));
jsonObject.put("stewing_time", produceInfoByCode.getString("stewing_time"));
jsonObject.put("producetask_id", produceInfoByCode.getString("producetask_id"));
} else {
String vehicle_code = (String) jsonObject.get("vehicle_code");
JSONObject groupObj = WQLObject.getWQLObject("st_buss_vehiclegroup").query("vehicle_code='" + vehicle_code + "'", "create_time desc").uniqueResult(0);
jsonObject.put("create_mode", "01");
jsonObject.put("material_id", groupObj.getString("material_uuid"));
jsonObject.put("cust_id", groupObj.getString("cust_id"));
jsonObject.put("stewing_time", "0");
jsonObject.put("vehicle_code", vehicle_code);
jsonObject.put("producetask_id", groupObj.getString("producetask_id"));
}
sendMaterialTask.createTask((JSONObject) JSON.toJSON(jsonObject));
break;
case "2":
@ -78,9 +90,9 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
//批次 物料,客户要从排产单里面去取
jsonObject.put("pcsn", "pcsn");
if (!StrUtil.equals(device_code,"RYW")){
if (!StrUtil.equals(device_code, "CYBZW")) {
produceInfoByCode = this.getProduceInfoByCode(device_code);
jsonObject.put("material_id", produceInfoByCode.getString("material_id"));
jsonObject.put("material_id", produceInfoByCode.getString("material_id"));
}
@ -114,10 +126,8 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
StrUtil.equals(device_code, "YZJ07XL02") ||
StrUtil.equals(device_code, "YZJ08XL01") ||
StrUtil.equals(device_code, "YZJ08XL02") ||
StrUtil.equals(device_code, "FJJXS01MD1") ||
StrUtil.equals(device_code, "FJJXS01MD2") ||
StrUtil.equals(device_code, "FJJXS02MD1") ||
StrUtil.equals(device_code, "FJJXS02MD2")
StrUtil.equals(device_code, "FJMDJXSDJW01") ||
StrUtil.equals(device_code, "FJMDJXSDJW02")
) {
produceInfoByCode = this.getProduceInfoByCode(device_code);
String material_id = produceInfoByCode.getString("material_id");
@ -163,7 +173,7 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
JSONObject produceInfoByCode = new JSONObject();
String device_code = (String) jsonObject.get("device_code");
String vehicle_code = (String) jsonObject.get("vehicle_code");
String qty = String.valueOf(jsonObject.get("qty")) ;
String qty = String.valueOf(jsonObject.get("qty"));
produceInfoByCode = this.getProduceInfoByCode(device_code);
String material_id = (String) produceInfoByCode.get("material_id");
String cust_id = (String) produceInfoByCode.get("cust_id");
@ -260,8 +270,13 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
}
String producetask_id = vehicleObj.getString("producetask_id");
JSONObject taskObj = WQLObject.getWQLObject("PDM_MG_produceTask").query("producetask_id='" + producetask_id + "'").uniqueResult(0);
//1代表去出窑,2 是优先包装
String is_package = "1";
if (StrUtil.equals(taskObj.getString("is_package"), "1")) {
is_package = "2";
}
JSONObject returnjo = new JSONObject();
returnjo.put("is_package", taskObj.getString("is_package"));
returnjo.put("is_package", is_package);
return returnjo;
}
@ -291,6 +306,21 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
vehicle_table.insert(json);
JSONObject returnjo = new JSONObject();
returnjo.put("vehicle_code", vehicle_code);
returnjo.put("status", HttpStatus.OK.value());
//将起点终点确定不下发的任务查出来,将木托盘点位解锁,起点改为扫描点,is_auto_issue 改为1,
String device_code = (String) jsonObject.get("device_code");
WQLObject task_Table = WQLObject.getWQLObject("SCH_BASE_Task");
JSONObject taskObj = task_Table.query("task_status='04' and is_auto_issue='0'", "create_time desc").uniqueResult(0);
String start_point_code = taskObj.getString("start_point_code");
WQLObject pointTable = WQLObject.getWQLObject("sch_base_point");
JSONObject startObj = pointTable.query("point_code ='" + start_point_code + "'").uniqueResult(0);
startObj.put("lock_type", "00");
pointTable.update(startObj);
taskObj.put("start_point_code", device_code);
taskObj.put("is_auto_issue", "1");
taskObj.put("vehicle_code", vehicle_code);
task_Table.update(taskObj);
//
return returnjo;
}
@ -314,19 +344,25 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
@Override
@Transactional(rollbackFor = Exception.class)
public Map<String, Object> getVehicleInfoBycode(Map jsonObject) {
String vehicle_code = (String) jsonObject.get("vehicle_code");
String device_code = (String) jsonObject.get("device_code");
JSONObject pointObj = WQLObject.getWQLObject("sch_base_point").query("point_code='" + device_code + "'").uniqueResult(0);
String vehicle_code = pointObj.getString("vehicle_code");
if (StrUtil.isEmpty(vehicle_code)) {
throw new BadRequestException("托盘编码不能为空!");
throw new BadRequestException("点位编码为'" + device_code + "'未找到托盘信息!");
}
JSONObject vehicleObj = WQLObject.getWQLObject("st_buss_vehiclegroup").query("vehicle_code='" + vehicle_code + "' AND is_delete='0'").uniqueResult(0);
if (ObjectUtil.isEmpty(vehicleObj)) {
throw new BadRequestException("未找到托盘号为'" + vehicle_code + "'的托盘信息!");
}
return vehicleObj;
JSONObject result = new JSONObject();
result.put("status", HttpStatus.OK.value());
result.put("message", "反馈成功!");
result.put("data", vehicleObj);
return result;
}
@Override
public Map<String, Object> sureProduceTask(Map jsonObject) {
public Map<String, Object> sureProduceTask(Map jsonObject) {
String producetask_code = (String) jsonObject.get("producetask_code");
String device_code = (String) jsonObject.get("device_code");
String material_code = (String) jsonObject.get("material_code");
@ -355,15 +391,15 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
throw new BadRequestException("物料编码不能为空!");
}
if (!StrUtil.equals(materialObj.getString("material_id"), taskObj.getString("material_id"))) {
throw new BadRequestException("物料标识不一样!");
if (!StrUtil.equals(materialObj.getString("material_id"), taskObj.getString("material_id"))) {
throw new BadRequestException("物料标识不一样!");
}
taskObj.put("producetask_status", "04");
}
if (StrUtil.equals("2", type)) {
taskObj.put("producetask_status", "05");
taskObj.put("real_qty",qty);
taskObj.put("real_qty", qty);
}
taskTable.update(taskObj);
JSONObject result = new JSONObject();
@ -381,7 +417,7 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
for (int i = 0; i < array.size(); i++) {
JSONObject row = array.getJSONObject(i);
String task_id = row.getString("ext_task_uuid");
row.put("task_id",task_id);
row.put("task_id", task_id);
TaskDto taskDto = taskService.findById(task_id);
String processing_class = taskDto.getHandle_class();
//1:执行中,2:完成 ,3:acs取消

2
wms/hd/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/WmsToAcsServiceImpl.java

@ -36,7 +36,7 @@ public class WmsToAcsServiceImpl implements WmsToAcsService {
@Override
public Map action(JSONArray arr) {
String api = "api/wms/updateDeviceGoods";
String api = "api/wms/action";
return AcsUtil.notifyAcs(api, arr);
}

6
wms/hd/nladmin-system/src/main/java/org/nl/wms/ext/acs/wql/ACSTOMES_001.wql

@ -15,9 +15,10 @@
#################################################
输入.flag TYPEAS s_string
输入.workprocedure_id TYPEAS s_string
输入.material_id TYPEAS s_string
输入.material_id TYPEAS s_string
输入.area_type TYPEAS s_string
输入.point_code TYPEAS s_string
输入.device_point_type TYPEAS s_string
[临时表]
--这边列出来的临时表就会在运行期动态创建
@ -80,6 +81,9 @@
OPTION 输入.point_code <> ""
point.point_code = 输入.point_code
ENDOPTION
OPTION 输入.device_point_type <> ""
point.device_point_type = 输入.device_point_type
ENDOPTION
ENDSELECT
ENDQUERY
ENDIF

20
wms/hd/nladmin-system/src/main/java/org/nl/wms/sch/manage/buss/CallEmptyVehicleTask.java

@ -11,7 +11,9 @@ import org.nl.modules.system.util.CodeUtil;
import org.nl.utils.SecurityUtils;
import org.nl.utils.SpringContextHolder;
import org.nl.wms.WorkProcedureEnum;
import org.nl.wms.common.PointUpdateUtil;
import org.nl.wms.common.StructFindUtil;
import org.nl.wms.ext.acs.service.impl.WmsToAcsServiceImpl;
import org.nl.wms.sch.manage.AbstractAcsTask;
import org.nl.wms.sch.manage.AreaEnum;
import org.nl.wms.sch.manage.TaskStatusEnum;
@ -230,6 +232,11 @@ public class CallEmptyVehicleTask extends AbstractAcsTask {
vehicle_type = WQLObject.getWQLObject("PDM_MG_produceTask").query("device_id='" + device_id + "' and producetask_status='04'").uniqueResult(0).getString("vehicle_type");
start_area = AreaEnum.RGCPQ.getCode();
is_auto_issue = "0";
//更新设备点位。
JSONArray pointarr = WQL.getWO("ACSTOMES_001").addParam("area_type", AreaEnum.RGCPQ.getCode())
.addParam("flag", "2").addParam("device_point_type","01")
.process().getResultJSONArray(0);
PointUpdateUtil.updatePoint(pointarr);
break;
//叠盘工序
case DPGX:
@ -243,13 +250,23 @@ public class CallEmptyVehicleTask extends AbstractAcsTask {
start_area = AreaEnum.KLHJ.getCode();
}
JSONObject param = new JSONObject();
param.put("vehicle_type", vehicle_type);
param.put("point_vehicle_type", vehicle_type);
param.put("area_type", start_area);
param.put("point_code", start_point_code);
JSONObject outStructObj = StructFindUtil.getEmptyVehicleOutStruct(param);
if (ObjectUtil.isEmpty(outStructObj)) {
throw new BadRequestException("未找到合适的空托盘点位");
}
//如果是覆膜机区域,写给acs点位
if (StrUtil.equals(AreaEnum.RGCPQ.getCode(), start_area)) {
JSONArray arr = new JSONArray();
JSONObject jo = new JSONObject();
jo.put("device_code", outStructObj.getString("struct_code"));
jo.put("to_command", "1");
arr.add(jo);
WmsToAcsServiceImpl wmsToAcsService = new WmsToAcsServiceImpl();
wmsToAcsService.action(arr);
}
vehicle_code = outStructObj.getString("vehicle_code");
start_point_code = outStructObj.getString("struct_code");
@ -309,7 +326,6 @@ public class CallEmptyVehicleTask extends AbstractAcsTask {
taskObj.put("create_time", DateUtil.now());
taskObj.put("is_delete", "0");
taskTable.insert(taskObj);
return task_id;
}

190
wms/hd/nladmin-system/src/main/java/org/nl/wms/sch/manage/buss/SendMaterialTask.java

@ -63,57 +63,60 @@ public class SendMaterialTask extends AbstractAcsTask {
jsonTask.put("taskfinish_mode", taskObj.getString("taskfinish_mode"));
jsonTask.put("update_time", DateUtil.now());
jsonTask.put("remark", "任务执行完成");
///审核单据 增加库存 改变出入库表的状态
WQLObject mstTab = WQLObject.getWQLObject("ST_IVT_workProcedureIOS");
JSONObject mstObj = mstTab.query("task_id='" + task_id + "' and is_delete='0'").uniqueResult(0);
//审核 加库存可和用数量
StoreIvtServiceImpl ivtService = new StoreIvtServiceImpl();
mstObj.put("bill_status", "50");
mstObj.put("confirm_optid", SecurityUtils.getCurrentUserId());
mstObj.put("confirm_optname", SecurityUtils.getNickName());
mstObj.put("confirm_time", DateUtil.now());
mstTab.update(mstObj);
String next_point_code = jsonTask.getString("next_point_code");
if (!StrUtil.equals(next_point_code, "BZX01")) {
/// 如果终点不是包装线,审核单据 增加库存 改变出入库表的状态
WQLObject mstTab = WQLObject.getWQLObject("ST_IVT_workProcedureIOS");
JSONObject mstObj = mstTab.query("task_id='" + task_id + "' and is_delete='0'").uniqueResult(0);
//审核 加库存可和用数量
StoreIvtServiceImpl ivtService = new StoreIvtServiceImpl();
mstObj.put("bill_status", "50");
mstObj.put("confirm_optid", SecurityUtils.getCurrentUserId());
mstObj.put("confirm_optname", SecurityUtils.getNickName());
mstObj.put("confirm_time", DateUtil.now());
mstTab.update(mstObj);
String iostorinv_id = mstObj.getString("iostorinv_id");
String next_point_code = mstObj.getString("end_point_code");
String start_point_code = mstObj.getString("start_point_code");
JSONObject param = new JSONObject();
param.put("material_id", mstObj.getString("material_id"));
param.put("bill_id", iostorinv_id);
param.put("qty_unit_id", mstObj.getString("qty_unit_id"));
param.put("pcsn", mstObj.getString("pcsn"));
param.put("change_qty", mstObj.getString("qty"));
param.put("vehicle_code", mstObj.getString("vehicle_code"));
param.put("workprocedure_id", mstObj.getString("workprocedure_id"));
param.put("is_full", mstObj.getString("is_full"));
param.put("stewing_time", mstObj.getString("stewing_time"));
param.put("producetask_id", mstObj.getString("producetask_id"));
String iostorinv_id = mstObj.getString("iostorinv_id");
String start_point_code = mstObj.getString("start_point_code");
JSONObject param = new JSONObject();
param.put("material_id", mstObj.getString("material_id"));
param.put("bill_id", iostorinv_id);
param.put("qty_unit_id", mstObj.getString("qty_unit_id"));
param.put("pcsn", mstObj.getString("pcsn"));
param.put("change_qty", mstObj.getString("qty"));
param.put("vehicle_code", mstObj.getString("vehicle_code"));
param.put("workprocedure_id", mstObj.getString("workprocedure_id"));
param.put("is_full", mstObj.getString("is_full"));
param.put("stewing_time", mstObj.getString("stewing_time"));
param.put("producetask_id", mstObj.getString("producetask_id"));
PointServiceImpl pointService = SpringContextHolder.getBean(PointServiceImpl.class);
PointDto nextPointDto = pointService.findByCode(next_point_code);
if (ObjectUtil.isNull(nextPointDto)) {
throw new BadRequestException("未找到可用点位:" + next_point_code);
}
PointDto startPointDto = pointService.findByCode(start_point_code);
if (ObjectUtil.isNull(startPointDto)) {
throw new BadRequestException("未找到可用点位:" + start_point_code);
PointServiceImpl pointService = SpringContextHolder.getBean(PointServiceImpl.class);
PointDto nextPointDto = pointService.findByCode(next_point_code);
if (ObjectUtil.isNull(nextPointDto)) {
throw new BadRequestException("未找到可用点位:" + next_point_code);
}
PointDto startPointDto = pointService.findByCode(start_point_code);
if (ObjectUtil.isNull(startPointDto)) {
throw new BadRequestException("未找到可用点位:" + start_point_code);
}
param.put("struct_id", nextPointDto.getPoint_id());
ivtService.addIvtFlow(param, IvtChangeTypeEnum.ADD_IVT_AND_CAN_USE);
//解锁仓位,托盘信息,回写到点位上去
String vehicle_code = jsonTask.getString("vehicle_code");
WQLObject pointTab = WQLObject.getWQLObject("sch_base_point");
JSONObject endpointObj = pointTab.query("point_code='" + jsonTask.getString("next_point_code") + "'").uniqueResult(0);
endpointObj.put("lock_type", "00");
endpointObj.put("point_status", "02");
endpointObj.put("vehicle_code", vehicle_code);
pointTab.update(endpointObj);
JSONObject startPointObj = pointTab.query("point_code='" + jsonTask.getString("start_point_code") + "'").uniqueResult(0);
startPointObj.put("lock_type", "00");
startPointObj.put("point_status", "00");
startPointObj.put("vehicle_code", "");
pointTab.update(startPointObj);
}
param.put("struct_id", nextPointDto.getPoint_id());
ivtService.addIvtFlow(param, IvtChangeTypeEnum.ADD_IVT_AND_CAN_USE);
//解锁仓位,托盘信息,回写到点位上去
String vehicle_code = jsonTask.getString("vehicle_code");
WQLObject pointTab = WQLObject.getWQLObject("sch_base_point");
JSONObject endpointObj = pointTab.query("point_code='" + jsonTask.getString("next_point_code") + "'").uniqueResult(0);
endpointObj.put("lock_type", "00");
endpointObj.put("point_status", "02");
endpointObj.put("vehicle_code", vehicle_code);
pointTab.update(endpointObj);
JSONObject startPointObj = pointTab.query("point_code='" + jsonTask.getString("start_point_code") + "'").uniqueResult(0);
startPointObj.put("lock_type", "00");
startPointObj.put("point_status", "00");
startPointObj.put("vehicle_code", "");
pointTab.update(startPointObj);
taskTab.update(jsonTask);
}
@ -233,7 +236,7 @@ public class SendMaterialTask extends AbstractAcsTask {
.process().uniqueResult(0);
String workprocedure_id = workInfo.getString("workprocedure_id");
WorkProcedureEnum workProcedureEnum = WorkProcedureEnum.get(workprocedure_id);
String vehilce_type="";
String vehilce_type = "";
switch (workProcedureEnum) {
//混黏工序
@ -260,6 +263,11 @@ public class SendMaterialTask extends AbstractAcsTask {
qty_unit_id = BussConstant.HN_IN_QTY_UNIT_ID;
bill_type = BillTypeEnum.FJRK.getCode();
endArea_type = AreaEnum.BZZC.getCode();
vehicle_code = startPoint.getVehicle_code();
if (StrUtil.equals(is_full, "1")) {
next_point_code = "BZX01";
}
break;
default:
qty_unit_id = BussConstant.HN_IN_QTY_UNIT_ID;
@ -270,48 +278,52 @@ public class SendMaterialTask extends AbstractAcsTask {
param.put("area_type", endArea_type);
param.put("vehicle_code", vehicle_code);
param.put("vehilce_type", vehilce_type);
JSONObject inStructObj = StructFindUtil.getInStruct(param);
if (ObjectUtil.isEmpty(inStructObj)) {
throw new BadRequestException("未找到合适的入库仓位!");
//如果是分拣送到包装线 则不生成入库单信息
if (StrUtil.isEmpty(next_point_code)) {
JSONObject inStructObj = StructFindUtil.getInStruct(param);
if (ObjectUtil.isEmpty(inStructObj)) {
throw new BadRequestException("未找到合适的入库仓位!");
}
next_point_code = inStructObj.getString("struct_code");
//创建入库单据
//假如静置时间为空,则取物料表上的静置时间
if (StrUtil.isEmpty(stewing_time)) {
stewing_time = WQLObject
.getWQLObject("md_me_material")
.query("material_id ='" + material_id + "'")
.uniqueResult(0)
.getString("stewing_time");
}
JSONObject iosObj = new JSONObject();
iosObj.put("iostorinv_id", IdUtil.getSnowflake(1, 1).nextId());
iosObj.put("bill_code", CodeUtil.getNewCode("IN_STORE_CODE"));
iosObj.put("io_type", "0");
iosObj.put("bill_type", bill_type);
iosObj.put("workprocedure_id", workprocedure_id);
iosObj.put("ivt_workprocedure_id", workprocedure_id);
iosObj.put("material_id", material_id);
iosObj.put("vehicle_code", vehicle_code);
iosObj.put("producetask_id", producetask_id);
iosObj.put("stewing_time", stewing_time);
iosObj.put("qty", qty);
iosObj.put("qty_unit_id", qty_unit_id);
//默认是分配状态
iosObj.put("bill_status", "20");
iosObj.put("start_point_code", start_point_code);
iosObj.put("end_point_code", next_point_code);
iosObj.put("start_area", startPoint.getArea_type());
iosObj.put("end_area", endArea_type);
iosObj.put("cust_id", cust_id);
iosObj.put("create_mode", create_mode);
iosObj.put("task_id", task_id);
iosObj.put("pcsn", pcsn);
iosObj.put("create_id", SecurityUtils.getCurrentUserId());
iosObj.put("create_name", SecurityUtils.getNickName());
iosObj.put("create_time", DateUtil.now());
iosObj.put("is_full", is_full);
WQLObject.getWQLObject("ST_IVT_workProcedureIOS").insert(iosObj);
}
next_point_code = inStructObj.getString("struct_code");
//创建入库单据
//假如静置时间为0 或者为空,则取物料表上的静置时间
if (StrUtil.isEmpty(stewing_time) || StrUtil.equals(stewing_time, "0")) {
stewing_time = WQLObject
.getWQLObject("md_me_material")
.query("material_id ='" + material_id + "'")
.uniqueResult(0)
.getString("stewing_time");
}
JSONObject iosObj = new JSONObject();
iosObj.put("iostorinv_id", IdUtil.getSnowflake(1, 1).nextId());
iosObj.put("bill_code", CodeUtil.getNewCode("IN_STORE_CODE"));
iosObj.put("io_type", "0");
iosObj.put("bill_type", bill_type);
iosObj.put("workprocedure_id", workprocedure_id);
iosObj.put("ivt_workprocedure_id", workprocedure_id);
iosObj.put("material_id", material_id);
iosObj.put("vehicle_code", vehicle_code);
iosObj.put("producetask_id", producetask_id);
iosObj.put("stewing_time", stewing_time);
iosObj.put("qty", qty);
iosObj.put("qty_unit_id", qty_unit_id);
//默认是分配状态
iosObj.put("bill_status", "20");
iosObj.put("start_point_code", start_point_code);
iosObj.put("end_point_code", next_point_code);
iosObj.put("start_area", startPoint.getArea_type());
iosObj.put("end_area", endArea_type);
iosObj.put("cust_id", cust_id);
iosObj.put("create_mode", create_mode);
iosObj.put("task_id", task_id);
iosObj.put("pcsn", pcsn);
iosObj.put("create_id", SecurityUtils.getCurrentUserId());
iosObj.put("create_name", SecurityUtils.getNickName());
iosObj.put("create_time", DateUtil.now());
iosObj.put("is_full", is_full);
WQLObject.getWQLObject("ST_IVT_workProcedureIOS").insert(iosObj);
}
String task_status = TaskStatusEnum.START_AND_POINT.getCode();
PointDto nextPoint = pointService.findByCode(next_point_code);

BIN
wms/hd/nladmin-system/src/main/java/org/nl/wms/wms.xls

Binary file not shown.

164
wms/hd/nladmin-system/src/main/resources/config/application-test.yml

@ -1,164 +0,0 @@
server:
port: 8010
#配置数据源
spring:
profiles:
test
datasource:
druid:
db-type: com.alibaba.druid.pool.DruidDataSource
driverClassName: net.sf.log4jdbc.sql.jdbcapi.DriverSpy
url: jdbc:log4jdbc:mysql://${DB_HOST:192.168.81.252}:${DB_PORT:3306}/${DB_NAME:llsh_wms}?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false&useOldAliasMetadataBehavior=true
username: ${DB_USER:root}
#password: ${DB_PWD:P@ssw0rd}
password: ${DB_PWD:Root.123456}
# 初始连接数
initial-size: 5
# 最小连接数
min-idle: 15
# 最大连接数
max-active: 30
# 是否自动回收超时连接
remove-abandoned: true
# 超时时间(以秒数为单位)
remove-abandoned-timeout: 180
# 获取连接超时时间
max-wait: 3000
# 连接有效性检测时间
time-between-eviction-runs-millis: 60000
# 连接在池中最小生存的时间
min-evictable-idle-time-millis: 300000
# 连接在池中最大生存的时间
max-evictable-idle-time-millis: 900000
# 指明连接是否被空闲连接回收器(如果有)进行检验.如果检测失败,则连接将被从池中去除
test-while-idle: true
# 指明是否在从池中取出连接前进行检验,如果检验失败, 则从池中去除连接并尝试取出另一个
test-on-borrow: true
# 是否在归还到池中前进行检验
test-on-return: false
# 检测连接是否有效
validation-query: select 1
# 配置监控统计
webStatFilter:
enabled: true
stat-view-servlet:
enabled: true
url-pattern: /druid/*
reset-enable: false
filter:
stat:
enabled: true
# 记录慢SQL
log-slow-sql: true
slow-sql-millis: 1000
merge-sql: true
wall:
config:
multi-statement-alagvslow: true
data:
mongodb:
host: 127.0.0.1
port: 27017
database: logdb
redis:
#数据库索引
database: ${REDIS_DB:8}
host: ${REDIS_HOST:47.111.78.178}
port: ${REDIS_PORT:6379}
password: ${REDIS_PWD:}
#连接超时时间
timeout: 5000
# 登录相关配置
login:
# 登录缓存
cache-enable: true
# 是否限制单用户登录
single-login: false
# 验证码
login-code:
# 验证码类型配置 查看 LoginProperties 类
code-type: arithmetic
# 登录图形验证码有效时间/分钟
expiration: 2
# 验证码高度
width: 111
# 验证码宽度
heigth: 36
# 内容长度
length: 2
# 字体名称,为空则使用默认字体
font-name:
# 字体大小
font-size: 25
#jwt
jwt:
header: Authorization
# 令牌前缀
token-start-with: Bearer
# 必须使用最少88位的Base64对该令牌进行编码
base64-secret: ZmQ0ZGI5NjQ0MDQwY2I4MjMxY2Y3ZmI3MjdhN2ZmMjNhODViOTg1ZGE0NTBjMGM4NDA5NzYxMjdjOWMwYWRmZTBlZjlhNGY3ZTg4Y2U3YTE1ODVkZDU5Y2Y3OGYwZWE1NzUzNWQ2YjFjZDc0NGMxZWU2MmQ3MjY1NzJmNTE0MzI=
# 令牌过期时间 此处单位/毫秒 ,默认4小时,可在此网站生成 https://www.convertworld.com/zh-hans/time/milliseconds.html
token-validity-in-seconds: 14400000
# 在线用户key
online-key: online-token-
# 验证码
code-key: code-key-
# token 续期检查时间范围(默认30分钟,单位毫秒),在token即将过期的一段时间内用户操作了,则给用户的token续期
detect: 1800000
# 续期时间范围,默认1小时,单位毫秒
renew: 3600000
#是否允许生成代码,生产环境设置为false
generator:
enabled: true
#是否开启 swagger-ui
swagger:
enabled: true
# IP 本地解析
ip:
local-parsing: true
# 文件存储路径
file:
mac:
path: ~/file/
avatar: ~/avatar/
linux:
path: /home/eladmin/file/
avatar: /home/eladmin/avatar/
windows:
path: C:\eladmin\file\
avatar: C:\eladmin\avatar\
# 文件大小 /M
maxSize: 100
avatarMaxSize: 5
jetcache:
defaultCacheType: LOCAL
statIntervalMinutes: 15
areaInCacheName: false
hiddenPackages: com.yb
local:
default:
type: caffeine
limit: 100
keyConvertor: fastjson
expireAfterWriteInMillis: 60000
remote:
default:
type: redis.lettuce
keyConvertor: fastjson
valueEncoder: kryo
valueDecoder: kryo
poolConfig:
minIdle: 5
maxIdle: 200
maxTotal: 1000
uri:
- redis://47.111.78.178:6379

9
wms/hd/nladmin-system/src/main/resources/config/businessTpye.txt

@ -1,9 +0,0 @@
//项目协议类型说明
0:标准协议,荣力营口,杰牌,金力永磁
1:新锐
2:贤益
3:奇达
4:广钞厂
5:纽迪希亚
6:太钢
7:洁美

32
wms/hd/nladmin-system/src/main/resources/log/AcsToErp.xml

@ -1,32 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<included>
<springProperty scope="context" name="logPath" source="logging.file.path" defaultValue="logs"/>
<property name="LOG_HOME" value="${logPath}"/>
<!-- 按照每天生成日志文件 -->
<appender name="FILE7" class="ch.qos.logback.core.rolling.RollingFileAppender">
<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
<!--日志文件输出的文件名-->
<FileNamePattern>${LOG_HOME}/ACS请求ERP/%d{yyyy-MM-dd}.%i.log</FileNamePattern>
<!--日志文件保留天数-->
<maxHistory>15</maxHistory>
<!--单个日志最大容量 至少10MB才能看得出来-->
<maxFileSize>200MB</maxFileSize>
<!--所有日志最多占多大容量-->
<totalSizeCap>20GB</totalSizeCap>
</rollingPolicy>
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
<!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
</encoder>
</appender>
<!-- <logger name="org.nl.start.Init" level="info" additivity="false">
<appender-ref ref="FILE3"/>
</logger>-->
<!-- 打印sql -->
<logger name=" org.nl.acs.ext.erp.service.impl.AcsToErpServiceImpl" level="info" additivity="false">
<appender-ref ref="FILE7"/>
</logger>
</included>

32
wms/hd/nladmin-system/src/main/resources/log/AcsToWms.xml

@ -1,32 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<included>
<springProperty scope="context" name="logPath" source="logging.file.path" defaultValue="logs"/>
<property name="LOG_HOME" value="${logPath}"/>
<!-- 按照每天生成日志文件 -->
<appender name="FILE8" class="ch.qos.logback.core.rolling.RollingFileAppender">
<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
<!--日志文件输出的文件名-->
<FileNamePattern>${LOG_HOME}/ACS请求WMS/%d{yyyy-MM-dd}.%i.log</FileNamePattern>
<!--日志文件保留天数-->
<maxHistory>15</maxHistory>
<!--单个日志最大容量 至少10MB才能看得出来-->
<maxFileSize>200MB</maxFileSize>
<!--所有日志最多占多大容量-->
<totalSizeCap>20GB</totalSizeCap>
</rollingPolicy>
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
<!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
</encoder>
</appender>
<!-- <logger name="org.nl.start.Init" level="info" additivity="false">
<appender-ref ref="FILE3"/>
</logger>-->
<!-- 打印sql -->
<logger name="org.nl.acs.ext.wms.service.impl.AcsToWmsServiceImpl" level="info" additivity="false">
<appender-ref ref="FILE8"/>
</logger>
</included>

32
wms/hd/nladmin-system/src/main/resources/log/AgvServiceImpl.xml

@ -1,32 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<included>
<springProperty scope="context" name="logPath" source="logging.file.path" defaultValue="logs"/>
<property name="LOG_HOME" value="${logPath}"/>
<!-- 按照每天生成日志文件 -->
<appender name="FILE5" class="ch.qos.logback.core.rolling.RollingFileAppender">
<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
<!--日志文件输出的文件名-->
<FileNamePattern>${LOG_HOME}/反馈AGV请求/%d{yyyy-MM-dd}.%i.log</FileNamePattern>
<!--日志文件保留天数-->
<maxHistory>15</maxHistory>
<!--单个日志最大容量 至少10MB才能看得出来-->
<maxFileSize>200MB</maxFileSize>
<!--所有日志最多占多大容量-->
<totalSizeCap>20GB</totalSizeCap>
</rollingPolicy>
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
<!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
</encoder>
</appender>
<!-- <logger name="org.nl.start.Init" level="info" additivity="false">
<appender-ref ref="FILE3"/>
</logger>-->
<!-- 打印sql -->
<logger name="org.nl.acs.agv.server.impl.AgvServiceImpl" level="info" additivity="false">
<appender-ref ref="FILE5"/>
</logger>
</included>

32
wms/hd/nladmin-system/src/main/resources/log/AgvackServlet.xml

@ -1,32 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<included>
<springProperty scope="context" name="logPath" source="logging.file.path" defaultValue="logs"/>
<property name="LOG_HOME" value="${logPath}"/>
<!-- 按照每天生成日志文件 -->
<appender name="FILE6" class="ch.qos.logback.core.rolling.RollingFileAppender">
<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
<!--日志文件输出的文件名-->
<FileNamePattern>${LOG_HOME}/AGV请求离开/%d{yyyy-MM-dd}.%i.log</FileNamePattern>
<!--日志文件保留天数-->
<maxHistory>15</maxHistory>
<!--单个日志最大容量 至少10MB才能看得出来-->
<maxFileSize>200MB</maxFileSize>
<!--所有日志最多占多大容量-->
<totalSizeCap>20GB</totalSizeCap>
</rollingPolicy>
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
<!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
</encoder>
</appender>
<!-- <logger name="org.nl.start.Init" level="info" additivity="false">
<appender-ref ref="FILE3"/>
</logger>-->
<!-- 打印sql -->
<logger name="org.nl.acs.device_driver.magic_agv.AgvackServlet" level="info" additivity="false">
<appender-ref ref="FILE6"/>
</logger>
</included>

31
wms/hd/nladmin-system/src/main/resources/log/AutoCreateInst.xml

@ -1,31 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<included>
<springProperty scope="context" name="logPath" source="logging.file.path" defaultValue="logs"/>
<property name="LOG_HOME" value="${logPath}"/>
<!-- 按照每天生成日志文件 -->
<appender name="FILE3" class="ch.qos.logback.core.rolling.RollingFileAppender">
<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
<!--日志文件输出的文件名-->
<FileNamePattern>${LOG_HOME}/自动创建指令/%d{yyyy-MM-dd}.%i.log</FileNamePattern>
<!--日志文件保留天数-->
<maxHistory>15</maxHistory>
<!--单个日志最大容量 至少10MB才能看得出来-->
<maxFileSize>200MB</maxFileSize>
<!--所有日志最多占多大容量-->
<totalSizeCap>20GB</totalSizeCap>
</rollingPolicy>
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
<!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
</encoder>
</appender>
<!-- <logger name="org.nl.start.Init" level="info" additivity="false">
<appender-ref ref="FILE3"/>
</logger>-->
<!-- 打印sql -->
<logger name="org.nl.modules.quartz.task.AutoCreateInst" level="info" additivity="false">
<appender-ref ref="FILE3"/>
</logger>
</included>

32
wms/hd/nladmin-system/src/main/resources/log/NDCSocketConnectionAutoRun.xml

@ -1,32 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<included>
<springProperty scope="context" name="logPath" source="logging.file.path" defaultValue="logs"/>
<property name="LOG_HOME" value="${logPath}"/>
<!-- 按照每天生成日志文件 -->
<appender name="FILE10" class="ch.qos.logback.core.rolling.RollingFileAppender">
<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
<!--日志文件输出的文件名-->
<FileNamePattern>${LOG_HOME}/DNC/%d{yyyy-MM-dd}.%i.log</FileNamePattern>
<!--日志文件保留天数-->
<maxHistory>15</maxHistory>
<!--单个日志最大容量 至少10MB才能看得出来-->
<maxFileSize>200MB</maxFileSize>
<!--所有日志最多占多大容量-->
<totalSizeCap>20GB</totalSizeCap>
</rollingPolicy>
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
<!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
</encoder>
</appender>
<!-- <logger name="org.nl.start.Init" level="info" additivity="false">
<appender-ref ref="FILE3"/>
</logger>-->
<!-- 打印sql -->
<logger name="org.nl.start.auto.run.NDCSocketConnectionAutoRun" level="info" additivity="false">
<appender-ref ref="FILE10"/>
</logger>
</included>

32
wms/hd/nladmin-system/src/main/resources/log/QueryAgvTaskStatus.xml

@ -1,32 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<included>
<springProperty scope="context" name="logPath" source="logging.file.path" defaultValue="logs"/>
<property name="LOG_HOME" value="${logPath}"/>
<!-- 按照每天生成日志文件 -->
<appender name="FILE4" class="ch.qos.logback.core.rolling.RollingFileAppender">
<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
<!--日志文件输出的文件名-->
<FileNamePattern>${LOG_HOME}/查询AGV指令状态/%d{yyyy-MM-dd}.%i.log</FileNamePattern>
<!--日志文件保留天数-->
<maxHistory>15</maxHistory>
<!--单个日志最大容量 至少10MB才能看得出来-->
<maxFileSize>200MB</maxFileSize>
<!--所有日志最多占多大容量-->
<totalSizeCap>20GB</totalSizeCap>
</rollingPolicy>
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
<!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
</encoder>
</appender>
<!-- <logger name="org.nl.start.Init" level="info" additivity="false">
<appender-ref ref="FILE3"/>
</logger>-->
<!-- 打印sql -->
<logger name="org.nl.modules.quartz.task.QueryMagicAgvTaskStatus" level="info" additivity="false">
<appender-ref ref="FILE4"/>
</logger>
</included>

32
wms/hd/nladmin-system/src/main/resources/log/QueryXZAgvTaskStatus.xml

@ -1,32 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<included>
<springProperty scope="context" name="logPath" source="logging.file.path" defaultValue="logs"/>
<property name="LOG_HOME" value="${logPath}"/>
<!-- 按照每天生成日志文件 -->
<appender name="FILE10" class="ch.qos.logback.core.rolling.RollingFileAppender">
<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
<!--日志文件输出的文件名-->
<FileNamePattern>${LOG_HOME}/查询仙知AGV指令状态/%d{yyyy-MM-dd}.%i.log</FileNamePattern>
<!--日志文件保留天数-->
<maxHistory>15</maxHistory>
<!--单个日志最大容量 至少10MB才能看得出来-->
<maxFileSize>200MB</maxFileSize>
<!--所有日志最多占多大容量-->
<totalSizeCap>20GB</totalSizeCap>
</rollingPolicy>
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
<!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
</encoder>
</appender>
<!-- <logger name="org.nl.start.Init" level="info" additivity="false">
<appender-ref ref="FILE3"/>
</logger>-->
<!-- 打印sql -->
<logger name="org.nl.modules.quartz.task.QueryXZAgvTaskStatus" level="info" additivity="false">
<appender-ref ref="FILE10"/>
</logger>
</included>

32
wms/hd/nladmin-system/src/main/resources/log/WmsToAcs.xml

@ -1,32 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<included>
<springProperty scope="context" name="logPath" source="logging.file.path" defaultValue="logs"/>
<property name="LOG_HOME" value="${logPath}"/>
<!-- 按照每天生成日志文件 -->
<appender name="FILE9" class="ch.qos.logback.core.rolling.RollingFileAppender">
<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
<!--日志文件输出的文件名-->
<FileNamePattern>${LOG_HOME}/WMS下发ACS/%d{yyyy-MM-dd}.%i.log</FileNamePattern>
<!--日志文件保留天数-->
<maxHistory>15</maxHistory>
<!--单个日志最大容量 至少10MB才能看得出来-->
<maxFileSize>200MB</maxFileSize>
<!--所有日志最多占多大容量-->
<totalSizeCap>20GB</totalSizeCap>
</rollingPolicy>
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
<!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
</encoder>
</appender>
<!-- <logger name="org.nl.start.Init" level="info" additivity="false">
<appender-ref ref="FILE3"/>
</logger>-->
<!-- 打印sql -->
<logger name="org.nl.acs.ext.wms.service.impl.WmsToAcsServiceImpl" level="info" additivity="false">
<appender-ref ref="FILE9"/>
</logger>
</included>
Loading…
Cancel
Save