Commit 0e31cc62 by guanzhenshan

增加导入表格解析异常信息提示

parent 2eb10052
......@@ -121,7 +121,8 @@ namespace Bailun.DC.Web.Areas.DataWareHouse.Controllers
var user = HttpContextHelper.Current?.User;
var file = Request.Form.Files[0];
Dictionary<string, DataTable> dic = Base.NpolHelper.ExcelToDataTable(file.OpenReadStream(), file.FileName, true);
var errmsg = "";
Dictionary<string, DataTable> dic = Base.NpolHelper.ExcelToDataTable(file.OpenReadStream(), file.FileName, true,ref errmsg);
if (dic.Count > 0)
{
var tb = dic.FirstOrDefault();
......
......@@ -23,7 +23,7 @@ namespace Bailun.DC.Web.Areas.DataWareHouse.Controllers
{
var listconfig = new Services.DataWareHouse.PlatformOrderFeeServices().ListOrderFeeConfig(2);
ViewBag.listconfig = listconfig.Select(a=>a.platform).Distinct().ToList();
ViewBag.listconfig = listconfig.Select(a=>a.platform).Distinct().Where(b=>b!= "万邑通" && b!= "易可达" && b!= "艾姆勒IML海外仓" && b!= "递四方" && b!= "顺邮" && b!= "橙联speedPAK" && b!= "伯明翰" && b!= "wish post").ToList();
ViewBag.platform = platform;
ViewBag.sites = listconfig.Where(a=>a.platform==platform).Select(b=>b.website).Distinct().Where(c=>!string.IsNullOrEmpty(c)).ToList();
......@@ -109,8 +109,17 @@ namespace Bailun.DC.Web.Areas.DataWareHouse.Controllers
//var user = HttpContextHelper.Current?.User;
var file = Request.Form.Files[0];
var errmsg = "";
Dictionary<string, DataTable> dic = Base.NpolHelper.ExcelToDataTable(file.OpenReadStream(), file.FileName, true, ref errmsg);
Dictionary<string, DataTable> dic = Base.NpolHelper.ExcelToDataTable(file.OpenReadStream(), file.FileName, true);
if (!string.IsNullOrEmpty(errmsg))
{
return Json(new
{
success = false,
msg = "识别表格异常,异常信息:"+errmsg,
});
}
if (dic.Count > 0)
{
......
......@@ -318,8 +318,8 @@ namespace Bailun.DC.Web.Areas.DataWareHouse.Controllers
//var user = HttpContextHelper.Current?.User;
var file = Request.Form.Files[0];
Dictionary<string, DataTable> dic = Base.NpolHelper.ExcelToDataTable(file.OpenReadStream(), file.FileName, true);
var errmsg = "";
Dictionary<string, DataTable> dic = Base.NpolHelper.ExcelToDataTable(file.OpenReadStream(), file.FileName, true,ref errmsg);
if (dic.Count > 0)
{
var tb = dic.FirstOrDefault();
......@@ -397,7 +397,8 @@ namespace Bailun.DC.Web.Areas.DataWareHouse.Controllers
var file = Request.Form.Files[0];
Dictionary<string, DataTable> dic = Base.NpolHelper.ExcelToDataTable(file.OpenReadStream(), file.FileName, true);
var errmsg = "";
Dictionary<string, DataTable> dic = Base.NpolHelper.ExcelToDataTable(file.OpenReadStream(), file.FileName, true,ref errmsg);
if (dic.Count > 0)
{
......
......@@ -27,7 +27,7 @@
</div>
<div class="form-group">
站点:
<div data-toggle="buttons-checkbox" class="btn-group">
<div data-toggle="buttons-checkbox" class="btn-group" id="website">
@foreach (var item in ViewBag.sites)
{
//<option value="@item">@item</option>
......@@ -223,6 +223,8 @@
$('#sel_platform_contain').css('display', 'inline');
platform = $('#platform').val();
}
$('#platform').change(function () {
platform = $('#platform').val();
initUpload();
......@@ -231,7 +233,6 @@
getWebsite();
})
}
list();
......@@ -499,11 +500,12 @@
paramData: '',
type:'POST',
func: function (result) {
$('#website').html('<option value="">请选择站点</option>');
$('#website').html('');
if (result.success) {
if (result.data.length > 0) {
for (var i in result.data) {
$('#website').append('<option value="' + result.data[i] + '">' + result.data[i] + '</option>');
$('#website').append('<button class="btn btn-info wsites" type="button" aria-pressed="false" onclick="selWebsite(\'' + result.data[i] + '\',this)">' + result.data[i]+'</button>');
}
}
......
......@@ -4840,8 +4840,10 @@ namespace Bailun.DC.Web.Areas.Reports.Controllers
});
}
var errmsg = "";
var file = Request.Form.Files[0];
Dictionary<string, DataTable> dic = Base.NpolHelper.ExcelToDataTable(file.OpenReadStream(), file.FileName, true);
Dictionary<string, DataTable> dic = Base.NpolHelper.ExcelToDataTable(file.OpenReadStream(), file.FileName, true,ref errmsg);
if (dic.Count > 0)
{
var tb = dic.FirstOrDefault();
......@@ -5106,8 +5108,10 @@ namespace Bailun.DC.Web.Areas.Reports.Controllers
});
}
var errmsg = "";
var file = Request.Form.Files[0];
Dictionary<string, DataTable> dic = Base.NpolHelper.ExcelToDataTable(file.OpenReadStream(), file.FileName, true);
Dictionary<string, DataTable> dic = Base.NpolHelper.ExcelToDataTable(file.OpenReadStream(), file.FileName, true,ref errmsg);
if (dic.Count > 0)
{
var tb = dic.FirstOrDefault();
......@@ -5480,8 +5484,10 @@ namespace Bailun.DC.Web.Areas.Reports.Controllers
});
}
var errmsg = "";
var file = Request.Form.Files[0];
Dictionary<string, DataTable> dic = Base.NpolHelper.ExcelToDataTable(file.OpenReadStream(), file.FileName, true);
Dictionary<string, DataTable> dic = Base.NpolHelper.ExcelToDataTable(file.OpenReadStream(), file.FileName, true,ref errmsg);
if (dic.Count > 0)
{
var tb = dic.FirstOrDefault();
......@@ -8609,8 +8615,9 @@ namespace Bailun.DC.Web.Areas.Reports.Controllers
});
}
var errmsg = "";
var file = Request.Form.Files[0];
Dictionary<string, DataTable> dic = Base.NpolHelper.ExcelToDataTable(file.OpenReadStream(), file.FileName, true);
Dictionary<string, DataTable> dic = Base.NpolHelper.ExcelToDataTable(file.OpenReadStream(), file.FileName, true,ref errmsg);
if (dic.Count > 0)
{
var tb = dic.FirstOrDefault();
......@@ -8977,8 +8984,9 @@ namespace Bailun.DC.Web.Areas.Reports.Controllers
});
}
var errmsg = "";
var file = Request.Form.Files[0];
Dictionary<string, DataTable> dic = Base.NpolHelper.ExcelToDataTable(file.OpenReadStream(), file.FileName, true);
Dictionary<string, DataTable> dic = Base.NpolHelper.ExcelToDataTable(file.OpenReadStream(), file.FileName, true,ref errmsg);
if (dic.Count > 0)
{
var tb = dic.FirstOrDefault();
......
......@@ -317,8 +317,9 @@ namespace Bailun.DC.Web.Areas.Reports.Controllers
});
}
var errmsg = "";
var file = Request.Form.Files[0];
Dictionary<string, DataTable> dic = Base.NpolHelper.ExcelToDataTable(file.OpenReadStream(), file.FileName, true);
Dictionary<string, DataTable> dic = Base.NpolHelper.ExcelToDataTable(file.OpenReadStream(), file.FileName, true,ref errmsg);
if (dic.Count > 0)
{
var tb = dic.FirstOrDefault();
......
......@@ -3302,8 +3302,9 @@ namespace Bailun.DC.Web.Areas.Reports.Controllers
});
}
var errmsg = "";
var file = Request.Form.Files[0];
Dictionary<string, DataTable> dic = Base.NpolHelper.ExcelToDataTable(file.OpenReadStream(), file.FileName, true);
Dictionary<string, DataTable> dic = Base.NpolHelper.ExcelToDataTable(file.OpenReadStream(), file.FileName, true,ref errmsg);
if (dic.Count > 0)
{
var tb = dic.FirstOrDefault();
......
......@@ -23,7 +23,7 @@ namespace Bailun.DC.Web.Base
/// <param name="SheetName">获取某一个工作簿的内容,如果为空的话,则获取所有;如果有多个的话,那么用,分隔</param>
/// <param name="emptySheet">是否要获取为空的工作簿的内容</param>
/// <returns>返回dicDataTable</returns>
public static Dictionary<string, DataTable> ExcelToDataTable(Stream fs, string fileName, bool isColumnName, List<string> SheetName = null, bool emptySheet = true)
public static Dictionary<string, DataTable> ExcelToDataTable(Stream fs, string fileName, bool isColumnName,ref string errmsg, List<string> SheetName = null, bool emptySheet = true)
{
Dictionary<string, DataTable> dicDataTable = new Dictionary<string, DataTable>();
DataColumn column = null;
......@@ -35,7 +35,7 @@ namespace Bailun.DC.Web.Base
int startRow = 0;
using (fs)
{
ExcelToDataTable(fs, fileName, isColumnName, ref dicDataTable, ref column, ref dataRow, ref workbook, ref sheet, ref row, ref cell, ref startRow, SheetName, emptySheet);
ExcelToDataTable(fs, fileName, isColumnName, ref dicDataTable, ref column, ref dataRow, ref workbook, ref sheet, ref row, ref cell, ref startRow, SheetName, emptySheet,ref errmsg);
}
return dicDataTable;
}
......@@ -48,7 +48,7 @@ namespace Bailun.DC.Web.Base
/// <param name="SheetName">获取某一个工作簿的内容,如果为空的话,则获取所有;如果有多个的话,那么用,分隔</param>
/// <param name="emptySheet">是否要获取为空的工作簿的内容</param>
/// <returns>返回datatables</returns>
public static Dictionary<string, DataTable> ExcelToDataTable(string filePath, bool isColumnName, List<string> SheetName = null, bool emptySheet = true)
public static Dictionary<string, DataTable> ExcelToDataTable(string filePath, bool isColumnName, ref string errmsg, List<string> SheetName = null, bool emptySheet = true)
{
Dictionary<string, DataTable> dicDataTable = new Dictionary<string, DataTable>();
FileStream fs = null;
......@@ -62,14 +62,14 @@ namespace Bailun.DC.Web.Base
using (fs = File.OpenRead(filePath))
{
ExcelToDataTable(fs, filePath, isColumnName, ref dicDataTable, ref column, ref dataRow, ref workbook, ref sheet, ref row, ref cell, ref startRow, SheetName, emptySheet);
ExcelToDataTable(fs, filePath, isColumnName, ref dicDataTable, ref column, ref dataRow, ref workbook, ref sheet, ref row, ref cell, ref startRow, SheetName, emptySheet,ref errmsg);
}
return dicDataTable;
}
#endregion
#region privateExcelToDataTable
private static void ExcelToDataTable(Stream fs, string fileName, bool isColumnName, ref Dictionary<string, DataTable> dicDataTable, ref DataColumn column, ref DataRow dataRow, ref IWorkbook workbook, ref ISheet sheet, ref IRow row, ref ICell cell, ref int startRow, List<string> SheetName, bool emptySheet)
private static void ExcelToDataTable(Stream fs, string fileName, bool isColumnName, ref Dictionary<string, DataTable> dicDataTable, ref DataColumn column, ref DataRow dataRow, ref IWorkbook workbook, ref ISheet sheet, ref IRow row, ref ICell cell, ref int startRow, List<string> SheetName, bool emptySheet,ref string errmsg)
{
try
{
......@@ -174,6 +174,7 @@ namespace Bailun.DC.Web.Base
}
catch (Exception ex)
{
errmsg = ex.Message;
if (fs != null)
{
fs.Close();
......
......@@ -301,8 +301,8 @@ namespace Bailun.DC.Web.Controllers
//var user = HttpContextHelper.Current?.User;
var file = Request.Form.Files[0];
Dictionary<string, DataTable> dic = Base.NpolHelper.ExcelToDataTable(file.OpenReadStream(), file.FileName, true);
var errmsg = "";
Dictionary<string, DataTable> dic = Base.NpolHelper.ExcelToDataTable(file.OpenReadStream(), file.FileName, true,ref errmsg);
var platform = "";
var website = "";
......@@ -439,8 +439,8 @@ namespace Bailun.DC.Web.Controllers
//var user = HttpContextHelper.Current?.User;
var file = Request.Form.Files[0];
Dictionary<string, DataTable> dic = Base.NpolHelper.ExcelToDataTable(file.OpenReadStream(), file.FileName, true);
var errmsg = "";
Dictionary<string, DataTable> dic = Base.NpolHelper.ExcelToDataTable(file.OpenReadStream(), file.FileName, true,ref errmsg);
if (dic.Count > 0)
{
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment