guq 7 лет назад
Родитель
Сommit
efc2fcac15

+ 7 - 6
applications/sale/sale-server/src/main/java/com/usoftchina/saas/sale/service/impl/SaleServiceImpl.java

@@ -246,7 +246,7 @@ public class SaleServiceImpl implements SaleService{
     }
 
     @Transactional
-    private void singleAudit(Long id) {
+    public void singleAudit(Long id) {
         Integer integer = saleMapper.checkCustomer(id);
         if (integer > 0) {
             throw new BizException(BizExceptionCode.SALE_CUST_CLOSE);
@@ -377,12 +377,13 @@ public class SaleServiceImpl implements SaleService{
         //部分入库、全部入库
         int partTurnCount = 0,turnCount = 0;
         if(saleDetailList != null && saleDetailList.size() > 0){
+            Double yqty = 0.0;
             for(SaleDetail saleDetail : saleDetailList){
-                //
-                if(saleDetail.getSd_yqty() >= saleDetail.getSd_qty()){
+                yqty = saleDetail.getSd_yqty() == null ? 0.0 : saleDetail.getSd_yqty();
+                if(yqty >= saleDetail.getSd_qty()){
                     turnCount++;
 
-                }else if(saleDetail.getSd_yqty() > 0 && saleDetail.getSd_yqty() < saleDetail.getSd_qty()){
+                }else if(yqty > 0 && yqty < saleDetail.getSd_qty()){
                     //     0 < 入库数 < 采购数
                     partTurnCount++;
                 }
@@ -432,7 +433,7 @@ public class SaleServiceImpl implements SaleService{
         //检查从表
         for (SaleDetail detail : details) {
             pdQty = detail.getSd_qty();
-            pdYqty = detail.getSd_yqty();
+            pdYqty = detail.getSd_yqty() == null ? 0 : detail.getSd_yqty();
             if (pdQty - pdYqty > 0){
                 count++;
             }
@@ -483,7 +484,7 @@ public class SaleServiceImpl implements SaleService{
             //公司id
             prodIODetail.setCompanyId(companyId);
             //本次转单数
-            prodIODetail.setPd_outqty(saleDetail.getSd_qty() - saleDetail.getSd_yqty());
+            prodIODetail.setPd_outqty(saleDetail.getSd_qty() - (saleDetail.getSd_yqty() == null ? 0 : saleDetail.getSd_yqty()));
             //获取物料默认仓库
             Map<String, Object> warehouse = getWareHouseByCode(saleDetail.getSd_prodcode());
             if (null != warehouse) {

+ 2 - 2
applications/sale/sale-server/src/main/resources/mapper/SaledetailMapper.xml

@@ -317,7 +317,7 @@
     companyId, updaterId, updateTime,
     sd_text1, sd_text2, sd_text3,
     sd_text4, sd_text5,
-    creatorId,createTime,creatorName)
+    creatorId,createTime,creatorName, sd_yqty)
     values
     <foreach collection="list" item="item" index="index" open="" close="" separator=",">
       (
@@ -329,7 +329,7 @@
       #{item.companyId,jdbcType=INTEGER}, #{item.updaterId,jdbcType=INTEGER}, #{item.updateTime,jdbcType=TIMESTAMP},
       #{item.sd_text1,jdbcType=VARCHAR}, #{item.sd_text2,jdbcType=VARCHAR}, #{item.sd_text3,jdbcType=VARCHAR},
       #{item.sd_text4,jdbcType=VARCHAR}, #{item.sd_text5,jdbcType=VARCHAR},
-      #{item.creatorId,jdbcType=INTEGER}, #{item.createTime,jdbcType=TIMESTAMP}, #{item.creatorName,jdbcType=VARCHAR}
+      #{item.creatorId,jdbcType=INTEGER}, #{item.createTime,jdbcType=TIMESTAMP}, #{item.creatorName,jdbcType=VARCHAR},#{item.sd_yqty,jdbcType=DOUBLE}
       )
     </foreach>
   </insert>