Ver Fonte

仓库看板

chenc há 4 anos atrás
pai
commit
7b28762ae8

+ 3 - 2
src/main/java/org/jeecg/modules/fbsMomOrder/mapper/xml/FbsMomOrderdetailMapper.xml

@@ -258,8 +258,9 @@
             LEFT JOIN Inventory mi ON mm.InvCode= mi.cInvCode
         WHERE
             mo.RelsUser IS NOT NULL
-          AND SUBSTRING ( m.MoCode, 3, 4 ) = SUBSTRING ( CONVERT ( VARCHAR ( 100 ), GETDATE( ), 112 ), 3, 4 )
-          ORDER BY m.MoCode DESC
+          <!--AND SUBSTRING ( m.MoCode, 3, 4 ) = SUBSTRING ( CONVERT ( VARCHAR ( 100 ), GETDATE( ), 112 ), 3, 4 )-->
+          AND mo.Status <![CDATA[ <>]]> 4
+          ORDER BY m.MoCode,mo.InvCode DESC
     </select>
 
     <select id="getMomMoallocateByMoCode" resultType="org.jeecg.modules.fbsMomOrder.entity.FbsMomOrderdetail">

+ 30 - 15
src/main/java/org/jeecg/modules/fbsMomOrder/service/impl/FbsMomOrderdetailServiceImpl.java

@@ -8,6 +8,7 @@ import org.jeecg.modules.fbsMomOrder.entity.CacheManager;
 import org.jeecg.modules.fbsMomOrder.entity.FbsMomOrderdetail;
 import org.jeecg.modules.fbsMomOrder.mapper.FbsMomOrderdetailMapper;
 import org.jeecg.modules.fbsMomOrder.service.IFbsMomOrderdetailService;
+import org.springframework.beans.BeanUtils;
 import org.springframework.stereotype.Service;
 
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -148,38 +149,47 @@ public class FbsMomOrderdetailServiceImpl extends ServiceImpl<FbsMomOrderdetailM
         List<FbsMomOrderdetail> fbsMomOrderdetailListChildAdd=new ArrayList<>();
         //订单子子件明细
         List<FbsMomOrderdetail> fbsMomOrderdetailList=new ArrayList<>();
+        List<FbsMomOrderdetail> fbsMomOrderdetailList2=new ArrayList<>();
         String key=CacheManager.findAllEstate;
         Cache cache= CacheManager.getCacheInfo(key);
         if (null == cache){
-            fbsMomOrderdetailList=fbsMomOrderdetailMapper.getMomMoallocate();
+            fbsMomOrderdetailList2=fbsMomOrderdetailMapper.getMomMoallocate();
             cache = new Cache();
             cache.setKey(key);
-            cache.setValue(fbsMomOrderdetailList);
+            cache.setValue(fbsMomOrderdetailList2);
             CacheManager.putCache(key, cache);
 
 
         }else {
-            fbsMomOrderdetailList=(List<FbsMomOrderdetail>) cache.getValue();
+            fbsMomOrderdetailList2=(List<FbsMomOrderdetail>) cache.getValue();
         }
-
-
         //现存量
         List<FbsMomOrderdetail> currentStockList=fbsMomOrderdetailMapper.getListByOrderSheetCurrentStock();
 
-        if(fbsMomOrderdetailList!=null&&fbsMomOrderdetailList.size()>0){
+        if(fbsMomOrderdetailList2!=null&&fbsMomOrderdetailList2.size()>0){
+            //以防缓存的数据发生改变
+//            for(FbsMomOrderdetail f:fbsMomOrderdetailList2){
+//                fbsMomOrderdetailList.add(f);
+//            }
+            fbsMomOrderdetailList.addAll(fbsMomOrderdetailList2);
             Integer qtysTotal=0;//数量总计
             Integer issQtyTotal=0;//已领总计
             Integer shortageQuantityTotal=0;//缺料总计
             String name="";
+            String code="";
             FbsMomOrderdetail fbsMomOrderdetailAdd=new FbsMomOrderdetail();
             /////////////子件
             for(FbsMomOrderdetail fbsMomOrderdetail:fbsMomOrderdetailList){
                 //如果本次循环与上次的生产订单不同则添加上一个订单信息
-                if(!name.equals(fbsMomOrderdetail.getMocode())&&!name.equals("")){
-                    fbsMomOrderdetailAdd.setQtys(qtysTotal);
-                    fbsMomOrderdetailAdd.setIssQty(issQtyTotal);
-                    fbsMomOrderdetailAdd.setShortageQuantity(shortageQuantityTotal);
-                    fbsMomOrderdetailListAdd.add(fbsMomOrderdetailAdd);
+                if(!code.equals(fbsMomOrderdetail.getInvcode())&&!code.equals("")){
+                    //解决不改变原有对象的值
+                    FbsMomOrderdetail a=new FbsMomOrderdetail();
+                    BeanUtils.copyProperties(fbsMomOrderdetailAdd, a);
+                    //
+                    a.setQtys(qtysTotal);
+                    a.setIssQty(issQtyTotal);
+                    a.setShortageQuantity(shortageQuantityTotal);
+                    fbsMomOrderdetailListAdd.add(a);
                     qtysTotal=0;
                     issQtyTotal=0;
                     shortageQuantityTotal=0;
@@ -212,6 +222,7 @@ public class FbsMomOrderdetailServiceImpl extends ServiceImpl<FbsMomOrderdetailM
                 }
                 fbsMomOrderdetailAdd=fbsMomOrderdetail;
                 name=fbsMomOrderdetail.getMocode();
+                code=fbsMomOrderdetail.getInvcode();
                 //累加
                 if(StringUtils.isNotBlank(fbsMomOrderdetail.getQtys()+"")){
                     qtysTotal=qtysTotal+qtys;
@@ -231,10 +242,14 @@ public class FbsMomOrderdetailServiceImpl extends ServiceImpl<FbsMomOrderdetailM
             }
 
             //添加最后一个缺料信息
-            fbsMomOrderdetailAdd.setQtys(qtysTotal);
-            fbsMomOrderdetailAdd.setIssQty(issQtyTotal);
-            fbsMomOrderdetailAdd.setShortageQuantity(shortageQuantityTotal);
-            fbsMomOrderdetailListAdd.add(fbsMomOrderdetailAdd);
+            //解决不改变原有对象的值
+            FbsMomOrderdetail b=new FbsMomOrderdetail();
+            BeanUtils.copyProperties(fbsMomOrderdetailAdd, b);
+            //
+            b.setQtys(qtysTotal);
+            b.setIssQty(issQtyTotal);
+            b.setShortageQuantity(shortageQuantityTotal);
+            fbsMomOrderdetailListAdd.add(b);
         }
 
 //        if(type.equals("1")){//缺料齐套

+ 5 - 2
src/main/java/org/jeecg/modules/fbsWorkshopDispatchList/service/impl/FbsWorkshopDispatchListServiceImpl.java

@@ -136,7 +136,7 @@ public class FbsWorkshopDispatchListServiceImpl extends ServiceImpl<FbsWorkshopD
                             if(dispatchList.getQualifiedNumber()!=null){
                                 quantityCompletedTotal+=dispatchList.getQualifiedNumber();//统计累计完成数量
                             }
-                            manHoursCompletedTotal=manHoursCompletedTotal.add(getDecimal(Double.valueOf(dispatchList.getManHoursCompleted())));//累计完成工时
+                            manHoursCompletedTotal=manHoursCompletedTotal.add(getDecimalNew(dispatchList.getManHoursCompleted()));//累计完成工时
                             fbsWorkshopDispatchList=dispatchList;
                             if(i<=1){
                                 number_of_tasks=dispatchList.getNumberOfTasks();
@@ -222,7 +222,10 @@ public class FbsWorkshopDispatchListServiceImpl extends ServiceImpl<FbsWorkshopD
                     standardWorkingHoursActualTotal=getDecimalNew(dispatchListSum.getStandardWorkingHoursActualTotal());
                 }
                 if(manHoursCompletedTotal.doubleValue()>0.0){
-                    dispatchListSum.setProductionEfficiency(formatDouble0(standardWorkingHoursActualTotal.divide(manHoursCompletedTotal,0,BigDecimal.ROUND_HALF_UP).multiply(getDecimalNew("100.0")).doubleValue()));
+                    dispatchListSum.setProductionEfficiency(formatDouble0(standardWorkingHoursActualTotal.divide(manHoursCompletedTotal,2,BigDecimal.ROUND_HALF_UP).multiply(getDecimalNew("100.0")).doubleValue()));
+                    System.out.println(standardWorkingHoursActualTotal);
+                    System.out.println(manHoursCompletedTotal);
+                    System.out.println(standardWorkingHoursActualTotal.divide(manHoursCompletedTotal,0,BigDecimal.ROUND_HALF_UP).multiply(getDecimalNew("100.0")).doubleValue());
                 }