#region 函数说明:按人控制权限菜单权限条件
        /// <summary>
        /// CRMModelPermissonStrWhere
        /// </summary>
        /// <param name="menucode">菜单代号</param>
        /// <param name="DataTableName">数据表名</param>
        /// <returns></returns>
        public string CRMModelPermissonStrWhere(string menucode, string DataTableName)
        {
            string StrWhere = "";
            string ErrorMsg = "";
            List<string> StrWhereList = new List<string>();
            var permission = PublicFunctions.UserPermissionClass.GetUserMenuPermissionModel(menucode, ServiceData.UserInfo);
            string PermissionStrWhere;
            if (permission.ToPermissionStrWhere(out PermissionStrWhere, out ErrorMsg))
            {
                if (!Check.IsNull(PermissionStrWhere))
                {
                    string guidPattern = "[?a-zA-Z0-9]{8}-[?a-zA-Z0-9]{4}-[?a-zA-Z0-9]{4}-[?a-zA-Z0-9]{4}-[?a-zA-Z0-9]{12}";
                    MatchCollection fileList = Regex.Matches(PermissionStrWhere, guidPattern);
                    string UserGuid = "'";
                    for (int i = 0; i < fileList.Count; i++)
                    {
                        UserGuid += fileList[i];
                        if (i < fileList.Count - 1)
                        {
                            UserGuid += "','";
                        }
                    }
                    UserGuid += "','" + ServiceData.UserInfo.UserGuid + "'";
                    StrWhereList.Add("ID in(select UniqueKey from CRMPermissionMapping where DataTableName='" + DataTableName + "' and UserGuid in(" + UserGuid + ") and IsValid='true')");
                }
                else
                {
                    StrWhereList.Add("1=1");
                }
            }
            else
            {
                StrWhereList.Add("1=0");
            }
            StrWhere = StrWhereList.Count > 0 ? (" where " + string.Join(" and ", StrWhereList)) : "";
            return StrWhere;
        }
        #endregion