public HttpResponseMessage Get_BangGiaChung() { string fileurl = ""; var package = GetTemplateWorkbook("DS-BangGiaChung.xlsx", "BangGiaChung.xlsx", out fileurl); ExcelWorkbook workBook = package.Workbook; if (workBook != null) { var ws = workBook.Worksheets.FirstOrDefault(); //Worksheets["DS"]; var data = BS_CUS_CRM_CONTRACT_NhomGiaPhuongTien.get_CUS_CRM_CONTRACT_NhomGiaPhuongTien(db, PartnerID, QueryStrings); var gialist = BS_CUS_CRM_CONTRACT_BangGia.get_CUS_CRM_CONTRACT_BangGia(db, PartnerID, QueryStrings); int rowid = 3; foreach (var item in data) { ws.Cells["B" + rowid].Value = item.Sort; //STT ws.Cells["C" + rowid].Value = item.Code; ws.Cells["D" + rowid].Value = item.Name; var gia = gialist.FirstOrDefault(d => d.IDNhomGiaPhuongTien == item.ID); if (gia != null) { ws.Cells["E" + rowid].Value = gia.SoGioQuyDinhCa; ws.Cells["F" + rowid].Value = gia.DonGiaCa; ws.Cells["G" + rowid].Value = gia.DonGiaTangCa; ws.Cells["H" + rowid].Formula = string.Format("F{0}*G{0}", rowid); ws.Cells["I" + rowid].Value = gia.DonGiaNgayLe; ws.Cells["J" + rowid].Formula = string.Format("F{0}*I{0}", rowid); } rowid++; } package.Save(); } return(downloadFile(fileurl)); }
public HttpResponseMessage Post_BangGiaChung() { string fileurl = ""; var package = SaveImportedFile(out fileurl); ExcelWorkbook workBook = package.Workbook; if (workBook != null) { ExcelWorksheet ws = workBook.Worksheets.FirstOrDefault(); bool haveError = false; int SheetColumnsCount, SheetRowCount = 0; SheetColumnsCount = ws.Dimension.End.Column; // Find End Column SheetRowCount = ws.Dimension.End.Row; // Find End Row var gialist = BS_CUS_CRM_CONTRACT_BangGia.get_CUS_CRM_CONTRACT_BangGia(db, PartnerID, QueryStrings); for (int rowid = 3; rowid <= SheetRowCount; rowid++) { #region item List <string> row = new List <string>(); for (int i = 2; i <= SheetColumnsCount; i++) { row.Add(ws.Cells[rowid, i].Value == null ? "" : ws.Cells[rowid, i].Value.ToString()); } if (row[1] == "") //check code null { continue; } string code = row[1]; var dbitem = BS_CUS_CRM_CONTRACT_NhomGiaPhuongTien.get_CUS_CRM_CONTRACT_NhomGiaPhuongTien(db, PartnerID, code); if (dbitem == null) { dbitem = new DTO_CUS_CRM_CONTRACT_NhomGiaPhuongTien(); } if (int.TryParse(row[0], out int sort)) { dbitem.Sort = sort; } dbitem.Code = row[1]; dbitem.Name = row[2]; try { if (dbitem.ID != 0) { BS_CUS_CRM_CONTRACT_NhomGiaPhuongTien.put_CUS_CRM_CONTRACT_NhomGiaPhuongTien(db, PartnerID, dbitem.ID, dbitem, Username); } else { BS_CUS_CRM_CONTRACT_NhomGiaPhuongTien.post_CUS_CRM_CONTRACT_NhomGiaPhuongTien(db, PartnerID, dbitem, Username); } //Save gia var gia = gialist.FirstOrDefault(d => d.IDNhomGiaPhuongTien == dbitem.ID); if (gia == null) { gia = new DTO_CUS_CRM_CONTRACT_BangGia(); gia.IDNhomGiaPhuongTien = dbitem.ID; } if (decimal.TryParse(row[3], out decimal sogioca)) { gia.SoGioQuyDinhCa = sogioca; } if (decimal.TryParse(row[4], out decimal dongia)) { gia.DonGiaCa = dongia; } if (decimal.TryParse(row[5], out decimal tangca)) { gia.DonGiaTangCa = tangca; } if (decimal.TryParse(row[7], out decimal ngayle)) { gia.DonGiaNgayLe = ngayle; } if (gia.ID != 0) { BS_CUS_CRM_CONTRACT_BangGia.put_CUS_CRM_CONTRACT_BangGia(db, PartnerID, gia.ID, gia, Username); } else { BS_CUS_CRM_CONTRACT_BangGia.post_CUS_CRM_CONTRACT_BangGia(db, PartnerID, gia, Username); } } catch (Exception ex) { continue; } #endregion } if (haveError) { package.Save(); return(downloadFile(fileurl, HttpStatusCode.Conflict)); } } else { return(Request.CreateResponse(HttpStatusCode.BadRequest)); } return(Request.CreateResponse(HttpStatusCode.Created)); }