提交
This commit is contained in:
@@ -0,0 +1,50 @@
|
||||
|
||||
package org.nl.wms.ext.acs.rest;
|
||||
|
||||
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.nl.annotation.Log;
|
||||
import org.nl.wms.ext.acs.service.WmsToJnService;
|
||||
import org.springframework.http.HttpStatus;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* @author qinx
|
||||
* @date 2021-07-21
|
||||
**/
|
||||
@RestController
|
||||
@RequiredArgsConstructor
|
||||
@Api(tags = "wms发送acs")
|
||||
@RequestMapping("/api/wmsToJn/task")
|
||||
@Slf4j
|
||||
public class WmsToJnController {
|
||||
|
||||
private final WmsToJnService WmsToJnService;
|
||||
|
||||
@PostMapping("/synchroDaySchedule")
|
||||
@Log("WMS同步jn日计划")
|
||||
@ApiOperation("WMS同步jn日计划")
|
||||
public ResponseEntity<Object> synchroDaySchedule(@RequestBody Map whereJson) {
|
||||
return new ResponseEntity<>(WmsToJnService.synchroDaySchedule(whereJson), HttpStatus.OK);
|
||||
}
|
||||
|
||||
@PostMapping("/synchroMaterial")
|
||||
@Log("WMS同步jn物料")
|
||||
@ApiOperation("WMS同步jn物料")
|
||||
public ResponseEntity<Object> synchroMaterial(@RequestBody Map whereJson) {
|
||||
return new ResponseEntity<>(WmsToJnService.synchroMaterial(whereJson), HttpStatus.OK);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,29 @@
|
||||
package org.nl.wms.ext.acs.service;
|
||||
|
||||
import com.alibaba.fastjson.JSONArray;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
public interface WmsToJnService {
|
||||
/**
|
||||
* WMS同步jn日计划
|
||||
*
|
||||
* @param jsonObject 条件
|
||||
* @return Map<String, Object>
|
||||
*/
|
||||
|
||||
Map<String, Object> synchroDaySchedule(Map whereJson);
|
||||
/**
|
||||
* WMS同步jn物料
|
||||
*
|
||||
* @param jsonObject 条件
|
||||
* @return Map<String, Object>
|
||||
*/
|
||||
|
||||
Map<String, Object> synchroMaterial(Map whereJson);
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,115 @@
|
||||
package org.nl.wms.ext.acs.service.impl;
|
||||
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
import cn.hutool.core.util.IdUtil;
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import cn.hutool.http.HttpRequest;
|
||||
import com.alibaba.fastjson.JSONArray;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.nl.wms.ext.acs.service.WmsToAcsService;
|
||||
import org.nl.wms.ext.acs.service.WmsToJnService;
|
||||
import org.nl.wms.sch.AcsUtil;
|
||||
import org.nl.wql.WQL;
|
||||
import org.nl.wql.core.bean.WQLObject;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.Map;
|
||||
|
||||
@Service
|
||||
@RequiredArgsConstructor
|
||||
@Slf4j
|
||||
public class WmsToJnServiceImpl implements WmsToJnService {
|
||||
private String URL = "192.168.23.32";
|
||||
final static int timeout = 3000;
|
||||
private String today = DateUtil.today();
|
||||
|
||||
@Override
|
||||
public Map<String, Object> synchroDaySchedule(Map whereJson) {
|
||||
//同步日计划
|
||||
JSONObject obj = new JSONObject();
|
||||
obj.put("date", today);
|
||||
String resultMsg = HttpRequest.post(URL)
|
||||
.body(String.valueOf(obj)).timeout(timeout)
|
||||
.execute().body();
|
||||
JSONObject result = JSONObject.parseObject(resultMsg);
|
||||
String code = result.getString("code");
|
||||
if (StrUtil.isNotEmpty(code) && code.equals("200")) {
|
||||
log.info("wms同步嘉耐日计划成功!");
|
||||
} else {
|
||||
log.info("wms同步嘉耐日计划失败!");
|
||||
}
|
||||
WQLObject dayScheduleTable = WQLObject.getWQLObject("pdm_bi_dayschedule");
|
||||
JSONArray dayScheduleArr = result.getJSONArray("data");
|
||||
for (int i = 0; i < dayScheduleArr.size(); i++) {
|
||||
JSONObject dayScheduleObj = dayScheduleArr.getJSONObject(i);
|
||||
JSONObject scheduleObj = dayScheduleTable.query("ext_dayschedule_code='" + dayScheduleObj.getString("ext_dayschedule_code") + "'").uniqueResult(0);
|
||||
if (ObjectUtil.isEmpty(scheduleObj)) {
|
||||
JSONObject jo = new JSONObject();
|
||||
jo.put("dayschedule_id", IdUtil.getSnowflake(1, 1).nextId());
|
||||
jo.put("ext_dayschedule_code", scheduleObj.getString("ext_dayschedule_code"));
|
||||
jo.put("date", today);
|
||||
jo.put("ext_dayschedule_code", scheduleObj.getString("ext_dayschedule_code"));
|
||||
jo.put("ext_device_code", scheduleObj.getString("ext_device_code"));
|
||||
jo.put("device_id", scheduleObj.getString("device_id"));
|
||||
jo.put("device_code", scheduleObj.getString("device_code"));
|
||||
jo.put("material_id", scheduleObj.getString("material_id"));
|
||||
jo.put("material_code", scheduleObj.getString("material_code"));
|
||||
jo.put("material_name", scheduleObj.getString("material_name"));
|
||||
jo.put("material_spec", scheduleObj.getString("material_spec"));
|
||||
jo.put("single_weight", scheduleObj.getString("single_weight"));
|
||||
jo.put("qty", scheduleObj.getString("qty"));
|
||||
jo.put("qty_unit_id", scheduleObj.getString("qty_unit_id"));
|
||||
jo.put("label", scheduleObj.getString("label"));
|
||||
jo.put("is_delete", "1");
|
||||
dayScheduleTable.insert(jo);
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Map<String, Object> synchroMaterial(Map whereJson) {
|
||||
String material_code = (String) whereJson.get("material_code");
|
||||
String material_name = (String) whereJson.get("material_name");
|
||||
String material_spec = (String) whereJson.get("material_spec");
|
||||
String ext_id = (String) whereJson.get("ext_id");
|
||||
WQLObject materialTable = WQLObject.getWQLObject("md_me_material");
|
||||
JSONObject obj = new JSONObject();
|
||||
obj.put("material_code", material_code);
|
||||
obj.put("material_spec", material_spec);
|
||||
String resultMsg = HttpRequest.post(URL)
|
||||
.body(String.valueOf(obj)).timeout(timeout)
|
||||
.execute().body();
|
||||
JSONObject result = JSONObject.parseObject(resultMsg);
|
||||
String code = result.getString("code");
|
||||
if (StrUtil.isNotEmpty(code) && code.equals("200")) {
|
||||
log.info("wms同步嘉耐物料成功!");
|
||||
} else {
|
||||
log.info("wms同步嘉耐物料失败!");
|
||||
}
|
||||
JSONArray materialarr = result.getJSONArray("data");
|
||||
for (int i = 0; i < materialarr.size(); i++) {
|
||||
JSONObject materialjo = materialarr.getJSONObject(i);
|
||||
JSONObject materialObj = new JSONObject();
|
||||
materialObj.put("material_id", IdUtil.getSnowflake(1, 1).nextId());
|
||||
materialObj.put("material_code", materialjo.getString("material_code"));
|
||||
materialObj.put("material_name", materialjo.getString("material_name"));
|
||||
materialObj.put("material_spec", materialjo.getString("material_spec"));
|
||||
materialObj.put("material_model", materialjo.getString("material_name"));
|
||||
materialObj.put("create_id", "1");
|
||||
materialObj.put("create_time", DateUtil.now());
|
||||
materialObj.put("create_name", "qinx");
|
||||
materialObj.put("is_used", "1");
|
||||
materialObj.put("is_manmade", "1");
|
||||
materialObj.put("ext_id", materialjo.getString("ext_id"));
|
||||
materialObj.put("stewing_time", 0);
|
||||
materialTable.insert(materialjo);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -42,36 +42,46 @@
|
||||
##########################################
|
||||
|
||||
IF 输入.flag = "1"
|
||||
PAGEQUERY
|
||||
SELECT
|
||||
view_struct.*
|
||||
FROM
|
||||
(
|
||||
SELECT
|
||||
structrelamaterial.*,
|
||||
struct.struct_code,
|
||||
struct.struct_name,
|
||||
sect.sect_name,
|
||||
stor.stor_name
|
||||
FROM
|
||||
st_ivt_structrelamaterial structrelamaterial
|
||||
LEFT JOIN st_ivt_structattr struct ON structrelamaterial.struct_id = struct.struct_id
|
||||
LEFT JOIN st_ivt_sectattr sect ON struct.sect_id = sect.sect_id
|
||||
LEFT JOIN st_ivt_bsrealstorattr stor ON struct.stor_id = stor.stor_id
|
||||
WHERE
|
||||
structrelamaterial.is_delete = '0'
|
||||
GROUP BY
|
||||
structrelamaterial.struct_id
|
||||
) view_struct
|
||||
where
|
||||
1 = 1
|
||||
OPTION 输入.search <> ""
|
||||
(view_struct.struct_code like 输入.search or
|
||||
view_struct.struct_name like 输入.search)
|
||||
ENDOPTION
|
||||
ENDSELECT
|
||||
ENDPAGEQUERY
|
||||
ENDIF
|
||||
PAGEQUERY
|
||||
SELECT
|
||||
view_struct.*
|
||||
FROM
|
||||
(
|
||||
SELECT
|
||||
any_value ( structrelamaterial.relation_id ) AS relation_id,
|
||||
any_value ( structrelamaterial.struct_id ) AS struct_id,
|
||||
any_value ( structrelamaterial.material_id ) AS material_id,
|
||||
any_value ( structrelamaterial.create_id ) AS create_id,
|
||||
any_value ( structrelamaterial.create_name ) AS create_name,
|
||||
any_value ( structrelamaterial.create_time ) AS create_time,
|
||||
any_value ( structrelamaterial.update_optid ) AS update_optid,
|
||||
any_value ( structrelamaterial.update_optname ) AS update_optname,
|
||||
any_value ( structrelamaterial.update_time ) AS update_time,
|
||||
any_value ( structrelamaterial.is_delete ) AS is_delete,
|
||||
any_value ( struct.struct_code ) AS struct_code,
|
||||
any_value ( struct.struct_name ) AS struct_name,
|
||||
any_value ( sect.sect_name ) AS sect_name,
|
||||
any_value ( stor.stor_name ) AS stor_name
|
||||
FROM
|
||||
st_ivt_structrelamaterial structrelamaterial
|
||||
LEFT JOIN st_ivt_structattr struct ON structrelamaterial.struct_id = struct.struct_id
|
||||
LEFT JOIN st_ivt_sectattr sect ON struct.sect_id = sect.sect_id
|
||||
LEFT JOIN st_ivt_bsrealstorattr stor ON struct.stor_id = stor.stor_id
|
||||
WHERE
|
||||
structrelamaterial.is_delete = '0'
|
||||
GROUP BY
|
||||
structrelamaterial.struct_id
|
||||
) view_struct
|
||||
WHERE
|
||||
1 = 1
|
||||
OPTION 输入.search <> ""
|
||||
(view_struct.struct_code like 输入.search or
|
||||
view_struct.struct_name like 输入.search)
|
||||
ENDOPTION
|
||||
ENDSELECT
|
||||
ENDPAGEQUERY
|
||||
ENDIF
|
||||
|
||||
|
||||
IF 输入.flag = "2"
|
||||
PAGEQUERY
|
||||
|
||||
@@ -52,33 +52,34 @@
|
||||
ENDPAGEQUERY
|
||||
ENDIF
|
||||
|
||||
IF 输入.flag = "2"
|
||||
PAGEQUERY
|
||||
IF 输入.flag = "2"
|
||||
PAGEQUERY
|
||||
SELECT
|
||||
*
|
||||
*
|
||||
FROM
|
||||
(
|
||||
SELECT
|
||||
vehicleType.struct_id,
|
||||
vehicleType.create_id,
|
||||
vehicleType.create_name,
|
||||
vehicleType.create_time,
|
||||
vehicleType.update_optname,
|
||||
vehicleType.update_time,
|
||||
GROUP_CONCAT(vehicleType.vehicle_type) as vehicle_type,
|
||||
struct.struct_name,
|
||||
struct.struct_code
|
||||
FROM
|
||||
ST_IVT_StructRelaVehicleType vehicleType
|
||||
LEFT JOIN st_ivt_structattr struct ON vehicleType.struct_id = struct.struct_id
|
||||
GROUP BY vehicleType.struct_id) AS view_vehicleType
|
||||
(
|
||||
SELECT
|
||||
any_value ( vehicleType.struct_id ) AS struct_id,
|
||||
any_value ( vehicleType.create_id ) AS create_id,
|
||||
any_value ( vehicleType.create_name ) AS create_name,
|
||||
any_value ( vehicleType.create_time ) AS create_time,
|
||||
any_value ( vehicleType.update_optname ) AS update_optname,
|
||||
any_value ( struct.struct_code ) AS struct_code,
|
||||
any_value ( vehicleType.update_time ) AS update_time,
|
||||
any_value ( struct.struct_name ) AS struct_name,
|
||||
any_value ( GROUP_CONCAT( vehicleType.vehicle_type ) ) AS vehicle_type
|
||||
FROM
|
||||
ST_IVT_StructRelaVehicleType vehicleType
|
||||
LEFT JOIN st_ivt_structattr struct ON vehicleType.struct_id = struct.struct_id
|
||||
GROUP BY
|
||||
vehicleType.struct_id
|
||||
) AS view_vehicleType
|
||||
WHERE
|
||||
1 = 1
|
||||
OPTION 输入.search <> ""
|
||||
(view_vehicleType.struct_code like 输入.search or
|
||||
view_vehicleType.struct_name like 输入.search)
|
||||
ENDOPTION
|
||||
ENDSELECT
|
||||
ENDPAGEQUERY
|
||||
ENDIF
|
||||
|
||||
1 = 1
|
||||
OPTION 输入.search <> ""
|
||||
(view_vehicleType.struct_code like 输入.search or
|
||||
view_vehicleType.struct_name like 输入.search)
|
||||
ENDOPTION
|
||||
ENDSELECT
|
||||
ENDPAGEQUERY
|
||||
ENDIF
|
||||
|
||||
Binary file not shown.
Reference in New Issue
Block a user