using System;
using System.Collections;
using System.Collections.Generic;
using System.Configuration;
using System.Data;
using System.Linq;
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 System.Xml.Linq;
using DSWeb.EntityDA;
using DSWeb.Models;
using JsonHelper;
using System.Xml;
using System.IO;
namespace DSWeb.Shipping
{
public partial class ExchangesUnitContractList : System.Web.UI.Page
{
RangeDA RangeDA = new RangeDA();
//grid
private string strColumnVal;
private string strType = "15";//Grid模块号
public string strUserID;//用户GID
//gridEnd
protected void Page_Load(object sender, EventArgs e)
{
if (Session["USERID"] != null)
{
strUserID = Session["USERID"].ToString().Trim();
}
else
{
Server.Transfer("~/Error/FriendError.aspx");
return;
//strUserID = "";
}
//grid
if (!IsPostBack)
{
}
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 = "";
}
//
if (Request.QueryString["id"] != null && Request.QueryString["id"].ToString()!="")//if (Request.QueryString["id"] != null)
{
ViewState["GID"] = Request.QueryString["id"].ToString();
this.hd_LINKID.Value = ViewState["GID"].ToString().Trim();
}
else
{
this.imgAdd.Disabled = true;
this.imgEdit.Disabled = true;
this.imgDel.Disabled = true;
}
//gridEnd
//权限可视范围
string strV = RangeDA.GetVISIBLERANGE(strUserID.Trim(), "modExchangesUnit");
string strO = RangeDA.GetOPERATERANGE(strUserID.Trim(), "modExchangesUnit");
string alt = "";
if (strV.Trim().Equals("4"))
{
this.imgAdd.Disabled = true;
//this.imgEdit.Disabled = true;
this.imgDel.Disabled = true;
}
else if (strV.Trim().Equals("1"))
{
if (strO.Trim().Equals("1"))//公司
{
alt = RangeDA.GetUnitCompany(strUserID.Trim(), ViewState["GID"].ToString().Trim());
if (alt == "")
{
this.imgAdd.Disabled = true;
//this.imgEdit.Disabled = true;
this.imgDel.Disabled = true;
}
}
else if (strO.Trim().Equals("3"))//个人
{
alt = RangeDA.GetUnitPerson(strUserID.Trim(), ViewState["GID"].ToString().Trim());
if (alt == "")
{
this.imgAdd.Disabled = true;
//this.imgEdit.Disabled = true;
this.imgDel.Disabled = true;
}
}
}
else if (strV.Trim().Equals("3"))
{
if (strO.Trim().Equals("3"))//个人
{
alt = RangeDA.GetUnitPerson(strUserID.Trim(), ViewState["GID"].ToString().Trim());
if (alt == "")
{
this.imgAdd.Disabled = true;
//this.imgEdit.Disabled = true;
this.imgDel.Disabled = true;
}
}
else if (strO.Trim().Equals("4"))//无
{
this.imgAdd.Disabled = true;
this.imgEdit.Disabled = true;
this.imgDel.Disabled = true;
}
}
}
protected void btDel_Click(object sender, EventArgs e)
{
if (this.hid_id.Value.Trim() != "")
{
InfoClientContractDA InfoClientContractDA = new InfoClientContractDA();
int ialt = InfoClientContractDA.Delete(this.hid_id.Value);
if (ialt == 1)
{
setDel(this.hid_id.Value);
//Response.Write("");
//return;
}
else
{
Response.Write("");
return;
}
}
}
private string setDel(string sGids)
{
string strs = "";
string alt = "";
string[] itmes = sGids.Trim().Split(new string[] { "," }, StringSplitOptions.RemoveEmptyEntries);
for (int i = 0; i < itmes.Length; i++)
{
strs += " or LINKGID='" + itmes[i].ToString().Trim() + "'";
}
T_ALL_DA T_ALL_DA = new T_ALL_DA();
string sSQL = "select * from op_sailingdateurl where (1<0 " + strs + ") and TABLENAME='info_client_contract'";
DataSet ds = T_ALL_DA.GetAllSQL(sSQL);
if (ds != null)
{
string funame = "";
//
for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
{
funame = ds.Tables[0].Rows[i]["AFFIXNAME"].ToString().Trim();
string AbsPath = Server.MapPath("FTPFiles/");
string sPath = AbsPath + funame;
File.Delete(sPath);
}
}
//
sSQL = "delete from op_sailingdateurl where (1<0 " + strs + ") and TABLENAME='info_client_contract'";
bool bl = T_ALL_DA.GetExecuteSqlCommand(sSQL);
if (!bl)
{
alt = "操作出错!";
}
return alt;
}
#region Grid参数
private void SaveColumnSetting(string tempColumnVal)
{
JsonColumnGroupEntity jsonColumnGroupEntity = GetPostEntity(tempColumnVal);
List jsonColumnEntities = new List();
UserSettingDA userSettingDA = new UserSettingDA();
UserSettingEntity userSettingEntity = userSettingDA.GetUserSettingByUserIDType(strUserID, strType);
if (userSettingEntity.GID != null)
{
userSettingEntity.ModifiedUser = strUserID;
GridEntity gridEntity = null;
List gridColumnEntities = new List();
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 = "ExchangesUnitContractGridSetting";
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 gridColumnEntities = new List();
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 = "SHOWNAME";
break;
case "电话":
gridColumnEntity.Name = "TEL";
break;
case "邮箱":
gridColumnEntity.Name = "EMAIL";
break;
case "是否财务":
gridColumnEntity.Name = "ISFINANCIALSTAFF";
break;
case "是否操作":
gridColumnEntity.Name = "ISOPERATOR";
break;
case "是否销售":
gridColumnEntity.Name = "ISSALEMAN";
break;
case "是否其他":
gridColumnEntity.Name = "ISOTHER";
break;
case "是否停用":
gridColumnEntity.Name = "ISSTOP";
break;
case "更新人":
gridColumnEntity.Name = "MODIFIEDUSER";
break;
case "更新时间":
gridColumnEntity.Name = "MODIFIEDTIME";
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 获取列信息
///
/// 获取列信息
///
///
///
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 columnsEntities = new List();
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
}
#endregion
}
}