Browse Source

0412更新

master
ruanqi 3 years ago
parent
commit
c93dc65537
  1. 17
      src/main/java/com/heai/modules/app/dao/WareHouseDao.java
  2. 18
      src/main/java/com/heai/modules/app/service/impl/WareHouseServiceImpl.java
  3. 9
      src/main/java/com/heai/modules/production/entity/POReceiptDetailInData.java
  4. 6
      src/main/java/com/heai/modules/production/entity/StockPrintData.java
  5. 29
      src/main/resources/mapper/app/WareHouse.xml
  6. 2
      src/main/resources/mapper/pad/PadMapper.xml
  7. 6
      src/main/resources/mapper/production/SoScheduledListMapper.xml

17
src/main/java/com/heai/modules/app/dao/WareHouseDao.java

@ -36,7 +36,7 @@ public interface WareHouseDao {
/**
* @Description 检查库位
* @Title checkLocation
* @param inData
* @param
* @author rq
* @date 2022/9/15 17:42
* @return String
@ -94,7 +94,9 @@ public interface WareHouseDao {
* @throw
*/
void updatePOReceiptDetail(POReceiptDetailInData inData);
void updatePOInspect(POReceiptDetailInData inData);
void updatePODetail(POReceiptDetailInData inData);
void updatePOHeader(POReceiptDetailInData inData);
/**
* @Description 获取物料信息
* @Title getStockData
@ -128,4 +130,15 @@ public interface WareHouseDao {
*/
void saveSOOpsTransferHeaderForStockInspect(saveInspectData inData);
void saveSOOpsTransferDetailForStockInspect(saveInspectData inData);
/**
* @Description 查看采购单关闭的比例
* @Title getCloseTolerance
* @param inData
* @author rq
* @date 2023/4/25 10:33
* @return Double
* @throw
*/
Double getCloseTolerance(POReceiptDetailInData inData);
}

18
src/main/java/com/heai/modules/app/service/impl/WareHouseServiceImpl.java

@ -206,8 +206,8 @@ public class WareHouseServiceImpl implements WareHouseService {
params.add(DateUtil.getDate(DateUtil.getStringDate(new Date())));
params.add(inData.getUsername());
params.add(inData.getUsername());
params.add("S");
params.add(inData.getSupplierID());
params.add(inData.getSupplierDesc());
params.add("");
params.add(inData.getReceiptNo());
params.add("");
@ -234,7 +234,7 @@ public class WareHouseServiceImpl implements WareHouseService {
params.add("");
params.add(inList.get(i).getReceiptNo());
params.add(inList.get(i).getItemNo());
params.add("");
params.add(inList.get(i).getSite());
params.add("N");
params.add(inList.get(i).getManufactureDateStr());
params.add(inList.get(i).getExpiredDateStr());
@ -242,8 +242,22 @@ public class WareHouseServiceImpl implements WareHouseService {
if(Integer.parseInt(String.valueOf(map.get("result_code"))) != 200){
throw new RuntimeException(String.valueOf(map.get("result_msg")));
}
POReceiptInData searchData=new POReceiptInData();
searchData.setSite(inData.getDetailList().get(0).getSite());
searchData.setReceiptNo(inData.getDetailList().get(0).getReceiptNo());
searchData.setItemNo(inData.getDetailList().get(0).getItemNo().floatValue());
List<POReceiptDetailInData> getPOReceiptDetailData =wareHouseDao.getPOReceiptDetailData(searchData);
if(getPOReceiptDetailData.size()==0){
throw new RuntimeException("该接收单明细不存在");
}
wareHouseDao.updatePOInspect(inList.get(i));
wareHouseDao.updatePOReceiptDetail(inList.get(i));
//查下采购单关闭数量
getPOReceiptDetailData.get(0).setCloseTolerance(wareHouseDao.getCloseTolerance(getPOReceiptDetailData.get(0)));
wareHouseDao.updatePODetail(getPOReceiptDetailData.get(0));
wareHouseDao.updatePOHeader(getPOReceiptDetailData.get(0));
}
}

9
src/main/java/com/heai/modules/production/entity/POReceiptDetailInData.java

@ -6,6 +6,7 @@ public class POReceiptDetailInData extends POReceiptDetailData{
private String manufactureDateStr;
private String expiredDateStr;
private Double qty;
private Double closeTolerance;
public String getPartDesc() {
return partDesc;
}
@ -45,4 +46,12 @@ public class POReceiptDetailInData extends POReceiptDetailData{
public void setQty(Double qty) {
this.qty = qty;
}
public Double getCloseTolerance() {
return closeTolerance;
}
public void setCloseTolerance(Double closeTolerance) {
this.closeTolerance = closeTolerance;
}
}

6
src/main/java/com/heai/modules/production/entity/StockPrintData.java

@ -199,6 +199,12 @@ public class StockPrintData {
this.id = id;
}
public String getStatus() {
return status;
}
public void setStatus(String status) {
this.status = status;
}
}

29
src/main/resources/mapper/app/WareHouse.xml

@ -73,12 +73,28 @@ InvoiceQty,InvoicePrice,InvoiceNo,LocationID,OrderNo,OrderItemNo,CancelRemark,Ba
SampleInspectionMethodID,SampleInspectionLevelNo,Remark,ToInvNofityQty,InvNotifyQty,InspectType_DB,InspectType,
NeedReceiveFlag,ToInvoiceQty,QtyRBJS,OrderRef1,OrderRef2,OrderRefType,dbo.Get_Part_UMID(Site,PartNo) umid from POReceiptDetail where site=#{site} and ReceiptNo=#{receiptNo} and itemNo=#{itemNo}
</select>
<!--QtyReceived=Round(QtyReceived+#{qty},3) ,ToInvNofityQty=Round(ToInvNofityQty+#{qty},3) ,QtyToReceived=Round(QtyToReceived-#{qty},3) ,-->
<update id="updatePOReceiptDetail" >
update POReceiptDetail set QtyReceived=Round(QtyReceived+#{qty},3) ,QtyToReceived=Round(QtyToReceived-#{qty},3) , Status=case when 0>=(QtyToReceived-#{qty}) then '已入库' else '部分入库'
end where site=#{site} and receiptNo=#{receiptNo} and itemNo=#{itemNo}
update POReceiptDetail set Status=(Case when Round(isnull(QtyReceived,0)+isnull(QtyReturned,0)+isnull(QtyReplace,0)+isnull(QtyScrapt,0) -ArriveQty,6)>=0 then '已入库' else '部分入库' end)
where site=#{site} and receiptNo=#{receiptNo} and itemNo=#{itemNo}
</update>
<update id="updatePODetail" >
update PODetail set Status=(Case when 0 >( Round(isnull(ReceiveQty,0)- (round(Qty,3) - round(isnull(QtyReturned,0.0),3) -
round(isnull(QtyScrapt,0.0),3)) * (1 - 1.0 * #{closeTolerance} / 100),3) ) then '部分入库' else '已入库' end)
where site=#{site} and orderNo=#{orderNo} and itemNo=#{orderItemNo}
</update>
<update id="updatePOHeader" >
Update POHeader set Status=dbo.Get_UPdatePOHeaderStatus(#{site},#{orderNo})
where site=#{site} and orderNo=#{orderNo}
</update>
<update id="updatePOInspect" >
update POInspect set QtyReceived=Round(isnull(QtyReceived,0)+#{qty},3)
,QtyToReceived=Round(isnull(QtyToReceived,0)-#{qty},3)
where site=#{site} and ReceiptNo=#{receiptNo}
and ItemNo=#{itemNo} and InspectItemNo=1
</update>
<select id="getStockData" resultType="com.heai.modules.production.entity.InventoryStockInVo">
select top 1 Site,WarehouseID,PartNo,BatchNo,LocationID,FirstInDate,LatestOutDate,LatestInDate,ActiveDate,InQty,OutQty,QtyOnHand,
QtyReserved,InStandardValue,InActualValue,OutStandardValue,OutActualValue,PartnerID,PartnerType,LatestCountDate,
@ -107,5 +123,10 @@ NeedReceiveFlag,ToInvoiceQty,QtyRBJS,OrderRef1,OrderRef2,OrderRefType,dbo.Get_Pa
( #{transNo},#{site},1,1,'*','',0,'*',#{partNo},0,0,'*','待检验',0)
</insert>
<select id="getCloseTolerance" resultType="Double">
Select isnull(round(T.CloseTolerance,2),0) as CloseTolerance from SupplierforPart as T,POHeader as P
Where T.Site=P.Site and T.SupplierID=P.SupplierID and T.Site=#{site} and P.OrderNo=#{orderNo} and T.PartNo=#{partNo}
</select>
</mapper>

2
src/main/resources/mapper/pad/PadMapper.xml

@ -97,7 +97,7 @@
<select id="getBomDetailData" resultType="com.heai.modules.production.entity.BOMDetailData">
select Site,PartNo,RevNo,ItemNo,ComponentPartNo,CompPartRevNo,QtyAssembly ,QtyFixedScrapt,ScraptFactor,Remark,QtyAssemblyPerRecipe,
select Site,PartNo,RevNo,ItemNo,ComponentPartNo,CompPartRevNo,Round(QtyAssembly,4) QtyAssembly ,QtyFixedScrapt,ScraptFactor,Remark,QtyAssemblyPerRecipe,
dbo.Get_Part_SpecDesc(Site,ComponentPartNo) partDesc,dbo.Get_Part_UMID(Site,ComponentPartNo) umid
from BOMDetail where site = #{site,jdbcType=VARCHAR} AND PartNo = #{partNo} and RevNo=#{revNo}
</select>

6
src/main/resources/mapper/production/SoScheduledListMapper.xml

@ -61,6 +61,9 @@
</if>
<if test="toTypeFlag != null and toTypeFlag != ''">
AND a.ToTypeFlag = #{toTypeFlag}
</if>
<if test="toTypeFlagDb != null and toTypeFlagDb != ''">
AND a.ToTypeFlag_db = #{toTypeFlagDb}
</if>
<if test="partNo != null and partNo != ''">
AND b.PartNo like #{partNo}
@ -77,6 +80,9 @@
<if test="startDate != null ">
and a.TransDate >= #{startDate}
</if>
<if test="seqNo != null ">
and b.seqNo = #{seqNo}
</if>
<if test="endDate != null ">
and #{endDate} >= a.TransDate -1
</if>

Loading…
Cancel
Save