public async Task <IHttpActionResult> GetDataPackageMerchandise(string maBoHang) { MdMerchandiseVm.DataBoHang result = null; //Tạm thời khóa mã đơn vị var unitCode = _serviceUser.GetCurrentUnitCode(); var maKho = _serviceUser.GetCurrentUnitCode() + "-K2"; var service = new ProcedureService <MdMerchandiseVm.DtoAndPromotion>(); if (maBoHang.Substring(0, 2).Equals("BH")) { try { var data = ProcedureCollection.GetDataBoHang(new BTS.API.ENTITY.ERPContext(), maBoHang, unitCode); if (data != null) { foreach (var i in data.ListMaHang) { string codeMerchandise = i.MaVatTu; //check tồn mã hàng này var xntItem = ProcedureCollection.GetCostOfGoodsSoldByMerchandise(unitCode, maKho, codeMerchandise); if (xntItem != null) { i.TonCuoiKySl = xntItem.ClosingQuantity == 0 ? 0 : xntItem.ClosingQuantity; i.LogKhuyenMaiError = 1; i.IsBanAm = false; i.Status = true; i.Message = "Bán mã bó hàng"; i.NoiDungKhuyenMai = "Khuyến mại bó hàng"; if (i.TonCuoiKySl <= 0) { i.LogKhuyenMaiError = 1; i.IsBanAm = true; i.Status = true; i.Message = "Bán mã bó hàng"; i.NoiDungKhuyenMai = "Khuyến mại bó hàng"; } } //end check tồn } } else { } result = data; } catch (Exception ex) { return(NotFound()); } } return(Ok(result)); }
public async Task <IHttpActionResult> PostDataMerchandise(MdMerchandiseVm.Search dataSearch) { var result = new TransferObj <MdMerchandiseVm.DtoAndPromotion>(); //Tạm thời khóa mã đơn vị var _unitCode = _serviceUser.GetCurrentUnitCode(); var _parentUnitCode = _serviceUser.GetParentUnitCode(); var _codeWareHouse = _unitCode + "-K2"; //trường hợp bán mã cân if (dataSearch.MaVatTu.Length > 9 && dataSearch.MaVatTu.Substring(0, 2).Equals("20")) { try { var data = ProcedureCollection.GetBalanceCode(new ERPContext(), dataSearch.MaVatTu); if (data != null && data.Count() == 1) { var items = data.ToList(); string codeMerchandise = items[0].MaVatTu; result.Data = _serviceRetails.GetDataPromotionByMerchandise(items[0]); //check tồn mã hàng này var xntItem = ProcedureCollection.GetCostOfGoodsSoldByMerchandise(_unitCode, _codeWareHouse, items[0].MaVatTu); if (xntItem != null) { result.Data.TonCuoiKySl = xntItem.ClosingQuantity == 0 ? 0 : xntItem.ClosingQuantity; result.Data.GiaVon = xntItem.CostOfCapital == 0 ? 0 : xntItem.CostOfCapital; if (result.Data.TonCuoiKySl <= 0) { result.Data.IsBanAm = true; } } //end check tồn result.Status = true; } else { result.Status = false; result.Message = "Không tìm thấy sản phẩm này trong danh sách hàng hóa "; } } catch (Exception ex) { return(NotFound()); } } //trường hợp bán mã hàng else { try { var data = ProcedureCollection.GetMerchandiseAndPromotion(new BTS.API.ENTITY.ERPContext(), dataSearch.MaVatTu, _parentUnitCode); if (data != null && data.Count() == 1) { var items = data.ToList(); string codeMerchandise = items[0].MaVatTu; result.Data = _serviceRetails.GetDataPromotionByMerchandise(items[0]); //check tồn mã hàng này var xntItem = ProcedureCollection.GetCostOfGoodsSoldByMerchandise(_unitCode, _codeWareHouse, items[0].MaVatTu); if (xntItem != null) { result.Data.TonCuoiKySl = xntItem.ClosingQuantity == 0 ? 0 : xntItem.ClosingQuantity; result.Data.GiaVon = xntItem.CostOfCapital == 0 ? 0 : xntItem.CostOfCapital; if (result.Data.TonCuoiKySl <= 0) { result.Data.IsBanAm = true; } } // end check tồn result.Status = true; } else { result.Status = false; result.Message = "Không tìm thấy sản phẩm này !"; } } catch (Exception ex) { result.Status = false; result.Data = new MdMerchandiseVm.DtoAndPromotion(); return(Ok(result)); } } //} return(Ok(result)); }