Exemple #1
0
        public async Task UpdateEmployeeFromCell(string header, ICell cell, Func <dynamic, Task <List <Employee> > > getEmp, Func <dynamic, Task <List <Department> > > getDept)
        {
            if (cell == null && cell.CellType == CellType.Blank)
            {
                return;
            }

            header = header.ToLower();
            if (header == "code")
            {
                var code = cell.StringCellValue;
                var emp  = await getEmp(new { Code = code });

                if (emp.Count > 0)
                {
                    messages.Add(MessageModel.CreateWarning("EMPLOYEE_CODE_EXISTED", header));
                }
                this.code = code;
            }
            else if (header == "firstname")
            {
                person.firstname = cell.StringCellValue;
            }
            else if (header == "lastname")
            {
                person.lastname = cell.StringCellValue;
            }
            else if (header == "email")
            {
                person.email = cell.StringCellValue;
            }
            else if (header == "birthday")
            {
                person.birthday = cell.DateCellValue;
            }
            else if (header == "id-number")
            {
                person.identityNumber = cell.StringCellValue;
            }
            else if (header == "department")
            {
                var dept = await getDept(new { Code = cell.StringCellValue });

                if (dept.Count > 0)
                {
                    var curDept = dept.First();
                    this.dept = new DepartmentModel(curDept);
                }
                else
                {
                    messages.Add(MessageModel.CreateError("INVALID DEPARMENT", header));
                }
            }
        }
        public async Task UpdateDepartmentFromCell(string header, ICell cell, Func <string, Task <ICollection <Department> > > getDept)
        {
            if (cell == null || cell.CellType == CellType.Blank)
            {
                return;
            }

            if (header == "code")
            {
                var curDept = await getDept(cell.StringCellValue);

                if (curDept != null)
                {
                    messages.Add(MessageModel.CreateWarning("DEPARTMENT_CODE_EXISTED", header));
                }
                code = cell.StringCellValue;
            }
            else if (header == "name")
            {
                name = cell.StringCellValue;
            }
            else if (header == "parent")
            {
                var parentValue = cell.StringCellValue;
                if (String.IsNullOrEmpty(parentValue))
                {
                    return;
                }
                var curParent = await getDept(parentValue);

                if (curParent.Count > 0)
                {
                    SetParent(curParent.First());
                }
                else
                {
                    messages.Add(MessageModel.CreateError("INVALID DEPARMENT", header));
                }
            }
        }