3696 lines
238 KiB
C#
3696 lines
238 KiB
C#
using System;
|
||
using System.Configuration;
|
||
using System.Collections.Generic;
|
||
using System.Data;
|
||
using System.Diagnostics;
|
||
using System.Text;
|
||
using System.Net;
|
||
using System.IO;
|
||
using System.Web;
|
||
using System.Net.Security;
|
||
using System.Security.Cryptography.X509Certificates;
|
||
using NJ = Newtonsoft.Json;
|
||
using NJL = Newtonsoft.Json.Linq;
|
||
using SuperMap.RealEstate.CoreFrameWork.Dictionary.Business;
|
||
using SuperMap.RealEstate.ExchangeData.Business;
|
||
using SuperMap.RealEstate.MemberShip.Storage.Business;
|
||
using SRSSB = SuperMap.RealEstate.Seller.Storage.Business;
|
||
using SRHSB = SuperMap.RealEstate.HighWay.SellData.Business;
|
||
using Business = SuperMap.RealEstate.HighWay.Storage.Business;
|
||
using Model = SuperMap.RealEstate.HighWay.Storage.Model;
|
||
using HZQR.Common;
|
||
using QRWL.Common;
|
||
|
||
namespace SuperMap.RealEstate.HighWay.Handler
|
||
{
|
||
/// <summary>
|
||
/// handler_ajax 的摘要说明
|
||
/// </summary>
|
||
public class handler_ajax : IHttpHandler
|
||
{
|
||
//AppID(应用ID)
|
||
public const string AppID = "wx85e69a5fb601be16";
|
||
//AppSecret(应用密钥)
|
||
public const string AppSecret = "dfcf7748e6c7027695cbec8ffedc04dc";
|
||
public const string charSet = "1,2,3,4,5,6,7,8,9";
|
||
protected string _serverpart_id = ConfigurationManager.AppSettings["UmiformCommodity"].ToString().Split('|')[0];
|
||
protected string _PROVINCE_CODE = ConfigurationManager.AppSettings["UmiformCommodity"].ToString().Split('|')[2];
|
||
protected string _CigaretteType = ConfigurationManager.AppSettings["CigaretteType"].ToString().Split('|')[0];
|
||
protected string _UrlAddress = ConfigurationManager.AppSettings["UrlAddress"].ToString();
|
||
protected string _FilePath = ConfigurationManager.AppSettings["FilePath"].ToString();
|
||
protected string _CopyPath = ConfigurationManager.AppSettings["CopyPath"].ToString();
|
||
|
||
public void ProcessRequest(HttpContext context)
|
||
{
|
||
DataTable _DataTable = null;
|
||
DataTable _DataTablePoint = null;
|
||
|
||
ServiceModel.Transaction _Transaction = new ServiceModel.Transaction();
|
||
string action_type = HttpContext.Current.Request.Form["action_type"];
|
||
string action_data = HttpContext.Current.Request.Form["action_data"];
|
||
string action_record = "";
|
||
List<ServerPartObject> _ListServerPartObject = null;
|
||
string reString = string.Empty;
|
||
string StrSql = string.Empty;
|
||
List<TreeItem> _ListTreeItem = null;
|
||
|
||
if (string.IsNullOrEmpty(action_type))
|
||
{
|
||
action_type = HttpContext.Current.Request.Params["action_type"];
|
||
action_data = HttpContext.Current.Request.Params["action_data"];
|
||
}
|
||
//耗时监听
|
||
Stopwatch sw = new Stopwatch();
|
||
sw.Start();
|
||
|
||
try
|
||
{
|
||
switch (action_type)
|
||
{
|
||
case "getServerPart":
|
||
reString = getServerPart(action_data);
|
||
break;
|
||
//获得对应的子类
|
||
case "getServerPartTypeByCode":
|
||
action_record = HttpContext.Current.Request.Form["action_record"];
|
||
reString = getServerPartTypeByCode(action_data, _Transaction, action_record);
|
||
break;
|
||
|
||
case "getServerPartByType":
|
||
reString = getServerPartByType(action_data, _Transaction);
|
||
break;
|
||
|
||
case "getServerPartByName":
|
||
reString = getServerPartByName(action_data, _Transaction);
|
||
break;
|
||
|
||
#region 获得服务区名称
|
||
case "getServerPartName":
|
||
try
|
||
{
|
||
bool HasFlag = false;
|
||
string ProwerString = "";
|
||
action_data = action_data.Replace("|", ",");
|
||
_ListServerPartObject = new List<ServerPartObject>();
|
||
_ListTreeItem = new List<TreeItem>();
|
||
|
||
|
||
foreach (FieldEnum _FieldEnum in (new FieldEnum(_Transaction)).FillCollection(
|
||
"where FieldEnum_Value in(" + action_data + ")"))
|
||
{
|
||
ProwerString += ProwerString == "" ? _FieldEnum.FieldEnum_ID.ToString() : "," + _FieldEnum.FieldEnum_ID;
|
||
}
|
||
|
||
foreach (Business.SERVERPART _SERVERPART in (new Business.SERVERPART(_Transaction)).FillCollection(
|
||
"where FieldEnum_ID in(" + ProwerString + ") order by SERVERPART_INDEX,SERVERPART_CODE"))
|
||
{
|
||
TreeItem _TreeItem = new TreeItem();
|
||
|
||
_TreeItem.id = _SERVERPART.SERVERPART_ID_Encrypt;
|
||
_TreeItem.pid = "0";
|
||
_TreeItem.open = false;
|
||
_TreeItem.name = _SERVERPART.SERVERPART_NAME;
|
||
_TreeItem.tag = _SERVERPART.SERVERPART_X.ToString() + "|" + _SERVERPART.SERVERPART_Y.ToString();
|
||
_TreeItem.icon = "/HighWay/Resources/v1_0/TreeView/css/zTreeStyle/img/diy/car.png";
|
||
if (_SERVERPART.SERVERPART_X == null)
|
||
continue;
|
||
if (_SERVERPART.SERVERPART_NAME == "高速驿网")
|
||
{
|
||
HasFlag = true;
|
||
}
|
||
_ListTreeItem.Add(_TreeItem);
|
||
}
|
||
|
||
if (!HasFlag)
|
||
{
|
||
//添加高速驿网
|
||
Business.SERVERPART _SERVERPART = new Business.SERVERPART(_Transaction);
|
||
_SERVERPART.AddSearchParameter("SERVERPART_CODE", "330001");
|
||
if (_SERVERPART.Search())
|
||
{
|
||
TreeItem _TreeItem = new TreeItem();
|
||
_TreeItem.id = _SERVERPART.SERVERPART_ID_Encrypt;
|
||
_TreeItem.pid = "0";
|
||
_TreeItem.open = false;
|
||
_TreeItem.name = _SERVERPART.SERVERPART_NAME;
|
||
_TreeItem.icon = "/HighWay/Resources/v1_0/TreeView/css/zTreeStyle/img/diy/car.png";
|
||
_TreeItem.tag = _SERVERPART.SERVERPART_X.ToString() + "|" + _SERVERPART.SERVERPART_Y.ToString();
|
||
_ListTreeItem.Add(_TreeItem);
|
||
}
|
||
}
|
||
|
||
reString = JsonHelper.ListToJson<TreeItem>(_ListTreeItem, "TreeItem");
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
#endregion
|
||
|
||
#region 获得销售数据
|
||
case "getSellDataObject":
|
||
try
|
||
{
|
||
List<SellDataObject> _ListSellDataObject = new List<SellDataObject>();
|
||
StrSql = "SELECT * FROM (SELECT COMMODITY_NAME,SELLCOUNT,SELLPRICE,FACTAMOUNT,SELLDATA_DATE " +
|
||
"FROM HIGHWAY_SELLDATA.T_SELLDATA WHERE SERVERPART_ID = " + action_data.ToDecrypt() +
|
||
" ORDER BY SELLDATA_DATE DESC) WHERE ROWNUM < 20 ";
|
||
DataTable dt = (new Business.COMMODITY(_Transaction)).ExecuteDataTable(StrSql);
|
||
foreach (DataRow _DataRow in dt.Rows)
|
||
{
|
||
SellDataObject _SellDataObject = new SellDataObject();
|
||
_SellDataObject.name = _DataRow["COMMODITY_NAME"].ToString();
|
||
_SellDataObject.price = _DataRow["SELLPRICE"].ToString();
|
||
_SellDataObject.commoditycount = _DataRow["SELLCOUNT"].ToString();
|
||
_SellDataObject.totalprice = _DataRow["FACTAMOUNT"].ToString();
|
||
_SellDataObject.selltime = DateTime.Parse(_DataRow["SELLDATA_DATE"].ToString()).ToLongTimeString();
|
||
//if (DateTime.Parse(dt.Rows[0]["SELLDATA_DATE"].ToString()) < DateTime.Now.AddMinutes(-20))
|
||
//{
|
||
// _SellDataObject.selltime = DateTime.Parse(_DataRow["SELLDATA_DATE"].ToString()).AddMinutes(
|
||
// (DateTime.Now - DateTime.Parse(dt.Rows[0]["SELLDATA_DATE"].ToString())).TotalMinutes).ToLongTimeString();
|
||
//}
|
||
_ListSellDataObject.Add(_SellDataObject);
|
||
}
|
||
reString = JsonHelper.ListToJson<SellDataObject>(_ListSellDataObject, "SellDataObject");
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
#endregion
|
||
|
||
#region 获取实时销售信息
|
||
case "GetCurSellData":
|
||
try
|
||
{
|
||
List<SellDataObject> _ListSellDataObject = new List<SellDataObject>();
|
||
StrSql = "SELECT * FROM HIGHWAY_STORAGE.V_CONNECTPOINT WHERE SERVERPART_ID = " + action_data.ToDecrypt() +
|
||
" AND CONTENT LIKE '%|%|%|%' ORDER BY CONNECT_DATE DESC";
|
||
DataTable dt = (new Business.COMMODITY(_Transaction)).ExecuteDataTable(StrSql);
|
||
foreach (DataRow _DataRow in dt.Rows)
|
||
{
|
||
if (_DataRow["CONTENT"].ToString().Split('|').Length == 5)
|
||
{
|
||
//解析对应的商品 1.最后销售日期 + 销售时间 + 销售商品 + 销售金额 + 版本号
|
||
//商品 + 销售时间 + 金额
|
||
string SellString = "";
|
||
// 7 最后销售商品
|
||
string CodeString = "";
|
||
//foreach (string str in _DataRow["CONTENT"].ToString().Split('|')[2].Split(','))
|
||
//{
|
||
// CodeString += (CodeString == "" ? "" : ",") + "'" + str + "'";
|
||
//}
|
||
CodeString = "'" + _DataRow["CONTENT"].ToString().Split('|')[2].Replace(",", "','") + "'";
|
||
foreach (Business.COMMODITY _COMMODITY in new Business.COMMODITY(_Transaction).FillCollection(
|
||
"WHERE COMMODITY_CODE IN(" + CodeString + ")"))
|
||
{
|
||
if (SellString.Length > 20)
|
||
{
|
||
SellString = SellString.Substring(0, 20) + "...";
|
||
break;
|
||
}
|
||
SellString += (SellString == "" ? "" : ",") + _COMMODITY.COMMODITY_NAME;
|
||
}
|
||
// 9 最后销售金额
|
||
reString = "金额:" + _DataRow["CONTENT"].ToString().Split('|')[3] + "元," + SellString;
|
||
// 8 最后销售时间
|
||
//reString += _DataRow["CONTENT"].ToString().Split('|')[1].Split(' ')[1] + ",";
|
||
//reString += (SellString.Length > 20 ? SellString.Substring(0, 20) + "..." : SellString);
|
||
SellDataObject _SellDataObject = new SellDataObject();
|
||
_SellDataObject.name = reString;
|
||
_SellDataObject.selltime = _DataRow["CONNECT_DATE"].ToString();
|
||
_ListSellDataObject.Add(_SellDataObject);
|
||
break;
|
||
}
|
||
else if (_DataRow["CONTENT"].ToString().Split('|').Length == 6)
|
||
{
|
||
string SellString = "";
|
||
// 7 最后销售商品
|
||
string CodeString = "";
|
||
//foreach (string str in _DataRow["CONTENT"].ToString().Split('|')[2].Split(','))
|
||
//{
|
||
// CodeString += (CodeString == "" ? "" : ",") + "'" + str + "'";
|
||
//}
|
||
CodeString = "'" + _DataRow["CONTENT"].ToString().Split('|')[2].Replace(",", "','") + "'";
|
||
int i = 0;
|
||
foreach (Business.COMMODITY _COMMODITY in new Business.COMMODITY(_Transaction).FillCollection(
|
||
"WHERE COMMODITY_CODE IN(" + CodeString + ")"))
|
||
{
|
||
if (SellString.Length > 20)
|
||
{
|
||
SellString = SellString.Substring(0, 20) + "...";
|
||
break;
|
||
}
|
||
SellString += (SellString == "" ? "" : ",") + _COMMODITY.COMMODITY_NAME +
|
||
_DataRow["CONTENT"].ToString().Split('|')[4].Split(',')[i];
|
||
i++;
|
||
}
|
||
// 9 最后销售金额
|
||
reString = "金额:" + _DataRow["CONTENT"].ToString().Split('|')[3] + "元," + SellString;
|
||
// 8 最后销售时间
|
||
//reString += _DataRow["CONTENT"].ToString().Split('|')[1].Split(' ')[1] + ",";
|
||
//reString += (SellString.Length > 20 ? SellString.Substring(0, 20) + "..." : SellString);
|
||
SellDataObject _SellDataObject = new SellDataObject();
|
||
_SellDataObject.name = reString;
|
||
_SellDataObject.selltime = _DataRow["CONNECT_DATE"].ToString();
|
||
_ListSellDataObject.Add(_SellDataObject);
|
||
break;
|
||
}
|
||
}
|
||
reString = JsonHelper.ListToJson<SellDataObject>(_ListSellDataObject, "SellDataObject");
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
|
||
case "GetCurTotalSellData":
|
||
try
|
||
{
|
||
List<SellDataObject> _ListSellDataObject = new List<SellDataObject>();
|
||
StrSql = @"SELECT * FROM(SELECT SERVERPART_ID,SERVERPART_NAME,CONNECT_DATE,SHOPNAME,SHOPCODE,CONTENT,
|
||
PROVINCE_CODE,ROW_NUMBER()OVER(PARTITION BY SERVERPART_ID ORDER BY CONNECT_DATE DESC)COLNUM
|
||
FROM HIGHWAY_STORAGE.V_CONNECTPOINT WHERE CONTENT LIKE '%|%|%|%') WHERE COLNUM = 1";
|
||
DataTable dt = (new Business.COMMODITY(_Transaction)).ExecuteDataTable(StrSql);
|
||
foreach (DataRow _DataRow in dt.Rows)
|
||
{
|
||
if (_DataRow["CONTENT"].ToString().Split('|').Length == 5)
|
||
{
|
||
//解析对应的商品 1.最后销售日期 + 销售时间 + 销售商品 + 销售金额 + 版本号
|
||
string SellString = "";
|
||
// 7 最后销售商品
|
||
//string CodeString = "";
|
||
//CodeString = "'" + _DataRow["CONTENT"].ToString().Split('|')[2].Replace(",", "','") + "'";
|
||
foreach (Business.COMMODITY _COMMODITY in new Business.COMMODITY(_Transaction).FillCollection(
|
||
"WHERE COMMODITY_CODE IN('" + _DataRow["CONTENT"].ToString().Split('|')[2].Replace(",", "','") +
|
||
"' AND PROVINCE_CODE = '" + _DataRow["PROVINCE_CODE"].ToString() + "')"))
|
||
{
|
||
if (SellString.Length > 20)
|
||
{
|
||
SellString = SellString + "...";
|
||
break;
|
||
}
|
||
SellString += (SellString == "" ? "" : ",") + _COMMODITY.COMMODITY_NAME;
|
||
}
|
||
// 9 最后销售金额
|
||
reString = "当前交易:" + _DataRow["CONTENT"].ToString().Split('|')[3] + "元," + SellString;
|
||
SellDataObject _SellDataObject = new SellDataObject();
|
||
_SellDataObject.name = _DataRow["SERVERPART_ID"].ToEncrypt();
|
||
_SellDataObject.totalprice = reString;
|
||
_SellDataObject.selltime = _DataRow["CONNECT_DATE"].ToString();
|
||
_ListSellDataObject.Add(_SellDataObject);
|
||
}
|
||
else if (_DataRow["CONTENT"].ToString().Split('|').Length == 6)
|
||
{
|
||
string SellString = "";
|
||
// 7 最后销售商品
|
||
string CodeString = "";
|
||
//CodeString = "'" + _DataRow["CONTENT"].ToString().Split('|')[2].Replace(",", "','") + "'";
|
||
//int i = 0;
|
||
//foreach (Business.COMMODITY _COMMODITY in new Business.COMMODITY(_Transaction).FillCollection(
|
||
// "WHERE COMMODITY_CODE IN('" + _DataRow["CONTENT"].ToString().Split('|')[2].Replace(",", "','") + "')"))
|
||
//{
|
||
// if (SellString.Length > 20)
|
||
// {
|
||
// SellString = SellString + "...";
|
||
// break;
|
||
// }
|
||
// CodeString = _DataRow["CONTENT"].ToString().Split('|')[4].Split(',')[i];
|
||
// SellString += (SellString == "" ? "" : ",") + _COMMODITY.COMMODITY_NAME +
|
||
// "(" + double.Parse(CodeString.Split('*')[0].Split('(')[1]) + "*" +
|
||
// double.Parse(CodeString.Split('*')[1].Split(')')[0]) + ")";
|
||
// i++;
|
||
//}
|
||
CodeString = _DataRow["CONTENT"].ToString().Split('|')[2];
|
||
for (int i = 0; i < CodeString.Split(',').Length; i++)
|
||
{
|
||
if (SellString.Length > 20)
|
||
{
|
||
SellString = SellString + "...";
|
||
break;
|
||
}
|
||
Business.COMMODITY _COMMODITY = new Business.COMMODITY(_Transaction);
|
||
_COMMODITY.AddSearchParameter("COMMODITY_CODE", CodeString.Split(',')[i]);
|
||
_COMMODITY.AddSearchParameter("PROVINCE_CODE", _DataRow["PROVINCE_CODE"].ToString());
|
||
if (_COMMODITY.Search())
|
||
{
|
||
SellString += (SellString == "" ? "" : ",") + _COMMODITY.COMMODITY_NAME +
|
||
"(" + _DataRow["CONTENT"].ToString().Split('|')[4].Split(',')[i] + ")";
|
||
}
|
||
}
|
||
// 9 最后销售金额
|
||
reString = "当前交易:" + _DataRow["CONTENT"].ToString().Split('|')[3] + "元," + SellString;
|
||
SellDataObject _SellDataObject = new SellDataObject();
|
||
_SellDataObject.ServerpartName = _DataRow["SERVERPART_NAME"].ToString();
|
||
_SellDataObject.price = _DataRow["CONTENT"].ToString().Split('|')[3];
|
||
_SellDataObject.name = _DataRow["SERVERPART_ID"].ToEncrypt();
|
||
_SellDataObject.totalprice = reString;
|
||
_SellDataObject.selltime = _DataRow["CONNECT_DATE"].ToString();
|
||
_ListSellDataObject.Add(_SellDataObject);
|
||
}
|
||
}
|
||
reString = JsonHelper.ListToJson<SellDataObject>(_ListSellDataObject, "SellDataObject");
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
#endregion
|
||
|
||
#region 获取实时稽核信息
|
||
case "GetCurCheckInfo":
|
||
try
|
||
{
|
||
List<CheckInfoObject> _ListCheckInfoObject = new List<CheckInfoObject>();
|
||
StrSql = "SELECT * FROM HIGHWAY_STORAGE.V_CONNECTPOINT WHERE SERVERPARTSHOP_ID = " + action_data +
|
||
" AND CONTENT LIKE '%|%|%|%' ORDER BY CONNECT_DATE DESC";
|
||
_DataTable = (new CONFIGURATION(_Transaction)).ExecuteDataTable(StrSql);
|
||
foreach (DataRow _DataRow in _DataTable.Rows)
|
||
{
|
||
if (_DataRow["CONTENT"].ToString().Split('|').Length == 5)
|
||
{
|
||
CheckInfoObject _CheckInfoObject = new CheckInfoObject();
|
||
_CheckInfoObject.SHOPNAME = _DataRow["SHOPNAME"].ToString();
|
||
_CheckInfoObject.CURRCOMMCOUNT = _DataRow["CURRCOMMCOUNT"].ToString();
|
||
_CheckInfoObject.CONNECT_DATE = _DataRow["CONNECT_DATE"].ToString();
|
||
_CheckInfoObject.CURRAMOUNT = _DataRow["CURRAMOUNT"].ToString();
|
||
_CheckInfoObject.CURRSELLCOUNT = _DataRow["CURRSELLCOUNT"].ToString();
|
||
_CheckInfoObject.CURRPRESON = _DataRow["CURRPRESON"].ToString();
|
||
_CheckInfoObject.MACHINENAME = _DataRow["MACHINENAME"].ToString();
|
||
_CheckInfoObject.CONNECT_IP = _DataRow["CONNECT_IP"].ToString();
|
||
//_CheckInfoObject.CONTENT = _DataRow["CONTENT"].ToString();
|
||
//解析对应的商品 1.最后销售日期 + 销售时间 + 销售商品 + 销售金额 + 版本号
|
||
//商品 + 销售时间 + 金额
|
||
string SellString = "";
|
||
// 7 最后销售商品
|
||
string CodeString = "";
|
||
CodeString = "'" + _DataRow["CONTENT"].ToString().Split('|')[2].Replace(",", "','") + "'";
|
||
foreach (Business.COMMODITY _COMMODITY in new Business.COMMODITY(_Transaction).FillCollection(
|
||
"WHERE COMMODITY_CODE IN(" + CodeString + ") AND PROVINCE_CODE = " + _DataRow["PROVINCE_CODE"].ToString()))
|
||
{
|
||
SellString += (SellString == "" ? "" : ",") + _COMMODITY.COMMODITY_NAME;
|
||
}
|
||
// 9 最后销售金额
|
||
_CheckInfoObject.CONTENT = "金额:" + _DataRow["CONTENT"].ToString().Split('|')[3] + "元," + SellString;
|
||
_CheckInfoObject.VERSION_NUMBER = _DataRow["CONTENT"].ToString().Split('|')[4];
|
||
// 8 最后销售时间
|
||
//reString += _DataRow["CONTENT"].ToString().Split('|')[1].Split(' ')[1] + ",";
|
||
//reString += (SellString.Length > 20 ? SellString.Substring(0, 20) + "..." : SellString);
|
||
_ListCheckInfoObject.Add(_CheckInfoObject);
|
||
//break;
|
||
}
|
||
else if (_DataRow["CONTENT"].ToString().Split('|').Length == 6)
|
||
{
|
||
string SellString = "";
|
||
// 7 最后销售商品
|
||
string CodeString = "";
|
||
CheckInfoObject _CheckInfoObject = new CheckInfoObject();
|
||
_CheckInfoObject.SHOPNAME = _DataRow["SHOPNAME"].ToString();
|
||
_CheckInfoObject.CURRCOMMCOUNT = _DataRow["CURRCOMMCOUNT"].ToString();
|
||
_CheckInfoObject.CONNECT_DATE = _DataRow["CONNECT_DATE"].ToString();
|
||
_CheckInfoObject.CURRAMOUNT = _DataRow["CURRAMOUNT"].ToString();
|
||
_CheckInfoObject.CURRSELLCOUNT = _DataRow["CURRSELLCOUNT"].ToString();
|
||
_CheckInfoObject.CURRPRESON = _DataRow["CURRPRESON"].ToString();
|
||
_CheckInfoObject.MACHINENAME = _DataRow["MACHINENAME"].ToString();
|
||
_CheckInfoObject.CONNECT_IP = _DataRow["CONNECT_IP"].ToString();
|
||
CodeString = "'" + _DataRow["CONTENT"].ToString().Split('|')[2].Replace(",", "','") + "'";
|
||
int i = 0;
|
||
foreach (Business.COMMODITY _COMMODITY in new Business.COMMODITY(_Transaction).FillCollection(
|
||
"WHERE COMMODITY_CODE IN(" + CodeString + ") AND PROVINCE_CODE = " + _DataRow["PROVINCE_CODE"].ToString()))
|
||
{
|
||
SellString += (SellString == "" ? "" : ",") + _COMMODITY.COMMODITY_NAME +
|
||
_DataRow["CONTENT"].ToString().Split('|')[4].Split(',')[i];
|
||
i++;
|
||
}
|
||
// 9 最后销售金额
|
||
_CheckInfoObject.CONTENT = "金额:" + _DataRow["CONTENT"].ToString().Split('|')[3] + "元," + SellString;
|
||
_CheckInfoObject.VERSION_NUMBER = _DataRow["CONTENT"].ToString().Split('|')[5];
|
||
// 8 最后销售时间
|
||
//reString += _DataRow["CONTENT"].ToString().Split('|')[1].Split(' ')[1] + ",";
|
||
//reString += (SellString.Length > 20 ? SellString.Substring(0, 20) + "..." : SellString);
|
||
_ListCheckInfoObject.Add(_CheckInfoObject);
|
||
//break;
|
||
}
|
||
}
|
||
reString = JsonHelper.ListToJson<CheckInfoObject>(_ListCheckInfoObject, "CheckInfoObject");
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
|
||
case "GetCurCheckInfoByServerpart":
|
||
try
|
||
{
|
||
List<CheckInfoObject> _ListCheckInfoObject = new List<CheckInfoObject>();
|
||
StrSql = "SELECT * FROM HIGHWAY_STORAGE.V_CONNECTPOINT WHERE SERVERPART_ID = " + action_data +
|
||
" AND CONTENT LIKE '%|%|%|%' ORDER BY CONNECT_DATE DESC";
|
||
_DataTable = (new CONFIGURATION(_Transaction)).ExecuteDataTable(StrSql);
|
||
foreach (DataRow _DataRow in _DataTable.Rows)
|
||
{
|
||
if (_DataRow["CONTENT"].ToString().Split('|').Length == 5)
|
||
{
|
||
CheckInfoObject _CheckInfoObject = new CheckInfoObject();
|
||
_CheckInfoObject.SHOPNAME = _DataRow["SHOPNAME"].ToString();
|
||
_CheckInfoObject.CURRCOMMCOUNT = _DataRow["CURRCOMMCOUNT"].ToString();
|
||
_CheckInfoObject.CONNECT_DATE = _DataRow["CONNECT_DATE"].ToString();
|
||
_CheckInfoObject.CURRAMOUNT = _DataRow["CURRAMOUNT"].ToString();
|
||
_CheckInfoObject.CURRSELLCOUNT = _DataRow["CURRSELLCOUNT"].ToString();
|
||
_CheckInfoObject.CURRPRESON = _DataRow["CURRPRESON"].ToString();
|
||
_CheckInfoObject.MACHINENAME = _DataRow["MACHINENAME"].ToString();
|
||
_CheckInfoObject.CONNECT_IP = _DataRow["CONNECT_IP"].ToString();
|
||
//_CheckInfoObject.CONTENT = _DataRow["CONTENT"].ToString();
|
||
//解析对应的商品 1.最后销售日期 + 销售时间 + 销售商品 + 销售金额 + 版本号
|
||
//商品 + 销售时间 + 金额
|
||
string SellString = "";
|
||
// 7 最后销售商品
|
||
string CodeString = "";
|
||
CodeString = "'" + _DataRow["CONTENT"].ToString().Split('|')[2].Replace(",", "','") + "'";
|
||
foreach (Business.COMMODITY _COMMODITY in new Business.COMMODITY(_Transaction).FillCollection(
|
||
"WHERE COMMODITY_CODE IN(" + CodeString + ") AND PROVINCE_CODE = " + _DataRow["PROVINCE_CODE"].ToString()))
|
||
{
|
||
SellString += (SellString == "" ? "" : ",") + _COMMODITY.COMMODITY_NAME;
|
||
}
|
||
// 9 最后销售金额
|
||
_CheckInfoObject.CONTENT = "金额:" + _DataRow["CONTENT"].ToString().Split('|')[3] + "元," + SellString;
|
||
_CheckInfoObject.VERSION_NUMBER = _DataRow["CONTENT"].ToString().Split('|')[4];
|
||
// 8 最后销售时间
|
||
//reString += _DataRow["CONTENT"].ToString().Split('|')[1].Split(' ')[1] + ",";
|
||
//reString += (SellString.Length > 20 ? SellString.Substring(0, 20) + "..." : SellString);
|
||
_ListCheckInfoObject.Add(_CheckInfoObject);
|
||
}
|
||
else if (_DataRow["CONTENT"].ToString().Split('|').Length == 6)
|
||
{
|
||
string SellString = "";
|
||
// 7 最后销售商品
|
||
string CodeString = "";
|
||
CheckInfoObject _CheckInfoObject = new CheckInfoObject();
|
||
_CheckInfoObject.SHOPNAME = _DataRow["SHOPNAME"].ToString();
|
||
_CheckInfoObject.CURRCOMMCOUNT = _DataRow["CURRCOMMCOUNT"].ToString();
|
||
_CheckInfoObject.CONNECT_DATE = _DataRow["CONNECT_DATE"].ToString();
|
||
_CheckInfoObject.CURRAMOUNT = _DataRow["CURRAMOUNT"].ToString();
|
||
_CheckInfoObject.CURRSELLCOUNT = _DataRow["CURRSELLCOUNT"].ToString();
|
||
_CheckInfoObject.CURRPRESON = _DataRow["CURRPRESON"].ToString();
|
||
_CheckInfoObject.MACHINENAME = _DataRow["MACHINENAME"].ToString();
|
||
_CheckInfoObject.CONNECT_IP = _DataRow["CONNECT_IP"].ToString();
|
||
CodeString = "'" + _DataRow["CONTENT"].ToString().Split('|')[2].Replace(",", "','") + "'";
|
||
int i = 0;
|
||
foreach (Business.COMMODITY _COMMODITY in new Business.COMMODITY(_Transaction).FillCollection(
|
||
"WHERE COMMODITY_CODE IN(" + CodeString + ") AND PROVINCE_CODE = " + _DataRow["PROVINCE_CODE"].ToString()))
|
||
{
|
||
SellString += (SellString == "" ? "" : ",") + _COMMODITY.COMMODITY_NAME +
|
||
_DataRow["CONTENT"].ToString().Split('|')[4].Split(',')[i];
|
||
i++;
|
||
}
|
||
// 9 最后销售金额
|
||
_CheckInfoObject.CONTENT = "金额:" + _DataRow["CONTENT"].ToString().Split('|')[3] + "元," + SellString;
|
||
_CheckInfoObject.VERSION_NUMBER = _DataRow["CONTENT"].ToString().Split('|')[5];
|
||
// 8 最后销售时间
|
||
//reString += _DataRow["CONTENT"].ToString().Split('|')[1].Split(' ')[1] + ",";
|
||
//reString += (SellString.Length > 20 ? SellString.Substring(0, 20) + "..." : SellString);
|
||
_ListCheckInfoObject.Add(_CheckInfoObject);
|
||
}
|
||
}
|
||
reString = JsonHelper.ListToJson<CheckInfoObject>(_ListCheckInfoObject, "CheckInfoObject");
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
#endregion
|
||
|
||
#region 获取服务区信息
|
||
case "getTotalServerPart":
|
||
try
|
||
{
|
||
List<Business.SERVERPART> _SERVERPARTList = new List<Business.SERVERPART>();
|
||
foreach (Business.SERVERPART _SERVERPART in new Business.SERVERPART(_Transaction).FillCollection(
|
||
@"WHERE SERVERPART_ID IN (SELECT SERVERPART_ID FROM HIGHWAY_STORAGE.T_SERVERPARTSHOP WHERE ISVALID = 1)
|
||
ORDER BY SERVERPART_INDEX,SERVERPART_CODE"))
|
||
{
|
||
_SERVERPART.SERVERPART_DESC = null;
|
||
_SERVERPART.SERVERPART_INFO = null;
|
||
_SERVERPARTList.Add(_SERVERPART);
|
||
}
|
||
|
||
reString = JsonHelper.ListToJson<Business.SERVERPART>(_SERVERPARTList, "SERVERPARTObject");
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
|
||
case "getTotalServerPartWidthRegion":
|
||
try
|
||
{
|
||
_DataTable = (new Business.COMMODITY(_Transaction).ExecuteDataTable(@"SELECT REGION_ID,
|
||
TYPE_NAME,SERVERPART_ID,SERVERPART_NAME,SERVERPART_ADDRESS,SERVERPART_INDEX,
|
||
SERVERPART_CODE,PROVINCE_CODE,REGIONTYPE_ID,STATISTIC_TYPE,SERVERPARTTYPE_ID
|
||
FROM HIGHWAY_STORAGE.V_REGIONSERVERPART"));
|
||
|
||
reString = JsonHelper.DataTableToJson(_DataTable, "ServerPartRegion");
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
#endregion
|
||
|
||
#region 获取门店信息
|
||
case "getServerPartShop":
|
||
try
|
||
{
|
||
DataTable _SERVERPARTSHOPList = new Business.SERVERPARTSHOP(_Transaction).FillDataTable(
|
||
"WHERE ISVALID = 1 AND SERVERPART_ID = " + action_data +
|
||
" ORDER BY SERVERPART_ID,SHOPREGION,SHOPTRADE,SHOPCODE");
|
||
|
||
reString = JsonHelper.DataTableToJson(_SERVERPARTSHOPList, "ServerPartShopObject");
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
#endregion
|
||
|
||
#region 获取移动支付信息
|
||
case "getMobilePay":
|
||
try
|
||
{
|
||
action_record = HttpContext.Current.Request.Params["action_record"];
|
||
_DataTable = (new Business.SERVERPART(_Transaction).ExecuteDataTable(
|
||
"SELECT * FROM HIGHWAY_SELLDATA.V_MOBILEPAYMENT WHERE 1 = 1" + (string.IsNullOrEmpty(action_data) ?
|
||
"" : " AND SERVERPART_ID = " + action_data) + (string.IsNullOrEmpty(action_record) ?
|
||
"" : " AND SELLDATA_DATE >= TO_DATE('" + action_record.Split(',')[0] +
|
||
"','YYYY/MM/DD') AND SELLDATA_DATE < TO_DATE('" + action_record.Split(',')[1] +
|
||
"','YYYY/MM/DD') + 1") + " ORDER BY SERVERPARTCODE,SHOPCODE"));
|
||
reString = JsonHelper.DataTableToJson(_DataTable, "MobilePay");
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
|
||
case "getTotalMobilePay":
|
||
try
|
||
{
|
||
action_record = HttpContext.Current.Request.Params["action_record"];
|
||
_DataTable = (new Business.SERVERPART(_Transaction).ExecuteDataTable(
|
||
@"SELECT TRUNC(SELLDATA_DATE) AS SELLDATA_DATE,SUM(SELLCOUNT) AS SELLCOUNT,
|
||
SUM(OFFPRICE) AS OFFPRICE,SUM(FACTAMOUNT) AS FACTAMOUNT,
|
||
SUM(TICKETBILL) AS TICKETBILL,SUM(OTHERPAY) AS OTHERPAY,COUNT(1) AS ROWCOUNT
|
||
FROM HIGHWAY_SELLDATA.V_MOBILEPAYMENT WHERE 1 = 1" + (string.IsNullOrEmpty(action_data) ?
|
||
"" : " AND SERVERPART_ID = " + action_data) + (string.IsNullOrEmpty(action_record) ?
|
||
"" : " AND SELLDATA_DATE >= TO_DATE('" + action_record.Split(',')[0] +
|
||
"','YYYY/MM/DD') AND SELLDATA_DATE < TO_DATE('" + action_record.Split(',')[1] +
|
||
"','YYYY/MM/DD') + 1") + " GROUP BY TRUNC(SELLDATA_DATE) ORDER BY SELLDATA_DATE"));
|
||
reString = JsonHelper.DataTableToJson(_DataTable, "MobilePay");
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
|
||
case "getTotalMobilePayByServerpart":
|
||
try
|
||
{
|
||
action_record = HttpContext.Current.Request.Params["action_record"];
|
||
if (string.IsNullOrEmpty(action_data))
|
||
{
|
||
_DataTable = (new Business.SERVERPART(_Transaction).ExecuteDataTable(
|
||
@"SELECT SERVERPART_ID,SERVERPARTCODE,SERVERPART_NAME,PROVINCE_CODE,
|
||
SUM(SELLCOUNT) AS SELLCOUNT,SUM(OFFPRICE) AS OFFPRICE,SUM(FACTAMOUNT) AS FACTAMOUNT,
|
||
SUM(TICKETBILL) AS TICKETBILL,SUM(OTHERPAY) AS OTHERPAY,COUNT(1) AS ROWCOUNT
|
||
FROM HIGHWAY_SELLDATA.V_MOBILEPAYMENT" + (string.IsNullOrEmpty(action_record) ?
|
||
"" : " WHERE SELLDATA_DATE >= TO_DATE('" + action_record.Split(',')[0] +
|
||
"','YYYY/MM/DD') AND SELLDATA_DATE < TO_DATE('" + action_record.Split(',')[1] +
|
||
"','YYYY/MM/DD') + 1") + " GROUP BY SERVERPART_ID,SERVERPARTCODE,SERVERPART_NAME,PROVINCE_CODE"));
|
||
}
|
||
else
|
||
{
|
||
_DataTable = (new Business.SERVERPART(_Transaction).ExecuteDataTable(
|
||
@"SELECT SERVERPART_ID,SERVERPARTCODE,SERVERPART_NAME,PROVINCE_CODE,SHOPCODE,SHOPNAME,
|
||
SUM(SELLCOUNT) AS SELLCOUNT,SUM(OFFPRICE) AS OFFPRICE,SUM(FACTAMOUNT) AS FACTAMOUNT,
|
||
SUM(TICKETBILL) AS TICKETBILL,SUM(OTHERPAY) AS OTHERPAY,COUNT(1) AS ROWCOUNT
|
||
FROM HIGHWAY_SELLDATA.V_MOBILEPAYMENT WHERE SERVERPART_ID = " + action_data +
|
||
(string.IsNullOrEmpty(action_record) ? "" : " AND SELLDATA_DATE >= TO_DATE('" +
|
||
action_record.Split(',')[0] + "','YYYY/MM/DD') AND SELLDATA_DATE < TO_DATE('" +
|
||
action_record.Split(',')[1] + "','YYYY/MM/DD') + 1") +
|
||
" GROUP BY SERVERPART_ID,SERVERPARTCODE,SERVERPART_NAME,PROVINCE_CODE,SHOPCODE,SHOPNAME"));
|
||
}
|
||
reString = JsonHelper.DataTableToJson(_DataTable, "MobilePay");
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
#endregion
|
||
|
||
#region 根据单个服务器或者对应的百度地图解析
|
||
case "getPointPos":
|
||
_DataTable = new DataTable();
|
||
_DataTable.Columns.Add("MAPINFO");
|
||
_DataTable.Columns.Add("MAP_ADDRESS");
|
||
_DataTable.Columns.Add("MAP_TEL");
|
||
_DataTable.Columns.Add("MAP_OBJECTCODE");
|
||
_DataTable.Columns.Add("MAPX");
|
||
_DataTable.Columns.Add("MAPY");
|
||
try
|
||
{
|
||
//获得服务区数据
|
||
Storage.Business.SERVERPART _SERVERPART = new Storage.Business.SERVERPART(_Transaction);
|
||
_SERVERPART.AddSearchParameter("SERVERPART_ID", action_data.ToDecrypt());
|
||
if (_SERVERPART.Search())
|
||
{
|
||
//检测对应的服务区图片
|
||
//string imagePath = "SELECT A.IMAGE_PATH FROM T_IMAGE A,T_SERVERPARTTYPE B WHERE B.STATIC_TYPE = A.IMAGE_ID AND "
|
||
DataRow _DataRow = _DataTable.NewRow();
|
||
_DataRow["MAPINFO"] = _SERVERPART.SERVERPART_NAME + " " + _SERVERPART.SERVERPART_INFO;
|
||
_DataRow["MAP_ADDRESS"] = _SERVERPART.SERVERPART_ADDRESS;
|
||
_DataRow["MAP_TEL"] = _SERVERPART.SERVERPART_TEL;
|
||
_DataRow["MAP_OBJECTCODE"] = _SERVERPART.SERVERPART_ID_Encrypt;
|
||
if (_SERVERPART.SERVERPART_X == null)
|
||
reString = "error";
|
||
_DataRow["MAPX"] = _SERVERPART.SERVERPART_X;
|
||
_DataRow["MAPY"] = _SERVERPART.SERVERPART_Y;
|
||
_DataTable.Rows.Add(_DataRow);
|
||
}
|
||
string PointString = string.Empty;
|
||
PointString = BaiDuMapHelper.GetBaiduPointString(PointString, _DataTable);
|
||
string imagePath = "";
|
||
try
|
||
{
|
||
imagePath = HttpContext.Current.Request.Form["imagepath"];
|
||
}
|
||
catch
|
||
{ }
|
||
PointString = PointString.Replace("isOpen: 0", "isOpen: 0,imagepath:\"" + imagePath + "\"");
|
||
reString = PointString;//"{\"markerArr\":[" + PointString + "]}";
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
#endregion
|
||
|
||
#region 根据类型获取点位
|
||
case "getPointPosByServerPartType":
|
||
string OutTypeString = action_data.ToDecrypt();
|
||
_DataTablePoint = new DataTable();
|
||
_DataTablePoint.Columns.Add("MAPINFO");
|
||
_DataTablePoint.Columns.Add("MAP_ADDRESS");
|
||
_DataTablePoint.Columns.Add("MAP_TEL");
|
||
_DataTablePoint.Columns.Add("MAP_OBJECTCODE");
|
||
_DataTablePoint.Columns.Add("MAPX");
|
||
_DataTablePoint.Columns.Add("MAPY");
|
||
_DataTablePoint.Columns.Add("IMAGEPATH");
|
||
try
|
||
{
|
||
//根据类别获得服务区
|
||
GetSubServerPartType(ref OutTypeString, action_data.ToDecrypt(), "", true, _Transaction);
|
||
//获得类别对应的某一个类别下面的数据
|
||
foreach (Business.SERVERPART _SERVERPART in (new Business.SERVERPART(_Transaction)).FillCollection(
|
||
"where SERVERPART_ID in (select SERVERPART_ID from HIGHWAY_STORAGE.T_SPSTATICTYPE where SERVERPARTTYPE_ID IN( " +
|
||
OutTypeString + ")) order by SERVERPART_INDEX,SERVERPART_CODE"))
|
||
{
|
||
DataRow _DataRow = _DataTablePoint.NewRow();
|
||
_DataRow["MAPINFO"] = _SERVERPART.SERVERPART_NAME + " " + _SERVERPART.SERVERPART_INFO;
|
||
_DataRow["MAP_ADDRESS"] = _SERVERPART.SERVERPART_ADDRESS;
|
||
_DataRow["MAP_TEL"] = _SERVERPART.SERVERPART_TEL;
|
||
_DataRow["MAP_OBJECTCODE"] = _SERVERPART.SERVERPART_ID_Encrypt;
|
||
if (_SERVERPART.SERVERPART_X == null)
|
||
continue;
|
||
_DataRow["MAPX"] = _SERVERPART.SERVERPART_X;
|
||
_DataRow["MAPY"] = _SERVERPART.SERVERPART_Y;
|
||
//获得图片的路径
|
||
string sqlString = @"SELECT * FROM (select A.IMAGE_PATH FROM T_IMAGE A,T_SERVERPARTTYPE B,T_SPSTATICTYPE C
|
||
WHERE A.IMAGE_ID = B.STATIC_TYPE AND B.SERVERPARTTYPE_ID = C.SERVERPARTTYPE_ID AND C.SERVERPART_ID=" +
|
||
_SERVERPART.SERVERPART_ID + " AND C.SERVERPARTTYPE_ID IN( " + OutTypeString +
|
||
") ORDER BY C.SERVERPARTTYPE_ID DESC) where ROWNUM =1";
|
||
DataTable _DataTableNew = (new Business.SERVERPART(_Transaction)).ExecuteDataTable(sqlString);
|
||
if (_DataTableNew.Rows.Count != 0)
|
||
{
|
||
_DataRow["IMAGEPATH"] = _DataTableNew.Rows[0][0].ToString();
|
||
}
|
||
else
|
||
{
|
||
_DataRow["IMAGEPATH"] = "";
|
||
}
|
||
_DataTablePoint.Rows.Add(_DataRow);
|
||
}
|
||
|
||
string PointString = string.Empty;
|
||
PointString = BaiDuMapHelper.GetBaiduPointString(PointString, _DataTablePoint);
|
||
//string imagePath = "";
|
||
//try
|
||
//{
|
||
// imagePath = HttpContext.Current.Request.Form["imagepath"];
|
||
//}
|
||
//catch
|
||
//{ }
|
||
//PointString = PointString.Replace("isOpen: 0", "isOpen: 0,imagepath:\"" + imagePath + "\"");
|
||
reString = PointString;//"{\"markerArr\":[" + PointString + "]}";
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
#endregion
|
||
|
||
#region 根据查询内容获取点位
|
||
case "getPointPosByServerPartName":
|
||
string Parameter = action_data;
|
||
Parameter = "WHERE SERVERPART_NAME LIKE '%" + Parameter + "%' OR SERVERPART_ADDRESS LIKE '%" + Parameter +
|
||
"%' OR EXPRESSWAY_NAME LIKE '%" + Parameter + "%' OR OWNEDCOMPANY LIKE '%" + Parameter +
|
||
"%' OR MANAGERCOMPANY LIKE '%" + Parameter + "%'";
|
||
_DataTablePoint = new DataTable();
|
||
_DataTablePoint.Columns.Add("MAPINFO");
|
||
_DataTablePoint.Columns.Add("MAP_ADDRESS");
|
||
_DataTablePoint.Columns.Add("MAP_TEL");
|
||
_DataTablePoint.Columns.Add("MAP_OBJECTCODE");
|
||
_DataTablePoint.Columns.Add("MAPX");
|
||
_DataTablePoint.Columns.Add("MAPY");
|
||
_DataTablePoint.Columns.Add("IMAGEPATH");
|
||
try
|
||
{
|
||
//获得类别对应的某一个类别下面的数据
|
||
foreach (Business.SERVERPART _SERVERPART in (new Business.SERVERPART(_Transaction)).FillCollection(Parameter))
|
||
{
|
||
DataRow _DataRow = _DataTablePoint.NewRow();
|
||
_DataRow["MAPINFO"] = _SERVERPART.SERVERPART_NAME + " " + _SERVERPART.SERVERPART_INFO;
|
||
_DataRow["MAP_ADDRESS"] = _SERVERPART.SERVERPART_ADDRESS;
|
||
_DataRow["MAP_TEL"] = _SERVERPART.SERVERPART_TEL;
|
||
_DataRow["MAP_OBJECTCODE"] = _SERVERPART.SERVERPART_ID_Encrypt;
|
||
if (_SERVERPART.SERVERPART_X == null)
|
||
continue;
|
||
_DataRow["MAPX"] = _SERVERPART.SERVERPART_X;
|
||
_DataRow["MAPY"] = _SERVERPART.SERVERPART_Y;
|
||
_DataTablePoint.Rows.Add(_DataRow);
|
||
}
|
||
|
||
string PointString = string.Empty;
|
||
PointString = BaiDuMapHelper.GetBaiduPointString(PointString, _DataTablePoint);
|
||
reString = PointString;//"{\"markerArr\":[" + PointString + "]}";
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
#endregion
|
||
|
||
#region 获得设置图片的信息
|
||
case "getImageDataObject":
|
||
try
|
||
{
|
||
List<ImageObject> _ListImageObject = new List<ImageObject>();
|
||
StrSql = "SELECT * FROM (SELECT IMAGE_PATH,TABLE_ID FROM HIGHWAY_STORAGE.T_IMAGE WHERE TABLE_ID = " +
|
||
action_data.ToDecrypt() + " AND TABLE_NAME='T_SERVERPART' ORDER BY IMAGE_INDEX ASC) WHERE ROWNUM = 1";
|
||
//图片信息
|
||
foreach (DataRow _DataRow in (new Business.COMMODITY(_Transaction)).ExecuteDataTable(StrSql).Rows)
|
||
{
|
||
ImageObject _ImageObject = new ImageObject();
|
||
_ImageObject.path = _DataRow["IMAGE_PATH"].ToString();
|
||
_ImageObject.code = _DataRow["TABLE_ID"].ToEncrypt();
|
||
_ListImageObject.Add(_ImageObject);
|
||
}
|
||
reString = JsonHelper.ListToJson<ImageObject>(_ListImageObject, "ImageObject");
|
||
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
#endregion
|
||
|
||
#region 获得一品多码商品
|
||
case "getCommodityDetail":
|
||
try
|
||
{
|
||
//获得枚举信息
|
||
_DataTable = (new Business.COMMODITY(_Transaction).ExecuteDataTable(
|
||
"SELECT * FROM HIGHWAY_STORAGE.V_RTMULTIBARCODE where MULTIBARCODE_ID = " + action_data.ToDecrypt()));
|
||
reString = JsonHelper.DataTableToJson(_DataTable, "COMMODITY");
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
#endregion
|
||
|
||
#region 获得商品销售排行
|
||
case "getServerpartCommoditySale":
|
||
try
|
||
{
|
||
string COMMODITY_BARCODE = action_data.ToDecrypt().Split('&')[0];
|
||
string StatisticStart_Date = action_data.ToDecrypt().Split('&')[1];
|
||
string StatisticEnd_Date = action_data.ToDecrypt().Split('&')[2];
|
||
//string SERVERPARTTYPE_ID = action_data.ToDecrypt().Split('&')[3];
|
||
string SERVERPART_ID = action_data.ToDecrypt().Split('&')[3];
|
||
string SHOPTRADE = action_data.ToDecrypt().Split('&')[4];
|
||
string SERVERPARTSHOP_ID = action_data.ToDecrypt().Split('&')[5];
|
||
string ROWNUMS = action_data.ToDecrypt().Split('&')[6];
|
||
string rowWhere = "";
|
||
//获得枚举信息
|
||
string WhereSQL = string.Empty;
|
||
string OtherSQL = string.Empty;
|
||
if (COMMODITY_BARCODE != "")
|
||
{
|
||
WhereSQL += " AND COMMODITY_BARCODE = '" + COMMODITY_BARCODE + "'";
|
||
OtherSQL += " AND COMMODITY_BARCODE = '" + COMMODITY_BARCODE + "'";
|
||
}
|
||
if (StatisticStart_Date != "")
|
||
{
|
||
WhereSQL += " AND SELLDATE >= TO_DATE('" + StatisticStart_Date + "','YYYY/MM/DD')";
|
||
OtherSQL += " AND SELLDATE >= TO_DATE('" + StatisticStart_Date + "','YYYY/MM/DD')";
|
||
}
|
||
if (StatisticEnd_Date != "")
|
||
{
|
||
WhereSQL += " AND SELLDATE <= TO_DATE('" + StatisticEnd_Date + "','YYYY/MM/DD')";
|
||
OtherSQL += " AND SELLDATE <= TO_DATE('" + StatisticEnd_Date + "','YYYY/MM/DD')";
|
||
}
|
||
//if (!string.IsNullOrEmpty(SERVERPARTTYPE_ID))
|
||
//{
|
||
// WhereSQL += "AND SERVERPARTTYPE_ID IN(" + SERVERPARTTYPE_ID + ")";
|
||
//}
|
||
if (!string.IsNullOrEmpty(SERVERPART_ID))
|
||
{
|
||
WhereSQL += "AND SERVERPART_ID IN(" + SERVERPART_ID + ")";
|
||
OtherSQL += "AND SERVERPART_ID IN(" + SERVERPART_ID + ")";
|
||
}
|
||
if (!string.IsNullOrEmpty(SERVERPARTSHOP_ID))
|
||
{
|
||
WhereSQL += "AND SERVERPARTSHOP_ID IN(" + SERVERPARTSHOP_ID + ")";
|
||
OtherSQL += "AND SERVERPARTSHOP_ID IN(" + SERVERPARTSHOP_ID + ")";
|
||
}
|
||
if (!string.IsNullOrEmpty(SHOPTRADE) && SHOPTRADE != "1=1")
|
||
{
|
||
WhereSQL += "AND BUSINESSTYPE = " + SHOPTRADE;
|
||
OtherSQL += "AND BUSINESSTYPE = " + SHOPTRADE;
|
||
}
|
||
if (ROWNUMS != "全部")
|
||
{
|
||
rowWhere = " WHERE ROWNUM <= " + ROWNUMS;
|
||
}
|
||
string strSql = @"SELECT ROWNUM,SERVERPART_ID,SERVERPART_NAME,SERVERPARTSHOP_ID,SHOPNAME,TOTALSELLAMOUNT,TOTALCOUNT
|
||
FROM (SELECT SERVERPART_ID,SERVERPART_NAME,SERVERPARTSHOP_ID,SHOPNAME,MAX(COMMODITY_NAME) AS COMMODITY_NAME,
|
||
COMMODITY_BARCODE,MAX(COMMODITY_RULE) AS COMMODITY_RULE,MAX(COMMODITY_UNIT) AS COMMODITY_UNIT,
|
||
SUM(TOTALSELLAMOUNT) AS TOTALSELLAMOUNT,SUM(TOTALCOUNT) AS TOTALCOUNT
|
||
FROM HIGHWAY_SELLDATA.V_SALERANKS WHERE 1=1 " + WhereSQL +
|
||
" GROUP BY SERVERPART_ID,SERVERPART_NAME,SERVERPARTSHOP_ID,SHOPNAME,COMMODITY_BARCODE" +
|
||
" ORDER BY TOTALSELLAMOUNT DESC) " + rowWhere;
|
||
_DataTable = new Business.SERVERPART(_Transaction).ExecuteDataTable(strSql);
|
||
int ROWNUM = 0;
|
||
foreach (DataRow dr in _DataTable.Rows)
|
||
{
|
||
ROWNUM = int.Parse(dr["ROWNUM"].ToString());
|
||
SERVERPART_ID += (SERVERPART_ID == "" ? "" : ",") + dr["SERVERPART_ID"].ToString();
|
||
SERVERPARTSHOP_ID += (SERVERPARTSHOP_ID == "" ? "" : ",") + dr["SERVERPARTSHOP_ID"].ToString();
|
||
}
|
||
string otherSql = @"SELECT ROWNUMS,SERVERPART_ID,SERVERPART_NAME,SERVERPARTSHOP_ID,SHOPNAME,
|
||
SUM(TOTALSELLAMOUNT) AS TOTALSELLAMOUNT,SUM(TOTALCOUNT) AS TOTALCOUNT
|
||
FROM (SELECT 0 AS ROWNUMS,1 AS SERVERPART_ID,'其他服务区' as SERVERPART_NAME,
|
||
1 AS SERVERPARTSHOP_ID,'其他门店' AS SHOPNAME,
|
||
COMMODITY_CODE,COMMODITY_NAME,COMMODITY_BARCODE,COMMODITY_RULE,
|
||
COMMODITY_UNIT,SUM(TOTALSELLAMOUNT) AS TOTALSELLAMOUNT,SUM(TOTALCOUNT) AS TOTALCOUNT
|
||
FROM HIGHWAY_SELLDATA.V_SALERANKS WHERE 1=1 " + OtherSQL + " AND SERVERPART_ID NOT IN (" +
|
||
SERVERPART_ID + ")" + " AND SERVERPARTSHOP_ID NOT IN (" + SERVERPARTSHOP_ID + ")" +
|
||
" GROUP BY SERVERPART_ID,SERVERPART_NAME,SERVERPARTSHOP_ID,SHOPNAME,COMMODITY_ID,COMMODITY_CODE," +
|
||
"COMMODITY_NAME,COMMODITY_BARCODE,COMMODITY_RULE,COMMODITY_UNIT,COMMODITY_CURRPRICE" +
|
||
" ORDER BY TOTALSELLAMOUNT DESC) GROUP BY ROWNUMS,SERVERPART_ID,SERVERPART_NAME,SERVERPARTSHOP_ID,SHOPNAME";
|
||
foreach (DataRow dr in new Business.COMMODITY(_Transaction).ExecuteDataTable(otherSql).Rows)
|
||
{
|
||
DataRow _DataRow = _DataTable.NewRow();
|
||
for (int rownum = 0; rownum < dr.ItemArray.Length; rownum++)
|
||
{
|
||
_DataRow[rownum] = dr[rownum];
|
||
}
|
||
_DataRow[0] = (ROWNUM + 1).ToString();
|
||
_DataTable.Rows.Add(_DataRow);
|
||
}
|
||
reString = JsonHelper.DataTableToJson(_DataTable, "SALERANKS");
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
|
||
case "getSaleRanks":
|
||
try
|
||
{
|
||
string COMMODITY_BARCODE = action_data.ToDecrypt().Split('&')[0];
|
||
string StatisticStart_Date = action_data.ToDecrypt().Split('&')[1];
|
||
string StatisticEnd_Date = action_data.ToDecrypt().Split('&')[2];
|
||
//string SERVERPARTTYPE_ID = action_data.ToDecrypt().Split('&')[3];
|
||
string SERVERPART_ID = action_data.ToDecrypt().Split('&')[3];
|
||
string SHOPTRADE = action_data.ToDecrypt().Split('&')[4];
|
||
string SERVERPARTSHOP_ID = action_data.ToDecrypt().Split('&')[5];
|
||
string ROWNUMS = action_data.ToDecrypt().Split('&')[6];
|
||
string rowWhere = "";
|
||
//获得枚举信息
|
||
string WhereSQL = string.Empty;
|
||
string OtherSQL = string.Empty;
|
||
if (COMMODITY_BARCODE != "")
|
||
{
|
||
WhereSQL += " AND COMMODITY_BARCODE = '" + COMMODITY_BARCODE + "'";
|
||
OtherSQL += " AND COMMODITY_BARCODE = '" + COMMODITY_BARCODE + "'";
|
||
}
|
||
if (StatisticStart_Date != "")
|
||
{
|
||
WhereSQL += " AND SELLDATE >= TO_DATE('" + StatisticStart_Date + "','YYYY/MM/DD')";
|
||
OtherSQL += " AND SELLDATE >= TO_DATE('" + StatisticStart_Date + "','YYYY/MM/DD')";
|
||
}
|
||
if (StatisticEnd_Date != "")
|
||
{
|
||
WhereSQL += " AND SELLDATE <= TO_DATE('" + StatisticEnd_Date + "','YYYY/MM/DD')";
|
||
OtherSQL += " AND SELLDATE <= TO_DATE('" + StatisticEnd_Date + "','YYYY/MM/DD')";
|
||
}
|
||
//if (!string.IsNullOrEmpty(SERVERPARTTYPE_ID))
|
||
//{
|
||
// WhereSQL += "AND SERVERPARTTYPE_ID IN(" + SERVERPARTTYPE_ID + ")";
|
||
//}
|
||
if (!string.IsNullOrEmpty(SERVERPART_ID))
|
||
{
|
||
WhereSQL += " AND SERVERPART_ID IN(" + SERVERPART_ID + ")";
|
||
OtherSQL += " AND SERVERPART_ID IN(" + SERVERPART_ID + ")";
|
||
}
|
||
if (!string.IsNullOrEmpty(SERVERPARTSHOP_ID))
|
||
{
|
||
WhereSQL += " AND " + SERVERPARTSHOP_ID;
|
||
OtherSQL += " AND " + SERVERPARTSHOP_ID;
|
||
}
|
||
if (!string.IsNullOrEmpty(SHOPTRADE) && SHOPTRADE != "1=1")
|
||
{
|
||
WhereSQL += " AND BUSINESSTYPE = " + SHOPTRADE;
|
||
OtherSQL += " AND BUSINESSTYPE = " + SHOPTRADE;
|
||
}
|
||
if (ROWNUMS != "全部")
|
||
{
|
||
rowWhere = " WHERE ROWNUM <= " + ROWNUMS;
|
||
}
|
||
string strSql = string.Format(@"SELECT ROWNUM,SERVERPARTSHOP_ID,
|
||
SERVERPART_NAME,SHOPNAME,TOTALSELLAMOUNT,TOTALCOUNT
|
||
FROM (SELECT SERVERPART_NAME,SHOPNAME,SERVERPARTSHOP_ID,
|
||
MAX(COMMODITY_NAME) AS COMMODITY_NAME,COMMODITY_BARCODE,
|
||
MAX(COMMODITY_RULE) AS COMMODITY_RULE,MAX(COMMODITY_UNIT) AS COMMODITY_UNIT,
|
||
SUM(TOTALSELLAMOUNT) AS TOTALSELLAMOUNT,SUM(TOTALCOUNT) AS TOTALCOUNT
|
||
FROM HIGHWAY_SELLDATA.V_SALERANKS
|
||
WHERE 1 = 1 {0}
|
||
GROUP BY SERVERPARTSHOP_ID,SERVERPART_NAME,SHOPNAME,COMMODITY_BARCODE
|
||
ORDER BY TOTALSELLAMOUNT DESC) {1}", WhereSQL, rowWhere);
|
||
_DataTable = new Business.SERVERPART(_Transaction).ExecuteDataTable(strSql);
|
||
int ROWNUM = 0;
|
||
SERVERPARTSHOP_ID = ""; //初始化门店内码
|
||
foreach (DataRow dr in _DataTable.Rows)
|
||
{
|
||
ROWNUM = int.Parse(dr["ROWNUM"].ToString());
|
||
SERVERPARTSHOP_ID += (SERVERPARTSHOP_ID == "" ? "" : ",") + dr["SERVERPARTSHOP_ID"].ToString();
|
||
}
|
||
|
||
if (!string.IsNullOrWhiteSpace(SERVERPARTSHOP_ID))
|
||
{
|
||
string otherSql = string.Format(@"SELECT '其他服务区' as SERVERPART_NAME,'其他门店' AS SHOPNAME,
|
||
SUM(TOTALSELLAMOUNT) AS TOTALSELLAMOUNT,SUM(TOTALCOUNT) AS TOTALCOUNT
|
||
FROM HIGHWAY_SELLDATA.V_SALERANKS
|
||
WHERE 1 = 1 {0} AND SERVERPARTSHOP_ID NOT IN ({1})", OtherSQL, SERVERPARTSHOP_ID);
|
||
DataTable dtOtherData = new Business.COMMODITY(_Transaction).ExecuteDataTable(otherSql);
|
||
|
||
if (dtOtherData.Rows.Count > 0 && dtOtherData.Rows[0][3].ToString() != "")
|
||
{
|
||
DataRow _DataRow = _DataTable.NewRow();
|
||
_DataRow["SERVERPART_NAME"] = dtOtherData.Rows[0]["SERVERPART_NAME"];
|
||
_DataRow["SHOPNAME"] = dtOtherData.Rows[0]["SHOPNAME"];
|
||
_DataRow["TOTALSELLAMOUNT"] = dtOtherData.Rows[0]["TOTALSELLAMOUNT"];
|
||
_DataRow["TOTALCOUNT"] = dtOtherData.Rows[0]["TOTALCOUNT"];
|
||
_DataRow[0] = (ROWNUM + 1).ToString();
|
||
_DataTable.Rows.Add(_DataRow);
|
||
}
|
||
}
|
||
|
||
reString = JsonHelper.DataTableToJson(_DataTable, "SALERANKS");
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
#endregion
|
||
|
||
#region 获得服务区商品销售排行
|
||
case "getCommoditySale":
|
||
try
|
||
{
|
||
string COMMODITY_ID = action_data.ToDecrypt().Split('&')[0];
|
||
string StatisticsStartDay = action_data.ToDecrypt().Split('&')[1];
|
||
string StatisticsEndDay = action_data.ToDecrypt().Split('&')[2];
|
||
//获得枚举信息
|
||
string WhereSQL = string.Empty;
|
||
string SERVERPART_ID = string.Empty;
|
||
if (COMMODITY_ID != "")
|
||
{
|
||
WhereSQL += " AND COMMODITY_ID = " + COMMODITY_ID;
|
||
}
|
||
if (StatisticsStartDay != "")
|
||
{
|
||
WhereSQL += " AND ENDDATE >= TO_DATE('" + StatisticsStartDay + "','YYYY/MM/DD')";
|
||
}
|
||
if (StatisticsEndDay != "")
|
||
{
|
||
WhereSQL += " AND ENDDATE < TO_DATE('" + StatisticsEndDay + "','YYYY/MM/DD') + 1";
|
||
}
|
||
_DataTable = new Business.SERVERPART(_Transaction).ExecuteDataTable(
|
||
@"SELECT ROWNUM,SERVERPART_ID,SERVERPART_NAME,TICKETCOUNT,TOTALCOUNT,CASHPAY FROM (
|
||
SELECT SERVERPART_ID,NVL(SUM(TICKETCOUNT),0) AS TICKETCOUNT,NVL(SUM(TOTALCOUNT),0) AS TOTALCOUNT,
|
||
SERVERPART_NAME,NVL(SUM(TOTALSELLAMOUNT),0) AS CASHPAY
|
||
FROM HIGHWAY_SELLDATA.V_COMMODITYSALE WHERE 1 = 1" + WhereSQL +
|
||
" GROUP BY SERVERPART_ID,SERVERPART_NAME ORDER BY TOTALCOUNT DESC)WHERE ROWNUM <= 10");
|
||
int ROWNUM = 0;
|
||
foreach (DataRow dr in _DataTable.Rows)
|
||
{
|
||
ROWNUM = int.Parse(dr["ROWNUM"].ToString());
|
||
SERVERPART_ID += (SERVERPART_ID == "" ? "" : ",") + dr["SERVERPART_ID"].ToString();
|
||
}
|
||
foreach (DataRow dr in new Business.COMMODITY(_Transaction).ExecuteDataTable(
|
||
@"SELECT 1,0,'其它服务区合计',NVL(SUM(TICKETCOUNT),0) AS TICKETCOUNT,NVL(SUM(TOTALCOUNT),0) AS TOTALCOUNT,
|
||
NVL(SUM(TOTALSELLAMOUNT),0) AS CASHPAY FROM HIGHWAY_SELLDATA.V_COMMODITYSALE WHERE 1 = 1" +
|
||
WhereSQL + " AND SERVERPART_ID NOT IN (" + SERVERPART_ID + ")").Rows)
|
||
{
|
||
DataRow _DataRow = _DataTable.NewRow();
|
||
for (int rownum = 0; rownum < dr.ItemArray.Length; rownum++)
|
||
{
|
||
_DataRow[rownum] = dr[rownum];
|
||
}
|
||
_DataRow[0] = (ROWNUM + 1).ToString();
|
||
_DataTable.Rows.Add(_DataRow);
|
||
}
|
||
reString = JsonHelper.DataTableToJson(_DataTable, "DAILYSALES");
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
|
||
case "getCommoditySaleByName":
|
||
try
|
||
{
|
||
string COMMODITY_NAME = action_data.Split('|')[0];
|
||
string StatisticsStartDay = action_data.Split('|')[1];
|
||
string StatisticsEndDay = action_data.Split('|')[2];
|
||
string province_code = HttpContext.Current.Request.Form["province_code"];
|
||
//获得枚举信息
|
||
string WhereSQL = string.Empty;
|
||
string SERVERPART_ID = string.Empty;
|
||
|
||
if (string.IsNullOrEmpty(province_code))
|
||
{
|
||
province_code = HttpContext.Current.Request.Params["province_code"];
|
||
if (!string.IsNullOrEmpty(province_code))
|
||
{
|
||
FieldExplain _FieldExplain = new FieldExplain(_Transaction);
|
||
_FieldExplain.AddSearchParameter("FIELDEXPLAIN_FIELD", "DIVISION_CODE");
|
||
if (_FieldExplain.Search())
|
||
{
|
||
FieldEnum _FieldEnum = new FieldEnum(_Transaction);
|
||
_FieldEnum.AddSearchParameter("FieldExplain_ID", _FieldExplain.FieldExplain_ID);
|
||
_FieldEnum.AddSearchParameter("FIELDENUM_VALUE", province_code);
|
||
if (_FieldEnum.Search())
|
||
{
|
||
WhereSQL += " AND PROVINCE_CODE = '" + _FieldEnum.FieldEnum_ID + "'";
|
||
}
|
||
}
|
||
}
|
||
}
|
||
if (COMMODITY_NAME != "")
|
||
{
|
||
WhereSQL += " AND COMMODITY_NAME = '" + COMMODITY_NAME + "'";
|
||
}
|
||
if (StatisticsStartDay != "")
|
||
{
|
||
WhereSQL += " AND ENDDATE >= TO_DATE('" + StatisticsStartDay + "','YYYY/MM/DD')";
|
||
}
|
||
if (StatisticsEndDay != "")
|
||
{
|
||
WhereSQL += " AND ENDDATE < TO_DATE('" + StatisticsEndDay + "','YYYY/MM/DD') + 1";
|
||
}
|
||
_DataTable = new Business.SERVERPART(_Transaction).ExecuteDataTable(
|
||
@"SELECT ROWNUM,SERVERPART_ID,SERVERPART_NAME,TOTALCOUNT,CASHPAY FROM (
|
||
SELECT SERVERPART_ID,NVL(SUM(TOTALCOUNT),0) AS TOTALCOUNT,
|
||
SERVERPART_NAME,NVL(SUM(TOTALSELLAMOUNT),0) AS CASHPAY
|
||
FROM HIGHWAY_SELLDATA.V_COMMODITYSALE WHERE 1 = 1" + WhereSQL +
|
||
" GROUP BY SERVERPART_ID,SERVERPART_NAME ORDER BY TOTALCOUNT DESC) WHERE ROWNUM <= 10");
|
||
int ROWNUM = 0;
|
||
foreach (DataRow dr in _DataTable.Rows)
|
||
{
|
||
ROWNUM = int.Parse(dr["ROWNUM"].ToString());
|
||
SERVERPART_ID += (SERVERPART_ID == "" ? "" : ",") + dr["SERVERPART_ID"].ToString();
|
||
}
|
||
foreach (DataRow dr in new Business.COMMODITY(_Transaction).ExecuteDataTable(@"SELECT
|
||
1,0,'其它服务区合计',NVL(SUM(TOTALCOUNT),0) AS TOTALCOUNT,NVL(SUM(TOTALSELLAMOUNT),0) AS CASHPAY
|
||
FROM HIGHWAY_SELLDATA.V_COMMODITYSALE WHERE 1 = 1" + WhereSQL + " AND SERVERPART_ID NOT IN (" +
|
||
(string.IsNullOrEmpty(SERVERPART_ID) ? "0" : SERVERPART_ID) + ")").Rows)
|
||
{
|
||
DataRow _DataRow = _DataTable.NewRow();
|
||
for (int rownum = 0; rownum < dr.ItemArray.Length; rownum++)
|
||
{
|
||
_DataRow[rownum] = dr[rownum];
|
||
}
|
||
_DataRow[0] = (ROWNUM + 1).ToString();
|
||
_DataTable.Rows.Add(_DataRow);
|
||
}
|
||
reString = JsonHelper.DataTableToJson(_DataTable, "DAILYSALES");
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
#endregion
|
||
|
||
#region 获取门店结账信息
|
||
case "GetEndaccount":
|
||
try
|
||
{
|
||
DataTable ENDACCOUNTList = new SRHSB.ENDACCOUNT(_Transaction).FillDataTable(
|
||
"WHERE SERVERPART_ID = " + action_data.Split(',')[0].ToDecrypt() + " AND SHOPCODE = '" +
|
||
action_data.Split(',')[1].ToDecrypt() + "' AND MACHINECODE = '" + action_data.Split(',')[2].ToDecrypt() +
|
||
"' AND ENDACCOUNT_STARTDATE = TO_DATE('" + action_data.Split(',')[3].ToDecrypt() + "','YYYY/MM/DD HH24:MI:SS')");
|
||
|
||
foreach (DataRow _ENDACCOUNTRow in ENDACCOUNTList.Rows)
|
||
{
|
||
if (string.IsNullOrWhiteSpace(_ENDACCOUNTRow["FACT_AMOUNT"].ToString()))
|
||
{
|
||
_ENDACCOUNTRow["FACT_AMOUNT"] = (_ENDACCOUNTRow["TICKETBILL"].TryParseToDouble() +
|
||
_ENDACCOUNTRow["OTHERPAY"].TryParseToDouble()).Round(2);
|
||
}
|
||
}
|
||
|
||
reString = JsonHelper.DataTableToJson(ENDACCOUNTList, "EndaccountObject");
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
case "getServerPartEndaccount":
|
||
try
|
||
{
|
||
_DataTable = (new Business.COMMODITY(_Transaction).ExecuteDataTable(
|
||
"SELECT * FROM HIGHWAY_SELLDATA.V_ENDACCOUNT WHERE SERVERPARTSHOP_ID IN (" +
|
||
action_data + ") AND ENDACCOUNT_ID > 0 ORDER BY ENDACCOUNT_DATE"));
|
||
|
||
reString = JsonHelper.DataTableToJson(_DataTable, "EndaccountObject");
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
case "getServerPartEndaccountByDate":
|
||
try
|
||
{
|
||
try
|
||
{
|
||
action_record = HttpContext.Current.Request.Params["action_record"];
|
||
}
|
||
catch
|
||
{
|
||
action_record = "";
|
||
}
|
||
_DataTable = (new Business.COMMODITY(_Transaction).ExecuteDataTable(
|
||
"SELECT * FROM HIGHWAY_SELLDATA.V_ENDACCOUNT WHERE SERVERPARTSHOP_ID IN (" +
|
||
action_data + ") " + (string.IsNullOrEmpty(action_record) ? "" :
|
||
" AND TRUNC(NVL(STATISTICS_DATE,ENDACCOUNT_DATE)) = TO_DATE('" +
|
||
action_record.Split(' ')[0] + "','YYYY/MM/DD')") + " ORDER BY ENDACCOUNT_DATE"));
|
||
|
||
reString = JsonHelper.DataTableToJson(_DataTable, "EndaccountObject");
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
|
||
case "GetEndaccountTotalAmount":
|
||
try
|
||
{
|
||
if (string.IsNullOrEmpty(action_data))
|
||
{
|
||
_DataTable = (new Business.COMMODITY(_Transaction).ExecuteDataTable(
|
||
@"SELECT NVL(CASHPAY,0) AS TOTALPRICE,TICKETCOUNT AS TOTALTICKET,TOTALCOUNT AS CURSELLCOUNT
|
||
FROM HIGHWAY_SELLDATA.V_SERVERPARTDAILYSALES
|
||
WHERE SERVERPART_NAME = '合计' AND TRUNC(STATISTICS_DATE) = TRUNC(SYSDATE) - 1"));
|
||
}
|
||
else
|
||
{
|
||
_DataTable = (new Business.COMMODITY(_Transaction).ExecuteDataTable(
|
||
@"SELECT TRUNC(STATISTICS_DATE) AS STATISTICS_DATE,SUM(NVL(CASHPAY,0)) AS TOTALPRICE,
|
||
SUM(TICKETCOUNT) AS TOTALTICKET,SUM(TOTALCOUNT) AS CURSELLCOUNT
|
||
FROM HIGHWAY_SELLDATA.V_SERVERPARTDAILYSALES
|
||
WHERE SERVERPART_NAME = '合计' AND TRUNC(STATISTICS_DATE) BETWEEN TO_DATE('" +
|
||
action_data.Split(',')[0].Split(' ')[0] + "','YYYY/MM/DD') AND TO_DATE('" +
|
||
action_data.Split(',')[1].Split(' ')[0] +
|
||
"','YYYY/MM/DD') GROUP BY TRUNC(STATISTICS_DATE) ORDER BY STATISTICS_DATE"));
|
||
}
|
||
reString = JsonHelper.DataTableToJson(_DataTable, "CurrentData");
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
|
||
case "GetEndaccountAmount":
|
||
try
|
||
{
|
||
_DataTable = (new Business.COMMODITY(_Transaction).ExecuteDataTable(
|
||
@"SELECT * FROM HIGHWAY_SELLDATA.V_SERVERPARTDAILYSALES
|
||
WHERE SERVERPART_NAME <> '合计' AND TRUNC(STATISTICS_DATE) = TRUNC(SYSDATE) - 1
|
||
ORDER BY CASHPAY DESC"));
|
||
reString = JsonHelper.DataTableToJson(_DataTable, "CurrentData");
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
|
||
case "GetEndaccountByRegion":
|
||
try
|
||
{
|
||
try
|
||
{
|
||
action_record = HttpContext.Current.Request.Params["action_record"];
|
||
}
|
||
catch
|
||
{
|
||
action_record = "";
|
||
}
|
||
if (string.IsNullOrEmpty(action_data))
|
||
{
|
||
_DataTable = (new Business.COMMODITY(_Transaction).ExecuteDataTable(
|
||
@"SELECT SUM(CASHPAY) AS TOTALPRICE,SUM(TICKETCOUNT) AS TOTALTICKET,
|
||
SUM(TOTALCOUNT) AS CURSELLCOUNT,C.TYPE_NAME
|
||
FROM HIGHWAY_SELLDATA.V_SERVERPARTDAILYSALES A,
|
||
HIGHWAY_STORAGE.T_SPSTATICTYPE B,
|
||
HIGHWAY_STORAGE.T_SERVERPARTTYPE C
|
||
WHERE TRUNC(STATISTICS_DATE) = TRUNC(SYSDATE) - 1 AND A.SERVERPART_ID = B.SERVERPART_ID AND
|
||
B.SERVERPARTTYPE_ID = C.SERVERPARTTYPE_ID AND C.TYPE_PID = 1 GROUP BY C.TYPE_NAME"));
|
||
}
|
||
else
|
||
{
|
||
_DataTable = (new Business.COMMODITY(_Transaction).ExecuteDataTable(
|
||
@"SELECT SUM(CASHPAY) AS TOTALPRICE,SUM(TICKETCOUNT) AS TOTALTICKET,
|
||
SUM(TOTALCOUNT) AS CURSELLCOUNT,TRUNC(STATISTICS_DATE) AS STATISTICS_DATE
|
||
FROM HIGHWAY_SELLDATA.V_SERVERPARTDAILYSALES A,
|
||
HIGHWAY_STORAGE.V_REGIONSERVERPART B
|
||
WHERE A.SERVERPART_ID = B.SERVERPART_ID AND REGION_ID = " + action_data +
|
||
" AND TRUNC(STATISTICS_DATE) BETWEEN TO_DATE('" + action_record.Split(',')[0].Split(' ')[0] +
|
||
"','YYYY/MM/DD') AND TO_DATE('" + action_record.Split(',')[1].Split(' ')[0] +
|
||
"','YYYY/MM/DD') GROUP BY TRUNC(STATISTICS_DATE) ORDER BY STATISTICS_DATE"));
|
||
}
|
||
reString = JsonHelper.DataTableToJson(_DataTable, "CurrentData");
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
|
||
case "GetEndaccountByBusiness":
|
||
try
|
||
{
|
||
try
|
||
{
|
||
action_record = HttpContext.Current.Request.Params["action_record"];
|
||
}
|
||
catch
|
||
{
|
||
action_record = "";
|
||
}
|
||
|
||
_DataTable = (new Business.COMMODITY(_Transaction).ExecuteDataTable(
|
||
@"SELECT SUM(CASHPAY) AS TOTALPRICE,SUM(TICKETCOUNT) AS TOTALTICKET,
|
||
SUM(TOTALCOUNT) AS CURSELLCOUNT,NVL(STATISTICS_DATE,ENDACCOUNT_DATE) AS STATISTICS_DATE
|
||
FROM HIGHWAY_SELLDATA.V_ENDACCOUNT A WHERE SERVERPARTSHOP_ID IN (" + action_data +
|
||
") AND NVL(STATISTICS_DATE,ENDACCOUNT_DATE) BETWEEN TO_DATE('" +
|
||
action_record.Split(',')[0].Split(' ')[0] + "','YYYY/MM/DD') AND TO_DATE('" +
|
||
action_record.Split(',')[1].Split(' ')[0] + "','YYYY/MM/DD') AND SERVERPART_ID = " +
|
||
action_record.Split(',')[2] + " GROUP BY NVL(STATISTICS_DATE,ENDACCOUNT_DATE) ORDER BY STATISTICS_DATE"));
|
||
|
||
reString = JsonHelper.DataTableToJson(_DataTable, "CurrentData");
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
|
||
case "GetEndaccountByBusinessType":
|
||
try
|
||
{
|
||
try
|
||
{
|
||
action_record = HttpContext.Current.Request.Params["action_record"];
|
||
}
|
||
catch
|
||
{
|
||
action_record = "";
|
||
}
|
||
if (string.IsNullOrEmpty(action_record))
|
||
{
|
||
_DataTable = (new Business.COMMODITY(_Transaction).ExecuteDataTable(string.Format(
|
||
@"SELECT SUM(CASHPAY) AS TOTALPRICE,SUM(TICKETCOUNT) AS TOTALTICKET,SUM(TOTALCOUNT) AS CURSELLCOUNT,
|
||
CASE WHEN SHOPTRADE = 1000 THEN 'MARKET' WHEN SHOPTRADE LIKE '2%' THEN 'SNACK'
|
||
WHEN SHOPTRADE LIKE '3%' THEN 'RESTAURANT' ELSE 'OTHER' END AS SHOPTRADE
|
||
FROM HIGHWAY_SELLDATA.V_ENDACCOUNT
|
||
WHERE TRUNC(NVL(STATISTICS_DATE,ENDACCOUNT_DATE)) = TRUNC(SYSDATE) - 1 AND PROVINCE_CODE = {0}
|
||
GROUP BY CASE WHEN SHOPTRADE = 1000 THEN 'MARKET' WHEN SHOPTRADE LIKE '2%' THEN 'SNACK'
|
||
WHEN SHOPTRADE LIKE '3%' THEN 'RESTAURANT' ELSE 'OTHER' END", _PROVINCE_CODE)));
|
||
}
|
||
else
|
||
{
|
||
_DataTable = (new Business.COMMODITY(_Transaction).ExecuteDataTable(string.Format(
|
||
@"SELECT SUM(CASHPAY) AS TOTALPRICE,SUM(TICKETCOUNT) AS TOTALTICKET,SUM(TOTALCOUNT) AS CURSELLCOUNT,
|
||
CASE WHEN SHOPTRADE = 1000 THEN 'MARKET' WHEN SHOPTRADE LIKE '2%' THEN 'SNACK'
|
||
WHEN SHOPTRADE LIKE '3%' THEN 'RESTAURANT' ELSE 'OTHER' END AS SHOPTRADE
|
||
FROM HIGHWAY_SELLDATA.V_ENDACCOUNT A,HIGHWAY_STORAGE.V_REGIONSERVERPART B
|
||
WHERE A.SERVERPART_ID = B.SERVERPART_ID {0} AND TRUNC(NVL(STATISTICS_DATE,ENDACCOUNT_DATE))
|
||
BETWEEN TO_DATE('{1}','YYYY/MM/DD') AND TO_DATE('{2}','YYYY/MM/DD') AND B.PROVINCE_CODE = {3}
|
||
GROUP BY CASE WHEN SHOPTRADE = 1000 THEN 'MARKET' WHEN SHOPTRADE LIKE '2%' THEN 'SNACK'
|
||
WHEN SHOPTRADE LIKE '3%' THEN 'RESTAURANT' ELSE 'OTHER' END",
|
||
(string.IsNullOrEmpty(action_data) ? "" : " AND B.REGION_ID = " + action_data),
|
||
action_record.Split(',')[0].Split(' ')[0], action_record.Split(',')[1].Split(' ')[0], _PROVINCE_CODE)));
|
||
}
|
||
reString = JsonHelper.DataTableToJson(_DataTable, "Endaccount");
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
|
||
case "GetEndaccountByType":
|
||
try
|
||
{
|
||
_DataTable = (new Business.COMMODITY(_Transaction).ExecuteDataTable(
|
||
@"SELECT SUM(CASHPAY) AS TOTALPRICE,SUM(TICKETCOUNT) AS TOTALTICKET,
|
||
SUM(TOTALCOUNT) AS CURSELLCOUNT,TYPE_NAME,TYPE_INDEX
|
||
FROM HIGHWAY_SELLDATA.V_SERVERPARTDAILYSALES A,
|
||
HIGHWAY_STORAGE.V_SERVERPARTBYTYPE B
|
||
WHERE A.SERVERPART_ID = B.SERVERPART_ID AND TRUNC(STATISTICS_DATE) BETWEEN TO_DATE('" +
|
||
action_data.Split(',')[0].Split(' ')[0] + "','YYYY/MM/DD') AND TO_DATE('" +
|
||
action_data.Split(',')[1].Split(' ')[0] +
|
||
"','YYYY/MM/DD') GROUP BY TYPE_NAME,TYPE_INDEX ORDER BY TYPE_INDEX"));
|
||
|
||
reString = JsonHelper.DataTableToJson(_DataTable, "Endaccount");
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
#endregion
|
||
|
||
#region 获取会员码消费信息
|
||
case "GetWechatInfo":
|
||
try
|
||
{
|
||
try
|
||
{
|
||
action_record = HttpContext.Current.Request.Params["action_record"];
|
||
}
|
||
catch
|
||
{
|
||
action_record = "";
|
||
}
|
||
string url = "https://api.weixin.qq.com/sns/oauth2/access_token?appid=" + AppID +
|
||
"&secret=" + AppSecret + "&code=" + action_data + "&grant_type=authorization_code";
|
||
List<WechatInfoObject> _WechatInfoObjectObject = new List<WechatInfoObject>();
|
||
WechatInfoObject _WechatInfoObject = new WechatInfoObject();
|
||
//根据url创建HttpWebRequest对象
|
||
HttpWebRequest objRequest = (HttpWebRequest)WebRequest.Create(url);
|
||
objRequest.Method = "get";
|
||
//读取服务器返回信息
|
||
HttpWebResponse objResponse = (HttpWebResponse)objRequest.GetResponse();
|
||
//using作为语句,用于定义一个范围,在此范围的末尾将释放对象
|
||
using (StreamReader sr = new StreamReader(objResponse.GetResponseStream()))
|
||
{
|
||
//ReadToEnd适用于小文件的读取,一次性的返回整个文件
|
||
NJL.JObject _JObject = (NJL.JObject)NJ.JsonConvert.DeserializeObject(sr.ReadToEnd());
|
||
try
|
||
{
|
||
_WechatInfoObject.WECHAT_OPENID = _JObject["openid"].ToString();
|
||
if (string.IsNullOrEmpty(action_record))
|
||
{
|
||
USERMATCHING _USERMATCHING = new USERMATCHING(_Transaction);
|
||
_USERMATCHING.AddSearchParameter("WECHAT_OPENID", _JObject["openid"].ToString());
|
||
if (_USERMATCHING.Search())
|
||
{
|
||
_WechatInfoObject.RTWECHATPUSH_ID = _USERMATCHING.MEMBERSHIP_ID.ToString();
|
||
_WechatInfoObject.LINE_NUMBER = "1";
|
||
MACHINEINFO _MACHINEINFO = new MACHINEINFO(_Transaction);
|
||
_DataTable = _MACHINEINFO.ExecuteDataTable(
|
||
@"SELECT MAX(SUBSTR(TICKETCODE,LENGTH(TICKETCODE) - 5,2))
|
||
FROM HIGHWAY_EXCHANGE.T_OPERATELOG WHERE MEMBERSHIP_ID = " +
|
||
_USERMATCHING.MEMBERSHIP_ID + " AND TRUNC(RECODE_DATE) = TRUNC(SYSDATE)");
|
||
if (_DataTable.Rows.Count > 0 && _DataTable.Rows[0][0].ToString() != "")
|
||
{
|
||
_WechatInfoObject.LINE_NUMBER = (int.Parse(_DataTable.Rows[0][0].ToString()) + 1).ToString();
|
||
}
|
||
}
|
||
}
|
||
else
|
||
{
|
||
if (action_record.Split('|')[0] == "ScanAudit")
|
||
{
|
||
Business.RTWECHATPUSH _RTWECHATPUSH = new Business.RTWECHATPUSH(_Transaction);
|
||
_RTWECHATPUSH.AddSearchParameter("WECHAT_OPENID", _JObject["openid"].ToString());
|
||
if (_RTWECHATPUSH.Search())
|
||
{
|
||
if (_RTWECHATPUSH.PUSH_MODULE.Contains("W2VClFsAnvma-1412lx-fCxd_wWyxfN293TXAugG76c"))
|
||
{
|
||
_WechatInfoObject.RTWECHATPUSH_ID = _RTWECHATPUSH.RTWECHATPUSH_ID.ToString();
|
||
_WechatInfoObject.LINE_NUMBER = _RTWECHATPUSH.USER_NAME;
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
SuperMap.RealEstate.Utility.ErrorLogHelper.Write(ex);
|
||
}
|
||
sr.Close();
|
||
_WechatInfoObjectObject.Add(_WechatInfoObject);
|
||
reString = JsonHelper.ListToJson<WechatInfoObject>(_WechatInfoObjectObject, "WechatInfoObject");
|
||
}
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
|
||
case "GetMembershipConsumption":
|
||
try
|
||
{
|
||
action_record = HttpContext.Current.Request.Params["action_record"];
|
||
|
||
_DataTable = new Business.SERVERPART(_Transaction).ExecuteDataTable(@"SELECT
|
||
B.SERVERPART_NAME,C.SHOPNAME,A.RECODE_AMOUNT
|
||
FROM T_OPERATELOG@NEWEX A,HIGHWAY_STORAGE.T_SERVERPART B,HIGHWAY_STORAGE.T_SERVERPARTSHOP C
|
||
WHERE A.SERVERPARTCODE = B.SERVERPART_CODE AND A.SHOPCODE = C.SHOPCODE AND
|
||
B.SERVERPART_ID = C.SERVERPART_ID AND A.MEMBERSHIP_ID = " + action_data +
|
||
" AND SUBSTR(TICKETCODE,LENGTH(TICKETCODE) - 5,2) = '" + action_record.Split(',')[1] +
|
||
"' AND TRUNC(RECODE_DATE) = TO_DATE('" + action_record.Split(',')[0] + "','YYYY/MM/DD')");
|
||
|
||
reString = JsonHelper.DataTableToJson(_DataTable, "MembershipConsumption");
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
|
||
case "GetMembershipConsumptionList":
|
||
try
|
||
{
|
||
action_record = HttpContext.Current.Request.Params["action_record"];
|
||
|
||
_DataTable = new Business.SERVERPART(_Transaction).ExecuteDataTable(
|
||
"SELECT * FROM MEMBERSHIP_STORAGE.V_RECHARGERECORD WHERE MEMBERSHIP_ID = " +
|
||
action_data + (action_record == "1000" ? " AND RECODE_TYPE IN (1000,1010)" :
|
||
(action_record == "3000" ? "RECODE_TYPE IN (2000,2010,3000,3010)" :
|
||
" AND RECODE_TYPE NOT IN (1020,1030) AND RECODE_TYPE < 4000")) +
|
||
" ORDER BY RECODE_DATE DESC");
|
||
|
||
reString = JsonHelper.DataTableToJson(_DataTable, "MembershipConsumption");
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
|
||
case "GetMembershipInfo":
|
||
try
|
||
{
|
||
action_record = HttpContext.Current.Request.Params["action_record"];
|
||
|
||
_DataTable = new MACHINEINFO(_Transaction).ExecuteDataTable(
|
||
"SELECT * FROM HIGHWAY_EXCHANGE.T_MEMBERSHIP WHERE MEMBERSHIP_ID = " + action_data);
|
||
|
||
reString = JsonHelper.DataTableToJson(_DataTable, "MEMBERSHIP");
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
#endregion
|
||
|
||
#region 获取短信验证码
|
||
case "SearchSMSIdentityCode":
|
||
try
|
||
{
|
||
action_record = HttpContext.Current.Request.Params["action_record"];
|
||
_DataTable = new MACHINEINFO(_Transaction).ExecuteDataTable(
|
||
"SELECT 1 FROM HIGHWAY_EXCHANGE.T_SMSIDENTITY WHERE CELLPHONE_NUMBER = '" + action_data +
|
||
"' AND IDENTITY_DATE > SYSDATE - 5/1440 AND IDENTITY_CODE = '" + action_record + "'");
|
||
reString = JsonHelper.DataTableToJson(_DataTable, "SMSIdentity");
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
case "GetSMSIdentityCode":
|
||
try
|
||
{
|
||
string querys = "ParamString={0}&RecNum=" + action_data + "&SignName=" +
|
||
HttpUtility.UrlEncode("驿商科技") + "&TemplateCode=SMS_65555007";
|
||
string bodys = "", host = "http://sms.market.alicloudapi.com";
|
||
string url = host + "/singleSendSms";
|
||
HttpWebRequest httpRequest = null;
|
||
HttpWebResponse httpResponse = null;
|
||
string _IDENTITY_CODE = CreateRandomCode(6);
|
||
querys = string.Format(querys, System.Web.HttpUtility.UrlEncode("{\"code\":\"" +
|
||
_IDENTITY_CODE + "\",\"product\":\"骋客\"}"));
|
||
if (0 < querys.Length)
|
||
{
|
||
url = url + "?" + querys;
|
||
}
|
||
|
||
if (host.Contains("https://"))
|
||
{
|
||
ServicePointManager.ServerCertificateValidationCallback =
|
||
new RemoteCertificateValidationCallback(CheckValidationResult);
|
||
httpRequest = (HttpWebRequest)WebRequest.CreateDefault(new Uri(url));
|
||
}
|
||
else
|
||
{
|
||
httpRequest = (HttpWebRequest)WebRequest.Create(url);
|
||
}
|
||
httpRequest.Method = "get";
|
||
httpRequest.Headers.Add("Authorization", "APPCODE " + "99f7d21d35e647e98706f75109f4b655");
|
||
if (0 < bodys.Length)
|
||
{
|
||
byte[] data = Encoding.UTF8.GetBytes(bodys);
|
||
using (Stream stream = httpRequest.GetRequestStream())
|
||
{
|
||
stream.Write(data, 0, data.Length);
|
||
}
|
||
}
|
||
try
|
||
{
|
||
httpResponse = (HttpWebResponse)httpRequest.GetResponse();
|
||
|
||
//using作为语句,用于定义一个范围,在此范围的末尾将释放对象
|
||
using (StreamReader sr = new StreamReader(httpResponse.GetResponseStream()))
|
||
{
|
||
//ReadToEnd适用于小文件的读取,一次性的返回整个文件
|
||
NJL.JObject _JObject = (NJL.JObject)NJ.JsonConvert.DeserializeObject(sr.ReadToEnd());
|
||
try
|
||
{
|
||
if (_JObject["success"].ToString().ToLower() == "true")
|
||
{
|
||
MACHINEINFO _MACHINEINFO = new MACHINEINFO(_Transaction);
|
||
_MACHINEINFO.ExecuteNonQuery(@"INSERT INTO HIGHWAY_EXCHANGE.T_SMSIDENTITY (
|
||
SMSIDENTITY_ID,CELLPHONE_NUMBER,IDENTITY_DATE,IDENTITY_CODE)
|
||
VALUES (HIGHWAY_EXCHANGE.SEQ_SMSIDENTITY.NEXTVAL,'" + action_data +
|
||
"',SYSDATE,'" + _IDENTITY_CODE + "')", null);
|
||
}
|
||
reString = _JObject.ToString();
|
||
}
|
||
catch (Exception _Exception)
|
||
{
|
||
reString = "error:" + _Exception.Message;
|
||
}
|
||
sr.Close();
|
||
}
|
||
}
|
||
catch (WebException ex)
|
||
{
|
||
httpResponse = (HttpWebResponse)ex.Response;
|
||
}
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
#endregion
|
||
|
||
#region 获取会员内码
|
||
case "GetMembership_ID":
|
||
try
|
||
{
|
||
string MobileNumber = action_data.Split(',')[0], Membership_Card = action_data.Split(',')[1];
|
||
action_record = HttpContext.Current.Request.Params["action_record"];
|
||
if (string.IsNullOrEmpty(action_record))
|
||
{
|
||
reString = "";
|
||
}
|
||
else
|
||
{
|
||
MEMBERSHIP _MEMBERSHIP = new MEMBERSHIP(_Transaction);
|
||
_MEMBERSHIP.AddSearchParameter("MEMBERSHIP_CARD", Membership_Card);
|
||
_MEMBERSHIP.AddSearchParameter("MEMBERSHIP_MOBILEPHONE", MobileNumber);
|
||
if (_MEMBERSHIP.Search())
|
||
{
|
||
List<WechatInfoObject> _WechatInfoObjectObject = new List<WechatInfoObject>();
|
||
WechatInfoObject _WechatInfoObject = new WechatInfoObject();
|
||
|
||
_WechatInfoObject.WECHAT_OPENID = action_record;
|
||
_WechatInfoObject.LINE_NUMBER = "1";
|
||
_WechatInfoObject.RTWECHATPUSH_ID = _MEMBERSHIP.MEMBERSHIP_ID.ToString();
|
||
USERMATCHING _USERMATCHING = new USERMATCHING(_Transaction);
|
||
_USERMATCHING.AddSearchParameter("WECHAT_OPENID", action_record);
|
||
if (_USERMATCHING.Search())
|
||
{
|
||
reString = "已关联会员信息,请刷新后重试!";
|
||
}
|
||
else
|
||
{
|
||
_USERMATCHING.ResetProperty();
|
||
_USERMATCHING.MEMBERSHIP_ID = _MEMBERSHIP.MEMBERSHIP_ID;
|
||
_USERMATCHING.MEMBERSHIP_NAME = _MEMBERSHIP.MEMBERSHIP_NAME;
|
||
_USERMATCHING.MEMBERSHIP_CARD = _MEMBERSHIP.MEMBERSHIP_CARD;
|
||
_USERMATCHING.REALNAME = _MEMBERSHIP.MEMBERSHIP_NAME;
|
||
_USERMATCHING.CELLPHONE = string.IsNullOrEmpty(MobileNumber) ?
|
||
_MEMBERSHIP.MEMBERSHIP_MOBILEPHONE : MobileNumber;
|
||
_USERMATCHING.USERMATCHING_STATE = 1;
|
||
_USERMATCHING.WECHAT_OPENID = action_record;
|
||
Seller.Storage.Business.USERSERVERPART _USERSERVERPART = new Seller.Storage.Business.USERSERVERPART(_Transaction);
|
||
_USERSERVERPART.AddSearchParameter("WECHAT_OPENID", action_record);
|
||
if (_USERSERVERPART.Search())
|
||
{
|
||
_USERMATCHING.MALLUSER_ID = _USERSERVERPART.MALLUSER_ID;
|
||
_USERMATCHING.USERNAME = _USERSERVERPART.USERNAME;
|
||
_USERMATCHING.NICK = _USERSERVERPART.NICK;
|
||
}
|
||
else
|
||
{
|
||
Storage.Business.RTWECHATPUSH _RTWECHATPUSH = new Storage.Business.RTWECHATPUSH(_Transaction);
|
||
_RTWECHATPUSH.AddSearchParameter("WECHAT_OPENID", action_record);
|
||
if (_RTWECHATPUSH.Search())
|
||
{
|
||
_USERMATCHING.NICK = _RTWECHATPUSH.NICK_NAME;
|
||
}
|
||
}
|
||
_USERMATCHING.Insert();
|
||
|
||
_WechatInfoObjectObject.Add(_WechatInfoObject);
|
||
reString = JsonHelper.ListToJson<WechatInfoObject>(_WechatInfoObjectObject, "WechatInfoObject");
|
||
}
|
||
}
|
||
else
|
||
{
|
||
reString = "未找到会员信息,请至发卡处办理会员!";
|
||
}
|
||
}
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
#endregion
|
||
|
||
#region 获取实时营收数据
|
||
case "GetCurrentTotalAmount":
|
||
try
|
||
{
|
||
string provincecode = HttpContext.Current.Request.Form["provincecode"];
|
||
if (string.IsNullOrEmpty(provincecode))
|
||
{
|
||
provincecode = HttpContext.Current.Request.Params["provincecode"];
|
||
if (string.IsNullOrEmpty(provincecode))
|
||
{
|
||
provincecode = _PROVINCE_CODE;
|
||
}
|
||
else
|
||
{
|
||
FieldExplain _FieldExplain = new FieldExplain(_Transaction);
|
||
_FieldExplain.AddSearchParameter("FIELDEXPLAIN_FIELD", "DIVISION_CODE");
|
||
if (_FieldExplain.Search())
|
||
{
|
||
FieldEnum _FieldEnum = new FieldEnum(_Transaction);
|
||
_FieldEnum.AddSearchParameter("FieldExplain_ID", _FieldExplain.FieldExplain_ID);
|
||
_FieldEnum.AddSearchParameter("FIELDENUM_VALUE", provincecode);
|
||
if (_FieldEnum.Search())
|
||
{
|
||
provincecode = _FieldEnum.FieldEnum_ID.ToString();
|
||
}
|
||
}
|
||
}
|
||
}
|
||
else
|
||
{
|
||
FieldExplain _FieldExplain = new FieldExplain(_Transaction);
|
||
_FieldExplain.AddSearchParameter("FIELDEXPLAIN_FIELD", "DIVISION_CODE");
|
||
if (_FieldExplain.Search())
|
||
{
|
||
FieldEnum _FieldEnum = new FieldEnum(_Transaction);
|
||
_FieldEnum.AddSearchParameter("FieldExplain_ID", _FieldExplain.FieldExplain_ID);
|
||
_FieldEnum.AddSearchParameter("FIELDENUM_VALUE", provincecode);
|
||
if (_FieldEnum.Search())
|
||
{
|
||
provincecode = _FieldEnum.FieldEnum_ID.ToString();
|
||
}
|
||
}
|
||
}
|
||
|
||
_DataTable = (new CONFIGURATION(_Transaction).ExecuteDataTable(
|
||
@"SELECT NVL(TOTALCURRSELLCOUNT,0) AS TOTALPRICE,
|
||
TOTALCURRAMOUNT AS TOTALTICKET,CURSELLCOUNT
|
||
FROM HIGHWAY_STORAGE.V_SERVERCONNECTPOINTS
|
||
WHERE SERVERPART_NAME = '合计' AND PROVINCE_CODE = " + provincecode));
|
||
reString = JsonHelper.DataTableToJson(_DataTable, "CurrentData");
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
|
||
case "GetCurrentAmount":
|
||
try
|
||
{
|
||
_DataTable = (new CONFIGURATION(_Transaction).ExecuteDataTable(
|
||
"SELECT * FROM HIGHWAY_STORAGE.V_SERVERCONNECTPOINTS WHERE " +
|
||
(string.IsNullOrEmpty(action_data) ? "SERVERPART_NAME <> '合计'" : "SERVERPART_ID = " +
|
||
action_data) + " AND TOTALCURRSELLCOUNT IS NOT NULL ORDER BY TOTALCURRSELLCOUNT DESC"));
|
||
reString = JsonHelper.DataTableToJson(_DataTable, "CurrentData");
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
|
||
case "GetCurrentAmountByRegion":
|
||
try
|
||
{
|
||
_DataTable = (new CONFIGURATION(_Transaction).ExecuteDataTable(
|
||
@"SELECT SUM(TOTALCURRSELLCOUNT) AS TOTALPRICE,SUM(TOTALCURRAMOUNT) AS TOTALTICKET,
|
||
C.TYPE_NAME,SUM(CURSELLCOUNT) AS CURSELLCOUNT
|
||
FROM HIGHWAY_STORAGE.V_SERVERCONNECTPOINTS A,HIGHWAY_STORAGE.V_REGIONSERVERPART C
|
||
WHERE A.SERVERPART_ID = C.SERVERPART_ID GROUP BY C.TYPE_NAME"));
|
||
reString = JsonHelper.DataTableToJson(_DataTable, "CurrentData");
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
|
||
case "GetCurrentAmountByBusinessType":
|
||
try
|
||
{
|
||
_DataTable = new CONFIGURATION(_Transaction).ExecuteDataTable(string.Format(
|
||
@"SELECT SUM(CURRAMOUNT) AS TOTALPRICE,SUM(CURRSELLCOUNT) AS TOTALTICKET,
|
||
CASE WHEN SHOPTRADE = 1000 THEN 'MARKET' WHEN SHOPTRADE LIKE '2%' THEN 'SNACK'
|
||
WHEN SHOPTRADE LIKE '3%' THEN 'RESTAURANT' ELSE 'OTHER' END AS SHOPTRADE,
|
||
SUM(CURSELLCOUNT) AS CURSELLCOUNT
|
||
FROM HIGHWAY_STORAGE.V_CONNECTPOINT WHERE TRUNC(CONNECT_DATE) = TRUNC(SYSDATE) AND
|
||
SERVERPARTCODE NOT IN ('888888','330005') AND PROVINCE_CODE = {0}
|
||
GROUP BY CASE WHEN SHOPTRADE = 1000 THEN 'MARKET' WHEN SHOPTRADE LIKE '2%' THEN 'SNACK'
|
||
WHEN SHOPTRADE LIKE '3%' THEN 'RESTAURANT' ELSE 'OTHER' END", _PROVINCE_CODE));
|
||
reString = JsonHelper.DataTableToJson(_DataTable, "CurrentData");
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
|
||
case "GetCurrentCount":
|
||
try
|
||
{
|
||
_DataTable = (new CONFIGURATION(_Transaction).ExecuteDataTable(
|
||
@"SELECT COUNT(DISTINCT SERVERPART_ID) AS SERVERPARTCOUNT,
|
||
COUNT(DISTINCT SERVERPARTSHOP_ID || MACHINECODE) AS MACHINECOUNT,
|
||
SUM(CURSELLCOUNT) AS CURSELLCOUNT
|
||
FROM HIGHWAY_STORAGE.V_CONNECTPOINT WHERE CONNECT_DATE > TRUNC(SYSDATE) AND
|
||
SERVERPARTCODE NOT IN ('888888','330005') AND PROVINCE_CODE = " + _PROVINCE_CODE));
|
||
reString = JsonHelper.DataTableToJson(_DataTable, "CurrentData");
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
|
||
case "GetCurrentCountByShop":
|
||
try
|
||
{
|
||
_DataTable = (new CONFIGURATION(_Transaction).ExecuteDataTable(
|
||
@"SELECT COUNT(DISTINCT SERVERPARTSHOP_ID) AS SERVERPARTSHOPCOUNT,
|
||
COUNT(DISTINCT SERVERPARTSHOP_ID || MACHINECODE) AS MACHINECOUNT,
|
||
SERVERPART_ID,SERVERPARTSHOP_ID,SHOPNAME,SUM(CURSELLCOUNT) AS CURSELLCOUNT
|
||
FROM HIGHWAY_STORAGE.V_CONNECTPOINT WHERE CONNECT_DATE > SYSDATE - 1/144 AND
|
||
SERVERPARTCODE NOT IN ('888888','330005') AND PROVINCE_CODE = " + _PROVINCE_CODE +
|
||
" GROUP BY SERVERPART_ID,SERVERPARTSHOP_ID,SHOPNAME"));
|
||
reString = JsonHelper.DataTableToJson(_DataTable, "CurrentData");
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
|
||
case "GetCurrentAmountByType":
|
||
try
|
||
{
|
||
_DataTable = (new CONFIGURATION(_Transaction).ExecuteDataTable(
|
||
@"SELECT SUM(CURRAMOUNT) AS TOTALPRICE,SUM(CURRSELLCOUNT) AS TOTALTICKET,SHOPNAME,
|
||
SUM(CURSELLCOUNT) AS CURSELLCOUNT
|
||
FROM (SELECT CURRAMOUNT,CURRSELLCOUNT,CURSELLCOUNT,
|
||
CASE WHEN SHOPNAME LIKE '%驿佰购%' THEN '驿佰购'
|
||
WHEN SHOPNAME LIKE '%驿佰味%' THEN '驿佰味'
|
||
WHEN SHOPNAME LIKE '%五芳斋%' THEN '五芳斋'
|
||
WHEN SHOPNAME LIKE '%唯新小吃%' THEN '唯新小吃' END AS SHOPNAME
|
||
FROM HIGHWAY_STORAGE.V_CONNECTPOINT WHERE TRUNC(CONNECT_DATE) = TRUNC(SYSDATE) AND
|
||
SERVERPARTCODE NOT IN ('888888','330005') AND PROVINCE_CODE = " + _PROVINCE_CODE +
|
||
") GROUP BY SHOPNAME"));
|
||
reString = JsonHelper.DataTableToJson(_DataTable, "CurrentData");
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
#endregion
|
||
|
||
#region 获取异常数据
|
||
case "GetException":
|
||
try
|
||
{
|
||
_DataTable = (new Business.COMMODITY(_Transaction).ExecuteDataTable(@"SELECT * FROM (
|
||
SELECT A.*,B.FIELDENUM_NAME FROM HIGHWAY_SELLDATA.V_SALEEXCEPTION A,PLATFORM_DICTIONARY.V_FIELDENUM B
|
||
WHERE TRUNC(EXCEPTION_DATE) = TRUNC(SYSDATE) AND A.EXCEPTIONTYPE = B.FIELDENUM_VALUE AND
|
||
B.FIELDEXPLAIN_FIELD = 'EXCEPTION_TYPE' AND EXCEPTIONTYPE NOT IN ('1019','1029','2029') AND
|
||
SERVERPARTCODE NOT IN ('888888','330005') AND EXCEPTIONTYPE < '9000'
|
||
ORDER BY EXCEPTION_DATE DESC) WHERE ROWNUM <= 100"));
|
||
reString = JsonHelper.DataTableToJson(_DataTable, "Exception");
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
#endregion
|
||
|
||
#region 获取微信人员
|
||
case "GetWechatInfoByCode":
|
||
try
|
||
{
|
||
try
|
||
{
|
||
action_record = HttpContext.Current.Request.Params["action_record"];
|
||
}
|
||
catch
|
||
{
|
||
action_record = "";
|
||
}
|
||
string url = "https://api.weixin.qq.com/sns/oauth2/access_token?appid=" + AppID +
|
||
"&secret=" + AppSecret + "&code=" + action_data + "&grant_type=authorization_code";
|
||
List<WechatInfoObject> _WechatInfoObjectObject = new List<WechatInfoObject>();
|
||
WechatInfoObject _WechatInfoObject = new WechatInfoObject();
|
||
//根据url创建HttpWebRequest对象
|
||
HttpWebRequest objRequest = (HttpWebRequest)WebRequest.Create(url);
|
||
objRequest.Method = "get";
|
||
//读取服务器返回信息
|
||
HttpWebResponse objResponse = (HttpWebResponse)objRequest.GetResponse();
|
||
//using作为语句,用于定义一个范围,在此范围的末尾将释放对象
|
||
using (StreamReader sr = new StreamReader(objResponse.GetResponseStream()))
|
||
{
|
||
//ReadToEnd适用于小文件的读取,一次性的返回整个文件
|
||
NJL.JObject _JObject = (NJL.JObject)NJ.JsonConvert.DeserializeObject(sr.ReadToEnd());
|
||
try
|
||
{
|
||
_WechatInfoObject.WECHAT_OPENID = _JObject["openid"].ToString();
|
||
Business.RTWECHATPUSH _RTWECHATPUSH = new Business.RTWECHATPUSH(_Transaction);
|
||
_RTWECHATPUSH.AddSearchParameter("WECHAT_OPENID", _WechatInfoObject.WECHAT_OPENID);
|
||
if (_RTWECHATPUSH.Search() && !string.IsNullOrEmpty(action_record))
|
||
{
|
||
UniformSend.Storage.Business.PURCHASE _PURCHASE = new UniformSend.Storage.Business.PURCHASE(_Transaction);
|
||
_PURCHASE.PURCHASE_ID_Encrypt = action_record.Split(',')[1].ToEncrypt();
|
||
if (_PURCHASE.Select())
|
||
{
|
||
if (_RTWECHATPUSH.PUSH_MODULE.Contains("3RK4FPn6JMBOByVXU8CruLpBbNUr8iCSMdFlt6ukBKM") &&
|
||
(("," + _RTWECHATPUSH.SERVERPART_IDS + ",").Contains("," + _serverpart_id + ",") ||
|
||
("," + _RTWECHATPUSH.SERVERPART_IDS + ",").Contains("," + _PURCHASE.SERVERPART_ID + ",")))
|
||
{
|
||
_WechatInfoObject.LINE_NUMBER = _RTWECHATPUSH.USER_NAME;
|
||
_WechatInfoObject.RTWECHATPUSH_ID = _RTWECHATPUSH.RTWECHATPUSH_ID.ToString();
|
||
}
|
||
}
|
||
}
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message + "(" + _JObject + ")";
|
||
break;
|
||
//SuperMap.RealEstate.Utility.ErrorLogHelper.Write(ex);
|
||
}
|
||
sr.Close();
|
||
}
|
||
_WechatInfoObjectObject.Add(_WechatInfoObject);
|
||
reString = JsonHelper.ListToJson<WechatInfoObject>(_WechatInfoObjectObject, "WechatInfoObject");
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
|
||
case "WechatPushPerson":
|
||
try
|
||
{
|
||
_DataTable = new Business.RTWECHATPUSH(_Transaction).ExecuteDataTable(
|
||
"SELECT * FROM HIGHWAY_STORAGE.T_RTWECHATPUSH WHERE " + (string.IsNullOrEmpty(action_data) ?
|
||
"RTWECHATPUSH_STATE = 1" : "WECHAT_OPENID = '" + action_data + "'"));
|
||
|
||
reString = JsonHelper.DataTableToJson(_DataTable, "RTWECHATPUSHObject");
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
|
||
case "GetAccessToken":
|
||
try
|
||
{
|
||
string url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=" +
|
||
AppID + "&secret=" + AppSecret;
|
||
//根据url创建HttpWebRequest对象
|
||
HttpWebRequest objRequest = (HttpWebRequest)WebRequest.Create(url);
|
||
objRequest.Method = "get";
|
||
//读取服务器返回信息
|
||
HttpWebResponse objResponse = (HttpWebResponse)objRequest.GetResponse();
|
||
//using作为语句,用于定义一个范围,在此范围的末尾将释放对象
|
||
using (StreamReader sr = new StreamReader(objResponse.GetResponseStream()))
|
||
{
|
||
//ReadToEnd适用于小文件的读取,一次性的返回整个文件
|
||
NJL.JObject _JObject = (NJL.JObject)NJ.JsonConvert.DeserializeObject(sr.ReadToEnd());
|
||
try
|
||
{
|
||
reString = _JObject["access_token"].ToString();
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "错误代码:" + _JObject["errcode"].ToString() + ",错误原因:" +
|
||
_JObject["errmsg"].ToString() + "(" + ex.Message + ")";
|
||
}
|
||
sr.Close();
|
||
}
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
|
||
case "WechatPersonInfo":
|
||
try
|
||
{
|
||
try
|
||
{
|
||
action_record = HttpContext.Current.Request.Params["action_record"];
|
||
}
|
||
catch
|
||
{
|
||
action_record = "";
|
||
}
|
||
string url = "https://api.weixin.qq.com/cgi-bin/user/info?access_token=" + action_data +
|
||
"&openid=" + action_record + "&lang=zh_CN";
|
||
//根据url创建HttpWebRequest对象
|
||
HttpWebRequest objRequest = (HttpWebRequest)WebRequest.Create(url);
|
||
objRequest.Method = "get";
|
||
//读取服务器返回信息
|
||
HttpWebResponse objResponse = (HttpWebResponse)objRequest.GetResponse();
|
||
//using作为语句,用于定义一个范围,在此范围的末尾将释放对象
|
||
using (StreamReader sr = new StreamReader(objResponse.GetResponseStream()))
|
||
{
|
||
//ReadToEnd适用于小文件的读取,一次性的返回整个文件
|
||
NJL.JObject _JObject = (NJL.JObject)NJ.JsonConvert.DeserializeObject(sr.ReadToEnd());
|
||
if (!string.IsNullOrEmpty(_JObject["headimgurl"].ToString()))
|
||
{
|
||
Business.RTWECHATPUSH _RTWECHATPUSH = new Business.RTWECHATPUSH(_Transaction);
|
||
if (_RTWECHATPUSH.GetCount(
|
||
"WHERE headimgurl IS NULL AND WECHAT_OPENID = '" + action_record + "'") > 0)
|
||
{
|
||
_RTWECHATPUSH.ExecuteNonQuery("UPDATE HIGHWAY_STORAGE.T_RTWECHATPUSH SET headimgurl = '" +
|
||
_JObject["headimgurl"].ToString() + "' WHERE WECHAT_OPENID = '" + action_record + "'", null);
|
||
}
|
||
}
|
||
reString = _JObject.ToString();
|
||
sr.Close();
|
||
}
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
#endregion
|
||
|
||
#region 获取配送单信息
|
||
case "CopyDeliverIndex":
|
||
try
|
||
{
|
||
string FileName = _FilePath + _CopyPath + action_data + ".html";
|
||
FileInfo _FileInfo = new FileInfo(FileName);
|
||
if (_FileInfo.Exists)
|
||
{
|
||
reString = "https://open.weixin.qq.com/connect/oauth2/authorize?appid=wx85e69a5fb601be16&redirect_uri=" +
|
||
HttpUtility.UrlEncode(_UrlAddress + action_data + ".html") +
|
||
"&response_type=code&scope=snsapi_base&connect_redirect=1#wechat_redirect";
|
||
}
|
||
else
|
||
{
|
||
DirectoryInfo _DirectoryInfo = new DirectoryInfo(_FilePath);
|
||
if (_DirectoryInfo.Exists)
|
||
{
|
||
foreach (FileInfo fileinfo in _DirectoryInfo.GetFiles("index.html", SearchOption.TopDirectoryOnly))
|
||
{
|
||
//FileStream _FileStream = new FileStream(FileName, FileMode.Create);
|
||
//fileinfo.CopyTo(_FileStream.Name);
|
||
//_FileStream.Flush();
|
||
//_FileStream.Close();
|
||
fileinfo.CopyTo(FileName);
|
||
|
||
reString = "https://open.weixin.qq.com/connect/oauth2/authorize?appid=wx85e69a5fb601be16&redirect_uri=" +
|
||
HttpUtility.UrlEncode(_UrlAddress + action_data + ".html") +
|
||
"&response_type=code&scope=snsapi_base&connect_redirect=1#wechat_redirect";
|
||
break;
|
||
}
|
||
}
|
||
}
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
case "GetGoodsDeliver":
|
||
try
|
||
{
|
||
action_record = HttpContext.Current.Request.Params["action_record"];
|
||
if (string.IsNullOrEmpty(action_record))
|
||
{
|
||
reString = "";
|
||
}
|
||
else
|
||
{
|
||
_DataTable = (new SRSSB.GOODSDELIVER(_Transaction).ExecuteDataTable(
|
||
"SELECT * FROM SELLER_STORAGE.V_GOODSDELIVER WHERE GOODSDELIVER_CODE = '" +
|
||
action_data + "' AND PURCHASE_ID = " + action_record));
|
||
|
||
reString = JsonHelper.DataTableToJson(_DataTable, "Exception");
|
||
}
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
case "GetGoodsDeliverDtail":
|
||
try
|
||
{
|
||
action_record = HttpContext.Current.Request.Params["action_record"];
|
||
if (string.IsNullOrEmpty(action_record))
|
||
{
|
||
reString = "";
|
||
}
|
||
else
|
||
{
|
||
_DataTable = (new SRSSB.GOODSDELIVER(_Transaction).ExecuteDataTable(
|
||
"SELECT * FROM SELLER_STORAGE.V_GOODSDELIVERBILL WHERE GOODSDELIVER_CODE = '" +
|
||
action_data + "' AND PURCHASE_ID = " + action_record));
|
||
|
||
reString = JsonHelper.DataTableToJson(_DataTable, "Exception");
|
||
}
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
#endregion
|
||
|
||
#region 获取入库信息
|
||
case "DeliverCodeCheck":
|
||
try
|
||
{
|
||
if (action_data.Split(',').Length != 5)
|
||
{
|
||
reString = "单据无效";
|
||
}
|
||
else
|
||
{
|
||
SRSSB.GOODSDELIVER _GOODSDELIVER = new SRSSB.GOODSDELIVER(_Transaction);
|
||
_DataTable = _GOODSDELIVER.ExecuteDataTable(
|
||
"SELECT * FROM SELLER_STORAGE.V_GOODSDELIVER WHERE GOODSDELIVER_CODE = '" +
|
||
action_data.Split(',')[0] + "' AND PURCHASE_ID = " + action_data.Split(',')[1]);
|
||
if (_DataTable.Rows.Count > 0)
|
||
{
|
||
switch (_DataTable.Rows[0]["PURCHASE_STATE"].ToString())
|
||
{
|
||
case "2000":
|
||
reString = "等待配送中";
|
||
break;
|
||
case "2010":
|
||
reString = "单据有效";
|
||
if (_GOODSDELIVER.ExecuteDataTable(
|
||
"SELECT 1 FROM SELLER_STORAGE.T_OPERATELOG WHERE GOODSDELIVER_CODE = '" +
|
||
action_data.Split(',')[0] + "' AND PURCHASE_ID = " +
|
||
action_data.Split(',')[1]).Rows.Count == 0)
|
||
{
|
||
_GOODSDELIVER.ExecuteNonQuery(@"INSERT INTO SELLER_STORAGE.T_OPERATELOG
|
||
(OPERATELOG_ID,GOODSDELIVER_CODE,PURCHASE_ID,SERVERPARTSHOP_ID,
|
||
CASHWORKER_NAME,RTWECHATPUSH_ID,WECHAT_OPENID,OPERATELOG_DATE)
|
||
SELECT SELLER_STORAGE.SEQ_OPERATELOG.NEXTVAL,GOODSDELIVER_CODE,
|
||
PURCHASE_ID,SERVERPARTSHOP_ID,'" + action_data.Split(',')[2] +
|
||
"'," + action_data.Split(',')[3] + ",'" + action_data.Split(',')[4] +
|
||
"',SYSDATE FROM SELLER_STORAGE.V_GOODSDELIVER WHERE GOODSDELIVER_CODE = '" +
|
||
action_data.Split(',')[0] + "' AND PURCHASE_ID = " + action_data.Split(',')[1], null);
|
||
}
|
||
break;
|
||
case "3000":
|
||
reString = "单据已接收";
|
||
break;
|
||
case "4000":
|
||
reString = "单据已入库";
|
||
break;
|
||
}
|
||
}
|
||
else
|
||
{
|
||
reString = "单据无效";
|
||
}
|
||
}
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
#endregion
|
||
|
||
#region 获取结账、收银员、单品数据
|
||
case "ScanCodeUpdate":
|
||
try
|
||
{
|
||
action_data = HttpUtility.UrlDecode(action_data);
|
||
action_record = HttpContext.Current.Request.Params["action_record"];
|
||
bool Flag = true;
|
||
decimal CONTENT_LENGTH = 0, _Length = 0, _RowCount = 0, _RecordCount = 0;
|
||
string _EndAccount = "", _PersonSell = "", _CommoditySale = "", TimeString = "";
|
||
DateTime _MaxDate = DateTime.Parse("2000/01/01");
|
||
foreach (string str in action_data.Split('&'))
|
||
{
|
||
switch (str.Split('=')[0].ToUpper())
|
||
{
|
||
case "ENDACCOUNT":
|
||
CONTENT_LENGTH += str.Split('=')[1].Length;
|
||
_EndAccount = str.Split('=')[1];
|
||
break;
|
||
case "PERSONSELL":
|
||
CONTENT_LENGTH += str.Split('=')[1].Length;
|
||
_PersonSell = str.Split('=')[1];
|
||
break;
|
||
case "COMMODITYSALE":
|
||
CONTENT_LENGTH += str.Split('=')[1].Length;
|
||
_CommoditySale = str.Split('=')[1];
|
||
break;
|
||
case "LENGTH":
|
||
_Length = decimal.Parse(str.Split('=')[1]);
|
||
break;
|
||
case "ROWCOUNT":
|
||
_RowCount = decimal.Parse(str.Split('=')[1]);
|
||
break;
|
||
case "RECORDCOUNT":
|
||
_RecordCount = decimal.Parse(str.Split('=')[1]);
|
||
break;
|
||
}
|
||
}
|
||
if (_Length != CONTENT_LENGTH)
|
||
{
|
||
reString = "0";
|
||
}
|
||
else
|
||
{
|
||
MACHINEINFO _MACHINEINFO = new MACHINEINFO(_Transaction);
|
||
if (!string.IsNullOrEmpty(_EndAccount))
|
||
{
|
||
if (_MACHINEINFO.ExecuteDataTable("SELECT 1 FROM HIGHWAY_EXCHANGE.T_SCANCODEUPDATE WHERE SCAN_CONTENT = '" +
|
||
_EndAccount + "' AND SCAN_TYPE = 'EndAccount' AND CONTENT_LENGTH = " + _Length + " AND ROW_COUNT = " +
|
||
_RowCount + " AND RECORD_COUNT = " + _RecordCount).Rows.Count == 0)
|
||
{
|
||
if (action_record == "1")
|
||
{
|
||
_MACHINEINFO.ExecuteNonQuery(@"INSERT INTO HIGHWAY_EXCHANGE.T_SCANCODEUPDATE (
|
||
SCANCODEUPDATE_ID,SCAN_TYPE,SCAN_CONTENT,CONTENT_LENGTH,ROW_COUNT,RECORD_COUNT)
|
||
VALUES (HIGHWAY_EXCHANGE.SEQ_SCANCODEUPDATE.NEXTVAL,'EndAccount','" + _EndAccount +
|
||
"'," + _Length + "," + _RowCount + "," + _RecordCount + ")", null);
|
||
}
|
||
else
|
||
{
|
||
Flag = false;
|
||
}
|
||
}
|
||
TimeString = _EndAccount.Split('|')[2];
|
||
TimeString = TimeString.Substring(0, 4) + "/" + TimeString.Substring(4, 2) + "/" +
|
||
TimeString.Substring(6, 2) + " " + TimeString.Substring(8, 2) + ":" +
|
||
TimeString.Substring(10, 2) + ":" + TimeString.Substring(12, 2);
|
||
if (DateTime.Parse(TimeString) > _MaxDate)
|
||
{
|
||
_MaxDate = DateTime.Parse(TimeString);
|
||
reString = ConvertDataTimeLong(_MaxDate).ToString() + _EndAccount.Split('|')[4];
|
||
}
|
||
}
|
||
if (!string.IsNullOrEmpty(_PersonSell))
|
||
{
|
||
foreach (string PersonSellString in _PersonSell.Split(','))
|
||
{
|
||
if (_MACHINEINFO.ExecuteDataTable("SELECT 1 FROM HIGHWAY_EXCHANGE.T_SCANCODEUPDATE WHERE SCAN_CONTENT = '" +
|
||
PersonSellString + "' AND SCAN_TYPE = 'PersonSell' AND CONTENT_LENGTH = " + _Length +
|
||
" AND ROW_COUNT = " + _RowCount + " AND RECORD_COUNT = " + _RecordCount).Rows.Count == 0)
|
||
{
|
||
if (action_record == "1")
|
||
{
|
||
_MACHINEINFO.ExecuteNonQuery(@"INSERT INTO HIGHWAY_EXCHANGE.T_SCANCODEUPDATE (
|
||
SCANCODEUPDATE_ID,SCAN_TYPE,SCAN_CONTENT,CONTENT_LENGTH,ROW_COUNT,RECORD_COUNT)
|
||
VALUES (HIGHWAY_EXCHANGE.SEQ_SCANCODEUPDATE.NEXTVAL,'PersonSell','" + PersonSellString +
|
||
"'," + _Length + "," + _RowCount + "," + _RecordCount + ")", null);
|
||
}
|
||
else
|
||
{
|
||
Flag = false;
|
||
}
|
||
}
|
||
|
||
TimeString = PersonSellString.Split('|')[5];
|
||
TimeString = TimeString.Substring(0, 4) + "/" + TimeString.Substring(4, 2) + "/" +
|
||
TimeString.Substring(6, 2) + " " + TimeString.Substring(8, 2) + ":" +
|
||
TimeString.Substring(10, 2) + ":" + TimeString.Substring(12, 2);
|
||
if (DateTime.Parse(TimeString) > _MaxDate)
|
||
{
|
||
_MaxDate = DateTime.Parse(TimeString);
|
||
reString = ConvertDataTimeLong(_MaxDate).ToString() + PersonSellString.Split('|')[2];
|
||
}
|
||
}
|
||
}
|
||
if (!string.IsNullOrEmpty(_CommoditySale))
|
||
{
|
||
if (_MACHINEINFO.ExecuteDataTable("SELECT 1 FROM HIGHWAY_EXCHANGE.T_SCANCODEUPDATE WHERE SCAN_CONTENT = '" +
|
||
_CommoditySale + "' AND SCAN_TYPE = 'CommoditySale' AND CONTENT_LENGTH = " + _Length +
|
||
" AND ROW_COUNT = " + _RowCount + " AND RECORD_COUNT = " + _RecordCount).Rows.Count == 0)
|
||
{
|
||
if (action_record == "1")
|
||
{
|
||
_MACHINEINFO.ExecuteNonQuery(@"INSERT INTO HIGHWAY_EXCHANGE.T_SCANCODEUPDATE (
|
||
SCANCODEUPDATE_ID,SCAN_TYPE,SCAN_CONTENT,CONTENT_LENGTH,ROW_COUNT,RECORD_COUNT)
|
||
VALUES (HIGHWAY_EXCHANGE.SEQ_SCANCODEUPDATE.NEXTVAL,'CommoditySale','" + _CommoditySale +
|
||
"'," + _Length + "," + _RowCount + "," + _RecordCount + ")", null);
|
||
}
|
||
else
|
||
{
|
||
Flag = false;
|
||
}
|
||
}
|
||
DataTable DataTableSale = _MACHINEINFO.ExecuteDataTable(
|
||
"SELECT DISTINCT ROW_COUNT FROM HIGHWAY_EXCHANGE.T_SCANCODEUPDATE WHERE SCAN_CONTENT LIKE '%|" +
|
||
_CommoditySale.Split('|')[1] + "|" + _CommoditySale.Split('|')[2] + "|" +
|
||
_CommoditySale.Split('|')[3] + "|" + _CommoditySale.Split('|')[4] +
|
||
"|%' AND SCAN_TYPE = 'CommoditySale' ORDER BY ROW_COUNT");
|
||
if (DataTableSale.Rows.Count == _RecordCount)
|
||
{
|
||
TimeString = _CommoditySale.Split('|')[4];
|
||
TimeString = TimeString.Substring(0, 4) + "/" + TimeString.Substring(4, 2) + "/" +
|
||
TimeString.Substring(6, 2) + " " + TimeString.Substring(8, 2) + ":" +
|
||
TimeString.Substring(10, 2) + ":" + TimeString.Substring(12, 2);
|
||
if (DateTime.Parse(TimeString) > _MaxDate)
|
||
{
|
||
_MaxDate = DateTime.Parse(TimeString);
|
||
reString = ConvertDataTimeLong(_MaxDate).ToString() + _CommoditySale.Split('|')[2];
|
||
}
|
||
}
|
||
else
|
||
{
|
||
foreach (DataRow _DataRow in DataTableSale.Rows)
|
||
{
|
||
if (!("," + reString + ",").Contains("," + _DataRow["ROW_COUNT"].ToString() + ","))
|
||
{
|
||
reString += (string.IsNullOrEmpty(reString) ? "" : ",") + _DataRow["ROW_COUNT"].ToString();
|
||
}
|
||
}
|
||
reString = "2:" + reString;
|
||
}
|
||
}
|
||
if (!Flag)
|
||
{
|
||
reString = "0";
|
||
}
|
||
}
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
_Transaction.Rollback();
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
|
||
case "ScanCodeUpdate_New":
|
||
try
|
||
{
|
||
action_data = HttpUtility.UrlDecode(action_data);
|
||
action_record = HttpContext.Current.Request.Params["action_record"];
|
||
bool Flag = true;
|
||
decimal CONTENT_LENGTH = 0, _Length = 0, _RowCount = 0, _RecordCount = 0, _ScanIndex = 0, _ScanCount = 0;
|
||
string _ScanAudit = "", _EndAccount = "", _PersonSell = "", _CommoditySale = "", TimeString = "", _CheckCode = "", _WeChatCode = "";
|
||
DateTime _MaxDate = DateTime.Parse("2000/01/01");
|
||
foreach (string str in action_data.Split('&'))
|
||
{
|
||
switch (str.Split('=')[0].ToUpper())
|
||
{
|
||
case "SCANAUDIT":
|
||
//CONTENT_LENGTH += str.Split('=')[1].Length;
|
||
//_ScanAudit = str.Split('=')[1];
|
||
//break;
|
||
case "ENDACCOUNT":
|
||
CONTENT_LENGTH += str.Split('=')[1].Length;
|
||
_EndAccount = str.Split('=')[1];
|
||
break;
|
||
case "PERSONSELL":
|
||
CONTENT_LENGTH += str.Split('=')[1].Length;
|
||
_PersonSell = str.Split('=')[1];
|
||
break;
|
||
case "COMMODITYSALE":
|
||
CONTENT_LENGTH += str.Split('=')[1].Length;
|
||
_CommoditySale = str.Split('=')[1];
|
||
break;
|
||
case "LENGTH":
|
||
_Length = decimal.Parse(str.Split('=')[1]);
|
||
break;
|
||
case "ROWCOUNT":
|
||
_RowCount = decimal.Parse(str.Split('=')[1]);
|
||
break;
|
||
case "RECORDCOUNT":
|
||
_RecordCount = decimal.Parse(str.Split('=')[1]);
|
||
break;
|
||
case "CHECKCODE":
|
||
_CheckCode = str.Split('=')[1];
|
||
break;
|
||
case "SCANINDEX":
|
||
_ScanIndex = decimal.Parse(str.Split('=')[1]);
|
||
break;
|
||
case "SCANCOUNT":
|
||
_ScanCount = decimal.Parse(str.Split('=')[1]);
|
||
break;
|
||
case "CODE":
|
||
_WeChatCode = str.Split('=')[1];
|
||
break;
|
||
}
|
||
}
|
||
if (_Length != CONTENT_LENGTH)
|
||
{
|
||
reString = "0";
|
||
}
|
||
else
|
||
{
|
||
MACHINEINFO _MACHINEINFO = new MACHINEINFO(_Transaction);
|
||
if (!string.IsNullOrEmpty(_EndAccount))
|
||
{
|
||
if (_MACHINEINFO.ExecuteDataTable("SELECT 1 FROM HIGHWAY_EXCHANGE.T_SCANCODEUPDATE WHERE SCAN_CONTENT = '" +
|
||
_EndAccount + "' AND SCAN_TYPE = 'EndAccount' AND CONTENT_LENGTH = " + _Length).Rows.Count == 0)
|
||
{
|
||
if (action_record == "1")
|
||
{
|
||
_MACHINEINFO.ExecuteNonQuery(@"INSERT INTO HIGHWAY_EXCHANGE.T_SCANCODEUPDATE (
|
||
SCANCODEUPDATE_ID,SCAN_TYPE,SCAN_CONTENT,CONTENT_LENGTH,ROW_COUNT,
|
||
RECORD_COUNT,CHECK_CODE,SCAN_INDEX,SCAN_COUNT)
|
||
VALUES (HIGHWAY_EXCHANGE.SEQ_SCANCODEUPDATE.NEXTVAL,'EndAccount','" + _EndAccount +
|
||
"'," + _Length + "," + _RowCount + "," + _RecordCount + ",'" + _CheckCode + "'," +
|
||
_ScanIndex + "," + _ScanCount + ")", null);
|
||
}
|
||
else
|
||
{
|
||
Flag = false;
|
||
}
|
||
}
|
||
else
|
||
{
|
||
if (action_record == "1")
|
||
{
|
||
_MACHINEINFO.ExecuteNonQuery(@"UPDATE HIGHWAY_EXCHANGE.T_SCANCODEUPDATE SET CHECK_CODE = '" +
|
||
_CheckCode + "',SCAN_INDEX = " + _ScanIndex + ",SCAN_COUNT = " + _ScanCount +
|
||
" WHERE SCAN_TYPE = 'EndAccount' AND SCAN_CONTENT = '" + _EndAccount +
|
||
"' AND CONTENT_LENGTH = " + _Length, null);
|
||
}
|
||
else
|
||
{
|
||
Flag = false;
|
||
}
|
||
}
|
||
|
||
if (!string.IsNullOrEmpty(_PersonSell))
|
||
{
|
||
foreach (string PersonSellString in _PersonSell.Split(','))
|
||
{
|
||
if (_MACHINEINFO.ExecuteDataTable("SELECT 1 FROM HIGHWAY_EXCHANGE.T_SCANCODEUPDATE WHERE SCAN_CONTENT = '" +
|
||
PersonSellString + "' AND SCAN_TYPE = 'PersonSell' AND CONTENT_LENGTH = " + _Length).Rows.Count == 0)
|
||
{
|
||
if (action_record == "1")
|
||
{
|
||
_MACHINEINFO.ExecuteNonQuery(@"INSERT INTO HIGHWAY_EXCHANGE.T_SCANCODEUPDATE (
|
||
SCANCODEUPDATE_ID,SCAN_TYPE,SCAN_CONTENT,CONTENT_LENGTH,ROW_COUNT,
|
||
RECORD_COUNT,CHECK_CODE,SCAN_INDEX,SCAN_COUNT)
|
||
VALUES (HIGHWAY_EXCHANGE.SEQ_SCANCODEUPDATE.NEXTVAL,'PersonSell','" + PersonSellString +
|
||
"'," + _Length + "," + _RowCount + "," + _RecordCount + ",'" + _CheckCode +
|
||
"'," + _ScanIndex + "," + _ScanCount + ")", null);
|
||
}
|
||
else
|
||
{
|
||
Flag = false;
|
||
}
|
||
}
|
||
else
|
||
{
|
||
if (action_record == "1")
|
||
{
|
||
_MACHINEINFO.ExecuteNonQuery(@"UPDATE HIGHWAY_EXCHANGE.T_SCANCODEUPDATE SET CHECK_CODE = '" +
|
||
_CheckCode + "',SCAN_INDEX = " + _ScanIndex + ",SCAN_COUNT = " + _ScanCount +
|
||
" WHERE SCAN_CONTENT = '" + PersonSellString +
|
||
"' AND SCAN_TYPE = 'PersonSell' AND CONTENT_LENGTH = " + _Length, null);
|
||
}
|
||
else
|
||
{
|
||
Flag = false;
|
||
}
|
||
}
|
||
}
|
||
}
|
||
|
||
string strMd5 = _MACHINEINFO.ExecuteDataTable("SELECT WM_CONCAT(SCAN_CONTENT) FROM (" +
|
||
"SELECT SCAN_CONTENT FROM HIGHWAY_EXCHANGE.T_SCANCODEUPDATE WHERE CHECK_CODE = '" +
|
||
_CheckCode + "' AND SCAN_TYPE = 'EndAccount' ORDER BY SCAN_INDEX)").Rows[0][0].ToString();
|
||
if (strMd5 != "")
|
||
{
|
||
strMd5 = CreateMD5(strMd5);
|
||
if (strMd5 == _CheckCode)
|
||
{
|
||
reString = strMd5;
|
||
}
|
||
else
|
||
{
|
||
TimeString = _EndAccount.Split('|')[2];
|
||
TimeString = TimeString.Substring(0, 4) + "/" + TimeString.Substring(4, 2) + "/" +
|
||
TimeString.Substring(6, 2) + " " + TimeString.Substring(8, 2) + ":" +
|
||
TimeString.Substring(10, 2) + ":" + TimeString.Substring(12, 2);
|
||
reString = "3|" + TimeString;
|
||
}
|
||
}
|
||
}
|
||
if (!string.IsNullOrEmpty(_CommoditySale))
|
||
{
|
||
if (_MACHINEINFO.ExecuteDataTable("SELECT 1 FROM HIGHWAY_EXCHANGE.T_SCANCODEUPDATE WHERE SCAN_CONTENT = '" +
|
||
_CommoditySale + "' AND SCAN_TYPE = 'CommoditySale' AND CONTENT_LENGTH = " + _Length +
|
||
" AND ROW_COUNT = " + _RowCount + " AND RECORD_COUNT = " + _RecordCount).Rows.Count == 0)
|
||
{
|
||
if (action_record == "1")
|
||
{
|
||
_MACHINEINFO.ExecuteNonQuery(@"INSERT INTO HIGHWAY_EXCHANGE.T_SCANCODEUPDATE (SCANCODEUPDATE_ID,
|
||
SCAN_TYPE,SCAN_CONTENT,CONTENT_LENGTH,ROW_COUNT,RECORD_COUNT,CHECK_CODE,SCAN_INDEX,SCAN_COUNT)
|
||
VALUES (HIGHWAY_EXCHANGE.SEQ_SCANCODEUPDATE.NEXTVAL,'CommoditySale','" + _CommoditySale +
|
||
"'," + _Length + "," + _RowCount + "," + _RecordCount + ",'" + _CheckCode + "'," +
|
||
_ScanIndex + "," + _ScanCount + ")", null);
|
||
}
|
||
else
|
||
{
|
||
Flag = false;
|
||
}
|
||
}
|
||
else
|
||
{
|
||
if (action_record == "1")
|
||
{
|
||
_MACHINEINFO.ExecuteNonQuery(@"UPDATE HIGHWAY_EXCHANGE.T_SCANCODEUPDATE SET CHECK_CODE = '" +
|
||
_CheckCode + "',SCAN_INDEX = " + _ScanIndex + ",SCAN_COUNT = " + _ScanCount +
|
||
" WHERE SCAN_CONTENT = '" + _CommoditySale + "' AND CONTENT_LENGTH = " + _Length +
|
||
" AND SCAN_TYPE = 'CommoditySale' AND ROW_COUNT = " + _RowCount +
|
||
" AND RECORD_COUNT = " + _RecordCount, null);
|
||
}
|
||
else
|
||
{
|
||
Flag = false;
|
||
}
|
||
}
|
||
|
||
DataTable DataTableSale = _MACHINEINFO.ExecuteDataTable(
|
||
"SELECT DISTINCT ROW_COUNT FROM HIGHWAY_EXCHANGE.T_SCANCODEUPDATE WHERE SCAN_CONTENT LIKE '%|" +
|
||
_CommoditySale.Split('|')[1] + "|" + _CommoditySale.Split('|')[2] + "|" +
|
||
_CommoditySale.Split('|')[3] + "|" + _CommoditySale.Split('|')[4] +
|
||
"|%' AND SCAN_TYPE = 'CommoditySale' ORDER BY ROW_COUNT");
|
||
if (DataTableSale.Rows.Count == _RecordCount)
|
||
{
|
||
string strMd5 = _MACHINEINFO.ExecuteDataTable("SELECT WM_CONCAT(SCAN_CONTENT) FROM (" +
|
||
"SELECT SCAN_CONTENT FROM HIGHWAY_EXCHANGE.T_SCANCODEUPDATE WHERE CHECK_CODE = '" +
|
||
_CheckCode + "' AND SCAN_TYPE = 'CommoditySale' ORDER BY SCAN_INDEX)").Rows[0][0].ToString();
|
||
if (strMd5 != "")
|
||
{
|
||
strMd5 = CreateMD5(strMd5);
|
||
if (strMd5 == _CheckCode)
|
||
{
|
||
reString = strMd5;
|
||
}
|
||
else
|
||
{
|
||
TimeString = _CommoditySale.Split('|')[4];
|
||
TimeString = TimeString.Substring(0, 4) + "/" + TimeString.Substring(4, 2) + "/" +
|
||
TimeString.Substring(6, 2) + " " + TimeString.Substring(8, 2) + ":" +
|
||
TimeString.Substring(10, 2) + ":" + TimeString.Substring(12, 2);
|
||
reString = "3|" + TimeString;
|
||
}
|
||
}
|
||
}
|
||
else
|
||
{
|
||
foreach (DataRow _DataRow in DataTableSale.Rows)
|
||
{
|
||
if (!("," + reString + ",").Contains("," + _DataRow["ROW_COUNT"].ToString() + ","))
|
||
{
|
||
reString += (string.IsNullOrEmpty(reString) ? "" : ",") + _DataRow["ROW_COUNT"].ToString();
|
||
}
|
||
}
|
||
reString = "2|" + reString;
|
||
}
|
||
}
|
||
if (!Flag)
|
||
{
|
||
reString = "0";
|
||
}
|
||
}
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
_Transaction.Rollback();
|
||
reString = "0";
|
||
}
|
||
break;
|
||
#endregion
|
||
|
||
#region 数据采集
|
||
case "CurDayCollection":
|
||
try
|
||
{
|
||
_DataTable = new CONFIGURATION(_Transaction).ExecuteDataTable(
|
||
"SELECT * FROM HIGHWAY_EXCHANGE.V_CURDATACOLLECTION WHERE PROVINCE_CODE = '" +
|
||
(string.IsNullOrEmpty(action_data) ? _PROVINCE_CODE : action_data) + "'");
|
||
|
||
reString = JsonHelper.DataTableToJson(_DataTable, "CollectionObject");
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
|
||
case "CurHalfCollection":
|
||
try
|
||
{
|
||
_DataTable = new CONFIGURATION(_Transaction).ExecuteDataTable(
|
||
"SELECT * FROM HIGHWAY_EXCHANGE.V_DATACOLLECTION_AVRHALF WHERE PROVINCE_CODE = '" +
|
||
(string.IsNullOrEmpty(action_data) ? _PROVINCE_CODE : action_data) + "' ORDER BY AVR_TICKET DESC");
|
||
|
||
reString = JsonHelper.DataTableToJson(_DataTable, "CollectionObject");
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
|
||
case "GetWechatPushDtail":
|
||
try
|
||
{
|
||
try
|
||
{
|
||
action_record = HttpContext.Current.Request.Params["action_record"];
|
||
}
|
||
catch
|
||
{
|
||
action_record = "";
|
||
}
|
||
switch (action_data)
|
||
{
|
||
case "1010":
|
||
case "1020":
|
||
if (action_record.Split(',').Length < 2)
|
||
{
|
||
_DataTable = null;
|
||
}
|
||
else
|
||
{
|
||
_DataTable = new Business.RTWECHATPUSH(_Transaction).ExecuteDataTable(
|
||
@"SELECT * FROM HIGHWAY_STORAGE.T_WECHATPUSHDETAIL WHERE DIRECTION_IDS = '" +
|
||
action_record.Split(',')[0] + "' AND GROUP_TYPE = " + action_data +
|
||
" AND TRUNC(STATISTICS_DATE) = TO_DATE('" + action_record.Split(',')[1].Split(' ')[0] +
|
||
"','YYYY/MM/DD')" + (action_record.Split(',').Length > 2 ? " AND PROVINCE_CODE = '" +
|
||
action_record.Split(',')[2] + "'" : "") + " ORDER BY STATISTICS_DATE DESC");
|
||
}
|
||
break;
|
||
case "2000":
|
||
_DataTable = new Business.RTWECHATPUSH(_Transaction).ExecuteDataTable(
|
||
@"SELECT * FROM HIGHWAY_STORAGE.T_WECHATPUSHDETAIL WHERE GROUP_TYPE = " + action_data +
|
||
" AND RTWECHATPUSH_ID = " + action_record.Split(',')[2] + " AND DIRECTION_IDS = '" +
|
||
action_record.Split(',')[0] + "' AND TRUNC(STATISTICS_DATE) = TO_DATE('" +
|
||
action_record.Split(',')[1].Split(' ')[0] + "','YYYY/MM/DD')" +
|
||
(action_record.Split(',').Length > 3 ? " AND PROVINCE_CODE = '" +
|
||
action_record.Split(',')[3] + "'" : "") + " ORDER BY STATISTICS_DATE DESC");
|
||
break;
|
||
case "1000":
|
||
default:
|
||
_DataTable = new Business.RTWECHATPUSH(_Transaction).ExecuteDataTable(
|
||
@"SELECT * FROM HIGHWAY_STORAGE.T_WECHATPUSHDETAIL WHERE DIRECTION_IDS IS NULL AND
|
||
GROUP_TYPE = " + (string.IsNullOrEmpty(action_data) ? "1000" : action_data) +
|
||
" AND " + (string.IsNullOrEmpty(action_record) ? "STATISTICS_DATE > TRUNC(SYSDATE - 3/2)" :
|
||
"TRUNC(STATISTICS_DATE) = TO_DATE('" + action_record.Split(',')[0].Split(' ')[0] +
|
||
"','YYYY/MM/DD')" + (action_record.Split(',').Length > 1 ? " AND PROVINCE_CODE = '" +
|
||
action_record.Split(',')[1] + "'" : "")) + " ORDER BY STATISTICS_DATE DESC");
|
||
|
||
/*for (int RowCount = 0; RowCount < _DataTable.Rows.Count; RowCount++)
|
||
{
|
||
DataTable UploadData = new Business.RTWECHATPUSH(_Transaction).ExecuteDataTable(string.Format(
|
||
@"SELECT COUNT(DISTINCT SERVERPARTSHOP_ID) AS TOTALCOUNT,
|
||
CASE WHEN SERVERPART_ID = 123 AND SERVERPART_NAME LIKE '金华%' THEN 95
|
||
ELSE SERVERPART_ID END AS SERVERPART_ID
|
||
FROM HIGHWAY_SELLDATA.V_ENDACCOUNT_TEMP
|
||
WHERE NVL(BUSINESS_STATE,1000) = 1000 AND NVL(STATISTIC_TYPE,1000) = 1000 AND
|
||
ENDACCOUNT_ID <> 0 AND TRUNC(ENDACCOUNT_DATE) = TO_DATE('{0}','YYYY/MM/DD')
|
||
GROUP BY CASE WHEN SERVERPART_ID = 123 AND SERVERPART_NAME LIKE '金华%' THEN 95
|
||
ELSE SERVERPART_ID END", _DataTable.Rows[RowCount]["STATISTICS_DATE"].ToString().Split(' ')[0]));
|
||
|
||
DataTable TotalCount = new Business.RTWECHATPUSH(_Transaction).ExecuteDataTable(string.Format(
|
||
@"SELECT COUNT(1) AS TOTALCOUNT,CASE WHEN A.SERVERPART_ID = 123 AND SERVERPART_NAME LIKE '金华%'
|
||
THEN 95 ELSE A.SERVERPART_ID END AS SERVERPART_ID
|
||
FROM HIGHWAY_STORAGE.T_SERVERPART A,HIGHWAY_STORAGE.T_SERVERPARTSHOP B
|
||
WHERE A.SERVERPART_ID = B.SERVERPART_ID AND NVL(BUSINESS_STATE,1000) = 1000 AND
|
||
NVL(B.STATISTIC_TYPE,1000) = 1000 AND ISVALID = 1 AND
|
||
NVL(B.BUSINESS_ENDDATE,SYSDATE) >= TO_DATE('{0}','YYYY/MM/DD') AND
|
||
TRUNC(NVL(B.BUSINESS_DATE,TO_DATE('2015/06/01','YYYY/MM/DD'))) <= TO_DATE('{0}','YYYY/MM/DD')
|
||
GROUP BY CASE WHEN A.SERVERPART_ID = 123 AND SERVERPART_NAME LIKE '金华%' THEN 95
|
||
ELSE A.SERVERPART_ID END", _DataTable.Rows[RowCount]["STATISTICS_DATE"].ToString().Split(' ')[0]));
|
||
|
||
DataTable Revenue = new Business.RTWECHATPUSH(_Transaction).ExecuteDataTable(string.Format(
|
||
@"SELECT A.TYPE_NAME,A.TYPE_INDEX,SUM(CASHPAY) AS CASHPAY,
|
||
CASE WHEN A.SERVERPART_ID = 123 AND A.SERVERPART_NAME LIKE '金华%'
|
||
THEN '金华服务区' ELSE A.SERVERPART_NAME END AS SERVERPART_NAME,
|
||
CASE WHEN A.SERVERPART_ID = 123 AND A.SERVERPART_NAME LIKE '金华%'
|
||
THEN 95 ELSE A.SERVERPART_ID END AS SERVERPART_ID,
|
||
CASE WHEN A.SERVERPART_ID = 123 AND A.SERVERPART_NAME LIKE '金华%'
|
||
THEN 4010 ELSE A.SERVERPART_INDEX END AS SERVERPART_INDEX,
|
||
CASE WHEN A.SERVERPART_ID = 123 AND A.SERVERPART_NAME LIKE '金华%'
|
||
THEN '334010' ELSE A.SERVERPART_CODE END AS SERVERPART_CODE
|
||
FROM HIGHWAY_STORAGE.V_REGIONSERVERPART A,HIGHWAY_SELLDATA.V_ENDACCOUNT_TEMP B
|
||
WHERE NVL(B.BUSINESS_STATE,1000) = 1000 AND NVL(B.STATISTIC_TYPE,1000) = 1000 AND
|
||
A.SERVERPART_ID = B.SERVERPART_ID AND A.PROVINCE_CODE = {0} AND
|
||
TRUNC(ENDACCOUNT_DATE) = TO_DATE('{1}','YYYY/MM/DD')
|
||
GROUP BY A.TYPE_NAME,A.TYPE_INDEX,CASE WHEN A.SERVERPART_ID = 123 AND A.SERVERPART_NAME LIKE '金华%'
|
||
THEN '金华服务区' ELSE A.SERVERPART_NAME END,CASE WHEN A.SERVERPART_ID = 123 AND
|
||
A.SERVERPART_NAME LIKE '金华%' THEN 95 ELSE A.SERVERPART_ID END,
|
||
CASE WHEN A.SERVERPART_ID = 123 AND A.SERVERPART_NAME LIKE '金华%' THEN 4010
|
||
ELSE A.SERVERPART_INDEX END, CASE WHEN A.SERVERPART_ID = 123 AND
|
||
A.SERVERPART_NAME LIKE '金华%' THEN '334010' ELSE A.SERVERPART_CODE END
|
||
ORDER BY A.TYPE_INDEX,SERVERPART_INDEX,SERVERPART_CODE", _PROVINCE_CODE,
|
||
_DataTable.Rows[RowCount]["STATISTICS_DATE"].ToString().Split(' ')[0]));
|
||
|
||
string _TYPE_NAME = "", _SERVERPART_REVENUE = "";
|
||
foreach (DataRow _DataRow in Revenue.Rows)
|
||
{
|
||
string _SERVERPART_ID = _DataRow["SERVERPART_ID"].ToString();
|
||
if (_TYPE_NAME != _DataRow["TYPE_NAME"].ToString())
|
||
{
|
||
_TYPE_NAME = _DataRow["TYPE_NAME"].ToString();
|
||
_SERVERPART_REVENUE += (string.IsNullOrEmpty(_SERVERPART_REVENUE) ? "" : "|") +
|
||
_DataRow["TYPE_NAME"].ToString();
|
||
}
|
||
_SERVERPART_REVENUE += "," + _DataRow["SERVERPART_NAME"].ToString().Replace(
|
||
"(便利店)", "").Replace("(便利店)", "").Replace("(便利店)", "").Replace("(便利店)", "") +
|
||
"&&" + _DataRow["CASHPAY"].ToString() + "&&" + (UploadData.Select("SERVERPART_ID = " +
|
||
_SERVERPART_ID).Length > 0 ? UploadData.Select("SERVERPART_ID = " +
|
||
_SERVERPART_ID)[0]["TOTALCOUNT"].ToString() : "0") + "/" + (TotalCount.Select(
|
||
"SERVERPART_ID = " + _SERVERPART_ID).Length > 0 ? TotalCount.Select("SERVERPART_ID = " +
|
||
_SERVERPART_ID)[0]["TOTALCOUNT"].ToString() : "0") + "&&" + _SERVERPART_ID;
|
||
}
|
||
if (!string.IsNullOrEmpty(_SERVERPART_REVENUE))
|
||
{
|
||
_DataTable.Rows[RowCount]["SERVERPART_REVENUE"] = _SERVERPART_REVENUE;
|
||
}
|
||
}*/
|
||
break;
|
||
|
||
}
|
||
|
||
reString = JsonHelper.DataTableToJson(_DataTable, "CollectionObject");
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
|
||
case "GetWechatPushSales":
|
||
try
|
||
{
|
||
try
|
||
{
|
||
action_record = HttpContext.Current.Request.Params["action_record"];
|
||
}
|
||
catch
|
||
{
|
||
action_record = "";
|
||
}
|
||
_DataTable = new Business.RTWECHATPUSH(_Transaction).ExecuteDataTable(
|
||
"SELECT * FROM HIGHWAY_STORAGE.T_WECHATPUSHSALES WHERE WECHATPUSHDETAIL_ID = " + action_data +
|
||
(string.IsNullOrEmpty(action_record) ? "" : " AND PROVINCE_CODE = '" + action_record + "'"));
|
||
|
||
reString = JsonHelper.DataTableToJson(_DataTable, "WechatPushSalesObject");
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
|
||
case "GetYestdayEndaccount":
|
||
try
|
||
{
|
||
_DataTable = new Business.RTWECHATPUSH(_Transaction).ExecuteDataTable(
|
||
@"SELECT SERVERPART_ID,SERVERPART_NAME,COUNT(DISTINCT SHOPCODE) AS CheckCount,
|
||
COUNT(CASE WHEN TOTALSELLAMOUNT <> 0 AND ((DIFFERENT_PRICE < 0 AND
|
||
TOTALSELLAMOUNT > CASHPAY) OR (DIFFERENT_PRICE > 0 AND
|
||
CASHPAY_DOWNLORD + COSTBILL + TICKETBILL + OTHERPAY > CASHPAY)) THEN 1 END) AS AbnormalCount
|
||
FROM HIGHWAY_SELLDATA.T_ENDACCOUNT WHERE TREATMENT_MARK = 2 AND
|
||
TRUNC(NVL(STATISTICS_DATE,ENDACCOUNT_DATE)) = " + (string.IsNullOrEmpty(action_data) ?
|
||
"TRUNC(SYSDATE - 1)" : "TO_DATE('" + action_data.Split(' ')[0] +
|
||
"','YYYY/MM/DD'") + " GROUP BY SERVERPART_ID,SERVERPART_NAME");
|
||
|
||
reString = JsonHelper.DataTableToJson(_DataTable, "WechatPushSalesObject");
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
|
||
case "GetEndaccountByServerpart":
|
||
try
|
||
{
|
||
try
|
||
{
|
||
action_record = HttpContext.Current.Request.Params["action_record"];
|
||
}
|
||
catch
|
||
{
|
||
action_record = "";
|
||
}
|
||
_DataTable = new Business.RTWECHATPUSH(_Transaction).ExecuteDataTable(
|
||
@"SELECT TRUNC(NVL(STATISTICS_DATE,ENDACCOUNT_DATE)) AS ENDACCOUNT_DATE,
|
||
NVL(SUM(CASHPAY),0) AS CASHPAY,NVL(SUM(DIFFERENT_PRICE),0) AS DIFFERENT_PRICE,
|
||
NVL(SUM(TICKETCOUNT),0) AS TICKETCOUNT,NVL(SUM(TOTALCOUNT),0) AS TOTALCOUNT
|
||
FROM HIGHWAY_SELLDATA.T_ENDACCOUNT WHERE SERVERPART_ID IN (" + action_data +
|
||
") AND TRUNC(NVL(STATISTICS_DATE,ENDACCOUNT_DATE)) BETWEEN TO_DATE('" +
|
||
action_record.Split(',')[0].Split(' ')[0] + "','YYYY/MM/DD') AND TO_DATE('" +
|
||
action_record.Split(',')[1].Split(' ')[0] + "','YYYY/MM/DD') " +
|
||
"GROUP BY TRUNC(NVL(STATISTICS_DATE,ENDACCOUNT_DATE)) ORDER BY ENDACCOUNT_DATE");
|
||
|
||
reString = JsonHelper.DataTableToJson(_DataTable, "WechatPushSalesObject");
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
|
||
case "GetEndAccountSale":
|
||
try
|
||
{
|
||
_DataTable = new Business.SERVERPART(_Transaction).ExecuteDataTable(
|
||
"SELECT COUNT(1) AS SALECOUNT,COUNT(CASE WHEN COMMODITYTYPE_CODE IN (" + _CigaretteType +
|
||
") THEN 1 END) AS cigaretteCount FROM HIGHWAY_SELLDATA.V_COMMODITYSALE_CHECK WHERE ENDACCOUNT_ID = " + action_data);
|
||
reString = JsonHelper.DataTableToJson(_DataTable, "EndAccountSaleObject");
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
|
||
case "GetEndAccountMobilePay":
|
||
try
|
||
{
|
||
_DataTable = new Business.SERVERPART(_Transaction).ExecuteDataTable(@"SELECT COUNT(1) AS MobilePayCount
|
||
FROM HIGHWAY_SELLDATA.T_SELLDATA_EXTRA A WHERE A.SELLDATA_TYPE IN('ALIPAY','WECHAT') AND
|
||
EXISTS(SELECT 1 FROM HIGHWAY_SELLDATA.T_ENDACCOUNT B WHERE A.SERVERPART_ID = B.SERVERPART_ID AND
|
||
A.SHOPCODE = B.SHOPCODE AND A.MACHINECODE = B.MACHINECODE AND
|
||
A.SELLDATA_DATE BETWEEN B.ENDACCOUNT_STARTDATE AND B.ENDACCOUNT_DATE AND
|
||
B.ENDACCOUNT_ID = " + action_data + ")");
|
||
reString = JsonHelper.DataTableToJson(_DataTable, "EndAccountMobilePayObject");
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
#endregion
|
||
|
||
#region 微信模块权限获取
|
||
case "GetModuleAuthority":
|
||
try
|
||
{
|
||
_DataTable = new Business.RTWECHATPUSH(_Transaction).ExecuteDataTable(
|
||
"SELECT * FROM MOBILESERVICE_PLATFORM.V_MODULEAUTHORITY WHERE WECHAT_OPENID = '" + action_data + "'");
|
||
|
||
reString = JsonHelper.DataTableToJson(_DataTable, "ModuleAuthorityObject");
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
#endregion
|
||
|
||
#region 获取上传门店数量
|
||
case "GetUploadShops":
|
||
try
|
||
{
|
||
_DataTable = new Business.RTWECHATPUSH(_Transaction).ExecuteDataTable(
|
||
string.Format(@"SELECT COUNT(DISTINCT SHOPCODE) AS SHOPCOUNT,
|
||
CASE WHEN SERVERPART_ID = 123 AND SERVERPART_NAME LIKE '金华%'
|
||
THEN 95 ELSE SERVERPART_ID END AS SERVERPART_ID,
|
||
CASE WHEN SERVERPART_ID = 123 AND SERVERPART_NAME LIKE '金华%'
|
||
THEN '金华服务区' ELSE SERVERPART_NAME END AS SERVERPART_NAME,
|
||
COUNT(CASE WHEN DESCRIPTION_DATE IS NOT NULL AND TOTALSELLAMOUNT <> 0 AND
|
||
((DIFFERENT_PRICE < 0 AND TOTALSELLAMOUNT > CASHPAY) OR
|
||
(DIFFERENT_PRICE > 0 AND CASHPAY_DOWNLORD + COSTBILL + TICKETBILL + OTHERPAY > CASHPAY))
|
||
THEN 1 ELSE NULL END) AS EXCEPTION_COUNT,SUM(CASHPAY) AS CASHPAY
|
||
FROM HIGHWAY_SELLDATA.T_ENDACCOUNT_TEMP WHERE VALID = 1 AND TRUNC(ENDACCOUNT_DATE) = {0}
|
||
GROUP BY CASE WHEN SERVERPART_ID = 123 AND SERVERPART_NAME LIKE '金华%'
|
||
THEN 95 ELSE SERVERPART_ID END,CASE WHEN SERVERPART_ID = 123 AND
|
||
SERVERPART_NAME LIKE '金华%' THEN '金华服务区' ELSE SERVERPART_NAME END",
|
||
(string.IsNullOrEmpty(action_data) ? "TRUNC(SYSDATE) - 1" : "TO_DATE('" +
|
||
action_data.Split(' ')[0] + "','YYYY/MM/DD')")));
|
||
|
||
reString = JsonHelper.DataTableToJson(_DataTable, "DataObject");
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
#endregion
|
||
|
||
#region 获取商品流程详情
|
||
case "GetCommodityList":
|
||
try
|
||
{
|
||
string SqlString = @"SELECT COMMODITYTYPE_NAME,COMMODITY_NAME,COMMODITY_BARCODE,COMMODITY_UNIT,
|
||
HIGHWAY_STORAGE.FUNC_GETENUMVALUE('BUSINESSTYPE',TO_CHAR(BUSINESSTYPE)) AS BUSINESSTYPE,
|
||
COMMODITY_RULE,COMMODITY_CURRPRICE,COMMODITY_RETAILPRICE,COMMODITY_PURCHASEPRICE,OPERATE_DATE,
|
||
HIGHWAY_STORAGE.FUNC_GETENUMVALUE('COMMODITYSTATE',TO_CHAR(COMMODITY_STATE)) AS COMMODITY_STATE
|
||
FROM HIGHWAY_STORAGE.V_COMMODITYAPPROVAL WHERE HIGHWAYPROINST_ID = " + action_data.ToDecrypt();
|
||
|
||
_DataTable = new Business.SERVERPART(_Transaction).ExecuteDataTable(SqlString);
|
||
|
||
reString = JsonHelper.DataTableToJson(_DataTable, "CommodityList");
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
#endregion
|
||
|
||
#region 商品信息列表
|
||
case "GetApproveCommodity":
|
||
try
|
||
{
|
||
Running.Business.HIGHWAYPROINST _HIGHWAYPROINST = new Running.Business.HIGHWAYPROINST(_Transaction);
|
||
Business.HIGHWAYPROINST _StorageHIGHWAYPROINST = new Business.HIGHWAYPROINST(_Transaction);
|
||
_HIGHWAYPROINST.HIGHWAYPROINST_ID_Encrypt = action_data;
|
||
_StorageHIGHWAYPROINST.HIGHWAYPROINST_ID_Encrypt = action_data;
|
||
if (_HIGHWAYPROINST.Select())
|
||
{
|
||
string SqlString = @"SELECT COMMODITYTYPE_NAME,COMMODITY_NAME,COMMODITY_BARCODE,COMMODITY_UNIT,
|
||
HIGHWAY_STORAGE.FUNC_GETENUMVALUE('BUSINESSTYPE',TO_CHAR(BUSINESSTYPE)) AS BUSINESSTYPE,
|
||
COMMODITY_RULE,COMMODITY_CURRPRICE,COMMODITY_RETAILPRICE,COMMODITY_PURCHASEPRICE,OPERATE_DATE,
|
||
HIGHWAY_STORAGE.FUNC_GETENUMVALUE('BUSINESSTYPE',TO_CHAR(BUSINESSTYPE)) AS BUSINESSTYPE_NAME,
|
||
HIGHWAY_STORAGE.FUNC_GETENUMVALUE('COMMODITYSTATE',TO_CHAR(COMMODITY_STATE)) AS COMMODITY_STATE,
|
||
NULL AS COMMODITY_ISVALID
|
||
FROM HIGHWAY_STORAGE.V_COMMODITYAPPROVAL WHERE HIGHWAYPROINST_ID = " + action_data.ToDecrypt();
|
||
|
||
_DataTable = new Business.SERVERPART(_Transaction).ExecuteDataTable(SqlString);
|
||
}
|
||
else if (_StorageHIGHWAYPROINST.Select() && _StorageHIGHWAYPROINST.HIGHWAYPROINST_NEXTID == 9000)
|
||
{
|
||
#region 获取商品
|
||
string SqlString = string.Format(
|
||
@"SELECT COMMODITY_TYPE,COMMODITY_NAME,COMMODITY_BARCODE,COMMODITY_UNIT,COMMODITY_RULE,
|
||
COMMODITYTYPE_NAME,COMMODITY_CURRPRICE,COMMODITY_RETAILPRICE,COMMODITY_PURCHASEPRICE,
|
||
OPERATE_DATE,NULL AS COMMODITY_ISVALID,BUSINESSTYPE,SERVERPART_ID,HIGHWAYPROINST_ENDDATE,
|
||
HIGHWAY_STORAGE.FUNC_GETENUMVALUE('COMMODITYSTATE',TO_CHAR(COMMODITY_STATE)) AS COMMODITY_STATE ,
|
||
HIGHWAY_STORAGE.FUNC_GETENUMVALUE('BUSINESSTYPE',TO_CHAR(BUSINESSTYPE)) AS BUSINESSTYPE_NAME
|
||
FROM
|
||
(SELECT D.SERVERPART_ID,D.SERVERPART_NAME,D.COMMODITYTYPE_NAME,D.COMMODITYTYPE_CODE,
|
||
D.HIGHWAYPROINST_ID,D.MODIFYFROMSTORAGE_ID,D.COMMODITY_ID,D.COMMODITY_TYPE,
|
||
D.COMMODITY_CODE,D.COMMODITY_NAME,D.COMMODITY_BARCODE,D.COMMODITY_SERVERCODE,
|
||
D.COMMODITY_ALLNAME,D.COMMODITY_EN,D.COMMODITY_UNIT,D.COMMODITY_RULE,
|
||
D.COMMODITY_ORI,D.COMMODITY_GRADE,D.COMMODITY_CURRPRICE,D.COMMODITY_ORIPRICE,
|
||
D.COMMODITY_RETAILPRICE,D.COMMODITY_MAXPRICE,D.COMMODITY_MINPRICE,
|
||
D.COMMODITY_PROMOTIONPRICE,D.COMMODITY_UNIFORMPRICE,D.COMMODITY_GROUPPRICE,
|
||
D.COMMODITY_MEMBERPRICE,D.COMMODITY_PURCHASEPRICE,D.COMMODITY_STATE,
|
||
D.COMMODITY_DESC,D.SUPPLIER_ID,D.COMMODITY_BRAND,D.DUTY_PARAGRAPH,D.RETAIL_DUTY,
|
||
D.COMMODITY_COUNT,D.COMMODITY_FROZENCOUNT,D.ADDTIME,D.CANSALE,D.PROVINCE_CODE,
|
||
D.BUSINESSTYPE,D.ISBULK,D.METERINGMETHOD,D.OPERATE_DATE,D.COMMODITY_SYMBOL,D.HIGHWAYPROINST_ENDDATE
|
||
FROM
|
||
(SELECT * FROM (SELECT A.SERVERPART_ID,A.SERVERPART_NAME,E.COMMODITYTYPE_NAME,
|
||
E.COMMODITYTYPE_CODE,B.HIGHWAYPROINST_ID,C.MODIFYFROMSTORAGE_ID,D.COMMODITY_ID,
|
||
D.COMMODITY_TYPE,D.COMMODITY_CODE,D.COMMODITY_NAME,D.COMMODITY_BARCODE,
|
||
D.COMMODITY_SERVERCODE,D.COMMODITY_ALLNAME,D.COMMODITY_EN,D.COMMODITY_UNIT,
|
||
D.COMMODITY_RULE,D.COMMODITY_ORI,D.COMMODITY_GRADE,D.COMMODITY_CURRPRICE,
|
||
D.COMMODITY_ORIPRICE,D.COMMODITY_RETAILPRICE,D.COMMODITY_MAXPRICE,D.COMMODITY_MINPRICE,
|
||
D.COMMODITY_PROMOTIONPRICE,D.COMMODITY_UNIFORMPRICE,D.COMMODITY_GROUPPRICE,
|
||
D.COMMODITY_MEMBERPRICE,D.COMMODITY_PURCHASEPRICE,D.COMMODITY_STATE,
|
||
D.COMMODITY_DESC,D.SUPPLIER_ID,D.COMMODITY_BRAND,D.DUTY_PARAGRAPH,D.RETAIL_DUTY,
|
||
D.COMMODITY_COUNT,D.COMMODITY_FROZENCOUNT,D.ADDTIME,D.CANSALE,D.PROVINCE_CODE,
|
||
D.BUSINESSTYPE,D.ISBULK,D.METERINGMETHOD,D.OPERATE_DATE,D.COMMODITY_SYMBOL,
|
||
B.HIGHWAYPROINST_ENDDATE,ROW_NUMBER()OVER(PARTITION BY COMMODITY_ID
|
||
ORDER BY B.HIGHWAYPROINST_ENDDATE DESC) AS COLNUM
|
||
FROM
|
||
HIGHWAY_STORAGE.T_SERVERPART A,
|
||
HIGHWAY_STORAGE.T_HIGHWAYPROINST B,
|
||
HIGHWAY_STORAGE.T_MODIFYFROMSTORAGE C,
|
||
HIGHWAY_STORAGE.T_COMMODITY D,
|
||
HIGHWAY_STORAGE.T_COMMODITYTYPE E
|
||
WHERE
|
||
A.SERVERPART_ID = B.DEPT_ID AND D.COMMODITY_TYPE = E.COMMODITYTYPE_ID AND
|
||
B.HIGHWAYPROINST_ID = C.HIGHWAYPROINST_ID AND C.TABLE_NAME = 'T_COMMODITY' AND
|
||
C.FIELD_NAME = 'COMMODITY_ID' AND C.FIELD_VALUE = D.COMMODITY_ID AND
|
||
B.HIGHWAYPROINST_ID = {0})) D
|
||
LEFT JOIN
|
||
(SELECT * FROM (SELECT COMMODITY_ID,COMMODITY_TYPE,E.COMMODITYTYPE_NAME,
|
||
COMMODITY_CODE,COMMODITY_NAME,COMMODITY_BARCODE,COMMODITY_SERVERCODE,
|
||
COMMODITY_ALLNAME,COMMODITY_EN,COMMODITY_UNIT,COMMODITY_RULE,COMMODITY_ORI,
|
||
COMMODITY_GRADE,COMMODITY_CURRPRICE,COMMODITY_ORIPRICE,COMMODITY_RETAILPRICE,
|
||
COMMODITY_MAXPRICE,COMMODITY_MINPRICE,COMMODITY_PROMOTIONPRICE,COMMODITY_UNIFORMPRICE,
|
||
COMMODITY_GROUPPRICE,COMMODITY_MEMBERPRICE,COMMODITY_PURCHASEPRICE,
|
||
COMMODITY_STATE,COMMODITY_DESC,SUPPLIER_ID,COMMODITY_BRAND,DUTY_PARAGRAPH,
|
||
RETAIL_DUTY,COMMODITY_COUNT,COMMODITY_FROZENCOUNT,ADDTIME,CANSALE,PROVINCE_CODE,
|
||
BUSINESSTYPE,ISBULK,METERINGMETHOD,OPERATE_DATE,COMMODITY_SYMBOL,
|
||
ROW_NUMBER()OVER(PARTITION BY COMMODITY_ID
|
||
ORDER BY OPERATE_DATE DESC) AS COLNUM
|
||
FROM HIGHWAY_HISTORY.T_COMMODITY C,HIGHWAY_STORAGE.T_COMMODITYTYPE E
|
||
WHERE C.COMMODITY_TYPE = E.COMMODITYTYPE_ID AND EXISTS(SELECT 1
|
||
FROM HIGHWAY_STORAGE.T_HIGHWAYPROINST A,HIGHWAY_STORAGE.T_MODIFYFROMSTORAGE B
|
||
WHERE B.HIGHWAYPROINST_ID = A.HIGHWAYPROINST_ID AND
|
||
B.TABLE_NAME = 'T_COMMODITY' AND B.FIELD_NAME = 'COMMODITY_ID' AND
|
||
B.FIELD_VALUE = C.COMMODITY_ID AND B.HIGHWAYPROINST_ID = {0}))
|
||
WHERE COLNUM = 1) F
|
||
ON
|
||
D.COMMODITY_ID = F.COMMODITY_ID
|
||
WHERE
|
||
D.COLNUM = 1
|
||
UNION ALL
|
||
SELECT
|
||
SERVERPART_ID,SERVERPART_NAME,COMMODITYTYPE_NAME,COMMODITYTYPE_CODE,
|
||
HIGHWAYPROINST_ID,MODIFYFROMSTORAGE_ID,COMMODITY_ID,COMMODITY_TYPE,COMMODITY_CODE,
|
||
COMMODITY_NAME,COMMODITY_BARCODE,COMMODITY_SERVERCODE,COMMODITY_ALLNAME,COMMODITY_EN,
|
||
COMMODITY_UNIT,COMMODITY_RULE,COMMODITY_ORI,COMMODITY_GRADE,COMMODITY_CURRPRICE,
|
||
COMMODITY_ORIPRICE,COMMODITY_RETAILPRICE,COMMODITY_MAXPRICE,COMMODITY_MINPRICE,
|
||
COMMODITY_PROMOTIONPRICE,COMMODITY_UNIFORMPRICE,COMMODITY_GROUPPRICE,
|
||
COMMODITY_MEMBERPRICE,COMMODITY_PURCHASEPRICE,COMMODITY_STATE,COMMODITY_DESC,
|
||
SUPPLIER_ID,COMMODITY_BRAND,DUTY_PARAGRAPH,RETAIL_DUTY,COMMODITY_COUNT,
|
||
COMMODITY_FROZENCOUNT,ADDTIME,CANSALE,PROVINCE_CODE,BUSINESSTYPE,ISBULK,
|
||
METERINGMETHOD,OPERATE_DATE,COMMODITY_SYMBOL,HIGHWAYPROINST_ENDDATE
|
||
FROM
|
||
(SELECT A.SERVERPART_ID,A.SERVERPART_NAME,E.COMMODITYTYPE_NAME,E.COMMODITYTYPE_CODE,
|
||
B.HIGHWAYPROINST_ID,C.MODIFYFROMSTORAGE_ID,D.COMMODITY_ID,D.COMMODITY_TYPE,
|
||
D.COMMODITY_CODE,D.COMMODITY_NAME,D.COMMODITY_BARCODE,D.COMMODITY_SERVERCODE,
|
||
D.COMMODITY_ALLNAME,D.COMMODITY_EN,D.COMMODITY_UNIT,D.COMMODITY_RULE,D.COMMODITY_ORI,
|
||
D.COMMODITY_GRADE,D.COMMODITY_CURRPRICE,D.COMMODITY_ORIPRICE,D.COMMODITY_RETAILPRICE,
|
||
D.COMMODITY_MAXPRICE,D.COMMODITY_MINPRICE,D.COMMODITY_PROMOTIONPRICE,D.COMMODITY_UNIFORMPRICE,
|
||
D.COMMODITY_GROUPPRICE,D.COMMODITY_MEMBERPRICE,D.COMMODITY_PURCHASEPRICE,D.COMMODITY_STATE,
|
||
D.COMMODITY_DESC,D.SUPPLIER_ID,D.COMMODITY_BRAND,D.DUTY_PARAGRAPH,D.RETAIL_DUTY,
|
||
D.COMMODITY_COUNT,D.COMMODITY_FROZENCOUNT,D.ADDTIME,D.CANSALE,D.PROVINCE_CODE,
|
||
D.BUSINESSTYPE,D.ISBULK,D.METERINGMETHOD,D.OPERATE_DATE,D.COMMODITY_SYMBOL,B.HIGHWAYPROINST_ENDDATE
|
||
FROM
|
||
HIGHWAY_STORAGE.T_SERVERPART A,
|
||
HIGHWAY_STORAGE.T_HIGHWAYPROINST B,
|
||
HIGHWAY_STORAGE.T_MODIFYFROMSTORAGE C,
|
||
(SELECT * FROM (SELECT COMMODITY_ID,COMMODITY_TYPE,
|
||
COMMODITY_CODE,COMMODITY_NAME,COMMODITY_BARCODE,COMMODITY_SERVERCODE,
|
||
COMMODITY_ALLNAME,COMMODITY_EN,COMMODITY_UNIT,COMMODITY_RULE,COMMODITY_ORI,
|
||
COMMODITY_GRADE,COMMODITY_CURRPRICE,COMMODITY_ORIPRICE,COMMODITY_RETAILPRICE,
|
||
COMMODITY_MAXPRICE,COMMODITY_MINPRICE,COMMODITY_PROMOTIONPRICE,COMMODITY_UNIFORMPRICE,
|
||
COMMODITY_GROUPPRICE,COMMODITY_MEMBERPRICE,COMMODITY_PURCHASEPRICE,
|
||
COMMODITY_STATE,COMMODITY_DESC,SUPPLIER_ID,COMMODITY_BRAND,DUTY_PARAGRAPH,
|
||
RETAIL_DUTY,COMMODITY_COUNT,COMMODITY_FROZENCOUNT,ADDTIME,CANSALE,PROVINCE_CODE,
|
||
BUSINESSTYPE,ISBULK,METERINGMETHOD,OPERATE_DATE,COMMODITY_SYMBOL,
|
||
ROW_NUMBER()OVER(PARTITION BY COMMODITY_ID ORDER BY OPERATE_DATE) AS COLNUM
|
||
FROM HIGHWAY_HISTORY.T_COMMODITY WHERE OPERATE_DATE > TO_DATE('{1}','YYYY-MM-DD HH24:MI:SS'))
|
||
WHERE COLNUM = 1) D
|
||
LEFT JOIN
|
||
(SELECT * FROM (SELECT COMMODITY_ID,COMMODITY_TYPE,E.COMMODITYTYPE_NAME,
|
||
COMMODITY_CODE,COMMODITY_NAME,COMMODITY_BARCODE,COMMODITY_SERVERCODE,
|
||
COMMODITY_ALLNAME,COMMODITY_EN,COMMODITY_UNIT,COMMODITY_RULE,COMMODITY_ORI,
|
||
COMMODITY_GRADE,COMMODITY_CURRPRICE,COMMODITY_ORIPRICE,COMMODITY_RETAILPRICE,
|
||
COMMODITY_MAXPRICE,COMMODITY_MINPRICE,COMMODITY_PROMOTIONPRICE,COMMODITY_UNIFORMPRICE,
|
||
COMMODITY_GROUPPRICE,COMMODITY_MEMBERPRICE,COMMODITY_PURCHASEPRICE,
|
||
COMMODITY_STATE,COMMODITY_DESC,SUPPLIER_ID,COMMODITY_BRAND,DUTY_PARAGRAPH,
|
||
RETAIL_DUTY,COMMODITY_COUNT,COMMODITY_FROZENCOUNT,ADDTIME,CANSALE,PROVINCE_CODE,
|
||
BUSINESSTYPE,ISBULK,METERINGMETHOD,OPERATE_DATE,COMMODITY_SYMBOL,
|
||
ROW_NUMBER()OVER(PARTITION BY COMMODITY_ID
|
||
ORDER BY OPERATE_DATE DESC) AS COLNUM
|
||
FROM HIGHWAY_HISTORY.T_COMMODITY C,HIGHWAY_STORAGE.T_COMMODITYTYPE E
|
||
WHERE C.COMMODITY_TYPE = E.COMMODITYTYPE_ID AND EXISTS(SELECT 1
|
||
FROM HIGHWAY_STORAGE.T_HIGHWAYPROINST A,HIGHWAY_STORAGE.T_MODIFYFROMSTORAGE B
|
||
WHERE B.HIGHWAYPROINST_ID = A.HIGHWAYPROINST_ID AND
|
||
B.TABLE_NAME = 'T_COMMODITY' AND B.FIELD_NAME = 'COMMODITY_ID' AND
|
||
B.FIELD_VALUE = C.COMMODITY_ID AND B.HIGHWAYPROINST_ID = {0}))) F
|
||
ON
|
||
D.COMMODITY_ID = F.COMMODITY_ID AND F.OPERATE_DATE < TO_DATE('{1}','YYYY-MM-DD HH24:MI:SS'),
|
||
HIGHWAY_STORAGE.T_COMMODITYTYPE E
|
||
WHERE
|
||
A.SERVERPART_ID = B.DEPT_ID AND D.COMMODITY_TYPE = E.COMMODITYTYPE_ID AND
|
||
B.HIGHWAYPROINST_ID = C.HIGHWAYPROINST_ID AND C.TABLE_NAME = 'T_COMMODITY' AND
|
||
C.FIELD_NAME = 'COMMODITY_ID' AND C.FIELD_VALUE = D.COMMODITY_ID AND
|
||
D.OPERATE_DATE > B.HIGHWAYPROINST_ENDDATE AND B.HIGHWAYPROINST_ID = {0})
|
||
WHERE ROWNUM <= 1)", _StorageHIGHWAYPROINST.HIGHWAYPROINST_ID,
|
||
_StorageHIGHWAYPROINST.HIGHWAYPROINST_ENDDATE);
|
||
DataTable COMMODITYAPPROVALLIST = _StorageHIGHWAYPROINST.ExecuteDataTable(SqlString);
|
||
|
||
_DataTable = COMMODITYAPPROVALLIST.Clone();
|
||
#endregion
|
||
|
||
//门店信息
|
||
DataTable ServerpartShop = _StorageHIGHWAYPROINST.ExecuteDataTable(
|
||
"SELECT * FROM HIGHWAY_STORAGE.T_SERVERPARTSHOP");
|
||
|
||
Business.SERVERPART _SERVERPART = new Business.SERVERPART(_Transaction);
|
||
_SERVERPART.SERVERPART_ID = _StorageHIGHWAYPROINST.Dept_ID;
|
||
if (_SERVERPART.Select())
|
||
{
|
||
//基础信息信息
|
||
CONFIGURATION _CONFIGURATION = new CONFIGURATION(_Transaction);
|
||
DataTable HighwayProinstMachine = _CONFIGURATION.ExecuteDataTable(
|
||
"SELECT * FROM HIGHWAY_EXCHANGE.T_BASEINFOFEEDBACK WHERE SERVERPART_CODE = '" +
|
||
_SERVERPART.SERVERPART_CODE + "' AND TABLE_NAME = 'T_COMMODITY'");
|
||
|
||
for (int RowCount = 0; RowCount < COMMODITYAPPROVALLIST.Rows.Count; RowCount++)
|
||
{
|
||
string commodityisvalid = null;
|
||
foreach (DataRow shopid in ServerpartShop.Select("SERVERPART_ID = " +
|
||
COMMODITYAPPROVALLIST.Rows[RowCount]["SERVERPART_ID"].ToString() + " AND SHOPTRADE = '" +
|
||
COMMODITYAPPROVALLIST.Rows[RowCount]["BUSINESSTYPE"].ToString() + "'"))
|
||
{
|
||
string restring = null, errorstring = null;
|
||
foreach (DataRow machine in HighwayProinstMachine.Select("SERVERPARTSHOP_ID = " + shopid.ItemArray[0]))
|
||
{
|
||
DateTime HIGHWAYPROINST_ENDDATE = Convert.ToDateTime(
|
||
COMMODITYAPPROVALLIST.Rows[RowCount]["HIGHWAYPROINST_ENDDATE"].ToString());
|
||
|
||
DateTime MACHINE_ENDDATE = Convert.ToDateTime(machine.ItemArray[10].ToString());
|
||
if (DateTime.Compare(MACHINE_ENDDATE, HIGHWAYPROINST_ENDDATE) >= 0)
|
||
{
|
||
restring += (string.IsNullOrEmpty(restring) ? "" : ",") + machine.ItemArray[6].ToString();
|
||
}
|
||
else
|
||
{
|
||
errorstring += (string.IsNullOrEmpty(errorstring) ? "" : ",") + machine.ItemArray[6].ToString();
|
||
}
|
||
}
|
||
|
||
if (!string.IsNullOrEmpty(restring))
|
||
{
|
||
commodityisvalid += shopid.ItemArray[2].ToString() + "(已生效)" +
|
||
(string.IsNullOrEmpty(restring) ? "" : ":") + restring + "<br />";
|
||
}
|
||
if (!string.IsNullOrEmpty(errorstring))
|
||
{
|
||
commodityisvalid += shopid.ItemArray[2].ToString() + "(未生效)" +
|
||
(string.IsNullOrEmpty(errorstring) ? "" : ":") + errorstring + "<br />";
|
||
}
|
||
}
|
||
COMMODITYAPPROVALLIST.Rows[RowCount]["COMMODITY_ISVALID"] = commodityisvalid;
|
||
_DataTable.Rows.Add(COMMODITYAPPROVALLIST.Rows[RowCount].ItemArray);
|
||
}
|
||
}
|
||
}
|
||
reString = JsonHelper.DataTableToJson(_DataTable, "CommodityList");
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
#endregion
|
||
|
||
#region 按员工内码获取账号反馈
|
||
case "GetApproveCashWorkerByID":
|
||
try
|
||
{
|
||
//判断存在商品
|
||
Business.CASHWORKER _CASHWORKER = new Business.CASHWORKER(_Transaction);
|
||
_CASHWORKER.CASHWORKER_ID_Encrypt = action_data;
|
||
if (_CASHWORKER.Select())
|
||
{
|
||
DataTable CashWorker = _CASHWORKER.ExecuteDataTable(
|
||
"SELECT OPERATE_ID,OPERATE_NAME,OPERATE_DATE FROM HIGHWAY_STORAGE.T_CASHWORKER WHERE CASHWORKER_ID =" +
|
||
action_data.ToDecrypt());
|
||
|
||
Business.SERVERPART _SERVERPART = new Business.SERVERPART(_Transaction);
|
||
_SERVERPART.SERVERPART_ID = _CASHWORKER.SERVERPART_ID;
|
||
if (_SERVERPART.Select())
|
||
{
|
||
//基础信息信息
|
||
CONFIGURATION _CONFIGURATION = new CONFIGURATION(_Transaction);
|
||
DataTable HighwayProinstMachine = _CONFIGURATION.ExecuteDataTable(
|
||
"SELECT * FROM HIGHWAY_EXCHANGE.T_BASEINFOFEEDBACK WHERE SERVERPART_CODE = '" +
|
||
_SERVERPART.SERVERPART_CODE + "' AND TABLE_NAME = 'T_CASHWORKER'");
|
||
//获取关联门店
|
||
DataTable RTCASHSHOP = _SERVERPART.ExecuteDataTable(
|
||
"SELECT SERVERPARTSHOP_ID FROM HIGHWAY_STORAGE.T_RTCASHSHOP WHERE CASHWORKER_ID = " + action_data.ToDecrypt());
|
||
//新建datatabel
|
||
DataTable tblDatas = new DataTable("Datas");
|
||
tblDatas.Columns.Add("SHOPNAME", Type.GetType("System.String"));
|
||
tblDatas.Columns.Add("CASHWORKER_VAILD", Type.GetType("System.String"));
|
||
tblDatas.Columns.Add("CASHWORKER_INVAILD", Type.GetType("System.String"));
|
||
if (RTCASHSHOP.Rows.Count > 0)
|
||
{
|
||
//获取下发情况
|
||
foreach (Business.SERVERPARTSHOP _SERVERPARTSHOP in new Business.SERVERPARTSHOP(_Transaction).FillCollection(
|
||
@"WHERE SERVERPARTSHOP_ID IN(SELECT SERVERPARTSHOP_ID FROM HIGHWAY_STORAGE.T_RTCASHSHOP
|
||
WHERE CASHWORKER_ID = " + action_data.ToDecrypt() + ")"))
|
||
{
|
||
string restring = "", errorstring = "";
|
||
for (int RowCount = 0; RowCount < HighwayProinstMachine.Rows.Count; RowCount++)
|
||
{
|
||
if (HighwayProinstMachine.Rows[RowCount]["SERVERPARTSHOP_ID"].ToString() == _SERVERPARTSHOP.SERVERPARTSHOP_ID.ToString() &&
|
||
!string.IsNullOrEmpty(CashWorker.Rows[0][2].ToString()))
|
||
{
|
||
DateTime HIGHWAYPROINST_ENDDATE = Convert.ToDateTime(CashWorker.Rows[0][2].ToString());
|
||
|
||
DateTime MACHINE_ENDDATE = Convert.ToDateTime(
|
||
HighwayProinstMachine.Rows[RowCount]["MACHINE_ENDDATE"].ToString());
|
||
|
||
if (DateTime.Compare(MACHINE_ENDDATE, HIGHWAYPROINST_ENDDATE) >= 0)
|
||
{
|
||
restring += (string.IsNullOrEmpty(restring) ? "" : ",") + HighwayProinstMachine.Rows[RowCount]["MACHINECODE"].ToString();
|
||
}
|
||
else
|
||
{
|
||
errorstring += (string.IsNullOrEmpty(errorstring) ? "" : ",") + HighwayProinstMachine.Rows[RowCount]["MACHINECODE"].ToString(); ;
|
||
}
|
||
}
|
||
}
|
||
tblDatas.Rows.Add(new object[] { _SERVERPARTSHOP.SHOPNAME, restring, errorstring });
|
||
}
|
||
}
|
||
else
|
||
{
|
||
//获取下发情况
|
||
foreach (Business.SERVERPARTSHOP _SERVERPARTSHOP in new Business.SERVERPARTSHOP(_Transaction).FillCollection(
|
||
"WHERE SERVERPART_ID = " + _SERVERPART.SERVERPART_ID))
|
||
{
|
||
string restring = "", errorstring = "";
|
||
for (int RowCount = 0; RowCount < HighwayProinstMachine.Rows.Count; RowCount++)
|
||
{
|
||
if (HighwayProinstMachine.Rows[RowCount]["SERVERPARTSHOP_ID"].ToString() == _SERVERPARTSHOP.SERVERPARTSHOP_ID.ToString() &&
|
||
!string.IsNullOrEmpty(CashWorker.Rows[0][2].ToString()))
|
||
{
|
||
DateTime HIGHWAYPROINST_ENDDATE = Convert.ToDateTime(CashWorker.Rows[0][2].ToString());
|
||
|
||
DateTime MACHINE_ENDDATE = Convert.ToDateTime(
|
||
HighwayProinstMachine.Rows[RowCount]["MACHINE_ENDDATE"].ToString());
|
||
|
||
if (DateTime.Compare(MACHINE_ENDDATE, HIGHWAYPROINST_ENDDATE) >= 0)
|
||
{
|
||
restring += (string.IsNullOrEmpty(restring) ? "" : ",") + HighwayProinstMachine.Rows[RowCount]["MACHINECODE"].ToString();
|
||
}
|
||
else
|
||
{
|
||
errorstring += (string.IsNullOrEmpty(errorstring) ? "" : ",") + HighwayProinstMachine.Rows[RowCount]["MACHINECODE"].ToString(); ;
|
||
}
|
||
}
|
||
}
|
||
tblDatas.Rows.Add(new object[] { _SERVERPARTSHOP.SHOPNAME, restring, errorstring });
|
||
}
|
||
}
|
||
|
||
reString = JsonHelper.DataTableToJson(tblDatas, "CashWorkList");
|
||
}
|
||
}
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
#endregion
|
||
|
||
#region 按商品获取快捷键反馈
|
||
case "GetApproveHotKeyByID":
|
||
try
|
||
{
|
||
//判断存在商品
|
||
Business.COMMODITY _COMMODITY = new Business.COMMODITY(_Transaction);
|
||
_COMMODITY.COMMODITY_ID_Encrypt = action_data;
|
||
if (_COMMODITY.Select())
|
||
{
|
||
//判断存在服务区
|
||
Business.SERVERPART _SERVERPART = new Business.SERVERPART(_Transaction);
|
||
_SERVERPART.SERVERPART_ID = _COMMODITY.SERVERPART_ID;
|
||
if (_SERVERPART.Select())
|
||
{
|
||
DataTable V_UNIQUECOMMODITY = _COMMODITY.ExecuteDataTable(
|
||
@"SELECT OPERATE_ID,OPERATE_NAME,OPERATE_DATE,SERVERPART_ID,BUSINESSTYPE
|
||
FROM HIGHWAY_STORAGE.V_UNIQUECOMMODITY WHERE COMMODITY_ID = " + action_data.ToDecrypt());
|
||
//基础信息信息
|
||
CONFIGURATION _CONFIGURATION = new CONFIGURATION(_Transaction);
|
||
DataTable HighwayProinstMachine = _CONFIGURATION.ExecuteDataTable(
|
||
"SELECT * FROM HIGHWAY_EXCHANGE.T_BASEINFOFEEDBACK WHERE SERVERPART_CODE = '" +
|
||
_SERVERPART.SERVERPART_CODE + "' AND TABLE_NAME = 'T_HOTKEYSET'");
|
||
//+ (V_UNIQUECOMMODITY.Rows.Count == 1 ? " AND STAFF_ID = " +
|
||
// V_UNIQUECOMMODITY.Rows[0]["OPERATE_ID"].ToString() + " AND STAFF_NAME = '" +
|
||
// V_UNIQUECOMMODITY.Rows[0]["OPERATE_NAME"].ToString() + "' AND TABLE_NAME = 'T_HOTKEYSET'" : ""))
|
||
//新建datatable
|
||
DataTable tblDatas = new DataTable("Datas");
|
||
tblDatas.Columns.Add("SHOPNAME", Type.GetType("System.String"));
|
||
tblDatas.Columns.Add("HotKey_VAILD", Type.GetType("System.String"));
|
||
tblDatas.Columns.Add("HotKey_INVAILD", Type.GetType("System.String"));
|
||
//获取下发情况
|
||
|
||
foreach (Business.SERVERPARTSHOP _SERVERPARTSHOP in new Business.SERVERPARTSHOP(_Transaction).FillCollection(
|
||
"WHERE SHOPTRADE = " + V_UNIQUECOMMODITY.Rows[0]["BUSINESSTYPE"].ToString() +
|
||
" AND SERVERPART_ID = " + V_UNIQUECOMMODITY.Rows[0]["SERVERPART_ID"].ToString()))
|
||
{
|
||
string restring = "", errorstring = "";
|
||
for (int RowCount = 0; RowCount < HighwayProinstMachine.Rows.Count; RowCount++)
|
||
{
|
||
if (HighwayProinstMachine.Rows[RowCount]["SERVERPARTSHOP_ID"].ToString() ==
|
||
_SERVERPARTSHOP.SERVERPARTSHOP_ID.ToString())
|
||
{
|
||
DateTime HIGHWAYPROINST_ENDDATE = Convert.ToDateTime(
|
||
V_UNIQUECOMMODITY.Rows[0]["OPERATE_DATE"].ToString());
|
||
|
||
DateTime MACHINE_ENDDATE = Convert.ToDateTime(
|
||
HighwayProinstMachine.Rows[RowCount]["MACHINE_ENDDATE"].ToString());
|
||
|
||
if (DateTime.Compare(MACHINE_ENDDATE, HIGHWAYPROINST_ENDDATE) >= 0)
|
||
{
|
||
restring += (string.IsNullOrEmpty(restring) ? "" : ",") +
|
||
HighwayProinstMachine.Rows[RowCount]["MACHINECODE"].ToString();
|
||
}
|
||
else
|
||
{
|
||
errorstring += (string.IsNullOrEmpty(errorstring) ? "" : ",") +
|
||
HighwayProinstMachine.Rows[RowCount]["MACHINECODE"].ToString();
|
||
}
|
||
}
|
||
}
|
||
tblDatas.Rows.Add(new object[] { _SERVERPARTSHOP.SHOPNAME, restring, errorstring });
|
||
restring = ""; errorstring = "";
|
||
}
|
||
reString = JsonHelper.DataTableToJson(tblDatas, "HotKeyList");
|
||
}
|
||
}
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
#endregion
|
||
|
||
#region 按商品获取业务流程
|
||
case "GetProinstByCommodity":
|
||
try
|
||
{
|
||
_DataTable = new Business.COMMODITY(_Transaction).ExecuteDataTable(
|
||
@"SELECT A.DEPT_NAME,A.HIGHWAYPROINST_ID,A.STAFF_NAME,A.HIGHWAYPROINST_CREATEDATE,
|
||
CASE WHEN A.HIGHWAYPROINST_NEXTID = 1000 THEN '业务受理'
|
||
WHEN A.HIGHWAYPROINST_NEXTID = 2000 THEN '业务审核'
|
||
WHEN A.HIGHWAYPROINST_NEXTID = 3000 THEN '业务复审' END AS HIGHWAYPROINST_NEXTID,
|
||
CASE WHEN A.ACCEPT_CODE = '100100' THEN '商品新增审批'
|
||
WHEN A.ACCEPT_CODE = '100200' THEN '信息修改审批'
|
||
WHEN A.ACCEPT_CODE = '100201' THEN '商品调价审批' END AS ACCEPT_CODE
|
||
FROM
|
||
HIGHWAY_RUNNING.T_HIGHWAYPROINST A,
|
||
HIGHWAY_RUNNING.T_MODIFYFROMSTORAGE B,
|
||
HIGHWAY_RUNNING.T_COMMODITY C,
|
||
HIGHWAY_STORAGE.T_COMMODITYTYPE D
|
||
WHERE
|
||
A.HIGHWAYPROINST_ID = B.HIGHWAYPROINST_ID AND B.TABLE_NAME = 'T_COMMODITY' AND
|
||
B.FIELD_NAME = 'COMMODITY_ID' AND B.FIELD_VALUE = C.COMMODITY_ID AND
|
||
C.COMMODITY_TYPE = D.COMMODITYTYPE_ID(+) AND C.COMMODITY_ID = " + action_data);
|
||
if (_DataTable.Rows.Count == 1)
|
||
{
|
||
reString = JsonHelper.DataTableToJson(_DataTable, "PRONISTCOMMPDITY");
|
||
}
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
#endregion
|
||
|
||
#region 获取同条码商品信息
|
||
case "getServerpartCommodityList":
|
||
try
|
||
{
|
||
//获得枚举信息
|
||
_DataTable = new Business.COMMODITY(_Transaction).ExecuteDataTable(
|
||
"SELECT * FROM V_COMMODITY A WHERE COMMODITY_STATE = 1 AND COMMODITY_ID != " + action_data.ToDecrypt() +
|
||
" AND EXISTS (SELECT 1 FROM T_COMMODITY B WHERE B.COMMODITY_ID = " + action_data.ToDecrypt() +
|
||
" AND A.COMMODITY_BARCODE = B.COMMODITY_BARCODE AND A.PROVINCE_CODE = B.PROVINCE_CODE)");
|
||
reString = JsonHelper.DataTableToJson(_DataTable, "COMMODITY");
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
reString = "error:" + ex.Message;
|
||
}
|
||
break;
|
||
#endregion
|
||
|
||
#region 获取视频图像信息
|
||
case "GetVedioImg":
|
||
reString = CommonInterface.BaseInformation.GetVedioImg(_Transaction);
|
||
break;
|
||
#endregion
|
||
|
||
#region 获取数据校验的单品数据、香烟数据、移动支付、促销数据
|
||
case "GetEndAccountDate":
|
||
reString = CommonInterface.BaseInformation.GetEndAccountDate(_Transaction);
|
||
break;
|
||
#endregion
|
||
|
||
#region 阳光公示点赞操作
|
||
case "ThumbUp":
|
||
reString = CommonInterface.Publicity.ThumbUp(_Transaction);
|
||
break;
|
||
#endregion
|
||
|
||
#region 阳光公示添加评论
|
||
case "AddComment":
|
||
reString = CommonInterface.Publicity.AddComment(_Transaction);
|
||
break;
|
||
#endregion
|
||
|
||
default:
|
||
reString = "error";
|
||
break;
|
||
}
|
||
sw.Stop();
|
||
HZQR.Common.LogUtil.WriteLog(null, action_type + "接口耗时:" + sw.Elapsed.TotalSeconds.ToString());
|
||
|
||
if (_Transaction.IsOpen)
|
||
{
|
||
_Transaction.Commit();
|
||
}
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
SuperMap.RealEstate.Utility.ErrorLogHelper.Write(ex);
|
||
}
|
||
finally
|
||
{
|
||
_Transaction.Release();
|
||
_Transaction.Dispose();
|
||
}
|
||
|
||
context.Response.ContentType = "text/plain";
|
||
context.Response.Write(reString);
|
||
context.Response.End();
|
||
}
|
||
|
||
#region 方法 -> 获取服务区类型
|
||
private string getServerPart(string param)
|
||
{
|
||
//
|
||
string RetString = "";
|
||
switch (param)
|
||
{
|
||
case "第一区域":
|
||
break;
|
||
case "第二区域": break;
|
||
case "第三区域": break;
|
||
case "第四区域": break;
|
||
case "A类": break;
|
||
case "B类": break;
|
||
case "C类": break;
|
||
}
|
||
return RetString;
|
||
}
|
||
#endregion
|
||
|
||
#region 方法 -> 根据分类方式 或得对应的分类
|
||
private string getServerPartTypeByCode(string param, ServiceModel.Transaction _Transaction, string action_record)
|
||
{
|
||
List<Model.SERVERPARTTYPE> _ListSERVERPARTTYPE = new List<Model.SERVERPARTTYPE>();
|
||
if (action_record != "all")
|
||
{
|
||
foreach (Business.SERVERPARTTYPE _SERVERPARTTYPE in (new Business.SERVERPARTTYPE(_Transaction)).FillCollection(
|
||
"where TYPE_PID=" + param.ToDecrypt() + " AND ISMAP =1 and rownum <= " + action_record + " order by TYPE_INDEX"))
|
||
{
|
||
_ListSERVERPARTTYPE.Add(_SERVERPARTTYPE.PropertyObject);
|
||
}
|
||
}
|
||
else
|
||
{
|
||
|
||
foreach (Business.SERVERPARTTYPE _SERVERPARTTYPE in (new Business.SERVERPARTTYPE(_Transaction)).FillCollection(
|
||
"where TYPE_PID=" + param.ToDecrypt() + " AND ISMAP =1 order by TYPE_INDEX"))
|
||
{
|
||
_ListSERVERPARTTYPE.Add(_SERVERPARTTYPE.PropertyObject);
|
||
}
|
||
}
|
||
return JsonHelper.ListToJson<Model.SERVERPARTTYPE>(_ListSERVERPARTTYPE, "SERVERPARTTYPE");
|
||
}
|
||
#endregion
|
||
|
||
#region 方法 -> 根据分类获得对应的服务区
|
||
private string getServerPartByType(string param, ServiceModel.Transaction _Transaction)
|
||
{
|
||
//根据类别获得对应的服务区
|
||
List<Model.SERVERPART> _ListSERVERPART = new List<Model.SERVERPART>();
|
||
string OutTypeString = param.ToDecrypt();
|
||
//获得子类
|
||
GetSubServerPartType(ref OutTypeString, param.ToDecrypt(), "", true, _Transaction);
|
||
//获得类别对应的某一个类别下面的数据
|
||
|
||
foreach (Business.SERVERPART _SERVERPART in (new Business.SERVERPART(_Transaction)).FillCollection(
|
||
"where SERVERPART_ID in (select SERVERPART_ID from HIGHWAY_STORAGE.T_SPSTATICTYPE where SERVERPARTTYPE_ID IN( " +
|
||
OutTypeString + ")) order by SERVERPART_INDEX,SERVERPART_CODE"))
|
||
{
|
||
//获得图片的路径
|
||
// string sqlString = @"SELECT * FROM (select A.IMAGE_PATH FROM T_IMAGE A,T_SERVERPARTTYPE B,T_SPSTATICTYPE C
|
||
// WHERE A.IMAGE_ID = B.STATIC_TYPE AND B.SERVERPARTTYPE_ID = C.SERVERPARTTYPE_ID AND C.SERVERPART_ID=" +
|
||
// _SERVERPART.SERVERPART_ID + " AND C.SERVERPARTTYPE_ID IN( " + OutTypeString +
|
||
// ") ORDER BY C.SERVERPARTTYPE_ID DESC) where ROWNUM =1";
|
||
//DataTable _DataTable = (new Business.SERVERPART(_Transaction)).ExecuteDataTable(sqlString);
|
||
//if (_DataTable.Rows.Count != 0)
|
||
//{
|
||
// _SERVERPART. SERVERPART_IPADDRESS = _DataTable.Rows[0][0].ToString();
|
||
//}
|
||
//else
|
||
//{
|
||
// _SERVERPART.SERVERPART_IPADDRESS = "";
|
||
//}
|
||
_SERVERPART.SERVERPART_IPADDRESS = "";
|
||
_SERVERPART.PropertyObject.SERVERPART_DESC = "";
|
||
_ListSERVERPART.Add(_SERVERPART.PropertyObject);
|
||
}
|
||
return JsonHelper.ListToJson<Model.SERVERPART>(_ListSERVERPART, "SERVERPART");
|
||
}
|
||
#endregion
|
||
|
||
#region 方法 -> 根据查询条件获得对应的服务区
|
||
private string getServerPartByName(string param, ServiceModel.Transaction _Transaction)
|
||
{
|
||
//根据类别获得对应的服务区
|
||
List<Model.SERVERPART> _ListSERVERPART = new List<Model.SERVERPART>();
|
||
string OutTypeString = param;
|
||
OutTypeString = "SERVERPART_NAME LIKE '%" + OutTypeString + "%' OR SERVERPART_ADDRESS LIKE '%" + OutTypeString +
|
||
"%' OR EXPRESSWAY_NAME LIKE '%" + OutTypeString + "%' OR OWNEDCOMPANY LIKE '%" + OutTypeString +
|
||
"%' OR MANAGERCOMPANY LIKE '%" + OutTypeString + "%'";
|
||
foreach (Business.SERVERPART _SERVERPART in (new Business.SERVERPART(_Transaction)).FillCollection(
|
||
"WHERE " + OutTypeString + " ORDER BY SERVERPART_INDEX,SERVERPART_CODE"))
|
||
{
|
||
//获得图片的路径
|
||
// string sqlString = @"SELECT * FROM (select A.IMAGE_PATH FROM T_IMAGE A,T_SERVERPARTTYPE B,T_SPSTATICTYPE C
|
||
// WHERE A.IMAGE_ID = B.STATIC_TYPE AND B.SERVERPARTTYPE_ID = C.SERVERPARTTYPE_ID AND C.SERVERPART_ID=" +
|
||
// _SERVERPART.SERVERPART_ID + " AND C.SERVERPARTTYPE_ID IN( " + OutTypeString +
|
||
// ") ORDER BY C.SERVERPARTTYPE_ID DESC) where ROWNUM =1";
|
||
//DataTable _DataTable = (new Business.SERVERPART(_Transaction)).ExecuteDataTable(sqlString);
|
||
//if (_DataTable.Rows.Count != 0)
|
||
//{
|
||
// _SERVERPART. SERVERPART_IPADDRESS = _DataTable.Rows[0][0].ToString();
|
||
//}
|
||
//else
|
||
//{
|
||
// _SERVERPART.SERVERPART_IPADDRESS = "";
|
||
//}
|
||
_SERVERPART.SERVERPART_IPADDRESS = "";
|
||
_SERVERPART.PropertyObject.SERVERPART_DESC = "";
|
||
_ListSERVERPART.Add(_SERVERPART.PropertyObject);
|
||
}
|
||
return JsonHelper.ListToJson<Model.SERVERPART>(_ListSERVERPART, "SERVERPART");
|
||
}
|
||
#endregion
|
||
|
||
#region 方法 -> 获得服务区类别
|
||
public void GetSubServerPartType(ref string RetString, string Pid, string obscureName, bool isValid,
|
||
ServiceModel.Transaction _Transaction, DataTable _SearchDataTable = null)
|
||
{
|
||
|
||
//由于数据量商品类别不可能太多,所以一次性全部取出
|
||
if (_SearchDataTable == null)
|
||
{
|
||
_SearchDataTable = GetServerPartTypeDataSource(_Transaction);
|
||
}
|
||
string SearchString = "TYPE_PID = '" + Pid + "'" + (obscureName == "" ? "" : " AND TYPE_NAME LIKE '" + obscureName +
|
||
"'") + (isValid == true ? " AND TYPE_STATE = '1'" : "");
|
||
//("columnname1 like '%xx%'");
|
||
DataRow[] _DataRowList = _SearchDataTable.Select(SearchString);
|
||
if (_DataRowList.Length == 0)
|
||
{
|
||
return;
|
||
}
|
||
else
|
||
{
|
||
foreach (DataRow _CurrRow in _DataRowList)
|
||
{
|
||
RetString += RetString == "" ? _CurrRow["SERVERPARTTYPE_ID"].ToString() : "," +
|
||
_CurrRow["SERVERPARTTYPE_ID"].ToString();
|
||
GetSubServerPartType(ref RetString, _CurrRow["SERVERPARTTYPE_ID"].ToString(),
|
||
obscureName, isValid, _Transaction, _SearchDataTable);
|
||
}
|
||
}
|
||
}
|
||
|
||
private DataTable GetServerPartTypeDataSource(ServiceModel.Transaction _Transaction)
|
||
{
|
||
string StrSql = "select SERVERPARTTYPE_ID,TYPE_NAME,TYPE_STATE,TYPE_PID from HIGHWAY_STORAGE.T_SERVERPARTTYPE order by TYPE_PID,TYPE_INDEX,TYPE_NAME";
|
||
|
||
return (new Business.SERVERPARTTYPE(_Transaction)).ExecuteDataTable(StrSql, null, 0, 0);
|
||
}
|
||
#endregion
|
||
|
||
public bool IsReusable
|
||
{
|
||
get
|
||
{
|
||
return false;
|
||
}
|
||
}
|
||
|
||
public static bool CheckValidationResult(object sender, X509Certificate certificate, X509Chain chain, SslPolicyErrors errors)
|
||
{
|
||
return true;
|
||
}
|
||
|
||
#region 方法 -> 生成验证码
|
||
/// <summary>
|
||
/// 生成验证码
|
||
/// <param name="n">位数</param>
|
||
/// <returns>验证码字符串</returns>
|
||
private string CreateRandomCode(int n)
|
||
{
|
||
string[] CharArray = charSet.Split(',');
|
||
string randomCode = "";
|
||
int temp = -1;
|
||
Random rand = new Random();
|
||
for (int i = 0; i < n; i++)
|
||
{
|
||
if (temp != -1)
|
||
{
|
||
rand = new Random(i * temp * ((int)DateTime.Now.Ticks));
|
||
}
|
||
int t = rand.Next(CharArray.Length - 1);
|
||
if (temp == t)
|
||
{
|
||
return CreateRandomCode(n);
|
||
}
|
||
temp = t;
|
||
randomCode += CharArray[t];
|
||
}
|
||
return randomCode;
|
||
}
|
||
#endregion
|
||
|
||
#region 方法 -> 日期格式转换
|
||
/// <summary>
|
||
/// 将DateTime类型转换为long类型
|
||
/// </summary>
|
||
/// <param name="dt">时间</param>
|
||
/// <returns></returns>
|
||
public static long ConvertDataTimeLong(DateTime dt)
|
||
{
|
||
DateTime dtStart = TimeZone.CurrentTimeZone.ToLocalTime(new DateTime(1970, 1, 1));
|
||
TimeSpan toNow = dt.Subtract(dtStart);
|
||
long timeStamp = toNow.Ticks;
|
||
timeStamp = long.Parse(timeStamp.ToString().Substring(0, timeStamp.ToString().Length - 7));
|
||
return timeStamp;
|
||
}
|
||
|
||
/// <summary>
|
||
/// 将Long类型转换为DateTime类型
|
||
/// </summary>
|
||
/// <param name="d">long</param>
|
||
/// <returns></returns>s
|
||
public static DateTime ConvertLongDateTime(long d)
|
||
{
|
||
DateTime dtStart = TimeZone.CurrentTimeZone.ToLocalTime(new DateTime(1970, 1, 1));
|
||
long lTime = long.Parse(d + "0000000");
|
||
TimeSpan toNow = new TimeSpan(lTime);
|
||
DateTime dtResult = dtStart.Add(toNow);
|
||
return dtResult;
|
||
}
|
||
#endregion
|
||
|
||
#region 创建md5 16位大写加密
|
||
public static string CreateMD5(string text)
|
||
{
|
||
var md5 = new System.Security.Cryptography.MD5CryptoServiceProvider();
|
||
//换成utf8后对于中文加密也适用
|
||
byte[] output = md5.ComputeHash(System.Text.Encoding.UTF8.GetBytes(text));
|
||
string pass2md5 = BitConverter.ToString(output, 4, 8).Replace("-", "");
|
||
//pass2md5 = pass2md5.ToUpper();
|
||
return pass2md5;
|
||
}
|
||
#endregion
|
||
}
|
||
} |