Compare commits

..

No commits in common. "0a9727920a1849b879e7c659a54886e9b161a9f8" and "c984723eabc2a1252eebaa1e3cdd928919bea25f" have entirely different histories.

3 changed files with 2 additions and 144 deletions

View File

@ -1,142 +0,0 @@
//
// Source code recreated from a .class file by IntelliJ IDEA
// (powered by FernFlower decompiler)
//
package zcgj.zcdev.zcdev.pr.plugin.form;
import java.util.HashSet;
import kd.bos.dataentity.utils.StringUtils;
import kd.bos.list.ListShowParameter;
import kd.bos.orm.query.QFilter;
import kd.ec.basedata.common.enums.ContractStatusEnum;
import kd.ec.basedata.common.enums.PayDirectionEnum;
/**
* 扩展系统标准代码用于优化出库单中合同编码过滤逻辑
*/
public class ContractHelperExt {
private static final String PAYDIRECTION = "paydirection";
private static final String CONTSTATUS = "contstatus";
public ContractHelperExt() {
}
public static void getContractByStatus(String formid, ListShowParameter showParameter, String paydirection) {
QFilter contStatusFilter = getFilter(formid, paydirection);
if (contStatusFilter != null) {
showParameter.getListFilterParameter().getQFilters().add(contStatusFilter);
}
}
public static QFilter getFilter(String formid, String paydirection) {
HashSet contStatusSet;
QFilter contStatusFilter;
QFilter payDirectionFilter;
if (StringUtils.equals(paydirection, PayDirectionEnum.IN.getValue())) {
if (StringUtils.equals(formid, "ec_incomeapply") || StringUtils.equals(formid, "ec_income_register") || StringUtils.equals(formid, "ec_out_invoice") || StringUtils.equals(formid, "ec_in_contfundplan") || StringUtils.equals(formid, "ec_in_finalsettle")) {
contStatusSet = new HashSet(4);
contStatusSet.add(ContractStatusEnum.INDRAFT.getValue());
contStatusSet.add(ContractStatusEnum.INAUDIT.getValue());
contStatusSet.add(ContractStatusEnum.APPROVED.getValue());
if (StringUtils.equals(formid, "ec_in_finalsettle")) {
contStatusSet.add(ContractStatusEnum.CLOSED.getValue());
contStatusSet.add(ContractStatusEnum.OVERSETTLE.getValue());
}
contStatusFilter = new QFilter("contstatus", "not in", contStatusSet);
payDirectionFilter = new QFilter("paydirection", "=", paydirection);
contStatusFilter.and(payDirectionFilter);
return contStatusFilter;
}
if (StringUtils.equals(formid, "ec_in_contract_settle") || StringUtils.equals(formid, "ec_inrevision") || StringUtils.equals(formid, "ec_inclaimbill") || StringUtils.equals(formid, "ec_invisabill") || StringUtils.equals(formid, "ec_clarific") || StringUtils.equals(formid, "ec_in_performrecords") || StringUtils.equals(formid, "ec_incontractmeasure")) {
contStatusSet = new HashSet(6);
contStatusSet.add(ContractStatusEnum.INDRAFT.getValue());
contStatusSet.add(ContractStatusEnum.INAUDIT.getValue());
contStatusSet.add(ContractStatusEnum.APPROVED.getValue());
contStatusSet.add(ContractStatusEnum.PAUSE.getValue());
contStatusSet.add(ContractStatusEnum.RELIEVE.getValue());
contStatusSet.add(ContractStatusEnum.CLOSED.getValue());
contStatusSet.add(ContractStatusEnum.OVERSETTLE.getValue());
contStatusFilter = new QFilter("contstatus", "not in", contStatusSet);
payDirectionFilter = new QFilter("paydirection", "=", paydirection);
contStatusFilter.and(payDirectionFilter);
return contStatusFilter;
}
if (StringUtils.equals(formid, "ec_ecbd_contractboq")) {
contStatusSet = new HashSet(3);
contStatusSet.add(ContractStatusEnum.INDRAFT.getValue());
contStatusSet.add(ContractStatusEnum.INAUDIT.getValue());
contStatusSet.add(ContractStatusEnum.APPROVED.getValue());
contStatusFilter = new QFilter("contstatus", "not in", contStatusSet);
return contStatusFilter;
}
} else if (StringUtils.equals(paydirection, PayDirectionEnum.OUT.getValue())) {
//支出合同
if (!StringUtils.equals(formid, "ec_paymentapply") && !StringUtils.equals(formid, "ec_payment_register") && !StringUtils.equals(formid, "ec_in_invoice") && !StringUtils.equals(formid, "ec_out_contfundplan") && !StringUtils.equals(formid, "ec_out_finalsettle")) {
if (!StringUtils.equals(formid, "ecma_materialinbill") && !StringUtils.equals(formid, "ecma_materialoutbill") && !StringUtils.equals(formid, "ecma_compmatout") && !StringUtils.equals(formid, "ecma_purchaseorderbill") && !StringUtils.equals(formid, "ec_out_contract_settle") && !StringUtils.equals(formid, "ec_outclaimbill") && !StringUtils.equals(formid, "ec_outrevision") && !StringUtils.equals(formid, "ec_out_performrecords") && !StringUtils.equals(formid, "ecma_materialapplybill") && !StringUtils.equals(formid, "ec_outcontractmeasure")) {
return null;
}
contStatusSet = new HashSet(6);
contStatusSet.add(ContractStatusEnum.INDRAFT.getValue());
contStatusSet.add(ContractStatusEnum.INAUDIT.getValue());
contStatusSet.add(ContractStatusEnum.APPROVED.getValue());
contStatusSet.add(ContractStatusEnum.PAUSE.getValue());
contStatusSet.add(ContractStatusEnum.RELIEVE.getValue());
contStatusSet.add(ContractStatusEnum.CLOSED.getValue());
contStatusSet.add(ContractStatusEnum.OVERSETTLE.getValue());
contStatusFilter = new QFilter("contstatus", "not in", contStatusSet);
payDirectionFilter = new QFilter("paydirection", "=", paydirection);
contStatusFilter.and(payDirectionFilter);
QFilter basicTypeFilter;
if (StringUtils.equals(formid, "ecma_materialinbill")) {
basicTypeFilter = new QFilter("conttype.contattr.basictype", "=", "02");
basicTypeFilter.or(new QFilter("conttype.contattr.basictype", "=", "09"));
contStatusFilter.and(basicTypeFilter);
} else if (!StringUtils.equals(formid, "ecma_materialoutbill") && !StringUtils.equals(formid, "ecma_materialapplybill") && !StringUtils.equals(formid, "ecma_compmatout")) {
if (StringUtils.equals(formid, "ecma_purchaseorderbill")) {
basicTypeFilter = new QFilter("contracttype.contattr.basictype", "=", "02");
basicTypeFilter.or("contracttype.contattr.basictype", "=", "09");
contStatusFilter.and(basicTypeFilter);
}
} else {
basicTypeFilter = new QFilter("contracttype.contattr.basictype", "=", "03");
contStatusFilter.and(basicTypeFilter);
}
return contStatusFilter;
}
contStatusSet = new HashSet(4);
contStatusSet.add(ContractStatusEnum.INDRAFT.getValue());
contStatusSet.add(ContractStatusEnum.INAUDIT.getValue());
contStatusSet.add(ContractStatusEnum.APPROVED.getValue());
if (StringUtils.equals(formid, "ec_out_finalsettle")) {
contStatusSet.add(ContractStatusEnum.CLOSED.getValue());
contStatusSet.add(ContractStatusEnum.OVERSETTLE.getValue());
}
if (StringUtils.equals(formid, "ec_paymentapply")) {
contStatusSet.add(ContractStatusEnum.CLOSED.getValue());
}
contStatusFilter = new QFilter("contstatus", "not in", contStatusSet);
payDirectionFilter = new QFilter("paydirection", "=", paydirection);
contStatusFilter.and(payDirectionFilter);
return contStatusFilter;
} else if (StringUtils.equals(formid, "ec_dynamiccontract") || StringUtils.equals(formid, "ec_contract_viewall")) {
contStatusSet = new HashSet(3);
contStatusSet.add(ContractStatusEnum.INDRAFT.getValue());
contStatusSet.add(ContractStatusEnum.INAUDIT.getValue());
contStatusSet.add(ContractStatusEnum.APPROVED.getValue());
contStatusFilter = new QFilter("contstatus", "not in", contStatusSet);
return contStatusFilter;
}
return null;
}
}

View File

@ -1124,7 +1124,7 @@ public class MaterialOutBillEditPluginExt extends AbstractEcmaBillPlugin impleme
formShowParameter.getListFilterParameter().getQFilters().add(new QFilter("project", "=", project.getPkValue()));
}
ContractHelperExt.getContractByStatus("ecma_materialoutbill", formShowParameter, PayDirectionEnum.OUT.getValue());
ContractHelper.getContractByStatus("ecma_materialoutbill", formShowParameter, PayDirectionEnum.OUT.getValue());
}
public void closedCallBack(ClosedCallBackEvent closedcallbackevent) {

View File

@ -16,7 +16,7 @@ public class ContractPublicValidator extends AbstractValidator {
if (dataEntity!=null){
DynamicObject dynamicObject = dataEntity.getDataEntity();
String zcgjPricetype = dynamicObject.getString("zcgj_pricetype");
if (zcgjPricetype != null && zcgjPricetype.equals("gddj")) {
if (zcgjPricetype.equals("gddj")){
DynamicObjectCollection modelEntries = dynamicObject.getDynamicObjectCollection("listmodelentry");
for (DynamicObject object : modelEntries) {
DynamicObjectCollection listingEntries = object.getDynamicObjectCollection("sublistentry");