public async Task <IHttpActionResult> GetNewParameter() { var unitCode = _servicePeriod.GetCurrentUnitCode(); var currentDate = DateTime.Now.Date; var result = new ParameterInventory() { ToDate = currentDate, FromDate = currentDate, MinDate = currentDate, MaxDate = currentDate, UnitCode = unitCode, IsOnlyInventory = 2, GroupBy = TypeGroupInventory.WAREHOUSE }; var periodCollection = _servicePeriod.Repository.DbSet.Where(x => x.UnitCode == unitCode && x.TrangThai == (int)ApprovalState.IsComplete); if (periodCollection != null && periodCollection.Count() > 0) { var lastPeriod = periodCollection.OrderByDescending(x => x.Year).OrderByDescending(x => x.Period).FirstOrDefault(); var originalPeriod = periodCollection.OrderBy(x => x.Period).FirstOrDefault(); result.MaxDate = lastPeriod.ToDate; result.MinDate = originalPeriod.FromDate; result.ToDate = lastPeriod.ToDate; if (lastPeriod.ToDate.AddMonths(-1) >= originalPeriod.FromDate) { result.FromDate = lastPeriod.ToDate.AddMonths(-1); } else { result.FromDate = originalPeriod.FromDate; } } return(Ok(result)); }
public IHttpActionResult GetTableNameByDate(ParameterInventory param) { if (param.FromDate != null || param.ToDate != null) { var result = new TransferObj(); DateTime day = new DateTime(param.FromDate.Year, param.FromDate.Month, param.FromDate.Day, 0, 0, 0); var data = _service.Repository.DbSet.FirstOrDefault(x => x.FromDate == day); if (data != null) { string tableName = ProcedureCollection.GetTableName(data.Year, data.Period); result.Data = tableName; result.Status = true; result.Message = "Ok"; return(Ok(result)); } else { result.Message = "Chưa khởi tạo kỳ kế toán"; return(NotFound()); } } else { return(NotFound()); } }
public HttpResponseMessage PostExportExcelXNTByMerchandiseByNCC(ParameterInventory para) { var ininventoryExp = new TransferObj <ParameterInventory>(); HttpResponseMessage response = Request.CreateResponse(); try { var streamData = _service.ExportExcelXNTByMerchandiseByNCC(para.FromDate, para.ToDate, para.UnitCode, para.WareHouseCodes, para.MerchandiseTypeCodes, para.MerchandiseGroupCodes, para.MerchandiseCodes, para.NhaCungCapCodes); response.StatusCode = HttpStatusCode.OK; streamData.Seek(0, SeekOrigin.Begin); response.Content = new StreamContent(streamData); response.Content.Headers.ContentDisposition = new ContentDispositionHeaderValue("inline") { FileName = "XuatNhapTonTheoHangNhomTheoHang.xlsx" }; response.Content.Headers.ContentType = new MediaTypeHeaderValue("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"); return(response); } catch (Exception e) { response.StatusCode = HttpStatusCode.InternalServerError; return(response); } }
public HttpResponseMessage ExportExcelXNTNewChiTiet(ParameterInventory para) { var ininventoryExp = new TransferObj <ParameterInventory>(); HttpResponseMessage response = Request.CreateResponse(); try { MemoryStream streamData = new MemoryStream(); streamData = _service.ExportExcelXNTNewChiTiet(para); response.StatusCode = HttpStatusCode.OK; streamData.Seek(0, SeekOrigin.Begin); response.Content = new StreamContent(streamData); switch (para.GroupBy) { case TypeGroupInventory.TYPE: response.Content.Headers.ContentDisposition = new ContentDispositionHeaderValue("inline") { FileName = "XuatNhapTonTheoLoaiHang.xlsx" }; break; case TypeGroupInventory.GROUP: response.Content.Headers.ContentDisposition = new ContentDispositionHeaderValue("inline") { FileName = "XuatNhapTonTheoNhomHang.xlsx" }; break; case TypeGroupInventory.NHACUNGCAP: response.Content.Headers.ContentDisposition = new ContentDispositionHeaderValue("inline") { FileName = "XuatNhapTonTheoNhaCungCap.xlsx" }; break; case TypeGroupInventory.WAREHOUSE: response.Content.Headers.ContentDisposition = new ContentDispositionHeaderValue("inline") { FileName = "XuatNhapTonTheoKho.xlsx" }; break; default: response.Content.Headers.ContentDisposition = new ContentDispositionHeaderValue("inline") { FileName = "XuatNhapTonChiTiet.xlsx" }; break; } response.Content.Headers.ContentType = new MediaTypeHeaderValue("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"); return(response); } catch (Exception ex) { response.StatusCode = HttpStatusCode.InternalServerError; return(response); } }
public async Task <IHttpActionResult> UpdateGiaVon(ParameterInventory para) { var unitCode = _servicePeriod.GetCurrentUnitCode(); var period = _service.UnitOfWork.Repository <MdPeriod>().DbSet.Where(x => x.ToDate.Date == para.ToDate.Date).FirstOrDefault(); if (period != null) { try { _servicePeriod.UpDateGiaVon(period); return(Ok(true)); } catch (Exception) { return(InternalServerError()); } } return(Ok(false)); }
public IHttpActionResult GetSoLuongTonByDate(ParameterInventory param) { if (param.FromDate != null || param.ToDate != null) { var result = new TransferObj(); DateTime day = new DateTime(param.FromDate.Year, param.FromDate.Month, param.FromDate.Day, 0, 0, 0); var data = _service.Repository.DbSet.FirstOrDefault(x => x.FromDate == day); if (data != null) { MdPeriodVm.ResponseData dataResult = new MdPeriodVm.ResponseData(); string tableName = ProcedureCollection.GetTableName(data.Year, data.Period); var getTonKhoXuat = string.Format("SELECT TONCUOIKYSL FROM {0} where MAVATTU = '{1}' and MAKHO = '{2}'", tableName, param.MerchandiseCodes.ToUpper(), param.WareHouseCodes); var getTonKhoNhap = string.Format("SELECT TONCUOIKYSL FROM {0} where MAVATTU = '{1}' and MAKHO = '{2}'", tableName, param.MerchandiseCodes.ToUpper(), param.WareHouseRecieveCode); using (var ctx = new ERPContext()) { decimal soLuongTonKhoXuat = ctx.Database.SqlQuery <decimal> (getTonKhoXuat).SingleOrDefault(); decimal soLuongTonKhoNhap = ctx.Database.SqlQuery <decimal>(getTonKhoNhap).SingleOrDefault(); dataResult.SoLuongTonKhoNhap = soLuongTonKhoNhap; dataResult.SoLuongTonKhoXuat = soLuongTonKhoXuat; result.Data = dataResult; } result.Status = true; result.Message = "Ok"; return(Ok(result)); } else { result.Message = "Chưa khởi tạo kỳ kế toán"; return(NotFound()); } } else { return(NotFound()); } }
public async Task <IHttpActionResult> ReportTheoNCCByMerChandise(ParameterInventory para) { var result = new TransferObj <InventoryReport>(); try { var reporter = new InventoryReport(); var data = new List <InventoryExpImp>(); reporter.UnitCode = _servicePeriod.GetCurrentUnitCode(); reporter.Year = para.ToDate.Year; var period = _service.UnitOfWork.Repository <MdPeriod>().DbSet.Where(x => x.ToDate == para.ToDate).FirstOrDefault(); if (period != null) { reporter.Period = period.Period; } var unitCode = _servicePeriod.GetCurrentUnitCode(); reporter.CreateDateNow(); reporter.FromDay = para.FromDate.Day; reporter.FromMonth = para.FromDate.Month; reporter.FromYear = para.FromDate.Year; reporter.ToDay = para.ToDate.Day; reporter.ToMonth = para.ToDate.Month; reporter.ToYear = para.ToDate.Year; reporter.TenDonVi = CurrentSetting.GetUnitName(unitCode); reporter.DiaChiDonVi = CurrentSetting.GetUnitAddress(unitCode); //GetNhanVien if (HttpContext.Current != null && HttpContext.Current.User is ClaimsPrincipal) { var currentUser = (HttpContext.Current.User as ClaimsPrincipal); var name = currentUser.Identity.Name; var nhanVien = _service.UnitOfWork.Repository <AU_NGUOIDUNG>().DbSet.Where(x => x.Username == name).FirstOrDefault(); if (nhanVien != null) { reporter.Username = nhanVien.TenNhanVien; } else { reporter.Username = "******"; } } //switch (para.GroupBy) //{ // case TypeGroupInventory.WAREHOUSE: // data = _service.CreateReportInventoryByWareHouse(para.FromDate, para.ToDate, para.UnitCode, para.WareHouseCodes, para.MerchandiseTypeCodes, para.MerchandiseGroupCodes, para.MerchandiseCodes); // reporter.DetailData = data.ToList(); // reporter.DetailData.ForEach(x => x.MapWareHouseName(_service.UnitOfWork)); // reporter.MapUnitUserName(_service.UnitOfWork); // reporter.GroupType = "Kho hàng"; // break; // case TypeGroupInventory.TYPE: // data = _service.CreateReportInventoryByType(para.FromDate, para.ToDate, para.UnitCode, para.WareHouseCodes, para.MerchandiseTypeCodes, para.MerchandiseGroupCodes, para.MerchandiseCodes); // reporter.DetailData = data.ToList(); // reporter.DetailData.ForEach(x => x.MapTypeName(_service.UnitOfWork)); // reporter.MapUnitUserName(_service.UnitOfWork); // reporter.GroupType = "Loại hàng hóa"; // break; // case TypeGroupInventory.GROUP: // data = _service.CreateReportInventoryByGroup(para.FromDate, para.ToDate, para.UnitCode, para.WareHouseCodes, para.MerchandiseTypeCodes, para.MerchandiseGroupCodes, para.MerchandiseCodes); // reporter.DetailData = data.ToList(); // reporter.DetailData.ForEach(x => x.MapGroupName(_service.UnitOfWork)); // reporter.MapUnitUserName(_service.UnitOfWork); // reporter.GroupType = "Nhóm hàng hóa"; // break; // case TypeGroupInventory.MERCHANDISE: // data = _service.CreateReportInventoryByMerchandise(para.FromDate, para.ToDate, para.UnitCode, para.WareHouseCodes, para.MerchandiseTypeCodes, para.MerchandiseGroupCodes, para.MerchandiseCodes); // reporter.DetailData = data.ToList(); // reporter.DetailData.ForEach(x => x.MapMerchandiseName(_service.UnitOfWork)); // reporter.MapUnitUserName(_service.UnitOfWork); // reporter.GroupType = "Hàng hóa"; // break; // default: // //data = _service.CreateReportInventoryByDay(para.FromDate, para.ToDate, para.UnitCode, para.WareHouseCodes, para.MerchandiseTypeCodes, para.MerchandiseGroupCodes, para.MerchandiseCodes); // break; //} //result.Data = reporter; result.Status = true; result.Message = "Xuất báo cáo thành công"; return(Ok(result)); } catch (Exception e) { return(InternalServerError()); } }
public async Task <IHttpActionResult> PostReportInventoryTongHop(ParameterInventory para) { var result = new TransferObj <InventoryReport>(); try { var data = new List <InventoryExpImpLevel2>(); var reporter = new InventoryReport(); reporter.UnitCode = _servicePeriod.GetCurrentUnitCode(); reporter.Year = para.ToDate.Year; var period = _service.UnitOfWork.Repository <MdPeriod>().DbSet.Where(x => x.ToDate == para.ToDate).FirstOrDefault(); if (period != null) { reporter.Period = period.Period; } var unitCode = _servicePeriod.GetCurrentUnitCode(); reporter.CreateDateNow(); reporter.FromDay = para.FromDate.Day; reporter.FromMonth = para.FromDate.Month; reporter.FromYear = para.FromDate.Year; reporter.ToDay = para.ToDate.Day; reporter.ToMonth = para.ToDate.Month; reporter.ToYear = para.ToDate.Year; reporter.TenDonVi = CurrentSetting.GetUnitName(unitCode); reporter.DiaChiDonVi = CurrentSetting.GetUnitAddress(unitCode); //GetNhanVien if (HttpContext.Current != null && HttpContext.Current.User is ClaimsPrincipal) { var currentUser = (HttpContext.Current.User as ClaimsPrincipal); var name = currentUser.Identity.Name; var nhanVien = _service.UnitOfWork.Repository <AU_NGUOIDUNG>().DbSet.Where(x => x.Username == name).FirstOrDefault(); if (nhanVien != null) { reporter.Username = nhanVien.TenNhanVien; } else { reporter.Username = "******"; } } var tableName = ProcedureCollection.GetTableName(period.Year, period.Period); data = _service.ReportTonTongHop(para); switch (para.GroupBy) { case TypeGroupInventory.MADONVI: reporter.DetailData = data.ToList(); reporter.MapUnitUserName(_service.UnitOfWork); reporter.GroupType = "Mã đơn vị"; break; case TypeGroupInventory.WAREHOUSE: reporter.DetailData = data.ToList(); reporter.MapUnitUserName(_service.UnitOfWork); reporter.GroupType = "Kho hàng"; break; case TypeGroupInventory.TYPE: reporter.DetailData = data.ToList(); reporter.MapUnitUserName(_service.UnitOfWork); reporter.GroupType = "Loại hàng hóa"; break; case TypeGroupInventory.GROUP: reporter.DetailData = data.ToList(); reporter.MapUnitUserName(_service.UnitOfWork); reporter.GroupType = "Nhóm hàng hóa"; break; case TypeGroupInventory.NHACUNGCAP: reporter.DetailData = data.ToList(); reporter.MapUnitUserName(_service.UnitOfWork); reporter.GroupType = "Nhà cung cấp"; break; default: reporter.DetailData = data.ToList(); reporter.MapUnitUserName(_service.UnitOfWork); reporter.GroupType = "Hàng hóa"; break; } result.Data = reporter; result.Status = true; result.Message = "Xuất báo cáo thành công"; return(Ok(result)); } catch (Exception e) { return(InternalServerError()); } }
public async Task <IHttpActionResult> ReportInventoryByDay(ParameterInventory para) { var result = new TransferObj <InventoryReport>(); try { var reporter = new InventoryReport(); var data = new List <InventoryExpImpLevel2>(); reporter.UnitCode = _servicePeriod.GetCurrentUnitCode(); reporter.Year = para.ToDate.Year; var period = _service.UnitOfWork.Repository <MdPeriod>().DbSet.Where(x => x.ToDate == para.ToDate).FirstOrDefault(); if (period != null) { reporter.Period = period.Period; } var unitCode = _servicePeriod.GetCurrentUnitCode(); reporter.CreateDateNow(); reporter.FromDay = para.FromDate.Day; reporter.FromMonth = para.FromDate.Month; reporter.FromYear = para.FromDate.Year; reporter.ToDay = para.ToDate.Day; reporter.ToMonth = para.ToDate.Month; reporter.ToYear = para.ToDate.Year; reporter.TenDonVi = CurrentSetting.GetUnitName(unitCode); reporter.DiaChiDonVi = CurrentSetting.GetUnitAddress(unitCode); //GetNhanVien if (HttpContext.Current != null && HttpContext.Current.User is ClaimsPrincipal) { var currentUser = (HttpContext.Current.User as ClaimsPrincipal); var name = currentUser.Identity.Name; var nhanVien = _service.UnitOfWork.Repository <AU_NGUOIDUNG>().DbSet.Where(x => x.Username == name).FirstOrDefault(); if (nhanVien != null) { reporter.Username = nhanVien.TenNhanVien; } else { reporter.Username = "******"; } } switch (para.GroupBy) { case TypeGroupInventory.MADONVI: data = _service.CreateReportInventoryTongHop(InventoryGroupBy.MADONVI.ToString(), para.FromDate, para.ToDate, para.UnitCode, para.WareHouseCodes, para.MerchandiseTypeCodes, para.MerchandiseGroupCodes, para.MerchandiseCodes, para.NhaCungCapCodes); //data = _service.CreateReportInventoryByWareHouse( para.FromDate, para.ToDate, para.UnitCode, para.WareHouseCodes, para.MerchandiseTypeCodes, para.MerchandiseGroupCodes, para.MerchandiseCodes); reporter.DetailData = data.ToList(); reporter.MapUnitUserName(_service.UnitOfWork); reporter.GroupType = "Đơn vị"; break; case TypeGroupInventory.WAREHOUSE: data = _service.CreateReportInventoryTongHop(InventoryGroupBy.MAKHO.ToString(), para.FromDate, para.ToDate, para.UnitCode, para.WareHouseCodes, para.MerchandiseTypeCodes, para.MerchandiseGroupCodes, para.MerchandiseCodes, para.NhaCungCapCodes); //data = _service.CreateReportInventoryByWareHouse( para.FromDate, para.ToDate, para.UnitCode, para.WareHouseCodes, para.MerchandiseTypeCodes, para.MerchandiseGroupCodes, para.MerchandiseCodes); reporter.DetailData = data.ToList(); reporter.MapUnitUserName(_service.UnitOfWork); reporter.GroupType = "Kho hàng"; break; case TypeGroupInventory.TYPE: data = _service.CreateReportInventoryTongHop(InventoryGroupBy.MALOAIVATTU.ToString(), para.FromDate, para.ToDate, para.UnitCode, para.WareHouseCodes, para.MerchandiseTypeCodes, para.MerchandiseGroupCodes, para.MerchandiseCodes, para.NhaCungCapCodes); reporter.DetailData = data.ToList(); reporter.MapUnitUserName(_service.UnitOfWork); reporter.GroupType = "Loại hàng hóa"; break; case TypeGroupInventory.GROUP: data = _service.CreateReportInventoryTongHop(InventoryGroupBy.MANHOMVATTU.ToString(), para.FromDate, para.ToDate, para.UnitCode, para.WareHouseCodes, para.MerchandiseTypeCodes, para.MerchandiseGroupCodes, para.MerchandiseCodes, para.NhaCungCapCodes); reporter.DetailData = data.ToList(); reporter.MapUnitUserName(_service.UnitOfWork); reporter.GroupType = "Nhóm hàng hóa"; break; case TypeGroupInventory.MERCHANDISE: data = _service.CreateReportInventoryTongHop(InventoryGroupBy.MAVATTU.ToString(), para.FromDate, para.ToDate, para.UnitCode, para.WareHouseCodes, para.MerchandiseTypeCodes, para.MerchandiseGroupCodes, para.MerchandiseCodes, para.NhaCungCapCodes); //data = _service.CreateReportInventoryByMerchandise(para.FromDate, para.ToDate, para.UnitCode, para.WareHouseCodes, para.MerchandiseTypeCodes, para.MerchandiseGroupCodes, para.MerchandiseCodes); reporter.DetailData = data.ToList(); reporter.MapUnitUserName(_service.UnitOfWork); reporter.GroupType = "Hàng hóa"; break; case TypeGroupInventory.NHACUNGCAP: data = _service.CreateReportInventoryTongHop(InventoryGroupBy.MAKHACHHANG.ToString(), para.FromDate, para.ToDate, para.UnitCode, para.WareHouseCodes, para.MerchandiseTypeCodes, para.MerchandiseGroupCodes, para.MerchandiseCodes, para.NhaCungCapCodes); //data = _service.CreateReportInventoryByCustomer(para.FromDate, para.ToDate, para.UnitCode, para.WareHouseCodes, para.MerchandiseTypeCodes, para.MerchandiseGroupCodes, para.MerchandiseCodes, para.NhaCungCapCodes); reporter.DetailData = data.ToList(); reporter.MapUnitUserName(_service.UnitOfWork); reporter.GroupType = "Nhà cung cấp"; break; default: //data = _service.CreateReportInventoryByDay(para.FromDate, para.ToDate, para.UnitCode, para.WareHouseCodes, para.MerchandiseTypeCodes, para.MerchandiseGroupCodes, para.MerchandiseCodes); break; } result.Data = reporter; result.Status = true; result.Message = "Xuất báo cáo thành công"; return(Ok(result)); } catch (Exception e) { return(InternalServerError()); } }