You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

183 lines
8.1 KiB
C#

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

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 System.Text;
using DSWeb.EntityDA;
using DSWeb.Models;
using System.Xml;
using System.Text.RegularExpressions;
namespace DSWeb.SeaiFee
{
public partial class WmsFeeCodeEdit : System.Web.UI.Page
{
private string strUserID;
private string strCompanyID;//公司GID
private string strShowName;//用户显示名
private string strDeptName;//部门名称
private string strfeeJson;
private string strSeaBSNO;
protected void Page_Load(object sender, EventArgs e)
{
if (Session["USERID"] != null)
{
strUserID = Session["USERID"].ToString();
}
if (Session["SHOWNAME"] != null)
{
strShowName = Session["SHOWNAME"].ToString();
}
if (Session["COMPANYID"] != null)
{
strCompanyID = Session["COMPANYID"].ToString();
}
if (Session["DEPTNAME"] != null)
{
strDeptName = Session["DEPTNAME"].ToString();
}
if (Request.QueryString["id"] != null)
{
strSeaBSNO = Request.QueryString["id"].ToString();
this.h_bsno.Value = strSeaBSNO;
}
strfeeJson = h_feecache.Value;
if (!strfeeJson.Equals("") && h_post.Value.Equals("1"))
{
SaveWmsFeeCodeAction();
}
}
#region 将页面post获取的仓储费用信息保存到wms_feecode中并返回操作结果
/// <summary>
/// 将页面post获取的仓储费用信息保存到wms_feecode中并返回操作结果
/// </summary>
private void SaveWmsFeeCodeAction()
{
IList<WmsFeeCodeEntity> WmsFeeCodeEntities = new List<WmsFeeCodeEntity>();
if (!strfeeJson.Trim().Equals(""))
{ //将应收费用信息从前台页面写入费用实体类feeEntities
WmsFeeCodeEntities = ResolveWmsFeeCodeJSON(strfeeJson.Trim(), WmsFeeCodeEntities);
this.h_feecache.Value = "";
}
WmsFeeCodeDA WmsFeeCodeDA = new WmsFeeCodeDA();
foreach (WmsFeeCodeEntity feecodeentity in WmsFeeCodeEntities)
{
string strwhere = String.Format(" GID='{0}' ", feecodeentity.GID);
int strExists = WmsFeeCodeDA.GetRecordCount(strwhere);
if (strExists == 1)
{
bool iRecvState = WmsFeeCodeDA.Update(feecodeentity);//rateDA.Add(rateEntities, feeProfitEntity, strSeaBSNO);
}
else if (strExists == 0)
{
bool iRecvState = WmsFeeCodeDA.Add(feecodeentity);//rateDA.Add(rateEntities, feeProfitEntity, strSeaBSNO);
}
}
this.h_post.Value = "";//请求状态清空
}
#endregion
#region 将页面post获取的费用信息读入到费用实体类ch_fee中
/// <summary>
/// 将页面post获取的费用信息读入到费用实体类ch_fee中
/// </summary>
/// <param name="tempJSON"></param>
/// <param name="tempFeeEntities"></param>
/// <returns>将页面post获取的费用信息读入到费用实体类ch_fee中</returns>
private IList<WmsFeeCodeEntity> ResolveWmsFeeCodeJSON(string tempJSON, IList<WmsFeeCodeEntity> tempWmsFeeCodeEntities)
{
string strFilter = "";
if (tempJSON.IndexOf("[") >= 0 && tempJSON.IndexOf("]") > 0)
{
strFilter = tempJSON.Substring(tempJSON.IndexOf("[") + 1, tempJSON.IndexOf("]") - tempJSON.IndexOf("[") - 1);
string[] strFees = strFilter.Split(new string[] { "},{" }, System.StringSplitOptions.RemoveEmptyEntries);
if (strFees.Length > 0)
{
for (int i = 0; i < strFees.Length; i++)
{
strFees[i] = strFees[i].ToString().Replace("{", "");
strFees[i] = strFees[i].ToString().Replace("}", "");
string[] strCell = strFees[i].Split(new char[] { ',' });
if (strCell.Length > 0)
{
WmsFeeCodeEntity WmsFeeCodeEntity = new WmsFeeCodeEntity();
for (int j = 0; j < strCell.Length; j++)
{
string[] strArg = strCell[j].Split(new char[] { ':' });
switch (strArg[0].Replace("\"", ""))
{
case "id":
WmsFeeCodeEntity.GID = strArg[1].ToString().Replace("\"", "");
break;
//case "type":
// string feetype=strArg[1].ToString().Replace("\"", "");
// if (feetype == "收费")
// {
// WmsFeeCodeEntity.FEETYPE=1;
// }
// else if (feetype == "付费")
// {
// WmsFeeCodeEntity.FEETYPE = 2;
// }
// break;
case "bsno":
WmsFeeCodeEntity.BSNO = strArg[1].ToString().Replace("\"", "");
break;
//case "fname":
// WmsFeeCodeEntity.FEENAME = strArg[1].ToString().Replace("\"", "");
// break;
//case "unit":
// WmsFeeCodeEntity.UNIT = strArg[1].ToString().Replace("\"", "");
// break;
case "price":
WmsFeeCodeEntity.UNITPRICE = decimal.Parse(strArg[1].ToString().Replace("\"", ""));
break;
//case "cur":
// WmsFeeCodeEntity.CURRENCY = strArg[1].ToString().Replace("\"", "");
// break;
//case "exchange":
// WmsFeeCodeEntity.EXCHANGERATE = decimal.Parse(strArg[1].ToString().Replace("\"", ""));
// break;
case "remark":
WmsFeeCodeEntity.REMARK = strArg[1].ToString().Replace("\"", "");
break;
default:
break;
}
}
//WmsFeeCodeEntity.BSNO = strSeaBSNO;
WmsFeeCodeEntity.FEETYPE = 1;
WmsFeeCodeEntity.FEENAME = "出库费";
WmsFeeCodeEntity.UNIT = "重量";
WmsFeeCodeEntity.CURRENCY = "RMB";
WmsFeeCodeEntity.EXCHANGERATE =1;
WmsFeeCodeEntity.CREATEUSER = this.strShowName;
WmsFeeCodeEntity.MODIFIEDUSER = this.strShowName;
tempWmsFeeCodeEntities.Add(WmsFeeCodeEntity);
}
}
}
}
return tempWmsFeeCodeEntities;
}
#endregion
}
}