Exemple #1
0
        public JsonResult getdebt(int sachid)
        {
            int       i      = int.Parse(Session["DaiLyId"].ToString());
            DaiLyDebt d      = db.DaiLyDebts.Where(x => x.fk_dailyID == i && x.fk_sachID == sachid).SingleOrDefault();
            int       sldebt = int.Parse(d.dailydebt_soluong.ToString());
            Sach      s      = db.Saches.Where(x => x.sachID == sachid).SingleOrDefault();
            double    gia    = double.Parse(s.sach_giaxuat.ToString());

            return(Json(new { sldebt = sldebt, gia = gia }, JsonRequestBehavior.AllowGet));
        }
Exemple #2
0
        public JsonResult saveBaoSach(DaiLyDebt O)
        {
            DateTime date = DateTime.Now; var dt = date.Date;
            bool     status = false;

            if (ModelState.IsValid)
            {
                int     i = int.Parse(Session["DaiLyId"].ToString());
                NXBDebt u = db.NXBDebts.Where(x => x.fk_sachID == O.fk_sachID).SingleOrDefault();
                if (u != null)
                {
                    u.nxbdebt_banduoc += O.dailydebt_soluong;
                }

                DaiLyDebt d = db.DaiLyDebts.Where(x => x.fk_dailyID == i && x.fk_sachID == O.fk_sachID).SingleOrDefault();
                d.dailydebt_soluong -= O.dailydebt_soluong;
                if (d.dailydebt_soluong == 0)
                {
                    db.DaiLyDebts.Remove(d);
                }
                List <DaiLyDebtTien> li    = db.DaiLyDebtTiens.Where(x => x.fk_dailyID == i).ToList();
                var           maxdate      = li.Select(x => x.dailydebttien_ngaycapnhat).Max();
                DaiLyDebtTien n            = db.DaiLyDebtTiens.Where(x => x.fk_dailyID == i && x.dailydebttien_ngaycapnhat == maxdate).FirstOrDefault();
                Sach          s            = db.Saches.Where(x => x.sachID == O.fk_sachID).SingleOrDefault();
                var           maxDdoanhthu = db.DoanhThus.Select(x => x.doanhthu_ngaycapnhat).Max();
                DoanhThu      r            = db.DoanhThus.Where(x => x.doanhthu_ngaycapnhat == maxDdoanhthu).SingleOrDefault();
                if (r != null)
                {
                    if (dt == r.doanhthu_ngaycapnhat)
                    {
                        r.doanhthu_tien += O.dailydebt_soluong * s.sach_giaxuat;
                    }
                    else if (dt > r.doanhthu_ngaycapnhat)
                    {
                        r.doanhthu_tien       += O.dailydebt_soluong * s.sach_giaxuat;
                        r.doanhthu_ngaycapnhat = dt;
                        db.DoanhThus.Add(r);
                    }
                    else if (dt < r.doanhthu_ngaycapnhat)
                    {
                        List <DoanhThu> dd = db.DoanhThus.Where(x => x.doanhthu_ngaycapnhat >= dt).ToList();
                        foreach (var c in dd)
                        {
                            r.doanhthu_tien += O.dailydebt_soluong * s.sach_giaxuat;
                        }
                        DoanhThu m = db.DoanhThus.Where(x => x.doanhthu_ngaycapnhat == dt).SingleOrDefault();
                        if (m == null)
                        {
                            DoanhThu v = new DoanhThu {
                                doanhthu_tien = O.dailydebt_soluong * s.sach_giaxuat, doanhthu_ngaycapnhat = dt
                            };
                            db.DoanhThus.Add(v);
                        }
                    }
                }
                else
                {
                    DoanhThu v = new DoanhThu {
                        doanhthu_tien = O.dailydebt_soluong * s.sach_giaxuat, doanhthu_ngaycapnhat = dt
                    };
                    db.DoanhThus.Add(v);
                }
                if (n != null)
                {
                    if (dt == n.dailydebttien_ngaycapnhat)
                    {
                        n.dailydebttien_tien -= O.dailydebt_soluong * s.sach_giaxuat;
                        n.dailydebttien_sach -= O.dailydebt_soluong;
                    }
                    else if (dt > n.dailydebttien_ngaycapnhat)
                    {
                        n.dailydebttien_tien       -= O.dailydebt_soluong * s.sach_giaxuat;
                        n.dailydebttien_sach       -= O.dailydebt_soluong;
                        n.fk_dailyID                = i;
                        n.dailydebttien_ngaycapnhat = dt;
                        db.DaiLyDebtTiens.Add(n);
                    }
                    else if (dt < n.dailydebttien_ngaycapnhat)
                    {
                        List <DaiLyDebtTien> dd = db.DaiLyDebtTiens.Where(x => x.fk_dailyID == i && x.dailydebttien_ngaycapnhat >= dt).ToList();
                        foreach (var c in dd)
                        {
                            c.dailydebttien_tien -= O.dailydebt_soluong * s.sach_giaxuat;
                            c.dailydebttien_sach -= O.dailydebt_soluong;
                        }
                    }

                    db.SaveChanges();
                    status = true;
                }
                else
                {
                    status = false;
                }
            }
            return(new JsonResult {
                Data = new { status = status }
            });
        }
        public JsonResult save(XuatSachMaster O)
        {
            int  dlyID  = int.Parse(Session["dailyID"].ToString());
            bool status = false;

            if (ModelState.IsValid)
            {
                XuatSachMaster order = db.XuatSachMasters.Where(x => x.xuatsachID == O.xuatsachID).SingleOrDefault();
                order.xuatsach_ngayupdate = O.xuatsach_ngayupdate;
                order.xuatsach_nguoinhan  = O.xuatsach_nguoinhan;
                order.xuatsach_trangthai  = "Hoàn Tất";
                List <XuatSachDetail> dt = db.XuatSachDetails.Where(x => x.xuatsachID == O.xuatsachID).ToList();
                int sumsl = 0;
                foreach (var i in dt)
                {
                    sumsl += int.Parse(i.soluong.ToString());
                }
                foreach (var i in dt)
                {
                    DaiLyDebt l = db.DaiLyDebts.SingleOrDefault(x => x.fk_sachID == i.fk_sachID && x.fk_dailyID == dlyID);
                    if (l != null)
                    {
                        l.dailydebt_soluong += i.soluong;
                    }
                    else
                    {
                        DaiLyDebt k = new DaiLyDebt {
                            fk_dailyID = dlyID, fk_sachID = i.fk_sachID, dailydebt_soluong = i.soluong
                        };
                        db.DaiLyDebts.Add(k);
                    }
                }
                foreach (var i in dt)
                {
                    Sach w = db.Saches.SingleOrDefault(x => x.sachID == i.fk_sachID);
                    w.sach_soluong -= i.soluong;
                }
                List <DaiLyDebtTien> li = db.DaiLyDebtTiens.Where(x => x.fk_dailyID == dlyID).ToList();
                var           maxdate   = li.Select(x => x.dailydebttien_ngaycapnhat).Max();
                DaiLyDebtTien n         = db.DaiLyDebtTiens.Where(s => s.fk_dailyID == dlyID && s.dailydebttien_ngaycapnhat == maxdate).FirstOrDefault();
                if (n != null)
                {
                    if (O.xuatsach_ngayupdate == n.dailydebttien_ngaycapnhat)
                    {
                        n.dailydebttien_tien += O.xuatsach_tongtien;
                        n.dailydebttien_sach += sumsl;
                    }
                    else if (O.xuatsach_ngayupdate > n.dailydebttien_ngaycapnhat)
                    {
                        n.dailydebttien_tien       += O.xuatsach_tongtien;
                        n.dailydebttien_sach       += sumsl;
                        n.fk_dailyID                = dlyID;
                        n.dailydebttien_ngaycapnhat = O.xuatsach_ngayupdate;
                        db.DaiLyDebtTiens.Add(n);
                    }
                    else if (O.xuatsach_ngayupdate < n.dailydebttien_ngaycapnhat)
                    {
                        List <DaiLyDebtTien> dd = db.DaiLyDebtTiens.Where(x => x.fk_dailyID == dlyID && x.dailydebttien_ngaycapnhat >= O.xuatsach_ngayupdate).ToList();
                        foreach (var c in dd)
                        {
                            c.dailydebttien_tien += O.xuatsach_tongtien;
                            c.dailydebttien_sach += sumsl;
                        }
                        DaiLyDebtTien m = db.DaiLyDebtTiens.Where(x => x.fk_dailyID == dlyID && x.dailydebttien_ngaycapnhat == O.xuatsach_ngayupdate).SingleOrDefault();
                        if (m == null)
                        {
                            DaiLyDebtTien v = new DaiLyDebtTien {
                                fk_dailyID = dlyID, dailydebttien_tien = O.xuatsach_tongtien, dailydebttien_sach = sumsl, dailydebttien_ngaycapnhat = O.xuatsach_ngayupdate
                            };
                            db.DaiLyDebtTiens.Add(v);
                        }
                    }
                }
                else
                {
                    DaiLyDebtTien q = new DaiLyDebtTien {
                        fk_dailyID = dlyID, dailydebttien_tien = O.xuatsach_tongtien, dailydebttien_sach = sumsl, dailydebttien_ngaycapnhat = O.xuatsach_ngayupdate
                    };
                    db.DaiLyDebtTiens.Add(q);
                }

                foreach (var i in dt)
                {
                    List <TonKho> la       = db.TonKhoes.Where(x => x.fk_sachID == i.fk_sachID).ToList();
                    var           maxdate1 = la.Select(x => x.tonkho_ngaycapnhat).Max();
                    TonKho        u        = db.TonKhoes.Where(s => s.fk_sachID == i.fk_sachID && s.tonkho_ngaycapnhat == maxdate1).FirstOrDefault();
                    if (u != null)
                    {
                        if (O.xuatsach_ngayupdate == u.tonkho_ngaycapnhat)
                        {
                            u.tonkho_soluong += i.soluong;
                        }
                        else if (O.xuatsach_ngayupdate > u.tonkho_ngaycapnhat)
                        {
                            u.tonkho_soluong    += i.soluong;
                            u.fk_sachID          = i.fk_sachID;
                            u.tonkho_ngaycapnhat = O.xuatsach_ngayupdate;
                            db.TonKhoes.Add(u);
                        }
                        else if (O.xuatsach_ngayupdate < u.tonkho_ngaycapnhat)
                        {
                            List <TonKho> bb = db.TonKhoes.Where(x => x.fk_sachID == i.fk_sachID && x.tonkho_ngaycapnhat >= O.xuatsach_ngayupdate).ToList();
                            foreach (var c in bb)
                            {
                                c.tonkho_soluong += i.soluong;
                            }
                            TonKho h = db.TonKhoes.Where(x => x.fk_sachID == i.fk_sachID && x.tonkho_ngaycapnhat == O.xuatsach_ngayupdate).SingleOrDefault();
                            if (h == null)
                            {
                                TonKho a = new TonKho {
                                    fk_sachID = i.fk_sachID, tonkho_soluong = i.soluong, tonkho_ngaycapnhat = O.xuatsach_ngayupdate
                                };
                                db.TonKhoes.Add(a);
                            }
                        }
                    }
                    else
                    {
                        TonKho p = new TonKho {
                            fk_sachID = i.fk_sachID, tonkho_soluong = i.soluong, tonkho_ngaycapnhat = O.xuatsach_ngayupdate
                        };
                        db.TonKhoes.Add(p);
                    }
                }
            }
            db.SaveChanges();
            status = true;
            return(new JsonResult {
                Data = new { status = status }
            });
        }