no message

main
HUOJIN\92525 2024-04-28 16:27:16 +08:00
parent 93878a2ee0
commit 15317f5e1e
17 changed files with 145 additions and 95 deletions

View File

@ -34,6 +34,7 @@ public interface LogService {
/** /**
* *
*
* @param criteria * @param criteria
* @param pageable * @param pageable
* @return / * @return /
@ -42,6 +43,7 @@ public interface LogService {
/** /**
* *
*
* @param criteria * @param criteria
* @return / * @return /
*/ */
@ -49,6 +51,7 @@ public interface LogService {
/** /**
* *
*
* @param criteria * @param criteria
* @param pageable * @param pageable
* @return - * @return -
@ -57,6 +60,7 @@ public interface LogService {
/** /**
* *
*
* @param username * @param username
* @param browser * @param browser
* @param ip IP * @param ip IP
@ -68,8 +72,13 @@ public interface LogService {
@Async @Async
void saveLog(Log log); void saveLog(Log log);
@Async
void saveLogInfo(Object object, String url, String resultJson, String description, long time);
/** /**
* *
*
* @param id ID * @param id ID
* @return Object * @return Object
*/ */
@ -77,6 +86,7 @@ public interface LogService {
/** /**
* *
*
* @param logs * @param logs
* @param response / * @param response /
* @throws IOException / * @throws IOException /

View File

@ -19,6 +19,7 @@ import cn.hutool.core.lang.Dict;
import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.ObjectUtil;
import cn.hutool.json.JSONObject; import cn.hutool.json.JSONObject;
import cn.hutool.json.JSONUtil; import cn.hutool.json.JSONUtil;
import com.alibaba.fastjson.JSON;
import com.youchain.domain.Log; import com.youchain.domain.Log;
import com.youchain.repository.LogRepository; import com.youchain.repository.LogRepository;
import com.youchain.service.LogService; import com.youchain.service.LogService;
@ -43,6 +44,7 @@ import javax.servlet.http.HttpServletResponse;
import java.io.IOException; import java.io.IOException;
import java.lang.reflect.Method; import java.lang.reflect.Method;
import java.lang.reflect.Parameter; import java.lang.reflect.Parameter;
import java.sql.Timestamp;
import java.util.*; import java.util.*;
/** /**
@ -120,6 +122,25 @@ public class LogServiceImpl implements LogService {
logRepository.save(log_data); logRepository.save(log_data);
} }
@Override
@Transactional(rollbackFor = Exception.class)
public void saveLogInfo(Object object,String url, String resultJson, String description, long time) {
// 设置日志信息
Log log_data = new Log();
log_data.setDescription(description);
log_data.setLogType("INFO");
log_data.setMethod(url);
log_data.setParams(JSON.toJSONString(object));
log_data.setReturnData(resultJson);
log_data.setRequestIp("127.0.0.1");
log_data.setTime(time);
log_data.setUsername("admin");
log_data.setAddress("内网IP");
log_data.setBrowser("Chrome 123");
log_data.setCreateTime(new Timestamp(new Date().getTime()));
logRepository.save(log_data);
}
/** /**
* *
*/ */

View File

@ -9,7 +9,7 @@ import org.springframework.stereotype.Component;
@Generated( @Generated(
value = "org.mapstruct.ap.MappingProcessor", value = "org.mapstruct.ap.MappingProcessor",
date = "2024-04-24T17:39:34+0800", date = "2024-04-28T13:35:56+0800",
comments = "version: 1.4.2.Final, compiler: javac, environment: Java 1.8.0_202 (Oracle Corporation)" comments = "version: 1.4.2.Final, compiler: javac, environment: Java 1.8.0_202 (Oracle Corporation)"
) )
@Component @Component

View File

@ -9,7 +9,7 @@ import org.springframework.stereotype.Component;
@Generated( @Generated(
value = "org.mapstruct.ap.MappingProcessor", value = "org.mapstruct.ap.MappingProcessor",
date = "2024-04-24T17:39:34+0800", date = "2024-04-28T13:35:56+0800",
comments = "version: 1.4.2.Final, compiler: javac, environment: Java 1.8.0_202 (Oracle Corporation)" comments = "version: 1.4.2.Final, compiler: javac, environment: Java 1.8.0_202 (Oracle Corporation)"
) )
@Component @Component

View File

@ -17,13 +17,6 @@ public class MoInfo {
@Schema(example = "WQ") @Schema(example = "WQ")
String sourceSystem; String sourceSystem;
@ApiModelProperty(value = "当前页码")
@Schema(example = "1")
int pageNo;
@ApiModelProperty(value = "每页记录数")
@Schema(example = "100")
int pageSize;
@ApiModelProperty(value = "参数") @ApiModelProperty(value = "参数")
MoParams params; MoParams params;

View File

@ -24,6 +24,17 @@ public class MoParams {
@Schema(example = "2023-07-03 23:59:59") @Schema(example = "2023-07-03 23:59:59")
String endTime; String endTime;
@ApiModelProperty(value = "检验结果")
String iqcResult;
@ApiModelProperty(value = "当前页码")
@Schema(example = "1")
int pageNo;
@ApiModelProperty(value = "每页记录数")
@Schema(example = "100")
int pageSize;
public MoParams() { public MoParams() {
} }

View File

@ -112,32 +112,29 @@ public class KMReSController {
/** /**
* MO * MO
* *
* @param orderNumber * @param billCode
*/ */
public void returnMo(String orderNumber) { public void returnMo(String billCode) {
OrderDto orderDto = orderService.findByBarcodeNumber(orderNumber); OrderDto orderDto = orderService.findByBarcodeNumber(billCode);
if (orderDto == null) { if (orderDto == null) {
throw new RuntimeException("系统无此送货单号: " + orderNumber); throw new RuntimeException("系统无此送货单号: " + billCode);
} }
double receivedQty = agvTaskService.queryOrderNumberSum(orderNumber); double receivedQty = agvTaskService.queryBillCodeSum(billCode);
if (receivedQty == orderDto.getReceivedQty()) { if (receivedQty == orderDto.getDeliveryQty()) {
List<Task> tasks = taskService.findByOrderNumber(orderNumber); List<Task> tasks = taskService.findByBillCode(billCode);
ReturnMoInfo returnMoInfo = getReturnMoInfo(tasks); ReturnMoInfo returnMoInfo = getReturnMoInfo(tasks);
long startTime = System.currentTimeMillis(); long startTime = System.currentTimeMillis();
//调用接口 //调用接口
String resultJson = mlsService.returnMo(returnMoInfo); String resultJson = mlsService.returnMo(returnMoInfo);
long endTime = System.currentTimeMillis(); long endTime = System.currentTimeMillis();
long time = endTime - startTime; long time = endTime - startTime;
JSONObject resulObject = JSON.parseObject(resultJson);
if (resulObject == null) {
throw new RuntimeException("按MO票入库接口返回数据为空!");
}
// 保存日志 // 保存日志
saveLogInfo(returnMoInfo, resultJson, "按MO票入库", time); logService.saveLogInfo(returnMoInfo,UrlApi.publicApi, resultJson, "按MO票入库", time);
} }
} }
@ -153,35 +150,16 @@ public class KMReSController {
String resultJson = mlsService.returnIssue(returnIssueInfo); String resultJson = mlsService.returnIssue(returnIssueInfo);
long endTime = System.currentTimeMillis(); long endTime = System.currentTimeMillis();
long time = endTime - startTime; long time = endTime - startTime;
JSONObject resulObject = JSON.parseObject(resultJson);
if (resulObject == null) {
throw new RuntimeException("叫料结果回传接口返回数据为空!");
}
// 保存日志 // 保存日志
saveLogInfo(returnIssueInfo, resultJson, "叫料结果回传", time); logService.saveLogInfo(returnIssueInfo,UrlApi.publicApi, resultJson, "叫料结果回传", time);
} }
public void saveLogInfo(Object object, String resultJson, String description, long time) {
// 设置日志信息
com.youchain.domain.Log newlogs = new com.youchain.domain.Log();
newlogs.setDescription(description);
newlogs.setLogType("INFO");
newlogs.setMethod(UrlApi.publicApi);
newlogs.setParams(JSON.toJSONString(object));
newlogs.setReturnData(resultJson);
newlogs.setRequestIp("127.0.0.1");
newlogs.setTime(time);
newlogs.setUsername("admin");
newlogs.setAddress("内网IP");
newlogs.setBrowser("Chrome 123");
newlogs.setCreateTime(new Timestamp(new Date().getTime()));
logService.saveLog(newlogs);
}
public static ReturnMoInfo getReturnMoInfo(List<Task> tasks) { public static ReturnMoInfo getReturnMoInfo(List<Task> tasks) {
ReturnMoParams params = new ReturnMoParams(); ReturnMoParams params = new ReturnMoParams();
params.setOrgId(100059); params.setOrgId(808);
params.setInvCode("MA2111"); params.setInvCode("MA2111");
Set<String> labelNos = new HashSet<>(); Set<String> labelNos = new HashSet<>();
for (Task task : tasks) { for (Task task : tasks) {

View File

@ -153,7 +153,7 @@ public interface AgvTaskService {
List<AgvTask> findById(List<Integer> ids); List<AgvTask> findById(List<Integer> ids);
double queryOrderNumberSum(String orderNumber); double queryBillCodeSum(String billCode);
/** /**
*+AGV *+AGV

View File

@ -130,10 +130,10 @@ public interface TaskService {
List<Task> findByLabelNo(String labelNo); List<Task> findByLabelNo(String labelNo);
/** /**
* *
* @param orderNumber * @param billCode
* @return List<Task> * @return List<Task>
*/ */
List<Task> findByOrderNumber(String orderNumber); List<Task> findByBillCode(String billCode);
} }

View File

@ -535,10 +535,10 @@ public class AgvTaskServiceImpl implements AgvTaskService {
@Override @Override
public double queryOrderNumberSum(String orderNumber) { public double queryBillCodeSum(String billCode) {
String hql = "select sum(task.moveQty) from Task task where task.billCode= :orderNumber"; String hql = "select sum(task.moveQty) from Task task where task.billCode= :billCode";
Query query = entityMapper.createQuery(hql); Query query = entityMapper.createQuery(hql);
query.setParameter("orderNumber", orderNumber); query.setParameter("billCode", billCode);
List<Double> orderNumberSumList = query.getResultList(); List<Double> orderNumberSumList = query.getResultList();
if (orderNumberSumList.size() > 0) { if (orderNumberSumList.size() > 0) {
return orderNumberSumList.get(0); return orderNumberSumList.get(0);

View File

@ -41,6 +41,7 @@ public class MlsServiceImpl implements MlsService {
private final AgvTaskService agvTaskService; private final AgvTaskService agvTaskService;
private final PickDetailService pickDetailService; private final PickDetailService pickDetailService;
private final InventoryService inventoryService; private final InventoryService inventoryService;
private final RedisUtils redisUtils;
/** /**
@ -209,7 +210,9 @@ public class MlsServiceImpl implements MlsService {
* @param detail * @param detail
*/ */
private Order updateOrder(Order order, JSONObject detail) { private Order updateOrder(Order order, JSONObject detail) {
order.setReceivedQty(detail.getDouble("receivedQty") == null ? 0 : detail.getDouble("receivedQty"));
order.setDeliveryStatus(detail.getString("deliveryStatus")); order.setDeliveryStatus(detail.getString("deliveryStatus"));
order.setMlsUpdateTime(detail.getString("updateTime") == null ? null : DateUtil.parse(detail.getString("updateTime")).toTimestamp());
return order; return order;
} }
@ -280,19 +283,30 @@ public class MlsServiceImpl implements MlsService {
//获取已存在的MO票 //获取已存在的MO票
Map<String, Mo> existingMos = moService.findBylabelNos(labelNos); Map<String, Mo> existingMos = moService.findBylabelNos(labelNos);
Dept dept = null;
boolean flag = redisUtils.hasKey("dept");
if (flag) {
dept = (Dept) redisUtils.get("dept");
} else {
DeptDto deptDto = deptService.findById(7L);
dept = deptService.toEntity(deptDto);
redisUtils.set("dept", dept, 0);
}
//循环处理每个MO票 //循环处理每个MO票
for (int i = 0; i < details.size(); i++) { for (int i = 0; i < details.size(); i++) {
JSONObject detail = details.getJSONObject(i); JSONObject detail = details.getJSONObject(i);
String labelState = detail.getString("labelState");//标签状态 String labelState = detail.getString("labelState");//标签状态
if ("PRINTED".equals(labelState)) {
//物料编码 //物料编码
String itemCode = detail.getString("itemCode"); String itemCode = detail.getString("itemCode").trim();
Item item = null; Item item = null;
if (existingItems.containsKey(itemCode)) { if (existingItems.containsKey(itemCode)) {
item = existingItems.get(itemCode); item = existingItems.get(itemCode);
} else { } else {
//新增物料 //新增物料
item = createItem(detail); item = createItem(detail, dept);
existingItems.put(itemCode, item);
} }
//MO票 //MO票
@ -307,7 +321,6 @@ public class MlsServiceImpl implements MlsService {
mosToCreate.add(createMo(detail, item)); mosToCreate.add(createMo(detail, item));
} }
} }
}
//批量新增Mo票 //批量新增Mo票
@ -326,7 +339,7 @@ public class MlsServiceImpl implements MlsService {
* @param detail * @param detail
* @return * @return
*/ */
private Item createItem(JSONObject detail) { private Item createItem(JSONObject detail, Dept dept) {
String itemCode = detail.getString("itemCode");//物料编码 String itemCode = detail.getString("itemCode");//物料编码
String itemDesc = detail.getString("itemDesc");//物料描述 String itemDesc = detail.getString("itemDesc");//物料描述
@ -334,8 +347,9 @@ public class MlsServiceImpl implements MlsService {
String sourceSystem = detail.getString("sourceSystem");//来源系统 String sourceSystem = detail.getString("sourceSystem");//来源系统
Long itemId = detail.getLong("itemId");//物料id Long itemId = detail.getLong("itemId");//物料id
//创建 //创建
Item Item = new Item(itemCode, itemDesc, uom, UserUtils.getDept(), sourceSystem, itemId); Item Item = new Item(itemCode, itemDesc, uom, dept, sourceSystem, itemId);
itemService.create(Item); itemService.create(Item);
return Item; return Item;
} }
@ -381,8 +395,7 @@ public class MlsServiceImpl implements MlsService {
} }
private Mo updateMo(Mo mo, JSONObject detail) { private Mo updateMo(Mo mo, JSONObject detail) {
mo.setCheckResult(detail.getString("checkResult")); mo.setLabelState(detail.getString("labelState"));
mo.setDeleteFlag(Boolean.parseBoolean(detail.getString("deleteFlag")));
mo.setMlsUpdateTime(detail.getString("updateTime") == null ? null : DateUtil.parse(detail.getString("updateTime")).toTimestamp()); mo.setMlsUpdateTime(detail.getString("updateTime") == null ? null : DateUtil.parse(detail.getString("updateTime")).toTimestamp());
mo.setUpdateUserCode(detail.getString("updateUserCode")); mo.setUpdateUserCode(detail.getString("updateUserCode"));
return mo; return mo;

View File

@ -267,10 +267,10 @@ public class TaskServiceImpl implements TaskService {
} }
@Override @Override
public List<Task> findByOrderNumber(String orderNumber) { public List<Task> findByBillCode(String billCode) {
String hql = "from Task t where t.itemKey.orderNumber = :orderNumber"; String hql = "from Task t where t.billCode = :billCode";
Query query = entityMapper.createQuery(hql); Query query = entityMapper.createQuery(hql);
query.setParameter("orderNumber", orderNumber); // 工单号 query.setParameter("billCode", billCode); // 工单号
List<Task> tasks = query.getResultList(); List<Task> tasks = query.getResultList();
return tasks; return tasks;
} }

View File

@ -4,6 +4,8 @@ import com.youchain.businessdata.inputJson.MoInfo;
import com.youchain.businessdata.inputJson.MoParams; import com.youchain.businessdata.inputJson.MoParams;
import com.youchain.businessdata.rest.MlsController; import com.youchain.businessdata.rest.MlsController;
import com.youchain.businessdata.service.MlsService; import com.youchain.businessdata.service.MlsService;
import com.youchain.service.LogService;
import com.youchain.utils.UrlApi;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
@ -22,10 +24,17 @@ public class moTask {
@Autowired @Autowired
public MlsService mlsService; public MlsService mlsService;
@Autowired
public LogService logService;
public void moTask() { public void moTask() {
long startTime = System.currentTimeMillis();
MoInfo moInfo = getMoInfo(); MoInfo moInfo = getMoInfo();
String moJson = mlsService.getMoJson(moInfo); String resultJson = mlsService.getMoJson(moInfo);
mlsService.getMoInfo(moJson); mlsService.getMoInfo(resultJson);
long time = System.currentTimeMillis() - startTime;
// 保存日志
logService.saveLogInfo(moInfo, UrlApi.publicApi, resultJson, "获取MO票信息", time);
} }
public MoInfo getMoInfo() { public MoInfo getMoInfo() {
@ -36,12 +45,16 @@ public class moTask {
invCodes.add("MA2111"); invCodes.add("MA2111");
params.setInvCodes(invCodes); params.setInvCodes(invCodes);
//DateUtil.format(DateUtil.beginOfDay(new Date()), "yyyy-MM-dd HH:mm:ss") //DateUtil.format(DateUtil.beginOfDay(new Date()), "yyyy-MM-dd HH:mm:ss")
params.setStartTime("2024-04-11 00:00:00"); params.setIqcResult("");
params.setEndTime("2024-04-11 23:59:59"); params.setStartTime("2024-04-28 00:00:00");
params.setEndTime("2024-04-28 23:59:59");
params.setPageNo(1);
params.setPageSize(100);
MoInfo moInfo = new MoInfo(); MoInfo moInfo = new MoInfo();
moInfo.setIfaceCode("MLS-WQ-003"); moInfo.setIfaceCode("MLS-WQ-003");
moInfo.setSourceSystem("WQ"); moInfo.setSourceSystem("WQ");
moInfo.setParams(params); moInfo.setParams(params);
return moInfo; return moInfo;
} }
} }

View File

@ -9,6 +9,8 @@ import com.youchain.businessdata.inputJson.ReturnIssueInfo;
import com.youchain.businessdata.inputJson.ReturnIssueInfoParams; import com.youchain.businessdata.inputJson.ReturnIssueInfoParams;
import com.youchain.businessdata.rest.MlsController; import com.youchain.businessdata.rest.MlsController;
import com.youchain.businessdata.service.MlsService; import com.youchain.businessdata.service.MlsService;
import com.youchain.service.LogService;
import com.youchain.utils.UrlApi;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.ResponseEntity; import org.springframework.http.ResponseEntity;
@ -34,11 +36,18 @@ public class orderTask {
@Autowired @Autowired
public MlsService mlsService; public MlsService mlsService;
@Autowired
public LogService logService;
public void orderTask() { public void orderTask() {
long startTime = System.currentTimeMillis();
OrderInfo orderInfo = getOrderInfo(); OrderInfo orderInfo = getOrderInfo();
String orderJson = mlsService.getOrderJson(orderInfo); String resultJson = mlsService.getOrderJson(orderInfo);
mlsService.getOrderInfo(orderJson); mlsService.getOrderInfo(resultJson);
long time = System.currentTimeMillis() - startTime;
// 保存日志
logService.saveLogInfo(orderInfo, UrlApi.publicApi, resultJson, "获取送货单信息", time);
} }
@ -51,8 +60,8 @@ public class orderTask {
params.setInvCodes(invCodes); params.setInvCodes(invCodes);
params.setIqcResult(""); params.setIqcResult("");
//DateUtil.format(DateUtil.beginOfDay(new Date()), "yyyy-MM-dd HH:mm:ss") //DateUtil.format(DateUtil.beginOfDay(new Date()), "yyyy-MM-dd HH:mm:ss")
params.setStartTime("2024-04-10 00:00:00"); params.setStartTime("2024-04-27 00:00:00");
params.setEndTime("2024-04-10 23:59:59"); params.setEndTime("2024-04-27 23:59:59");
params.setPageNo(1); params.setPageNo(1);
params.setPageSize(100); params.setPageSize(100);
OrderInfo orderInfo = new OrderInfo(); OrderInfo orderInfo = new OrderInfo();

View File

@ -38,7 +38,9 @@ public class UrlApi {
/** /**
* MLS * MLS
* https://apiuat.midea.com/mls/mlsapi/public/publicApi
* https://apisit.midea.com/mls/mlsapi/public/publicApi
*/ */
public static String publicApi="https://apiuat.midea.com/mls/mlsapi/public/publicApi"; public static String publicApi="https://apisit.midea.com/mls/mlsapi/public/publicApi";
} }