读写系统参数原创
14人赞赏了该文章
185次浏览
编辑于2024年09月30日 15:20:01
using Kingdee.BOS;using Kingdee.BOS.Core.DynamicForm.PlugIn.Args; using Kingdee.BOS.Core.List.PlugIn;using Kingdee.BOS.ServiceHelper; using Kingdee.BOS.Util;using System.ComponentModel; namespace Jac.XkDemo.BOS.Business.PlugIn{ /// <summary> /// 【列表插件】读写系统参数 /// </summary> [Description("【列表插件】读写系统参数"), HotUpdate] public class ReadAndWriteSysParameterListPlugIn : AbstractListPlugIn { /// <summary> /// 列表主菜单点击事件 /// </summary> /// <param name="e"></param> public override void BarItemClick(BarItemClickEventArgs e) { base.BarItemClick(e); if (e.BarItemKey.EqualsIgnoreCase("tbReadSysParameter")) { var auxMustInput = ReadSysParameter(this.Context, 0, "BOS_PlatformConfig", "FDisableWebApi"); this.View.ShowMessage("系统参数【禁用WebApi】:" + auxMustInput); return; } if (e.BarItemKey.EqualsIgnoreCase("tbWriteSysParameter")) { var isOk = WriteSysParameter(this.Context, 0, "BOS_PlatformConfig", "FDisableWebApi", true); this.View.ShowMessage(isOk ? "系统参数保存成功" : "系统参数保存失败"); return; } } /// <summary> /// 读取系统参数 /// </summary> /// <param name="ctx">上下文</param> /// <param name="orgId">系统参数所属组织</param> /// <param name="parameterObjId">系统参数的业务对象标识</param> /// <param name="parameterName">系统参数的实体属性名</param> /// <returns></returns> public static object ReadSysParameter(Context ctx, long orgId, string parameterObjId, string parameterName) { // 读取系统参数数据包 var parameterData = SystemParameterServiceHelper.Load(ctx, orgId, 0, parameterObjId); // 从系统参数数据包中获取某一个参数 if (parameterData != null && parameterData.DynamicObjectType.Properties.ContainsKey(parameterName)) { return parameterData[parameterName]; } return null; } /// <summary> /// 保存系统参数 /// </summary> /// <param name="ctx">上下文</param> /// <param name="orgId">系统参数所属组织</param> /// <param name="parameterObjId">系统参数的业务对象标识</param> /// <param name="parameterName">系统参数的实体属性名</param> /// <param name="parameterValue">系统参数的值</param> /// <returns></returns> public static bool WriteSysParameter(Context ctx, long orgId, string parameterObjId, string parameterName, object parameterValue) { // 获取系统参数的元数据 var formMetadata = FormMetaDataCache.GetCachedFormMetaData(ctx, parameterObjId); // 读取系统参数包 var parameterData = SystemParameterServiceHelper.Load(ctx, orgId, 0, parameterObjId); // 从系统参数包中获取某一个参数 if (parameterData != null && parameterData.DynamicObjectType.Properties.Contains(parameterName)) { parameterData[parameterName] = parameterValue; var result = SystemParameterServiceHelper.Save(ctx, formMetadata.BusinessInfo, parameterData, orgId, 0, true); return result.IsSuccess; } return false; } } } /*-- 查询系统参数SELECT * FROM T_BAS_SYSPARAMETER */
赞 14
14人点赞
还没有人点赞,快来当第一个点赞的人吧!
打赏
0人打赏
还没有人打赏,快来当第一个打赏的人吧!