Exemple #1
0
        protected async Task <Tuple <int, List <Company> > > GetPagedCompanyList(GetCompanyInput input)
        {
            var query = _companyRepositoryAsNoTrack;

            //TODO:根据传入的参数添加过滤条件

            query = query.WhereIf(!string.IsNullOrEmpty(input.CompanyName),
                                  c => c.CompanyName.Contains(input.CompanyName))
//                .WhereIf(!string.IsNullOrEmpty(input.IndustryCode),
//                    c => c.Industries.Any(i => i.Industry.IndustryCode == input.IndustryCode))
                    .WhereIf(input.IndustryId > 0,
                             c => c.Industries.Any(i => i.IndustryId == input.IndustryId))
                    .WhereIf(!string.IsNullOrEmpty(input.RegionCode), c => c.RegionCode == input.RegionCode)
                    .WhereIf(!string.IsNullOrEmpty(input.RegionParentCode),
                             c => c.Region.ParentCode == input.RegionParentCode)
                    .WhereIf(input.IsAuthed != null, c => c.IsAuthed == input.IsAuthed)
                    .WhereIf(input.IsActive != null, c => c.IsActive == input.IsActive);


            var companyCount = await query.CountAsync();

            var companys = query
                           .OrderBy(input.Sorting)
                           .PageBy(input)
                           .ToListAsync().Result;


            return(new Tuple <int, List <Company> >(companyCount, companys));
        }
        public GetCompanyOutput GetById(GetCompanyInput input)
        {
            var kt     = _companyService.GetById(input.Code);
            var output = Mapper.Map <Models.Company.Company, GetCompanyOutput>(kt);

            return(output);
        }
Exemple #3
0
        public async Task <PagedResultDto <NewCompanyListDto> > GetCompanys(GetCompanyInput input)
        {
            int TenantId = (int)(AbpSession.TenantId);

            using (_unitOfWorkManager.Current.SetTenantId(TenantId))
            {
                var query = _NewCompanyRepository.GetAll()
                            .WhereIf(
                    !input.Filter.IsNullOrEmpty(),
                    p => p.Name.Contains(input.Filter) ||
                    p.CustomerTypes.Title.Contains(input.Filter)
                    );
                var company = (from a in query
                               select new NewCompanyListDto
                {
                    Id = a.Id,
                    CompanyName = a.Name,
                    CustomerTypeName = a.CustomerTypes.Title,
                    NewCustomerTypeId = a.CustomerTypeId,
                    AccountManagerId = a.AccountManagerId,
                    ManagedBy = a.AbpAccountManager.UserName,
                    CountryCode = a.CountryId != null ? a.Countrys.CountryName : "",
                    CurrencyCode = a.CurrencyId != null ? a.Currencys.Code : ""
                });
                var companyCount = await company.CountAsync();

                var companylist = await company
                                  .OrderBy(input.Sorting)
                                  .PageBy(input)
                                  .ToListAsync();

                try
                {
                }
                catch (Exception es)
                {
                }
                var companylistoutput = companylist.MapTo <List <NewCompanyListDto> >();

                return(new PagedResultDto <NewCompanyListDto>(
                           companyCount, companylistoutput));
            }
        }
Exemple #4
0
        /// <summary>
        /// 根据查询条件获取企业表分页列表
        /// </summary>
        public async Task <PagedResultDto <CompanyListDto> > GetPagedCompanysAsync(GetCompanyInput input)
        {
            var query = _companyRepositoryAsNoTrack;
            //TODO:根据传入的参数添加过滤条件

            //            var companyCount = await query.CountAsync();
            //
            //            var companys =  query
            //                .OrderBy(input.Sorting)
            //                .PageBy(input)
            //                .ToListAsync().Result;
            var tupleResult = GetPagedCompanyList(input);

            var companyListDtos = tupleResult.Result.Item2.MapTo <List <CompanyListDto> >();

            return(new PagedResultDto <CompanyListDto>(
                       tupleResult.Result.Item1,
                       companyListDtos
                       ));
        }
        /// <summary>
        /// 根据查询条件获取企业信息分页列表
        /// </summary>
        public async Task <PagedResultDto <CompanyListDto> > GetPagedCompanysAsync(GetCompanyInput input)
        {
            var query = _companyRepositoryAsNoTrack;

            //TODO:根据传入的参数添加过滤条件

            var companyCount = await query.CountAsync();

            var companys = await query
                           .OrderBy(input.Sorting)
                           .PageBy(input)
                           .ToListAsync();

            var companyListDtos = companys.MapTo <List <CompanyListDto> >();

            return(new PagedResultDto <CompanyListDto>(
                       companyCount,
                       companyListDtos
                       ));
        }
Exemple #6
0
        public async Task <PagedResultDto <CompanyViewDt> > GetCompanies(GetCompanyInput input)
        {
            var query = _CompanyRepository.GetAll()
                        .WhereIf(
                !input.Filter.IsNullOrWhiteSpace(),
                p => p.CompanyCode.Contains(input.Filter) ||
                p.CompanyName.Contains(input.Filter) ||
                p.Address.Contains(input.Filter) ||
                p.Email.Contains(input.Filter) ||
                p.Fax.Contains(input.Filter) ||
                p.Cities.CityName.Contains(input.Filter) ||
                p.CustomerTypes.CustomerTypeName.Contains(input.Filter));
            var companycount = await query.CountAsync();

            var companydto = from c in query select new CompanyViewDt {
                Id = c.Id, CompanyCode = c.CompanyCode, CompanyName = c.CompanyName, City = c.Cities.CityName, Address = c.Address, Country = c.Cities.Country.CountryName, Fax = c.Fax, TelNo = c.TelNo, CustomerType = c.CustomerTypes.CustomerTypeName, Phone = c.PhoneNo, Email = c.Email, AccountManager = c.AbpAccountManager.UserName
            };
            var companydtos = await companydto.OrderBy(input.Sorting).PageBy(input).ToListAsync();

            var companydtoss = companydtos.MapTo <List <CompanyViewDt> >();

            return(new PagedResultDto <CompanyViewDt>(companycount, companydtoss));
        }
Exemple #7
0
        public async Task <PagedResultDto <CompanyListWithProductsDto> > GetPagedCompanysWithProductsAsync(GetCompanyInput input)
        {
            var tupleResult = GetPagedCompanyList(input);

            var companyListDtos = tupleResult.Result.Item2.MapTo <List <CompanyListWithProductsDto> >();

            return(new PagedResultDto <CompanyListWithProductsDto>(
                       tupleResult.Result.Item1,
                       companyListDtos
                       ));
        }
Exemple #8
0
 public async Task <List <Company> > GetCompany(GetCompanyInput Parameters)
 {
     return(await CompanyManager.GetCompany(Parameters));
 }
Exemple #9
0
        //public async Task<PagedResultDto<NewCompanyListDto>> GetCompanys(GetCompanyInput input)
        //{
        //    var query = _NewCompanyRepository.GetAll()
        //      .WhereIf(
        //      !input.Filter.IsNullOrEmpty(),
        //      p => p.Name.Contains(input.Filter) ||
        //          p.NewCustomerTypes.Title.Contains(input.Filter)
        //      );
        //    var company = (from a in query select new NewCompanyListDto {
        //        Id = a.Id,
        //        CompanyName = a.Name,
        //        CustomerId = a.CustomerId,
        //        CustomerTypeName = a.NewCustomerTypes.Title,
        //        NewCustomerTypeId = a.NewCustomerTypeId,
        //        AccountManagerId = a.AccountManagerId,
        //        ManagedBy = a.AbpAccountManager.UserName,
        //        ApprovedById = a.ApprovedById,
        //        ApprovedBy = a.AbpApprovedBy.UserName,
        //        IsApproved = a.IsApproved,
        //        CreatedBy = "",
        //        CreationTime = a.LastModificationTime ?? a.CreationTime,
        //        CreatedUserId = a.CreatorUserId ?? 0 ,
        //        TRNnumber = a.TRNnumber,
        //        TradeLicense = a.TradeLicense,
        //        IndustryName = a.IndustryId != null ? a.Industries.IndustryName : "",
        //        Discountable = a.Discountable,
        //        UnDiscountable = a.UnDiscountable
        //    });
        //    var companyCount = await company.CountAsync();
        //    var companylist = await company.ToListAsync();



        //    if (input.Sorting == "CompanyName,CustomerTypeName,ManagedBy,ApprovedBy,CustomerId,IsApproved,CreatedBy")
        //    {
        //        companylist = await company
        //        .OrderBy(a => a.CreationTime)
        //       .PageBy(input)
        //       .ToListAsync();
        //    }
        //    else
        //    {
        //       companylist = await company
        //      .OrderBy(input.Sorting)
        //      .PageBy(input)
        //      .ToListAsync();
        //    }

        //    foreach (var r in companylist)
        //    {
        //        if (r.CreatedUserId > 0)
        //        {
        //            var user = await UserManager.GetUserByIdAsync(r.CreatedUserId);
        //            r.CreatedBy = user.UserName;
        //        }

        //    }
        //    var companylistoutput = companylist.MapTo<List<NewCompanyListDto>>();

        //    return new PagedResultDto<NewCompanyListDto>(
        //        companyCount, companylistoutput);
        //}
        public async Task <PagedResultDto <NewCompanyListDto> > GetCompanys(GetCompanyInput input)
        {
            long userid   = (int)AbpSession.UserId;
            var  userrole = (from c in UserManager.Users
                             join urole in _userRoleRepository.GetAll() on c.Id equals urole.UserId
                             join role in _roleManager.Roles on urole.RoleId equals role.Id
                             where urole.UserId == userid
                             select role).FirstOrDefault();

            var query = _NewCompanyRepository.GetAll().Where(r => r.Id == 0);

            if (userrole.DisplayName == "Sales Executive" || userrole.DisplayName == "Sales Coordinator / Sales Executive")
            {
                query = (from comp in _NewCompanyRepository.GetAll() where comp.AccountManagerId == userid select comp);
            }
            else if (userrole.DisplayName == "Sales Manager" || userrole.DisplayName == "Sales Manager / Sales Executive")
            {
                query = (from com in _NewCompanyRepository.GetAll()
                         join q in _TeamDetailRepository.GetAll() on com.AccountManagerId equals q.SalesmanId
                         join r in _TeamRepository.GetAll() on q.TeamId equals r.Id
                         where r.SalesManagerId == userid
                         select com);
            }
            else
            {
                query = _NewCompanyRepository.GetAll();
            }

            query = query
                    .WhereIf(
                !input.Filter.IsNullOrEmpty(),
                p => p.Name.Contains(input.Filter) ||
                p.NewCustomerTypes.Title.Contains(input.Filter)
                );
            var company = (from a in query
                           select new NewCompanyListDto
            {
                Id = a.Id,
                CompanyName = a.Name,
                CustomerId = a.CustomerId,
                CustomerTypeName = a.NewCustomerTypes.Title,
                NewCustomerTypeId = a.NewCustomerTypeId,
                AccountManagerId = a.AccountManagerId,
                ManagedBy = a.AbpAccountManager.UserName,
                ApprovedById = a.ApprovedById,
                ApprovedBy = a.AbpApprovedBy.UserName,
                IsApproved = a.IsApproved,
                CreatedBy = "",
                CreationTime = a.LastModificationTime ?? a.CreationTime,
                CreatedUserId = a.CreatorUserId ?? 0,
                TRNnumber = a.TRNnumber,
                TradeLicense = a.TradeLicense,
                IndustryName = a.IndustryId != null ? a.Industries.IndustryName : "",
                Discountable = a.Discountable,
                UnDiscountable = a.UnDiscountable
            });
            var companyCount = await company.CountAsync();

            var companylist = await company.ToListAsync();



            if (input.Sorting == "CompanyName,CustomerTypeName,ManagedBy,ApprovedBy,CustomerId,IsApproved,CreatedBy")
            {
                companylist = await company
                              .OrderBy(a => a.CreationTime)
                              .PageBy(input)
                              .ToListAsync();
            }
            else
            {
                companylist = await company
                              .OrderBy(input.Sorting)
                              .PageBy(input)
                              .ToListAsync();
            }

            foreach (var r in companylist)
            {
                if (r.CreatedUserId > 0)
                {
                    var user = await UserManager.GetUserByIdAsync(r.CreatedUserId);

                    r.CreatedBy = user.UserName;
                }
            }
            var companylistoutput = companylist.MapTo <List <NewCompanyListDto> >();

            return(new PagedResultDto <NewCompanyListDto>(
                       companyCount, companylistoutput));
        }
Exemple #10
0
        public static async Task <List <Company> > GetCompany(GetCompanyInput Parameters)
        {
            var List       = new List <Company>();
            var projection = Builders <Company> .Projection;
            var project    = projection.Exclude("_id");

            var filter = FilterDefinition <Company> .Empty;

            BsonValue val;

            if (Parameters.ColumnType == "int")
            {
                val = Convert.ToInt64(Parameters.Value);
            }
            else if (Parameters.ColumnType == "bool")
            {
                val = Convert.ToBoolean(Parameters.Value);
            }
            else
            {
                val = Convert.ToString(Parameters.Value);
            }

            if (Parameters.Statement == "=")
            {
                filter = Builders <Company> .Filter.Eq(Parameters.Column, val);
            }
            else if (Parameters.Statement == "<")
            {
                filter = Builders <Company> .Filter.Lt(Parameters.Column, val);
            }
            else if (Parameters.Statement == ">")
            {
                filter = Builders <Company> .Filter.Gt(Parameters.Column, val);
            }
            var option = new FindOptions <Company, BsonDocument> {
                Projection = project
            };

            using (var cursor = await db.GetCollection <Company>("Company").FindAsync(filter, option))
            {
                while (await cursor.MoveNextAsync())
                {
                    var batch = cursor.Current;
                    foreach (BsonDocument s in batch)
                    {
                        var Company = new Company();
                        if (s.Contains("CompanyID"))
                        {
                            Company.CompanyID = s["CompanyID"].AsString;
                        }

                        if (s.Contains("CompanyName"))
                        {
                            Company.CompanyName = s["CompanyName"].AsString;
                        }
                        List.Add(Company);
                    }
                }
            }
            return(List);
        }