예제 #1
0
        public HttpResponseMessage Get_PhuongTien()
        {
            string fileurl = "";
            var    package = GetTemplateWorkbook("DS-Xe.xlsx", "DS-Xe.xlsx", out fileurl);

            ExcelWorkbook workBook = package.Workbook;

            if (workBook != null)
            {
                var ws   = workBook.Worksheets.FirstOrDefault(); //Worksheets["DS"];
                var data = BS_CUS_VANTAI_CONF_PhuongTien.get_CUS_VANTAI_CONF_PhuongTien(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;


                    DTO_CUS_CRM_CONTRACT_NhomGiaPhuongTien nhomGia = BS_CUS_CRM_CONTRACT_NhomGiaPhuongTien.get_CUS_CRM_CONTRACT_NhomGiaPhuongTien(db, PartnerID, item.IDNhomGiaPhuongTien);
                    if (nhomGia != null)
                    {
                        ws.Cells["E" + rowid].Value = nhomGia.Code;
                    }

                    ws.Cells["F" + rowid].Value = item.ChuXe;
                    ws.Cells["G" + rowid].Value = item.TriGia;
                    ws.Cells["H" + rowid].Value = item.TiLe;

                    if (item.NgayMua.HasValue)
                    {
                        ws.Cells["I" + rowid].Value = item.NgayMua.Value.ToOADate();
                    }
                    if (item.NgayKiemDinh.HasValue)
                    {
                        ws.Cells["J" + rowid].Value = item.NgayKiemDinh.Value.ToOADate();
                    }
                    if (item.NgayHetHan.HasValue)
                    {
                        ws.Cells["K" + rowid].Value = item.NgayHetHan.Value.ToOADate();
                    }
                    ws.Cells["L" + rowid].Value = item.Remark;

                    rowid++;
                }

                package.Save();
            }

            return(downloadFile(fileurl));
        }
예제 #2
0
        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));
        }
예제 #3
0
        public HttpResponseMessage Post_PhuongTien()
        {
            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

                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];
                    DTO_CUS_VANTAI_CONF_PhuongTien dbitem = BS_CUS_VANTAI_CONF_PhuongTien.get_CUS_VANTAI_CONF_PhuongTien(db, PartnerID, code);
                    if (dbitem == null)
                    {
                        dbitem = new DTO_CUS_VANTAI_CONF_PhuongTien();
                        dbitem.IDLoaiPhuongTien = 1;
                    }

                    if (int.TryParse(row[0], out int sort))
                    {
                        dbitem.Sort = sort;
                    }
                    dbitem.Code = row[1];
                    dbitem.Name = row[2];

                    if (!string.IsNullOrEmpty(row[3]))
                    {
                        DTO_CUS_CRM_CONTRACT_NhomGiaPhuongTien nhomGia = BS_CUS_CRM_CONTRACT_NhomGiaPhuongTien.get_CUS_CRM_CONTRACT_NhomGiaPhuongTien(db, PartnerID, row[3]);
                        if (nhomGia != null)
                        {
                            dbitem.IDNhomGiaPhuongTien = nhomGia.ID;
                        }
                        else
                        {
                            continue;
                        }
                    }


                    dbitem.ChuXe = row[4];


                    dbitem.TriGia = string.IsNullOrEmpty(row[5]) ? 0 : double.Parse(row[5]);

                    dbitem.TiLe = string.IsNullOrEmpty(row[6]) ? 1 : double.Parse(row[6]);

                    if (double.TryParse(row[7], out double d))
                    {
                        dbitem.NgayMua = DateTime.FromOADate(d);
                    }

                    if (double.TryParse(row[8], out double d2))
                    {
                        dbitem.NgayKiemDinh = DateTime.FromOADate(d2);
                    }

                    if (double.TryParse(row[9], out double d3))
                    {
                        dbitem.NgayHetHan = DateTime.FromOADate(d3);
                    }

                    dbitem.Remark = row[10];

                    try
                    {
                        if (dbitem.ID != 0)
                        {
                            BS_CUS_VANTAI_CONF_PhuongTien.put_CUS_VANTAI_CONF_PhuongTien(db, PartnerID, dbitem.ID, dbitem, Username);
                        }
                        else
                        {
                            BS_CUS_VANTAI_CONF_PhuongTien.post_CUS_VANTAI_CONF_PhuongTien(db, PartnerID, dbitem, 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));
        }