Esempio n. 1
0
    protected void btnSubmit_Click(object sender, EventArgs e)
    {
        if (IsValid)
        {
            try
            {
                EmployeeBusiness EB = new EmployeeBusiness();

                if (EB.IsExist(txtEmail.Text.Trim()))
                {
                    pnlRed.Visible       = true;
                    lblError.Text        = "This email have already used.";
                    hplnkRed.Text        = "Please try again.";
                    hplnkRed.NavigateUrl = "";
                    return;
                }

                String filePath = "";
                System.Drawing.Image image;
                if (fuAvatar.HasFile)
                {
                    image = System.Drawing.Image.FromStream(fuAvatar.PostedFile.InputStream);
                }
                else
                {
                    if (radListGender.Text.Equals("Male"))
                    {
                        filePath = WebHelper.Instance.GetWebsitePath() + "App_Themes/images/other/male.png";
                    }
                    else if (radListGender.Text.Equals("Female"))
                    {
                        filePath = WebHelper.Instance.GetWebsitePath() + "App_Themes/images/other/female.png";
                    }

                    image = System.Drawing.Image.FromFile(filePath);
                }

                String data = WebHelper.Instance.ImageToBase64(image, System.Drawing.Imaging.ImageFormat.Png);
                EB.CreateEmployee(Guid.NewGuid(), new Guid(ddlDepartment.SelectedValue), txtFirstName.Text.Trim(), txtLastName.Text.Trim(), radListGender.Text, txtDOB.Text.Trim(), txtAddress.Text.Trim(), txtPhoneNumber.Text.Trim(), txtEmail.Text.Trim(), data);

                pnlGreen.Visible       = true;
                lblSuccess.Text        = "Create new an employee successfully.";
                hplnkGreen.Text        = "Go to Manage panel.";
                hplnkGreen.NavigateUrl = WebHelper.Instance.GetURL() + "ManageSystem/Employee/Manage";
                Reset();
            }
            catch (Exception ex)
            {
                pnlRed.Visible       = true;
                lblError.Text        = ex.Message;
                hplnkRed.Text        = "Please try again.";
                hplnkRed.NavigateUrl = "";
            }
        }
    }
        public HttpResponseMessage CreateEmployee()
        {
            var                modelJson        = HttpContext.Current.Request.Form["Model"];
            EmployeeModel      model            = JsonConvert.DeserializeObject <EmployeeModel>(modelJson);
            HttpFileCollection hfc              = HttpContext.Current.Request.Files;
            string             pathFolder       = "fileUpload/" + Constants.FolderEmployee + "/";
            string             pathFolderServer = HostingEnvironment.MapPath("~/" + pathFolder);
            string             imageLink        = string.Empty;

            try
            {
                if (hfc.Count > 0)
                {
                    for (int i = 0; i < hfc.Count; i++)
                    {
                        if (i == 0)
                        {
                            // imageLink = Task.Run(async () => { return wait UploadPhotoAsync(hfc[i], hfc[i].FileName); }).Result;

                            imageLink = Task.Run(async() =>
                            {
                                return(await AzureStorageUploadFiles.GetInstance().UploadPhotoAsync(hfc[i], hfc[i].FileName, Constants.FolderEmployee));
                            }).Result;
                        }
                        else
                        {
                            imageLink += ";" + Task.Run(async() =>
                            {
                                return(await AzureStorageUploadFiles.GetInstance().UploadPhotoAsync(hfc[i], hfc[i].FileName, Constants.FolderEmployee));
                            }).Result;
                        }
                    }
                }

                model.LinkImage = imageLink;
                _userBusiness.CreateEmployee(model);

                return(Request.CreateResponse(HttpStatusCode.OK, string.Empty));
            }
            catch (Exception ex)
            {
                logger.Error(ex.Message, ex.InnerException);
                //Xóa file trên server nếu cập nhật lỗi
                string[] mangErro = imageLink.Split(';');
                for (int i = 0; i < mangErro.Length; i++)
                {
                    UploadFileServer.DeleteFile(mangErro[i]);
                }
                return(Request.CreateResponse(HttpStatusCode.InternalServerError, ex.Message));
            }
        }
Esempio n. 3
0
        /// <summary>
        /// Import khách hàng từ file mẫu
        /// </summary>
        public void ImportEmployee()
        {
            TimeAttendanceEntities db          = new TimeAttendanceEntities();
            ExcelEngine            excelEngine = new ExcelEngine();

            IApplication application = excelEngine.Excel;

            IWorkbook workbook = application.Workbooks.Open(HttpContext.Current.Server.MapPath("/Template/MSB.xls"));

            IWorksheet sheet = workbook.Worksheets[0];

            //try
            //{
            sheet = workbook.Worksheets[0];
            var listDep = db.Department.Select(r => new { r.DepartmentId, r.Name }).ToList();

            if (sheet.Columns.Count() >= 5)
            {
                List <EmployeeModel> listEmployee       = new List <EmployeeModel>();
                List <string>        listDepartmentName = new List <string>();
                EmployeeModel        modelEmployee;
                int    count            = 0;
                int    total            = 0;
                string pathFolder       = "fileUpload/ImageEmployee/";
                string pathFolderServer = HostingEnvironment.MapPath("~/" + pathFolder);
                for (int indexRow = 4; indexRow <= sheet.Rows.Count(); indexRow++)
                {
                    total++;
                    modelEmployee      = new EmployeeModel();
                    modelEmployee.Code = sheet.Range[indexRow, 3].Value.ToString().Trim();
                    modelEmployee.Name = sheet.Range[indexRow, 4].Value.ToString().Trim();
                    listDepartmentName.Add(sheet.Range[indexRow, 5].Value.ToString().Trim());
                    var itemDep = listDep.Where(r => r.Name.ToLower().Contains(sheet.Range[indexRow, 5].Value.ToString().Trim().ToLower())).FirstOrDefault();
                    if (itemDep != null)
                    {
                        modelEmployee.DepartmentId = itemDep.DepartmentId;
                    }
                    if (sheet.Range[indexRow, 6].HasDateTime)
                    {
                        modelEmployee.InComeDate = sheet.Range[indexRow, 6].DateTime;
                    }
                    else
                    {
                        modelEmployee.InComeDate = DateTime.ParseExact(sheet.Range[indexRow, 6].Text, "dd-MM-yyyy", CultureInfo.InvariantCulture);
                    }
                    listEmployee.Add(modelEmployee);
                }

                //listDepartmentName = listDepartmentName.GroupBy(r => r).Select(r=>r.Key).ToList();
                //Department department;
                //foreach (var item in listDepartmentName)
                //{
                //    department = new Department()
                //    {
                //        DepartmentId = Guid.NewGuid().ToString(),
                //        Name = item
                //    };
                //    db.Department.Add(department);
                //}
                //db.SaveChanges();

                IEnumerable <string> listFile         = Directory.EnumerateFiles(HostingEnvironment.MapPath("~/fileUpload/ImageUserTemp/"), "*.*", SearchOption.AllDirectories).Where(r => r.ToLower().Contains(".jpg") || r.ToLower().Contains(".png")).ToList();
                EmployeeBusiness     employeeBusiness = new EmployeeBusiness();
                Employee             employee;
                int countOk    = 0;
                int countError = 0;
                foreach (var item in listEmployee)
                {
                    try
                    {
                        string file = listFile.Where(r => r.Contains(item.Code.Replace("MSB", ""))).FirstOrDefault();
                        if (file != null)
                        {
                            FileInfo fileInfo = new FileInfo(file);
                            fileInfo.CopyTo(HostingEnvironment.MapPath("~/fileUpload/ImageEmployee/" + fileInfo.Name), true);
                            item.LinkImage  = "fileUpload/ImageEmployee/" + fileInfo.Name;
                            item.CreateBy   = "US000001";
                            item.JobTitleId = "2a6ec39b-368c-488b-a019-9f171248f37a";
                            item.Gender     = "2";
                            employeeBusiness.CreateEmployee(item);
                        }
                        countOk++;
                    }
                    catch (Exception ex)
                    {
                        countError++;
                    }
                    Task.Delay(50000);
                }
            }
        }