|
@@ -11,12 +11,15 @@ import com.platform.common.util.*;
|
|
|
import com.platform.dao.bean.MyPage;
|
|
|
import com.platform.dao.dto.repair.RepairApplicationFormDTO;
|
|
|
import com.platform.dao.dto.sb.SbInfoDTO;
|
|
|
+import com.platform.dao.dto.sb.SbModelSpareBomDTO;
|
|
|
import com.platform.dao.dto.sqarepartmanage.SparePartInfoDTO;
|
|
|
+import com.platform.dao.dto.store.InStoreDetailDTO;
|
|
|
import com.platform.dao.entity.sb.SbInfo;
|
|
|
import com.platform.dao.entity.sb.SbModel;
|
|
|
import com.platform.dao.entity.sb.SbModelSpareBom;
|
|
|
import com.platform.dao.entity.sqarepartmanage.SparePartInfo;
|
|
|
import com.platform.dao.entity.sqarepartmanage.SpareType;
|
|
|
+import com.platform.dao.entity.store.InStoreDetail;
|
|
|
import com.platform.dao.entity.store.SpareStore;
|
|
|
import com.platform.dao.entity.upms.SysDept;
|
|
|
import com.platform.dao.entity.upms.SysFile;
|
|
@@ -248,6 +251,7 @@ public class SparePartInfoServiceImpl extends BaseServiceImpl<SparePartInfoMappe
|
|
|
}
|
|
|
});
|
|
|
model.setApplicationFileList(applicationFileList);
|
|
|
+
|
|
|
return model;
|
|
|
}
|
|
|
|
|
@@ -351,6 +355,15 @@ public class SparePartInfoServiceImpl extends BaseServiceImpl<SparePartInfoMappe
|
|
|
spareStoreMapper.insert(spareStore);
|
|
|
}
|
|
|
|
|
|
+ // 插入设备关联
|
|
|
+ List<SbModelSpareBomDTO> detailList = model.getDetailList();
|
|
|
+ if(!CollectionUtils.isEmpty(detailList)){
|
|
|
+ for(SbModelSpareBomDTO detail:detailList) {
|
|
|
+ detail.setSpareId(model.getId());
|
|
|
+ detail.setId(IdGeneratorUtils.getObjectId());
|
|
|
+ }
|
|
|
+ sbModelSpareBomMapper.insertListforComplex(BeanConverterUtil.copyListProperties(detailList, SbModelSpareBom.class));
|
|
|
+ }
|
|
|
return super.saveModelHaveCreateInfo(model);
|
|
|
}
|
|
|
|
|
@@ -399,55 +412,35 @@ public class SparePartInfoServiceImpl extends BaseServiceImpl<SparePartInfoMappe
|
|
|
}
|
|
|
this.saveFile(model);
|
|
|
|
|
|
- /* if(model.getInitStock() == null){
|
|
|
- model.setInitStock(new BigDecimal(0));
|
|
|
- }*/
|
|
|
- /**
|
|
|
- * 1:已经存在库存,则判断数量是否一致,
|
|
|
- * 1.1一致则不变,
|
|
|
- * 1.2否则则要变更初始数量,并更新当前数量,当前数量=当前数量-旧初始数量+新初始数量
|
|
|
- * 2:不存在库存,则新建
|
|
|
- */
|
|
|
- // 如果初始化数量有了,就需要更新库存
|
|
|
- /*if(model.getInitStock() != null){
|
|
|
- Weekend<SpareStore> weekendSpareStore = new Weekend<>(SpareStore.class);
|
|
|
- weekendSpareStore.weekendCriteria().andEqualTo(SpareStore::getSpareId, model.getId())
|
|
|
- .andEqualTo(SpareStore::getStoreId, model.getStoreId());
|
|
|
- SpareStore spareStore = spareStoreMapper.selectOneByExample(weekendSpareStore);
|
|
|
- if(spareStore != null){
|
|
|
- if(spareStore.getInitNum() != null){
|
|
|
- if(spareStore.getInitNum().compareTo(model.getInitStock()) !=0){
|
|
|
- spareStore.setNum(spareStore.getNum().subtract(spareStore.getInitNum()).add(model.getInitStock()) );
|
|
|
- spareStore.setInitNum(model.getInitStock());
|
|
|
- spareStore.setUpdateTime(time);
|
|
|
- spareStore.setUpdateUserId(userInfo.getUserId());
|
|
|
- spareStoreMapper.updateByPrimaryKey(spareStore);
|
|
|
- }
|
|
|
+ // 插入设备关联
|
|
|
+ List<SbModelSpareBomDTO> detailList = model.getDetailList();
|
|
|
+ List<SbModelSpareBomDTO> addList = new ArrayList<SbModelSpareBomDTO>();
|
|
|
+ List<SbModelSpareBomDTO> updateList = new ArrayList<SbModelSpareBomDTO>();
|
|
|
+
|
|
|
+ // 先删后插,前端删除的不存在与ids里面,说明被删掉了,需要删除
|
|
|
+ Weekend<SbModelSpareBom> detailWeekend = new Weekend<>(SbModelSpareBom.class);
|
|
|
+ List<String> ids = detailList.stream().map(SbModelSpareBomDTO::getId).collect(Collectors.toList());
|
|
|
+ detailWeekend.weekendCriteria().andNotIn(SbModelSpareBom::getId, ids);
|
|
|
+ sbModelSpareBomMapper.deleteByExample(detailWeekend);
|
|
|
+
|
|
|
+ // 新增与更新
|
|
|
+ if(!CollectionUtils.isEmpty(detailList)){
|
|
|
+ for(SbModelSpareBomDTO detail:detailList) {
|
|
|
+ if(StringUtils.isBlank(detail.getId())){
|
|
|
+ detail.setSpareId(model.getId());
|
|
|
+ detail.setId(IdGeneratorUtils.getObjectId());
|
|
|
+ addList.add(detail);
|
|
|
}else{
|
|
|
- spareStore.setNum(model.getInitStock());
|
|
|
- spareStore.setInitNum(model.getInitStock());
|
|
|
- spareStore.setUpdateTime(time);
|
|
|
- spareStore.setUpdateUserId(userInfo.getUserId());
|
|
|
- spareStoreMapper.updateByPrimaryKey(spareStore);
|
|
|
+ updateList.add(detail);
|
|
|
}
|
|
|
- }else{
|
|
|
- spareStore = new SpareStore();
|
|
|
- spareStore.setSpareId(model.getId());
|
|
|
- spareStore.setId(IdGeneratorUtils.getObjectId());
|
|
|
- spareStore.setStoreId("9");
|
|
|
- BigDecimal price = model.getInitialValue();
|
|
|
- spareStore.setPrice(model.getInitialValue());
|
|
|
- spareStore.setNum(model.getInitStock() );
|
|
|
- spareStore.setInitNum(model.getInitStock() );
|
|
|
- spareStore.setInitPrice(model.getInitialValue());
|
|
|
- spareStore.setInitPurchasePrice(model.getInitialValue());
|
|
|
- spareStore.setCreatedTime(time);
|
|
|
- spareStore.setCreatedUserId(userInfo.getUserId());
|
|
|
- spareStore.setUpdateTime(time);
|
|
|
- spareStore.setUpdateUserId(userInfo.getUserId());
|
|
|
- spareStoreMapper.insert(spareStore);
|
|
|
}
|
|
|
- }*/
|
|
|
+ if(!CollectionUtils.isEmpty(addList)){
|
|
|
+ sbModelSpareBomMapper.insertListforComplex(BeanConverterUtil.copyListProperties(addList, SbModelSpareBom.class));
|
|
|
+ }
|
|
|
+ if(!CollectionUtils.isEmpty(updateList)){
|
|
|
+ sbModelSpareBomMapper.updateBatchAll(BeanConverterUtil.copyListProperties(updateList, SbModelSpareBom.class));
|
|
|
+ }
|
|
|
+ }
|
|
|
super.modModelByDTO(model);
|
|
|
}
|
|
|
private void saveFile(SparePartInfoDTO model) {
|