diff --git a/main/java/shkd/repc/resp/portal/PortalCardNoticePlugin.java b/main/java/shkd/repc/resp/portal/PortalCardNoticePlugin.java new file mode 100644 index 0000000..c01ae35 --- /dev/null +++ b/main/java/shkd/repc/resp/portal/PortalCardNoticePlugin.java @@ -0,0 +1,82 @@ +package shkd.repc.resp.portal; + +import kd.bos.bill.OperationStatus; +import kd.bos.dataentity.entity.DynamicObject; +import kd.bos.dataentity.entity.DynamicObjectCollection; +import kd.bos.entity.datamodel.events.BeforePackageDataEvent; +import kd.bos.entity.list.events.BeforePackageDataListener; +import kd.bos.form.CloseCallBack; +import kd.bos.form.FormShowParameter; +import kd.bos.form.IFormView; +import kd.bos.form.ShowType; +import kd.bos.form.events.HyperLinkClickEvent; +import kd.bos.form.events.HyperLinkClickListener; +import kd.bos.form.events.SetFilterEvent; +import kd.bos.form.plugin.AbstractFormPlugin; +import kd.bos.list.BillList; +import kd.bos.orm.query.QFilter; +import kd.bos.util.StringUtils; +import kd.repc.common.enums.resm.AnnoRecruitEnum; + +import java.util.Calendar; +import java.util.Date; +import java.util.EventObject; +import java.util.Iterator; + +public class PortalCardNoticePlugin extends AbstractFormPlugin implements HyperLinkClickListener, BeforePackageDataListener { + @Override + public void beforePackageData(BeforePackageDataEvent arg0) { + DynamicObjectCollection pageData = arg0.getPageData(); + Iterator var3 = pageData.iterator(); + while(var3.hasNext()) { + DynamicObject data = (DynamicObject)var3.next(); + Date auditdate = data.getDate("auditdate"); + if (this.judgeDateIsNow(auditdate)) { + data.set("billstatus", "N"); + } else { + data.set("billstatus", (Object)null); + } + } + } + + public boolean judgeDateIsNow(Date date) { + Calendar now = Calendar.getInstance(); + Calendar currentDate = Calendar.getInstance(); + currentDate.setTime(date); + return now.get(1) == currentDate.get(1) && now.get(2) == currentDate.get(2) && now.get(5) == currentDate.get(5); + } + + @Override + public void initialize() { + ((BillList)this.getControl("qeug_billlistap")).addSetFilterListener((setFilterEvent) -> { + this.setFilter(setFilterEvent); + }); + ((BillList)this.getControl("qeug_billlistap")).addBeforePackageDataListener((BeforePackageDataEvent) -> { + this.beforePackageData(BeforePackageDataEvent); + }); + } + + public void setFilter(SetFilterEvent e) { + QFilter qfilter = new QFilter("billstatus", "=", "RELEASED"); + e.getQFilters().add(qfilter); + } + + + public void hyperLinkClick(HyperLinkClickEvent hyperlinkclickevent) { + BillList grid = (BillList)hyperlinkclickevent.getSource(); + Long annoId = (Long)grid.getFocusRowPkId(); + FormShowParameter showParameter = new FormShowParameter(); + showParameter.setFormId("resm_notification_view"); + showParameter.getOpenStyle().setShowType(ShowType.NewWindow); + showParameter.setHasRight(true); + showParameter.setStatus(OperationStatus.VIEW); + showParameter.setCustomParam("notificationId", annoId); + this.getView().showForm(showParameter); + } + + public void registerListener(EventObject eventobject) { + super.registerListener(eventobject); + BillList billList = (BillList)this.getView().getControl("qeug_billlistap"); + billList.addHyperClickListener(this); + } +}