|
@@ -14,6 +14,9 @@ import com.fjhx.sale.entity.contract.po.ContractProduct;
|
|
|
import com.fjhx.sale.entity.contract.po.ContractProject;
|
|
|
import com.fjhx.sale.entity.contract.po.ContractShipment;
|
|
|
import com.fjhx.sale.entity.sample.po.Sample;
|
|
|
+import com.fjhx.sale.entity.sample.po.SampleProduct;
|
|
|
+import com.fjhx.sale.entity.sample.po.SampleProject;
|
|
|
+import com.fjhx.sale.entity.sample.po.SampleShipment;
|
|
|
import com.fjhx.sale.service.contract.ContractProductService;
|
|
|
import com.fjhx.sale.service.contract.ContractProjectService;
|
|
|
import com.fjhx.sale.service.contract.ContractService;
|
|
@@ -163,6 +166,19 @@ public class ContractUpdateFlow extends FlowDelegate {
|
|
|
//替换新旧数据ID为临时ID
|
|
|
contractService.updateContract(temOldUpContract);
|
|
|
contractService.updateContract(temNewUpContract);
|
|
|
+
|
|
|
+ //查询新数据产品、收费、出货
|
|
|
+ List<Long> newContractProductIds = contractProductService.list(Wrappers.<ContractProduct>query().lambda().select(ContractProduct::getId).eq(ContractProduct::getContractId,businessId)).stream().map(ContractProduct::getId).collect(Collectors.toList());
|
|
|
+ List<Long> newContractProjectIds = contractProjectService.list(Wrappers.<ContractProject>query().lambda().select(ContractProject::getId).eq(ContractProject::getContractId,businessId)).stream().map(ContractProject::getId).collect(Collectors.toList());
|
|
|
+ List<Long> newContractShipmentIds = contractShipmentService.list(Wrappers.<ContractShipment>query().lambda().select(ContractShipment::getId).eq(ContractShipment::getContractId,businessId)).stream().map(ContractShipment::getId).collect(Collectors.toList());
|
|
|
+
|
|
|
+
|
|
|
+ //查询旧数据产品、收费、出货
|
|
|
+ List<Long> oldContractProductIds = contractProductService.list(Wrappers.<ContractProduct>query().lambda().select(ContractProduct::getId).eq(ContractProduct::getContractId,oldContractId)).stream().map(ContractProduct::getId).collect(Collectors.toList());
|
|
|
+ List<Long> oldContractProjectIds = contractProjectService.list(Wrappers.<ContractProject>query().lambda().select(ContractProject::getId).eq(ContractProject::getContractId,oldContractId)).stream().map(ContractProject::getId).collect(Collectors.toList());
|
|
|
+ List<Long> oldContractShipmentIds = contractShipmentService.list(Wrappers.<ContractShipment>query().lambda().select(ContractShipment::getId).eq(ContractShipment::getContractId,oldContractId)).stream().map(ContractShipment::getId).collect(Collectors.toList());
|
|
|
+
|
|
|
+
|
|
|
/**
|
|
|
* 处理新合同---
|
|
|
*/
|
|
@@ -172,11 +188,11 @@ public class ContractUpdateFlow extends FlowDelegate {
|
|
|
newContract.setUpId(temNewId);
|
|
|
contractService.updateContract(newContract);
|
|
|
//修改合同产品相关数据
|
|
|
- contractProductService.update(Wrappers.<ContractProduct>update().lambda().set(ContractProduct::getContractId,oldContractId).eq(ContractProduct::getContractId,businessId));
|
|
|
+ contractProductService.update(Wrappers.<ContractProduct>update().lambda().set(ContractProduct::getContractId,oldContractId).in(ContractProduct::getContractId,newContractProductIds));
|
|
|
//修改合同收费相关数据
|
|
|
- contractProjectService.update(Wrappers.<ContractProject>update().lambda().set(ContractProject::getContractId,oldContractId).eq(ContractProject::getContractId,businessId));
|
|
|
+ contractProjectService.update(Wrappers.<ContractProject>update().lambda().set(ContractProject::getContractId,oldContractId).in(ContractProject::getContractId,newContractProjectIds));
|
|
|
//修改合同出货相关数据
|
|
|
- contractShipmentService.update(Wrappers.<ContractShipment>update().lambda().set(ContractShipment::getContractId,oldContractId).eq(ContractShipment::getContractId,businessId));
|
|
|
+ contractShipmentService.update(Wrappers.<ContractShipment>update().lambda().set(ContractShipment::getContractId,oldContractId).in(ContractShipment::getContractId,newContractShipmentIds));
|
|
|
/**
|
|
|
* 处理旧的合同---
|
|
|
*/
|
|
@@ -186,10 +202,10 @@ public class ContractUpdateFlow extends FlowDelegate {
|
|
|
newContract.setUpId(temOldId);
|
|
|
contractService.updateContract(oldContract);
|
|
|
//修改合同产品相关数据
|
|
|
- contractProductService.update(Wrappers.<ContractProduct>update().lambda().set(ContractProduct::getContractId,businessId).eq(ContractProduct::getContractId,oldContractId));
|
|
|
+ contractProductService.update(Wrappers.<ContractProduct>update().lambda().set(ContractProduct::getContractId,businessId).in(ContractProduct::getContractId,oldContractProductIds));
|
|
|
//修改合同收费相关数据
|
|
|
- contractProjectService.update(Wrappers.<ContractProject>update().lambda().set(ContractProject::getContractId,businessId).eq(ContractProject::getContractId,oldContractId));
|
|
|
+ contractProjectService.update(Wrappers.<ContractProject>update().lambda().set(ContractProject::getContractId,businessId).in(ContractProject::getContractId,oldContractProjectIds));
|
|
|
//修改合同出货相关数据
|
|
|
- contractShipmentService.update(Wrappers.<ContractShipment>update().lambda().set(ContractShipment::getContractId,businessId).eq(ContractShipment::getContractId,oldContractId));
|
|
|
+ contractShipmentService.update(Wrappers.<ContractShipment>update().lambda().set(ContractShipment::getContractId,businessId).in(ContractShipment::getContractId,oldContractShipmentIds));
|
|
|
}
|
|
|
}
|