741 lines
26 KiB
C#
741 lines
26 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using WMS.Frm.Base;
|
|
using WMS.Common;
|
|
using System.Windows.Forms;
|
|
using WMS.Model.Base;
|
|
using System.Data;
|
|
using WMS.Base.WebService;
|
|
using System.Collections;
|
|
using System.Threading;
|
|
|
|
namespace WMS.FrmBaseData
|
|
{
|
|
/// <summary>
|
|
/// 窗体:快递公司配送范围
|
|
/// </summary>
|
|
public partial class FrmLogisticsRange : FormBase
|
|
{
|
|
#region 变量
|
|
public static FrmLogisticsRange frmLogisticsRange;
|
|
private LogisticsRangeModel LogisticsRangeModel = new LogisticsRangeModel();
|
|
private List<LogisticsRangeModel> listLogisticsRangeModel = new List<LogisticsRangeModel>();
|
|
private int flag = -1;//0:新增;1:修改
|
|
private string logComID = string.Empty;//用于查询绑定GridView的logComID
|
|
private bool importing = false;
|
|
|
|
public string LogComID
|
|
{
|
|
get { return logComID; }
|
|
set { logComID = value; }
|
|
}
|
|
#endregion
|
|
|
|
#region 初始化
|
|
|
|
/// <summary>
|
|
/// 无参构造
|
|
/// </summary>
|
|
public FrmLogisticsRange()
|
|
{
|
|
InitializeComponent();
|
|
|
|
lueLogCom.LoadData();
|
|
lueTown.LoadData();
|
|
lueCity.LoadData();
|
|
luePro.LoadData();
|
|
}
|
|
|
|
public static FrmLogisticsRange getInstance()
|
|
{
|
|
if (frmLogisticsRange == null || frmLogisticsRange.IsDisposed)
|
|
{
|
|
frmLogisticsRange = new FrmLogisticsRange();
|
|
}
|
|
return frmLogisticsRange;
|
|
}
|
|
|
|
/// <summary>
|
|
/// 本窗体加载的时候
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
public void FrmLogisticsRange_Load(object sender, EventArgs e)
|
|
{
|
|
bindGrid(logComID);
|
|
FrmSelectModle = new LogisticsRangeModel();
|
|
|
|
if (frmButtonItem.ContainsKey("Save"))
|
|
{
|
|
frmButtonItem["Save"].Enabled = false;
|
|
}
|
|
}
|
|
|
|
#endregion
|
|
|
|
#region 绑定数据
|
|
|
|
/// <summary>
|
|
/// 整体绑定数据
|
|
/// </summary>
|
|
private void bindGrid(string logComID)
|
|
{
|
|
if (!importing)
|
|
{
|
|
string errText = string.Empty;
|
|
//整体绑定数据
|
|
|
|
LogisticsRangeModel queryLogisticsRange = new LogisticsRangeModel();
|
|
if (!string.IsNullOrEmpty(logComID))
|
|
{
|
|
queryLogisticsRange.LOG_COM_ID = logComID;
|
|
}
|
|
|
|
string strParameter = Newtonsoft.Json.JsonConvert.SerializeObject(queryLogisticsRange);
|
|
|
|
string strDataSet = string.Empty;
|
|
|
|
new Thread(delegate()
|
|
{
|
|
try
|
|
{
|
|
//调用Web服务读取快递公司配送范围信息
|
|
strDataSet = WebLockConfig.Instance.WebLogisticsRange.GetLogisticsRangeListStr(strParameter, ref errText);
|
|
if (errText == string.Empty)
|
|
{
|
|
listLogisticsRangeModel = Newtonsoft.Json.JsonConvert.DeserializeObject<List<LogisticsRangeModel>>(strDataSet);
|
|
}
|
|
else
|
|
{
|
|
SystemCommon.ShowInfoMessageBox(errText);
|
|
}
|
|
}
|
|
catch (Exception)
|
|
{
|
|
SystemCommon.ShowInfoMessageBox("未知错误,请检查网络连接!如仍无法解决问题请联系我们!");
|
|
}
|
|
|
|
this.Invoke(new MethodInvoker(delegate()
|
|
{
|
|
if (errText == string.Empty)
|
|
{
|
|
if (errText == string.Empty)
|
|
{
|
|
if (listLogisticsRangeModel.Count > 0)
|
|
{
|
|
//GridView绑定数据
|
|
bsLogisticsRange.DataSource = listLogisticsRangeModel;
|
|
gridViewLogisticsRange.RefreshData();
|
|
|
|
//gridViewLogisticsRange.FocusedRowHandle = 0;//选中行变为第一行
|
|
gridViewLogisticsRange.FocusedRowHandle = listLogisticsRangeModel.FindIndex(p => p.LOGISTICS_RANGE_ID == LogisticsRangeModel.LOGISTICS_RANGE_ID);//选中行变为刚编辑的数据行
|
|
|
|
//编辑区域绑定数据
|
|
if (string.IsNullOrEmpty(LogisticsRangeModel.LOGISTICS_RANGE_ID) && gridViewLogisticsRange.FocusedRowHandle > -1)
|
|
{
|
|
LogisticsRangeModel = listLogisticsRangeModel[gridViewLogisticsRange.FocusedRowHandle];
|
|
}
|
|
bsLogisticsRangeEdit.DataSource = LogisticsRangeModel;
|
|
}
|
|
else
|
|
{
|
|
//SystemCommon.ShowInfoMessageBox("该快递公司下没有可配送的范围");
|
|
}
|
|
|
|
}
|
|
}
|
|
}));
|
|
|
|
}).Start();
|
|
|
|
|
|
|
|
if (frmButtonItem.ContainsKey("Add"))
|
|
{
|
|
frmButtonItem["Add"].Enabled = true;
|
|
}
|
|
if (frmButtonItem.ContainsKey("Edit"))
|
|
{
|
|
frmButtonItem["Edit"].Enabled = true;
|
|
}
|
|
if (frmButtonItem.ContainsKey("Del"))
|
|
{
|
|
frmButtonItem["Del"].Enabled = true;
|
|
}
|
|
if (frmButtonItem.ContainsKey("Save"))
|
|
{
|
|
frmButtonItem["Save"].Enabled = false;
|
|
}
|
|
if (frmButtonItem.ContainsKey("SaveImport")) { frmButtonItem["SaveImport"].Enabled = false; }
|
|
Confirm();
|
|
}
|
|
else {
|
|
bsLogisticsRange.DataSource = listLogisticsRangeModel;
|
|
gridViewLogisticsRange.RefreshData();
|
|
|
|
if (LogisticsRangeModel.LOGISTICS_RANGE_ID != null) {
|
|
gridViewLogisticsRange.FocusedRowHandle = listLogisticsRangeModel.FindIndex(p => p.LOGISTICS_RANGE_ID == LogisticsRangeModel.LOGISTICS_RANGE_ID);//选中行变为刚编辑的数据行
|
|
|
|
//编辑区域绑定数据
|
|
if (string.IsNullOrEmpty(LogisticsRangeModel.LOGISTICS_RANGE_ID) && gridViewLogisticsRange.FocusedRowHandle > -1)
|
|
{
|
|
LogisticsRangeModel = listLogisticsRangeModel[gridViewLogisticsRange.FocusedRowHandle];
|
|
}
|
|
bsLogisticsRangeEdit.DataSource = LogisticsRangeModel;
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
/// <summary>
|
|
/// 通用查询
|
|
/// </summary>
|
|
/// <param name="table"></param>
|
|
public override void LoadListData(DataTable table)
|
|
{
|
|
listLogisticsRangeModel = ConvertHelper<LogisticsRangeModel>.ConvertToList(table);
|
|
bsLogisticsRange.DataSource = listLogisticsRangeModel;
|
|
|
|
gridViewLogisticsRange.RefreshData();
|
|
}
|
|
|
|
/// <summary>
|
|
/// GridView选中行改变
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
private void gridViewLogisticsRange_FocusedRowChanged(object sender, DevExpress.XtraGrid.Views.Base.FocusedRowChangedEventArgs e)
|
|
{
|
|
//编辑区域数据绑定
|
|
LogisticsRangeModel = new LogisticsRangeModel();
|
|
LogisticsRangeModel = gridViewLogisticsRange.GetFocusedRow() as LogisticsRangeModel;
|
|
bsLogisticsRangeEdit.DataSource = LogisticsRangeModel;
|
|
frmButtonItem["Edit"].Enabled = true;
|
|
frmButtonItem["Del"].Enabled = true;
|
|
frmButtonItem["Save"].Enabled = false;
|
|
Confirm();
|
|
|
|
if (!importing) {
|
|
|
|
if (frmButtonItem.ContainsKey("Add"))
|
|
{
|
|
frmButtonItem["Add"].Enabled = true;
|
|
}
|
|
if (frmButtonItem.ContainsKey("Edit"))
|
|
{
|
|
frmButtonItem["Edit"].Enabled = true;
|
|
}
|
|
if (frmButtonItem.ContainsKey("Del"))
|
|
{
|
|
frmButtonItem["Del"].Enabled = true;
|
|
}
|
|
if (frmButtonItem.ContainsKey("Save"))
|
|
{
|
|
frmButtonItem["Save"].Enabled = false;
|
|
}
|
|
}
|
|
}
|
|
|
|
#region 改变省份后 城市只显示该省份的所有城市
|
|
/// <summary>
|
|
/// 改变省份后 城市只显示该省份的所有城市
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
private void luePro_EditValueChanged(object sender, EventArgs e)
|
|
{
|
|
//if (!string.IsNullOrEmpty(luePro.Properties.ValueMember) && luePro.EditValue != null && !string.IsNullOrEmpty(luePro.EditValue.ToString()))
|
|
//{
|
|
// //绑定城市数据
|
|
// string errText = string.Empty;
|
|
|
|
// AddressAreaModel addressAreaModel = new AddressAreaModel();
|
|
// addressAreaModel.Add_pid = luePro.EditValue.ToString();
|
|
|
|
// string strParameter = Newtonsoft.Json.JsonConvert.SerializeObject(addressAreaModel);
|
|
|
|
// string strResult = string.Empty;
|
|
// try
|
|
// {
|
|
// strResult = WebLockConfig.Instance.WebAddressArea.GetAddressArea(strParameter);
|
|
// }
|
|
// catch (Exception)
|
|
// {
|
|
// SystemCommon.ShowInfoMessageBox("未知错误,请检查网络连接!如仍无法解决问题请联系我们!");
|
|
// }
|
|
|
|
// //如果查询城市数据成功
|
|
// if (errText == string.Empty)
|
|
// {
|
|
// lueCity.Properties.DataSource = Newtonsoft.Json.JsonConvert.DeserializeObject<DataTable>(strResult);
|
|
// }
|
|
// else
|
|
// {
|
|
// SystemCommon.ShowInfoMessageBox(errText);
|
|
// }
|
|
//}
|
|
}
|
|
#endregion
|
|
|
|
#region 改变城市后 区县只显示该城市的所有区县
|
|
/// <summary>
|
|
/// 改变城市后 区县只显示该城市的所有区县
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
private void lueCity_EditValueChanged(object sender, EventArgs e)
|
|
{
|
|
if (!string.IsNullOrEmpty(lueCity.Properties.ValueMember))
|
|
{
|
|
//绑定区县数据
|
|
string errText = string.Empty;
|
|
|
|
AddressAreaModel addressAreaModel = new AddressAreaModel();
|
|
addressAreaModel.Add_pid = lueCity.EditValue.ToString();
|
|
|
|
string strParameter = Newtonsoft.Json.JsonConvert.SerializeObject(addressAreaModel);
|
|
|
|
string strResult = string.Empty;
|
|
try
|
|
{
|
|
strResult = WebLockConfig.Instance.WebAddressArea.GetAddressArea(strParameter);
|
|
}
|
|
catch (Exception)
|
|
{
|
|
SystemCommon.ShowInfoMessageBox("未知错误,请检查网络连接!如仍无法解决问题请联系我们!");
|
|
}
|
|
|
|
//如果查询区县数据成功
|
|
if (errText == string.Empty)
|
|
{
|
|
lueTown.Properties.DataSource = Newtonsoft.Json.JsonConvert.DeserializeObject<DataTable>(strResult);
|
|
}
|
|
else
|
|
{
|
|
SystemCommon.ShowInfoMessageBox(errText);
|
|
}
|
|
}
|
|
}
|
|
#endregion
|
|
|
|
#endregion
|
|
|
|
#region 按钮事件
|
|
|
|
/// <summary>
|
|
/// 清空按钮
|
|
/// </summary>
|
|
public override void Clear()
|
|
{
|
|
//为bsLogisticsRangeEdit绑定新的Model
|
|
LogisticsRangeModel = new LogisticsRangeModel();
|
|
|
|
bsLogisticsRangeEdit.DataSource = LogisticsRangeModel;
|
|
}
|
|
|
|
/// <summary>
|
|
/// 新增按钮
|
|
/// </summary>
|
|
public override void Add()
|
|
{
|
|
lueLogCom.Enabled = true;
|
|
txtExcArrDate.Enabled = true;
|
|
luePro.Enabled = true;
|
|
lueCity.Enabled = true;
|
|
lueTown.Enabled = true;
|
|
txtAddress.Enabled = true;
|
|
txtRemark.Enabled = true;
|
|
|
|
LogisticsRangeModel = new LogisticsRangeModel();
|
|
bsLogisticsRangeEdit.DataSource = LogisticsRangeModel;
|
|
|
|
lueCity.Properties.DataSource = new DataTable();
|
|
lueTown.Properties.DataSource = new DataTable();
|
|
|
|
flag = 0;
|
|
if (frmButtonItem.ContainsKey("Add"))
|
|
{
|
|
frmButtonItem["Add"].Enabled = false;
|
|
}
|
|
if (frmButtonItem.ContainsKey("Edit"))
|
|
{
|
|
frmButtonItem["Edit"].Enabled = false;
|
|
}
|
|
if (frmButtonItem.ContainsKey("Del"))
|
|
{
|
|
frmButtonItem["Del"].Enabled = false;
|
|
}
|
|
if (frmButtonItem.ContainsKey("Save"))
|
|
{
|
|
frmButtonItem["Save"].Enabled = true;
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// 保存按钮
|
|
/// </summary>
|
|
public override void Save() {
|
|
|
|
gridControlLogisticsRange.Focus();
|
|
|
|
//非空验证
|
|
if (string.IsNullOrEmpty(lueLogCom.Text.Trim()))
|
|
{
|
|
SystemCommon.ShowInfoMessageBox("快递公司不能为空");
|
|
lueLogCom.Focus();
|
|
return;
|
|
}
|
|
if (string.IsNullOrEmpty(txtExcArrDate.Text.Trim()))
|
|
{
|
|
SystemCommon.ShowInfoMessageBox("预计到货天数不能为空");
|
|
txtExcArrDate.Focus();
|
|
return;
|
|
}
|
|
if (string.IsNullOrEmpty(luePro.Text.Trim()))
|
|
{
|
|
SystemCommon.ShowInfoMessageBox("省份不能为空");
|
|
luePro.Focus();
|
|
return;
|
|
}
|
|
if (string.IsNullOrEmpty(lueCity.Text.Trim()))
|
|
{
|
|
SystemCommon.ShowInfoMessageBox("城市不能为空");
|
|
lueCity.Focus();
|
|
return;
|
|
}
|
|
if (string.IsNullOrEmpty(lueTown.Text.Trim()))
|
|
{
|
|
SystemCommon.ShowInfoMessageBox("县/市/区不能为空");
|
|
lueTown.Focus();
|
|
return;
|
|
}
|
|
if (string.IsNullOrEmpty(txtAddress.Text.Trim()))
|
|
{
|
|
SystemCommon.ShowInfoMessageBox("送货区域不能为空");
|
|
txtAddress.Focus();
|
|
return;
|
|
}
|
|
|
|
LogisticsRangeModel model = LogisticsRangeModel;
|
|
model.OPERATORID = userData.USER_ID;//操作人
|
|
if (importing)
|
|
{
|
|
|
|
}
|
|
else if (flag == 1)//修改
|
|
{
|
|
string strLogisticsRangeModel = Newtonsoft.Json.JsonConvert.SerializeObject(model);
|
|
string errText = string.Empty;
|
|
try
|
|
{
|
|
errText = WebLockConfig.Instance.WebLogisticsRange.InsOrUpdLogisticsRange(strLogisticsRangeModel, 1);
|
|
}
|
|
catch (Exception)
|
|
{
|
|
SystemCommon.ShowInfoMessageBox("未知错误,请检查网络连接!如仍无法解决问题请联系我们!");
|
|
}
|
|
if (string.IsNullOrEmpty(errText))
|
|
{
|
|
SystemCommon.ShowInfoMessageBox("修改成功");
|
|
bindGrid(logComID);
|
|
}
|
|
else {
|
|
SystemCommon.ShowInfoMessageBox("修改失败" + errText);
|
|
}
|
|
|
|
flag = -1;//标识为非新增非修改
|
|
}
|
|
else if (flag == 0)//新增
|
|
{
|
|
|
|
string strLogisticsRangeModel = Newtonsoft.Json.JsonConvert.SerializeObject(model);
|
|
string errText = string.Empty;
|
|
try
|
|
{
|
|
errText = WebLockConfig.Instance.WebLogisticsRange.InsOrUpdLogisticsRange(strLogisticsRangeModel, 0);
|
|
}
|
|
catch (Exception)
|
|
{
|
|
SystemCommon.ShowInfoMessageBox("未知错误,请检查网络连接!如仍无法解决问题请联系我们!");
|
|
}
|
|
if (string.IsNullOrEmpty(errText))
|
|
{
|
|
SystemCommon.ShowInfoMessageBox("新增成功");
|
|
bindGrid(logComID);
|
|
}
|
|
else
|
|
{
|
|
SystemCommon.ShowInfoMessageBox("新增失败" + errText);
|
|
flag = -1;//标识为非新增非修改
|
|
}
|
|
}
|
|
else
|
|
{
|
|
SystemCommon.ShowInfoMessageBox("未选择新增或修改");
|
|
}
|
|
|
|
|
|
//Clear();//保存后clear编辑区域
|
|
}
|
|
|
|
/// <summary>
|
|
/// 编辑按钮
|
|
/// </summary>
|
|
public override void Edit()
|
|
{
|
|
if (!frmButtonItem.ContainsKey("Edit"))
|
|
{
|
|
return;
|
|
}
|
|
else if (frmButtonItem["Edit"].Enabled == false)
|
|
{
|
|
return;
|
|
}
|
|
|
|
lueLogCom.Enabled = true;
|
|
txtExcArrDate.Enabled = true;
|
|
luePro.Enabled = true;
|
|
lueCity.Enabled = true;
|
|
lueTown.Enabled = true;
|
|
txtAddress.Enabled = true;
|
|
txtRemark.Enabled = true;
|
|
flag = 1;
|
|
if (frmButtonItem.ContainsKey("Add"))
|
|
{
|
|
frmButtonItem["Add"].Enabled = false;
|
|
}
|
|
if (frmButtonItem.ContainsKey("Edit"))
|
|
{
|
|
frmButtonItem["Edit"].Enabled = false;
|
|
}
|
|
if (frmButtonItem.ContainsKey("Del"))
|
|
{
|
|
frmButtonItem["Del"].Enabled = false;
|
|
}
|
|
if (frmButtonItem.ContainsKey("Save"))
|
|
{
|
|
frmButtonItem["Save"].Enabled = true;
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// 刷新按钮
|
|
/// </summary>
|
|
public override void Refresh()
|
|
{
|
|
if (frmButtonItem.ContainsKey("Save") && frmButtonItem["Save"].Enabled == true && DialogResult.Yes != SystemCommon.ShowMessageBoxResult("确定放弃正在编辑的数据?"))
|
|
{
|
|
return;
|
|
}
|
|
importing = false;
|
|
bindGrid(logComID);
|
|
//Clear();
|
|
}
|
|
|
|
/// <summary>
|
|
/// 删除按钮
|
|
/// </summary>
|
|
public override void Del()
|
|
{
|
|
string errText = string.Empty;
|
|
if (DialogResult.Yes == SystemCommon.ShowMessageBoxResult("确定删除"))
|
|
{
|
|
if (!importing)
|
|
{
|
|
string str = LogisticsRangeModel.LOGISTICS_RANGE_ID;
|
|
if (!string.IsNullOrEmpty(str))
|
|
{
|
|
errText = string.Empty;
|
|
try
|
|
{
|
|
errText = WebLockConfig.Instance.WebLogisticsRange.DeleteLogisticsRange(str);
|
|
}
|
|
catch (Exception)
|
|
{
|
|
SystemCommon.ShowInfoMessageBox("未知错误,请检查网络连接!如仍无法解决问题请联系我们!");
|
|
}
|
|
|
|
if (string.IsNullOrEmpty(errText))
|
|
{
|
|
SystemCommon.ShowInfoMessageBox("删除成功");
|
|
bindGrid(logComID);
|
|
}
|
|
else
|
|
{
|
|
SystemCommon.ShowInfoMessageBox("删除失败" + errText);
|
|
}
|
|
}
|
|
else
|
|
{
|
|
SystemCommon.ShowInfoMessageBox("请选择一条记录");
|
|
}
|
|
}
|
|
else
|
|
{
|
|
listLogisticsRangeModel.RemoveAll(p=>p.LOGISTICS_RANGE_ID == LogisticsRangeModel.LOGISTICS_RANGE_ID && p.LOG_COM_ID == LogisticsRangeModel.LOG_COM_ID && p.LOG_COM_NAME == LogisticsRangeModel.LOG_COM_NAME);//.RemoveAt(gridViewLogisticsRange.GetFocusedDataSourceRowIndex());
|
|
bindGrid(logComID);
|
|
}
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// 确定按钮
|
|
/// </summary>
|
|
public void Confirm()
|
|
{
|
|
lueLogCom.Enabled = false;
|
|
txtExcArrDate.Enabled = false;
|
|
luePro.Enabled = false;
|
|
lueCity.Enabled = false;
|
|
lueTown.Enabled = false;
|
|
txtAddress.Enabled = false;
|
|
txtRemark.Enabled = false;
|
|
}
|
|
|
|
/// <summary>
|
|
/// 保存
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
private void btnSave_Click(object sender, EventArgs e)
|
|
{
|
|
Save();
|
|
}
|
|
|
|
/// <summary>
|
|
/// 双击Grid 编辑
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
private void gridViewLogisticsRange_DoubleClick(object sender, EventArgs e)
|
|
{
|
|
Edit();
|
|
}
|
|
|
|
#endregion
|
|
|
|
/// <summary>
|
|
/// 导入
|
|
/// </summary>
|
|
public void Import()
|
|
{
|
|
|
|
OpenFileDialog fileDialog = new OpenFileDialog();
|
|
fileDialog.Title = "导入商品资料";
|
|
fileDialog.Filter = "Excel文件(*.xls;*.xlsx)|*.xls;*.xlsx";
|
|
DialogResult dialogResult = fileDialog.ShowDialog(this);
|
|
if (dialogResult == DialogResult.OK)
|
|
{
|
|
|
|
Hashtable ht = new Hashtable();
|
|
|
|
//ht.Add("LOG_COM_ID", "商品代码");
|
|
//ht.Add("LOG_COM_NAME", "商品名称");
|
|
|
|
List<LogisticsRangeModel> tempList = NPOIHelper<LogisticsRangeModel>.Import(fileDialog, ht);
|
|
|
|
if (tempList == null)
|
|
{
|
|
bindGrid(logComID);
|
|
return;
|
|
}
|
|
|
|
if (importing)
|
|
{
|
|
listLogisticsRangeModel.AddRange(tempList);
|
|
}
|
|
else
|
|
{
|
|
listLogisticsRangeModel = tempList;
|
|
}
|
|
|
|
if (listLogisticsRangeModel == null)
|
|
{
|
|
bindGrid(logComID);
|
|
return;
|
|
}
|
|
|
|
|
|
if (frmButtonItem.ContainsKey("Add")) { frmButtonItem["Add"].Enabled = false; }
|
|
if (frmButtonItem.ContainsKey("SaveImport")) { frmButtonItem["SaveImport"].Enabled = true; }
|
|
importing = true;
|
|
|
|
bindGrid(logComID);
|
|
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// 保存
|
|
/// </summary>
|
|
public void SaveImport()
|
|
{
|
|
//将list存入数据库
|
|
if (listLogisticsRangeModel != null && listLogisticsRangeModel.Count > 0)
|
|
{
|
|
|
|
string errText = string.Empty;
|
|
string strList = Newtonsoft.Json.JsonConvert.SerializeObject(listLogisticsRangeModel);
|
|
List<int> errorIndex = new List<int>();
|
|
int hadNum = 0;
|
|
int lengthNum = 0;
|
|
string error = string.Empty;
|
|
|
|
try
|
|
{
|
|
errorIndex = Newtonsoft.Json.JsonConvert.DeserializeObject<List<int>>(WebLockConfig.Instance.WebLogisticsRange.InsLogisticsRangeList(strList, ref errText, ref hadNum, ref lengthNum, ref error));
|
|
}
|
|
catch (Exception)
|
|
{
|
|
SystemCommon.ShowErrorMessageBox("未知错误,请检查网络连接!如仍无法解决问题请联系我们!");
|
|
}
|
|
|
|
if (errorIndex.Count == 0)
|
|
{
|
|
SystemCommon.ShowInfoMessageBox("所有记录已保存成功");
|
|
Refresh();
|
|
}
|
|
else
|
|
{
|
|
List<LogisticsRangeModel> tempList = new List<LogisticsRangeModel>();
|
|
for (int i = errorIndex.Count - 1; i >= 0; i--)
|
|
{
|
|
tempList.Add(listLogisticsRangeModel[i]);
|
|
}
|
|
listLogisticsRangeModel = tempList;
|
|
bindGrid(logComID);
|
|
|
|
string fileName = @"D:\WMS\保存导入商品分类错误日志" + System.DateTime.Now.ToString("yyyyMMddHHmmss") + ".txt";
|
|
SystemCommon.WriteFile(fileName, error);///写文件
|
|
|
|
/*错误提示*/
|
|
string info = string.Empty;
|
|
if (errorIndex.Count > (hadNum + lengthNum))
|
|
{
|
|
info += ((errorIndex.Count - hadNum - lengthNum) + "个商品分类导入时遇到未知错误,");
|
|
}
|
|
if (hadNum > 0)
|
|
{
|
|
info += (hadNum + "个商品分类编号已存在,");
|
|
}
|
|
if (lengthNum > 0)
|
|
{
|
|
info += (lengthNum + "条商品分类记录数据长度过长,");
|
|
}
|
|
info += "日志已写入" + fileName + ",未出错记录已写入数据库并从窗体中移除。";
|
|
SystemCommon.ShowErrorMessageBox(info);
|
|
}
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// 导出
|
|
/// </summary>
|
|
public void Export()
|
|
{
|
|
gridControlLogisticsRange.ShowExportDialog();
|
|
}
|
|
}
|
|
}
|