Exemplo n.º 1
0
        public async Task <List <EmployeeViewDTO> > FilterEmployeeAsync(EmployeeFilterModel employeeFilter)
        {
            List <EmployeeViewDTO> list = await this.GetAllEmployeesViewAsync();

            if (employeeFilter.Name != "" && employeeFilter.Surname == "" && employeeFilter.Patronumic == "")
            {
                list = list.Where(x => x.Person.Name == employeeFilter.Name ||
                                  x.Person.Surname == employeeFilter.Name ||
                                  x.Person.Patronumic == employeeFilter.Name).ToList();
            }

            if (employeeFilter.Name != "" && employeeFilter.Surname != "" && employeeFilter.Patronumic == "")
            {
                list = list.Where(x => x.Person.Name == employeeFilter.Name && x.Person.Surname == employeeFilter.Surname ||
                                  x.Person.Surname == employeeFilter.Name && x.Person.Name == employeeFilter.Surname ||
                                  x.Person.Name == employeeFilter.Name && x.Person.Patronumic == employeeFilter.Surname).ToList();
            }

            if (employeeFilter.Name != null && employeeFilter.Surname != null && employeeFilter.Patronumic != null &&
                employeeFilter.Name != "" && employeeFilter.Surname != "" && employeeFilter.Patronumic != "")
            {
                list = list.Where(x => x.Person.Name == employeeFilter.Name &&
                                  x.Person.Surname == employeeFilter.Surname &&
                                  x.Person.Name == employeeFilter.Patronumic).ToList();
            }

            if (employeeFilter.EmployeePostID != 0)
            {
                list = list.Where(x => x.Person.EmployeePostID == employeeFilter.EmployeePostID).ToList();
            }
            return(list);
        }
Exemplo n.º 2
0
        public async Task <List <Employee> > GetAll(EmployeeFilterModel employeeFilter)
        {
            IQueryable <Employee> employeeList = _dbSet.AsQueryable <Employee>();

            if (!string.IsNullOrWhiteSpace(employeeFilter.FullName))
            {
                employeeList = employeeList.Where(x => x.FullName == employeeFilter.FullName);
            }

            if (employeeFilter.Age > 0)
            {
                var agebirthDateFrom = DateTime.Today.AddYears(-(employeeFilter.Age + 1));
                var agebirthDateTo   = DateTime.Today.AddYears(-(employeeFilter.Age));
                employeeList = employeeList.Where(x => x.Birthdate > agebirthDateFrom && x.Birthdate <= agebirthDateTo);
            }

            if (employeeFilter.GenderId > 0)
            {
                employeeList = employeeList.Where(x => x.GenderId == employeeFilter.GenderId);
            }

            if (employeeFilter.SkillId > 0)
            {
                employeeList = employeeList.Where(x => x.EmployeeSkillList.Any(y => employeeFilter.SkillId == y.SkillId));
            }

            return(await employeeList
                   .Include(x => x.Gender)
                   .Include(x => x.EmployeeSkillList)
                   .ThenInclude(x => x.Skill).ToListAsync());
        }
Exemplo n.º 3
0
        public ActionResult GetEmployeeList(string searchType, EmployeeFilterModel filters, int currentPage = 1, int pageSize = 5)
        {
            var items = db.Employees.AsQueryable();

            // 高级搜索
            if (searchType == "AdvancedSearch")
            {
                if (!string.IsNullOrEmpty(filters.EmployeeName))
                {
                    items = items.Where(p => p.Name.Contains(filters.EmployeeName));
                }

                if (filters.EmployeeGender >= 0)
                {
                    items = items.Where(p => p.Gender == filters.EmployeeGender);
                }

                if (filters.BirthdayStart >= DateTime.MinValue && filters.BirthdayEnd > filters.BirthdayStart)
                {
                    items = items.Where(p => p.Birthday >= filters.BirthdayStart);
                }
                if (filters.BirthdayEnd > DateTime.MinValue && filters.BirthdayEnd > filters.BirthdayStart)
                {
                    items = items.Where(p => p.Birthday <= filters.BirthdayEnd);
                }
            }

            int count  = 0;
            var result = items.Pagination(t => t.ID, currentPage, pageSize, out count);

            ViewData["totalPages"]  = count / pageSize + 1; // 分页后总的页面数
            ViewData["currentPage"] = currentPage;          // 当前页码

            return(PartialView("~/Views/EmployeeManage/EmployeeList.cshtml", result.ToList()));
        }
        public ActionResult Index(EmployeeFilterModel filterModel)
        {
            EmployeeIndexViewModel model = new EmployeeIndexViewModel()
            {
                EmployeeList = filterModel.IsFiltered ? _employeeService.Filter(filterModel).ToPagedList() : _employeeService.GetAll().ToPagedList(1, PAGE_SIZE),
                FilterModel  = filterModel
            };

            return(View(GetIndexViewModel(model)));
        }
Exemplo n.º 5
0
        public async Task <List <EmployeeModel> > Get([FromQuery] EmployeeFilterModel employeeFilter)
        {
            var employeeList = await _employeeRepository.GetAll(employeeFilter);

            return(employeeList.Select(x => new EmployeeModel
            {
                Id = x.Id,
                Name = x.FullName,
                Email = x.Email,
                Birthdate = x.Birthdate,
                Gender = x.Gender.Name,
                SkillList = x.EmployeeSkillList.Select(y => y.Skill.Name).ToArray()
            }).ToList());
        }
Exemplo n.º 6
0
        public async Task <IActionResult> GetExcel(EmployeeFilterModel entity)
        {
            var result = await EmployeeServices.GetPaging(entity);

            var columns = new Dictionary <string, string>()
            {
                { "Id", "员工Id" },
                { "Name", "员工姓名" },
                { "Mobile", "手机号" },
                { "CreatorTime", "创建时间" },
                { "CreatorName", "创建人" },
            };
            var fs = ExcelHelper.GetByteToExportExcel(result.Collection.ToList(), columns, new List <string>());

            return(File(fs, "application/vnd.android.package-archive", $"[{DateTime.Now.ToString("yyyy-MM-dd")}]员工信息.xlsx"));
        }
        public ActionResult EmployeesList(EmployeeFilterModel filter)
        {
            filter = ProcessFilter <EmployeeFilterModel>(filter);
            long totalItems;
            var  сollaboratorsЬodel = new EmployeeModel()
            {
                EmployeesList = Mapper.Map <List <EmployeeDetailsModel> >(_repository.GetEmployees(Mapper.Map <Entities.EmployeeFilter>(filter), out totalItems))
            };

            filter.CurrentPagingInfo.TotalItems = totalItems;

            return(View(new EmployeeViewModel()
            {
                Filter = filter,
                EmployeesModel = сollaboratorsЬodel
            }));
        }
Exemplo n.º 8
0
        public async Task <IActionResult> Filter(EmployeeFilterModel employeeFilter)
        {
            try
            {
                var employeeList = await _employeeSystemApi.GetEmployee(employeeFilter);

                return(await Index(new EmployeeViewModel { EmployeeList = employeeList, EmployeeFilter = employeeFilter }));
            }
            catch (ApiException ex)
            {
                throw ex;
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Exemplo n.º 9
0
        public List <EmployeeBasicViewModel> Filter(EmployeeFilterModel model)
        {
            var items = m_Context.Employees.AsQueryable();

            if (model != null)
            {
                if (!string.IsNullOrEmpty(model.S_FirstName))
                {
                    items = items.Where(x => x.FirstName.Contains(model.S_FirstName));
                }
                if (!string.IsNullOrEmpty(model.S_LastName))
                {
                    items = items.Where(x => x.LastName.Contains(model.S_LastName));
                }
                if (!string.IsNullOrEmpty(model.S_Login))
                {
                    items = items.Where(x => x.Login.Contains(model.S_Login));
                }
            }
            return(_mapper.Map <List <EmployeeBasicViewModel> >(items.ToList()));
        }
Exemplo n.º 10
0
        /// <summary>
        /// 分页获取员工
        /// </summary>
        /// <param name="entity"></param>
        /// <returns></returns>
        public static async Task <ResponseCollection <EmployeeModel> > GetPaging(EmployeeFilterModel entity)
        {
            IEnumerable <EmployeeModel> employeeList = new List <EmployeeModel>();

            var sqlWhere = new StringBuilder();
            var sqlCount = new StringBuilder();
            var sqlQuery = new StringBuilder();

            sqlQuery.Append($@"SELECT {ParametersHelper.GetSelectParameters<EmployeeModel>()}
                               FROM  { DatabaseManager.Demo_Tables.Employee} ");

            sqlCount.Append($@"SELECT COUNT(1) FROM { DatabaseManager.Demo_Tables.Employee} ");

            sqlWhere.Append(" WHERE 1=1 ");

            /*具体的WHERE条件进行填充*/
            if (entity.Id > 0)
            {
                sqlWhere.Append(" AND Id=@Id ");
            }

            if (!string.IsNullOrWhiteSpace(entity.Name))
            {
                sqlWhere.Append(" AND Name=@Name ");
            }

            if (entity.Ids.Any())
            {
                sqlWhere.Append(" AND Id in @Ids ");
            }


            sqlCount.Append(sqlWhere);
            sqlCount.Append(DatabaseManager.GetSqlComments("Cavin", "获取员工"));

            if (!string.IsNullOrWhiteSpace(entity.Sortby))
            {
                sqlWhere.Append(OrderConditionHelper.TransformOrderCondition <EmployeeModel>(entity.Sortby, entity.Orderby));
            }
            if (entity.Limit > 0)
            {
                sqlWhere.Append($" LIMIT {entity.Offset},{entity.Limit} ");
            }

            sqlQuery.Append(sqlWhere);
            sqlQuery.Append(DatabaseManager.GetSqlComments("Cavin", "获取员工数量"));


            long totalCount = 0;

            try
            {
                using (var conn = DatabaseManager.GetConnection(DatabaseManager.DBName))
                {
                    await conn.OpenAsync();

                    if (entity.Limit >= 0)
                    {
                        totalCount = await conn.ExecuteScalarAsync <long>(sqlCount.ToString(), entity);
                    }

                    if (entity.Limit == 0)
                    {
                        return new ResponseCollection <EmployeeModel>()
                               {
                                   TotalCount = totalCount
                               }
                    }
                    ;

                    employeeList = await conn.QueryAsync <EmployeeModel>(sqlQuery.ToString(), entity);

                    if (employeeList == null || !employeeList.Any())
                    {
                        return new ResponseCollection <EmployeeModel>()
                               {
                                   TotalCount = totalCount
                               }
                    }
                    ;

                    if (entity.Limit == -1)
                    {
                        totalCount = employeeList.Count();
                    }
                }
            }
            catch (Exception ex)
            {
                throw;
            }

            return(new ResponseCollection <EmployeeModel>()
            {
                Collection = employeeList, TotalCount = totalCount
            });
        }
Exemplo n.º 11
0
 public async Task <List <EmployeeViewDTO> > FilterEmployee(EmployeeFilterModel EmployeeDto)
 {
     return(await employeeService.FilterEmployeeAsync(EmployeeDto));
 }
Exemplo n.º 12
0
 public IActionResult Index(EmployeeFilterModel model)
 {
     return(View(model));
 }
 public async Task <List <EmployeeViewDTO> > FilterEmployeesRecord(EmployeeFilterModel filterModel)
 {
     return((await new SendToServerService <List <EmployeeViewDTO>, EmployeeFilterModel>().PostDataByJsonObjectAsync("Employee/FilterEmployee", filterModel)).Result);
 }
Exemplo n.º 14
0
 public async Task <List <Employeemappingtopurchase> > GetPurchaseSlabsandMappedemployeesByDeptId(EmployeeFilterModel model)
 {
     return(await _purchaseDataAcess.GetPurchaseSlabsandMappedemployeesByDeptId(model));
 }
Exemplo n.º 15
0
 public IActionResult GetDataTransferHasFilter(EmployeeFilterModel filterModel)
 {
     return(Json(employeeRepository.GetDataTransferHasFilter(filterModel.DepartmentCode, filterModel.GroupCode, filterModel.LaborGroupCode, filterModel.StatusCode, filterModel.StartFromDate, filterModel.StartToDate)));
 }
Exemplo n.º 16
0
        public async Task <IHttpActionResult> GetPurchaseSlabsandMappedemployeesByDeptId(EmployeeFilterModel model)
        {
            List <Employeemappingtopurchase> purchase = new List <Employeemappingtopurchase>();

            purchase = await _paBusenessAcess.GetPurchaseSlabsandMappedemployeesByDeptId(model);

            return(Ok(purchase));
        }
Exemplo n.º 17
0
 /// <summary>
 /// 分页查询员工
 /// </summary>
 /// <param name="entity"></param>
 /// <returns></returns>
 public static async Task <ResponseCollection <EmployeeModel> > GetPaging(EmployeeFilterModel entity)
 {
     return(await EmployeeAccess.GetPaging(entity));
 }
Exemplo n.º 18
0
 public async Task <IActionResult> GetPaging(EmployeeFilterModel entity)
 {
     return(AssertNotFound(await EmployeeServices.GetPaging(entity)));
 }