提交 1c404144 authored 作者: inroi's avatar inroi

微调

上级 62762d69
package org.jeecg.modules.iost.ims.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.springframework.format.annotation.DateTimeFormat;
import java.util.Date;
/**
* @author Inori
*/
@Data
@TableName("ims_picking_list")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value = "ims_picking_list对象", description = "提料单信息")
public class ImsPickingList {
/**
* 主键
*/
@TableId(type = IdType.ASSIGN_ID)
@ApiModelProperty(value = "主键")
private String id;
/**
* 主键ID
*/
@Excel(name = "主键ID", width = 15)
@ApiModelProperty(value = "主键ID")
private String fid;
/**
* 分析单号
*/
@Excel(name = "分析单号", width = 15)
@ApiModelProperty(value = "分析单号")
private String supMtrlDtAnalNo;
/**
* 发送总数
*/
@Excel(name = "发送总数", width = 15)
@ApiModelProperty(value = "发送总数")
private Integer pushCount;
/**
* 创建人
*/
@ApiModelProperty(value = "创建人")
private String createBy;
/**
* 创建日期
*/
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value = "创建日期")
private Date createTime;
/**
* 更新人
*/
@ApiModelProperty(value = "更新人")
private String updateBy;
/**
* 更新日期
*/
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value = "更新日期")
private Date updateTime;
}
...@@ -46,6 +46,8 @@ public class ImsPickingListKingdeeApi { ...@@ -46,6 +46,8 @@ public class ImsPickingListKingdeeApi {
key.put("F_LQKJ_XqBillno", "F_LQKJ_XqBillno"); key.put("F_LQKJ_XqBillno", "F_LQKJ_XqBillno");
/* 源单物料 */ /* 源单物料 */
key.put("F_LQKJ_XqMaterial", "F_LQKJ_XqMaterial"); key.put("F_LQKJ_XqMaterial", "F_LQKJ_XqMaterial");
/* 发送总数 */
key.put("F_LQKJ_PushCount", "F_LQKJ_PushCount");
} }
public List<Map<String, String>> select(Map<String, String> map) { public List<Map<String, String>> select(Map<String, String> map) {
...@@ -73,6 +75,7 @@ public class ImsPickingListKingdeeApi { ...@@ -73,6 +75,7 @@ public class ImsPickingListKingdeeApi {
map.put("demandDate", objectList.get(8).toString()); map.put("demandDate", objectList.get(8).toString());
map.put("sdlNo", objectList.get(9).toString()); map.put("sdlNo", objectList.get(9).toString());
map.put("sdlMtrl", objectList.get(10).toString()); map.put("sdlMtrl", objectList.get(10).toString());
map.put("pushCount", objectList.get(11).toString());
result.add(map); result.add(map);
} }
} else { } else {
......
package org.jeecg.modules.iost.ims.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.jeecg.modules.iost.ims.entity.ImsPickingList;
/**
* @author Inori
*/
public interface ImsPickingListMapper extends BaseMapper<ImsPickingList> {
}
package org.jeecg.modules.iost.ims.mapper; package org.jeecg.modules.iost.ims.mapper;
import java.util.List;
import org.apache.ibatis.annotations.Param;
import org.jeecg.modules.iost.ims.entity.ImsWmsAllot;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.jeecg.modules.iost.ims.entity.ImsWmsAllot;
/** /**
* @Description: 调拨单信息 * @Description: 调拨单信息
* @Author: jeecg-boot * @Author: jeecg-boot
* @Date: 2021-12-15 * @Date: 2021-12-15
* @Version: V1.0 * @Version: V1.0
*/ */
public interface ImsWmsAllotMapper extends BaseMapper<ImsWmsAllot> { public interface ImsWmsAllotMapper extends BaseMapper<ImsWmsAllot> {
......
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.jeecg.modules.iost.ims.mapper.ImsPickingListMapper">
</mapper>
package org.jeecg.modules.iost.ims.service; package org.jeecg.modules.iost.ims.service;
import com.baomidou.mybatisplus.extension.service.IService;
import org.jeecg.common.system.vo.LoginUser; import org.jeecg.common.system.vo.LoginUser;
import org.jeecg.modules.iost.ims.entity.ImsPickingList;
/** /**
* @author Inori * @author Inori
*/ */
public interface IImsPickingListService { public interface IImsPickingListService extends IService<ImsPickingList> {
Boolean synchronization(Object object, LoginUser sysUser); Boolean synchronization(Object object, LoginUser sysUser);
......
package org.jeecg.modules.iost.ims.service.impl; package org.jeecg.modules.iost.ims.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.jeecg.common.system.vo.LoginUser; import org.jeecg.common.system.vo.LoginUser;
import org.jeecg.common.util.ThreadLocalConfig; import org.jeecg.common.util.ThreadLocalConfig;
import org.jeecg.modules.iost.ims.ExternalInterface.IMSApi; import org.jeecg.modules.iost.ims.ExternalInterface.IMSApi;
import org.jeecg.modules.iost.ims.Util.ImsLogUtil; import org.jeecg.modules.iost.ims.Util.ImsLogUtil;
import org.jeecg.modules.iost.ims.Util.JsonUtil; import org.jeecg.modules.iost.ims.Util.JsonUtil;
import org.jeecg.modules.iost.ims.entity.ImsPickingList;
import org.jeecg.modules.iost.ims.kingdeeapi.ImsPickingListKingdeeApi; import org.jeecg.modules.iost.ims.kingdeeapi.ImsPickingListKingdeeApi;
import org.jeecg.modules.iost.ims.mapper.ImsPickingListMapper;
import org.jeecg.modules.iost.ims.service.IImsPickingListService; import org.jeecg.modules.iost.ims.service.IImsPickingListService;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.ArrayList; import java.util.*;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/** /**
* @author Inori * @author Inori
*/ */
@Service @Service
public class ImsPickingListServiceImpl implements IImsPickingListService { public class ImsPickingListServiceImpl extends ServiceImpl<ImsPickingListMapper, ImsPickingList> implements IImsPickingListService {
@Autowired @Autowired
private IMSApi imsApi; private IMSApi imsApi;
...@@ -43,13 +44,20 @@ public class ImsPickingListServiceImpl implements IImsPickingListService { ...@@ -43,13 +44,20 @@ public class ImsPickingListServiceImpl implements IImsPickingListService {
List<Map<String, String>> list = imsPickingListKingdeeApi.select(whereMap); List<Map<String, String>> list = imsPickingListKingdeeApi.select(whereMap);
Boolean flag; Boolean flag;
List<ImsPickingList> pojoList = new ArrayList<>();
List<Map<String, Object>> imsList = new ArrayList<>(); List<Map<String, Object>> imsList = new ArrayList<>();
List<Map<String, Object>> analNoList = new ArrayList<>();
for (Map<String, String> map : list) { for (Map<String, String> map : list) {
if (map.containsKey("false")) { if (map.containsKey("false")) {
return false; return false;
} }
ImsPickingList imsPickingList = new ImsPickingList();
imsPickingList.setFid(map.get("fid"));
imsPickingList.setSupMtrlDtAnalNo(map.get("supMtrlDtAnalNo"));
imsPickingList.setPushCount(Integer.parseInt(map.get("pushCount")));
imsPickingList.setCreateTime(new Date());
pojoList.add(imsPickingList);
Map<String, Object> imsMap = new HashMap<>(11); Map<String, Object> imsMap = new HashMap<>(11);
imsMap.put("po_code", map.get("poCode")); imsMap.put("po_code", map.get("poCode"));
imsMap.put("mtrl_code", map.get("mtrlCode")); imsMap.put("mtrl_code", map.get("mtrlCode"));
...@@ -66,11 +74,8 @@ public class ImsPickingListServiceImpl implements IImsPickingListService { ...@@ -66,11 +74,8 @@ public class ImsPickingListServiceImpl implements IImsPickingListService {
imsMap.put("sdl_no", map.get("sdlNo")); imsMap.put("sdl_no", map.get("sdlNo"));
imsMap.put("sdl_mtrl", map.get("sdlMtrl")); imsMap.put("sdl_mtrl", map.get("sdlMtrl"));
imsList.add(imsMap); imsList.add(imsMap);
Map<String, Object> noMap = new HashMap<>(1);
noMap.put("sup_mtrl_dt_anal_no", map.get("supMtrlDtAnalNo"));
analNoList.add(noMap);
} }
this.saveBatch(pojoList);
//将数据包装成IMS格式 //将数据包装成IMS格式
Map<String, Object> map = new HashMap<>(3); Map<String, Object> map = new HashMap<>(3);
...@@ -82,16 +87,33 @@ public class ImsPickingListServiceImpl implements IImsPickingListService { ...@@ -82,16 +87,33 @@ public class ImsPickingListServiceImpl implements IImsPickingListService {
//记录IMS日志 //记录IMS日志
flag = new ImsLogUtil().ImsLog(json, result, "提料分析单", "SUP_MTRL_DT_DATA", null); flag = new ImsLogUtil().ImsLog(json, result, "提料分析单", "SUP_MTRL_DT_DATA", null);
Map<String, Object> noMap = new HashMap<>(3); if (anAl(imsList.get(0).get("sup_mtrl_dt_anal_no").toString())) {
map.put("docType", "SUP_MTRL_DT_DATA_ANAL"); System.out.println("+++++++++++++++" + "总数以发送完");
map.put("updateType", "UPDATE"); /*Map<String, Object> noMap = new HashMap<>(3);
map.put("data", analNoList); map.put("docType", "SUP_MTRL_DT_DATA_ANAL");
String noJson = JsonUtil.toString(noMap); map.put("updateType", "UPDATE");
String noResult = imsApi.add(noJson, "提料单计算", "SUP_MTRL_DT_DATA_ANAL"); map.put("data", new ArrayList<Map<String, Object>>().add(new HashMap<String, Object>(1) {{
//记录IMS日志 put("sup_mtrl_dt_anal_no", imsList.get(0).get("sup_mtrl_dt_anal_no"));
new ImsLogUtil().ImsLog(noJson, noResult, "提料单计算", "SUP_MTRL_DT_DATA_ANAL", null); }}));
String noJson = JsonUtil.toString(noMap);
String noResult = imsApi.add(noJson, "提料单计算", "SUP_MTRL_DT_DATA_ANAL");
//记录IMS日志
new ImsLogUtil().ImsLog(noJson, noResult, "提料单计算", "SUP_MTRL_DT_DATA_ANAL", null);*/
} else {
System.out.println("---------------" + "总数未发送完");
}
return flag; return flag;
} }
public boolean anAl(String supMtrlDtAnalNo) {
Integer count = this.getBaseMapper().selectCount(new QueryWrapper<ImsPickingList>().eq("sup_mtrl_dt_anal_no", supMtrlDtAnalNo));
System.out.println("count----------->" + count);
Integer pushCount = this.getBaseMapper().selectOne(new QueryWrapper<ImsPickingList>().eq("sup_mtrl_dt_anal_no", supMtrlDtAnalNo).last("limit 1")).getPushCount();
System.out.println("pushCount----------->" + pushCount);
return pushCount != 0 && pushCount.equals(count);
}
} }
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论