开发小技巧原创
金蝶云社区-云社区用户6QzL0379
云社区用户6QzL0379
3人赞赏了该文章 295次浏览 未经作者许可,禁止转载编辑于2024年08月13日 16:41:06
summary-icon摘要由AI智能服务提供

本文详细列出了一系列关于软件开发中常见任务的操作方法,包括密码加密与修改、自定义样式设置、类型转换、数据操作(如Dataset与动态对象互转、数据库查询)、权限管理、插件操作、URL处理、本地开发环境配置、HR权限初始化及配置、Dataset创建、用户类型判断等。此外,还列举了大量SDK服务帮助类的用途,如工作流、HR权限、用户数据、打印服务、附件处理、时间管理、系统参数、核算结果查询等,旨在提供全面的开发工具和解决方案。

1、获取变更字段名称

this.getModel().getChangeDesc();

2、修改密码

修改密码
1. 通过String encrypt1 = PasswordEncryptUtil.getEncryptePasswordWithSalt(password, LoginUtils.getCorrectUserIDSalt(fid));
这个方法生成加密密码。其中password为明文密码,fid为t_sec_user的主键。
2. 生成密码后,通过update/insert,修改t_sec_user_u表的fpassword为第一步的值,fpswhisstr值将旧的值和第一步获取的值,通过“,”拼接在一起。fislocked修改为0,ferrcount修改为0。

3、自定义样式:

去掉滚动条:
overflow:hidden
大文本摘要模式如何只锁定摘要:
textarea.kd-input-textarea.kd-input-size-middle.kd-input-borderless.kd-input-no-resize._1S-MadLf._7OkOLO3-.fP5zEpbC.Vd99Dgx4._2QP5fB-K.primary-text-in-light{
pointer-events: none;
}

4、映射方法

@SuppressWarnings("unchecked")
public static <T> T cast(Object obj) {
    return (T) obj;
}

5、获取APPID

AppInfo appInfo = AppMetadataCache.getAppInfo("app编码");
String appId = appInfo.getId();

6、Dataset 转换为动态对象

ORM.create().toPlainDynamicObjectCollection()

7、将dynamicObjectCollection 转回为  DataSet

 ORMUtil.toDataSet(orgrDyAll)

8、查询哪个基础资料

查询分析器,数据库选择:系统库,执行sql:SELECT fnumber FROM t_meta_entitydesign WHERE fid = '1VX2M+PT8GHU';

9、单据流程属性

https://developer.kingdee.com/article/319911049011465472?productLineId=29&isKnowledge=2

10、获取表单标识

((IListView)this.getView().getParentView()).getBillFormId();

11、获取业务单元、行政组织

List<Long> orgIds = new ArrayList<>(); orgIds.add(100000L); 
// 根据业务单元获取行政组织 
List<Long> adminOrgIds = OrgUnitServiceHelper.getAdminOrgRelation(orgIds, true);
 // 根据行政组织获取业务单元 
List<Long> orgUnitIds = OrgUnitServiceHelper.getAdminOrgRelation(orgIds, false);

12、获取权限

//获取当前人员有权限的组织  
HasPermOrgResult userHasPermOrgs = PermissionServiceHelper.getUserHasPermOrgs(Long.parseLong(RequestContext.get().getUserId()))        
//有权的组 织         
List<Long> hasPermOrgs = userHasPermOrgs.getHasPermOrgs();         
//是否全部组织有权         
boolean hasallOrg = userHasPermOrgs.hasAllOrgPerm();

13、判断当前用户是否管理员

PermissionServiceHelper.isAdminUser(UserServiceHelper.getCurrentUserId());

14、操作插件加载所有字段

@Override
public void onPreparePropertys(PreparePropertysEventArgs e) {
    super.onPreparePropertys(e);
    List<String> fieldKeys = e.getFieldKeys();
    fieldKeys.addAll(this.billEntityType.getAllFields().keySet());
}

15、获取操作插件传递的信息,类似界面显示参数

CaseInsensitiveMap map = (CaseInsensitiveMap) this.getOption().getVariables();

16、字段下提示

FieldTip fieldTip = new FieldTip();
fieldTip.setLevel(FieldTip.FieldTipsLevel.Info);
fieldTip.setFieldKey(DeliveryRecordConst.PIGBATCH);

17、客户端自定义调用指令

this.getView().executeClientCommand(String command. Object... args)方法调用的指令

18、转换url地址 外部可以直接下载,但不是长期有效

EncreptSessionUtils.encryptSession(url)

19、本地开发环境调度计划、工作流无法调试需要在Debug加此参数

System.setProperty("mg.consumer.register","true");//该参微false,本节点将不会消费mq消息
System.setProperty("mq.debug.queue.tag","test");

20、本地开发环境免密登录配置

System.setProperty("login.type","STANDALONE");

21、HR权限

如何初始化HR权限

HR权限数据维度管理

关联权限项

二开业务如何配置HR权限

22、创建Dataset

String[] fields = {
        "number"
        //后面跟你其他的字段
};
DataType[] flowDataTypes = {
        DataType.StringType
        //后面跟你其他的字段
};
Collection<Object[]> coll = new ArrayList<>();//创建显示行字段
Object[] tempData = new Object[fields.length];
tempData[0] = "张三";
coll.add(tempData);
RowMeta createRowMeta = RowMetaFactory.createRowMeta(fields, flowDataTypes);
CollectionInput collectionInput = new CollectionInput(createRowMeta, coll);
DataSet createDataSet = Algo.create(this.getClass().getName()).createDataSet(collectionInput);

23、判断全功能用户

kd.bos.permission.api.PermissionService#isSuperUser


一些常用SDK

WorkflowServiceHelper  工作流

HRPermissionServiceHelper HR权限服务

PermissionServiceHelper 平台权限服务

UserServiceHelper 人员数据服务

BosPrintServiceHelper 新打印服务

AttachmentFieldServiceHelper 附件字段服务帮助类

AttachmentServiceHelper 附件帮助服务类

TimeServiceHelper 时间服务

PropertyHelper 属性判断工具

SystemParamServiceHelper 系统参数服务

CalResultQueryService  核算名单/薪资明细结果查询

HRQueryEntityHelper HR 查询实体数据查询工具类

PushServiceHelper 消息推送服务

PromptServiceHelper 提示语服务

OrgUnitServiceHelper 组织单元服务

OrgServiceHelper 组织服务类

OperationServiceHelper 单据操作服务

MutexHelper 网络互斥帮助类

ImageServiceHelper 图片服务帮助类

HSPMServiceHelper 人员信息服务

HRMsgCollaborationServiceHelper 消息协同服务

FlexHelper 弹性域帮助类

FilterServiceHelper 过滤方案服务帮助类

DeleteServiceHelper 单据删除服务

SaveServiceHelper 单据保存服务

BusinessDataServiceHelper 业务数据服务

BaseDataRefrenceHelper 基础资料引用检查帮助类

AppMetaServiceHelper 应用元数据服务帮助类

AppMetadataCache 应用元数据服务类,用于获取应用元数据的信息

FileService 文件服务








——————————————————————————————持续更新...





赞 3