Exemplo n.º 1
0
        public virtual Task <AjaxResult> ModifyRangeDic(string jsonArray, ServerCallContext context)
        {
            var request = JsonHelper.ToObject <List <Dictionary <string, string> > >(jsonArray);

            //拿到对象并根据字典进行相关字典修改
            var entityList = baseService().FindAll(m => request.Select(s => Convert.ToInt32(s["ID"])).Contains(m.ID)).Result;

            entityList.ForEach(mEntity =>
            {
                var curDic = request.Where(d => Convert.ToInt32(d["ID"]) == mEntity.ID).First();
                EntityAutoMapper.ConvertMappintDic(mEntity, curDic, false);
            });
            AjaxResult result = new AjaxResult();

            return(Task.Run <AjaxResult>(() =>
            {
                if (baseService().UpdateRange(entityList).Result)
                {
                    result.Result = DoResult.Success;
                    result.NumberMsg = 3010;
                }
                else
                {
                    result.Result = DoResult.Failed;
                    result.NumberMsg = 3011;
                }
                return result;
            }));
        }
Exemplo n.º 2
0
        public virtual Task <PageResult <PD> > GetListByPage <PD, PP>(PP request, Func <IQueryable <M>, PP, IQueryable <M> > ExtendQueryListByPage, bool IsAutoSelector = true, Expression <Func <M, M> > _ListByPageSelector = null)
        {
            return(Task.Run <PageResult <PD> >(() =>
            {
                try
                {
                    var QueryParams = request.GetType().GetProperty("QueryParams").GetValue(request);
                    var PageInfo = (PageFilter)request.GetType().GetProperty("PageInfo").GetValue(request);


                    PageResult <PD> pageResult;
                    if (_ListByPageSelector == null && IsAutoSelector)
                    {
                        var _ListByPageAutoSelector = LambdaSelectBuilder.BuildSelect <M, PD>();
                        var awaitRes = this.baseService().PageQuery(q => ExtendQueryListByPage(EntityAutoMapper.QueryWhereJoinBuild(q, QueryParams), request), PageInfo, _ListByPageAutoSelector);

                        pageResult = awaitRes.Result.GetJsonConvetPageData(PageInfo);
                    }
                    else
                    {
                        var awaitRes = this.baseService().PageQuery(q => ExtendQueryListByPage(EntityAutoMapper.QueryWhereJoinBuild(q, QueryParams), request), PageInfo, _ListByPageSelector);
                        pageResult = EntityAutoMapper.ConvertMappingList <PD, M>(awaitRes.Result).GetJsonConvetPageData(PageInfo);
                    }

                    return pageResult;
                }
                catch (Exception ex)
                {
                    logger.Error(ex: ex);
                    return new PageResult <PD> {
                        Total = -1
                    };
                }
            }));
        }
Exemplo n.º 3
0
        public async Task <List <AppUserMenuResDto> > GetAppUserMenus(int userId, string menuCode)
        {
            var mainMenuTask = _menuClient.FindByEntity(new Dictionary <string, string> {
                { "MENU_TYPE", "M" },
                { "TERMINAL_TYPE", "APP" },
                { "MENU_CODE", menuCode },
            });
            var userTask = _userClient.FindById(new ComEntity.IdModel {
                ID = userId
            });

            await mainMenuTask;
            await userTask;

            //查询主菜单下的所有子菜单
            var subMenuList = _menuClient.FindAllByEntity(new Dictionary <string, string> {
                { "MAIN_MENU_ID", mainMenuTask.Result.ID.ToString() }
            }).Result;

            if (userTask.Result.IS_MAIN != "Y")
            {
                //查询指定用户有权限的菜单
                var userMenuTask = _userMenuClient.FindMenuByUser(new ComEntity.IdModel {
                    ID = userId
                }).Result;
                var userMenuSubMenuIds = userMenuTask.Select(um => um.SUBMENU_ID);
                subMenuList = subMenuList.Where(mu => userMenuSubMenuIds.Contains(mu.ID)).ToList();
            }

            return(EntityAutoMapper.ConvertMappingList <AppUserMenuResDto, B2B_MENU>(subMenuList.OrderBy(m => m.ORDER).ToList()));
        }
Exemplo n.º 4
0
        public virtual Task <AjaxResult> ModifyDic(Dictionary <string, string> request, ServerCallContext context)
        {
            //拿到对象并根据字典进行相关字典修改
            M mEntity = baseService().Find(Convert.ToInt32(request["ID"])).Result;

            EntityAutoMapper.ConvertMappintDic(mEntity, request, false);

            AjaxResult result   = new AjaxResult();
            var        validRes = this.ValidAdd_Modify(mEntity, context).Result;

            return(Task.Run <AjaxResult>(() =>
            {
                if (validRes == "1")
                {
                    if (baseService().Update(mEntity).Result)
                    {
                        result.Result = DoResult.Success;
                        result.NumberMsg = 3010;
                    }
                    else
                    {
                        result.Result = DoResult.Failed;
                        result.NumberMsg = 3011;
                    }
                }
                else
                {
                    result.Result = DoResult.ValidError;
                    result.NumberMsg = Convert.ToInt32(validRes);
                }
                return result;
            }));
        }
Exemplo n.º 5
0
        public Task <CurrentUserEntity> ManagerUserLogin(LoginEntity request, ServerCallContext context)
        {
            return(Task.Run(() =>
            {
                List <B2B_USER> users = _userService().FindAll(u => u.USER == request.USER && u.PASSWORD == request.PASSWORD && new string[] { "SYS", "FIN" }.Contains(u.PARTY_TYPE), u => new B2B_USER
                {
                    ID = u.ID,
                    PARTY_ID = u.PARTY_ID,
                    PARTY_TYPE = u.PARTY_TYPE,
                    USER = u.USER,
                    IS_MAIN = u.IS_MAIN,
                    USER_NAME = u.USER_NAME,
                    MOBILE = u.MOBILE,
                    MAIL = u.MAIL,
                    IS_WXIN_LOGIN = u.IS_WXIN_LOGIN,
                    REG_STATUS = u.REG_STATUS,
                    START_DATE = u.START_DATE,
                    END_DATE = u.END_DATE
                }).Result;

                if (users != null && users.Count == 1)
                {
                    return EntityAutoMapper.ConvertMapping <CurrentUserEntity, B2B_USER>(users[0]);
                }
                else
                {
                    return new CurrentUserEntity();
                }
            }));
        }
Exemplo n.º 6
0
 public Task <List <UserMenuResDto> > GetUserMenuPaths(UserMenuReq request, ServerCallContext context)
 {
     return(Task.Run(() =>
     {
         List <B2B_MENU> menuList = base.baseService().FindAll(m => m.MENU_SORT == request.MENU_SORT && m.TERMINAL_TYPE == request.TERMINAL_TYPE && (request.IDs == null ? true : request.IDs.Contains(m.ID)) && m.IS_AVAILABLE == "Y").Result;
         if (menuList != null)
         {
             return EntityAutoMapper.ConvertMappingList <UserMenuResDto, B2B_MENU>(menuList);
         }
         return new List <UserMenuResDto>();
     }));
 }
Exemplo n.º 7
0
        /// <summary>
        /// 获取用户扩展类
        /// </summary>
        /// <param name="userId"></param>
        /// <returns></returns>
        public async Task <B2B_USER_Extend> FindExtendById(int userId)
        {
            //获取用户记录
            var user = await _userClient.FindById(new IdModel { ID = userId });

            //扩展类转换
            var userExtend = EntityAutoMapper.ConvertMapping <B2B_USER_Extend, B2B_USER>(user);
            //获取微信详情
            var wxFindDic = new Dictionary <string, string>();

            wxFindDic.Add("USER_ID", user.ID.ToString());
            return(userExtend);
        }
Exemplo n.º 8
0
        /// <summary>
        /// 获取扩展实体
        /// </summary>
        /// <param name="ID"></param>
        /// <returns></returns>
        public async Task <B2B_MENU_FUNCTION_Extend> FindExtendById(int ID)
        {
            var menuFunction = await _menuFunctionClient.FindById(new IdModel { ID = ID });

            var menuFunctionExtend = EntityAutoMapper.ConvertMapping <B2B_MENU_FUNCTION_Extend, B2B_MENU_FUNCTION>(menuFunction);
            //获取菜单的值
            Task <List <NameByIdDto> > menuDtoList = null;

            menuDtoList = _extendSearchGroup.MenuNameByIdFind(menuDtoList, () => new List <int> {
                menuFunctionExtend.ID
            }, "MENU_NAME");
            menuFunctionExtend.MENU_NAME = menuDtoList.Result.FirstOrDefault()?.NAME1;
            return(menuFunctionExtend);
        }
Exemplo n.º 9
0
        public Task <List <MenuByUserDto> > FindMenuByUser(IdModel request, ServerCallContext context)
        {
            return(Task.Run(() =>
            {
                List <B2B_USER_MENU> userMenuList = base.baseService().FindAll(m => m.USER_ID == request.ID, m => new B2B_USER_MENU
                {
                    ID = m.ID,
                    MAIN_MENU_ID = m.MAIN_MENU_ID,
                    SUBMENU_ID = m.SUBMENU_ID
                }).Result;

                if (userMenuList != null)
                {
                    return EntityAutoMapper.ConvertMappingList <MenuByUserDto, B2B_USER_MENU>(userMenuList);
                }
                return new List <MenuByUserDto>();
            }));
        }
Exemplo n.º 10
0
        public async Task <B2B_MENU_Extend> FindExtendById(int ID)
        {
            var menu = await _menuClient.FindById(new IdModel { ID = ID });

            var menuExtend = EntityAutoMapper.ConvertMapping <B2B_MENU_Extend, B2B_MENU>(menu);
            //父层菜单
            Task <List <NameByIdDto> > mainMenuDtoList = null;

            mainMenuDtoList = _extendSearchGroup.MenuNameByIdFind(mainMenuDtoList, () => new List <int>()
            {
                menu.MAIN_MENU_ID.ToIntByIntNull()
            }, "MENU_NAME");
            await mainMenuDtoList;

            menuExtend.MAIN_MENU_NAME = mainMenuDtoList.Result.FirstOrDefault()?.NAME1;

            return(menuExtend);
        }
Exemplo n.º 11
0
        public Task <MessageAlertDto> FindMessageByAlert(string request, ServerCallContext context)
        {
            return(Task.Run(() =>
            {
                List <B2B_MESSAGES> messageList = this.baseService().FindAll(m => m.MESSAGE_NUMBER == request, m => new B2B_MESSAGES
                {
                    MESSAGE_NUMBER = m.MESSAGE_NUMBER,
                    MESSAGE_TEXT = m.MESSAGE_TEXT,
                    MESSAGE_TYPE = m.MESSAGE_TYPE
                }).Result;

                if (messageList.Count > 0)
                {
                    return EntityAutoMapper.ConvertMapping <MessageAlertDto, B2B_MESSAGES>(messageList[0]);
                }
                else
                {
                    return new MessageAlertDto();
                }
            }));
        }
Exemplo n.º 12
0
 /// <summary>
 /// 针对新增/编辑的校验
 /// </summary>
 /// <param name="request">校验对象</param>
 /// <returns>返回消息编码  1-代表校验通过</returns>
 public virtual Task <string> ValidAdd_Modify(M request, ServerCallContext context)
 {
     return(Task.Run(() => EntityAutoMapper.ValidWhereJoinBuild(request, (s) => this.baseService().Count(s).Result)));
 }
Exemplo n.º 13
0
        /// <summary>
        /// 获取码表值
        /// </summary>
        /// <param name="lookupTypeName"></param>
        /// <returns></returns>
        public Task <List <LookUpValuesByTypeDto> > GetLookUpValuesByType(List <LookUpValuesByTypeParams> requests, ServerCallContext context)
        {
            return(Task.Run(() =>
            {
                var lookupTypes = requests.Select(r => r.LookUpName).ToList();
                List <B2B_LOOKUP_VALUES> values = base.baseService().FindAll(q => lookupTypes.Contains(q.LOOKUP_TYPE)).Result;

                List <B2B_LOOKUP_VALUES> lookupValues;
                List <B2B_LOOKUP_VALUES> removeList;

                void RemoveLookup(Func <B2B_LOOKUP_VALUES, bool> predicate)
                {
                    removeList = lookupValues.Where(predicate).ToList();
                    removeList.ForEach(d =>
                    {
                        lookupValues.Remove(d);
                        values.Remove(d);
                    });
                }

                foreach (var item in requests)
                {
                    lookupValues = values.Where(v =>
                                                v.LOOKUP_TYPE == item.LookUpName).ToList();


                    //不包含失效数据   进行排除
                    if (!item.IsBetweenOt)
                    {
                        RemoveLookup(v => (v.ENABLED_FLAG != "Y" ||
                                           (v.END_DATE_ACTIVE != null && DateTime.Now > Convert.ToDateTime(v.END_DATE_ACTIVE)) ||
                                           v.START_DATE_ACTIVE > DateTime.Now));
                    }

                    //只保留指定Code
                    if (item.LOOKUP_CODE_List != null && item.LOOKUP_CODE_List.Count > 0)
                    {
                        RemoveLookup(v => !item.LOOKUP_CODE_List.Contains(v.LOOKUP_CODE));
                    }

                    //只保留满足条件的
                    if (!string.IsNullOrEmpty(item.ATTIBUTE1))
                    {
                        RemoveLookup(v => v.ATTIBUTE1 != item.ATTIBUTE1);
                    }
                    if (!string.IsNullOrEmpty(item.ATTIBUTE2))
                    {
                        RemoveLookup(v => v.ATTIBUTE2 != item.ATTIBUTE2);
                    }
                    if (!string.IsNullOrEmpty(item.ATTIBUTE3))
                    {
                        RemoveLookup(v => v.ATTIBUTE3 != item.ATTIBUTE3);
                    }
                    if (!string.IsNullOrEmpty(item.ATTIBUTE4))
                    {
                        RemoveLookup(v => v.ATTIBUTE4 != item.ATTIBUTE4);
                    }
                    if (!string.IsNullOrEmpty(item.ATTIBUTE5))
                    {
                        RemoveLookup(v => v.ATTIBUTE5 != item.ATTIBUTE5);
                    }
                    if (!string.IsNullOrEmpty(item.TAG))
                    {
                        RemoveLookup(v => v.TAG != item.TAG);
                    }
                }

                return EntityAutoMapper.ConvertMappingList <LookUpValuesByTypeDto, B2B_LOOKUP_VALUES>(values);
            }));
        }