|
@@ -2,33 +2,39 @@ package com.platform.service.store.impl;
|
|
|
|
|
|
import cn.hutool.core.collection.CollectionUtil;
|
|
|
import cn.hutool.core.date.DateUtil;
|
|
|
+import com.alibaba.fastjson.JSONArray;
|
|
|
+import com.alibaba.fastjson.JSONObject;
|
|
|
import com.github.pagehelper.PageHelper;
|
|
|
import com.platform.common.bean.AbstractPageResultBean;
|
|
|
import com.platform.common.constant.CommonConstants;
|
|
|
import com.platform.common.enums.DataFilterTypeEnum;
|
|
|
import com.platform.common.exception.BusinessException;
|
|
|
+import com.platform.common.util.BeanConverterUtil;
|
|
|
+import com.platform.common.util.BeanUtils;
|
|
|
import com.platform.common.util.IdGeneratorUtils;
|
|
|
import com.platform.common.util.StringUtils;
|
|
|
import com.platform.dao.bean.MyPage;
|
|
|
import com.platform.dao.bean.MyVOPage;
|
|
|
import com.platform.dao.dto.sb.SbModelSpareBomDTO;
|
|
|
+import com.platform.dao.dto.sqarepartmanage.SparePartInfoDTO;
|
|
|
import com.platform.dao.dto.sqarepartmanage.SpareTypeDTO;
|
|
|
import com.platform.dao.dto.store.InStoreFormDTO;
|
|
|
import com.platform.dao.dto.store.OutStoreFormDTO;
|
|
|
import com.platform.dao.dto.store.SpareStoreDTO;
|
|
|
+import com.platform.dao.dto.store.StoreDTO;
|
|
|
import com.platform.dao.entity.sqarepartmanage.SpareType;
|
|
|
import com.platform.dao.entity.store.SpareStore;
|
|
|
import com.platform.dao.entity.store.Store;
|
|
|
import com.platform.dao.enums.StoreLevelEnum;
|
|
|
+import com.platform.dao.mapper.sqarepartmanage.SparePartInfoMapper;
|
|
|
import com.platform.dao.mapper.sqarepartmanage.SparePartUsedMapper;
|
|
|
import com.platform.dao.mapper.sqarepartmanage.SpareTypeMapper;
|
|
|
import com.platform.dao.mapper.store.InStoreFormMapper;
|
|
|
import com.platform.dao.mapper.store.OutStoreFormMapper;
|
|
|
import com.platform.dao.mapper.store.SpareStoreMapper;
|
|
|
-import com.platform.dao.vo.query.store.InStoreFormVO;
|
|
|
-import com.platform.dao.vo.query.store.OutStoreFormVO;
|
|
|
-import com.platform.dao.vo.query.store.SpareStoreVO;
|
|
|
-import com.platform.dao.vo.query.store.StoreVO;
|
|
|
+import com.platform.dao.mapper.store.StoreMapper;
|
|
|
+import com.platform.dao.vo.query.sparepartmanage.SparePartInfoVO;
|
|
|
+import com.platform.dao.vo.query.store.*;
|
|
|
import com.platform.dao.vo.sb.SbModelSpareBomVO;
|
|
|
import com.platform.dao.vo.spare.SparePartUsedVO;
|
|
|
import com.platform.dao.vo.spare.SpareStoreInfoVO;
|
|
@@ -51,6 +57,7 @@ import tk.mybatis.mapper.weekend.WeekendCriteria;
|
|
|
|
|
|
import java.math.BigDecimal;
|
|
|
import java.text.DecimalFormat;
|
|
|
+import java.util.ArrayList;
|
|
|
import java.util.Date;
|
|
|
import java.util.List;
|
|
|
import java.util.stream.Collectors;
|
|
@@ -76,6 +83,8 @@ public class SpareStoreServiceImpl extends BaseServiceImpl<SpareStoreMapper, Spa
|
|
|
private SpareTypeMapper spareTypeMapper;
|
|
|
private InStoreFormMapper inStoreFormMapper;
|
|
|
private OutStoreFormMapper outStoreFormMapper;
|
|
|
+ private StoreMapper storeMapper;
|
|
|
+ private SparePartInfoMapper sparePartInfoMapper;
|
|
|
|
|
|
@Override
|
|
|
public SpareStoreVO getDetail(Object id) {
|
|
@@ -336,34 +345,55 @@ public class SpareStoreServiceImpl extends BaseServiceImpl<SpareStoreMapper, Spa
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * 获取单个仓库的总备件价值,不同备件类型对应的数量,入库单数,出库单数(不包含子仓库)
|
|
|
+ * @param storeId
|
|
|
+ * @return
|
|
|
+ */
|
|
|
@Override
|
|
|
- public SpareStoreInfoVO getSpareStoreInfo(SpareStoreDTO spareStoreDTO) {
|
|
|
- SpareStoreInfoVO spareStoreInfoVO=new SpareStoreInfoVO();
|
|
|
- BigDecimal totalPrice= spareStoreMapper.getTotalPrice(spareStoreDTO);
|
|
|
- List<SpareTypeVO> spareTypeVO=spareTypeMapper.getSpareTypeVo(spareStoreDTO);
|
|
|
- InStoreFormDTO inQuery=new InStoreFormDTO();
|
|
|
- inQuery.setStoreId(spareStoreDTO.getStoreId());
|
|
|
- OutStoreFormDTO outQuery=new OutStoreFormDTO();
|
|
|
- outQuery.setStoreId(spareStoreDTO.getStoreId());
|
|
|
- List<InStoreFormVO> inStoreFormVOS= inStoreFormMapper.selectList(inQuery);
|
|
|
- List<OutStoreFormVO> outStoreFormVOS= outStoreFormMapper.selectList(outQuery);
|
|
|
- Integer bigNum=0;
|
|
|
- Integer smallNum=0;
|
|
|
- if(spareTypeVO!=null){
|
|
|
- for(SpareTypeVO vo:spareTypeVO){
|
|
|
- if(vo.getType()==1){
|
|
|
- bigNum+=vo.getNum();
|
|
|
- }else if(vo.getType()==2){
|
|
|
- smallNum+=vo.getNum();
|
|
|
- }
|
|
|
+ public SpareStoreInfoVO getSpareStoreInfoVO(String storeId,SpareStoreInfoVO spareStoreInfoVO) {
|
|
|
+ BigDecimal totalPrice=spareStoreMapper.getTotalPrice(storeId);
|
|
|
+ BigDecimal spareTotalNum=spareStoreMapper.getTotalNum(storeId);
|
|
|
+ BigDecimal inStoreCount=inStoreFormMapper.getInStoreFormCount(storeId);
|
|
|
+ BigDecimal outStoreCount=outStoreFormMapper.getOutStoreFormCount(storeId);
|
|
|
+ if(spareStoreInfoVO == null){
|
|
|
+ spareStoreInfoVO = new SpareStoreInfoVO();
|
|
|
+ }
|
|
|
+ spareStoreInfoVO.setTotalPrice(spareStoreInfoVO.getTotalPrice().add(totalPrice));
|
|
|
+ spareStoreInfoVO.setSpareTotalNum(spareStoreInfoVO.getSpareTotalNum().add(spareTotalNum));
|
|
|
+ spareStoreInfoVO.setInStoreCount(spareStoreInfoVO.getInStoreCount().add(inStoreCount));
|
|
|
+ spareStoreInfoVO.setOutStoreCount(spareStoreInfoVO.getOutStoreCount().add(outStoreCount));
|
|
|
+ StoreDTO storeDTO=new StoreDTO();
|
|
|
+ storeDTO.setId(storeId);
|
|
|
+ List<StoreVO> subStoreTreeVOS=storeMapper.getSubStore(storeDTO);
|
|
|
+ if(subStoreTreeVOS != null && subStoreTreeVOS.size()>0){
|
|
|
+ for(StoreVO voList : subStoreTreeVOS){
|
|
|
+ getSpareStoreInfoVO(voList.getId(),spareStoreInfoVO);
|
|
|
}
|
|
|
}
|
|
|
-
|
|
|
- spareStoreInfoVO.setBigClassNum(new BigDecimal(bigNum));
|
|
|
- spareStoreInfoVO.setSmallClassNum(new BigDecimal(smallNum));
|
|
|
- spareStoreInfoVO.setTotalPrice(totalPrice);
|
|
|
- spareStoreInfoVO.setInStoreFormVOS(inStoreFormVOS);
|
|
|
- spareStoreInfoVO.setOutStoreFormVOS(outStoreFormVOS);
|
|
|
return spareStoreInfoVO;
|
|
|
}
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public SpareStoreInfoVO getAllSpareStoreInfoVO(String storeId){
|
|
|
+ /*SpareStoreInfoVO all=new SpareStoreInfoVO();
|
|
|
+ SpareStoreInfoVO spareStoreInfoVO=getSpareStoreInfoVO(storeId);
|
|
|
+ StoreTreeVO storeTreeVO=new StoreTreeVO();
|
|
|
+ storeTreeVO.setId(storeId);
|
|
|
+ StoreDTO storeDTO=new StoreDTO();
|
|
|
+ storeDTO.setId(storeId);
|
|
|
+ List<StoreVO> subStoreTreeVOS=storeMapper.getSubStore(storeDTO);
|
|
|
+ if(subStoreTreeVOS != null && subStoreTreeVOS.size()>0){
|
|
|
+ for(StoreVO voList : subStoreTreeVOS){
|
|
|
+
|
|
|
+ }
|
|
|
+ }*/
|
|
|
+
|
|
|
+ return getSpareStoreInfoVO(storeId,null);
|
|
|
+ };
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
}
|