/// <summary> /// Ham xu ly chinh, chi nhan 1 bien moi truong /// </summary> /// <param name="context">Bien moi truong</param> /// <returns></returns> public async Task <dynamic> Execute() { Init(); Validate(); // to do: // biz se thuc hien viec abc o day truoc khi goi dac PhieuNhap.XoaYN = "N"; PhieuNhap.CtrVersion = 1; var repo = new KhoPhieuNhapRepository(_context); var result = await repo.Insert(PhieuNhap); if (ListChiTiet == null || ListChiTiet.Count == 0) { return(result); } var repoChiTiet = new KhoPhieuNhapChiTietRepository(_context); foreach (var item in ListChiTiet) { item.PhieuNhapId = result.PhieuNhapId; item.XoaYN = "N"; item.CtrVersion = 1; await repoChiTiet.Insert(item); } // goi lai ham execute cua tang dac // to do: // biz se thuc hien viec abc voi result truoc khi return return(result); }
/// <summary> /// Ham xu ly chinh, chi nhan 1 bien moi truong /// </summary> /// <param name="context">Bien moi truong</param> /// <returns></returns> public async Task <dynamic> Execute() { Init(); Validate(); // to do: // biz se thuc hien viec abc o day truoc khi goi dac // TODO cập nhật phiêu nhập kho var dacUpdate = new UpdateKhoPhieuNhapDac(_context); dacUpdate.PhieuNhap = PhieuNhap; var result = await dacUpdate.Execute(); if (dacUpdate.PhieuNhap.MESSAGE == "VERSION_CONFICT") { throw new BaseException("Đã có người dùng khác thay đổi thông tin. Bạn vui lòng load lại dữ liệu mới."); } if (ListChiTiet == null || ListChiTiet.Count == 0) { return(result); } // TODO xóa chi tiết của phiếu nhập var dacDeleteChiTiet = new DeleteListChiTietByPhieuNhapIdDac(_context); dacDeleteChiTiet.PHIEU_NHAP_ID = PhieuNhap.PhieuNhapId; dacDeleteChiTiet.LOGIN_ID = PhieuNhap.LOGIN_ID; var result_deleteCT = await dacDeleteChiTiet.Execute(); // TODO thêm mới chi tiết phiếu nhập var repoChiTiet = new KhoPhieuNhapChiTietRepository(_context); foreach (var item in ListChiTiet) { item.PhieuNhapId = result.FirstOrDefault().PhieuNhapId; item.XoaYN = "N"; item.CtrVersion = 1; await repoChiTiet.Insert(item); } // goi lai ham execute cua tang dac // to do: // biz se thuc hien viec abc voi result truoc khi return return(result); }