Merge remote-tracking branch 'origin/dev' into dev

This commit is contained in:
xuhaihui 2025-11-28 10:45:28 +08:00
commit fb2c2b8066
5 changed files with 67 additions and 14 deletions

View File

@ -175,7 +175,7 @@ subprojects {
//} //}
// zcdev-pr.zip // zcdev-pr.zip
task zipPr(type: Zip) { task zipPr(type: Zip,dependsOn: buildJar) {
group 'build' group 'build'
description '将生成的 JAR 和相关文件打包成 zip' description '将生成的 JAR 和相关文件打包成 zip'
@ -202,7 +202,7 @@ subprojects {
} }
// zcdev-fs.zip // zcdev-fs.zip
task zipFs(type: Zip) { task zipFs(type: Zip ,dependsOn: buildJar) {
group 'build' group 'build'
description '将生成的 JAR 和相关文件打包成 zip' description '将生成的 JAR 和相关文件打包成 zip'
@ -229,7 +229,7 @@ subprojects {
} }
// zip // zip
task zipAll(dependsOn: ['buildJar','zipPr', 'zipFs']) { task zipAll(dependsOn: ['clean','buildJar','zipPr', 'zipFs']) {
group 'build' group 'build'
description '同时生成 zcdev-pr.zip 和 zcdev-fs.zip' description '同时生成 zcdev-pr.zip 和 zcdev-fs.zip'
} }
@ -292,7 +292,7 @@ subprojects {
} }
// //
task a_testuploadAll(dependsOn: ['buildJar','zipPr', 'zipFs','testuploadPr', 'testuploadFs']) { task a_testuploadAll(dependsOn: ['buildJar','zipAll','testuploadPr', 'testuploadFs']) {
group 'deploy' group 'deploy'
description '一次构建并上传 PR + FS zip' description '一次构建并上传 PR + FS zip'
} }

View File

@ -353,7 +353,7 @@ public class AimcostcbsbillEditUIExt extends AbstractEccoBillPlugin implements B
entryColl.add(newValue); entryColl.add(newValue);
} }
} }
DynamicObjectCollection newInfundprojectEntry = this.getModel().getDataEntity(true).getDynamicObjectCollection("zcgj_infundproject_entry"); DynamicObjectCollection newInfundprojectEntry = this.getModel().getDataEntity().getDynamicObjectCollection("zcgj_infundproject_entry");
//上期项目收入预算 //上期项目收入预算
DynamicObjectCollection infundprojectEntry = project.getDynamicObjectCollection("zcgj_infundproject_entry"); DynamicObjectCollection infundprojectEntry = project.getDynamicObjectCollection("zcgj_infundproject_entry");
if(!infundprojectEntry.isEmpty()) { if(!infundprojectEntry.isEmpty()) {
@ -364,7 +364,7 @@ public class AimcostcbsbillEditUIExt extends AbstractEccoBillPlugin implements B
dynamicObject1.set("zcgj_in_price",dynamicObject.getBigDecimal("zcgj_in_price")); dynamicObject1.set("zcgj_in_price",dynamicObject.getBigDecimal("zcgj_in_price"));
dynamicObject1.set("zcgj_yearamount",dynamicObject.getBigDecimal("zcgj_yearamount")); dynamicObject1.set("zcgj_yearamount",dynamicObject.getBigDecimal("zcgj_yearamount"));
dynamicObject1.set("zcgj_yearrecamount",dynamicObject.getBigDecimal("zcgj_yearrecamount")); dynamicObject1.set("zcgj_yearrecamount",dynamicObject.getBigDecimal("zcgj_yearrecamount"));
dynamicObject1.set("zcgj_in_remarks",dynamicObject.getBigDecimal("zcgj_in_remarks")); dynamicObject1.set("zcgj_in_remarks",dynamicObject.getString("zcgj_in_remarks"));
dynamicObject1.set("zcgj_in_seq",dynamicObject.getBigDecimal("zcgj_in_seq")); dynamicObject1.set("zcgj_in_seq",dynamicObject.getBigDecimal("zcgj_in_seq"));
} }
@ -467,7 +467,7 @@ public class AimcostcbsbillEditUIExt extends AbstractEccoBillPlugin implements B
super.afterBindData(eventobject); super.afterBindData(eventobject);
this.setUnitProjectMustinput(); this.setUnitProjectMustinput();
this.refershTreeEnable(); this.refershTreeEnable();
this.setSumToRow("treeentryentity", new String[]{"oldamount", "pdamount"}); //this.setSumToRow("treeentryentity", new String[]{"oldamount", "pdamount"});
this.setsubEntryColor(); this.setsubEntryColor();
TreeEntryGrid treeEntry = (TreeEntryGrid) this.getView().getControl("treeentryentity"); TreeEntryGrid treeEntry = (TreeEntryGrid) this.getView().getControl("treeentryentity");
treeEntry.setCollapse(false); treeEntry.setCollapse(false);
@ -717,7 +717,7 @@ public class AimcostcbsbillEditUIExt extends AbstractEccoBillPlugin implements B
DynamicObject currency = this.getModel().getDataEntity().getDynamicObject("currency"); DynamicObject currency = this.getModel().getDataEntity().getDynamicObject("currency");
floatButtomData.put("amount", CurrencyFormatUtil.getAfterFormatString(currency, totalSubAmount)); floatButtomData.put("amount", CurrencyFormatUtil.getAfterFormatString(currency, totalSubAmount));
subentryGrid.setFloatButtomData(floatButtomData); subentryGrid.setFloatButtomData(floatButtomData);
this.setSumToRow("treeentryentity", new String[]{"oldamount", "pdamount"}); //this.setSumToRow("treeentryentity", new String[]{"oldamount", "pdamount"});
} }
protected void setSumToRow(String tbl, String[] cols) { protected void setSumToRow(String tbl, String[] cols) {

View File

@ -455,7 +455,11 @@ public class ContractCostSplitBillPluginExt extends AbstractEccoBillPlugin imple
if (StringUtils.equals("splitbilltype", number)) { if (StringUtils.equals("splitbilltype", number)) {
ComboProp property = (ComboProp) this.getModel().getDataEntityType().findProperty(number); ComboProp property = (ComboProp) this.getModel().getDataEntityType().findProperty(number);
cellValue = property.getItemByName(value.toString()); cellValue = property.getItemByName(value.toString());
} else { }else if(StringUtils.equals("zcgj_costtype", number)){ //二开下拉选择字段导出
cellValue = ((ComboProp) getModel().getProperty("zcgj_costtype")).getItemByName(value.toString());
}else if(StringUtils.equals("zcgj_sectype", number)){
cellValue = ((ComboProp) getModel().getProperty("zcgj_sectype")).getItemByName(value.toString());
}else {
cellValue = value.toString(); cellValue = value.toString();
} }
} else { } else {

View File

@ -115,6 +115,7 @@ public class EquipmentCostSplitFormPluginExt extends EquipmentCardListPlugin{
//二开添加 //二开添加
settleSplit.set("curamount", settleList[i].get("curamount")); settleSplit.set("curamount", settleList[i].get("curamount"));
settleSplit.set("settleid", settleList[i].getPkValue()); settleSplit.set("settleid", settleList[i].getPkValue());
settleSplit.set("zcgj_settlename", settleList[i].getString("billname"));//设备结算单名称
QFilter settleFilter = new QFilter("settlesplitentity.settleno", "=", settleList[i].get("billno")); QFilter settleFilter = new QFilter("settlesplitentity.settleno", "=", settleList[i].get("billno"));
QFilter statusFilter = new QFilter("billstatus", "=", "C"); QFilter statusFilter = new QFilter("billstatus", "=", "C");
DynamicObject[] settleSplits = BusinessDataServiceHelper.load("eceq_costsplit", "settlesplitentity.id,settlesplitentity.cursplitamount,settlesplitentity.settleid", new QFilter[]{settleFilter, statusFilter}); DynamicObject[] settleSplits = BusinessDataServiceHelper.load("eceq_costsplit", "settlesplitentity.id,settlesplitentity.cursplitamount,settlesplitentity.settleid", new QFilter[]{settleFilter, statusFilter});
@ -144,6 +145,7 @@ public class EquipmentCostSplitFormPluginExt extends EquipmentCardListPlugin{
settleSplit.set("cursplitamount", cursplitamount); settleSplit.set("cursplitamount", cursplitamount);
BigDecimal restsplitamount = curamount.subtract(oldAmount).subtract(cursplitamount); BigDecimal restsplitamount = curamount.subtract(oldAmount).subtract(cursplitamount);
settleSplit.set("restsplitamount", restsplitamount); settleSplit.set("restsplitamount", restsplitamount);
// settleSplit.set("remark","折旧");
DynamicObjectCollection entryentityList = settleList[i].getDynamicObjectCollection("entryentity"); DynamicObjectCollection entryentityList = settleList[i].getDynamicObjectCollection("entryentity");
DynamicObject unitProject = settleList[i].getDynamicObject("unitproject"); DynamicObject unitProject = settleList[i].getDynamicObject("unitproject");
DynamicObjectCollection costSplitDetailList = settleSplit.getDynamicObjectCollection("costsplitentity"); DynamicObjectCollection costSplitDetailList = settleSplit.getDynamicObjectCollection("costsplitentity");
@ -212,13 +214,15 @@ public class EquipmentCostSplitFormPluginExt extends EquipmentCardListPlugin{
DynamicObject org = (DynamicObject)this.getModel().getValue("org");//所属组织 DynamicObject org = (DynamicObject)this.getModel().getValue("org");//所属组织
DynamicObject project = (DynamicObject)this.getModel().getValue("project");//工程项目 DynamicObject project = (DynamicObject)this.getModel().getValue("project");//工程项目
DynamicObject splitperiod = (DynamicObject)this.getModel().getValue("splitperiod");//期间 DynamicObject splitperiod = (DynamicObject)this.getModel().getValue("splitperiod");//期间
if(splitperiod ==null){
if(org!=null){ this.getView().showErrorNotification("请选择期间!");
}
if(org!=null && splitperiod != null){
long orgId = org.getLong("id"); long orgId = org.getLong("id");
QFilter filterOrgId = new QFilter("zcgj_entryentity.zcgj_zjuseorg", QCP.equals,orgId); QFilter filterOrgId = new QFilter("zcgj_entryentity.zcgj_zjuseorg", QCP.equals,orgId);
filterOrgId.and(new QFilter("billstatus", QCP.equals,"C")); filterOrgId.and(new QFilter("billstatus", QCP.equals,"C"));
DynamicObject[] equipinfoArray = BusinessDataServiceHelper.load("eceq_equipinfo", DynamicObject[] equipinfoArray = BusinessDataServiceHelper.load("eceq_equipinfo",
"creator,zcgj_entryentity.zcgj_assperiod,zcgj_entryentity.zcgj_headusedept,zcgj_entryentity.zcgj_entrybillno,zcgj_entryentity.zcgj_shareamount", new QFilter[]{filterOrgId}); "creator,zcgj_cbs,zcgj_entryentity.zcgj_assperiod,zcgj_entryentity.zcgj_headusedept,zcgj_entryentity.zcgj_entrybillno,zcgj_entryentity.zcgj_shareamount", new QFilter[]{filterOrgId});
DynamicObject[] loadsettle = BusinessDataServiceHelper.load("eceq_settle", "", DynamicObject[] loadsettle = BusinessDataServiceHelper.load("eceq_settle", "",
new QFilter[]{new QFilter("org", "=", org.getLong("id")) new QFilter[]{new QFilter("org", "=", org.getLong("id"))
@ -237,7 +241,7 @@ public class EquipmentCostSplitFormPluginExt extends EquipmentCardListPlugin{
eceqsettle.set("begindate",monthStartAndEnd.get("start")); eceqsettle.set("begindate",monthStartAndEnd.get("start"));
eceqsettle.set("enddate",monthStartAndEnd.get("end")); eceqsettle.set("enddate",monthStartAndEnd.get("end"));
eceqsettle.set("creator",currentUserId); eceqsettle.set("creator",currentUserId);
eceqsettle.set("billname",org.getString("name")+"设备结算"); eceqsettle.set("billname",org.getString("name")+"设备折旧费");
eceqsettle.set("billstatus","C"); eceqsettle.set("billstatus","C");
int i=0; int i=0;
DynamicObjectCollection entryentity = eceqsettle.getDynamicObjectCollection("entryentity");//设备结算分录 DynamicObjectCollection entryentity = eceqsettle.getDynamicObjectCollection("entryentity");//设备结算分录
@ -245,6 +249,7 @@ public class EquipmentCostSplitFormPluginExt extends EquipmentCardListPlugin{
for (DynamicObject equipinfo : equipinfoArray) {//设备详情 for (DynamicObject equipinfo : equipinfoArray) {//设备详情
DynamicObject eceqequipmentinfo = BusinessDataServiceHelper.loadSingle(equipinfo.getLong("id"), "eceq_equipment_info"); DynamicObject eceqequipmentinfo = BusinessDataServiceHelper.loadSingle(equipinfo.getLong("id"), "eceq_equipment_info");
DynamicObjectCollection dynamicObjectCollection = equipinfo.getDynamicObjectCollection("zcgj_entryentity");//设备详情折旧信息分录 DynamicObjectCollection dynamicObjectCollection = equipinfo.getDynamicObjectCollection("zcgj_entryentity");//设备详情折旧信息分录
DynamicObject zcgjCbs = equipinfo.getDynamicObject("zcgj_cbs");
for (DynamicObject dynamicObject : dynamicObjectCollection) { for (DynamicObject dynamicObject : dynamicObjectCollection) {
DynamicObject zcgjAssperiod = dynamicObject.getDynamicObject("zcgj_assperiod"); DynamicObject zcgjAssperiod = dynamicObject.getDynamicObject("zcgj_assperiod");
if(zcgjAssperiod!=null && zcgjAssperiod.getString("number").equals(periodNumber)){ if(zcgjAssperiod!=null && zcgjAssperiod.getString("number").equals(periodNumber)){
@ -253,13 +258,13 @@ public class EquipmentCostSplitFormPluginExt extends EquipmentCardListPlugin{
allAmount=allAmount.add(zcgjShareamount); allAmount=allAmount.add(zcgjShareamount);
entryentityentity.set("usestartdate",monthStartAndEnd.get("start"));//单价 entryentityentity.set("usestartdate",monthStartAndEnd.get("start"));//单价
entryentityentity.set("useenddate",monthStartAndEnd.get("end"));//单价 entryentityentity.set("useenddate",monthStartAndEnd.get("end"));//单价
entryentityentity.set("unitprice",zcgjShareamount);//单价 entryentityentity.set("unitprice",zcgjShareamount);//单价
entryentityentity.set("amount",zcgjShareamount);//金额 entryentityentity.set("amount",zcgjShareamount);//金额
entryentityentity.set("taxprice",zcgjShareamount);//含税单价 entryentityentity.set("taxprice",zcgjShareamount);//含税单价
entryentityentity.set("taxamount",zcgjShareamount);//含税金额 entryentityentity.set("taxamount",zcgjShareamount);//含税金额
entryentityentity.set("accountnum",1);//核算数量 entryentityentity.set("accountnum",1);//核算数量
entryentityentity.set("equipment",eceqequipmentinfo);//设备名称 entryentityentity.set("equipment",eceqequipmentinfo);//设备名称
entryentityentity.set("procbs",zcgjCbs);//成本分解结构
entryentityentity.set("zcgj_sectype1","30.20");//设备名称 entryentityentity.set("zcgj_sectype1","30.20");//设备名称
i++; i++;
} }

View File

@ -0,0 +1,44 @@
//
// Source code recreated from a .class file by IntelliJ IDEA
// (powered by FernFlower decompiler)
//
package zcgj.zcdev.zcdev.pr.plugin.operate;
import kd.bos.dataentity.entity.DynamicObject;
import kd.bos.entity.plugin.AbstractOperationServicePlugIn;
import kd.bos.entity.plugin.args.EndOperationTransactionArgs;
import kd.bos.servicehelper.BusinessDataServiceHelper;
import kd.bos.servicehelper.operation.SaveServiceHelper;
import java.util.HashSet;
import java.util.Set;
//项目成本核算反审核插件
public class AimCostUnauditOp extends AbstractOperationServicePlugIn {
public void endOperationTransaction(EndOperationTransactionArgs e) {
String operationKey = e.getOperationKey();
DynamicObject[] dataEntities = e.getDataEntities();
switch (operationKey) {
case "unaudit":
this.updateisenable(dataEntities);
}
}
//反写有效标志
protected void updateisenable(DynamicObject[] dataEntities) {
Set<DynamicObject> updateBills = new HashSet();
for (DynamicObject dataEntity : dataEntities) {
long dataId = dataEntity.getLong("id");
DynamicObject aimcostbillcbs = BusinessDataServiceHelper.loadSingle(dataId, "ecco_aimcostbillcbs", "isenable");
aimcostbillcbs.set("isenable",false);
updateBills.add(aimcostbillcbs);
}
if (!updateBills.isEmpty()) {
SaveServiceHelper.update((DynamicObject[])updateBills.toArray(new DynamicObject[0]));
}
}
}