用款申请单插件
This commit is contained in:
		
							parent
							
								
									0660fc913a
								
							
						
					
					
						commit
						f8c601d531
					
				| 
						 | 
				
			
			@ -16,7 +16,7 @@ import kd.sdk.plugin.Plugin;
 | 
			
		|||
import java.util.*;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * 用款申请单部门字段过滤与初始赋值逻辑+所属组织默认赋值
 | 
			
		||||
 * 用款申请单(废弃)部门字段过滤与初始赋值逻辑+所属组织默认赋值
 | 
			
		||||
 */
 | 
			
		||||
public class ApplicationFundsF7Plugin extends AbstractBillPlugIn implements Plugin, BeforeF7SelectListener {
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -15,7 +15,7 @@ import java.util.List;
 | 
			
		|||
import java.util.Map;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * 用款申请单插件
 | 
			
		||||
 * 用款申请单(废弃)插件
 | 
			
		||||
 */
 | 
			
		||||
public class ApplicationfundsPlugin extends AbstractBillPlugIn implements AttachmentOperaClickListener {
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -0,0 +1,110 @@
 | 
			
		|||
package zcgj.zcdev.zcdev.fs.plugin.form;
 | 
			
		||||
 | 
			
		||||
import kd.bos.bill.AbstractBillPlugIn;
 | 
			
		||||
import kd.bos.bill.BillShowParameter;
 | 
			
		||||
import kd.bos.bill.OperationStatus;
 | 
			
		||||
import kd.bos.dataentity.entity.DynamicObject;
 | 
			
		||||
import kd.bos.entity.datamodel.events.ChangeData;
 | 
			
		||||
import kd.bos.entity.datamodel.events.PropertyChangedArgs;
 | 
			
		||||
import kd.bos.form.IClientViewProxy;
 | 
			
		||||
import kd.bos.form.control.AttachmentPanel;
 | 
			
		||||
import kd.bos.form.control.events.AttachmentOperaClickListener;
 | 
			
		||||
import kd.bos.form.events.AfterDoOperationEventArgs;
 | 
			
		||||
import kd.bos.form.field.BasedataEdit;
 | 
			
		||||
import kd.bos.form.field.events.BeforeF7SelectEvent;
 | 
			
		||||
import kd.bos.form.field.events.BeforeF7SelectListener;
 | 
			
		||||
import kd.bos.list.ListShowParameter;
 | 
			
		||||
import kd.bos.mvc.form.ClientViewProxy;
 | 
			
		||||
import kd.bos.orm.query.QCP;
 | 
			
		||||
import kd.bos.orm.query.QFilter;
 | 
			
		||||
import kd.bos.servicehelper.user.UserServiceHelper;
 | 
			
		||||
import kd.sdk.plugin.Plugin;
 | 
			
		||||
 | 
			
		||||
import java.util.ArrayList;
 | 
			
		||||
import java.util.EventObject;
 | 
			
		||||
import java.util.List;
 | 
			
		||||
import java.util.Map;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * 用款申请单表单插件
 | 
			
		||||
 */
 | 
			
		||||
public class PaymentApplicationPlugin extends AbstractBillPlugIn implements AttachmentOperaClickListener, Plugin, BeforeF7SelectListener {
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
    public void registerListener(EventObject e) {
 | 
			
		||||
        super.registerListener(e);
 | 
			
		||||
        BasedataEdit Value = this.getView().getControl("zcgj_department");//部门
 | 
			
		||||
        Value.addBeforeF7SelectListener(this);
 | 
			
		||||
        AttachmentPanel panel = getControl("attachmentpanel");//附件
 | 
			
		||||
        panel.addOperaClickListener(this);
 | 
			
		||||
        ;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
    public void afterBindData(EventObject e) {
 | 
			
		||||
        super.afterBindData(e);
 | 
			
		||||
        setAttFileVisble();//隐藏删除按钮
 | 
			
		||||
        BillShowParameter bsp = (BillShowParameter) this.getView().getFormShowParameter();
 | 
			
		||||
        if (bsp.getStatus() == OperationStatus.ADDNEW) {
 | 
			
		||||
            //如果是新增时
 | 
			
		||||
            DynamicObject creator = this.getModel().getDataEntity().getDynamicObject("creator");//创建人
 | 
			
		||||
            if (creator != null) {
 | 
			
		||||
                long mainOrgId = UserServiceHelper.getUserMainOrgId(creator.getLong("id"));
 | 
			
		||||
                this.getModel().setValue("zcgj_department", mainOrgId);//部门
 | 
			
		||||
                this.getView().updateView("zcgj_department");
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
    public void beforeF7Select(BeforeF7SelectEvent beforeF7SelectEvent) {
 | 
			
		||||
        ListShowParameter formShowParameter = (ListShowParameter) beforeF7SelectEvent.getFormShowParameter();
 | 
			
		||||
        DynamicObject creator = this.getModel().getDataEntity().getDynamicObject("creator");//创建人
 | 
			
		||||
        if (creator == null) {
 | 
			
		||||
            return;
 | 
			
		||||
        }
 | 
			
		||||
        List<Long> id = UserServiceHelper.getOrgsUserJoin(creator.getLong("id"));
 | 
			
		||||
        List<QFilter> qFilter = new ArrayList<>();
 | 
			
		||||
        qFilter.add(new QFilter("id", QCP.in, id));
 | 
			
		||||
        formShowParameter.getListFilterParameter().setQFilters(qFilter);
 | 
			
		||||
        formShowParameter.setCustomParam("isIncludeAllSub", "true");
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
    public void afterDoOperation(AfterDoOperationEventArgs afterDoOperationEventArgs) {
 | 
			
		||||
        setAttFileVisble();
 | 
			
		||||
        super.afterDoOperation(afterDoOperationEventArgs);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
    public void propertyChanged(PropertyChangedArgs e) {
 | 
			
		||||
        super.propertyChanged(e);
 | 
			
		||||
        if (e.getProperty().getName().equals("attachmentpanel")) {
 | 
			
		||||
            setAttFileVisble();
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    private void setAttFileVisble() {
 | 
			
		||||
        String billstatus = String.valueOf(this.getModel().getValue("status"));
 | 
			
		||||
        if (!billstatus.equals("A")) {
 | 
			
		||||
            AttachmentPanel attachmentPanel = this.getControl("attachmentpanel");
 | 
			
		||||
            List<Map<String, Object>> attachmentData = attachmentPanel.getAttachmentData();
 | 
			
		||||
            if (attachmentData == null && attachmentData.isEmpty()) {
 | 
			
		||||
                return;
 | 
			
		||||
            }
 | 
			
		||||
            List<Map<String, Object>> attachmentDatas = attachmentPanel.getAttachmentData();
 | 
			
		||||
            for (Map<String, Object> attachmentMap : attachmentDatas) {
 | 
			
		||||
                String visiablePreview = "1";//是否显示预览按钮
 | 
			
		||||
                String visiableDownload = "1";//是否显示下载按钮
 | 
			
		||||
                String visiableRename = "1";//是否显示重命名按钮
 | 
			
		||||
                String visiableDelete = "0";//是否显示删除按钮
 | 
			
		||||
                //visible参数规则为01组成,0代表不可见,1代表可见
 | 
			
		||||
                attachmentMap.put("visible", visiablePreview + visiableDownload + visiableRename + visiableDelete);
 | 
			
		||||
                //attachmentMap.put("hiddenBtn",hiddenBtnList);
 | 
			
		||||
 | 
			
		||||
            }
 | 
			
		||||
            ClientViewProxy cvp = this.getView().getService(IClientViewProxy.class);
 | 
			
		||||
            cvp.setFieldProperty("attachmentpanel", "v", attachmentDatas);
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
		Loading…
	
		Reference in New Issue