wms新的收货优化2和生产领料bug

master
mengjiao 7 months ago
parent 2107dd5da5
commit af915c1845

@ -272,6 +272,9 @@ public class WmsToWCSmissionController {
@PostMapping("/SweepMaterialCardSC")
public AjaxResult SweepMaterialCardSC(@RequestBody WmsOdsMateStorageNewsSn wmsOdsMateStorageNewsSn) {
WmsOdsMateStorageNewsSn wmsOdsMateStorageNewsSn1 = odsProcureOrderService.SweepMaterialCardSC(wmsOdsMateStorageNewsSn);
if(wmsOdsMateStorageNewsSn1==null){
return success("库存没有这个标识卡");
}
if (wmsOdsMateStorageNewsSn1.getUserDefined3().equals("0")){//userDefined3
return error("未105过账");
}
@ -964,4 +967,16 @@ public class WmsToWCSmissionController {
String result = odsProcureOrderService.addOrderCardXNew(order);
return success(result);
}
/**
* ------User_Defined9
* --
*
* @param order
* @return
*/
@PostMapping("upbatCardXNew")
public AjaxResult upbatCardXNew(@RequestBody OdsProcureOrder order) {
String result = odsProcureOrderService.upbatCardXNew(order);
return success(result);
}
}

@ -204,6 +204,16 @@ public class OdsProcureOrder extends BaseEntity {
*/
@Excel(name = "计划数量")
private BigDecimal planNumber;
//操作数量
private BigDecimal temNumber;
public BigDecimal getTemNumber() {
return temNumber;
}
public void setTemNumber(BigDecimal temNumber) {
this.temNumber = temNumber;
}
private BigDecimal buNumber;
@ -392,7 +402,6 @@ public class OdsProcureOrder extends BaseEntity {
private String SapTempStatus;
private String SAPstatus;
private String SAPmessage;
public String getSapTempInfor() {
return SapTempInfor;
}

@ -4,6 +4,7 @@ import java.util.List;
import com.op.wms.domain.BaseArea;
import com.op.wms.domain.BaseWarehouse;
import org.apache.ibatis.annotations.Param;
/**
* Mapper
@ -67,4 +68,6 @@ public interface BaseAreaMapper {
public String checkAreaDescUnique(BaseArea baseArea);
BaseWarehouse selectBaseWarehouse(BaseArea baseArea);
String selectBaseAreaListnew(@Param("baseArea")String baseArea);
}

@ -58,4 +58,6 @@ public interface BaseProductAttachedMapper {
* @return
*/
public int deleteBaseProductAttachedByIds(String[] ids);
String selectBaseAreaListnew(String waCode1);
}

@ -119,4 +119,6 @@ public interface OdsProcureOrderMapper {
public List<OdsProcureOrder> selectCardListSH(OdsProcureOrder odsProcureOrder);
OdsProcureOrder selectOdsProcureOrderCardByUserDefined1new(OdsProcureOrder order);
public void updateodsProcureOrderCardTemNumber(OdsProcureOrder order);
}

@ -151,4 +151,6 @@ public interface IOdsProcureOrderService {
List<OdsProcureOrder> selectCardList(OdsProcureOrder odsProcureOrder);
String addOrderCardXNew(OdsProcureOrder orderList);
String upbatCardXNew(OdsProcureOrder order);
}

@ -1134,20 +1134,22 @@ public class OdsProcureOrderServiceImpl implements IOdsProcureOrderService {
//没有配置附属信息
return "没有配置附属信息";
}
if ("".equals(baseProductAttacheds.get(0).getWaCode())){
String waCode1 = baseProductAttacheds.get(0).getWaCode();
if (waCode1==null|| waCode1.isEmpty()){
//没有配置附属信息
return "没有配置库区";
}
BaseArea baseArea=new BaseArea();
baseArea.setAreaCode(baseProductAttacheds.get(0).getWaCode());
List<BaseArea> baseAreas= baseAreaMapper.selectBaseAreaList(baseArea);
// BaseArea baseArea=new BaseArea();
// baseArea.setAreaCode(baseProductAttacheds.get(0).getWaCode());
//根据库区查询仓库
if (baseAreas.size()==0){
String whCode= baseProductAttachedMapper.selectBaseAreaListnew(waCode1);
if (whCode==null){
//没有配置附属信息
return "库区配置错误,查询不到对应仓库";
}
String whCode = baseAreas.get(0).getWhCode();//仓库
// String whCode = baseAreas.get(0).getWhCode();//仓库
String waCode = baseProductAttacheds.get(0).getWaCode();//库区
String name = odsProcureOrderMapper.selectBaseSupplier(order);
order.setSupplierName(name);
@ -1170,6 +1172,7 @@ public class OdsProcureOrderServiceImpl implements IOdsProcureOrderService {
pw.setMaterialCode(order.getMaterialCode());
pw.setMaterialDesc(order.getMaterialDesc());
pw.setPlanNumber(pn);
pw.setTemNumber(pn);
pw.setSupplierCode(order.getSupplierCode());
pw.setSupplierName(order.getSupplierName());
pw.setUserDefined8(order.getUserDefined8());
@ -1180,8 +1183,10 @@ public class OdsProcureOrderServiceImpl implements IOdsProcureOrderService {
pw.setUnit(order.getUnit());
if(pall.compareTo(pn)<0) {//最后一托盘
pw.setPlanNumber(pall);
pw.setTemNumber(pall);
}else{
pw.setPlanNumber(pn);
pw.setTemNumber(pn);
}
pw.setCardNum(String.valueOf(i++));
String dateString = pw.getUserDefined11().replace("-", "");
@ -1190,6 +1195,7 @@ public class OdsProcureOrderServiceImpl implements IOdsProcureOrderService {
pw.setActive("1");
pw.setUserDefined5(whCode);
pw.setUserDefined6(waCode);
pw.setRealityNumber(new BigDecimal("0"));
dtos.add(pw);
pall = pall.subtract(pn);
}
@ -1225,6 +1231,7 @@ public class OdsProcureOrderServiceImpl implements IOdsProcureOrderService {
pw.setMaterialCode(order.getMaterialCode());
pw.setMaterialDesc(order.getMaterialDesc());
pw.setPlanNumber(pn);
pw.setTemNumber(pn);
pw.setSupplierCode(order.getSupplierCode());
pw.setSupplierName(order.getSupplierName());
pw.setUserDefined8(order.getUserDefined8());
@ -1235,8 +1242,10 @@ public class OdsProcureOrderServiceImpl implements IOdsProcureOrderService {
pw.setUnit(order.getUnit());
if(pall.compareTo(pn)<0) {//最后一托盘
pw.setPlanNumber(pall);
pw.setTemNumber(pall);
}else{
pw.setPlanNumber(pn);
pw.setTemNumber(pn);
}
pw.setCardNum(String.valueOf(i++));
String dateString = pw.getUserDefined11().replace("-", "");
@ -1245,6 +1254,7 @@ public class OdsProcureOrderServiceImpl implements IOdsProcureOrderService {
pw.setActive("1");
pw.setUserDefined5(whCode);
pw.setUserDefined6(waCode);
pw.setRealityNumber(new BigDecimal("0"));
dtos.add(pw);
pall = pall.subtract(pn);
}
@ -1304,7 +1314,7 @@ public class OdsProcureOrderServiceImpl implements IOdsProcureOrderService {
// 格式化当前时间为指定的字符串格式
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyyMMddHHmmss"); // 定义时间格式
String dnNo = "sn" + now.format(formatter); // 生成流水号
String receiptNoCode = orderList.get(0).getReceiptNoCode();
String receiptNoCode = dnNo;
//如果这样的话,就区分出来单子和对应的物料。然后根据集合放入暂收集合中
List<OdsProcureOrder> orderList1=new ArrayList<>();//
@ -1316,6 +1326,7 @@ public class OdsProcureOrderServiceImpl implements IOdsProcureOrderService {
order.setPoLine(order1.getUserDefined3());
order.setUnit(order1.getUnit());
order.setID(order1.getID());
// order1.setReceiptNoCode(dnNo);
order.setReceiptNoCode(dnNo);
if (orderList1.size()>0){
String tem="0";
@ -1398,7 +1409,7 @@ public class OdsProcureOrderServiceImpl implements IOdsProcureOrderService {
wmsRawOrderInSnMapper.insertWmsLogotypeTable(wmsLogotypeTable);
}
odsProcureOrderMapper.updateodsProcureOrderCard(order1k);
odsProcureOrderMapper.updateodsProcureOrderCard(order1k);//更新标识卡。状态为1
}
Map map = new HashMap();
map = (Map) result2.getData();
@ -1426,9 +1437,9 @@ public class OdsProcureOrderServiceImpl implements IOdsProcureOrderService {
wmsRawOrderIn.setRawOrderInId(IdUtils.fastSimpleUUID());
wmsRawOrderIn.setFactoryCode(odsProcureOrder.getFactoryCode());
wmsRawOrderIn.setOrderNo(order1.getUserDefined5());//送货单
wmsRawOrderIn.setDnNo(receiptNoCode);
wmsRawOrderIn.setDnNo(receiptNoCode);//有问提
wmsRawOrderIn.setPoNo(odsProcureOrder.getProcureCode());
wmsRawOrderIn.setPoLine(odsProcureOrder.getPoLine());
wmsRawOrderIn.setPoLine(odsProcureOrder.getUserDefined3());//有问题
wmsRawOrderIn.setMaterialCode(odsProcureOrder.getMaterialCode());
wmsRawOrderIn.setMaterialDesc(odsProcureOrder.getMaterialDesc());
wmsRawOrderIn.setRequestAmount(odsProcureOrder.getCzNumber());
@ -1520,6 +1531,14 @@ public class OdsProcureOrderServiceImpl implements IOdsProcureOrderService {
return result1;
}
@Override
public String upbatCardXNew(OdsProcureOrder order) {
String result="修改成功";
DynamicDataSourceContextHolder.push("ds_" + order.getFactoryCode());
odsProcureOrderMapper.updateodsProcureOrderCardTemNumber(order);//更新标识卡。状态为1
return result;
}
@Override
@DS("#header.poolName")
public String getIdCardListDA(OdsProcureOrder odsProcureOrder) {
@ -2959,67 +2978,67 @@ public class OdsProcureOrderServiceImpl implements IOdsProcureOrderService {
*/
@Override
public String handleUpdateSAP105(List<OdsProcureOrder> odsProcureOrders) {
String result="操作成功";
for (OdsProcureOrder order: odsProcureOrders){
OdsProcureOrder odsProcureOrder = order;
WmsRawOrderIn wmsRawOrderIn= wmsRawOrderInMapper.selectWmsRawOrderInByRawOrderInIdTWO(odsProcureOrder.getID());
//这个地方
Map paramMap=new HashMap<>();
List<Map> mapList = new ArrayList<>();
paramMap.put("S_MBLNR",wmsRawOrderIn.getUserDefined1());
paramMap.put("S_MJAHR",wmsRawOrderIn.getUserDefined2());
paramMap.put("S_MATNR",wmsRawOrderIn.getMaterialCode());
paramMap.put("incomeBatchNo",wmsRawOrderIn.getIncomeBatchNo()); //批次
paramMap.put("ebelp",wmsRawOrderIn.getPoLine());
paramMap.put("poNo",wmsRawOrderIn.getPoNo());
mapList.add(paramMap);
R result2 = remoteSapService.sap105temporarilyCollected(mapList);
if (result2.getCode()==200){
Map map = new HashMap();
map = (Map) result2.getData();
String MATERIALDOCUMENT = (String) map.get("MATERIALDOCUMENT");
String MATDOCUMENTYEAR = (String) map.get("MATDOCUMENTYEAR");
//成功了--成功了,根据
WmsRawOrderInSn wmsRawOrderInSn=new WmsRawOrderInSn();
wmsRawOrderInSn.setUserDefined5(wmsRawOrderIn.getDnNo());
wmsRawOrderInSn.setUserDefined1("1");//暂收
wmsRawOrderInSn.setUserDefined3(wmsRawOrderIn.getKem());
List<WmsRawOrderInSn> wmsRawOrderInSnList= wmsRawOrderInSnMapper.selectWmsRawOrderInSnList(wmsRawOrderInSn);
for (WmsRawOrderInSn wmsRawOrderInSn1:
wmsRawOrderInSnList) {
WmsOdsMateStorageNewsSn wmsRawOrderInNewsSn=new WmsOdsMateStorageNewsSn();
wmsRawOrderInNewsSn.setMaterialCode(wmsRawOrderInSn1.getMaterialCode());
wmsRawOrderInNewsSn.setWaCode(wmsRawOrderInSn1.getWaCode());
wmsRawOrderInNewsSn.setWhCode(wmsRawOrderInSn1.getWhCode());
wmsRawOrderInNewsSn.setWlCode(wmsRawOrderInSn1.getWlCode());
wmsRawOrderInNewsSn.setUserDefined3("1");
wmsOdsMateStorageNewsSnMapper.updateWmsOdsMateStorageNewsSnTWM(wmsRawOrderInNewsSn);
wmsRawOrderInSn1.setUserDefined1("2");
wmsRawOrderInSnMapper.updateWmsRawOrderInSn(wmsRawOrderInSn1);
WmsOdsMateStorageNews wmsOdsMateStorageNews=new WmsOdsMateStorageNews();
wmsOdsMateStorageNews.setMaterialCode(wmsRawOrderInSn1.getMaterialCode());
wmsOdsMateStorageNews.setWaCode(wmsRawOrderInSn1.getWaCode());
wmsOdsMateStorageNews.setWlCode(wmsRawOrderInSn1.getWlCode());
wmsOdsMateStorageNews.setWhCode(wmsRawOrderInSn1.getWhCode());
wmsOdsMateStorageNews.setStorageAmount(wmsRawOrderInSn1.getAmount());
wmsOdsMateStorageNewsMapper.updateWmsOdsMateStorageNewsUpdateStorageAmount(wmsOdsMateStorageNews);
}
wmsRawOrderIn.setOrderStatus("1");
wmsRawOrderIn.setAccountingTime(new Date());
wmsRawOrderIn.setAccountingMessage(result2.getMsg());
wmsRawOrderIn.setUserDefined4(MATERIALDOCUMENT);
wmsRawOrderIn.setUserDefined5(MATDOCUMENTYEAR);
wmsRawOrderInMapper.updateWmsRawOrderIn(wmsRawOrderIn);
}else {
//失败了
wmsRawOrderIn.setAccountingTime(new Date());
wmsRawOrderIn.setAccountingMessage(result2.getMsg());
wmsRawOrderInMapper.updateWmsRawOrderIn(wmsRawOrderIn);
}
}
String result="操作失败";
// for (OdsProcureOrder order: odsProcureOrders){
// OdsProcureOrder odsProcureOrder = order;
// WmsRawOrderIn wmsRawOrderIn= wmsRawOrderInMapper.selectWmsRawOrderInByRawOrderInIdTWO(odsProcureOrder.getID());
// //这个地方
// Map paramMap=new HashMap<>();
// List<Map> mapList = new ArrayList<>();
// paramMap.put("S_MBLNR",wmsRawOrderIn.getUserDefined1());
// paramMap.put("S_MJAHR",wmsRawOrderIn.getUserDefined2());
// paramMap.put("S_MATNR",wmsRawOrderIn.getMaterialCode());
// paramMap.put("incomeBatchNo",wmsRawOrderIn.getIncomeBatchNo()); //批次
// paramMap.put("ebelp",wmsRawOrderIn.getPoLine());
// paramMap.put("poNo",wmsRawOrderIn.getPoNo());
// mapList.add(paramMap);
// R result2 = remoteSapService.sap105temporarilyCollected(mapList);
// if (result2.getCode()==200){
// Map map = new HashMap();
// map = (Map) result2.getData();
// String MATERIALDOCUMENT = (String) map.get("MATERIALDOCUMENT");
// String MATDOCUMENTYEAR = (String) map.get("MATDOCUMENTYEAR");
// //成功了--成功了,根据
// WmsRawOrderInSn wmsRawOrderInSn=new WmsRawOrderInSn();
// wmsRawOrderInSn.setUserDefined5(wmsRawOrderIn.getDnNo());
// wmsRawOrderInSn.setUserDefined1("1");//暂收
//
// wmsRawOrderInSn.setUserDefined3(wmsRawOrderIn.getKem());
// List<WmsRawOrderInSn> wmsRawOrderInSnList= wmsRawOrderInSnMapper.selectWmsRawOrderInSnList(wmsRawOrderInSn);
// for (WmsRawOrderInSn wmsRawOrderInSn1:
// wmsRawOrderInSnList) {
// WmsOdsMateStorageNewsSn wmsRawOrderInNewsSn=new WmsOdsMateStorageNewsSn();
// wmsRawOrderInNewsSn.setMaterialCode(wmsRawOrderInSn1.getMaterialCode());
// wmsRawOrderInNewsSn.setWaCode(wmsRawOrderInSn1.getWaCode());
// wmsRawOrderInNewsSn.setWhCode(wmsRawOrderInSn1.getWhCode());
// wmsRawOrderInNewsSn.setWlCode(wmsRawOrderInSn1.getWlCode());
// wmsRawOrderInNewsSn.setUserDefined3("1");
// wmsOdsMateStorageNewsSnMapper.updateWmsOdsMateStorageNewsSnTWM(wmsRawOrderInNewsSn);
// wmsRawOrderInSn1.setUserDefined1("2");
// wmsRawOrderInSnMapper.updateWmsRawOrderInSn(wmsRawOrderInSn1);
// WmsOdsMateStorageNews wmsOdsMateStorageNews=new WmsOdsMateStorageNews();
// wmsOdsMateStorageNews.setMaterialCode(wmsRawOrderInSn1.getMaterialCode());
// wmsOdsMateStorageNews.setWaCode(wmsRawOrderInSn1.getWaCode());
// wmsOdsMateStorageNews.setWlCode(wmsRawOrderInSn1.getWlCode());
// wmsOdsMateStorageNews.setWhCode(wmsRawOrderInSn1.getWhCode());
// wmsOdsMateStorageNews.setStorageAmount(wmsRawOrderInSn1.getAmount());
// wmsOdsMateStorageNewsMapper.updateWmsOdsMateStorageNewsUpdateStorageAmount(wmsOdsMateStorageNews);
// }
// wmsRawOrderIn.setOrderStatus("1");
// wmsRawOrderIn.setAccountingTime(new Date());
// wmsRawOrderIn.setAccountingMessage(result2.getMsg());
// wmsRawOrderIn.setUserDefined4(MATERIALDOCUMENT);
// wmsRawOrderIn.setUserDefined5(MATDOCUMENTYEAR);
// wmsRawOrderInMapper.updateWmsRawOrderIn(wmsRawOrderIn);
//
// }else {
// //失败了
// wmsRawOrderIn.setAccountingTime(new Date());
// wmsRawOrderIn.setAccountingMessage(result2.getMsg());
// wmsRawOrderInMapper.updateWmsRawOrderIn(wmsRawOrderIn);
//
// }
// }
return result;
}

@ -76,11 +76,17 @@
<if test="userDefined3 != null and userDefined3 != ''">and user_defined3 = #{userDefined3}</if>
<if test="activeFlag != null and activeFlag != ''">and active_flag = #{activeFlag}</if>
<if test="factoryCode != null and factoryCode != ''">and factory_code = #{factoryCode}</if>
<if test="factoryCode != null and factoryCode != ''">and factory_code = #{factoryCode}</if>
and del_flag = '0'
</where>
</select>
<select id="selectBaseAreaListnew" resultType="java.lang.String">
SELECT
wh_code
FROM
base_area
where area_code like concat('%', #{baseArea}, '%')
</select>
<select id="selectBaseAreaByAreaId" parameterType="String" resultMap="BaseAreaResult">
<include refid="selectBaseAreaVo"/>
where area_id = #{areaId}

@ -25,7 +25,7 @@
<result property="other" column="other"/>
<result property="palletNum" column="pallet_num"/>
<result property="cpkType" column="cpk_type"/>
<result property="waCode" column="wa_code"/>
</resultMap>
<sql id="selectBaseProductAttachedVo">
@ -185,4 +185,11 @@
#{id}
</foreach>
</delete>
<select id="selectBaseAreaListnew" resultType="java.lang.String">
SELECT
wh_code
FROM
base_area
where area_code like concat('%', #{baseArea}, '%')
</select>
</mapper>

@ -44,6 +44,7 @@
<result property="whCode" column="whCode"/>
<result property="waCode" column="waCode"/>
<result property="factoryCode" column="factoryCode"/>
<result property="SapTempInfor" column="Sap_Temp_Infor"/>
</resultMap>
<sql id="selectOdsProcureOrderVo">
@ -485,6 +486,7 @@
<if test="dto.enterpriseId != null">Enterprise_Id,</if>
<!-- 如果enterpriseCode不为null则添加列名Enterprise_Code -->
<if test="dto.enterpriseCode != null">Enterprise_Code,</if>
<if test="dto.temNumber != null">tem_number,</if>
</trim>
<!-- 使用<trim>标签来处理值,这样可以自动去掉最后一个逗号 -->
<trim prefix="values (" suffix=")" suffixOverrides=",">
@ -552,6 +554,7 @@
<if test="dto.enterpriseId != null">#{dto.enterpriseId},</if>
<!-- 如果enterpriseCode不为null则添加对应的值 -->
<if test="dto.enterpriseCode != null">#{dto.enterpriseCode},</if>
<if test="dto.temNumber != null">#{dto.temNumber},</if>
</trim>
</foreach>
</insert>
@ -624,6 +627,7 @@
o.Last_Update_Date,
o.Active,
o.Enterprise_Id,
o.Sap_Temp_Infor,
o.Enterprise_Code,
base_product_attached.pallet_num, COALESCE ( Operation_Number, 0 ) Operation_Number
FROM
@ -674,6 +678,11 @@
SET User_Defined10 = '1'
where User_Defined1 = #{userDefined6}
</update>
<update id="updateodsProcureOrderCardTemNumber">
update ods_procure_order_card
SET tem_number = #{temNumber}
where User_Defined1 = #{userDefined1}
</update>
<select id="selectOdsProcureOrderCardByUserDefined1" parameterType="OdsProcureOrder" resultMap="OdsProcureOrderResult">
SELECT
ods_procure_order.Site_code,

Loading…
Cancel
Save