From 2c70e232afab95fb95892d821330fcc992e5e9e8 Mon Sep 17 00:00:00 2001 From: "XI_TENG\\xixi_" <971623072> Date: Tue, 16 Jul 2024 15:13:48 +0800 Subject: [PATCH] =?UTF-8?q?=E5=90=88=E5=90=8C=E5=AD=90=E8=A1=A8=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/jnpf/service/ContractLService.java | 5 + .../service/impl/ContractLServiceImpl.java | 61 ++ .../service/impl/ReceiptOrderServiceImpl.java | 5 +- .../jnpf/controller/ContractLController.java | 52 ++ .../jnpf/model/contractl/ContractLForm.java | 4 + .../model/contractl/ContractLPagination.java | 2 + .../contractl/ContractRelationModel.java | 29 + .../src/views/scm/contractL/index.vue | 35 +- .../contractLRelation/formContractBatch.vue | 588 +++++------------- .../views/scm/publicPopup/ContractLBox.vue | 150 +++++ .../scm/publicPopup/InspectionVoucherOnly.vue | 6 +- 11 files changed, 489 insertions(+), 448 deletions(-) create mode 100644 jnpf-java-boot/jnpf-scm/jnpf-scm-entity/src/main/java/jnpf/model/contractl/ContractRelationModel.java create mode 100644 jnpf-java-boot/jnpf-web/src/views/scm/publicPopup/ContractLBox.vue diff --git a/jnpf-java-boot/jnpf-scm/jnpf-scm-biz/src/main/java/jnpf/service/ContractLService.java b/jnpf-java-boot/jnpf-scm/jnpf-scm-biz/src/main/java/jnpf/service/ContractLService.java index bbe6b4c3..2369be57 100644 --- a/jnpf-java-boot/jnpf-scm/jnpf-scm-biz/src/main/java/jnpf/service/ContractLService.java +++ b/jnpf-java-boot/jnpf-scm/jnpf-scm-biz/src/main/java/jnpf/service/ContractLService.java @@ -43,9 +43,14 @@ public interface ContractLService extends IService { List getContractLPaymentList(String id); + List getContractRelationList(String id); + //副表数据方法 String checkForm(ContractLForm form,int i); void saveOrUpdate(ContractLForm contractLForm,String id, boolean isSave) throws Exception; + void saveOrUpdateContract(ContractLForm contractLForm,String id, boolean isSave) throws Exception; + + } diff --git a/jnpf-java-boot/jnpf-scm/jnpf-scm-biz/src/main/java/jnpf/service/impl/ContractLServiceImpl.java b/jnpf-java-boot/jnpf-scm/jnpf-scm-biz/src/main/java/jnpf/service/impl/ContractLServiceImpl.java index a200b913..7176acf8 100644 --- a/jnpf-java-boot/jnpf-scm/jnpf-scm-biz/src/main/java/jnpf/service/impl/ContractLServiceImpl.java +++ b/jnpf-java-boot/jnpf-scm/jnpf-scm-biz/src/main/java/jnpf/service/impl/ContractLServiceImpl.java @@ -61,6 +61,8 @@ public class ContractLServiceImpl extends ServiceImpl 0){ + contractLNum++; + contractLQueryWrapper.notIn("a.contract_number",contractLPagination.getExcludeIdList()); + } + + if(ObjectUtil.isNotEmpty(contractLPagination.getContractName())){ contractLNum++; @@ -553,6 +567,14 @@ public class ContractLServiceImpl extends ServiceImpl getContractRelationList(String id) { + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.lambda().eq(ContractRelationEntity::getBusinessId, id); + return contractRelationService.list(queryWrapper); + } + /** 验证表单唯一字段,正则,非空 i-0新增-1修改*/ @Override public String checkForm(ContractLForm form,int i) { @@ -679,4 +701,43 @@ public class ContractLServiceImpl extends ServiceImpl contractRelationQueryWrapper = new QueryWrapper<>(); + contractRelationQueryWrapper.lambda().eq(ContractRelationEntity::getBusinessId, entity.getId()); + contractRelationService.remove(contractRelationQueryWrapper); + } + if (contractLForm.getContractRelationList()!=null){ + List tableField1531 = JsonUtil.getJsonToList(contractLForm.getContractRelationList(),ContractRelationEntity.class); + for(ContractRelationEntity entitys : tableField1531){ + entitys.setId(RandomUtil.uuId()); + entitys.setBusinessId(entity.getId()); + if(isSave){ + }else{ + } + contractRelationService.saveOrUpdate(entitys); + } + } + } } diff --git a/jnpf-java-boot/jnpf-scm/jnpf-scm-biz/src/main/java/jnpf/service/impl/ReceiptOrderServiceImpl.java b/jnpf-java-boot/jnpf-scm/jnpf-scm-biz/src/main/java/jnpf/service/impl/ReceiptOrderServiceImpl.java index c3439c70..8dfcffeb 100644 --- a/jnpf-java-boot/jnpf-scm/jnpf-scm-biz/src/main/java/jnpf/service/impl/ReceiptOrderServiceImpl.java +++ b/jnpf-java-boot/jnpf-scm/jnpf-scm-biz/src/main/java/jnpf/service/impl/ReceiptOrderServiceImpl.java @@ -505,7 +505,10 @@ public class ReceiptOrderServiceImpl extends ServiceImpl contractLMap=JsonUtil.entityToMap(entity); + contractLMap.put("id", contractLMap.get("id")); + //副表数据 + //子表数据 +// List contractLPriceFormulaList = contractLService.getContractLPriceFormulaList(entity.getId()); +// contractLMap.put("contractLPriceFormulaList",JsonUtil.getJsonToList(JsonUtil.getListToJsonArray(contractLPriceFormulaList))); +// List contractLCommodityList = contractLService.getContractLCommodityList(entity.getId()); +// contractLMap.put("contractLCommodityList",JsonUtil.getJsonToList(JsonUtil.getListToJsonArray(contractLCommodityList))); +// List contractLFeeClauseList = contractLService.getContractLFeeClauseList(entity.getId()); +// contractLMap.put("contractLFeeClauseList",JsonUtil.getJsonToList(JsonUtil.getListToJsonArray(contractLFeeClauseList))); +// List contractLPaymentList = contractLService.getContractLPaymentList(entity.getId()); +// contractLMap.put("contractLPaymentList",JsonUtil.getJsonToList(JsonUtil.getListToJsonArray(contractLPaymentList))); + List contractRelationList = contractLService.getContractRelationList(entity.getId()); + contractLMap.put("contractRelationList",JsonUtil.getJsonToList(JsonUtil.getListToJsonArray(contractRelationList))); + + contractLMap = generaterSwapUtil.swapDataForm(contractLMap,ContractLConstant.getFormData(),ContractLConstant.TABLEFIELDKEY,ContractLConstant.TABLERENAMES); + return ActionResult.success(contractLMap); + } + + + /** + * 合同关联 + * + * @param contractLForm + * @return + */ + @PutMapping("/batch/{id}") + @Operation(summary = "更新") + public ActionResult update1(@PathVariable("id") String id,@RequestBody @Valid ContractLForm contractLForm, + @RequestParam(value = "isImport", required = false) boolean isImport){ + try{ + contractLService.saveOrUpdateContract(contractLForm, id ,false); + }catch(Exception e){ + return ActionResult.fail("修改数据失败"); + } + return ActionResult.success("修改成功"); + } } diff --git a/jnpf-java-boot/jnpf-scm/jnpf-scm-entity/src/main/java/jnpf/model/contractl/ContractLForm.java b/jnpf-java-boot/jnpf-scm/jnpf-scm-entity/src/main/java/jnpf/model/contractl/ContractLForm.java index 38af87ad..cdfb5495 100644 --- a/jnpf-java-boot/jnpf-scm/jnpf-scm-entity/src/main/java/jnpf/model/contractl/ContractLForm.java +++ b/jnpf-java-boot/jnpf-scm/jnpf-scm-entity/src/main/java/jnpf/model/contractl/ContractLForm.java @@ -1,5 +1,6 @@ package jnpf.model.contractl; +import jnpf.model.contractrelation.ContractRelationForm; import lombok.Data; import java.util.List; import java.math.BigDecimal; @@ -28,6 +29,9 @@ public class ContractLForm { /** 子表数据 **/ @JsonProperty("contractLPaymentList") private List contractLPaymentList; + /** 子表数据 **/ + @JsonProperty("contractRelationList") + private List contractRelationList; /** 乐观锁 **/ @JsonProperty("version") private Integer version; diff --git a/jnpf-java-boot/jnpf-scm/jnpf-scm-entity/src/main/java/jnpf/model/contractl/ContractLPagination.java b/jnpf-java-boot/jnpf-scm/jnpf-scm-entity/src/main/java/jnpf/model/contractl/ContractLPagination.java index c77645be..f20daa44 100644 --- a/jnpf-java-boot/jnpf-scm/jnpf-scm-entity/src/main/java/jnpf/model/contractl/ContractLPagination.java +++ b/jnpf-java-boot/jnpf-scm/jnpf-scm-entity/src/main/java/jnpf/model/contractl/ContractLPagination.java @@ -36,4 +36,6 @@ public class ContractLPagination extends Pagination { /** 合同名称 */ @JsonProperty("contractName") private Object contractName; + @JsonProperty("excludeIdList") + private List excludeIdList; } diff --git a/jnpf-java-boot/jnpf-scm/jnpf-scm-entity/src/main/java/jnpf/model/contractl/ContractRelationModel.java b/jnpf-java-boot/jnpf-scm/jnpf-scm-entity/src/main/java/jnpf/model/contractl/ContractRelationModel.java new file mode 100644 index 00000000..00f8a367 --- /dev/null +++ b/jnpf-java-boot/jnpf-scm/jnpf-scm-entity/src/main/java/jnpf/model/contractl/ContractRelationModel.java @@ -0,0 +1,29 @@ +package jnpf.model.contractl; + +import com.alibaba.fastjson.annotation.JSONField; +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.Data; + +/** + * contractRelation + * @版本: V3.5 + * @版权: 引迈信息技术有限公司(https://www.jnpfsoft.com) + * @作者: JNPF开发平台组 + * @日期: 2024-07-15 + */ +@Data +public class ContractRelationModel { + /** 主表id **/ + @JSONField(name = "businessId") + private Object businessId; + + /** 合同编码 **/ + @JSONField(name = "purchaseContractCode") + private Object purchaseContractCode; + /** 合同名称 **/ + @JSONField(name = "purchaseContractName") + private Object purchaseContractName; + /** 对方合同号 **/ + @JSONField(name = "purchaseContractNo") + private Object purchaseContractNo; +} diff --git a/jnpf-java-boot/jnpf-web/src/views/scm/contractL/index.vue b/jnpf-java-boot/jnpf-web/src/views/scm/contractL/index.vue index 4cc77ae3..0f10da8b 100644 --- a/jnpf-java-boot/jnpf-web/src/views/scm/contractL/index.vue +++ b/jnpf-java-boot/jnpf-web/src/views/scm/contractL/index.vue @@ -43,7 +43,6 @@ - + type="text" @click="addContractList(scope.row.id)" v-has="'btn_edit'">销售合同关联 + @@ -367,17 +366,23 @@ export default { }, methods: { - addContractList() { + addContractList(id) { debugger - if (!this.multipleSelectionItem.length) { - this.$message({ - type: 'error', - message: '请选择一条数据', - duration: 1500, - }) - return - } - const selectData = this.multipleSelectionItem + // if (!this.multipleSelectionItem.length) { + // this.$message({ + // type: 'error', + // message: '请选择一条数据', + // duration: 1500, + // }) + // return + // } + + // const selectData = this.multipleSelectionItem + + const selectData = id + const moshi = selectData[0].contractType; + const leixi = selectData[0].procurementModel; + this.contractListVisible = true this.$nextTick(() => { this.$refs.ContractList.initContractData(selectData) diff --git a/jnpf-java-boot/jnpf-web/src/views/scm/contractLRelation/formContractBatch.vue b/jnpf-java-boot/jnpf-web/src/views/scm/contractLRelation/formContractBatch.vue index 76a920d7..996884f4 100644 --- a/jnpf-java-boot/jnpf-web/src/views/scm/contractLRelation/formContractBatch.vue +++ b/jnpf-java-boot/jnpf-web/src/views/scm/contractLRelation/formContractBatch.vue @@ -34,316 +34,150 @@ - + + - - - + + + - - + + - - - + + + + - - + + - - - - - - + - - - + + + - - - - + + + + + +

- + - + + - - - - - + + - - - - - - - - - - - - - - - - - - - - - - - - - + + - - - - - - - - - - - - - - - - - - - - - + + - - - - - - - - - + + - + + +