Exemple #1
0
        public async Task <MulitViewResult <CustomerModel> > GetAllName()
        {
            var result = new MulitViewResult <CustomerModel>();

            try
            {
                var customers = await _customerRepository.GetAll();

                foreach (var item in customers)
                {
                    result.Datas.Add(new CustomerModel()
                    {
                        CompanyName = item.CompanyName,
                        ContactName = item.ContactName
                    });
                }
                result.AllCount = result.Datas?.Count ?? 0;
            }
            catch (Exception ex)
            {
                result.Status  = -1;
                result.Message = ex.Message;
                Logger.WriteErrorLog("CustomerService", "GetAllName", ex);
            }
            return(result);
        }
        public async Task <MulitViewResult <ProductModel> > GetAllByCustomerId(int customerId, int categoryId)
        {
            var result = new MulitViewResult <ProductModel>();

            try
            {
                var customer = await _customerRepository.GetById(customerId);

                if (customer == null)
                {
                    result.Status  = -2;
                    result.Message = "The customer does not exsit";
                    return(result);
                }
                var groupProductList = await _buyerGroupRepository.GetGroupProductByBuyerGroupId(customer.BuyerGroupId ?? 0);

                if (groupProductList.Count == 0)
                {
                    result.Status  = -3;
                    result.Message = "No products are available. Please contact your administrator ";
                    return(result);
                }
                var productList = new List <ProductModel>();
                foreach (var groupProductItem in groupProductList)
                {
                    Product product;
                    if (categoryId == 0)
                    {
                        product = await _productRepository.GetById(groupProductItem.ProductId);
                    }
                    else
                    {
                        product = await _productRepository.GetByIdAndCategoryId(groupProductItem.ProductId, categoryId);
                    }
                    if (product != null)
                    {
                        productList.Add(new ProductModel()
                        {
                            Price     = groupProductItem.Price,
                            Id        = product.Id,
                            Code      = product.Code,
                            ShortDesc = product.ShortDesc,
                            LongDesc  = product.LongDesc,
                            Vendor    = product.Vendor,
                            Uom       = product.Uom.ToUomModel()
                        });
                    }
                }
                result.Datas = productList;
            }
            catch (Exception ex)
            {
                result.Status  = -1;
                result.Message = ex.Message;
                Logger.WriteErrorLog("ProductService", "GetAllByCustomerId", ex);
            }
            return(result);
        }
        public async Task <MulitViewResult <PermissionModel> > GetUserPermissions(int userId)
        {
            var result = new MulitViewResult <PermissionModel>();
            var data   = await _permissionBusiness.GetUserPermissions(userId);

            result.Datas    = data.ToList();
            result.AllCount = data.Count();
            return(result);
        }
        public async Task <MulitViewResult <CategoryModel> > GetAllCategoryByCustomerId(int customerId)
        {
            var result = new MulitViewResult <CategoryModel>();

            try
            {
                var customer = await _customerRepository.GetById(customerId);

                if (customer == null)
                {
                    result.Status  = -2;
                    result.Message = "The customer does not exsit";
                    return(result);
                }
                var groupProductList = await _buyerGroupRepository.GetGroupProductByBuyerGroupId(customer.BuyerGroupId ?? 0);

                if (groupProductList.Count == 0)
                {
                    result.Status  = -3;
                    result.Message = "No products are available,Please contact your administrator.";
                    return(result);
                }
                var categoryList   = new List <CategoryModel>();
                var categoryIdList = new List <int>();
                foreach (var groupProductItem in groupProductList)
                {
                    var product = await _productRepository.GetById(groupProductItem.ProductId);

                    if (product?.Category == null)
                    {
                        continue;
                    }
                    var tempCategoryModel = new CategoryModel()
                    {
                        Id           = product.Category.Id,
                        CategoryName = product.Category?.CategoryName
                    };
                    if (categoryList.IndexOf(tempCategoryModel) >= 0)
                    {
                        continue;
                    }
                    categoryIdList.Add(tempCategoryModel.Id);
                    categoryList.Add(tempCategoryModel);
                }
                result.Datas = categoryList;
            }
            catch (Exception ex)
            {
                result.Status  = -1;
                result.Message = ex.Message;
                Logger.WriteErrorLog("ProductService", "GetAllByCustomerId", ex);
            }
            return(result);
        }
Exemple #5
0
        public MulitViewResult <EmailTemplateModel> GetEmailTemplates()
        {
            var result = new MulitViewResult <EmailTemplateModel>();

            result.Datas = EntityClient.EmailTemplates.Select(t => new EmailTemplateModel
            {
                Id      = t.Id,
                Subject = t.Subject,
                Body    = t.Body
            }).ToList();

            return(result);
        }
        /// <summary>
        /// get deleivery address by customer id
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public async Task <MulitViewResult <OrderDevliveryAddrModel> > GetDeliveryAddrsByCustomerId(int id)
        {
            var result = new MulitViewResult <OrderDevliveryAddrModel>();

            try
            {
                //get customer all delivery address
                var deliveryAddrs = await _deliveryAddressRepository.GetAddrsByCustomerId(id);

                //get customer order delivery address
                var orderDeliveryAddrs = await _orderAddrRepository.GetOrderAddrByCustomerId(id);

                //customer has no delivery address
                if (deliveryAddrs == null || deliveryAddrs.Count < 1)
                {
                    result.Status  = -2;
                    result.Message = "Please contact admin to configure address";
                    return(result);
                }

                var deliveryAddrsModel = deliveryAddrs.Select(x => x.ToOrderDevliveryAddrModel()).ToList();

                //customer has no order address
                if (orderDeliveryAddrs == null || orderDeliveryAddrs.Count < 1)
                {
                    result.Datas = deliveryAddrsModel;
                    return(result);
                }

                //need to caculate usage rate
                foreach (var orderAddress in orderDeliveryAddrs)
                {
                    var deliveryAddrModel = deliveryAddrsModel.FirstOrDefault(x => x.Id == orderAddress.AddrId);
                    if (deliveryAddrModel == null)
                    {
                        continue;
                    }
                    deliveryAddrModel.Count++;
                }

                result.Datas = deliveryAddrsModel.OrderByDescending(x => x.Count).ToList();
            }
            catch (Exception ex)
            {
                result.Status  = -1;
                result.Message = ex.Message;
                Logger.WriteErrorLog("OrderService", "GetDeliveryAddrsByCustomerId", ex);
            }
            return(result);
        }
        public async Task <MulitViewResult <BookCategory> > GetAll()
        {
            var result = new MulitViewResult <BookCategory>();

            try
            {
                result.Datas = await bookCategoryAgent.GetAll();
            }
            catch (Exception ex)
            {
                result.Status  = -1;
                result.Message = ex.Message;
                Logger.WriteErrorLog(ex);
            }
            return(result);
        }
        public async Task <MulitViewResult <BookBorrow> > Query(string keyword, int pageSize, int pageIndex, int userId)
        {
            var result = new MulitViewResult <BookBorrow>();

            try
            {
                result.Datas = await bookBorrowAgent.Query(keyword, pageSize, pageIndex, userId);

                result.Total = await bookBorrowAgent.QueryCount(keyword, userId);
            }
            catch (Exception ex)
            {
                result.Status  = -1;
                result.Message = ex.Message;
                Logger.WriteErrorLog(ex);
            }
            return(result);
        }
        /// <summary>
        /// Get all product items
        /// </summary>
        /// <returns></returns>
        public async Task <MulitViewResult <ProductModel> > GetAll()
        {
            var result = new MulitViewResult <ProductModel>();

            try
            {
                var products = await _productRepository.GetAll();

                result.Datas = products.Select(x => x.ToProductModel()).ToList();
            }
            catch (Exception ex)
            {
                result.Status  = -1;
                result.Message = ex.Message;
                Logger.WriteErrorLog("ProductService", "GetAll", ex);
            }
            return(result);
        }
        public async Task <MulitViewResult <BuyerGroupModel> > GetAll()
        {
            var result = new MulitViewResult <BuyerGroupModel>();

            try
            {
                var buyerGroups = await _buyerGroupRepository.GetAll();

                result.Datas    = buyerGroups.Select(x => x.ToBuyerGroupModel()).ToList();
                result.AllCount = result.Datas?.Count ?? 0;
            }
            catch (Exception ex)
            {
                result.Status  = -1;
                result.Message = ex.Message;
                Logger.WriteErrorLog("BuyerGroupService", "GetAll", ex);
            }
            return(result);
        }
Exemple #11
0
        /// <summary>
        /// Get all uom items
        /// </summary>
        /// <returns></returns>
        public async Task <MulitViewResult <UomModel> > GetAll()
        {
            var result = new MulitViewResult <UomModel>();

            try
            {
                var uoms = await EntityClient.Uoms.Where(x => x.ExpireTime == null).OrderBy(c => c.Name).ToListAsync();

                result.Datas    = uoms.Select(x => x.ToUomModel()).ToList();
                result.AllCount = result.Datas?.Count ?? 0;
            }
            catch (Exception ex)
            {
                result.Status  = -1;
                result.Message = ex.Message;
                Logger.WriteErrorLog("UomService", "GetAll", ex);
            }
            return(result);
        }
Exemple #12
0
        public async Task <MulitViewResult <SysUser> > Query(string keyword, int pageSize, int pageIndex)
        {
            var result = new MulitViewResult <SysUser>();

            try
            {
                var datalist = await sysUserAgent.Query(keyword, pageSize, pageIndex);

                result.Datas = datalist.ToList();
                result.Total = await sysUserAgent.QueryCount(keyword);
            }
            catch (Exception ex)
            {
                result.Status  = -1;
                result.Message = ex.Message;
                Logger.WriteErrorLog(ex);
            }
            return(result);
        }
Exemple #13
0
        /// <summary>
        /// get addrs by customer id
        /// </summary>
        /// <param name="customerId"></param>
        /// <returns></returns>
        public async Task <MulitViewResult <DeliveryAddrModel> > GetAddrsByCustomerId(int customerId)
        {
            var result = new MulitViewResult <DeliveryAddrModel>();

            try
            {
                var addrs = await _deliveryAddrRepository.GetAddrsByCustomerId(customerId);

                result.Datas    = addrs.Select(x => x.ToDeliveryAddrModel()).ToList();
                result.AllCount = result.Datas?.Count ?? 0;
            }
            catch (Exception ex)
            {
                result.Status  = -1;
                result.Message = ex.Message;
                Logger.WriteErrorLog("DeliveryAddrService", "GetAll", ex);
            }
            return(result);
        }
        /// <summary>
        /// get contract number list by customer id
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public async Task <MulitViewResult <ContractNumberModel> > GetByCustomerId(int id)
        {
            var result = new MulitViewResult <ContractNumberModel>();

            try
            {
                var cns = await _contractNumberRepository.GetByCustomerId(id);

                result.Datas    = cns.Select(x => x.ToContractNumberModel()).ToList();
                result.AllCount = result.Datas?.Count ?? 0;
            }
            catch (Exception ex)
            {
                result.Status  = -1;
                result.Message = ex.Message;
                Logger.WriteErrorLog("ContractNumberService", "GetByCustomerId", ex);
            }
            return(result);
        }
        /// <summary>
        /// Get all manager items
        /// </summary>
        /// <returns></returns>
        public async Task <MulitViewResult <ManagerModel> > GetAll()
        {
            var result = new MulitViewResult <ManagerModel>();

            try
            {
                var manangers = await _managerRepository.GetAll();

                result.Datas    = manangers.Select(x => x.ToManagerModel()).ToList();
                result.AllCount = result.Datas?.Count ?? 0;
            }
            catch (Exception ex)
            {
                result.Status  = -1;
                result.Message = ex.Message;
                Logger.WriteErrorLog("ManagerService", "GetAll", ex);
            }
            return(result);
        }
Exemple #16
0
        public async Task <MulitViewResult <CustomerModel> > GetByManagerId(int id)
        {
            var result = new MulitViewResult <CustomerModel>();

            try
            {
                var customers = await _customerRepository.GetCustomersByManagerId(id);

                result.Datas    = customers?.Select(x => x.ToCustomerModelSimple()).ToList();
                result.AllCount = result.Datas?.Count ?? 0;
            }
            catch (Exception ex)
            {
                result.Status  = -1;
                result.Message = ex.Message;
                Logger.WriteErrorLog("CustomerService", "GetAllName", ex);
            }
            return(result);
        }
        public async Task <MulitViewResult <MenuModel> > LoadMenu()
        {
            var result = new MulitViewResult <MenuModel>();

            try
            {
                var menu = await _menuAgent.GetAll();

                var menuDtos = _mapper.Map <List <MenuModel> >(menu);
                menuDtos        = menuDtos.Where(m => m.Parent == null).ToList();
                result.Datas    = menuDtos;
                result.AllCount = menuDtos.Count;
            }
            catch (Exception ex)
            {
                result.Status = -1;
                var err = Error.Create(ex);
                result.Message = err.ErrorMessage;
                Logger.WriteErrorLog(ex, err.ErrorCode);
            }
            return(result);
        }