Explorar o código

员工收款信息改,人员头像获取

zhouger hai 5 meses
pai
achega
282a5c52b3

+ 25 - 52
src/main/java/sys/sc/formplugin/PayInformationPlugin.java

@@ -1,6 +1,8 @@
 package sys.sc.formplugin;
 
+import kd.bos.context.RequestContext;
 import kd.bos.dataentity.entity.DynamicObject;
+import kd.bos.dataentity.entity.LocaleString;
 import kd.bos.entity.datamodel.events.ChangeData;
 import kd.bos.entity.datamodel.events.PropertyChangedArgs;
 import kd.bos.form.events.BeforeDoOperationEventArgs;
@@ -9,6 +11,9 @@ import kd.bos.form.plugin.AbstractFormPlugin;
 import kd.bos.orm.query.QCP;
 import kd.bos.orm.query.QFilter;
 import kd.bos.servicehelper.BusinessDataServiceHelper;
+import kd.bos.servicehelper.user.UserServiceHelper;
+
+import java.util.EventObject;
 
 /**
  * @author cjz
@@ -22,6 +27,21 @@ public class PayInformationPlugin extends AbstractFormPlugin {
     private static String bos_user="bos_user";//人员表标识
 
 
+    @Override
+    public void afterBindData(EventObject e) {
+        super.afterBindData(e);
+        long userID = UserServiceHelper.getCurrentUserId();
+        DynamicObject user=BusinessDataServiceHelper
+                .loadSingle("bos_user","id,name",new QFilter[]{new QFilter("id",QCP.equals,userID)});
+        //设置管理员工号为当前用户
+        this.getModel().setValue("nckd_adminnum",user);
+        String name= user.getLocaleString("name").getLocaleValue();
+        //管理员姓名
+        this.getModel().setValue("nckd_adminname",name);
+
+    }
+
+
     @Override
     public void propertyChanged(PropertyChangedArgs e) {
         super.beforePropertyChanged(e);
@@ -29,65 +49,18 @@ public class PayInformationPlugin extends AbstractFormPlugin {
         //获取当前单据
         DynamicObject dynamicObject=this.getModel().getDataEntity(true);
         //选择收款人工号后自动带出收款人姓名
-        if (nckd_payeenum.equals(name))
-        {
+        if (nckd_payeenum.equals(name)) {
             ChangeData[] changeSet = e.getChangeSet();//获取值
             ChangeData changeData = changeSet[0];
             DynamicObject payObj= (DynamicObject) changeData.getNewValue();
             QFilter filter=new QFilter("number", QCP.equals,payObj.get("number"));
             DynamicObject payeeuser= BusinessDataServiceHelper.loadSingle(bos_user,QCP.equals,new QFilter[]{filter});
+            String payname= payeeuser.getLocaleString("name").getLocaleValue();
             //设置收款人姓名
-            this.getModel().setValue("nckd_payeename",payeeuser);
+            this.getModel().setValue("nckd_payeename",payname);
         }
-        //选择管理员工号后自动带出管理人姓名
-        if (nckd_adminnum.equals(name))
-        {
-            ChangeData[] changeSet = e.getChangeSet();//获取值
-            ChangeData changeData = changeSet[0];
-            DynamicObject payObj= (DynamicObject) changeData.getNewValue();
-            QFilter filter=new QFilter("number", QCP.equals,payObj.get("number"));
-            DynamicObject adminuser= BusinessDataServiceHelper.loadSingle(bos_user,QCP.equals,new QFilter[]{filter});
-            //设置收款人姓名
-            this.getModel().setValue("nckd_adminname",adminuser);
-        }
-
     }
 
-    //保存前校验
-    public void beforeDoOperation(BeforeDoOperationEventArgs args) {
-        super.beforeDoOperation(args);
-        AbstractOperate op = (AbstractOperate)args.getSource();
-        String operateKey = op.getOperateKey();
-        //获取当前单据
-        DynamicObject dynamicObject=this.getModel().getDataEntity(true);
-        //获取工号
-        DynamicObject payeenumDy=dynamicObject.getDynamicObject("nckd_payeenum");
-        String payeenum=payeenumDy.getString("number");
-        //数据状态
-        String nckd_datastatus=dynamicObject.getString("nckd_datastatus");
-        //银行账号
-        String nckd_payaccount=dynamicObject.getString("nckd_payaccount");
-        //保存前加校验,每个工号只有一个启用数据
-        if ("bar_save".equals(operateKey)) {
-            //工号启用校验
-            QFilter qFilter=new QFilter("nckd_payeenum.number",QCP.equals,payeenum);
-            qFilter.and("nckd_datastatus",QCP.equals,nckd_datastatus);
-            DynamicObject[] dynamicObjects=BusinessDataServiceHelper
-                    .load("nckd_payinformation","id",new QFilter[]{qFilter});
-            if (dynamicObjects.length>0) {
-                this.getView().showMessage("同一个工号存在多个已启用的数据,工号为:"+payeenum);
-                //取消保存操作
-                args.setCancel(true);
-            }
-            //银行账号校验
-            QFilter filter=new QFilter("nckd_payaccount",QCP.equals,nckd_payaccount);
-            DynamicObject[] dylist=BusinessDataServiceHelper
-                    .load("nckd_payinformation","id",new QFilter[]{filter});
-            if (dylist.length>0) {
-                this.getView().showMessage("存在相同的银行账号:"+nckd_payaccount);
-                //取消保存操作
-                args.setCancel(true);
-            }
-        }
-    }
+
+
 }

+ 17 - 8
src/main/java/sys/sc/formplugin/TestPlugin.java

@@ -4,6 +4,8 @@ import com.jcraft.jsch.*;
 import com.tongtech.jms.ra.core.Options;
 import kd.bos.base.utils.msg.BaseMessage;
 import kd.bos.base.utils.msg.OrgMessage;
+import kd.bos.base.utils.user.UserUtils;
+import kd.bos.context.RequestContext;
 import kd.bos.dataentity.entity.CloneUtils;
 import kd.bos.dataentity.entity.DynamicObject;
 import kd.bos.dataentity.entity.DynamicObjectCollection;
@@ -26,6 +28,7 @@ import kd.bos.servicehelper.BusinessDataServiceHelper;
 import kd.bos.servicehelper.operation.DeleteServiceHelper;
 import kd.bos.servicehelper.operation.OperationServiceHelper;
 import kd.bos.servicehelper.operation.SaveServiceHelper;
+import kd.bos.url.UrlService;
 import kd.epm.eb.common.model.DynamicInfoCollection;
 import kd.imc.bdm.common.constant.BotpCallBackLogConstant;
 import sys.sc.opplugin.utils.InterFaceImgUtils;
@@ -267,6 +270,8 @@ public class TestPlugin  extends AbstractListPlugin {
         }
         //更新人员
         else if ("gxry".equals(e.getOperateKey())) {
+            //新增人员list
+            List<DynamicObject> userlist=new ArrayList<>();
             //更新人员
             // 从 nckd_basicdata 表中获取所有人员数据,假设通过某个条件查找
             DynamicObject[] personDataArray = BusinessDataServiceHelper.load(
@@ -459,6 +464,7 @@ public class TestPlugin  extends AbstractListPlugin {
                     }else {
                         bumeninfo.set("post", positionnumber);
                     }
+
                     // 保存新用户信息
                     SaveServiceHelper.save(new DynamicObject[]{userinfo});
                     msg+="工号为 " + gonghao + " 的用户已创建!";
@@ -474,8 +480,15 @@ public class TestPlugin  extends AbstractListPlugin {
                     String sql ="insert into t_sec_usertypes(fpkid,fid,fbasedataid) values(?,?,?)";
                     //刷新新增人员的类型
                     DB.update(dbRoute,sql,new Object[]{Long.valueOf(fpkid.substring(1)), userid,Long.valueOf("1")});
+                    userlist.add(userinfo);
                 }
             }
+
+            if(!userlist.isEmpty()) {
+                //更新用户头像
+                UserUtils.createAvatar(userlist);
+            }
+
             if("".equals(msg)){
                 this.getView().showMessage("没有需要更新或新增的人员");
             }else{
@@ -841,14 +854,10 @@ public class TestPlugin  extends AbstractListPlugin {
             generateDataFile(filePath);
         }
         //
-        if("testaaa".equals(e.getOperateKey()))
-        {
-//            QFilter filter=new QFilter("number",QCP.equals,"12");
-//            DynamicObject dynamicObject=BusinessDataServiceHelper
-//                    .loadSingle("bos_user",new QFilter[]{filter});
-            DynamicObject dynamicObject = BusinessDataServiceHelper.newDynamicObject("");
-
-
+        if("testaaa".equals(e.getOperateKey())) {
+            DynamicObject[] userinfo=BusinessDataServiceHelper.load("bos_user","id",null);
+            UserUtils.createAvatar(userinfo);
+            SaveServiceHelper.save(userinfo);
         }
 
     }