123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105 |
- package fi.fa.opplugin;
- import com.alibaba.druid.util.StringUtils;
- import kd.bos.dataentity.entity.DynamicObject;
- import kd.bos.entity.plugin.AbstractOperationServicePlugIn;
- import kd.bos.entity.plugin.args.BeginOperationTransactionArgs;
- import kd.bos.orm.query.QCP;
- import kd.bos.orm.query.QFilter;
- import kd.bos.servicehelper.BusinessDataServiceHelper;
- import kd.bos.servicehelper.operation.SaveServiceHelper;
- //资产变更单
- public class FaChangeDeptBillOpPlugin extends AbstractOperationServicePlugIn {
- @Override
- public void beginOperationTransaction(BeginOperationTransactionArgs e) {
- DynamicObject[] dynamicObjects = e.getDataEntities();
- for (int i = 0; i < dynamicObjects.length; i++) {
- if (StringUtils.equals(e.getOperationKey(),"audit")) {
- DynamicObject info = BusinessDataServiceHelper.loadSingle(dynamicObjects[i].getPkValue(), dynamicObjects[i].getDynamicObjectType().getName());
- Long queryChangeType = Long.parseLong("733953285719123968");
- Long changetype = info.getDynamicObject("changetype").getLong("id");
- if (queryChangeType.equals(changetype)) {
- Long deptId = null;
- Long user = null;
- String number = null;
- DynamicObject userInfo = null;
- for (DynamicObject fieldentry : info.getDynamicObjectCollection("fieldentry")) {
- if ("fa_card_real.headusedept".equals(fieldentry.getString("field")) && !StringUtils.isEmpty(fieldentry.getString("aftervalue"))) {
- deptId = Long.parseLong(fieldentry.getString("aftervalue"));
- }
- if ("fa_card_real.headuseperson".equals(fieldentry.getString("field")) && !StringUtils.isEmpty(fieldentry.getString("aftervalue"))) {
- user = Long.parseLong(fieldentry.getString("aftervalue"));
- userInfo = getUser(user);
- }
- number = fieldentry.getString("assetnumber");
- }
- if (!StringUtils.isEmpty(number)) {
- //查询e管家实物卡片清单
- QFilter filter = new QFilter("nckd_card_real_code", QCP.equals,number);
- DynamicObject[] cardObjects = BusinessDataServiceHelper.load("nckd_fa_card_real_list","id",new QFilter[] {filter});
- for (int j = 0; j < cardObjects.length; j++) {
- DynamicObject cardInfo = BusinessDataServiceHelper.loadSingle(cardObjects[j].getPkValue(), cardObjects[j].getDynamicObjectType().getName());
- //回写e管家实物清单字段
- cardInfo.set("nckd_dept", deptId);//归属部门
- if (userInfo != null) {
- cardInfo.set("nckd_use_name", userInfo.getString("number"));//使用人
- }
- SaveServiceHelper.save(new DynamicObject[]{cardInfo});
- }
- }
- }
- }
- else if (StringUtils.equals(e.getOperationKey(),"unaudit")) {
- DynamicObject info = BusinessDataServiceHelper.loadSingle(dynamicObjects[i].getPkValue(), dynamicObjects[i].getDynamicObjectType().getName());
- Long queryChangeType = Long.parseLong("733953285719123968");
- Long changetype = info.getDynamicObject("changetype").getLong("id");
- if (queryChangeType.equals(changetype)) {
- Long deptId = null;
- Long user = null;
- String number = null;
- DynamicObject userInfo = null;
- for (DynamicObject fieldentry : info.getDynamicObjectCollection("fieldentry")) {
- if ("fa_card_real.headusedept".equals(fieldentry.getString("field")) && !StringUtils.isEmpty(fieldentry.getString("aftervalue"))) {
- deptId = Long.parseLong(fieldentry.getString("beforevalue"));
- }
- if ("fa_card_real.headuseperson".equals(fieldentry.getString("field")) && !StringUtils.isEmpty(fieldentry.getString("aftervalue"))) {
- user = Long.parseLong(fieldentry.getString("beforevalue"));
- userInfo = getUser(user);
- }
- number = fieldentry.getString("assetnumber");
- }
- if (!StringUtils.isEmpty(number)) {
- //查询e管家实物卡片清单
- QFilter filter = new QFilter("nckd_card_real_code", QCP.equals,number);
- DynamicObject[] cardObjects = BusinessDataServiceHelper.load("nckd_fa_card_real_list","id",new QFilter[] {filter});
- for (int j = 0; j < cardObjects.length; j++) {
- DynamicObject cardInfo = BusinessDataServiceHelper.loadSingle(cardObjects[j].getPkValue(), cardObjects[j].getDynamicObjectType().getName());
- //回写e管家实物清单字段
- cardInfo.set("nckd_dept", deptId);//归属部门
- if (userInfo != null) {
- cardInfo.set("nckd_use_name", userInfo.getString("number"));//使用人
- }
- SaveServiceHelper.save(new DynamicObject[]{cardInfo});
- }
- }
- }
- }
- }
- }
- /**
- * @description 查询用户表获取用户
- * @param id
- * @return Long
- */
- private DynamicObject getUser(Long id) {
- QFilter filter = new QFilter("id", QCP.in, id);
- DynamicObject[] user = BusinessDataServiceHelper.load("bos_user","id",new QFilter[] {filter});
- if (user.length > 0) {
- DynamicObject userInfo = BusinessDataServiceHelper.loadSingle(user[0].getPkValue(), user[0].getDynamicObjectType().getName());
- return userInfo;
- }
- return null;
- }
- }
|