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
task zipPr(type: Zip) {
task zipPr(type: Zip,dependsOn: buildJar) {
group 'build'
description '将生成的 JAR 和相关文件打包成 zip'
@ -202,7 +202,7 @@ subprojects {
}
// zcdev-fs.zip
task zipFs(type: Zip) {
task zipFs(type: Zip ,dependsOn: buildJar) {
group 'build'
description '将生成的 JAR 和相关文件打包成 zip'
@ -229,7 +229,7 @@ subprojects {
}
// zip
task zipAll(dependsOn: ['buildJar','zipPr', 'zipFs']) {
task zipAll(dependsOn: ['clean','buildJar','zipPr', 'zipFs']) {
group 'build'
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'
description '一次构建并上传 PR + FS zip'
}

View File

@ -353,7 +353,7 @@ public class AimcostcbsbillEditUIExt extends AbstractEccoBillPlugin implements B
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");
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_yearamount",dynamicObject.getBigDecimal("zcgj_yearamount"));
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"));
}
@ -467,7 +467,7 @@ public class AimcostcbsbillEditUIExt extends AbstractEccoBillPlugin implements B
super.afterBindData(eventobject);
this.setUnitProjectMustinput();
this.refershTreeEnable();
this.setSumToRow("treeentryentity", new String[]{"oldamount", "pdamount"});
//this.setSumToRow("treeentryentity", new String[]{"oldamount", "pdamount"});
this.setsubEntryColor();
TreeEntryGrid treeEntry = (TreeEntryGrid) this.getView().getControl("treeentryentity");
treeEntry.setCollapse(false);
@ -717,7 +717,7 @@ public class AimcostcbsbillEditUIExt extends AbstractEccoBillPlugin implements B
DynamicObject currency = this.getModel().getDataEntity().getDynamicObject("currency");
floatButtomData.put("amount", CurrencyFormatUtil.getAfterFormatString(currency, totalSubAmount));
subentryGrid.setFloatButtomData(floatButtomData);
this.setSumToRow("treeentryentity", new String[]{"oldamount", "pdamount"});
//this.setSumToRow("treeentryentity", new String[]{"oldamount", "pdamount"});
}
protected void setSumToRow(String tbl, String[] cols) {

View File

@ -455,7 +455,11 @@ public class ContractCostSplitBillPluginExt extends AbstractEccoBillPlugin imple
if (StringUtils.equals("splitbilltype", number)) {
ComboProp property = (ComboProp) this.getModel().getDataEntityType().findProperty(number);
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();
}
} else {

View File

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