|
@@ -12,6 +12,8 @@ import com.platform.common.util.*;
|
|
|
import com.platform.dao.bean.MyVOPage;
|
|
|
import com.platform.dao.dto.longyanpurchaseorder.LongYanPurchaseDetailDTO;
|
|
|
import com.platform.dao.dto.longyanpurchaseorder.LongYanPurchaseOrderDTO;
|
|
|
+import com.platform.dao.dto.sb.SbInfoDTO;
|
|
|
+import com.platform.dao.dto.sb.SbModelSpareBomDTO;
|
|
|
import com.platform.dao.dto.spareAdd.Inventory;
|
|
|
import com.platform.dao.dto.spareAdd.InventoryTest;
|
|
|
import com.platform.dao.dto.sqarepartmanage.SparePartInfoDTO;
|
|
@@ -39,6 +41,8 @@ import com.platform.dao.vo.query.sparepartmanage.SparePartInfoVO;
|
|
|
import com.platform.dao.vo.query.store.OutStoreDetailVO;
|
|
|
import com.platform.dao.vo.query.store.OutStoreFormVO;
|
|
|
import com.platform.dao.vo.query.store.SpareStoreVO;
|
|
|
+import com.platform.dao.vo.sb.SbInfoVO;
|
|
|
+import com.platform.dao.vo.sb.SbModelSpareBomVO;
|
|
|
import com.platform.service.store.OutStoreDetailService;
|
|
|
import com.platform.service.store.OutStoreFormService;
|
|
|
import com.platform.service.yongyou.YongyouService;
|
|
@@ -48,6 +52,8 @@ import handler.yongyou.response.*;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
+import tk.mybatis.mapper.weekend.Weekend;
|
|
|
+import tk.mybatis.mapper.weekend.WeekendCriteria;
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
|
import java.math.BigDecimal;
|
|
@@ -434,7 +440,51 @@ public class YongyouServiceImpl implements YongyouService {
|
|
|
return myVOPage;
|
|
|
}
|
|
|
|
|
|
+ private void addBom(LongYanPurchaseOrderVO model, List<LongYanPurchaseDetailVO> detailVOS) {
|
|
|
+ List<String> sbIds = new ArrayList<>();
|
|
|
+ SbInfo sbInfo = sbInfoMapper.selectByPrimaryKey(model.getSbId());
|
|
|
+ SbInfoDTO queryDto = new SbInfoDTO();
|
|
|
+ if (sbInfo.getModel()!=null && !sbInfo.getModel().trim().equals("") &&!sbInfo.getModel().equals("暂无")) {
|
|
|
+ queryDto.setModel(sbInfo.getModel());
|
|
|
+ List<SbInfoVO> sbInfoVOS = sbInfoMapper.selectVOList(queryDto);
|
|
|
+ sbIds = sbInfoVOS.stream().map(SbInfoVO::getId).collect(Collectors.toList());
|
|
|
+ SbModelSpareBomDTO sbModelSpareBomDTO = new SbModelSpareBomDTO();
|
|
|
|
|
|
+// sbModelSpareBomDTO.setSbIds(sbIds);
|
|
|
+ List<SbModelSpareBomVO> bomVOS = sbModelSpareBomMapper.selectVOList(sbModelSpareBomDTO);
|
|
|
+ List<String> spareIds = detailVOS.stream().map(LongYanPurchaseDetailVO::getSpareId).collect(Collectors.toList());
|
|
|
+ SbModelSpareBomDTO dto = new SbModelSpareBomDTO();
|
|
|
+ dto.setSpareIds(spareIds);
|
|
|
+ dto.setSbIds(sbIds);
|
|
|
+// List<SbModelSpareBomVO> sbModelSpareBomVOS = sbModelSpareBomMapper.selectVOList(dto);
|
|
|
+ Weekend<SbModelSpareBom> weekend = new Weekend(SbModelSpareBom.class);
|
|
|
+ WeekendCriteria<SbModelSpareBom,Object> weekendCriteria = weekend.weekendCriteria();
|
|
|
+ weekendCriteria.andIn(SbModelSpareBom::getSpareId,spareIds);
|
|
|
+ weekendCriteria.andIn(SbModelSpareBom::getSbId,sbIds);
|
|
|
+ sbModelSpareBomMapper.deleteByExample(weekend);
|
|
|
+ List<SbModelSpareBom> boms = new ArrayList<>();
|
|
|
+ for (String sbId:sbIds){
|
|
|
+ for (LongYanPurchaseDetailVO detailDTO:detailVOS){
|
|
|
+ packageBom(boms,detailDTO,sbId);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if (boms!=null && boms.size()>0){
|
|
|
+ sbModelSpareBomMapper.insertListforComplex(boms);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ private void packageBom(List<SbModelSpareBom> boms, LongYanPurchaseDetailVO detailDTO,String sbId){
|
|
|
+ SbModelSpareBom sbModelSpareBom = new SbModelSpareBom();
|
|
|
+ sbModelSpareBom.setSpareId(detailDTO.getSpareId());
|
|
|
+ sbModelSpareBom.setSbId(sbId);
|
|
|
+ sbModelSpareBom.setNum(new BigDecimal(1));
|
|
|
+ sbModelSpareBom.setId(IdGeneratorUtils.getObjectId());
|
|
|
+ sbModelSpareBom.setGgxh(detailDTO.getGgxh());
|
|
|
+ sbModelSpareBom.setSpareName(detailDTO.getSpareName());
|
|
|
+ sbModelSpareBom.setModelId(sbId);
|
|
|
+ sbModelSpareBom.setNo(detailDTO.getNo());
|
|
|
+ boms.add(sbModelSpareBom);
|
|
|
+ }
|
|
|
|
|
|
@Override
|
|
|
public String pushPurchaseOrder(String id) {
|
|
@@ -451,6 +501,9 @@ public class YongyouServiceImpl implements YongyouService {
|
|
|
LongYanPurchaseDetailDTO longYanPurchaseDetailDTO = new LongYanPurchaseDetailDTO();
|
|
|
longYanPurchaseDetailDTO.setLongYangPurchaseOrderId(id);
|
|
|
List<LongYanPurchaseDetailVO> detailVOS = longYanPurchaseDetailMapper.selectList(longYanPurchaseDetailDTO);
|
|
|
+
|
|
|
+ addBom(list.get(0),detailVOS);
|
|
|
+
|
|
|
PuAppMain puAppMain = new PuAppMain();
|
|
|
|
|
|
puAppMain.setCbustype(vo.getCbustype());
|
|
@@ -538,10 +591,10 @@ public class YongyouServiceImpl implements YongyouService {
|
|
|
handler.setRequest(request);
|
|
|
String responseStr = handler.handler();
|
|
|
AddSpareResponse response = JSONObject.parseObject(responseStr, AddSpareResponse.class);
|
|
|
- if (response.getErrcode()) {
|
|
|
+ if (response.getResult()) {
|
|
|
longYanSpareAdd.setStatus(LongYanSpareAddStatusEnum.PUSHED.getValue());
|
|
|
longYanSpareAddMapper.updateByPrimaryKeySelective(longYanSpareAdd);
|
|
|
- return response.getErrmsg();
|
|
|
+ return response.getMsg();
|
|
|
} else {
|
|
|
throw new BusinessException("新增失败!");
|
|
|
}
|
|
@@ -563,6 +616,7 @@ public class YongyouServiceImpl implements YongyouService {
|
|
|
Inventory.setCComUnitCode(inventoryTest.getCestComUnitCode());
|
|
|
Inventory.setCInvName(inventoryTest.getCestInvName());
|
|
|
Inventory.setCInvStd(inventoryTest.getCestInvStd());
|
|
|
+ Inventory.setCInvCCode("01");
|
|
|
AddSpareRequest request = new AddSpareRequest();
|
|
|
|
|
|
UserInfo userInfo = SecurityUtils.getUserInfo();
|
|
@@ -584,10 +638,10 @@ public class YongyouServiceImpl implements YongyouService {
|
|
|
handler.setRequest(request);
|
|
|
String responseStr = handler.handler();
|
|
|
AddSpareResponse response = JSONObject.parseObject(responseStr, AddSpareResponse.class);
|
|
|
- if (response.getErrcode()) {
|
|
|
+ if (response.getResult()) {
|
|
|
longYanSpareAdd.setStatus(LongYanSpareAddStatusEnum.PUSHED.getValue());
|
|
|
longYanSpareAddMapper.updateByPrimaryKeySelective(longYanSpareAdd);
|
|
|
- return response.getErrmsg();
|
|
|
+ return response.getMsg();
|
|
|
} else {
|
|
|
throw new BusinessException("新增失败!");
|
|
|
}
|