|
@@ -1,6 +1,8 @@
|
|
|
package org.jeecg.modules.fbsMomOrder.service.impl;
|
|
|
|
|
|
import com.baomidou.dynamic.datasource.annotation.DS;
|
|
|
+import io.swagger.models.auth.In;
|
|
|
+import org.apache.commons.lang.StringUtils;
|
|
|
import org.jeecg.modules.fbsMomOrder.entity.FbsMomOrderdetail;
|
|
|
import org.jeecg.modules.fbsMomOrder.mapper.FbsMomOrderdetailMapper;
|
|
|
import org.jeecg.modules.fbsMomOrder.service.IFbsMomOrderdetailService;
|
|
@@ -9,6 +11,7 @@ import org.springframework.stereotype.Service;
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
|
+import java.math.BigDecimal;
|
|
|
import java.util.ArrayList;
|
|
|
import java.util.HashMap;
|
|
|
import java.util.List;
|
|
@@ -138,8 +141,118 @@ public class FbsMomOrderdetailServiceImpl extends ServiceImpl<FbsMomOrderdetailM
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
- public List<FbsMomOrderdetail> getListByOrderSheetNow() {
|
|
|
- return null;
|
|
|
+ public List<FbsMomOrderdetail> getListByOrderSheetNow(String type) {
|
|
|
+
|
|
|
+ List<FbsMomOrderdetail> fbsMomOrderdetailListAdd=new ArrayList<>();
|
|
|
+
|
|
|
+ List<FbsMomOrderdetail> fbsMomOrderdetailListChildAdd=new ArrayList<>();
|
|
|
+
|
|
|
+ List<FbsMomOrderdetail> fbsMomOrderdetailList=fbsMomOrderdetailMapper.getMomMoallocate();
|
|
|
+
|
|
|
+ List<FbsMomOrderdetail> currentStockList=fbsMomOrderdetailMapper.getListByOrderSheetCurrentStock();
|
|
|
+ if(fbsMomOrderdetailList!=null&&fbsMomOrderdetailList.size()>0){
|
|
|
+ Integer qtysTotal=0;
|
|
|
+ Integer issQtyTotal=0;
|
|
|
+ Integer shortageQuantityTotal=0;
|
|
|
+ String name="";
|
|
|
+ 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);
|
|
|
+ qtysTotal=0;
|
|
|
+ issQtyTotal=0;
|
|
|
+ shortageQuantityTotal=0;
|
|
|
+ }
|
|
|
+ Integer qtys=0;
|
|
|
+ if(StringUtils.isNotBlank(fbsMomOrderdetail.getQtys()+"")){
|
|
|
+ qtys=fbsMomOrderdetail.getQtys();
|
|
|
+ }
|
|
|
+ Integer issQty=0;
|
|
|
+ if(StringUtils.isNotBlank(fbsMomOrderdetail.getIssQty()+"")){
|
|
|
+ issQty=fbsMomOrderdetail.getIssQty();
|
|
|
+ }
|
|
|
+
|
|
|
+ for(FbsMomOrderdetail currentStock:currentStockList){
|
|
|
+
|
|
|
+ if(fbsMomOrderdetail.getMInvCode().equals(currentStock.getCinvcode())){
|
|
|
+ Integer qtysStock=0;
|
|
|
+ qtysStock=currentStock.getMaterialPreparationTotal();
|
|
|
+
|
|
|
+ if(qtysStock<(qtys-issQty)){
|
|
|
+ fbsMomOrderdetail.setShortageQuantity(qtys-issQty-qtysStock);
|
|
|
+ }else {
|
|
|
+ fbsMomOrderdetail.setShortageQuantity(0);
|
|
|
+ }
|
|
|
+
|
|
|
+ currentStock.setMaterialPreparationTotal(qtysStock-(qtys-issQty));
|
|
|
+
|
|
|
+
|
|
|
+ }
|
|
|
+ }
|
|
|
+ fbsMomOrderdetailAdd=fbsMomOrderdetail;
|
|
|
+ name=fbsMomOrderdetail.getMocode();
|
|
|
+
|
|
|
+ if(StringUtils.isNotBlank(fbsMomOrderdetail.getQtys()+"")){
|
|
|
+ qtysTotal=qtysTotal+qtys;
|
|
|
+ }
|
|
|
+ if(StringUtils.isNotBlank(fbsMomOrderdetail.getIssQty()+"")){
|
|
|
+ issQtyTotal=issQtyTotal+issQty;
|
|
|
+ }
|
|
|
+ if(fbsMomOrderdetail.getShortageQuantity()==null){
|
|
|
+ fbsMomOrderdetail.setShortageQuantity(qtys-issQty);
|
|
|
+ }
|
|
|
+ System.out.println(qtys);
|
|
|
+ System.out.println(issQty);
|
|
|
+ System.out.println(fbsMomOrderdetail.getShortageQuantity());
|
|
|
+
|
|
|
+ shortageQuantityTotal=shortageQuantityTotal+fbsMomOrderdetail.getShortageQuantity();
|
|
|
+
|
|
|
+ if(fbsMomOrderdetail.getShortageQuantity()>0){
|
|
|
+ fbsMomOrderdetailListChildAdd.add(fbsMomOrderdetail);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ fbsMomOrderdetailAdd.setQtys(qtysTotal);
|
|
|
+ fbsMomOrderdetailAdd.setIssQty(issQtyTotal);
|
|
|
+ fbsMomOrderdetailAdd.setShortageQuantity(shortageQuantityTotal);
|
|
|
+ fbsMomOrderdetailListAdd.add(fbsMomOrderdetailAdd);
|
|
|
+ }
|
|
|
+
|
|
|
+ if(type.equals("1")){
|
|
|
+ return fbsMomOrderdetailListAdd;
|
|
|
+ }else if(type.equals("2")){
|
|
|
+ List<FbsMomOrderdetail> fbsMomOrderdetailListQitao=new ArrayList<>();
|
|
|
+ for(FbsMomOrderdetail fbsMomOrderdetail:fbsMomOrderdetailListAdd){
|
|
|
+ if(fbsMomOrderdetail.getShortageQuantity()!=null&&fbsMomOrderdetail.getShortageQuantity()<=0){
|
|
|
+ fbsMomOrderdetailListQitao.add(fbsMomOrderdetail);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return fbsMomOrderdetailListQitao;
|
|
|
+ }else if(type.equals("3")){
|
|
|
+ return fbsMomOrderdetailListChildAdd;
|
|
|
+ }else {
|
|
|
+ return new ArrayList<>();
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+ public BigDecimal getDecimalNew(String d){
|
|
|
+ BigDecimal decimal= new BigDecimal(d);
|
|
|
+ return decimal;
|
|
|
+ }
|
|
|
+ @Override
|
|
|
+ public List<FbsMomOrderdetail> getMomMoallocateByMoCode(String moCode) {
|
|
|
+ return fbsMomOrderdetailMapper.getMomMoallocateByMoCode(moCode);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public List<FbsMomOrderdetail> getListByOrderSheetCurrentStock() {
|
|
|
+ return fbsMomOrderdetailMapper.getListByOrderSheetCurrentStock();
|
|
|
}
|
|
|
|
|
|
|