示例#1
0
        public DataTable ThongKeNhapKho(DateTime begin, DateTime end)
        {
            DataTable result = new CrystalReports.THINKPRODataset.ThongKeNKDataTable().Clone();

            foreach (DataRow SP in data.Tables["SANPHAM"].Rows)
            {
                List <int> GIANHAP = new List <int>();
                DataRow    NK      = result.NewRow();
                NK["MASP"]        = SP["ID_SP"];
                NK["TENSP"]       = SP["TENSP"];
                NK["SOLUONGNHAP"] = 0;
                foreach (DataRow CTPN in _CHITIETPN.Rows)
                {
                    if (NK["MASP"].ToString() == CTPN["ID_SP"].ToString())
                    {
                        DataRow PN = _PHIEUNHAP.AsEnumerable().SingleOrDefault(t => t.Field <string>("ID_PN") == CTPN.Field <string>("ID_PN"));
                        if (PN != null)
                        {
                            if (DateTime.Compare(begin, PN.Field <DateTime>("NGAYNHAP")) <= 0 && DateTime.Compare(PN.Field <DateTime>("NGAYNHAP"), end) <= 0)
                            {
                                GIANHAP.Add(CTPN.Field <int>("DONGIANHAP"));
                                NK["SOLUONGNHAP"] = NK.Field <int>("SOLUONGNHAP") + CTPN.Field <int>("SOLUONGNHAP");
                            }
                        }
                    }
                }
                if (NK.Field <int>("SOLUONGNHAP") > 0)
                {
                    NK["GIANHAP"] = GIANHAP.Average();
                    result.Rows.Add(NK);
                }
            }

            return(result);
        }
示例#2
0
        public void set(DONDATHANG dh, int manv, List <SANPHAM> ds)
        {
            ddh               = dh;
            pn.ID             = dh.ID;
            pn.IDNCC          = dh.IDNCC;
            pn.NCC            = dh.NCC;
            pn.IDNV           = manv;
            pn.GHICHU         = dh.GHICHU;
            richTextBox2.Text = pn.GHICHU;
            textBox1.Text     = pn.NCC.TENNCC;
            List <CTDH> ctdh = BUS.QLNHAP_BUS.loaddh(dh.ID);

            foreach (var ct in ctdh)
            {
                CTPN ctt = new CTPN();
                ctt.ID      = ct.ID;
                ctt.IDSP    = ct.IDSP;
                ctt.SANPHAM = ct.SANPHAM;
                ctt.SL      = ct.SL;
                ctt.DONGIA  = ct.DONGIA;
                ctt.GHICHU  = ct.GHICHU;
                dsct.Add(ctt);
            }
            gridControl2.DataSource = dsct;
        }
        public ActionResult DeleteConfirmed(int id)
        {
            CTPN cTPN = db.CTPNs.Find(id);

            db.CTPNs.Remove(cTPN);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
示例#4
0
文件: QLNHAP.cs 项目: Viet-Hoa/QLKHO
        public static void them(CTPN pn)
        {
            var x = db.PHIEUNHAPs.AsNoTracking().OrderByDescending(s => s.ID).FirstOrDefault();

            pn.ID      = x.ID;
            pn.SANPHAM = null;
            db.CTPNs.Add(pn);
            db.SaveChanges();
        }
 public ActionResult Edit([Bind(Include = "STTPN,MaPN,TenPN,TenMH,TenKH,Soluong,Dongia")] CTPN cTPN)
 {
     if (ModelState.IsValid)
     {
         db.Entry(cTPN).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     return(View(cTPN));
 }
        public ActionResult Create([Bind(Include = "STTPN,MaPN,TenPN,TenMH,TenKH,Soluong,Dongia")] CTPN cTPN)
        {
            if (ModelState.IsValid)
            {
                db.CTPNs.Add(cTPN);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(cTPN));
        }
        public void LuuCTPN(string sopn, string masp, string soluong, string giamua)
        {
            CTPN ctpn = new CTPN();

            ctpn.PHIEUNHAP = sopn;
            ctpn.MASP      = masp;
            ctpn.SL        = int.Parse(soluong);
            ctpn.GIAMUA    = int.Parse(giamua);


            data.Database().CTPNs.InsertOnSubmit(ctpn);
            data.Database().SubmitChanges();
        }
        // GET: CTPNs/Delete/5
        public ActionResult Delete(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            CTPN cTPN = db.CTPNs.Find(id);

            if (cTPN == null)
            {
                return(HttpNotFound());
            }
            return(View(cTPN));
        }
示例#9
0
        public ActionResult NhapHangDon(PhieuNhap pn, CTPN ctpn)
        {
            ViewBag.MaNCC = new SelectList(db.NhaCungCaps.OrderBy(n => n.Name), "MaNCC", "TenNCC", pn.ID_NCC);
            pn.DaXoa      = false;
            db.PhieuNhaps.Add(pn);
            db.SaveChanges(); // lưu lại để có id phiếu nhập vì nó là identity
            ctpn.ID_PhieuNhap = pn.ID_PhieuNhap;
            Product product = db.Products.SingleOrDefault(n => n.ID_Product == ctpn.ID_Product);

            product.Quantity += ctpn.SoLuong;
            db.CTPNs.Add(ctpn);
            db.SaveChanges();
            return(View());
        }
示例#10
0
        private void themsp_Click(object sender, EventArgs e)
        {
            CTPN ct = new CTPN();

            ct         = pnc;
            ct.SANPHAM = dssp.Where(s => s.ID == ct.IDSP).FirstOrDefault();
            ct.SL      = int.Parse(textBox5.Text);
            ct.DONGIA  = int.Parse(textBox6.Text);
            ct.GHICHU  = richTextBox1.Text;
            var x = dsct.Where(s => s.IDSP == pnc.IDSP).FirstOrDefault();

            dsct.Remove(x);
            dsct.Add(ct);
            gridControl2.DataSource = dsct;
        }
示例#11
0
 public static bool LuuPhieuNhap(PhieuNhap phieunhap)
 {
     if (PhieuNhap.LuuPhieuNhap(phieunhap))
     {
         foreach (var item in phieunhap.Chitiet)
         {
             if (!CTPN.LuuCTPN(item))
             {
                 PhieuNhap.XoaPhieuNhap(phieunhap.Mapn);
                 return(false);
             }
         }
         return(true);
     }
     return(false);
 }
示例#12
0
        private void btnXoa_Click(object sender, EventArgs e)
        {
            int i = -1; string s = "";

            if (radioBtnCTPN.Checked)
            {
                try
                {
                    CTPN ob = new CTPN(cbxMaPNX.SelectedValue.ToString(), cbxMaMH.SelectedValue.ToString(), Convert.ToInt32(txtSL.Text), Convert.ToSingle(txtDG.Text));
                    i = ctpn.Delete(ob);
                }
                catch { s = "Dữ liệu đã nhập không phù hợp!\n Mời nhập lại!!"; }
            }
            else if (radioBtnCTPX.Checked)
            {
                try
                {
                    CTPX ob = new CTPX(cbxMaPNX.SelectedValue.ToString(), cbxMaMH.SelectedValue.ToString(), Convert.ToInt32(txtSL.Text), Convert.ToSingle(txtDG.Text));
                    i = ctpx.Delete(ob);
                }
                catch { s = "Dữ liệu đã nhập không phù hợp!\n Mời nhập lại!!"; }
            }
            switch (i)
            {
            case -2:
                s = "Lỗi kết nối!!";
                break;

            case 1:
                s = "Xóa thành công!!";
                btnLoad_Click(sender, e);
                break;

            case 2:
                s = "Không thể xóa dữ liệu!!\n Chi tiết phiếu này không tồn tại!!";
                break;

            case 0:
                s = "Lỗi!! Không thể xóa dữ liệu!!";
                break;
            }
            MessageBox.Show(s, "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Information);
        }
示例#13
0
        public static void InsertCTPNDAL(CTPN temp)
        {
            db.CTPNs.InsertOnSubmit(temp);

            db.SubmitChanges();
        }
示例#14
0
 //DataGridview select KH by MaKH
 public static CTPN SelectCTPNDAL(string MaCTPN)
 {
     var query = from item in db.CTPNs
                 where item.MACTPN == MaCTPN
                 select new
                 {
                     item.MACTPN,
                     item.MAPN,
                     item.MASACH,
                     item.SL_NHAP
                 };
     CTPN ctpn = new CTPN();
     foreach (var item in query)
     {
         ctpn.MACTPN = item.MACTPN;
         ctpn.MAPN = item.MAPN;
         ctpn.MASACH = item.MASACH;
         ctpn.SL_NHAP = item.SL_NHAP;
     }
     return ctpn;
 }
示例#15
0
 public void Add(CTPN model)
 {
     db.CTPNs.Add(model);
     db.SaveChanges();
 }
示例#16
0
        //kiểm tra lại
        public static void UpdateCTPNDAL(CTPN item)
        {
            var query = db.CTPNs.Single(sa => sa.MACTPN == item.MACTPN);
            query.MAPN = item.MAPN;
            query.MASACH = item.MASACH;
            query.SL_NHAP = item.SL_NHAP;

            db.SubmitChanges();
        }
示例#17
0
        private void btnSua_Click(object sender, EventArgs e)
        {
            int i = -1; string s = "";

            if (radioBtnCTPN.Checked)
            {
                try
                {
                    CTPN ob = new CTPN(cbxMaPNX.SelectedValue.ToString(), cbxMaMH.SelectedValue.ToString(), Convert.ToInt32(txtSL.Text), Convert.ToSingle(txtDG.Text));
                    i = ctpn.Update(ob);
                }
                catch { s = "Dữ liệu đã nhập không phù hợp!\n Mời nhập lại!!"; }
                switch (i)
                {
                case -2:
                    s = "Lỗi kết nối!!";
                    break;

                case 1:
                    s = "Sửa thành công!!";
                    btnLoad_Click(sender, e);
                    break;

                case 2:
                    s = "Không thể sửa dữ liệu!!\n Mã phiếu nhập này không tồn tại!!";
                    break;

                case 3:
                    s = "Không thể sửa dữ liệu!!\n Giá trị số lượng hay đơn giá không hợp lệ!!";
                    break;

                case 0:
                    s = "Lỗi!! Không thể sửa dữ liệu!!";
                    break;
                }
            }
            else if (radioBtnCTPX.Checked)
            {
                try
                {
                    CTPX ob = new CTPX(cbxMaPNX.SelectedValue.ToString(), cbxMaMH.SelectedValue.ToString(), Convert.ToInt32(txtSL.Text), Convert.ToSingle(txtDG.Text));
                    i = ctpx.Update(ob);
                }
                catch { s = "Dữ liệu đã nhập không phù hợp!\n Mời nhập lại!!"; }
                switch (i)
                {
                case -2:
                    s = "Lỗi kết nối!!";
                    break;

                case 1:
                    s = "Sửa thành công!!";
                    btnLoad_Click(sender, e);
                    break;

                case 2:
                    s = "Không thể sửa dữ liệu!!\n Mã phiếu xuất này không tồn tại!!";
                    break;

                case 3:
                    s = "Không thể sửa dữ liệu!!\n Giá trị số lượng hay đơn giá không hợp lệ!!";
                    break;

                case 4:
                    s = "Không thể sửa dữ liệu!!\n Số lượng hàng cần có trong kho không đủ!!";
                    break;

                case 0:
                    s = "Lỗi!! Không thể sửa dữ liệu!!";
                    break;
                }
            }
            MessageBox.Show(s, "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Information);
        }
示例#18
0
 public int Delete(CTPN h)
 {
     return(ctpn.Delete(h));
 }
示例#19
0
 public int Update(CTPN h)
 {
     return(ctpn.Update(h));
 }
示例#20
0
 public int Insert(CTPN h)
 {
     return(ctpn.Insert(h));
 }