This commit is contained in:
xuhaihui 2025-11-28 14:56:15 +08:00
parent 31f67bd356
commit 58b5dcb946
1 changed files with 745 additions and 0 deletions

View File

@ -0,0 +1,745 @@
//
// Source code recreated from a .class file by IntelliJ IDEA
// (powered by FernFlower decompiler)
//
package zcgj.zcdev.zcdev.pr.plugin.form;
import java.math.BigDecimal;
import java.util.Arrays;
import java.util.Calendar;
import java.util.Date;
import java.util.EventObject;
import java.util.List;
import kd.bos.bill.AbstractBillPlugIn;
import kd.bos.dataentity.entity.DynamicObject;
import kd.bos.dataentity.resource.ResManager;
import kd.bos.dataentity.utils.StringUtils;
import kd.bos.entity.datamodel.ListSelectedRowCollection;
import kd.bos.entity.datamodel.events.ChangeData;
import kd.bos.entity.datamodel.events.PropertyChangedArgs;
import kd.bos.form.ConfirmCallBackListener;
import kd.bos.form.MessageBoxOptions;
import kd.bos.form.MessageBoxResult;
import kd.bos.form.events.AfterDoOperationEventArgs;
import kd.bos.form.events.BeforeDoOperationEventArgs;
import kd.bos.form.events.MessageBoxClosedEvent;
import kd.bos.form.field.BasedataEdit;
import kd.bos.form.field.DateEdit;
import kd.bos.form.field.events.AfterF7SelectEvent;
import kd.bos.form.field.events.AfterF7SelectListener;
import kd.bos.form.field.events.BeforeF7SelectEvent;
import kd.bos.form.field.events.BeforeF7SelectListener;
import kd.bos.form.operate.FormOperate;
import kd.bos.list.ListShowParameter;
import kd.bos.orm.query.QFilter;
import kd.bos.servicehelper.BusinessDataServiceHelper;
import kd.ec.basedata.common.utils.EcDateUtils;
import kd.ec.eceq.common.enums.EquipSettleObjectTypeEnum;
import kd.ec.eceq.formplugin.EquipSettleAutoFillHandler;
import kd.ec.eceq.formplugin.EquipSettlePriceSelectHandler;
import kd.ec.eceq.formplugin.util.EntryUtil;
public class EquipSettleFormPluginExt extends AbstractBillPlugIn implements BeforeF7SelectListener, AfterF7SelectListener {
protected static final String OP_NEW_ENTRY = "newentry";
protected static final String OP_AUTO = "auto";
public EquipSettleFormPluginExt() {
}
public void afterCreateNewData(EventObject e) {
this.initSettlePeriod();
EntryUtil.clearEntryData(this);
}
public void afterBindData(EventObject e) {
super.afterBindData(e);
this.initSettleObjectType();
this.initIsCost();
this.setCostMustInput();
}
protected void initIsCost() {
Boolean isCost = (Boolean) this.getModel().getValue("iscost");
BasedataEdit control = (BasedataEdit) this.getView().getControl("contract");
if (isCost) {
if (control != null) {
control.setMustInput(true);
}
} else if (control != null) {
control.setMustInput(false);
}
}
protected void initSettleObjectType() {
String objectType = this.getCurSettleObjectType();
if (StringUtils.isEmpty(objectType)) {
objectType = EquipSettleObjectTypeEnum.INTERNAL_ORG.getVal();
}
this.showSettleObjectType(objectType);
}
protected void initSettlePeriod() {
Calendar cal = Calendar.getInstance();
int year = cal.get(1);
int month = cal.get(2) + 1;
QFilter yearFilter = new QFilter("periodyear", "=", year);
QFilter monthFilter = new QFilter("periodnumber", "=", month);
DynamicObject[] peridoArr = BusinessDataServiceHelper.load("bd_period", "number,name,periodyear,periodnumber,begindate,enddate", new QFilter[]{yearFilter, monthFilter});
if (peridoArr.length != 0) {
DynamicObject period = peridoArr[0];
this.getModel().setValue("period", period);
this.updateTimeByPeriod(period);
this.updateTimeRange(period);
}
}
protected void updateTimeByPeriod(DynamicObject period) {
if (period != null) {
Date beginDate = period.getDate("begindate");
if (beginDate != null) {
this.getModel().setValue("begindate", beginDate);
}
Date endDate = period.getDate("enddate");
if (endDate != null) {
this.getModel().setValue("enddate", endDate);
}
}
}
protected void showSettleObjectType(String typeVal) {
if (!StringUtils.isEmpty(typeVal)) {
if (EquipSettleObjectTypeEnum.INTERNAL_ORG.getVal().equals(typeVal)) {
this.getView().setVisible(true, new String[]{"internalorg"});
this.setMustInput("internalorg", true);
this.getView().setVisible(false, new String[]{"externalunit"});
this.setMustInput("externalunit", false);
this.getModel().setValue("externalunit", (Object) null);
} else {
this.getView().setVisible(false, new String[]{"internalorg"});
this.setMustInput("internalorg", false);
this.getModel().setValue("internalorg", (Object) null);
this.setMustInput("externalunit", true);
this.getView().setVisible(true, new String[]{"externalunit"});
}
}
}
protected void setMustInput(String tag, Boolean must) {
BasedataEdit basedataEdit = (BasedataEdit) this.getControl(tag);
if (basedataEdit != null) {
basedataEdit.setMustInput(must);
}
}
public void registerListener(EventObject e) {
super.registerListener(e);
BasedataEdit equipmentEdit = (BasedataEdit) this.getControl("equipment");
if (equipmentEdit != null) {
equipmentEdit.addBeforeF7SelectListener(this);
equipmentEdit.addAfterF7SelectListener(this);
}
BasedataEdit contractEdit = (BasedataEdit) this.getControl("contract");
if (contractEdit != null) {
contractEdit.addBeforeF7SelectListener(this);
}
BasedataEdit ca = (BasedataEdit) this.getControl("ca");
if (ca != null) {
ca.addBeforeF7SelectListener(this);
}
BasedataEdit boq = (BasedataEdit) this.getControl("proboq");
if (boq != null) {
boq.addBeforeF7SelectListener(this);
}
BasedataEdit cbs = (BasedataEdit) this.getControl("procbs");
if (cbs != null) {
cbs.addBeforeF7SelectListener(this);
}
}
public void beforeF7Select(BeforeF7SelectEvent beforeF7SelectEvent) {
switch (beforeF7SelectEvent.getProperty().getName()) {
case "equipment":
this.beforeEquipmentF7Selected(beforeF7SelectEvent);
break;
case "contract":
this.beforeContractF7Selected(beforeF7SelectEvent);
break;
case "ca":
this.beforeCAF7Selected(beforeF7SelectEvent);
break;
case "proboq":
this.beforeBOQF7Selected(beforeF7SelectEvent);
break;
case "procbs":
this.beforeCBSF7Selected(beforeF7SelectEvent);
}
}
public void afterF7Select(AfterF7SelectEvent afterF7SelectEvent) {
BasedataEdit basedataEdit = (BasedataEdit) afterF7SelectEvent.getSource();
if ("equipment".equals(basedataEdit.getKey())) {
int currentRowIndex = afterF7SelectEvent.getCurrentRowIndex();
ListSelectedRowCollection listSelectedRowCollection = afterF7SelectEvent.getListSelectedRowCollection();
Object taxRate = this.getModel().getValue("taxrate");
if (taxRate != null) {
for (int i = currentRowIndex; i < listSelectedRowCollection.size(); ++i) {
this.getModel().setValue("taxrateof", taxRate, i);
}
}
}
}
protected void beforeCAF7Selected(BeforeF7SelectEvent e) {
ListShowParameter listShowParameter = (ListShowParameter) e.getFormShowParameter();
this.setSingleF7Selected(listShowParameter);
}
protected void beforeBOQF7Selected(BeforeF7SelectEvent e) {
ListShowParameter listShowParameter = (ListShowParameter) e.getFormShowParameter();
listShowParameter.setFormId("bos_listf7");
this.setSingleF7Selected(listShowParameter);
this.setProjectFilter(listShowParameter);
this.setIsLeafFilter(listShowParameter);
}
protected void beforeCBSF7Selected(BeforeF7SelectEvent e) {
ListShowParameter listShowParameter = (ListShowParameter) e.getFormShowParameter();
listShowParameter.setFormId("bos_listf7");
this.setSingleF7Selected(listShowParameter);
this.setProjectFilter(listShowParameter);
}
protected void setSingleF7Selected(ListShowParameter listShowParameter) {
listShowParameter.setMultiSelect(false);
}
protected void setProjectFilter(ListShowParameter listShowParameter) {
DynamicObject project = (DynamicObject) this.getModel().getValue("project");
Long projectId = -1L;
if (project != null) {
projectId = (Long) project.getPkValue();
}
listShowParameter.getListFilterParameter().getQFilters().add(new QFilter("project", "=", projectId));
}
protected void setIsLeafFilter(ListShowParameter listShowParameter) {
listShowParameter.getListFilterParameter().getQFilters().add(new QFilter("isleaf", "=", "1"));
}
protected void beforeContractF7Selected(BeforeF7SelectEvent e) {
DynamicObject project = (DynamicObject) this.getModel().getValue("project");
if (project == null) {
this.getView().showTipNotification(ResManager.loadKDString("请先选择项目。", "EquipSettleFormPlugin_7", "ec-eceq-formplugin", new Object[0]));
e.setCancel(true);
} else {
ListShowParameter listShowParameter = (ListShowParameter) e.getFormShowParameter();
QFilter qFilter = new QFilter("contracttype.contattr.basictype", "=", "04");
qFilter.and("project", "=", project.getPkValue());
DynamicObject curSettleObject = this.getCurSettleObject();
if (curSettleObject != null) {
qFilter.and(new QFilter("partb", "=", curSettleObject.getPkValue()));
}
qFilter.and(new QFilter("billstatus", "=", "C"));
listShowParameter.getListFilterParameter().getQFilters().add(qFilter);
}
}
protected DynamicObject getCurSettleObject() {
String type = this.getCurSettleObjectType();
return EquipSettleObjectTypeEnum.INTERNAL_ORG.getVal().equals(type) ? (DynamicObject) this.getModel().getValue("internalorg") : (DynamicObject) this.getModel().getValue("externalunit");
}
protected String getCurSettleObjectType() {
return (String) this.getModel().getValue("objecttype");
}
protected void beforeEquipmentF7Selected(BeforeF7SelectEvent e) {
DynamicObject project = (DynamicObject) this.getModel().getValue("project");
if (project == null) {
this.getView().showTipNotification(ResManager.loadKDString("请选择工程项目。", "EquipSettleFormPlugin_0", "ec-eceq-formplugin", new Object[0]));
e.setCancel(true);
} else {
ListShowParameter listShowParameter = (ListShowParameter) e.getFormShowParameter();
listShowParameter.setCustomParam("projectId", project.getPkValue());
listShowParameter.setCustomParam("selectedId", EntryUtil.getEntryF7SelectedIds(this, "entryentity", "equipment"));
listShowParameter.setFormId("eceq_settleequipf7tpl");
}
}
public void propertyChanged(PropertyChangedArgs e) {
super.propertyChanged(e);
switch (e.getProperty().getName()) {
case "contract":
this.onContractChange(e);
break;
case "project":
this.onProjectChange(e);
break;
case "taxrate":
this.onTaxRateChange(e);
break;
case "period":
this.onPeriodChange(e);
break;
case "objecttype":
this.onSettleObjectTypeChange(e);
break;
case "internalorg":
this.onInternalOrgChange(e);
break;
case "externalunit":
this.onExternalUnitChange(e);
break;
case "begindate":
this.onBeginDateChangeWithMessageBox(e);
break;
case "enddate":
this.onEndDateChangeWithMessageBox(e);
break;
case "usestartdate":
this.onEntryUseStartDateChange(e);
break;
case "useenddate":
this.onEntryUseEndDateChange(e);
break;
case "amount":
case "taxamount":
this.refreshHeaderAmount();
break;
case "usedays":
this.onEntryUseDaysChange(e);
break;
case "iscost":
this.onIsCostChange(e);
}
}
protected void onEntryUseDaysChange(PropertyChangedArgs e) {
Object useDays = this.getModel().getValue("usedays");
Integer accountNum = (Integer) this.getModel().getValue("accountnum");
if (accountNum == null) {
this.getModel().setValue("accountnum", useDays);
}
}
protected void onEntryUseStartDateChange(PropertyChangedArgs e) {
ChangeData[] changeSet = e.getChangeSet();
ChangeData changeData = changeSet[0];
Date newStartDate = (Date) changeData.getNewValue();
Date endDate = (Date) this.getModel().getValue("useenddate");
if (!this.isEntryDateValid(newStartDate, endDate)) {
this.getView().showTipNotification(ResManager.loadKDString("使用开始日期必须不晚于结束日期。", "EquipSettleFormPlugin_1", "ec-eceq-formplugin", new Object[0]));
this.getModel().setValue("usestartdate", (Object) null);
this.getModel().setValue("usedays", 0);
} else {
this.resetEntryUseDays();
}
}
protected Boolean isEntryDateValid(Date startDate, Date endDate) {
return startDate != null && endDate != null ? startDate.compareTo(endDate) <= 0 : true;
}
protected void resetEntryUseDays() {
Date startDate = (Date) this.getModel().getValue("usestartdate");
Date endDate = (Date) this.getModel().getValue("useenddate");
if (startDate != null && endDate != null) {
int daysBetweenTwoDate = EcDateUtils.getDaysBetweenTwoDate(startDate, endDate);
int currentRowIndex = this.getModel().getEntryCurrentRowIndex("entryentity");
this.getModel().setValue("usedays", daysBetweenTwoDate, currentRowIndex);
}
}
protected void onEntryUseEndDateChange(PropertyChangedArgs e) {
ChangeData[] changeSet = e.getChangeSet();
ChangeData changeData = changeSet[0];
Date newEndDate = (Date) changeData.getNewValue();
Date startDate = (Date) this.getModel().getValue("usestartdate");
if (!this.isEntryDateValid(startDate, newEndDate)) {
this.getView().showTipNotification(ResManager.loadKDString("使用结束日期必须不早于开始日期。", "EquipSettleFormPlugin_2", "ec-eceq-formplugin", new Object[0]));
this.getModel().setValue("useenddate", (Object) null);
this.getModel().setValue("usedays", 0);
} else {
this.resetEntryUseDays();
}
}
protected void onProjectChange(PropertyChangedArgs e) {
if (EntryUtil.isEntryEmpty(this)) {
this.setCostMustInput();
this.getModel().setValue("contract", (Object) null);
} else {
this.onChangeWithMessageBox(e, ResManager.loadKDString("修改项目会清空分录,是否继续?", "EquipSettleFormPlugin_3", "ec-eceq-formplugin", new Object[0]), "project");
}
}
protected void onChangeWithMessageBox(PropertyChangedArgs e, String message, String callBackId) {
ChangeData[] data = e.getChangeSet();
if (data.length > 0) {
ChangeData changeData = data[0];
Object newValue = changeData.getNewValue();
Object oldValue = changeData.getOldValue();
if (newValue == null || !newValue.equals(oldValue)) {
if (!EntryUtil.isEntryEmpty(this)) {
this.getView().showConfirm(message, MessageBoxOptions.OKCancel, new ConfirmCallBackListener(callBackId, this));
String cacheOldValue = "";
if (oldValue != null) {
if (oldValue instanceof DynamicObject) {
cacheOldValue = ((DynamicObject) oldValue).getPkValue().toString();
} else if (oldValue instanceof Date) {
cacheOldValue = EcDateUtils.formatShortDate((Date) oldValue);
} else {
cacheOldValue = oldValue.toString();
}
}
this.getPageCache().put(callBackId, cacheOldValue);
}
}
}
}
protected void setCostMustInput() {
DynamicObject project = (DynamicObject) this.getModel().getValue("project");
if (project != null) {
String costModelStr = project.getString("costcontrolmodel");
if (!StringUtils.isEmpty(costModelStr)) {
String[] split = StringUtils.split(costModelStr, ",");
List<String> costModel = Arrays.asList(split);
BasedataEdit cbs = (BasedataEdit) this.getControl("procbs");
if (cbs != null && costModel.contains("1")) {
cbs.setMustInput(true);
} else {
cbs.setMustInput(false);
}
BasedataEdit boq = (BasedataEdit) this.getControl("proboq");
if (boq != null && costModel.contains("4")) {
boq.setMustInput(true);
} else {
boq.setMustInput(false);
}
BasedataEdit ca = (BasedataEdit) this.getControl("ca");
if (ca != null && costModel.contains("2")) {
ca.setMustInput(true);
} else {
ca.setMustInput(false);
}
}
}
}
protected void clearEntry() {
EntryUtil.clearEntryData(this);
this.refreshHeaderAmount();
}
protected void refreshHeaderAmount() {
BigDecimal curOfTaxAmount = EntryUtil.sumEntryAmount(this, "taxamount");
this.getModel().setValue("curoftaxamount", curOfTaxAmount);
BigDecimal curAmount = EntryUtil.sumEntryAmount(this, "amount");
this.getModel().setValue("curamount", curAmount);
BigDecimal totalTax = curOfTaxAmount.subtract(curAmount);
if (BigDecimal.ZERO.compareTo(totalTax) >= 0) {
totalTax = BigDecimal.ZERO;
}
this.getModel().setValue("totaltax", totalTax);
}
protected void onBeginDateChange() {
DynamicObject period = (DynamicObject) this.getModel().getValue("period");
this.updateTimeRange(period);
}
protected void onBeginDateChangeWithMessageBox(PropertyChangedArgs e) {
if (EntryUtil.isEntryEmpty(this)) {
this.onBeginDateChange();
} else {
this.onChangeWithMessageBox(e, ResManager.loadKDString("修改开始日期会清空分录,是否继续?", "EquipSettleFormPlugin_8", "ec-eceq-formplugin", new Object[0]), "begindate");
}
}
protected void onEndDateChangeWithMessageBox(PropertyChangedArgs e) {
if (EntryUtil.isEntryEmpty(this)) {
this.onEndDateChange();
} else {
this.onChangeWithMessageBox(e, ResManager.loadKDString("修改结束日期会清空分录,是否继续?", "EquipSettleFormPlugin_9", "ec-eceq-formplugin", new Object[0]), "enddate");
}
}
protected void onEndDateChange() {
DynamicObject period = (DynamicObject) this.getModel().getValue("period");
this.updateTimeRange(period);
}
protected void onInternalOrgChange(PropertyChangedArgs e) {
this.getModel().setValue("contract", (Object) null);
}
protected void onExternalUnitChange(PropertyChangedArgs e) {
this.getModel().setValue("contract", (Object) null);
}
protected void onSettleObjectTypeChange(PropertyChangedArgs e) {
String curSettleObjectType = this.getCurSettleObjectType();
this.showSettleObjectType(curSettleObjectType);
}
protected void onPeriodChange(PropertyChangedArgs e) {
if (EntryUtil.isEntryEmpty(this)) {
this.updateTimeValueAndRange();
}
this.onChangeWithMessageBox(e, ResManager.loadKDString("切换期间会清空分录,是否继续?", "EquipSettleFormPlugin_10", "ec-eceq-formplugin", new Object[0]), "period");
}
protected void updateTimeRange(DynamicObject period) {
if (period != null) {
Date periodBeginDate = period.getDate("begindate");
Date periodEndDate = period.getDate("enddate");
Date beginDate = (Date) this.getModel().getValue("begindate");
Date endDate = (Date) this.getModel().getValue("enddate");
this.setDateRange("begindate", periodBeginDate, endDate);
this.setDateRange("enddate", beginDate, periodEndDate);
this.updateEntryTimeRange(beginDate, endDate);
}
}
protected void updateEntryTimeRange(Date beginDate, Date endDate) {
this.setDateRange("usestartdate", beginDate, endDate);
this.setDateRange("useenddate", beginDate, endDate);
}
protected void setDateRange(String metaTag, Date minDate, Date maxDate) {
DateEdit dateEdit = (DateEdit) this.getControl(metaTag);
if (dateEdit != null) {
dateEdit.setMinDate(minDate);
dateEdit.setMaxDate(maxDate);
}
}
protected void onContractChange(PropertyChangedArgs e) {
ChangeData[] changeSet = e.getChangeSet();
if (changeSet.length != 0) {
ChangeData changeData = changeSet[0];
if (changeData.getNewValue() != null) {
(new EquipSettlePriceSelectHandler(this)).refreshEntryUnitPrice();
this.refreshHeaderAmount();
}
}
}
protected void onTaxRateChange(PropertyChangedArgs e) {
}
public void click(EventObject evt) {
super.click(evt);
}
public void afterDoOperation(AfterDoOperationEventArgs afterDoOperationEventArgs) {
super.afterDoOperation(afterDoOperationEventArgs);
switch (afterDoOperationEventArgs.getOperateKey()) {
case "newentry":
this.afterNewEntry();
case "deleteentry":
this.afterDeleteEntry();
default:
}
}
public void beforeDoOperation(BeforeDoOperationEventArgs args) {
super.beforeDoOperation(args);
FormOperate formOperate = (FormOperate) args.getSource();
switch (formOperate.getOperateKey()) {
case "auto":
this.beforeDoAutoCal(args);
default:
}
}
protected void beforeDoAutoCal(BeforeDoOperationEventArgs args) {
Object project = this.getModel().getValue("project");
if (project == null) {
this.getView().showTipNotification(ResManager.loadKDString("请选择项目。", "EquipSettleFormPlugin_4", "ec-eceq-formplugin", new Object[0]));
args.setCancel(true);
} else {
Object period = this.getModel().getValue("period");
if (period == null) {
this.getView().showTipNotification(ResManager.loadKDString("请选择结算期间。", "EquipSettleFormPlugin_5", "ec-eceq-formplugin", new Object[0]));
args.setCancel(true);
} else {
Object beginDate = this.getModel().getValue("begindate");
if (beginDate == null) {
this.getView().showTipNotification(ResManager.loadKDString("请选择开始日期。", "EquipSettleFormPlugin_11", "ec-eceq-formplugin", new Object[0]));
args.setCancel(true);
} else {
Object endDate = this.getModel().getValue("enddate");
if (endDate == null) {
this.getView().showTipNotification(ResManager.loadKDString("请选择结束日期。", "EquipSettleFormPlugin_12", "ec-eceq-formplugin", new Object[0]));
args.setCancel(true);
} else {
boolean entryEmpty = EntryUtil.isEntryEmpty(this);
if (!entryEmpty) {
this.getView().showConfirm(ResManager.loadKDString("自动取数会清空分录,是否继续?", "EquipSettleFormPlugin_6", "ec-eceq-formplugin", new Object[0]), MessageBoxOptions.OKCancel, new ConfirmCallBackListener("auto", this));
args.setCancel(true);
} else {
this.doAutoFill();
}
}
}
}
}
}
protected void afterNewEntry() {
Object taxRate = this.getModel().getValue("taxrate");
if (taxRate != null) {
this.getModel().setValue("taxrateof", taxRate, this.getModel().getEntryCurrentRowIndex("entryentity"));
}
}
protected void afterDeleteEntry() {
this.refreshHeaderAmount();
}
public void confirmCallBack(MessageBoxClosedEvent messageBoxClosedEvent) {
super.confirmCallBack(messageBoxClosedEvent);
switch (messageBoxClosedEvent.getCallBackId()) {
case "project":
this.doProjectConfirmCallBack(messageBoxClosedEvent);
break;
case "auto":
this.doAutoCalConfirmCallBack(messageBoxClosedEvent);
break;
case "period":
this.doPeriodConfirmCallBack(messageBoxClosedEvent);
break;
case "begindate":
this.doBeginDateConfirmCallBack(messageBoxClosedEvent);
break;
case "enddate":
this.doEndDateConfirmCallBack(messageBoxClosedEvent);
}
}
protected void updateTimeValueAndRange() {
DynamicObject newPeriod = (DynamicObject) this.getModel().getValue("period");
this.updateTimeByPeriod(newPeriod);
this.updateTimeRange(newPeriod);
}
protected void doPeriodConfirmCallBack(MessageBoxClosedEvent messageBoxClosedEvent) {
if (messageBoxClosedEvent.getResult().equals(MessageBoxResult.Yes)) {
this.clearEntry();
this.updateTimeValueAndRange();
} else {
Long oldProject = Long.valueOf(this.getPageCache().get("period"));
this.getModel().beginInit();
this.getModel().setValue("period", oldProject);
this.getView().updateView("period");
this.getModel().endInit();
}
}
protected void doBeginDateConfirmCallBack(MessageBoxClosedEvent messageBoxClosedEvent) {
if (messageBoxClosedEvent.getResult().equals(MessageBoxResult.Yes)) {
this.clearEntry();
this.onBeginDateChange();
} else {
Date oldBeginDate = EcDateUtils.parseShortDate(this.getPageCache().get("begindate"));
this.getModel().beginInit();
this.getModel().setValue("begindate", oldBeginDate);
this.getView().updateView("begindate");
this.getModel().endInit();
}
}
protected void doEndDateConfirmCallBack(MessageBoxClosedEvent messageBoxClosedEvent) {
if (messageBoxClosedEvent.getResult().equals(MessageBoxResult.Yes)) {
this.clearEntry();
this.onEndDateChange();
} else {
Date oldBeginDate = EcDateUtils.parseShortDate(this.getPageCache().get("enddate"));
this.getModel().beginInit();
this.getModel().setValue("enddate", oldBeginDate);
this.getView().updateView("enddate");
this.getModel().endInit();
}
}
protected void doProjectConfirmCallBack(MessageBoxClosedEvent messageBoxClosedEvent) {
if (messageBoxClosedEvent.getResult().equals(MessageBoxResult.Yes)) {
this.clearEntry();
this.setCostMustInput();
this.getModel().setValue("contract", (Object) null);
} else if (StringUtils.isNotEmpty(this.getPageCache().get("project"))) {
Long oldProject = Long.valueOf(this.getPageCache().get("project"));
this.getModel().beginInit();
this.getModel().setValue("project", oldProject);
this.getView().updateView("project");
this.getModel().endInit();
}
}
protected void doAutoCalConfirmCallBack(MessageBoxClosedEvent messageBoxClosedEvent) {
if (messageBoxClosedEvent.getResult().equals(MessageBoxResult.Yes)) {
this.clearEntry();
this.doAutoFill();
}
}
protected void doAutoFill() {
(new EquipSettleAutoFillHandler(this)).autoFillEntryData();
this.refreshHeaderAmount();
}
protected void onIsCostChange(PropertyChangedArgs e) {
ChangeData[] changeSet = e.getChangeSet();
ChangeData changeData = changeSet[0];
Boolean newValue = (Boolean) changeData.getNewValue();
BasedataEdit control = (BasedataEdit) this.getView().getControl("contract");
if (newValue) {
if (control != null) {
control.setMustInput(true);
}
} else if (control != null) {
control.setMustInput(false);
}
this.getModel().setValue("contract", (Object) null);
}
}