|
|
@@ -19,7 +19,6 @@ import com.usoftchina.saas.purchase.service.PurchaseService;
|
|
|
import com.usoftchina.saas.utils.BeanMapper;
|
|
|
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
-import org.springframework.context.annotation.Bean;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
import org.springframework.util.StringUtils;
|
|
|
|
|
|
@@ -68,8 +67,8 @@ public class PurchaseServiceImpl extends CommonBaseServiceImpl<PurchaseMapper, P
|
|
|
//将purchase实体对象转化成传输对象
|
|
|
PurchaseDTO main = BeanMapper.map(purchase, PurchaseDTO.class);
|
|
|
//查询从表
|
|
|
- List<PurchaseItem> purchaseItems = purchasedetailMapper.selectByFK(id);
|
|
|
- List<PurchaseItemDTO> items = BeanMapper.mapList(purchaseItems, PurchaseItemDTO.class);
|
|
|
+ List<PurchaseDetail> purchaseDetails = purchasedetailMapper.selectByFK(id);
|
|
|
+ List<PurchaseDetailDTO> items = BeanMapper.mapList(purchaseDetails, PurchaseDetailDTO.class);
|
|
|
purchaseFormDTO.setMain(main);
|
|
|
purchaseFormDTO.setItems(items);
|
|
|
return purchaseFormDTO;
|
|
|
@@ -83,17 +82,17 @@ public class PurchaseServiceImpl extends CommonBaseServiceImpl<PurchaseMapper, P
|
|
|
|
|
|
//获取主表信息
|
|
|
PurchaseDTO main = formdata.getMain();
|
|
|
- List<PurchaseItemDTO> items = formdata.getItems();
|
|
|
+ List<PurchaseDetailDTO> items = formdata.getItems();
|
|
|
//插入从表数据
|
|
|
- List<PurchaseItem> insertDetails = new ArrayList<>();
|
|
|
+ List<PurchaseDetail> insertDetails = new ArrayList<>();
|
|
|
//更新从表数据
|
|
|
- List<PurchaseItem> updateDetails = new ArrayList<>();
|
|
|
+ List<PurchaseDetail> updateDetails = new ArrayList<>();
|
|
|
DocSavedDTO saveDTO = new DocSavedDTO();
|
|
|
Long pu_id = main.getId();
|
|
|
String pu_code = main.getPu_code();
|
|
|
Purchase purchase = BeanMapper.map(main, Purchase.class);
|
|
|
|
|
|
- //编号获取
|
|
|
+ //编号获取 到时候确定处理
|
|
|
if (StringUtils.isEmpty(pu_code)) {
|
|
|
pu_code = "PU" + Math.random() * 1000;
|
|
|
purchase.setPu_code(pu_code);
|
|
|
@@ -104,8 +103,8 @@ public class PurchaseServiceImpl extends CommonBaseServiceImpl<PurchaseMapper, P
|
|
|
//更新主表
|
|
|
purchaseMapper.updateByPrimaryKeySelective(purchase);
|
|
|
//添加从表传输对象
|
|
|
- for (PurchaseItemDTO item : items) {
|
|
|
- PurchaseItem detail = BeanMapper.map(item, PurchaseItem.class);
|
|
|
+ for (PurchaseDetailDTO item : items) {
|
|
|
+ PurchaseDetail detail = BeanMapper.map(item, PurchaseDetail.class);
|
|
|
detail.setPd_puid(pu_id);
|
|
|
detail.setPd_code(pu_code);
|
|
|
if (!StringUtils.isEmpty(detail.getId())) {
|
|
|
@@ -130,8 +129,8 @@ public class PurchaseServiceImpl extends CommonBaseServiceImpl<PurchaseMapper, P
|
|
|
purchaseMapper.insertSelective(purchase);
|
|
|
pu_id = purchase.getId();
|
|
|
//添加从表传输对象
|
|
|
- for (PurchaseItemDTO item : items) {
|
|
|
- PurchaseItem detail = BeanMapper.map(item, PurchaseItem.class);
|
|
|
+ for (PurchaseDetailDTO item : items) {
|
|
|
+ PurchaseDetail detail = BeanMapper.map(item, PurchaseDetail.class);
|
|
|
detail.setPd_puid(pu_id);
|
|
|
detail.setPd_code(pu_code);
|
|
|
insertDetails.add(detail);
|
|
|
@@ -150,7 +149,7 @@ public class PurchaseServiceImpl extends CommonBaseServiceImpl<PurchaseMapper, P
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
- public int deleteItem(Long id) {
|
|
|
+ public int deleteDetail(Long id) {
|
|
|
return purchasedetailMapper.deleteByPrimaryKey(id);
|
|
|
}
|
|
|
|
|
|
@@ -194,6 +193,32 @@ public class PurchaseServiceImpl extends CommonBaseServiceImpl<PurchaseMapper, P
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ @Override
|
|
|
+ public void unAudit(Long id) {
|
|
|
+ if (null == id) {
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ String code = purchaseMapper.validateUnAudit(id);
|
|
|
+ if (null != code) {
|
|
|
+ throw new BizException(500, "单据:" + code + " 未审核,无法反审核");
|
|
|
+ }
|
|
|
+ singleUnAudit(id);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void batchUnAudit(BatchDealBaseDTO baseDTOs) {
|
|
|
+ if (null == baseDTOs || null == baseDTOs.getBaseDTOs() ||
|
|
|
+ baseDTOs.getBaseDTOs().size() == 0)
|
|
|
+ return;
|
|
|
+ String msg = purchaseMapper.validateBatchUnAudit(baseDTOs.getBaseDTOs());
|
|
|
+ if (null != msg) {
|
|
|
+ throw new BizException(500, "存在未审核单据,单据编号:" + msg);
|
|
|
+ }
|
|
|
+ for (DocBaseDTO base : baseDTOs.getBaseDTOs()) {
|
|
|
+ singleUnAudit(base.getId());
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
private void singleAudit(Long id) {
|
|
|
Purchase purchase = new Purchase();
|
|
|
//生成更新对象
|
|
|
@@ -207,6 +232,17 @@ public class PurchaseServiceImpl extends CommonBaseServiceImpl<PurchaseMapper, P
|
|
|
productApi.updateLatestPurchasePrice(id);
|
|
|
}
|
|
|
|
|
|
+ private void singleUnAudit(Long id) {
|
|
|
+ Purchase purchase = new Purchase();
|
|
|
+ //生成更新对象
|
|
|
+ purchase.setId(id);
|
|
|
+ purchase.setPu_status(Status.UNAUDITED.getDisplay());
|
|
|
+ purchase.setPu_statuscode(Status.UNAUDITED.name());
|
|
|
+ purchase.setUpdateTime(new Date());
|
|
|
+ //更新存在字段
|
|
|
+ purchaseMapper.updateByPrimaryKeySelective(purchase);
|
|
|
+ }
|
|
|
+
|
|
|
private void singleDelete(Long id) {
|
|
|
if (null != id) {
|
|
|
//从表删除
|
|
|
@@ -218,7 +254,7 @@ public class PurchaseServiceImpl extends CommonBaseServiceImpl<PurchaseMapper, P
|
|
|
|
|
|
private List<PurchaseList> getListByMode(PurchaseReqDTO req) {
|
|
|
List<PurchaseList> list = null;
|
|
|
- if (null == req || StringUtils.isEmpty(req.getMode()) || "Main".equals(req.getMode())) {
|
|
|
+ if (null == req || StringUtils.isEmpty(req.getMode()) || "MAIN".equals(req.getMode())) {
|
|
|
list = purchaseListMapper.selectPurchaseBycondition(req);
|
|
|
} else {
|
|
|
list = purchaseListMapper.selectPurchaseListByCondition(req);
|