Пример #1
0
        public IHttpActionResult Get(int id)
        {
            DTO_CUS_SYS_Role tbl_CUS_SYS_Role = BS_CUS_SYS_Role.get_CUS_SYS_Role(db, PartnerID, id);

            if (tbl_CUS_SYS_Role == null)
            {
                return(NotFound());
            }

            return(Ok(tbl_CUS_SYS_Role));
        }
Пример #2
0
        public IHttpActionResult Post(DTO_CUS_SYS_Role tbl_CUS_SYS_Role)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            DTO_CUS_SYS_Role result = BS_CUS_SYS_Role.post_CUS_SYS_Role(db, PartnerID, tbl_CUS_SYS_Role, Username);


            if (result != null)
            {
                return(CreatedAtRoute("get_CUS_SYS_Role", new { id = result.ID }, result));
            }
            return(Conflict());
        }
Пример #3
0
        public IHttpActionResult Delete(int id)
        {
            bool check = BS_CUS_SYS_Role.check_CUS_SYS_Role_Exists(db, id);

            if (!check)
            {
                return(NotFound());
            }

            bool result = BS_CUS_SYS_Role.delete_CUS_SYS_Role(db, id, Username);

            if (result)
            {
                return(StatusCode(HttpStatusCode.NoContent));
            }
            return(Conflict());
        }
Пример #4
0
        public HttpResponseMessage Get_NhanSu()
        {
            string fileurl = "";
            var    package = GetTemplateWorkbook("DS-NhanSu.xlsx", "DS-NhanSu.xlsx", out fileurl);

            ExcelWorkbook workBook = package.Workbook;

            if (workBook != null)
            {
                var ws   = workBook.Worksheets.FirstOrDefault(); //Worksheets["DS"];
                var data = BS_CUS_HRM_STAFF_NhanSu.get_CUS_HRM_STAFF_NhanSu(db, PartnerID, QueryStrings);

                int rowid = 3;
                foreach (var item in data)
                {
                    ws.Cells["B" + rowid].Value = item.Sort; //STT
                    ws.Cells["C" + rowid].Value = item.Code;
                    ws.Cells["D" + rowid].Value = item.Name;

                    ws.Cells["E" + rowid].Value = item.SoDienThoai;
                    ws.Cells["F" + rowid].Value = item.Email;
                    ws.Cells["G" + rowid].Value = "";
                    //ws.Cells["H" + rowid].Value = item.IDRole;

                    if (item.IDRole.HasValue)
                    {
                        var ite = BS_CUS_SYS_Role.get_CUS_SYS_Role(db, PartnerID, item.IDRole.Value);
                        if (ite != null)
                        {
                            ws.Cells["H" + rowid].Value = ite.Code;
                        }
                    }

                    rowid++;
                }

                package.Save();
            }

            return(downloadFile(fileurl));
        }
Пример #5
0
        public IHttpActionResult Put(int id, DTO_CUS_SYS_Role tbl_CUS_SYS_Role)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != tbl_CUS_SYS_Role.ID || PartnerID != tbl_CUS_SYS_Role.IDPartner)
            {
                return(BadRequest());
            }


            bool resul = BS_CUS_SYS_Role.put_CUS_SYS_Role(db, PartnerID, id, tbl_CUS_SYS_Role, Username);

            if (resul)
            {
                return(StatusCode(HttpStatusCode.NoContent));
            }
            else
            {
                return(NotFound());
            }
        }
Пример #6
0
        public async Task <HttpResponseMessage> Post_NhanSu()
        {
            string        fileurl  = "";
            var           package  = SaveImportedFile(out fileurl);
            ExcelWorkbook workBook = package.Workbook;

            if (workBook != null)
            {
                ExcelWorksheet ws        = workBook.Worksheets.FirstOrDefault();
                bool           haveError = false;


                int SheetColumnsCount, SheetRowCount = 0;

                SheetColumnsCount = ws.Dimension.End.Column;    // Find End Column
                SheetRowCount     = ws.Dimension.End.Row;       // Find End Row

                for (int rowid = 3; rowid <= SheetRowCount; rowid++)
                {
                    #region item
                    List <string> row = new List <string>();

                    for (int i = 2; i <= SheetColumnsCount; i++)
                    {
                        row.Add(ws.Cells[rowid, i].Value == null ? "" : ws.Cells[rowid, i].Text);
                    }

                    if (string.IsNullOrEmpty(row[1]) || string.IsNullOrEmpty(row[2]) || string.IsNullOrEmpty(row[4]) || string.IsNullOrEmpty(row[6])) //check validate
                    {
                        continue;
                    }


                    string code   = row[1];
                    var    dbitem = BS_CUS_HRM_STAFF_NhanSu.get_CUS_HRM_STAFF_NhanSu(db, PartnerID, code);
                    if (dbitem == null)
                    {
                        dbitem = new DTO_CUS_HRM_STAFF_NhanSu();
                    }

                    if (int.TryParse(row[0], out int sort))
                    {
                        dbitem.Sort = sort;
                    }

                    dbitem.Code        = row[1];
                    dbitem.Name        = row[2];
                    dbitem.SoDienThoai = row[3];
                    dbitem.Email       = row[4].ToLower();
                    string password = row[5];

                    //update role
                    if (!string.IsNullOrEmpty(row[6]))
                    {
                        var r = BS_CUS_SYS_Role.get_CUS_SYS_Role(db, PartnerID, row[6]);
                        if (r != null)
                        {
                            dbitem.IDRole = r.ID;
                        }
                        else
                        {
                            continue;
                        }
                    }


                    try
                    {
                        if (dbitem.ID != 0)
                        {
                            BS_CUS_HRM_STAFF_NhanSu.put_CUS_HRM_STAFF_NhanSu(db, PartnerID, dbitem.ID, dbitem, Username);
                        }
                        else
                        {
                            BS_CUS_HRM_STAFF_NhanSu.post_CUS_HRM_STAFF_NhanSu(db, PartnerID, dbitem, Username);
                        }


                        //create/update account
                        var  context  = new ApplicationDbContext();
                        var  dbUser   = context.Users.FirstOrDefault(d => d.Email == dbitem.Email);
                        bool isCreate = false;

                        if (dbUser == null && !string.IsNullOrEmpty(password))
                        {
                            isCreate           = true;
                            dbUser             = new ApplicationUser();
                            dbUser.UserName    = dbUser.Email = dbitem.Email;
                            dbUser.CreatedDate = DateTime.UtcNow;
                            dbUser.CreatedBy   = Username;
                            IdentityResult result = await UserManager.CreateAsync(dbUser, password);
                        }

                        if (dbUser != null)
                        {
                            dbUser.FullName    = dbitem.Name;
                            dbUser.Avatar      = string.Format("Uploads/HRM/Staffs/Avatars/{0}.jpg", dbitem.Code);
                            dbUser.PhoneNumber = dbitem.SoDienThoai;
                            dbUser.StaffID     = dbitem.ID;
                            dbUser.PartnerID   = dbitem.IDPartner;

                            context.SaveChanges();
                        }
                        //mail
                        if (isCreate)
                        {
                            string template =
                                @"
                    Xin chào <strong>@Model.FullName</strong>,
                    <br>
                    <br>Bạn vừa được tạo tài khoản truy cập vào hệ thống Quản lý Đề tài Nghiên cứu khoa học.
                    <br>
                    <br>Tài khoản đăng nhập:
                    <br>Email: <strong>@Model.Email</strong>
                    <br>Mật khẩu: <strong>@Model.Password</strong>
                    <br>
                    <br>Vui lòng đăng nhập tại
                    <br><a href='@Model.Domain'>@Model.Domain</a>
                    <br>";

                            var html = Engine.Razor.RunCompile(template, "Register_EmailTemplate", null, new { FullName = dbUser.FullName, Email = dbUser.Email, Password = password, Domain = "http://myduc.appcenter.vn:9003/" });

                            EmailService emailService = new EmailService();
                            //emailService.SendSync(new IdentityMessage() { Subject = "Quản lý Đề tài Nghiên cứu khoa học - thông tin tài khoản", Destination = dbUser.Email, Body = html });
                        }
                        else if (!string.IsNullOrEmpty(password))
                        {
                            UserManager.RemovePassword(dbUser.Id);
                            IdentityResult result = await UserManager.AddPasswordAsync(dbUser.Id, password);
                        }
                    }
                    catch (Exception ex)
                    {
                        log.Error("Import/Post_NhanSu", ex);
                        continue;
                    }



                    #endregion
                }


                if (haveError)
                {
                    package.Save();
                    return(downloadFile(fileurl, HttpStatusCode.Conflict));
                }
            }
            else
            {
                return(Request.CreateResponse(HttpStatusCode.BadRequest));
            }
            return(Request.CreateResponse(HttpStatusCode.Created));
        }
Пример #7
0
 public IQueryable <DTO_CUS_SYS_Role> Get()
 {
     return(BS_CUS_SYS_Role.get_CUS_SYS_Role(db, PartnerID, QueryStrings));
 }