|
@@ -16,8 +16,10 @@
|
|
*/
|
|
*/
|
|
package com.fjhx.contract.service.impl;
|
|
package com.fjhx.contract.service.impl;
|
|
|
|
|
|
|
|
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
import com.fjhx.contract.entity.PurchaseContract;
|
|
import com.fjhx.contract.entity.PurchaseContract;
|
|
|
|
+import com.fjhx.contract.entity.PurchaseContractMaterial;
|
|
import com.fjhx.contract.enums.PurchaseContractStatusEnum;
|
|
import com.fjhx.contract.enums.PurchaseContractStatusEnum;
|
|
import com.fjhx.contract.mapper.PurchaseContractMapper;
|
|
import com.fjhx.contract.mapper.PurchaseContractMapper;
|
|
import com.fjhx.contract.service.IPurchaseContractFlowService;
|
|
import com.fjhx.contract.service.IPurchaseContractFlowService;
|
|
@@ -38,6 +40,8 @@ import org.springblade.system.user.entity.User;
|
|
import org.springblade.system.user.feign.IUserClient;
|
|
import org.springblade.system.user.feign.IUserClient;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.stereotype.Service;
|
|
import org.springframework.stereotype.Service;
|
|
|
|
+
|
|
|
|
+import java.math.BigDecimal;
|
|
import java.time.LocalDate;
|
|
import java.time.LocalDate;
|
|
import java.util.Date;
|
|
import java.util.Date;
|
|
|
|
|
|
@@ -71,19 +75,31 @@ public class PurchaseContractFlowServiceImpl extends ServiceImpl<PurchaseContrac
|
|
throw new ServiceException("请选择供应商");
|
|
throw new ServiceException("请选择供应商");
|
|
}
|
|
}
|
|
User user = userClient.infoUser(AuthUtil.getUserIdStr());
|
|
User user = userClient.infoUser(AuthUtil.getUserIdStr());
|
|
|
|
+ //查询供应商
|
|
Supplier supplier = iSupplierService.getById(purchaseContract.getSupplierId());
|
|
Supplier supplier = iSupplierService.getById(purchaseContract.getSupplierId());
|
|
|
|
+ //查询合同
|
|
|
|
+ PurchaseContract contract = getById(purchaseContract.getId());
|
|
|
|
+ if(ObjectUtil.isEmpty(contract)){
|
|
|
|
+ throw new ServiceException("合同不存在");
|
|
|
|
+ }
|
|
//计算交货日期 当前时间+供应商账期
|
|
//计算交货日期 当前时间+供应商账期
|
|
if(ObjectUtil.isEmpty(supplier.getAccountDate())){
|
|
if(ObjectUtil.isEmpty(supplier.getAccountDate())){
|
|
purchaseContract.setDeliverTime(new Date());
|
|
purchaseContract.setDeliverTime(new Date());
|
|
}else{
|
|
}else{
|
|
purchaseContract.setDeliverTime(DateUtil.dateAddASub(new Date(),supplier.getAccountDate()));
|
|
purchaseContract.setDeliverTime(DateUtil.dateAddASub(new Date(),supplier.getAccountDate()));
|
|
}
|
|
}
|
|
|
|
+ purchaseContract.setTaxValue(new BigDecimal("0.13"));
|
|
purchaseContract.setApproveBillState(ApplyPurchaseStatusEnum.APPLY_PURCHASE_STATUS_1.getKey());
|
|
purchaseContract.setApproveBillState(ApplyPurchaseStatusEnum.APPLY_PURCHASE_STATUS_1.getKey());
|
|
purchaseContract.setPurContractState(PurchaseContractStatusEnum.APPLY_PURCHASE_STATUS_1.getKey());
|
|
purchaseContract.setPurContractState(PurchaseContractStatusEnum.APPLY_PURCHASE_STATUS_1.getKey());
|
|
updateById(purchaseContract);
|
|
updateById(purchaseContract);
|
|
- String title = "caozj" + " 在" + LocalDate.now() + "日发起了 合同审批流程(单号" + purchaseContract.getPurchaseBillNo() + ")";
|
|
|
|
|
|
+ //修改物料得总价
|
|
|
|
+ PurchaseContractMaterial material = new PurchaseContractMaterial();
|
|
|
|
+ material.setTotalAmount(purchaseContract.getPurchaseTotalAmount());
|
|
|
|
+ material.setPrice(purchaseContract.getPurchasePrice());
|
|
|
|
+ iPurchaseContractMaterialService.update(material,Wrappers.<PurchaseContractMaterial>query().lambda().eq(PurchaseContractMaterial::getPurchaseContractId,purchaseContract.getId()));
|
|
|
|
+ String title = "caozj" + " 在" + LocalDate.now() + "日发起了 合同审批流程(单号" + contract.getPurchaseBillNo() + ")";
|
|
//发起流程
|
|
//发起流程
|
|
- FlowParam param = new FlowParam(title,null,purchaseContract.getId(), FlowTypeEnum.type_2.getValue(),null);
|
|
|
|
|
|
+ FlowParam param = new FlowParam(title,null,null, FlowTypeEnum.type_2.getValue(),purchaseContract.getId());
|
|
try {
|
|
try {
|
|
flowApi.startFlow(param);
|
|
flowApi.startFlow(param);
|
|
}catch (Exception e){
|
|
}catch (Exception e){
|