示例#1
0
        /// <summary>
        /// Xóa truyện trong DB.
        /// Author       :   HoangNM - 01/04/2019 - create
        /// </summary>
        /// <param name="id">id của truyện sẽ xóa</param>
        /// <returns>True nếu xóa thành công, False nếu không còn tài khoản được hiển thị trên trang chủ, Excetion nếu có lỗi</returns>
        public bool DeleteTruyen(int id)
        {
            DbContextTransaction transaction = context.Database.BeginTransaction();

            try
            {
                bool result = true;
                var  kt     = Convert.ToInt64(new GetPermission().GetQuyen("STORY_MAN")) & Convert.ToInt64(Common.Common.GetTongQuyen());
                if (kt != 0)
                {
                    if (context.Truyens.FirstOrDefault(x => x.Id == id && !x.DelFlag) != null)
                    {
                        TblTruyen truyen = context.Truyens.FirstOrDefault(x => x.Id == id && !x.DelFlag);
                        truyen.DelFlag = true;
                        context.Chuongs.Where(x => x.Id_Truyen == id && !x.DelFlag).Update(x => new TblChuongTruyen
                        {
                            DelFlag = true
                        });
                        context.LuuTacGias.Where(x => x.Id_Truyen == id && !x.DelFlag).Update(x => new TblLuuTacGia
                        {
                            DelFlag = true
                        });
                        context.LuuLoaiTruyens.Where(x => x.IdTruyen == id && !x.DelFlag).Update(x => new TblLuuLoaiTruyen
                        {
                            DelFlag = true
                        });
                        context.SaveChanges();
                    }
                    else
                    {
                        result = false;
                    }
                }
                else
                {
                    if (context.Truyens.FirstOrDefault(x => x.Id == id && x.Id_Nhom == Common.Common.GetAccount().IdNhom&& !x.DelFlag) != null)
                    {
                        TblTruyen truyen = context.Truyens.FirstOrDefault(x => x.Id == id && x.Id_Nhom == Common.Common.GetAccount().IdNhom&& !x.DelFlag);
                        truyen.DelFlag = true;
                        context.SaveChanges();
                    }
                    else
                    {
                        result = false;
                    }
                }

                transaction.Commit();
                return(result);
            }
            catch (Exception e)
            {
                transaction.Rollback();
                throw e;
            }
        }
示例#2
0
        /// <summary>
        /// Cập nhật thông tin truyện
        /// Author       :   HoangNM - 01/04/2019 - create
        /// </summary>
        /// <param name="truyen">thông tin về truyện muốn thay đổi</param>
        /// <returns>Trả về các thông tin khi cập nhật truyện, Excetion nếu có lỗi</returns>
        public ResponseInfo UpadateTruyen(NewComic truyen, int id)
        {
            DbContextTransaction transaction = context.Database.BeginTransaction();
            ResponseInfo         response    = new ResponseInfo();

            try
            {
                var kt      = Convert.ToInt64(new GetPermission().GetQuyen("STORY_MAN")) & Convert.ToInt64(Common.Common.GetTongQuyen());
                int Id_nhom = Common.Common.GetAccount().IdNhom;
                truyen.Id_NhomDich = truyen.Id_NhomDich == 0 ? Id_nhom : truyen.Id_NhomDich;
                if (kt != 0)
                {
                    XuLyUpDateTruyen(truyen, id);
                }
                else
                {
                    TblTruyen tblTruyen = context.Truyens.FirstOrDefault(x => x.Id == id && x.Id_Nhom == Id_nhom && !x.DelFlag);
                    if (tblTruyen != null)
                    {
                        XuLyUpDateTruyen(truyen, id);
                    }
                    else
                    {
                        var errorMsg1 = new GetErrorMsg().GetMsg((int)MessageEnum.MsgNO.CapNhatThongTinThanhCong);
                        response.TypeMsgError = errorMsg1.Type;
                        response.MsgError     = errorMsg1.Msg;
                        return(response);
                    }
                }

                context.SaveChanges();
                response.IsSuccess = true;
                transaction.Commit();
                var errorMsg = new GetErrorMsg().GetMsg((int)MessageEnum.MsgNO.CapNhatDuLieuThanhCong);
                response.TypeMsgError = errorMsg.Type;
                response.MsgError     = errorMsg.Msg;
                return(response);
            }
            catch (Exception e)
            {
                response.IsSuccess = false;
                transaction.Rollback();
                throw e;
            }
        }
示例#3
0
        /// <summary>
        /// Dùng để xử lý file json
        /// Author       :   HoangNM - 15/04/2019 - create
        /// </summary>
        /// <param name="path">file json cần xử lý</param>
        /// <returns>Trả về các thông tin khi cập nhật truyện, Excetion nếu có lỗi</returns>
        public ResponseInfo XulyJson(string path)
        {
            DbContextTransaction transaction = context.Database.BeginTransaction();
            ResponseInfo         response    = new ResponseInfo();

            try
            {
                //int[] t = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11 };
                //foreach(int i in t)
                //{
                //    TblTruyen truyen1 = context.Truyens.FirstOrDefault(x => x.Id == i && !x.DelFlag);
                //    truyen1.DelFlag = true;
                //    context.SaveChanges();
                //}


                //xử lý file json
                string[]       lines    = File.ReadAllLines(path);
                string         json     = string.Join("", lines);
                JsonTruyen     Story    = new JavaScriptSerializer().Deserialize <JsonTruyen>(json);
                List <Chapter> chapters = Story.chapters;
                //thêm truyên-------------------------------------------------------------------------------
                TblTruyen truyen = context.Truyens.Add(new TblTruyen
                {
                    Id_Nhom      = 1,
                    Id_ChuKy     = new Random().Next(1, 2),
                    TenTruyen    = Story.name,
                    TenKhac      = string.Join(",", Story.oname),
                    Id_TrangThai = new Random().Next(2, 4),
                    NamPhatHanh  = new Random().Next(2004, 2018),
                    AnhBia       = Story.thumb,
                    AnhDaiDien   = Story.thumb,
                    MoTa         = Story.description,
                    NgayTao      = DateTime.Now
                });
                context.SaveChanges();
                int id_truyen = truyen.Id;
                response.ThongTinBoSung1 = "Thêm truyện thành công";

                //thêm chương truyên ----------------------------------------------------------------------

                int stt = 0;
                chapters.Reverse();
                foreach (Chapter chapter in chapters)
                {
                    string title = chapter.title;
                    string data  = "{" + string.Join(",", chapter.data) + "}";
                    context.Chuongs.Add(new TblChuongTruyen
                    {
                        Id_Truyen = id_truyen,
                        TenChuong = chapter.title,
                        SoThuTu   = ++stt,
                        LinkAnh   = string.Join(",", chapter.data),
                        LuotXem   = 0,
                        NgayTao   = DateTime.Now
                    });
                    context.SaveChanges();
                }
                response.ThongTinBoSung2 = "Thêm chương thành công";

                //thêm thể loại cho truyện ----------------------------------------------------------------

                //foreach (string idTheLoai in Story.cate)
                //{
                //    context.LuuLoaiTruyens.Add(new TblLuuLoaiTruyen
                //    {
                //        IdTruyen = id_truyen,
                //        IdLoaiTruyen = Convert.ToInt32(idTheLoai)
                //    });
                //}

                context.SaveChanges();
                response.ThongTinBoSung3 = "Thêm thể loại thành công";

                //thêm tác giả cho truyên ----------------------------------------------------------------

                foreach (string tacgia in Story.authors)
                {
                    TblTacGia tblTacGia = context.TacGias.FirstOrDefault(x => string.Compare(x.TenTacGia, tacgia) == 0 && !x.DelFlag);
                    int       Id_TacGia = 0;
                    if (tblTacGia != null)
                    {
                        Id_TacGia = tblTacGia.Id;
                    }
                    else
                    {
                        tblTacGia = context.TacGias.Add(new TblTacGia
                        {
                            TenTacGia = tacgia
                        });
                        context.SaveChanges();
                        Id_TacGia = tblTacGia.Id;
                    }
                    context.LuuTacGias.Add(new TblLuuTacGia
                    {
                        Id_Truyen = id_truyen,
                        Id_TacGia = Id_TacGia
                    });
                    context.SaveChanges();
                }
                response.ThongTinBoSung5 = "Thêm tác giả thành công";
                response.TypeMsgError    = id_truyen;
                transaction.Commit();
                response.MsgError = "Thêm thành công";
                return(response);
            }
            catch (Exception e)
            {
                response.IsSuccess = false;
                transaction.Rollback();
                throw e;
            }
        }
示例#4
0
        /// <summary>
        /// Cập nhật thông tin truyện
        /// Author       :   HoangNM - 01/04/2019 - create
        /// </summary>
        /// <param name="truyen">thông tin về truyện muốn thay đổi</param>
        /// <returns>Trả về các thông tin khi cập nhật truyện, Excetion nếu có lỗi</returns>
        public ResponseInfo AddTruyen(NewComic truyen)
        {
            DbContextTransaction transaction = context.Database.BeginTransaction();
            ResponseInfo         response    = new ResponseInfo();

            try
            {
                string token  = HttpContext.Current.Request.Cookies["ToKen"].Value.Replace("%3d", "=");
                int    IdNhom = Common.Common.GetAccount().IdNhom;
                truyen.Id_NhomDich = truyen.Id_NhomDich == 0 ? IdNhom:truyen.Id_NhomDich;

                TblTruyen tblTruyen = context.Truyens.Add(new TblTruyen
                {
                    TenTruyen    = truyen.TenTruyen,
                    TenKhac      = truyen.TenKhac,
                    Id_Nhom      = truyen.Id_NhomDich,
                    Id_ChuKy     = truyen.Id_ChuKy,
                    Id_TrangThai = truyen.Id_TrangThai,
                    NamPhatHanh  = truyen.NamPhatHanh,
                    AnhBia       = truyen.AnhBia,
                    AnhDaiDien   = truyen.AnhDaiDien,
                    MoTa         = truyen.MoTa,
                    NgayTao      = DateTime.Now
                });
                context.SaveChanges();

                //Thêm thể loại truyên

                foreach (int idTheLoai in truyen.TheLoai)
                {
                    context.LuuLoaiTruyens.Add(new TblLuuLoaiTruyen
                    {
                        IdTruyen     = tblTruyen.Id,
                        IdLoaiTruyen = idTheLoai
                    });
                }

                context.SaveChanges();

                //Thêm tác giả

                string[] tacGia = truyen.TacGia.Split(',');
                foreach (string tacgia in tacGia)
                {
                    TblTacGia tblTacGia = context.TacGias.FirstOrDefault(x => string.Compare(x.TenTacGia, tacgia) == 0 && !x.DelFlag);
                    int       Id_TacGia = 0;
                    if (tblTacGia != null)
                    {
                        Id_TacGia = tblTacGia.Id;
                    }
                    else
                    {
                        tblTacGia = context.TacGias.Add(new TblTacGia
                        {
                            TenTacGia = tacgia
                        });
                        context.SaveChanges();
                        Id_TacGia = tblTacGia.Id;
                    }
                    context.LuuTacGias.Add(new TblLuuTacGia
                    {
                        Id_Truyen = tblTruyen.Id,
                        Id_TacGia = Id_TacGia
                    });
                    context.SaveChanges();
                }

                response.ThongTinBoSung1 = tblTruyen.Id + "";
                response.IsSuccess       = true;
                transaction.Commit();
                var errorMsg = new GetErrorMsg().GetMsg((int)MessageEnum.MsgNO.ThemDuLieuThanhCong);
                response.TypeMsgError = errorMsg.Type;
                response.MsgError     = errorMsg.Msg;
                return(response);
            }
            catch (Exception e)
            {
                response.IsSuccess = false;
                transaction.Rollback();
                throw e;
            }
        }