349 lines
13 KiB
C#
349 lines
13 KiB
C#
using System;
|
|
using System.Collections;
|
|
using System.Collections.Generic;
|
|
using System.Configuration;
|
|
using System.Data;
|
|
using System.Web;
|
|
using System.Web.Security;
|
|
using System.Web.UI;
|
|
using System.Web.UI.HtmlControls;
|
|
using System.Web.UI.WebControls;
|
|
using System.Web.UI.WebControls.WebParts;
|
|
using DSWeb.Models;
|
|
using DSWeb.EntityDA;
|
|
using JsonHelper;
|
|
using System.Xml;
|
|
|
|
namespace DSWeb.Shipping
|
|
{
|
|
public partial class SeaeOrderListBSGenleg : System.Web.UI.Page
|
|
{
|
|
private string strColumnVal;
|
|
RangeDA RangeDA = new RangeDA();
|
|
public string strUserID;//用户GID
|
|
|
|
protected void Page_Load(object sender, EventArgs e)
|
|
{
|
|
if (Session["USERID"] != null)
|
|
{
|
|
strUserID = Session["USERID"].ToString().Trim();
|
|
this.hdUserID.Value = strUserID;
|
|
}
|
|
else
|
|
{
|
|
Server.Transfer("~/Error/FriendError.aspx");
|
|
return;
|
|
//strUserID = "";
|
|
}
|
|
//
|
|
//权限可视范围
|
|
//this.hdRangeV.Value = RangeDA.GetVISIBLERANGE(strUserID.Trim(), "modOrderManagement");
|
|
//this.hdRangeO.Value = RangeDA.GetOPERATERANGE(strUserID.Trim(), "modOrderManagement");
|
|
//this.hdRange.Value = "";
|
|
////if (this.hdRangeV.Value.Trim() != this.hdRangeO.Value.Trim())
|
|
////{
|
|
//this.hdRange.Value = "";
|
|
//if (this.hdRangeO.Value.Trim().Equals("4"))//无
|
|
//{
|
|
// //this.divadd.Disabled = true;
|
|
// //this.divcopyadd.Disabled = true;
|
|
// //this.divdel.Disabled = true;
|
|
//}
|
|
//}
|
|
//
|
|
if (hid_setting.Value.Trim() != "")
|
|
{
|
|
strColumnVal = hid_setting.Value.Trim();
|
|
SaveColumnSetting(strColumnVal);
|
|
hid_setting.Value = "";
|
|
}
|
|
if (hid_header.Value.Trim() != "")
|
|
{
|
|
strColumnVal = hid_header.Value.Trim();
|
|
SaveColumnSetting(strColumnVal);
|
|
hid_header.Value = "";
|
|
}
|
|
}
|
|
|
|
private void SaveColumnSetting(string tempColumnVal)
|
|
{
|
|
|
|
JsonColumnGroupEntity jsonColumnGroupEntity = GetPostEntity(tempColumnVal);
|
|
List<JsonColumnEntity> jsonColumnEntities = new List<JsonColumnEntity>();
|
|
|
|
UserSettingDA userSettingDA = new UserSettingDA();
|
|
|
|
UserSettingEntity userSettingEntity = userSettingDA.GetUserSettingByUserID(strUserID);
|
|
|
|
if (userSettingEntity.GID != null)
|
|
{
|
|
userSettingEntity.ModifiedUser = strUserID;
|
|
|
|
GridEntity gridEntity = null;
|
|
|
|
|
|
List<GridColumnEntity> gridColumnEntities = new List<GridColumnEntity>();
|
|
gridEntity = GetSettingXml(userSettingEntity.Xml);
|
|
gridEntity.PagePreCount = jsonColumnGroupEntity.ShowCount;
|
|
|
|
foreach (JsonColumnEntity jColumn in jsonColumnGroupEntity.JsonColumnEntities)
|
|
{
|
|
foreach (GridColumnEntity gColumn in gridEntity.Columns)
|
|
{
|
|
if (gColumn.Description.Equals(jColumn.col3))
|
|
{
|
|
gColumn.Description = jColumn.col3;
|
|
gColumn.Width = jColumn.col5;
|
|
gColumn.Index = jColumn.col4;
|
|
if (jColumn.col6 != -1)
|
|
{
|
|
gColumn.VisibleState = jColumn.col6;
|
|
}
|
|
//gridColumnEntities.Add(gColumn);
|
|
break;
|
|
}
|
|
}
|
|
|
|
|
|
}
|
|
//Columns
|
|
//gridEntity.Columns = gridColumnEntities;
|
|
|
|
userSettingEntity.Xml = SaveUserSetting(gridEntity).OuterXml;
|
|
int iResult = userSettingDA.UpdateUserSetting(userSettingEntity);
|
|
|
|
}
|
|
else
|
|
{
|
|
if (jsonColumnGroupEntity != null)
|
|
{
|
|
userSettingEntity = new UserSettingEntity();
|
|
|
|
userSettingEntity.GID = Guid.NewGuid().ToString();
|
|
userSettingEntity.Name = "LogGridSetting";
|
|
userSettingEntity.Description = "系统日志Grid设置";
|
|
userSettingEntity.UserID = strUserID;
|
|
userSettingEntity.Type = 1;//type值为1表示Grid
|
|
string strRequestUrl = Request.Url.ToString();
|
|
string strUrl = strRequestUrl.Substring(0, strRequestUrl.LastIndexOf("/"));
|
|
string strPage = strRequestUrl.Substring(strRequestUrl.LastIndexOf("/") + 1, strRequestUrl.Length - strRequestUrl.LastIndexOf("/") - 1);
|
|
|
|
userSettingEntity.Url = strUrl;
|
|
userSettingEntity.Page = strPage;
|
|
userSettingEntity.CreateUser = strUserID;
|
|
|
|
|
|
GridEntity gridEntity = new GridEntity();
|
|
|
|
gridEntity.GID = userSettingEntity.GID;
|
|
gridEntity.UserID = strUserID;
|
|
gridEntity.GroupBy = "";
|
|
gridEntity.DefaultPrePageCount = 15;
|
|
gridEntity.PagePreCount = jsonColumnGroupEntity.ShowCount;
|
|
|
|
List<GridColumnEntity> gridColumnEntities = new List<GridColumnEntity>();
|
|
|
|
foreach (JsonColumnEntity column in jsonColumnGroupEntity.JsonColumnEntities)
|
|
{
|
|
GridColumnEntity gridColumnEntity = new GridColumnEntity();
|
|
|
|
if (column.col6 != -1)
|
|
{
|
|
gridColumnEntity.Name = column.col2;
|
|
gridColumnEntity.VisibleState = column.col6;
|
|
}
|
|
else
|
|
{
|
|
switch (column.col3.Trim())
|
|
{
|
|
case "日志名称":
|
|
gridColumnEntity.Name = "NAME";
|
|
break;
|
|
case "日志类型":
|
|
gridColumnEntity.Name = "LOGTYPE";
|
|
break;
|
|
case "日志记录时间":
|
|
gridColumnEntity.Name = "LOGTIME";
|
|
break;
|
|
case "日志内容":
|
|
gridColumnEntity.Name = "LOGCONTENT";
|
|
break;
|
|
case "操作人":
|
|
gridColumnEntity.Name = "USERNAME";
|
|
break;
|
|
}
|
|
gridColumnEntity.VisibleState = 0;
|
|
}
|
|
|
|
|
|
gridColumnEntity.Description = column.col3;
|
|
gridColumnEntity.Index = column.col4;
|
|
gridColumnEntity.Width = column.col5;
|
|
|
|
|
|
|
|
gridColumnEntities.Add(gridColumnEntity);
|
|
}
|
|
//Columns
|
|
gridEntity.Columns = gridColumnEntities;
|
|
|
|
userSettingEntity.Xml = SaveUserSetting(gridEntity).OuterXml;
|
|
|
|
int iResult = userSettingDA.InsertUserSetting(userSettingEntity);
|
|
|
|
dvSaveState.InnerHtml = iResult.ToString();
|
|
}
|
|
}
|
|
|
|
}
|
|
|
|
#region 获取列信息
|
|
/// <summary>
|
|
/// 获取列信息
|
|
/// </summary>
|
|
/// <param name="tempValue"></param>
|
|
/// <returns></returns>
|
|
private JsonColumnGroupEntity GetPostEntity(string tempValue)
|
|
{
|
|
JsonColumnGroupEntity tempColumnGroupEntity = new JsonColumnGroupEntity();
|
|
try
|
|
{
|
|
tempColumnGroupEntity = (JsonColumnGroupEntity)JSON.Instance.ToObject(tempValue);
|
|
}
|
|
catch (Exception error)
|
|
{
|
|
throw error;
|
|
}
|
|
return tempColumnGroupEntity;
|
|
}
|
|
#endregion
|
|
|
|
private XmlDocument SaveUserSetting(GridEntity gridEntity)
|
|
{
|
|
|
|
XmlDocument xmlDoc = new XmlDocument();
|
|
XmlElement root = xmlDoc.CreateElement("user-settings");
|
|
|
|
//xmlDoc.AppendChild(root);
|
|
|
|
XmlElement xGid = xmlDoc.CreateElement("gid");
|
|
xGid.InnerText = gridEntity.GID;
|
|
root.AppendChild(xGid);
|
|
|
|
XmlElement xUserID = xmlDoc.CreateElement("userid");
|
|
xUserID.InnerText = gridEntity.UserID;
|
|
root.AppendChild(xUserID);
|
|
|
|
XmlElement xCreateTime = xmlDoc.CreateElement("create-time");
|
|
xCreateTime.InnerText = gridEntity.CreateTime.ToString();
|
|
root.AppendChild(xCreateTime);
|
|
|
|
XmlElement xColumns = xmlDoc.CreateElement("columns");
|
|
|
|
foreach (GridColumnEntity column in gridEntity.Columns)
|
|
{
|
|
XmlElement xColumn = xmlDoc.CreateElement("column");
|
|
XmlElement nName = xmlDoc.CreateElement("name");
|
|
nName.InnerText = column.Name;
|
|
|
|
xColumn.AppendChild(nName);
|
|
|
|
XmlElement nDescription = xmlDoc.CreateElement("description");
|
|
nDescription.InnerText = column.Description;
|
|
|
|
xColumn.AppendChild(nDescription);
|
|
|
|
XmlElement nIndex = xmlDoc.CreateElement("index");
|
|
nIndex.InnerText = column.Index.ToString();
|
|
|
|
xColumn.AppendChild(nIndex);
|
|
|
|
XmlElement nWidth = xmlDoc.CreateElement("width");
|
|
nWidth.InnerText = column.Width.ToString();
|
|
|
|
xColumn.AppendChild(nWidth);
|
|
|
|
XmlElement nVisible = xmlDoc.CreateElement("visible");
|
|
nVisible.InnerText = column.VisibleState.ToString();
|
|
|
|
xColumn.AppendChild(nVisible);
|
|
|
|
xColumns.AppendChild(xColumn);
|
|
}
|
|
|
|
root.AppendChild(xColumns);
|
|
|
|
XmlElement xGroupBy = xmlDoc.CreateElement("group-by");
|
|
xGroupBy.InnerText = gridEntity.GroupBy;
|
|
|
|
root.AppendChild(xGroupBy);
|
|
|
|
XmlElement xPage = xmlDoc.CreateElement("page");
|
|
|
|
XmlElement nPageDefault = xmlDoc.CreateElement("page-default");
|
|
nPageDefault.InnerText = gridEntity.DefaultPrePageCount.ToString();
|
|
xPage.AppendChild(nPageDefault);
|
|
|
|
XmlElement nPagePre = xmlDoc.CreateElement("page-pre");
|
|
nPagePre.InnerText = gridEntity.PagePreCount.ToString();
|
|
xPage.AppendChild(nPagePre);
|
|
|
|
root.AppendChild(xPage);
|
|
|
|
xmlDoc.AppendChild(root);
|
|
return xmlDoc;
|
|
}
|
|
|
|
private GridEntity GetSettingXml(string strXml)
|
|
{
|
|
XmlDocument xmlSettingDoc = new XmlDocument();
|
|
GridEntity gridEntity = new GridEntity();
|
|
try
|
|
{
|
|
xmlSettingDoc.LoadXml(strXml);
|
|
|
|
gridEntity.GID = xmlSettingDoc.ChildNodes[0].ChildNodes[0].InnerText.Trim();
|
|
gridEntity.UserID = xmlSettingDoc.ChildNodes[0].ChildNodes[1].InnerText.Trim();
|
|
gridEntity.CreateTime = DateTime.Parse(xmlSettingDoc.ChildNodes[0].ChildNodes[2].InnerText.Trim());
|
|
|
|
IList<GridColumnEntity> columnsEntities = new List<GridColumnEntity>();
|
|
|
|
int iColCount = xmlSettingDoc.ChildNodes[0].ChildNodes[3].ChildNodes.Count;
|
|
|
|
for (int i = 0; i < iColCount; i++)
|
|
{
|
|
GridColumnEntity columnEntity = new GridColumnEntity();
|
|
//columnEntity.GID = xmlSettingDoc.ChildNodes[0].ChildNodes[3].ChildNodes[0].ToString();
|
|
columnEntity.Name = xmlSettingDoc.ChildNodes[0].ChildNodes[3].ChildNodes[i].ChildNodes[0].InnerText.Trim();
|
|
columnEntity.Description = xmlSettingDoc.ChildNodes[0].ChildNodes[3].ChildNodes[i].ChildNodes[1].InnerText.Trim();
|
|
columnEntity.Index = int.Parse(xmlSettingDoc.ChildNodes[0].ChildNodes[3].ChildNodes[i].ChildNodes[2].InnerText.Trim());
|
|
columnEntity.Width = int.Parse(xmlSettingDoc.ChildNodes[0].ChildNodes[3].ChildNodes[i].ChildNodes[3].InnerText.Trim());
|
|
|
|
columnsEntities.Add(columnEntity);
|
|
}
|
|
|
|
gridEntity.Columns = columnsEntities;
|
|
gridEntity.GroupBy = xmlSettingDoc.ChildNodes[0].ChildNodes[4].InnerText.Trim();
|
|
gridEntity.DefaultPrePageCount = int.Parse(xmlSettingDoc.ChildNodes[0].ChildNodes[5].ChildNodes[0].InnerText.Trim());
|
|
gridEntity.PagePreCount = int.Parse(xmlSettingDoc.ChildNodes[0].ChildNodes[5].ChildNodes[1].InnerText.Trim());
|
|
}
|
|
catch (Exception error)
|
|
{
|
|
throw (error);
|
|
}
|
|
|
|
return gridEntity;
|
|
}
|
|
|
|
public enum SqlName
|
|
{
|
|
NAME = 0,
|
|
LOGTYPE = 1,
|
|
LOGTIME = 2,
|
|
LOGCONTENT = 3,
|
|
USERNAME = 4
|
|
}
|
|
}
|
|
}
|
|
|