|
@@ -16,10 +16,7 @@ import com.platform.dao.entity.sqarepartmanage.SparePartInfo;
|
|
|
import com.platform.dao.entity.store.*;
|
|
|
import com.platform.dao.enums.*;
|
|
|
import com.platform.dao.mapper.sqarepartmanage.SparePartInfoMapper;
|
|
|
-import com.platform.dao.mapper.store.InStoreFormMapper;
|
|
|
-import com.platform.dao.mapper.store.PurchaseStoreFormDetailMapper;
|
|
|
-import com.platform.dao.mapper.store.PurchaseStoreFormMapper;
|
|
|
-import com.platform.dao.mapper.store.SpareStoreMapper;
|
|
|
+import com.platform.dao.mapper.store.*;
|
|
|
import com.platform.dao.vo.query.store.PurchaseStoreFormVO;
|
|
|
import com.platform.service.base.impl.BaseServiceImpl;
|
|
|
import com.platform.service.store.PurchaseStoreFormService;
|
|
@@ -33,6 +30,7 @@ import tk.mybatis.mapper.weekend.Weekend;
|
|
|
import tk.mybatis.mapper.weekend.WeekendCriteria;
|
|
|
|
|
|
import java.time.LocalDateTime;
|
|
|
+import java.util.ArrayList;
|
|
|
import java.util.List;
|
|
|
|
|
|
/**
|
|
@@ -50,6 +48,7 @@ public class PurchaseStoreFormServiceImpl extends BaseServiceImpl<PurchaseStoreF
|
|
|
private final SparePartInfoMapper sparePartInfoMapper;
|
|
|
private final StoreService storeService;
|
|
|
private final InStoreFormMapper inStoreFormMapper;
|
|
|
+ private final InStoreDetailMapper inStoreDetailMapper;
|
|
|
@Override
|
|
|
public int batchDelete(List<String> ids) {
|
|
|
Weekend<PurchaseStoreForm> weekend = new Weekend<>(PurchaseStoreForm.class);
|
|
@@ -152,6 +151,13 @@ public class PurchaseStoreFormServiceImpl extends BaseServiceImpl<PurchaseStoreF
|
|
|
@Override
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
public void transferInStoreForm(String id) {
|
|
|
+ PurchaseStoreFormDetail detail = new PurchaseStoreFormDetail();
|
|
|
+ detail.setPurchaseStoreFormId(id);
|
|
|
+ detail.setDeleteFlag(0);
|
|
|
+ List<PurchaseStoreFormDetail> list = purchaseStoreFormDetailMapper.select(detail);
|
|
|
+ if(list == null || list.size() == 0){
|
|
|
+ throw new DeniedException("采购单中没有数据");
|
|
|
+ }
|
|
|
PurchaseStoreForm form = mapper.selectByPrimaryKey(id);
|
|
|
UserInfo userInfo = SecurityUtils.getUserInfo();
|
|
|
InStoreForm model = new InStoreForm();
|
|
@@ -177,7 +183,11 @@ public class PurchaseStoreFormServiceImpl extends BaseServiceImpl<PurchaseStoreF
|
|
|
}
|
|
|
model.setStatus(InStoreStatusEnum.NOT_EXECUTE.getValue());
|
|
|
model.setId(IdGeneratorUtils.getObjectId());
|
|
|
+ String inId = model.getId(); // 入库单的ID
|
|
|
+ String inNo = model.getInNo();
|
|
|
inStoreFormMapper.insertSelective(model);
|
|
|
+ // 存入明细
|
|
|
+ saveDetails(inId,inNo,list,form.getSpareStoreId());
|
|
|
// 回写采购入库单状态
|
|
|
PurchaseStoreForm formUpd = new PurchaseStoreForm();
|
|
|
formUpd.setId(id);
|
|
@@ -188,6 +198,30 @@ public class PurchaseStoreFormServiceImpl extends BaseServiceImpl<PurchaseStoreF
|
|
|
mapper.updateByPrimaryKeySelective(formUpd);
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * 存入明细
|
|
|
+ * @param inId
|
|
|
+ */
|
|
|
+ private void saveDetails(String inId,String inNo,List<PurchaseStoreFormDetail> list,String storeId){
|
|
|
+ List<InStoreDetail> detailList = new ArrayList<>();
|
|
|
+ for(PurchaseStoreFormDetail inDetail : list){
|
|
|
+ InStoreDetail detail = new InStoreDetail();
|
|
|
+ detail.setId(IdGeneratorUtils.getObjectId());
|
|
|
+ detail.setInId(inId);
|
|
|
+ detail.setInNo(inNo);
|
|
|
+ detail.setStoreId(storeId);
|
|
|
+ detail.setSpareId(inDetail.getSparePartInfoId());
|
|
|
+ detail.setNum(inDetail.getNum());
|
|
|
+ detail.setPrice(inDetail.getPrice());
|
|
|
+ detail.setTotalPrice(inDetail.getTotalPrice());
|
|
|
+ detail.setCreatedTime(LocalDateTime.now());
|
|
|
+ detail.setCreatedUserId(SecurityUtils.getUserInfo().getUserId());
|
|
|
+ detail.setType(InStoreTypeEnum.CAIGOU_RUKU.getValue());
|
|
|
+ detailList.add(detail);
|
|
|
+ }
|
|
|
+ inStoreDetailMapper.insertListforComplex(detailList);
|
|
|
+ }
|
|
|
+
|
|
|
@Override
|
|
|
public PurchaseStoreFormVO getVOById(String id) {
|
|
|
PurchaseStoreForm entity = this.getModelById(id);
|