public List <IQueryFilter> GetFilters() { var result = new List <IQueryFilter>(); var refObj = new MdMerchandise(); if (!string.IsNullOrEmpty(this.Masieuthi)) { result.Add(new QueryFilterLinQ { Property = ClassHelper.GetProperty(() => refObj.MaVatTu), Value = this.Masieuthi, Method = FilterMethod.Like, }); } if (!string.IsNullOrEmpty(this.Barcode)) { result.Add(new QueryFilterLinQ { Property = ClassHelper.GetProperty(() => refObj.Barcode), Value = this.Barcode, Method = FilterMethod.Like }); } if (!string.IsNullOrEmpty(this.Tendaydu)) { result.Add(new QueryFilterLinQ { Property = ClassHelper.GetProperty(() => refObj.TenHang), Value = this.Tendaydu, Method = FilterMethod.Like }); } if (!string.IsNullOrEmpty(this.Mahangcuancc)) { result.Add(new QueryFilterLinQ { Property = ClassHelper.GetProperty(() => refObj.MaNCC), Value = this.Mahangcuancc, Method = FilterMethod.Like }); } if (!string.IsNullOrEmpty(this.Tenviettat)) { result.Add(new QueryFilterLinQ { Property = ClassHelper.GetProperty(() => refObj.TenVietTat), Value = this.Tenviettat, Method = FilterMethod.Like }); } return(result); }
public async Task <IHttpActionResult> Put(string id, NvKiemKeVm.Dto instance) { //Lấy danh sách các mã không thuộc kệ để update lại mã kệ cho các mã đó List <NvKiemKeVm.DtoDetails> hangKhongThuocKe = new List <NvKiemKeVm.DtoDetails>(); foreach (NvKiemKeVm.DtoDetails data in instance.DataDetails) { if (data.KeKiemKe == instance.KeKiemKe) { } else { hangKhongThuocKe.Add(data); } } //Update mã kệ trong danh mục hàng hóa foreach (NvKiemKeVm.DtoDetails value in hangKhongThuocKe) { MdMerchandise maHangHoa = _service.Repository.DbSet.FirstOrDefault(x => x.MaVatTu == value.MaVatTu); if (maHangHoa != null) { maHangHoa.MaKeHang = instance.KeKiemKe; _service.Update(maHangHoa); } } await _service.UnitOfWork.SaveAsync(); //end cập nhật mã kệ TransferObj <NvKiemKe> result = new TransferObj <NvKiemKe>(); NvKiemKe check = _serviceKK.FindById(instance.Id); if (id != instance.Id || check.TrangThai == (int)ApprovalState.IsComplete) { return(NotFound()); } try { NvKiemKe item = _serviceKK.UpdatePhieu(instance); await _serviceKK.UnitOfWork.SaveAsync(); result.Status = true; result.Data = item; return(Ok(result)); } catch (Exception e) { return(InternalServerError()); } }
public async Task <IHttpActionResult> GetDetails(string id) { TransferObj <NvChuongTrinhKhuyenMaiVm.Dto> result = new TransferObj <NvChuongTrinhKhuyenMaiVm.Dto>(); NvChuongTrinhKhuyenMaiVm.Dto temp = new NvChuongTrinhKhuyenMaiVm.Dto(); string _parentUnitCode = _service.GetParentUnitCode(); NvChuongTrinhKhuyenMai phieu = _service.FindById(id); if (phieu != null) { temp = Mapper.Map <NvChuongTrinhKhuyenMai, NvChuongTrinhKhuyenMaiVm.Dto>(phieu); List <NvChuongTrinhKhuyenMaiChiTiet> tb_ChuongTrinhKhuyenMaiChiTiet = _service.UnitOfWork.Repository <NvChuongTrinhKhuyenMaiChiTiet>().DbSet.ToList(); List <NvChuongTrinhKhuyenMaiChiTiet> chiTietChuongTrinhKhuyenMai = tb_ChuongTrinhKhuyenMaiChiTiet.Where(x => x.MaChuongTrinh == phieu.MaChuongTrinh).ToList(); temp.DataDetails = Mapper.Map <List <NvChuongTrinhKhuyenMaiChiTiet>, List <NvChuongTrinhKhuyenMaiVm.DtoDetail> >(chiTietChuongTrinhKhuyenMai); foreach (NvChuongTrinhKhuyenMaiVm.DtoDetail tmp in temp.DataDetails) { switch (tmp.LoaiChuongTrinh) { case TypePromotion.ByItemGetItem: MdMerchandise hangHoa = _service.UnitOfWork.Repository <MdMerchandise>().DbSet.FirstOrDefault(x => x.MaVatTu == tmp.MaHang); tmp.TenHang = (hangHoa != null ? hangHoa.TenHang : ""); break; case TypePromotion.MerchandiseType: MdMerchandiseType loaiHangHoa = _service.UnitOfWork.Repository <MdMerchandiseType>().DbSet.FirstOrDefault(x => x.MaLoaiVatTu == tmp.MaHang); tmp.TenHang = (loaiHangHoa != null ? loaiHangHoa.TenLoaiVatTu : ""); break; case TypePromotion.MerchandiseGroup: MdNhomVatTu nhomHangHoa = _service.UnitOfWork.Repository <MdNhomVatTu>().DbSet.FirstOrDefault(x => x.MaNhom == tmp.MaHang); tmp.TenHang = (nhomHangHoa != null ? nhomHangHoa.TenNhom : ""); break; case TypePromotion.Sponsor: MdSupplier nhaCungCap = _service.UnitOfWork.Repository <MdSupplier>().DbSet.FirstOrDefault(x => x.MaNCC == tmp.MaHang && x.UnitCode.StartsWith(_parentUnitCode)); tmp.TenHang = (nhaCungCap != null ? nhaCungCap.TenNCC : ""); break; default: break; } } result.Data = temp; result.Status = true; return(Ok(result)); } return(NotFound()); }
public NvDatHang InsertSummary(NvPhieuDatHangNCCVm.Dto instance) { instance.Calc(); //Tinh lại cac thuộc tính thứ sinh NvDatHang item = AutoMapper.Mapper.Map <NvPhieuDatHangNCCVm.Dto, NvDatHang>(instance); if (!string.IsNullOrEmpty(instance.SoPhieuCon)) { string[] phieus = instance.SoPhieuCon.Split(','); if (phieus.Length > 0) { item.SoPhieuCon = string.Empty; foreach (var str in phieus) { NvDatHang obj = Repository.DbSet.FirstOrDefault(x => x.SoPhieuPk == str); if (obj != null) { item.SoPhieuCon += obj.SoPhieuPk + ","; obj.TrangThai = (int)OrderState.IsComplete; obj.ObjectState = ObjectState.Modified; } } } } item.Id = Guid.NewGuid().ToString(); NvDatHang result = AddUnit(item); result.GenerateMaChungTuPk(); result.SoPhieu = SaveCode(); result = Insert(result); DbSet <MdMerchandise> merchandiseCollection = UnitOfWork.Repository <MdMerchandise>().DbSet; List <NvPhieuDatHangNCCVm.DtoDetail> dataFilter = instance.DataDetails.Where(x => x.SoLuong > 0).ToList(); List <NvDatHangChiTiet> dataDetails = AutoMapper.Mapper.Map <List <NvPhieuDatHangNCCVm.DtoDetail>, List <NvDatHangChiTiet> >(dataFilter); dataDetails.ForEach(x => { MdMerchandise hang = merchandiseCollection.FirstOrDefault(u => u.MaVatTu == x.MaHang); x.TenHang = hang != null ? hang.TenHang : ""; x.Id = Guid.NewGuid().ToString(); x.SoPhieu = result.SoPhieu; x.SoPhieuPk = result.SoPhieuPk; x.MaHd = result.MaHd; }); UnitOfWork.Repository <NvDatHangChiTiet>().InsertRange(dataDetails); return(result); }
public List <IQueryFilter> GetFilters() { var result = new List <IQueryFilter>(); var refObj = new MdMerchandise(); if (!string.IsNullOrEmpty(this.MaKhachHang)) { var codes = this.MaKhachHang.Split(',').ToList(); result.Add(new QueryFilterLinQ { Property = ClassHelper.GetProperty(() => refObj.MaKhachHang), Value = codes, Method = FilterMethod.In }); } if (!string.IsNullOrEmpty(this.MaLoaiVatTu)) { var codes = this.MaLoaiVatTu.Split(',').ToList(); result.Add(new QueryFilterLinQ { Property = ClassHelper.GetProperty(() => refObj.MaLoaiVatTu), Value = codes, Method = FilterMethod.In }); } if (!string.IsNullOrEmpty(this.MaNhomVatTu)) { var codes = this.MaNhomVatTu.Split(',').ToList(); result.Add(new QueryFilterLinQ { Property = ClassHelper.GetProperty(() => refObj.MaNhomVatTu), Value = codes, Method = FilterMethod.In }); } return(result); }
public List <IQueryFilter> GetFilters() { var result = new List <IQueryFilter>(); var refObj = new MdMerchandise(); if (!string.IsNullOrEmpty(this.MaLoaiVatTu)) { var codeTypes = this.MaLoaiVatTu.Split(',').ToList(); IQueryFilter queryFilterByGroup = new QueryFilterLinQ(); if (this.MaNhomVatTu != null) { var codeGroups = this.MaNhomVatTu.Split(',').ToList(); queryFilterByGroup.Method = FilterMethod.In; queryFilterByGroup.Value = codeGroups; queryFilterByGroup.Property = ClassHelper.GetProperty(() => refObj.MaNhomVatTu); } result.Add(new QueryFilterLinQ { Method = FilterMethod.And, SubFilters = new List <IQueryFilter>() { new QueryFilterLinQ() { Property = ClassHelper.GetProperty(() => refObj.MaLoaiVatTu), Value = codeTypes, Method = FilterMethod.In }, queryFilterByGroup, new QueryFilterLinQ() { Method = FilterMethod.Or, SubFilters = new List <IQueryFilter>() { new QueryFilterLinQ { Property = ClassHelper.GetProperty(() => refObj.TenHang), Value = this.TenVatTu, Method = FilterMethod.Like }, new QueryFilterLinQ { Property = ClassHelper.GetProperty(() => refObj.MaVatTu), Value = this.MaVatTu, Method = FilterMethod.Like } } } } }); } else { result.Add(new QueryFilterLinQ() { Method = FilterMethod.Or, SubFilters = new List <IQueryFilter>() { new QueryFilterLinQ { Property = ClassHelper.GetProperty(() => refObj.TenHang), Value = this.TenVatTu, Method = FilterMethod.Like }, new QueryFilterLinQ { Property = ClassHelper.GetProperty(() => refObj.MaVatTu), Value = this.MaVatTu, Method = FilterMethod.Like } } }); } return(result); }