用户仓库在业务对象功能授权进行了权限管理,在移动端如何在选择仓库的时候按照权限进行筛选

栏目:云星空知识作者:金蝶来源:金蝶云社区发布:2024-09-23浏览:1

用户仓库在业务对象功能授权进行了权限管理,在移动端如何在选择仓库的时候按照权限进行筛选

【应用场景】

用户仓库进行了权限管理,在平板上生产入库时选择仓库还是可以选择到所有的仓库,目前的移动端的f8还是按照使用组织进行过滤的。如果客户想要按照权限控制的话需要二开插件干预一下


【实现步骤】

<1>在pc单的业务对象功能授权里面选择角色对仓库进行数据范围的控制。

屏端登录的用户选择这个角色进行控制。

<2>目前就以领料这个界面进行二开参考。首先需要扩展SFC_MobileComplexPickMtrlEdit元数据,同时继承ComplexPickEdit,重写方法f7,参考代码如下:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Kingdee.BOS.Core.DynamicForm.PlugIn.Args;
using Kingdee.BOS.Core.Permission.Objects;
using Kingdee.BOS.ServiceHelper;
using Kingdee.BOS.Util;

namespace Kingdee.K3.MFG.Mobile.Business.PlugIn.SFC.Complex
{
    public class Class1 : ComplexPickEdit
    {
        public override void BeforeF7Select(BeforeF7SelectEventArgs e)
        {
            base.BeforeF7Select(e);
            switch (e.FieldKey.ToUpper())
            {
                case "FSTOCKID":
                    string formId = "BD_STOCK";//仓库单据ID
                    Kingdee.BOS.Core.Metadata.FormMetadata stockFormMetaData = MetaDataServiceHelper.GetFormMetaData(this.View.Context, formId);
                    DataRuleFilterParamenter filterParameter = new DataRuleFilterParamenter(formId)
                    {
                        PermissionItemId = Kingdee.BOS.Core.Permission.PermissionConst.View,
                        SubSystemId = stockFormMetaData.BusinessInfo.GetForm().SubsysId,
                        BusinessInfo = stockFormMetaData.BusinessInfo
                    };
                    //获取当前用户可以访问哪些仓库(过滤条件)
                    DataRuleFilterObject filterObject = PermissionServiceHelper.LoadDataRuleFilter(this.View.Context, filterParameter);
                    if (!string.IsNullOrEmpty(filterObject.FilterString))
                    {
                        e.ListFilterParameter.Filter = e.ListFilterParameter.Filter.JoinFilterString(filterObject.FilterString);
                    }
                    break;
            }
        }
    }
}

<3>BOSIDE扩展,注册表单插件,保存元数据,开发完毕。



【参考资料】

【二开案例.基础资料.联动查询(GetValue)】

https://vip.kingdee.com/article/127710528226504960



【金蝶云星空BOS二次开发案例演示】

https://vip.kingdee.com/article/94751030918525696



用户仓库在业务对象功能授权进行了权限管理,在移动端如何在选择仓库的时候按照权限进行筛选

【应用场景】用户仓库进行了权限管理,在平板上生产入库时选择仓库还是可以选择到所有的仓库,目前的移动端的f8还是按照使用组织进行过滤的...
点击下载文档
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息