Преглед изворни кода

Merge remote-tracking branch 'origin/master'

13246659623 пре 5 месеци
родитељ
комит
f1fcfb4ac4

+ 6 - 0
src/main/java/fi/cas/formplugin/AgpaybillButPlugin.java

@@ -50,6 +50,12 @@ public class AgpaybillButPlugin extends AbstractFormPlugin implements Plugin {
         if ("B".equals(paystatus)&&"B".equals(nckdHxzt)||"A".equals(nckdHxzt)) {
             this.getView().setVisible(true,"nckd_payclose");
         }
+
+        //支付状态为支付成功,单据状态为已审核则隐藏提交,反审核
+        if ("C".equals(paystatus)&&"C".equals(billstatus)) {
+            this.getView().setVisible(false,"bar_submit");
+            this.getView().setVisible(false,"bar_unaudit");
+        }
     }
 
 }

+ 53 - 0
src/main/java/fi/em/formPlugin/BusinessProcessingEditPlugin.java

@@ -408,6 +408,59 @@ public class BusinessProcessingEditPlugin extends AbstractListPlugin implements
                 }
             }
 
+        }else if ("nckd_orgv".equals(name)) {
+            ChangeData[] changeSet = e.getChangeSet();//获取值
+            for (ChangeData changeData : changeSet) {
+                int rowIndex = changeData.getRowIndex();
+                Object newValue = changeData.getNewValue();
+                Object oldValue = changeData.getOldValue();
+                DynamicObject payeenamevs = (DynamicObject) newValue;
+                //构建查询供应商参数
+                QFilter nckd_orgamountFilter = new QFilter("number", QCP.equals, payeenamevs.getString("number"));
+                DynamicObject[] fa_lease_contract = BusinessDataServiceHelper.load("bos_org", "id", new QFilter[]{nckd_orgamountFilter});
+                for (int c = 0; c < fa_lease_contract.length; c++) {
+                    //当前单头
+                    DynamicObject dynamicObject = BusinessDataServiceHelper.loadSingle(fa_lease_contract[c].getPkValue(), fa_lease_contract[c].getDynamicObjectType().getName());
+                    QFilter nckd_bd_accountbanks = new QFilter("openorg.number", QCP.equals, dynamicObject.getString("number"));
+                    nckd_bd_accountbanks.and("isdefaultrec",QCP.equals,"1");
+                    nckd_bd_accountbanks.and("acctstatus",QCP.equals,"normal");
+                    DynamicObject dynamicObject1 = BusinessDataServiceHelper.loadSingle("bd_accountbanks", new QFilter[]{nckd_bd_accountbanks});
+                    if(dynamicObject1!=null){
+                        this.getModel().setValue("nckd_skzh", dynamicObject1);
+                        this.getView().updateView("nckd_skzh");
+                        DynamicObject bank = dynamicObject1.getDynamicObject("bank");
+                        this.getModel().setValue("nckd_skyh", bank);
+                        this.getView().updateView("nckd_skyh");
+                    }
+
+                }
+            }
+        }else if ("nckd_orgvs".equals(name)) {
+            ChangeData[] changeSet = e.getChangeSet();//获取值
+            for (ChangeData changeData : changeSet) {
+                int rowIndex = changeData.getRowIndex();
+                Object newValue = changeData.getNewValue();
+                Object oldValue = changeData.getOldValue();
+                DynamicObject payeenamevs = (DynamicObject) newValue;
+                //构建查询供应商参数
+                QFilter nckd_orgamountFilter = new QFilter("number", QCP.equals, payeenamevs.getString("number"));
+                DynamicObject[] fa_lease_contract = BusinessDataServiceHelper.load("bos_org", "id", new QFilter[]{nckd_orgamountFilter});
+                for (int c = 0; c < fa_lease_contract.length; c++) {
+                    //当前单头
+                    DynamicObject dynamicObject = BusinessDataServiceHelper.loadSingle(fa_lease_contract[c].getPkValue(), fa_lease_contract[c].getDynamicObjectType().getName());
+                    QFilter nckd_bd_accountbanks = new QFilter("openorg.number", QCP.equals, dynamicObject.getString("number"));
+                    nckd_bd_accountbanks.and("isdefaultpay",QCP.equals,"1");
+                    nckd_bd_accountbanks.and("acctstatus",QCP.equals,"normal");
+                    DynamicObject dynamicObject1 = BusinessDataServiceHelper.loadSingle("bd_accountbanks", new QFilter[]{nckd_bd_accountbanks});
+                    if(dynamicObject1!=null){
+                        this.getModel().setValue("nckd_skzhs", dynamicObject1);
+                        this.getView().updateView("nckd_skzhs");
+                        DynamicObject bank = dynamicObject1.getDynamicObject("bank");
+                        this.getModel().setValue("nckd_skyhs", bank);
+                        this.getView().updateView("nckd_skyhs");
+                    }
+                }
+            }
         }
     }
     }

+ 2 - 2
src/main/java/fi/em/formPlugin/BusinessProcessingUnAuditEditPlugin.java

@@ -75,12 +75,12 @@ public class BusinessProcessingUnAuditEditPlugin  extends AbstractListPlugin imp
                 draw.getOption().setVariableValue("orgnumber", orgnumber);
                 draw.getOption().setVariableValue("type", "drawyfgz");
             }else if (draw.getOperateKey().equals("drawzlht")) {
-                Object value = this.getModel().getValue("nckd_orgv");//获取当前单据核算组织
+                Object value = this.getModel().getValue("nckd_orgfield");//获取当前单据核算组织
                 Object nckd_payeenamevs = this.getModel().getValue("nckd_payeenamev");//获取当前单据付款人
                 DynamicObject dynamicObject = (DynamicObject) value;
                 DynamicObject payeenamevs = (DynamicObject) nckd_payeenamevs;
                 if (dynamicObject == null) {
-                    throw new KDBizException("收款信息收款人为空!");
+                    throw new KDBizException("核算组织为空!");
                 }
                 if (payeenamevs == null) {
                     throw new KDBizException("收款信息付款人为空!");

+ 283 - 0
src/main/java/fi/em/formPlugin/BxdBankListtenerFromPlugin.java

@@ -0,0 +1,283 @@
+package fi.em.formPlugin;
+
+import com.alibaba.druid.util.StringUtils;
+import kd.bos.bill.AbstractBillPlugIn;
+import kd.bos.dataentity.entity.DynamicObject;
+import kd.bos.entity.datamodel.ListSelectedRow;
+import kd.bos.entity.datamodel.ListSelectedRowCollection;
+import kd.bos.entity.datamodel.events.ChangeData;
+import kd.bos.entity.datamodel.events.PropertyChangedArgs;
+import kd.bos.exception.KDBizException;
+import kd.bos.form.*;
+import kd.bos.form.control.Control;
+import kd.bos.form.events.AfterDoOperationEventArgs;
+import kd.bos.form.events.ClosedCallBackEvent;
+import kd.bos.form.field.TextEdit;
+import kd.bos.list.ListShowParameter;
+import kd.bos.list.plugin.AbstractListPlugin;
+import kd.bos.orm.query.QCP;
+import kd.bos.orm.query.QFilter;
+import kd.bos.servicehelper.BusinessDataServiceHelper;
+import kd.sdk.plugin.Plugin;
+
+import java.math.BigDecimal;
+import java.util.EventObject;
+import java.util.Map;
+
+public class BxdBankListtenerFromPlugin extends AbstractListPlugin implements Plugin {
+    @Override
+    public void registerListener(EventObject e) {
+        super.registerListener(e);
+        // 对采购申请单单号字段(文本控件)添加点击监听
+        TextEdit textEdit = getControl("nckd_gysbanks");
+        textEdit.addClickListener(this);
+    }
+
+    @Override
+    public void click(EventObject evt) {
+        Control control = (Control) evt.getSource();
+        String key = control.getKey();
+        // 点击供应商11111
+        if (StringUtils.equalsIgnoreCase("nckd_gysbanks", key)) {
+            String billpayertype = this.getModel().getValue("billpayertype").toString();
+            if("bd_supplier".equals(billpayertype)){
+                ListShowParameter parameter = ShowFormHelper.createShowListForm("nckd_supplierbankinfor", false);
+                parameter.setCloseCallBack(new CloseCallBack(this, "nckd_supplierbankinfor"));
+                DynamicObject skdata = (DynamicObject)this.getModel().getValue("billpayerid");
+                if(skdata ==null){
+                    throw new KDBizException("往来单位为空!");
+                }
+                long orgid = skdata.getLong("id");
+                QFilter nckd_skzjFilter = new QFilter("id", QCP.equals,orgid);
+                DynamicObject dynamicObject = BusinessDataServiceHelper.loadSingle("bd_supplier", "id", new QFilter[]{nckd_skzjFilter});
+                QFilter filter;
+                //给基础资料添加过滤
+                filter = new QFilter("nckd_id", QCP.equals, dynamicObject.getLong("id"));
+                parameter.getListFilterParameter().setFilter(filter);
+                getView().showForm(parameter);
+            } else if ("bos_user".equals(billpayertype)) {
+                ListShowParameter parameter = ShowFormHelper.createShowListForm("er_payeer", false);
+                parameter.setCloseCallBack(new CloseCallBack(this, "er_payeer"));
+                DynamicObject skdata = (DynamicObject)this.getModel().getValue("billpayerid");
+                if(skdata ==null){
+                    throw new KDBizException("往来单位为空!");
+                }
+                long orgid = skdata.getLong("id");
+                QFilter nckd_skzjFilter = new QFilter("id", QCP.equals,orgid);
+                DynamicObject dynamicObject = BusinessDataServiceHelper.loadSingle("bos_user", "id", new QFilter[]{nckd_skzjFilter});
+                QFilter filter;
+                //给基础资料添加过滤
+                filter = new QFilter("payer.id", QCP.equals, dynamicObject.getLong("id"));
+                parameter.getListFilterParameter().setFilter(filter);
+                getView().showForm(parameter);
+            } else if ("bos_org".equals(billpayertype)) {
+                ListShowParameter parameter = ShowFormHelper.createShowListForm("bos_org", false);
+                parameter.setCloseCallBack(new CloseCallBack(this, "bos_org"));
+                DynamicObject skdata = (DynamicObject)this.getModel().getValue("billpayerid");
+                if(skdata ==null){
+                    throw new KDBizException("往来单位为空!");
+                }
+                long orgid = skdata.getLong("id");
+                QFilter nckd_skzjFilter = new QFilter("id", QCP.equals,orgid);
+                DynamicObject dynamicObject = BusinessDataServiceHelper.loadSingle("bos_org", "id", new QFilter[]{nckd_skzjFilter});
+                QFilter filter;
+                //给基础资料添加过滤
+                filter = new QFilter("id", QCP.equals, dynamicObject.getLong("id"));
+                parameter.getListFilterParameter().setFilter(filter);
+                getView().showForm(parameter);
+            }
+
+
+        }
+        super.click(evt);
+    }
+
+    @Override
+    public void closedCallBack(ClosedCallBackEvent evt) {
+        String key = evt.getActionId();
+        Object returnData = evt.getReturnData();
+        // 将选择的采购申请单数据回写至样例单据上的相应字段
+        if (StringUtils.equalsIgnoreCase("nckd_supplierbankinfor", key) && returnData != null) {
+            ListSelectedRow row = ((ListSelectedRowCollection) returnData).get(0);
+            DynamicObject billObj = BusinessDataServiceHelper.loadSingle(row.getPrimaryKeyValue(), "nckd_supplierbankinfor");
+            this.getModel().setValue("nckd_gysbanks", billObj.getString("nckd_bankaccount"));
+            this.getModel().setValue("nckd_bankname", billObj.getString("nckd_accountname"));
+            DynamicObject nckdBank = billObj.getDynamicObject("nckd_bank");
+            this.getModel().setValue("nckd_khbank",nckdBank);
+            //设置分录
+            this.getModel().setValue("supplier", billObj, 0);
+            this.getModel().setValue("payeraccount", billObj.getString("nckd_bankaccount"), 0);
+            this.getModel().setValue("payeraccountname", billObj.getString("nckd_accountname"), 0);
+            this.getModel().setValue("payerbank", nckdBank, 0);
+            //刷新分录
+            this.getView().updateView("accountentry");
+        } else if (StringUtils.equalsIgnoreCase("er_payeer", key) && returnData != null) {
+            ListSelectedRow row = ((ListSelectedRowCollection) returnData).get(0);
+            DynamicObject billObj = BusinessDataServiceHelper.loadSingle(row.getPrimaryKeyValue(), "er_payeer");
+            DynamicObject payerbank = billObj.getDynamicObject("payerbank");
+            this.getModel().setValue("nckd_gysbanks", payerbank.getString("number"));//行号
+            this.getModel().setValue("nckd_bankname", payerbank.getString("name"));//行名
+            this.getModel().setValue("nckd_khbank", payerbank);
+            //设置分录
+            this.getModel().setValue("payer", payerbank, 0);
+            this.getModel().setValue("payeraccount", payerbank.getString("number"), 0);
+            this.getModel().setValue("payeraccountname", payerbank.getString("name"), 0);
+            this.getModel().setValue("payerbank", payerbank, 0);
+            //刷新分录
+            this.getView().updateView("accountentry");
+        } else if (StringUtils.equalsIgnoreCase("bos_org", key) && returnData != null) {
+            ListSelectedRow row = ((ListSelectedRowCollection) returnData).get(0);
+            DynamicObject billObj = BusinessDataServiceHelper.loadSingle(row.getPrimaryKeyValue(), "bos_org");
+            this.getModel().setValue("nckd_gysbanks", billObj.getString("bankaccount"));
+            this.getModel().setValue("nckd_bankname", billObj.getString("ffirmname"));
+            //this.getModel().setValue("nckd_khbank", billObj.getString("depositbank"));
+            //设置分录
+            this.getModel().setValue("payername", billObj.getString("name"), 0);
+            this.getModel().setValue("payeraccount", billObj.getString("bankaccount"), 0);
+            this.getModel().setValue("payeraccountname",  billObj.getString("ffirmname"), 0);
+            this.getModel().setValue("casorg", billObj, 0);
+            //刷新分录
+            this.getView().updateView("accountentry");
+        }
+        super.closedCallBack(evt);
+    }
+    @Override
+    public void propertyChanged(PropertyChangedArgs e) {
+        super.beforePropertyChanged(e);
+        String name = e.getProperty().getName();//获取字段标识
+        if ("billpayerid".equals(name)) {
+            ChangeData[] changeSet = e.getChangeSet();//获取值
+            for (ChangeData changeData : changeSet) {
+                int rowIndex = changeData.getRowIndex();
+                Object newValue = changeData.getNewValue();
+                Object oldValue = changeData.getOldValue();
+                DynamicObject payeenamevs = (DynamicObject) newValue;
+                String billpayertype = this.getModel().getValue("billpayertype").toString();
+                if("bd_supplier".equals(billpayertype)){
+                    this.getModel().setValue("nckd_gysbanks",null);//行号
+                    this.getModel().setValue("nckd_bankname",null);//行名
+                    this.getModel().setValue("nckd_khbank",null);
+                    this.getModel().setValue("payer",null, 0);
+                    this.getModel().setValue("payeraccount",null, 0);
+                    this.getModel().setValue("payeraccountname",null, 0);
+                    this.getModel().setValue("payerbank",null, 0);
+                    //刷新分录
+                    this.getView().updateView("accountentry");
+                    this.getView().updateView("nckd_gysbanks");
+                    this.getView().updateView("nckd_bankname");
+                    this.getView().updateView("nckd_khbank");
+                    QFilter nckd = new QFilter("id", QCP.equals,payeenamevs.getLong("id"));
+                    payeenamevs = BusinessDataServiceHelper.loadSingle("bd_supplier", new QFilter[]{nckd});
+                   if(payeenamevs!=null){
+                       for (DynamicObject entryentity : payeenamevs.getDynamicObjectCollection("entry_bank")) {
+                           String bankaccount = entryentity.getString("bankaccount");
+                           String accountname = entryentity.getString("accountname");
+                           String isdefaultBank = entryentity.getString("isdefault_bank");
+                           DynamicObject bank = entryentity.getDynamicObject("bank");
+                           if("true".equals(isdefaultBank)){
+                               this.getModel().setValue("nckd_gysbanks", bankaccount);
+                               this.getModel().setValue("nckd_bankname", accountname);
+//                            DynamicObject nckdBank = billObj.getDynamicObject("nckd_bank");
+                               this.getModel().setValue("nckd_khbank",bank);
+                               //设置分录
+                               this.getModel().setValue("supplier", payeenamevs, 0);
+                               this.getModel().setValue("payeraccount", bankaccount, 0);
+                               this.getModel().setValue("payeraccountname", accountname, 0);
+                               this.getModel().setValue("payerbank", bank, 0);
+                               //刷新分录
+                               this.getView().updateView("accountentry");
+                           }
+                       }
+                   }
+                } else if ("bos_user".equals(billpayertype)) {
+                    this.getModel().setValue("nckd_gysbanks",null);//行号
+                    this.getModel().setValue("nckd_bankname",null);//行名
+                    this.getModel().setValue("nckd_khbank",null);
+                    this.getModel().setValue("payer",null, 0);
+                    this.getModel().setValue("payeraccount",null, 0);
+                    this.getModel().setValue("payeraccountname",null, 0);
+                    this.getModel().setValue("payerbank",null, 0);
+                    //刷新分录
+                    this.getView().updateView("accountentry");
+                    this.getView().updateView("nckd_gysbanks");
+                    this.getView().updateView("nckd_bankname");
+                    this.getView().updateView("nckd_khbank");
+                    QFilter nckd = new QFilter("id", QCP.equals,payeenamevs.getLong("id"));
+                    payeenamevs = BusinessDataServiceHelper.loadSingle("bos_user", new QFilter[]{nckd});
+                    if(payeenamevs!=null){
+                        QFilter nckd_skzjFilter = new QFilter("payer.id", QCP.equals,payeenamevs.getLong("id"));
+                        nckd_skzjFilter.and("isdefault", QCP.equals, "1");
+                        DynamicObject dynamicObject = BusinessDataServiceHelper.loadSingle("er_payeer", new QFilter[]{nckd_skzjFilter});
+                        if(dynamicObject!=null){
+                            DynamicObject payerbank = dynamicObject.getDynamicObject("payerbank");
+                            this.getModel().setValue("nckd_gysbanks", payerbank.getString("number"));//行号
+                            this.getModel().setValue("nckd_bankname", payerbank.getString("name"));//行名
+                            this.getModel().setValue("nckd_khbank", payerbank);
+                            //设置分录
+                            this.getModel().setValue("payer", dynamicObject, 0);
+                            this.getModel().setValue("payeraccount", payerbank.getString("number"), 0);
+                            this.getModel().setValue("payeraccountname", payerbank.getString("name"), 0);
+                            this.getModel().setValue("payerbank", payerbank, 0);
+                            //刷新分录
+                            this.getView().updateView("accountentry");
+                        }
+                    }
+                } else if ("bos_org".equals(billpayertype)) {
+                    this.getModel().setValue("nckd_gysbanks",null);//行号
+                    this.getModel().setValue("nckd_bankname",null);//行名
+                    this.getModel().setValue("nckd_khbank",null);
+                    this.getModel().setValue("payer",null, 0);
+                    this.getModel().setValue("payeraccount",null, 0);
+                    this.getModel().setValue("payeraccountname",null, 0);
+                    this.getModel().setValue("payerbank",null, 0);
+                    //刷新分录
+                    this.getView().updateView("accountentry");
+                    this.getView().updateView("nckd_gysbanks");
+                    this.getView().updateView("nckd_bankname");
+                    this.getView().updateView("nckd_khbank");
+                    QFilter nckd = new QFilter("id", QCP.equals,payeenamevs.getLong("id"));
+                    payeenamevs = BusinessDataServiceHelper.loadSingle("bos_org", new QFilter[]{nckd});
+                    if(payeenamevs!=null){
+                        this.getModel().setValue("nckd_gysbanks", payeenamevs.getString("bankaccount"));
+                        this.getModel().setValue("nckd_bankname", payeenamevs.getString("ffirmname"));
+                        //this.getModel().setValue("nckd_khbank", payeenamevs.getString("depositbank"));
+                        //设置分录
+                        this.getModel().setValue("payername", payeenamevs.getString("name"), 0);
+                        this.getModel().setValue("payeraccount", payeenamevs.getString("bankaccount"), 0);
+                        this.getModel().setValue("payeraccountname",  payeenamevs.getString("ffirmname"), 0);
+                        this.getModel().setValue("casorg", payeenamevs, 0);
+                        //刷新分录
+                        this.getView().updateView("accountentry");
+                    }
+                }
+
+            }
+        } else if ("nckd_onaccountamount".equals(name)) {
+            String nckd_reimburseamount = this.getModel().getValue("nckd_reimburseamount").toString();//报销金额
+            String nckd_onaccountamount = this.getModel().getValue("nckd_onaccountamount").toString();//挂账金额
+            String nckd_yufuamount = this.getModel().getValue("nckd_yufuamount").toString();//预付金额
+            BigDecimal reimburseamount = new BigDecimal(nckd_reimburseamount);
+            BigDecimal onaccountamount = new BigDecimal(nckd_onaccountamount);
+            BigDecimal yufuamount = new BigDecimal(nckd_yufuamount);
+            reimburseamount=reimburseamount.subtract(onaccountamount);
+            reimburseamount=reimburseamount.subtract(yufuamount);
+            this.getModel().setValue("nckd_fukuanamountfield", reimburseamount);
+            this.getModel().setValue("expenseamount", reimburseamount, 0);
+            //刷新分录
+            this.getView().updateView("expenseentryentity");
+        }else if ("nckd_yufuamount".equals(name)) {
+            String nckd_reimburseamount = this.getModel().getValue("nckd_reimburseamount").toString();//报销金额
+            String nckd_onaccountamount = this.getModel().getValue("nckd_onaccountamount").toString();//挂账金额
+            String nckd_yufuamount = this.getModel().getValue("nckd_yufuamount").toString();//预付金额
+            BigDecimal reimburseamount = new BigDecimal(nckd_reimburseamount);
+            BigDecimal onaccountamount = new BigDecimal(nckd_onaccountamount);
+            BigDecimal yufuamount = new BigDecimal(nckd_yufuamount);
+            reimburseamount=reimburseamount.subtract(onaccountamount);
+            reimburseamount=reimburseamount.subtract(yufuamount);
+            this.getModel().setValue("nckd_fukuanamountfield", reimburseamount);
+            this.getModel().setValue("expenseamount", reimburseamount, 0);
+            //刷新分录
+            this.getView().updateView("expenseentryentity");
+        }
+    }
+}

+ 24 - 13
src/main/java/fi/em/formPlugin/SalaryDownloadFilePlugin.java

@@ -1,5 +1,7 @@
 package fi.em.formPlugin;
 
+import kd.bos.dataentity.entity.DynamicObject;
+import kd.bos.entity.property.ComboProp;
 import kd.bos.form.events.AfterDoOperationEventArgs;
 import kd.bos.form.plugin.AbstractFormPlugin;
 import org.apache.commons.io.FileUtils;
@@ -30,6 +32,8 @@ public class SalaryDownloadFilePlugin extends AbstractFormPlugin {
     String filename= interFaceImgUtils.getFileName();
     //获取文件路径
     String fileurl= interFaceImgUtils.getServerUrl();
+    //文件保存路径
+    String fileLocalpath= interFaceImgUtils.getFileLocalPath();
 
     //获取sftp链接对象
     public SftpClient sftpClient=new SftpClient(serverurl,user,password,port);
@@ -41,22 +45,29 @@ public class SalaryDownloadFilePlugin extends AbstractFormPlugin {
         String operateKey = arg.getOperateKey();
         //审核操作代码
         String downloadBut="download";
+        DynamicObject dynamicObject=this.getModel().getDataEntity(true);
+        String nckd_entrytype= dynamicObject.getString("nckd_entrytype");
         if (downloadBut.equals(operateKey)) {
-            //获取桌面路径
-            String path ="C:/Users";
-            try {
-                //获取服务器链接
-                sftpClient.connect();
-                File file=new File(path+File.separator+"模板文件.xls");
-                FileUtils.copyInputStreamToFile(sftpClient.downloadFile(fileurl+ File.separator+filename),file);
-                sftpClient.disconnect();
-                this.getView().showMessage("文件生成成功,文件位置为:"+path);
-            } catch (Exception e) {
-                throw new RuntimeException(e);
-            }
-
+            //通用薪酬(一般员工)
+            downFileToLocal(nckd_entrytype);
         }
+    }
 
+    //根据分录类型,下载对应的分录模板
+    public void downFileToLocal(String nckd_entrytype) {
+        //获取下拉列表字段
+        ComboProp comboProp = (ComboProp) getModel().getProperty("nckd_entrytype");
+        try {
+//            //通过下拉值获取下拉标题
+            String displayName = comboProp.getItemByName(nckd_entrytype);
+//            //获取服务器链接
+            sftpClient.connect();
+            sftpClient.downloadFile(fileurl+"/"+displayName+filename,fileLocalpath);
+            sftpClient.disconnect();
+            this.getView().showMessage("文件生成成功,文件位置为:"+fileLocalpath+"/"+displayName+filename);
+        } catch (Exception e) {
+            throw new RuntimeException(e);
+        }
     }
 
 }

+ 4 - 0
src/main/java/sys/sc/opplugin/utils/InterFaceImgUtils.java

@@ -51,6 +51,10 @@ public class InterFaceImgUtils {
     }
     //获取文件名
     public String getFileName() {return jkpzxx.getString("nckd_filename");}
+    //获取文件保存路径
+    public String getFileLocalPath(){
+        return jkpzxx.getString("nckd_downloadfile");
+    }
 
 
 }

+ 3 - 3
src/main/java/sys/sc/opplugin/utils/SftpClient.java

@@ -65,9 +65,9 @@ public class SftpClient {
         }
     }
 
-    //下载文件到桌面
-    public InputStream downloadFile(String url) throws SftpException {
-        return   sftpChannel.get(url);
+    //下载文件到指定位置
+    public void downloadFile(String url,String localpath) throws SftpException {
+        sftpChannel.get(url,localpath);
     }
 
     public ChannelSftp getSftpChannel() {