コード例 #1
0
        public IHttpActionResult Get(int id)
        {
            DTO_PRO_HoiNghiHoiThao_DangKyDeTai tbl_PRO_HoiNghiHoiThao_DangKyDeTai = BS_PRO_HoiNghiHoiThao_DangKyDeTai.get_PRO_HoiNghiHoiThao_DangKyDeTai(db, id);

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

            return(Ok(tbl_PRO_HoiNghiHoiThao_DangKyDeTai));
        }
コード例 #2
0
        public IHttpActionResult UploadFullText(DTO_PRO_HoiNghiHoiThao_DangKyDeTai item)
        {
            BS_PRO_HoiNghiHoiThao_DangKyDeTai.uploadFullText_PRO_HoiNghiHoiThaoDangKyDeTai(db, item.ID, item.BaiFulltext, Username);
            var res = BS_PRO_HoiNghiHoiThao_DangKyDeTai.get_PRO_HoiNghiHoiThao_DangKyDeTai(db, item.ID);

            if (res == null)
            {
                return(NotFound());
            }
            return(Ok(res));
        }
コード例 #3
0
        public IHttpActionResult UpdateStatus(int id, string actionCode)
        {
            var result = BS_PRO_HoiNghiHoiThao_DangKyDeTai.updateStatus_PRO_HoiNghiHoiThaoDangKyDeTai(db, id, actionCode, Username);

            if (!string.IsNullOrEmpty(result))
            {
                return(BadRequest(result));
            }
            DTO_PRO_HoiNghiHoiThao_DangKyDeTai tbl_PRO_HoiNghiHoiThao = BS_PRO_HoiNghiHoiThao_DangKyDeTai.get_PRO_HoiNghiHoiThao_DangKyDeTai(db, id);

            if (tbl_PRO_HoiNghiHoiThao == null)
            {
                return(NotFound());
            }
            return(Ok(tbl_PRO_HoiNghiHoiThao));
        }
コード例 #4
0
        public IHttpActionResult Post(DTO_PRO_HoiNghiHoiThao_DangKyDeTai tbl_PRO_HoiNghiHoiThao_DangKyDeTai)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            DTO_PRO_HoiNghiHoiThao_DangKyDeTai result = BS_PRO_HoiNghiHoiThao_DangKyDeTai.post_PRO_HoiNghiHoiThao_DangKyDeTaiCustom(db, tbl_PRO_HoiNghiHoiThao_DangKyDeTai, Username);


            if (result != null)
            {
                if (!string.IsNullOrEmpty(result.Error))
                {
                    return(BadRequest(result.Error));
                }
                return(CreatedAtRoute("get_PRO_HoiNghiHoiThao_DangKyDeTai", new { id = result.ID }, result));
            }
            return(Conflict());
        }
コード例 #5
0
        public IHttpActionResult Put(int id, DTO_PRO_HoiNghiHoiThao_DangKyDeTai tbl_PRO_HoiNghiHoiThao_DangKyDeTai)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != tbl_PRO_HoiNghiHoiThao_DangKyDeTai.ID)
            {
                return(BadRequest());
            }

            string result = BS_PRO_HoiNghiHoiThao_DangKyDeTai.put_PRO_HoiNghiHoiThao_DangKyDeTaiCustom(db, id, tbl_PRO_HoiNghiHoiThao_DangKyDeTai, Username);

            if (string.IsNullOrEmpty(result))
            {
                return(StatusCode(HttpStatusCode.NoContent));
            }
            else
            {
                return(BadRequest(result));
            }
        }
コード例 #6
0
        public static DTO_PRO_HoiNghiHoiThao_DangKyDeTai post_PRO_HoiNghiHoiThao_DangKyDeTai(AppEntities db, DTO_PRO_HoiNghiHoiThao_DangKyDeTai item, string Username)
        {
            tbl_PRO_HoiNghiHoiThao_DangKyDeTai dbitem = new tbl_PRO_HoiNghiHoiThao_DangKyDeTai();

            if (item != null)
            {
                dbitem.IDDangKy         = item.IDDangKy;
                dbitem.IDHoiNghiHoiThao = item.IDHoiNghiHoiThao;
                dbitem.IDHinhThucDangKy = item.IDHinhThucDangKy;
                dbitem.IDTrangThai      = item.IDTrangThai;
                dbitem.TenDeTai         = item.TenDeTai;
                dbitem.BaiAbstract      = item.BaiAbstract;
                dbitem.BaiFulltext      = item.BaiFulltext;

                dbitem.CreatedBy   = Username;
                dbitem.CreatedDate = DateTime.Now;

                dbitem.ModifiedBy   = Username;
                dbitem.ModifiedDate = DateTime.Now;


                try
                {
                    db.tbl_PRO_HoiNghiHoiThao_DangKyDeTai.Add(dbitem);
                    db.SaveChanges();

                    BS_CUS_Version.update_CUS_Version(db, null, "DTO_PRO_HoiNghiHoiThao_DangKyDeTai", DateTime.Now, Username);


                    item.ID = dbitem.ID;

                    item.CreatedBy   = dbitem.CreatedBy;
                    item.CreatedDate = dbitem.CreatedDate;

                    item.ModifiedBy   = dbitem.ModifiedBy;
                    item.ModifiedDate = dbitem.ModifiedDate;
                }
                catch (DbEntityValidationException e)
                {
                    errorLog.logMessage("post_PRO_HoiNghiHoiThao_DangKyDeTai", e);
                    item = null;
                }
            }
            return(item);
        }
コード例 #7
0
        public static bool put_PRO_HoiNghiHoiThao_DangKyDeTai(AppEntities db, int ID, DTO_PRO_HoiNghiHoiThao_DangKyDeTai item, string Username)
        {
            bool result = false;
            var  dbitem = db.tbl_PRO_HoiNghiHoiThao_DangKyDeTai.Find(ID);

            if (dbitem != null)
            {
                dbitem.IDDangKy         = item.IDDangKy;
                dbitem.IDHoiNghiHoiThao = item.IDHoiNghiHoiThao;
                dbitem.IDHinhThucDangKy = item.IDHinhThucDangKy;
                dbitem.IDTrangThai      = item.IDTrangThai;
                dbitem.TenDeTai         = item.TenDeTai;
                dbitem.BaiAbstract      = item.BaiAbstract;
                dbitem.BaiFulltext      = item.BaiFulltext;

                dbitem.ModifiedBy   = Username;
                dbitem.ModifiedDate = DateTime.Now;

                try
                {
                    db.SaveChanges();

                    BS_CUS_Version.update_CUS_Version(db, null, "DTO_PRO_HoiNghiHoiThao_DangKyDeTai", DateTime.Now, Username);

                    result = true;
                }
                catch (DbEntityValidationException e)
                {
                    errorLog.logMessage("put_PRO_HoiNghiHoiThao_DangKyDeTai", e);
                    result = false;
                }
            }
            return(result);
        }
コード例 #8
0
        public static List <DTO_PRO_HoiNghiHoiThao_DangKyDeTai> getExcel_PRO_HoiNghiHoiThao_DangKyDeTaiTheoHoiNghi(AppEntities db, Dictionary <string, string> QueryStrings)
        {
            var query     = db.tbl_PRO_HoiNghiHoiThao_DangKyDeTai.Where(c => c.IDTrangThai != -(int)SYSVarType.TrangThai_HNHT_ChoGui).AsQueryable();
            var queryHNHT = db.tbl_PRO_HoiNghiHoiThao.Where(c => c.IsDeleted == false).AsQueryable();
            List <DTO_PRO_HoiNghiHoiThao_DangKyDeTai> result = new List <DTO_PRO_HoiNghiHoiThao_DangKyDeTai>();

            //Query IDHoiNghiHoiThao (int)
            if (QueryStrings.Any(d => d.Key == "IDHoiNghiHoiThao"))
            {
                var        IDList = QueryStrings.FirstOrDefault(d => d.Key == "IDHoiNghiHoiThao").Value.Replace("[", "").Replace("]", "").Split(',');
                List <int> IDs    = new List <int>();
                foreach (var item in IDList)
                {
                    if (int.TryParse(item, out int i))
                    {
                        IDs.Add(i);
                    }
                }
                if (IDs.Count > 0)
                {
                    query     = query.Where(d => IDs.Contains(d.IDHoiNghiHoiThao));
                    queryHNHT = queryHNHT.Where(d => IDs.Contains(d.ID));
                }
            }
            else
            {
                if (QueryStrings.Any(d => d.Key == "DateFrom") && !string.IsNullOrEmpty(QueryStrings.FirstOrDefault(d => d.Key == "DateFrom").Value))
                {
                    var keyword = QueryStrings.FirstOrDefault(d => d.Key == "DateFrom").Value.Replace("\\", "");
                    try
                    {
                        DateTime dt = Newtonsoft.Json.JsonConvert.DeserializeObject <DateTime>(keyword).ToLocalTime();
                        query     = query.Where(c => c.tbl_PRO_HoiNghiHoiThao.ThoiGian >= dt);
                        queryHNHT = queryHNHT.Where(c => c.ThoiGian >= dt);
                    }
                    catch { }
                }

                if (QueryStrings.Any(d => d.Key == "DateTo") && !string.IsNullOrEmpty(QueryStrings.FirstOrDefault(d => d.Key == "DateTo").Value))
                {
                    var keyword = QueryStrings.FirstOrDefault(d => d.Key == "DateTo").Value.Replace("\\", "");
                    try
                    {
                        DateTime dt = Newtonsoft.Json.JsonConvert.DeserializeObject <DateTime>(keyword).ToLocalTime();
                        query     = query.Where(c => c.tbl_PRO_HoiNghiHoiThao.ThoiGian <= dt);
                        queryHNHT = queryHNHT.Where(c => c.ThoiGian <= dt);
                    }
                    catch { }
                }
            }

            var dataHoiNghi = queryHNHT.Select(c => new
            {
                c.ID,
                TenHoiNghi     = c.TenHoiNghi,
                DiaDiem        = c.DiaDiem,
                ThoiGian       = c.ThoiGian.Value,
                ThoiGianHetHan = c.ThoiGianHetHan,
                c.CreatedDate,
                TongSoNguoiDangKy = c.tbl_PRO_HoiNghiHoiThao_DangKy.Count(),
                TongSoDeTaiDangKy = c.tbl_PRO_HoiNghiHoiThao_DangKyDeTai.Count(d => d.IDTrangThai != -(int)SYSVarType.TrangThai_HNHT_ChoGui)
            }).ToList();

            var lstHoiNghiID = dataHoiNghi.Select(c => c.ID).ToList();
            var dataDangKy   = db.tbl_PRO_HoiNghiHoiThao_DangKy.Where(c => lstHoiNghiID.Contains(c.IDHoiNghiHoiThao)).Select(c => new
            {
                c.ID,
                c.IDHoiNghiHoiThao,
                c.IDNhanVien,
                c.tbl_CUS_HRM_STAFF_NhanSu.Name,
                c.CreatedDate
            }).Distinct().ToList();

            var data = query
                       .Select(s => new DTO_PRO_HoiNghiHoiThao_DangKyDeTai()
            {
                ID                = s.ID,
                TenNCV            = s.tbl_PRO_HoiNghiHoiThao_DangKy.tbl_CUS_HRM_STAFF_NhanSu.Name,
                IDDangKy          = s.IDDangKy,
                IDHoiNghiHoiThao  = s.IDHoiNghiHoiThao,
                TenHoiNghi        = s.tbl_PRO_HoiNghiHoiThao.TenHoiNghi,
                DiaDiem           = s.tbl_PRO_HoiNghiHoiThao.DiaDiem,
                ThoiGian          = s.tbl_PRO_HoiNghiHoiThao.ThoiGian.Value,
                ThoiGianHetHan    = s.tbl_PRO_HoiNghiHoiThao.ThoiGianHetHan,
                IDHinhThucDangKy  = s.IDHinhThucDangKy,
                HinhThucDangKy    = s.tbl_SYS_Var.ValueOfVar,
                IDTrangThai       = s.IDTrangThai,
                TrangThai         = s.tbl_SYS_Var1.ValueOfVar,
                TenDeTai          = s.TenDeTai,
                BaiAbstract       = s.BaiAbstract,
                BaiFulltext       = s.BaiFulltext,
                CreatedDate       = s.CreatedDate,
                CreatedBy         = s.CreatedBy,
                ModifiedDate      = s.ModifiedDate,
                ModifiedBy        = s.ModifiedBy,
                TongSoDeTaiDangKy = 0,
                TongSoNguoiDangKy = 0,
                UploadBaiAbstract = !string.IsNullOrEmpty(s.BaiAbstract) ? "Đã up" : "Chưa up",
                UploadBaiFulltext = !string.IsNullOrEmpty(s.BaiFulltext) ? "Đã up" : "Chưa up",
            }).ToList();

            foreach (var hoinghi in dataHoiNghi.OrderBy(c => c.ThoiGian))
            {
                int count = 0;
                DTO_PRO_HoiNghiHoiThao_DangKyDeTai obj = new DTO_PRO_HoiNghiHoiThao_DangKyDeTai()
                {
                    TenHoiNghi        = hoinghi.TenHoiNghi,
                    DiaDiem           = hoinghi.DiaDiem,
                    ThoiGian          = hoinghi.ThoiGian,
                    ThoiGianHetHan    = hoinghi.ThoiGianHetHan,
                    CreatedDate       = hoinghi.CreatedDate,
                    TongSoDeTaiDangKy = hoinghi.TongSoDeTaiDangKy,
                    TongSoNguoiDangKy = hoinghi.TongSoNguoiDangKy,
                };

                foreach (var itemDangKy in dataDangKy.Where(c => c.IDHoiNghiHoiThao == hoinghi.ID).OrderBy(c => c.Name))
                {
                    count++;
                    int countDeTai = 0;
                    foreach (var item in data.Where(c => c.IDDangKy == itemDangKy.ID))
                    {
                        countDeTai++;
                        item.TongSoDeTaiDangKy = hoinghi.TongSoDeTaiDangKy;
                        item.TongSoNguoiDangKy = hoinghi.TongSoNguoiDangKy;
                        result.Add(item);
                    }
                    if (countDeTai == 0)
                    {
                        obj.TenNCV      = itemDangKy.Name;
                        obj.CreatedDate = itemDangKy.CreatedDate;
                        result.Add(obj);
                    }
                }

                if (count == 0)
                {
                    result.Add(obj);
                }
            }

            return(result);
        }
コード例 #9
0
        public static DTO_PRO_HoiNghiHoiThao_DangKyDeTai post_PRO_HoiNghiHoiThao_DangKyDeTaiCustom(AppEntities db, DTO_PRO_HoiNghiHoiThao_DangKyDeTai item, string Username)
        {
            tbl_PRO_HoiNghiHoiThao_DangKyDeTai dbitem = new tbl_PRO_HoiNghiHoiThao_DangKyDeTai();

            if (item != null)
            {
                dbitem.IDDangKy         = item.IDDangKy;
                dbitem.IDHinhThucDangKy = item.IDHinhThucDangKy;
                dbitem.IDTrangThai      = -(int)SYSVarType.TrangThai_HNHT_ChoGui;
                dbitem.TenDeTai         = item.TenDeTai;

                dbitem.CreatedBy   = Username;
                dbitem.CreatedDate = DateTime.Now;

                dbitem.ModifiedBy   = Username;
                dbitem.ModifiedDate = DateTime.Now;

                var dangky = db.tbl_PRO_HoiNghiHoiThao_DangKy.FirstOrDefault(c => c.ID == item.IDDangKy);
                if (dangky != null)
                {
                    dbitem.IDHoiNghiHoiThao = dangky.IDHoiNghiHoiThao;
                    if (dangky.tbl_PRO_HoiNghiHoiThao.ThoiGianHetHan < DateTime.Now)
                    {
                        item.Error = "Hội nghị đã hết hạn, không thể đăng ký đề tài";
                        return(item);
                    }
                }

                try
                {
                    db.tbl_PRO_HoiNghiHoiThao_DangKyDeTai.Add(dbitem);
                    db.SaveChanges();

                    BS_CUS_Version.update_CUS_Version(db, null, "post_PRO_HoiNghiHoiThao_DangKyDeTaiCustom", DateTime.Now, Username);


                    item.ID = dbitem.ID;

                    item.CreatedBy   = dbitem.CreatedBy;
                    item.CreatedDate = dbitem.CreatedDate;

                    item.ModifiedBy   = dbitem.ModifiedBy;
                    item.ModifiedDate = dbitem.ModifiedDate;
                }
                catch (DbEntityValidationException e)
                {
                    errorLog.logMessage("post_PRO_HoiNghiHoiThao_DangKyDeTaiCustom", e);
                    item = null;
                }
            }
            return(item);
        }
コード例 #10
0
        public static string put_PRO_HoiNghiHoiThao_DangKyDeTaiCustom(AppEntities db, int ID, DTO_PRO_HoiNghiHoiThao_DangKyDeTai item, string Username)
        {
            string result = "";
            var    dbitem = db.tbl_PRO_HoiNghiHoiThao_DangKyDeTai.Find(ID);

            if (dbitem != null)
            {
                dbitem.IDHinhThucDangKy = item.IDHinhThucDangKy;
                dbitem.TenDeTai         = item.TenDeTai;

                dbitem.ModifiedBy   = Username;
                dbitem.ModifiedDate = DateTime.Now;

                if (dbitem.IDTrangThai == -(int)SYSVarType.TrangThai_HNHT_ChoDuyet)
                {
                    result = "Đề tài đã gửi, không thể chỉnh sửa";
                }
                if (dbitem.IDTrangThai == -(int)SYSVarType.TrangThai_HNHT_DaDuyet)
                {
                    result = "Đề tài đã duyệt, không thể chỉnh sửa";
                }

                if (!string.IsNullOrEmpty(result))
                {
                    return(result);
                }

                try
                {
                    db.SaveChanges();

                    BS_CUS_Version.update_CUS_Version(db, null, "put_PRO_HoiNghiHoiThao_DangKyDeTaiCustom", DateTime.Now, Username);
                }
                catch (DbEntityValidationException e)
                {
                    errorLog.logMessage("put_PRO_HoiNghiHoiThao_DangKyDeTaiCustom", e);
                    result = e.InnerException.Message;
                }
            }
            return(result);
        }