2541 lines
155 KiB
C#
2541 lines
155 KiB
C#
using Newtonsoft.Json.Linq;
|
||
using OperatingData.SDK;
|
||
using System;
|
||
using System.Collections.Generic;
|
||
using System.Data;
|
||
using System.Linq;
|
||
using System.Web;
|
||
|
||
namespace TableDataService.Method
|
||
{
|
||
public class UploadMethod
|
||
{
|
||
#region 方法 -> 数据上传子项
|
||
/// <summary>
|
||
///
|
||
/// </summary>
|
||
/// <param name="_OracleHelper">数据库连接</param>
|
||
/// <param name="tableName">上传的表名称</param>
|
||
/// <param name="jsonString">上传的数据集合,json字符串</param>
|
||
/// <param name="codes">服务区编码、门店编码、机器编码数据集合</param>
|
||
/// <param name="maxDataQuantity">字段暂不使用</param>
|
||
/// <returns></returns>
|
||
public static string DataUploading(OracleHelper _OracleHelper, string tableName,
|
||
string jsonString, string[] codes, int maxDataQuantity = 4)
|
||
{
|
||
string strBack = string.Empty; //返回内容
|
||
string _ISCheckData = string.Empty; //存储未上传必填项的数据集
|
||
string[] _RequiredDatas = null; //定义上传数据的必填项内容
|
||
bool isReplaceColumnName = false; //是否需要替换字段名称
|
||
try
|
||
{
|
||
//营收数据相关新表
|
||
/* T_SELLMASTER 销售流水主表【后续删除】
|
||
* T_SELLDETAILS 销售流水详情表【后续删除】
|
||
* T_ENDACCOUNT_NEW 日结报表
|
||
* T_PERSONSELL_NEW 收银交班表
|
||
* T_COMMODITYSALE_NEW 单品销售表【改成文本传输】
|
||
* T_COMMODITYSALE_EXTAR 特殊单品报表【后续删除】
|
||
* T_DATACOLLECTION 十分钟营收数据表【后续迁移】
|
||
*/
|
||
|
||
//营收数据相关旧表【云端传输删除】
|
||
/* T_SELLDATA 销售流水表【旧】
|
||
* T_TRANSFER_SELLDATA 销售流水集合表【旧】
|
||
* T_ENDACCOUNT 日结账期表【旧】
|
||
* T_PERSONSELL 收银员交班表【旧】
|
||
* T_COMMODITYSALE 单品报表【旧】
|
||
* T_TRANSFER_SALE 单品数据集合【旧】
|
||
* T_EXCEPTION 异常稽核数据表【旧】
|
||
*/
|
||
|
||
//收银稽核相关表
|
||
/* T_ABNORMALITY 异常操作记录主表【改成文本传输】
|
||
* T_ABNORMALITYDETAIL 异常操作稽核统计表【改成文本传输】
|
||
* T_ABNOEMALITYANALYSIS 异常操作稽核统计表【改成文本传输】
|
||
*/
|
||
|
||
//移动支付相关表
|
||
/* T_SELLDATA_EXTRA 离线移动支付交易记录表【收银前端删除】
|
||
* T_MOBILE_PAY 收银前端异常移动支付数据表【改成文本传输】
|
||
*/
|
||
|
||
//会员促销相关表
|
||
/* T_CONSUMPTIONRECORD 促销流水表【后续删除】
|
||
* T_PROMOTIONRECORD 促销流水表-2021.04新增,未启用
|
||
* T_RECHARGERECORD 企业内部会员消费记录表【商业集团食堂离线支付交易记录】【收银前端删除】
|
||
*/
|
||
|
||
//客群分析相关表【重新设置,规划传输链路】
|
||
/* T_CUSTOMERINFO 客群分析数据表
|
||
* T_CUSTOMERANALYSIS 客单时段统计表
|
||
* T_COMMODITYANALYSIS 推荐单品统计表
|
||
* T_SALESANALYSIS 客单区段统计表
|
||
* T_SALESINTERVALANALYSIS 客单时段统计表
|
||
*/
|
||
|
||
/* T_BUSINESSTIME 门店营业时间表【删除】
|
||
* T_USERSATISFACTION 满意度评价【删除】
|
||
* T_ADVERTFEEDBACK 广告播放情况【删除】
|
||
* T_TRANSMISSIONERROR 数据传输异常记录表【删除】
|
||
* T_TRANSFERSTATISTICS 数据传输上传统计表【删除】
|
||
* T_COMMODITYEX_NEW 收银机本地商品数据表【用于比对数据下发状况,未正式启用】【删除】
|
||
*/
|
||
switch (tableName)
|
||
{
|
||
case "HIGHWAY_EXCHANGE.T_SELLMASTER":
|
||
#region HIGHWAY_EXCHANGE.T_SELLMASTER 销售流水主表
|
||
//必填项
|
||
_RequiredDatas = new string[] { "SELLMASTER_ID", "SELLMASTER_CODE" };
|
||
_ISCheckData = ISCheckData(jsonString, _RequiredDatas);
|
||
if (_ISCheckData != null)
|
||
{
|
||
strBack = _ISCheckData;
|
||
break;
|
||
}
|
||
List<Model.EXCHANGE.SELLMASTER> _DataSellmaster =
|
||
JsonHelper.JSONStringToListUTC<Model.EXCHANGE.SELLMASTER>(jsonString);
|
||
if (_DataSellmaster != null && _DataSellmaster.Count > 0)
|
||
{
|
||
string _strShopCode = "";
|
||
|
||
var _ShopCodeList = _DataSellmaster.Select(p => p.SHOPCODE).Distinct().ToArray();
|
||
foreach (var _ShopCodeTemp in _ShopCodeList)
|
||
{
|
||
_strShopCode += (string.IsNullOrWhiteSpace(_strShopCode) ? "'" : ",'") + _ShopCodeTemp.Trim() + "'";
|
||
}
|
||
|
||
var _MinDate = _DataSellmaster.Min(p => p.SELLMASTER_DATE);
|
||
if (_MinDate == null || _MinDate.Value == DateTime.MinValue)
|
||
{
|
||
_MinDate = DateTime.Now;
|
||
}
|
||
|
||
var _MaxDate = _DataSellmaster.Max(p => p.SELLMASTER_DATE);
|
||
if (_MaxDate == null || _MaxDate.Value == DateTime.MinValue)
|
||
{
|
||
_MaxDate = DateTime.Now;
|
||
}
|
||
//该服务区所有数据
|
||
DataTable _DataTable = _OracleHelper.ExcuteSqlGetDataSet(
|
||
$@"SELECT SELLMASTER_CODE FROM HIGHWAY_EXCHANGE.T_SELLMASTER
|
||
WHERE SERVERPARTCODE = '{codes[0]}' AND SHOPCODE IN ({_strShopCode}) AND
|
||
MACHINECODE = '{codes[3]}' AND SELLMASTER_DATE BETWEEN TO_DATE('{codes[4]}','YYYY/MM/DD HH24:MI:SS') AND
|
||
TO_DATE('{_MaxDate.Value.ToString("yyyy/MM/dd HH:mm:ss")}','YYYY/MM/DD HH24:MI:SS') ").Tables[0];
|
||
|
||
List<Model.EXCHANGE.SELLMASTER> _InsertList = new List<Model.EXCHANGE.SELLMASTER>();//需插入的集合
|
||
List<Model.EXCHANGE.SELLMASTER> _UpdateList = new List<Model.EXCHANGE.SELLMASTER>();//需更新的集合
|
||
DataRow[] _DataRows = null; //临时DataRow数组
|
||
|
||
foreach (Model.EXCHANGE.SELLMASTER _SELLMASTER in _DataSellmaster)
|
||
{
|
||
if (_DataTable != null && _DataTable.Rows.Count > 0)
|
||
{
|
||
_DataRows = _DataTable.Select($" SELLMASTER_CODE = '{_SELLMASTER.SELLMASTER_CODE}'");
|
||
if (_DataRows != null && _DataRows.Length > 0)
|
||
{
|
||
//记录已存在、需更新的数据
|
||
_UpdateList.Add(_SELLMASTER);
|
||
continue;
|
||
}
|
||
}
|
||
|
||
//需更新的集合
|
||
_InsertList.Add(_SELLMASTER);
|
||
}
|
||
|
||
if (_InsertList.Count + _UpdateList.Count == _DataSellmaster.Count)
|
||
{
|
||
if (_InsertList.Count > 0)
|
||
{
|
||
OperationDataHelper<Model.EXCHANGE.SELLMASTER>.InsertTableData(_OracleHelper, _InsertList, "HIGHWAY_EXCHANGE.T_SELLMASTER");
|
||
}
|
||
|
||
strBack = "{\"error\": 1 ,\"msg\": \"添加成功!\",\"rows\":[]}";
|
||
}
|
||
else
|
||
{
|
||
strBack = "{\"error\": -1 ,\"msg\": \"添加失败:数据分割失败!\",\"rows\":[]}";
|
||
}
|
||
}
|
||
else
|
||
{
|
||
strBack = "{\"error\": -1 ,\"msg\": \"添加失败:JSON参数解析异常!\",\"rows\":[]}";
|
||
}
|
||
#endregion
|
||
break;
|
||
case "HIGHWAY_EXCHANGE.T_SELLDETAILS":
|
||
#region HIGHWAY_EXCHANGE.T_SELLDETAILS 销售流水详情表
|
||
//必填项
|
||
_RequiredDatas = new string[] { "SELLDETAILS_ID", "SELLMASTER_CODE", "CREATE_DATE" };
|
||
_ISCheckData = ISCheckData(jsonString, _RequiredDatas);
|
||
if (_ISCheckData != null)
|
||
{
|
||
strBack = _ISCheckData;
|
||
break;
|
||
}
|
||
|
||
List<Model.EXCHANGE.SELLDETAILS> _DataSelldetails = JsonHelper.JSONStringToListUTC<Model.EXCHANGE.SELLDETAILS>(jsonString);
|
||
if (_DataSelldetails != null && _DataSelldetails.Count > 0)
|
||
{
|
||
var _MinDate = _DataSelldetails.Min(p => p.CREATE_DATE);
|
||
if (_MinDate == null || _MinDate.Value == DateTime.MinValue)
|
||
{
|
||
_MinDate = DateTime.Now;
|
||
}
|
||
|
||
var _MaxDate = _DataSelldetails.Max(p => p.CREATE_DATE);
|
||
if (_MaxDate == null || _MaxDate.Value == DateTime.MinValue)
|
||
{
|
||
_MaxDate = DateTime.Now;
|
||
}
|
||
//该服务区所有数据
|
||
DataTable _DataTable = _OracleHelper.ExcuteSqlGetDataSet(
|
||
$@"SELECT SELLMASTER_CODE,COMMODITY_CODE,LINENUM
|
||
FROM HIGHWAY_EXCHANGE.T_SELLDETAILS
|
||
WHERE CREATE_DATE BETWEEN TO_DATE('{_MinDate.Value.ToString("yyyy/MM/dd HH:mm:ss")}','YYYY/MM/DD HH24:MI:SS') AND
|
||
TO_DATE('{_MaxDate.Value.ToString("yyyy/MM/dd HH:mm:ss")}','YYYY/MM/DD HH24:MI:SS')").Tables[0];
|
||
|
||
List<Model.EXCHANGE.SELLDETAILS> _InsertList = new List<Model.EXCHANGE.SELLDETAILS>();//需插入的集合
|
||
List<Model.EXCHANGE.SELLDETAILS> _UpdateList = new List<Model.EXCHANGE.SELLDETAILS>();//需更新的集合
|
||
DataRow[] _DataRows = null; //临时DataRow数组
|
||
|
||
foreach (Model.EXCHANGE.SELLDETAILS _SELLDETAILS in _DataSelldetails)
|
||
{
|
||
if (_DataTable != null && _DataTable.Rows.Count > 0)
|
||
{
|
||
_DataRows = _DataTable.Select(
|
||
$" SELLMASTER_CODE = '{_SELLDETAILS.SELLMASTER_CODE}' AND " +
|
||
$" COMMODITY_CODE = '{_SELLDETAILS.COMMODITY_CODE}' AND " +
|
||
$" LINENUM = '{_SELLDETAILS.LINENUM}'");
|
||
if (_DataRows != null && _DataRows.Length > 0)
|
||
{
|
||
//记录已存在、需更新的数据
|
||
_UpdateList.Add(_SELLDETAILS);
|
||
continue;
|
||
}
|
||
}
|
||
|
||
//需更新的集合
|
||
_InsertList.Add(_SELLDETAILS);
|
||
}
|
||
|
||
if (_InsertList.Count + _UpdateList.Count == _DataSelldetails.Count)
|
||
{
|
||
if (_InsertList.Count > 0)
|
||
{
|
||
OperationDataHelper<Model.EXCHANGE.SELLDETAILS>.InsertTableData(
|
||
_OracleHelper, _InsertList, "HIGHWAY_EXCHANGE.T_SELLDETAILS");
|
||
}
|
||
|
||
strBack = "{\"error\": 1 ,\"msg\": \"添加成功!\",\"rows\":[]}";
|
||
}
|
||
else
|
||
{
|
||
strBack = "{\"error\": -1 ,\"msg\": \"添加失败:数据分割失败!\",\"rows\":[]}";
|
||
}
|
||
}
|
||
else
|
||
{
|
||
strBack = "{\"error\": -1 ,\"msg\": \"添加失败:JSON参数解析异常!\",\"rows\":[]}";
|
||
}
|
||
#endregion
|
||
break;
|
||
case "HIGHWAY_EXCHANGE.T_ENDACCOUNT_NEW":
|
||
#region HIGHWAY_EXCHANGE.T_ENDACCOUNT_NEW 日结报表
|
||
//设置必填项:日结账单内码【ENDACCOUNT_ID】、日结账单编码(唯一值)ENDACCOUNT_CODE
|
||
_RequiredDatas = new string[] { "ENDACCOUNT_ID", "ENDACCOUNT_CODE" };
|
||
//验证上传的数据中是否缺失必填项
|
||
_ISCheckData = ISCheckData(jsonString, _RequiredDatas);
|
||
//存储缺失必填项的数据
|
||
if (_ISCheckData != null)
|
||
{
|
||
strBack = _ISCheckData;
|
||
break;
|
||
}
|
||
//解析json字符串,转化为数据对象ENDACCOUNT_NEW
|
||
List<Model.EXCHANGE.ENDACCOUNT_NEW> _DataEndaccount_new =
|
||
JsonHelper.JSONStringToListUTC<Model.EXCHANGE.ENDACCOUNT_NEW>(jsonString);
|
||
if (_DataEndaccount_new != null && _DataEndaccount_new.Count > 0)
|
||
{
|
||
string _strShopCode = "";
|
||
var _ShopCodeList = _DataEndaccount_new.Select(p => new
|
||
{
|
||
p.SERVERPARTCODE, //服务区编码
|
||
p.SHOPCODE, //门店编码
|
||
p.MACHINECODE //机器编码
|
||
}).Distinct().ToArray();
|
||
//获取上传的服务区门店机器信息集合,用于获取已上传至服务器的日结数据
|
||
foreach (var _ShopCodeTemp in _ShopCodeList)
|
||
{
|
||
_strShopCode += (string.IsNullOrWhiteSpace(_strShopCode) ? "'" : ",'") +
|
||
_ShopCodeTemp.SERVERPARTCODE.Trim() +
|
||
_ShopCodeTemp.SHOPCODE.Trim() +
|
||
_ShopCodeTemp.MACHINECODE.Trim() + "'";
|
||
}
|
||
//获取上传的数据集中最小的日结时间
|
||
var _MinDate = _DataEndaccount_new.Min(p => p.STARTDATE);
|
||
if (_MinDate == null || _MinDate.Value == DateTime.MinValue)
|
||
{
|
||
_MinDate = DateTime.Now;
|
||
}
|
||
//获取上传的数据集中最大的日结时间
|
||
var _MaxDate = _DataEndaccount_new.Max(p => p.STARTDATE);
|
||
if (_MaxDate == null || _MaxDate.Value == DateTime.MinValue)
|
||
{
|
||
_MaxDate = DateTime.Now;
|
||
}
|
||
//查询最小和最大日结时间范围内,该服务区门店的日结数据
|
||
DataTable _DataTable = _OracleHelper.ExcuteSqlGetDataSet(
|
||
$@"SELECT ENDACCOUNT_ID,ENDACCOUNT_CODE
|
||
FROM HIGHWAY_EXCHANGE.T_ENDACCOUNT_NEW
|
||
WHERE SERVERPARTCODE || SHOPCODE || MACHINECODE IN ({_strShopCode}) AND
|
||
STARTDATE BETWEEN TO_DATE('{_MinDate.Value.ToString("yyyy/MM/dd HH:mm:ss")}','YYYY/MM/DD HH24:MI:SS') AND
|
||
TO_DATE('{_MaxDate.Value.ToString("yyyy/MM/dd HH:mm:ss")}','YYYY/MM/DD HH24:MI:SS')").Tables[0];
|
||
|
||
List<Model.EXCHANGE.ENDACCOUNT_NEW> _InsertList = new List<Model.EXCHANGE.ENDACCOUNT_NEW>();//需插入的集合
|
||
List<Model.EXCHANGE.ENDACCOUNT_NEW> _UpdateList = new List<Model.EXCHANGE.ENDACCOUNT_NEW>();//需更新的集合
|
||
List<Model.EXCHANGE.ENDACCOUNT_NEW> _ContinueList = new List<Model.EXCHANGE.ENDACCOUNT_NEW>();//不需更新的集合
|
||
DataRow[] _DataRows = null; //临时DataRow数组
|
||
//遍历日结数据集合,获取需要插入的集合、更新的集合、过滤还未结账的数据集合
|
||
foreach (Model.EXCHANGE.ENDACCOUNT_NEW _ENDACCOUNT_NEW in _DataEndaccount_new)
|
||
{
|
||
if (_DataTable != null && _DataTable.Rows.Count > 0)
|
||
{
|
||
//判断日结数据是否已上传
|
||
_DataRows = _DataTable.Select($" ENDACCOUNT_CODE = '{_ENDACCOUNT_NEW.ENDACCOUNT_CODE}'");
|
||
if (_DataRows != null && _DataRows.Length > 0)
|
||
{
|
||
if (_ENDACCOUNT_NEW.ENDDATE == null)
|
||
{
|
||
//记录已存在、不需要更新的数据(正在进行的账期数据)
|
||
_ContinueList.Add(_ENDACCOUNT_NEW);
|
||
}
|
||
else
|
||
{
|
||
//记录已存在、需更新的数据
|
||
_UpdateList.Add(_ENDACCOUNT_NEW);
|
||
}
|
||
continue;
|
||
}
|
||
}
|
||
|
||
//需更新的集合
|
||
_InsertList.Add(_ENDACCOUNT_NEW);
|
||
}
|
||
//判断数据完整性,插入集合数量+更新集合数量+过滤集合数量=总数据量
|
||
if (_InsertList.Count + _UpdateList.Count + _ContinueList.Count == _DataEndaccount_new.Count)
|
||
{
|
||
if (_InsertList.Count > 0)
|
||
{
|
||
//执行日结数据插入语句
|
||
OperationDataHelper<Model.EXCHANGE.ENDACCOUNT_NEW>.InsertTableData(
|
||
_OracleHelper, _InsertList, "HIGHWAY_EXCHANGE.T_ENDACCOUNT_NEW");
|
||
}
|
||
|
||
if (_UpdateList.Count > 0)
|
||
{
|
||
try
|
||
{
|
||
//执行日结数据更新语句
|
||
OperationDataHelper<Model.EXCHANGE.ENDACCOUNT_NEW>.UpdateTableData(
|
||
_OracleHelper, _UpdateList, "HIGHWAY_EXCHANGE.T_ENDACCOUNT_NEW",
|
||
new string[] { "ENDACCOUNT_CODE" });
|
||
}
|
||
catch (Exception)
|
||
{
|
||
//出现异常,返回更新失败的集合
|
||
strBack = "{\"error\": 2 ,\"msg\": \"添加成功,更新失败!\",\"rows\":" +
|
||
JsonHelper.ListToJson<Model.EXCHANGE.ENDACCOUNT_NEW>(_UpdateList, "rows", false) + "}";
|
||
break;
|
||
}
|
||
}
|
||
//添加、更新成功无需传递任何参数。
|
||
strBack = "{\"error\": 1 ,\"msg\": \"添加成功!\",\"rows\":[]}";
|
||
}
|
||
else
|
||
{
|
||
strBack = "{\"error\": -1 ,\"msg\": \"添加失败:数据分割失败!\",\"rows\":[]}";
|
||
}
|
||
}
|
||
else
|
||
{
|
||
strBack = "{\"error\": -1 ,\"msg\": \"添加失败:JSON参数解析异常!\",\"rows\":[]}";
|
||
}
|
||
#endregion
|
||
break;
|
||
case "HIGHWAY_EXCHANGE.T_PERSONSELL_NEW":
|
||
#region HIGHWAY_EXCHANGE.T_PERSONSELL_NEW 收银交班表
|
||
//必填项
|
||
_RequiredDatas = new string[] { "PERSONSELL_ID", "ENDACCOUNT_CODE", "WOKER_NUMBER" };
|
||
_ISCheckData = ISCheckData(jsonString, _RequiredDatas);
|
||
if (_ISCheckData != null)
|
||
{
|
||
strBack = _ISCheckData;
|
||
break;
|
||
}
|
||
List<Model.EXCHANGE.PERSONSELL_NEW> _DataPersonsell_new =
|
||
JsonHelper.JSONStringToListUTC<Model.EXCHANGE.PERSONSELL_NEW>(jsonString);
|
||
if (_DataPersonsell_new != null && _DataPersonsell_new.Count > 0)
|
||
{
|
||
//从上传的数据中获取服务区、门店、收银机号信息,用于服务器已有数据读取和判断
|
||
string str_DataCode = "";
|
||
var _DataCodeList = _DataPersonsell_new.Select(p => new
|
||
{
|
||
p.SERVERPARTCODE,
|
||
p.SHOPCODE,
|
||
p.MACHINECODE
|
||
}).Distinct().ToArray();
|
||
foreach (var _DataCodeTemp in _DataCodeList)
|
||
{
|
||
str_DataCode += (string.IsNullOrWhiteSpace(str_DataCode) ? "'" : ",'") +
|
||
_DataCodeTemp.SERVERPARTCODE.Trim() +
|
||
_DataCodeTemp.SHOPCODE.Trim() +
|
||
_DataCodeTemp.MACHINECODE.Trim() + "'";
|
||
}
|
||
//获取上传的数据中最小的账期时间
|
||
var _MinDate = _DataPersonsell_new.Min(p => p.STARTDATE);
|
||
if (_MinDate == null || _MinDate.Value == DateTime.MinValue)
|
||
{
|
||
_MinDate = DateTime.Now;
|
||
}
|
||
//获取上传的数据中最大的账期时间
|
||
var _MaxDate = _DataPersonsell_new.Max(p => p.STARTDATE);
|
||
if (_MaxDate == null || _MaxDate.Value == DateTime.MinValue)
|
||
{
|
||
_MaxDate = DateTime.Now;
|
||
}
|
||
|
||
//该服务区所有数据
|
||
DataTable _DataTable = _OracleHelper.ExcuteSqlGetDataSet(
|
||
$@"SELECT PERSONSELL_ID,ENDACCOUNT_CODE,WOKER_NUMBER
|
||
FROM HIGHWAY_EXCHANGE.T_PERSONSELL_NEW
|
||
WHERE SERVERPARTCODE || SHOPCODE || MACHINECODE IN ({str_DataCode}) AND
|
||
STARTDATE BETWEEN TO_DATE('{_MinDate.Value.ToString("yyyy/MM/dd HH:mm:ss")}','YYYY/MM/DD HH24:MI:SS') AND
|
||
TO_DATE('{_MaxDate.Value.ToString("yyyy/MM/dd HH:mm:ss")}','YYYY/MM/DD HH24:MI:SS')").Tables[0];
|
||
|
||
List<Model.EXCHANGE.PERSONSELL_NEW> _InsertList = new List<Model.EXCHANGE.PERSONSELL_NEW>();//需插入的集合
|
||
List<Model.EXCHANGE.PERSONSELL_NEW> _UpdateList = new List<Model.EXCHANGE.PERSONSELL_NEW>();//需更新的集合
|
||
DataRow[] _DataRows = null; //临时DataRow数组
|
||
|
||
foreach (Model.EXCHANGE.PERSONSELL_NEW _PERSONSELL_NEW in _DataPersonsell_new)
|
||
{
|
||
if (_DataTable != null && _DataTable.Rows.Count > 0)
|
||
{
|
||
_DataRows = _DataTable.Select(
|
||
$" ENDACCOUNT_CODE = '{_PERSONSELL_NEW.ENDACCOUNT_CODE}' AND " +
|
||
$" WOKER_NUMBER = {_PERSONSELL_NEW.WOKER_NUMBER}");
|
||
if (_DataRows != null && _DataRows.Length > 0)
|
||
{
|
||
//记录已存在、需更新的数据
|
||
_UpdateList.Add(_PERSONSELL_NEW);
|
||
continue;
|
||
}
|
||
}
|
||
//需更新的集合
|
||
_InsertList.Add(_PERSONSELL_NEW);
|
||
}
|
||
|
||
if (_InsertList.Count + _UpdateList.Count == _DataPersonsell_new.Count)
|
||
{
|
||
if (_InsertList.Count > 0)
|
||
{
|
||
OperationDataHelper<Model.EXCHANGE.PERSONSELL_NEW>.InsertTableData(
|
||
_OracleHelper, _InsertList, "HIGHWAY_EXCHANGE.T_PERSONSELL_NEW");
|
||
}
|
||
|
||
if (_UpdateList.Count > 0)
|
||
{
|
||
try
|
||
{
|
||
OperationDataHelper<Model.EXCHANGE.PERSONSELL_NEW>.UpdateTableData(
|
||
_OracleHelper, _UpdateList, "HIGHWAY_EXCHANGE.T_PERSONSELL_NEW",
|
||
new string[] { "ENDACCOUNT_CODE", "WOKER_NUMBER" });
|
||
}
|
||
catch (Exception)
|
||
{
|
||
strBack = "{\"error\": 2 ,\"msg\": \"添加成功,更新失败!\",\"rows\":" +
|
||
JsonHelper.ListToJson<Model.EXCHANGE.PERSONSELL_NEW>(_UpdateList, "rows", false) + "}";
|
||
break;
|
||
}
|
||
}
|
||
//添加、更新成功无需传递任何参数。
|
||
strBack = "{\"error\": 1 ,\"msg\": \"添加成功!\",\"rows\":[]}";
|
||
}
|
||
else
|
||
{
|
||
strBack = "{\"error\": -1 ,\"msg\": \"添加失败:数据分割失败!\",\"rows\":[]}";
|
||
}
|
||
}
|
||
else
|
||
{
|
||
strBack = "{\"error\": -1 ,\"msg\": \"添加失败:JSON参数解析异常!\",\"rows\":[]}";
|
||
}
|
||
#endregion
|
||
break;
|
||
case "HIGHWAY_EXCHANGE.T_COMMODITYSALE_NEW":
|
||
#region HIGHWAY_EXCHANGE.T_COMMODITYSALE_NEW 单品销售表
|
||
//必填项
|
||
_RequiredDatas = new string[] { "COMMODITYSALE_ID", "ENDACCOUNT_CODE", "CREATE_DATE" };
|
||
_ISCheckData = ISCheckData(jsonString, _RequiredDatas);
|
||
if (_ISCheckData != null)
|
||
{
|
||
strBack = _ISCheckData;
|
||
break;
|
||
}
|
||
|
||
List<Model.EXCHANGE.COMMODITYSALE_NEW> _DataCommoditysale_new =
|
||
JsonHelper.JSONStringToListUTC<Model.EXCHANGE.COMMODITYSALE_NEW>(jsonString);
|
||
if (_DataCommoditysale_new != null && _DataCommoditysale_new.Count > 0)
|
||
{
|
||
var _MinDate = _DataCommoditysale_new.Min(p => p.CREATE_DATE);
|
||
if (_MinDate == null || _MinDate.Value == DateTime.MinValue)
|
||
{
|
||
_MinDate = DateTime.Now;
|
||
}
|
||
|
||
var _MaxDate = _DataCommoditysale_new.Max(p => p.CREATE_DATE);
|
||
if (_MaxDate == null || _MaxDate.Value == DateTime.MinValue)
|
||
{
|
||
_MaxDate = DateTime.Now;
|
||
}
|
||
//该服务区所有数据
|
||
DataTable _DataTable = _OracleHelper.ExcuteSqlGetDataSet(
|
||
$@"SELECT ENDACCOUNT_CODE,COMMODITY_CODE,WOKER_NUMBER
|
||
FROM HIGHWAY_EXCHANGE.T_COMMODITYSALE_NEW
|
||
WHERE CREATE_DATE BETWEEN TO_DATE('{_MinDate.Value.ToString("yyyy/MM/dd HH:mm:ss")}','YYYY/MM/DD HH24:MI:SS') AND
|
||
TO_DATE('{_MaxDate.Value.ToString("yyyy/MM/dd HH:mm:ss")}','YYYY/MM/DD HH24:MI:SS') ").Tables[0];
|
||
|
||
List<Model.EXCHANGE.COMMODITYSALE_NEW> _InsertList = new List<Model.EXCHANGE.COMMODITYSALE_NEW>();//需插入的集合
|
||
List<Model.EXCHANGE.COMMODITYSALE_NEW> _UpdateList = new List<Model.EXCHANGE.COMMODITYSALE_NEW>();//需更新的集合
|
||
DataRow[] _DataRows = null; //临时DataRow数组
|
||
|
||
foreach (Model.EXCHANGE.COMMODITYSALE_NEW _COMMODITYSALE_NEW in _DataCommoditysale_new)
|
||
{
|
||
if (_DataTable != null && _DataTable.Rows.Count > 0)
|
||
{
|
||
_DataRows = _DataTable.Select(
|
||
$" ENDACCOUNT_CODE = '{_COMMODITYSALE_NEW.ENDACCOUNT_CODE}' AND " +
|
||
$" COMMODITY_CODE = '{_COMMODITYSALE_NEW.COMMODITY_CODE}' AND " +
|
||
$" WOKER_NUMBER = '{_COMMODITYSALE_NEW.WOKER_NUMBER}'");
|
||
if (_DataRows != null && _DataRows.Length > 0)
|
||
{
|
||
//记录已存在、需更新的数据
|
||
_UpdateList.Add(_COMMODITYSALE_NEW);
|
||
continue;
|
||
}
|
||
}
|
||
|
||
//需更新的集合
|
||
_InsertList.Add(_COMMODITYSALE_NEW);
|
||
}
|
||
|
||
if (_InsertList.Count + _UpdateList.Count == _DataCommoditysale_new.Count)
|
||
{
|
||
if (_InsertList.Count > 0)
|
||
{
|
||
OperationDataHelper<Model.EXCHANGE.COMMODITYSALE_NEW>.InsertTableData(
|
||
_OracleHelper, _InsertList, "HIGHWAY_EXCHANGE.T_COMMODITYSALE_NEW");
|
||
}
|
||
|
||
strBack = "{\"error\": 1 ,\"msg\": \"添加成功!\",\"rows\":[]}";
|
||
}
|
||
else
|
||
{
|
||
strBack = "{\"error\": -1 ,\"msg\": \"添加失败:数据分割失败!\",\"rows\":[]}";
|
||
}
|
||
}
|
||
else
|
||
{
|
||
strBack = "{\"error\": -1 ,\"msg\": \"添加失败:JSON参数解析异常!\",\"rows\":[]}";
|
||
}
|
||
#endregion
|
||
break;
|
||
case "HIGHWAY_EXCHANGE.T_COMMODITYSALE_EXTAR":
|
||
#region HIGHWAY_EXCHANGE.T_COMMODITYSALE_EXTAR 特殊单品报表
|
||
//必填项
|
||
_RequiredDatas = new string[] { "COMMODITYSALE_ID", "STARTDATE",
|
||
"ENDDATE", "SERVERPARTCODE", "SHOPCODE", "MACHINECODE" };
|
||
_ISCheckData = ISCheckData(jsonString, _RequiredDatas);
|
||
if (_ISCheckData != null)
|
||
{
|
||
strBack = _ISCheckData;
|
||
break;
|
||
}
|
||
List<Model.EXCHANGE.COMMODITYSALE_EXTAR> _DataCommoditysale_extar =
|
||
JsonHelper.JSONStringToListUTC<Model.EXCHANGE.COMMODITYSALE_EXTAR>(jsonString);
|
||
if (_DataCommoditysale_extar != null && _DataCommoditysale_extar.Count > 0)
|
||
{
|
||
string _strShopCode = "";
|
||
var _ShopCodeList = _DataCommoditysale_extar.Select(p => p.SHOPCODE).Distinct().ToArray();
|
||
foreach (var _ShopCodeTemp in _ShopCodeList)
|
||
{
|
||
_strShopCode += (string.IsNullOrWhiteSpace(_strShopCode) ? "'" : ",'") + _ShopCodeTemp.Trim() + "'";
|
||
}
|
||
|
||
var _MinDate = _DataCommoditysale_extar.Min(p => p.STARTDATE);
|
||
if (_MinDate == null || _MinDate.Value == DateTime.MinValue)
|
||
{
|
||
_MinDate = DateTime.Now;
|
||
}
|
||
|
||
var _MaxDate = _DataCommoditysale_extar.Max(p => p.STARTDATE);
|
||
if (_MaxDate == null || _MaxDate.Value == DateTime.MinValue)
|
||
{
|
||
_MaxDate = DateTime.Now;
|
||
}
|
||
//该服务区所有数据
|
||
DataTable _DataTable = _OracleHelper.ExcuteSqlGetDataSet(
|
||
$@"SELECT COMMODITYSALE_ID,STARTDATE,ENDDATE,
|
||
SERVERPARTCODE,SHOPCODE,MACHINECODE
|
||
FROM HIGHWAY_EXCHANGE.T_COMMODITYSALE_EXTAR
|
||
WHERE SERVERPARTCODE = '{codes[0]}' AND SHOPCODE IN ({_strShopCode}) AND
|
||
STARTDATE BETWEEN TO_DATE('{_MinDate.Value.ToString("yyyy/MM/dd HH:mm:ss")}','YYYY/MM/DD HH24:MI:SS') AND
|
||
TO_DATE('{_MaxDate.Value.ToString("yyyy/MM/dd HH:mm:ss")}','YYYY/MM/DD HH24:MI:SS')").Tables[0];
|
||
|
||
List<Model.EXCHANGE.COMMODITYSALE_EXTAR> _InsertList = new List<Model.EXCHANGE.COMMODITYSALE_EXTAR>();//需插入的集合
|
||
List<Model.EXCHANGE.COMMODITYSALE_EXTAR> _UpdateList = new List<Model.EXCHANGE.COMMODITYSALE_EXTAR>();//需更新的集合
|
||
DataRow[] _DataRows = null; //临时DataRow数组
|
||
|
||
foreach (Model.EXCHANGE.COMMODITYSALE_EXTAR _COMMODITYSALE_EXTAR in _DataCommoditysale_extar)
|
||
{
|
||
if (_DataTable != null && _DataTable.Rows.Count > 0)
|
||
{
|
||
_DataRows = _DataTable.Select(
|
||
$" COMMODITYSALE_ID = {_COMMODITYSALE_EXTAR.COMMODITYSALE_ID} AND " +
|
||
$" STARTDATE = '{_COMMODITYSALE_EXTAR.STARTDATE.ToString()}' AND " +
|
||
$" ENDDATE = '{_COMMODITYSALE_EXTAR.ENDDATE.ToString()}' AND " +
|
||
$" SERVERPARTCODE = '{_COMMODITYSALE_EXTAR.SERVERPARTCODE}' AND " +
|
||
$" SHOPCODE = '{_COMMODITYSALE_EXTAR.SHOPCODE}' AND " +
|
||
$" MACHINECODE = '{_COMMODITYSALE_EXTAR.MACHINECODE}'");
|
||
if (_DataRows != null && _DataRows.Length > 0)
|
||
{
|
||
//记录已存在、需更新的数据
|
||
_UpdateList.Add(_COMMODITYSALE_EXTAR);
|
||
continue;
|
||
}
|
||
}
|
||
|
||
//需更新的集合
|
||
_InsertList.Add(_COMMODITYSALE_EXTAR);
|
||
}
|
||
|
||
if (_InsertList.Count + _UpdateList.Count == _DataCommoditysale_extar.Count)
|
||
{
|
||
if (_InsertList.Count > 0)
|
||
{
|
||
|
||
OperationDataHelper<Model.EXCHANGE.COMMODITYSALE_EXTAR>.InsertTableData(
|
||
_OracleHelper, _InsertList, "HIGHWAY_EXCHANGE.T_COMMODITYSALE_EXTAR");
|
||
}
|
||
|
||
//if (_UpdateList.Count > 0)
|
||
//{
|
||
// try
|
||
// {
|
||
// OperationDataHelper<Model.EXCHANGE.COMMODITYSALE_EXTAR>.UpdateTableData(
|
||
// _OracleHelper, _UpdateList, "HIGHWAY_EXCHANGE.T_COMMODITYSALE_EXTAR",
|
||
// new string[] { "COMMODITYSALE_ID", "STARTDATE", "ENDDATE",
|
||
// "SERVERPARTCODE", "SHOPCODE", "MACHINECODE" });
|
||
// }
|
||
// catch (Exception)
|
||
// {
|
||
// strBack = "{\"error\": 2 ,\"msg\": \"添加成功,更新失败!\",\"rows\":" +
|
||
// JsonHelper.ListToJson<Model.EXCHANGE.COMMODITYSALE_EXTAR>(_UpdateList, "rows", false) + "}";
|
||
// break;
|
||
// }
|
||
//}
|
||
//添加、更新成功无需传递任何参数。
|
||
strBack = "{\"error\": 1 ,\"msg\": \"添加成功!\",\"rows\":[]}";
|
||
}
|
||
else
|
||
{
|
||
strBack = "{\"error\": -1 ,\"msg\": \"添加失败:数据分割失败!\",\"rows\":[]}";
|
||
}
|
||
}
|
||
else
|
||
{
|
||
strBack = "{\"error\": -1 ,\"msg\": \"添加失败:JSON参数解析异常!\",\"rows\":[]}";
|
||
}
|
||
#endregion
|
||
break;
|
||
case "HIGHWAY_EXCHANGE.T_DATACOLLECTION":
|
||
#region HIGHWAY_EXCHANGE.T_DATACOLLECTION 十分钟营收数据表
|
||
//必填项
|
||
_RequiredDatas = new string[] { "DATACOLLECTION_ID", "MACADDRESS", "DATACOLLECTION_DATE", "DATACOLLECTION_TYPE" };
|
||
_ISCheckData = ISCheckData(jsonString, _RequiredDatas);
|
||
if (_ISCheckData != null)
|
||
{
|
||
strBack = _ISCheckData;
|
||
break;
|
||
}
|
||
List<Model.EXCHANGE.DATACOLLECTION> _DataDatacollection = JsonHelper.JSONStringToListUTC<Model.EXCHANGE.DATACOLLECTION>(jsonString);
|
||
if (_DataDatacollection != null && _DataDatacollection.Count > 0)
|
||
{
|
||
var _MinDate = _DataDatacollection.Min(p => p.DATACOLLECTION_DATE);
|
||
if (_MinDate == null || _MinDate.Value == DateTime.MinValue)
|
||
{
|
||
_MinDate = DateTime.Now;
|
||
}
|
||
|
||
var _MaxDate = _DataDatacollection.Max(p => p.DATACOLLECTION_DATE);
|
||
if (_MaxDate == null || _MaxDate.Value == DateTime.MinValue)
|
||
{
|
||
_MaxDate = DateTime.Now;
|
||
}
|
||
//该服务区所有数据
|
||
DataTable _DataTable = _OracleHelper.ExcuteSqlGetDataSet(
|
||
$@"SELECT MACADDRESS,DATACOLLECTION_DATE
|
||
FROM HIGHWAY_EXCHANGE.T_DATACOLLECTION
|
||
WHERE SERVERPARTCODE = '{codes[0]}' AND DATACOLLECTION_TYPE IN (1000,2000) AND
|
||
DATACOLLECTION_DATE BETWEEN TO_DATE('{_MinDate.Value.ToString("yyyy/MM/dd HH:mm:ss")}','YYYY/MM/DD HH24:MI:SS') AND
|
||
TO_DATE('{_MaxDate.Value.ToString("yyyy/MM/dd HH:mm:ss")}','YYYY/MM/DD HH24:MI:SS')").Tables[0];
|
||
|
||
List<Model.EXCHANGE.DATACOLLECTION> _InsertList = new List<Model.EXCHANGE.DATACOLLECTION>();//需插入的集合
|
||
List<Model.EXCHANGE.DATACOLLECTION> _UpdateList = new List<Model.EXCHANGE.DATACOLLECTION>();//需更新的集合
|
||
DataRow[] _DataRows = null; //临时DataRow数组
|
||
|
||
foreach (Model.EXCHANGE.DATACOLLECTION _DATACOLLECTION in _DataDatacollection)
|
||
{
|
||
if (_DataTable != null && _DataTable.Rows.Count > 0)
|
||
{
|
||
_DataRows = _DataTable.Select($" MACADDRESS = '{_DATACOLLECTION.MACADDRESS}' AND " +
|
||
$" DATACOLLECTION_DATE = '{_DATACOLLECTION.DATACOLLECTION_DATE}'");
|
||
if (_DataRows != null && _DataRows.Length > 0)
|
||
{
|
||
//记录已存在、需更新的数据
|
||
_UpdateList.Add(_DATACOLLECTION);
|
||
continue;
|
||
}
|
||
}
|
||
//需插入的集合
|
||
_InsertList.Add(_DATACOLLECTION);
|
||
}
|
||
|
||
if (_InsertList.Count + _UpdateList.Count == _DataDatacollection.Count)
|
||
{
|
||
if (_InsertList.Count > 0)
|
||
{
|
||
OperationDataHelper<Model.EXCHANGE.DATACOLLECTION>.InsertTableData(
|
||
_OracleHelper, _InsertList, "HIGHWAY_EXCHANGE.T_DATACOLLECTION");
|
||
}
|
||
|
||
strBack = "{\"error\": 1 ,\"msg\": \"添加成功!\",\"rows\":[]}";
|
||
}
|
||
else
|
||
{
|
||
strBack = "{\"error\": -1 ,\"msg\": \"添加失败:数据分割失败!\",\"rows\":[]}";
|
||
}
|
||
}
|
||
else
|
||
{
|
||
strBack = "{\"error\": -1 ,\"msg\": \"添加失败:JSON参数解析异常!\",\"rows\":[]}";
|
||
}
|
||
#endregion
|
||
break;
|
||
case "HIGHWAY_EXCHANGE.T_PROMOTIONRECORD":
|
||
#region HIGHWAY_EXCHANGE.T_PROMOTIONRECORD 促销流水表-2021.04新增,未启用
|
||
_RequiredDatas = new string[]
|
||
{
|
||
"PROMOTIONRECORD_ID",
|
||
"PROMOTIONRECORD_CODE",
|
||
"PROMOTION_ID",
|
||
"SERVERPARTCODE",
|
||
"SHOPCODE"
|
||
};
|
||
_ISCheckData = ISCheckData(jsonString, _RequiredDatas);
|
||
if (_ISCheckData != null)
|
||
{
|
||
strBack = _ISCheckData;
|
||
break;
|
||
}
|
||
List<Model.EXCHANGE.PROMOTIONRECORD> _DataPromotionRecord =
|
||
JsonHelper.JSONStringToListUTC<Model.EXCHANGE.PROMOTIONRECORD>(jsonString);
|
||
if (_DataPromotionRecord != null && _DataPromotionRecord.Count > 0)
|
||
{
|
||
//从上传的数据中获取服务区、门店、收银机号信息,用于服务器已有数据读取和判断
|
||
string str_DataCode = "";
|
||
var _DataCodeList = _DataPromotionRecord.Select(p => new
|
||
{
|
||
p.SERVERPARTCODE,
|
||
p.SHOPCODE,
|
||
p.MACHINECODE
|
||
}).Distinct().ToArray();
|
||
|
||
foreach (var _DataCodeTemp in _DataCodeList)
|
||
{
|
||
str_DataCode += (string.IsNullOrWhiteSpace(str_DataCode) ? "'" : ",'") +
|
||
_DataCodeTemp.SERVERPARTCODE.Trim() +
|
||
_DataCodeTemp.SHOPCODE.Trim() +
|
||
_DataCodeTemp.MACHINECODE.Trim() + "'";
|
||
}
|
||
|
||
var _MinDate = _DataPromotionRecord.Min(p => p.PROMOTIONRECORD_DATE);
|
||
if (_MinDate == null || _MinDate.Value == DateTime.MinValue)
|
||
{
|
||
_MinDate = DateTime.Now;
|
||
}
|
||
|
||
var _MaxDate = _DataPromotionRecord.Max(p => p.PROMOTIONRECORD_DATE);
|
||
if (_MaxDate == null || _MaxDate.Value == DateTime.MinValue)
|
||
{
|
||
_MaxDate = DateTime.Now;
|
||
}
|
||
DataTable _DataTable = _OracleHelper.ExcuteSqlGetDataSet(
|
||
$@"SELECT PROMOTIONRECORD_ID,PROMOTIONRECORD_CODE
|
||
FROM HIGHWAY_EXCHANGE.T_PROMOTIONRECORD
|
||
WHERE SERVERPARTCODE||SHOPCODE||MACHINECODE IN({str_DataCode}) AND PROMOTIONRECORD_DATE BETWEEN
|
||
TO_DATE('{_MinDate.Value.ToString("yyyy/MM/dd HH:mm:ss")}','YYYY/MM/DD HH24:MI:SS') AND
|
||
TO_DATE('{_MaxDate.Value.ToString("yyyy/MM/dd HH:mm:ss")}','YYYY/MM/DD HH24:MI:SS')").Tables[0];
|
||
List<Model.EXCHANGE.PROMOTIONRECORD> _InsertList = new List<Model.EXCHANGE.PROMOTIONRECORD>();//需插入的集合
|
||
List<Model.EXCHANGE.PROMOTIONRECORD> _UpdateList = new List<Model.EXCHANGE.PROMOTIONRECORD>();//需更新的集合
|
||
DataRow[] _DataRows = null; //临时DataRow数组
|
||
|
||
foreach (Model.EXCHANGE.PROMOTIONRECORD _PROMOTIONRECORD in _DataPromotionRecord)
|
||
{
|
||
if (_DataTable != null && _DataTable.Rows.Count > 0)
|
||
{
|
||
_DataRows = _DataTable.Select(
|
||
$" PROMOTIONRECORD_ID = '{_PROMOTIONRECORD.PROMOTIONRECORD_ID.ToString()}' AND " +
|
||
$" PROMOTIONRECORD_CODE = '{_PROMOTIONRECORD.PROMOTIONRECORD_CODE}' ");
|
||
if (_DataRows != null && _DataRows.Length > 0)
|
||
{
|
||
//记录已存在、需更新的数据
|
||
_UpdateList.Add(_PROMOTIONRECORD);
|
||
continue;
|
||
}
|
||
}
|
||
//需插入的集合
|
||
_InsertList.Add(_PROMOTIONRECORD);
|
||
}
|
||
if (_InsertList.Count + _UpdateList.Count == _DataPromotionRecord.Count)
|
||
{
|
||
if (_InsertList.Count > 0)
|
||
{
|
||
OperationDataHelper<Model.EXCHANGE.PROMOTIONRECORD>.InsertTableData(
|
||
_OracleHelper, _InsertList, "HIGHWAY_EXCHANGE.T_PROMOTIONRECORD");
|
||
}
|
||
|
||
strBack = "{\"error\": 1 ,\"msg\": \"添加成功!\",\"rows\":[]}";
|
||
}
|
||
else
|
||
{
|
||
strBack = "{\"error\": -1 ,\"msg\": \"添加失败:数据分割失败!\",\"rows\":[]}";
|
||
}
|
||
}
|
||
else
|
||
{
|
||
strBack = "{\"error\": -1 ,\"msg\": \"添加失败:JSON参数解析异常!\",\"rows\":[]}";
|
||
}
|
||
#endregion
|
||
break;
|
||
case "HIGHWAY_EXCHANGE.T_CONSUMPTIONRECORD":
|
||
#region HIGHWAY_EXCHANGE.T_CONSUMPTIONRECORD 促销流水表
|
||
_RequiredDatas = new string[]
|
||
{
|
||
"CONSUMPTIONRECORD_DATE",
|
||
"SERVERPART_CODE",
|
||
"SHOPCODE",
|
||
"MACHINECODE",
|
||
"TICKET_CODE",
|
||
"COMMODITY_CODE",
|
||
"LINE_NUMBER"
|
||
};
|
||
_ISCheckData = ISCheckData(jsonString, _RequiredDatas);
|
||
if (_ISCheckData != null)
|
||
{
|
||
strBack = _ISCheckData;
|
||
break;
|
||
}
|
||
List<Model.EXCHANGE.CONSUMPTIONRECORD> _DataConsumptionRecord =
|
||
JsonHelper.JSONStringToListUTC<Model.EXCHANGE.CONSUMPTIONRECORD>(jsonString);
|
||
if (_DataConsumptionRecord != null && _DataConsumptionRecord.Count > 0)
|
||
{
|
||
var _MinDate = _DataConsumptionRecord.Min(p => p.CONSUMPTIONRECORD_DATE);
|
||
if (_MinDate == null || _MinDate.Value == DateTime.MinValue)
|
||
{
|
||
_MinDate = DateTime.Now;
|
||
}
|
||
|
||
var _MaxDate = _DataConsumptionRecord.Max(p => p.CONSUMPTIONRECORD_DATE);
|
||
if (_MaxDate == null || _MaxDate.Value == DateTime.MinValue)
|
||
{
|
||
_MaxDate = DateTime.Now;
|
||
}
|
||
|
||
DataTable _DataTable = _OracleHelper.ExcuteSqlGetDataSet(
|
||
$@"SELECT CONSUMPTIONRECORD_DATE,SERVERPART_CODE,SHOPCODE,
|
||
MACHINECODE,TICKET_CODE,COMMODITY_CODE,LINE_NUMBER
|
||
FROM HIGHWAY_EXCHANGE.T_CONSUMPTIONRECORD
|
||
WHERE SERVERPART_CODE = '{codes[0]}' AND CONSUMPTIONRECORD_DATE BETWEEN
|
||
TO_DATE('{_MinDate.Value.ToString("yyyy/MM/dd HH:mm:ss")}','YYYY/MM/DD HH24:MI:SS') AND
|
||
TO_DATE('{_MaxDate.Value.ToString("yyyy/MM/dd HH:mm:ss")}','YYYY/MM/DD HH24:MI:SS')").Tables[0];
|
||
|
||
List<Model.EXCHANGE.CONSUMPTIONRECORD> _InsertList = new List<Model.EXCHANGE.CONSUMPTIONRECORD>();//需插入的集合
|
||
List<Model.EXCHANGE.CONSUMPTIONRECORD> _UpdateList = new List<Model.EXCHANGE.CONSUMPTIONRECORD>();//需更新的集合
|
||
DataRow[] _DataRows = null; //临时DataRow数组
|
||
|
||
foreach (Model.EXCHANGE.CONSUMPTIONRECORD _CONSUMPTIONRECORD in _DataConsumptionRecord)
|
||
{
|
||
if (_DataTable != null && _DataTable.Rows.Count > 0)
|
||
{
|
||
_DataRows = _DataTable.Select(
|
||
$" CONSUMPTIONRECORD_DATE = '{_CONSUMPTIONRECORD.CONSUMPTIONRECORD_DATE.ToString()}' AND " +
|
||
$" SERVERPART_CODE = '{_CONSUMPTIONRECORD.SERVERPART_CODE}' AND " +
|
||
$" SHOPCODE = '{_CONSUMPTIONRECORD.SHOPCODE}' AND " +
|
||
$" MACHINECODE = '{_CONSUMPTIONRECORD.MACHINECODE}' AND " +
|
||
$" TICKET_CODE = '{_CONSUMPTIONRECORD.TICKET_CODE}' AND " +
|
||
$" COMMODITY_CODE = '{_CONSUMPTIONRECORD.COMMODITY_CODE}' AND " +
|
||
$" LINE_NUMBER = '{_CONSUMPTIONRECORD.LINE_NUMBER}'");
|
||
if (_DataRows != null && _DataRows.Length > 0)
|
||
{
|
||
//记录已存在、需更新的数据
|
||
_UpdateList.Add(_CONSUMPTIONRECORD);
|
||
continue;
|
||
}
|
||
}
|
||
//需插入的集合
|
||
_InsertList.Add(_CONSUMPTIONRECORD);
|
||
}
|
||
if (_InsertList.Count + _UpdateList.Count == _DataConsumptionRecord.Count)
|
||
{
|
||
if (_InsertList.Count > 0)
|
||
{
|
||
OperationDataHelper<Model.EXCHANGE.CONSUMPTIONRECORD>.InsertTableData(
|
||
_OracleHelper, _InsertList, "HIGHWAY_EXCHANGE.T_CONSUMPTIONRECORD");
|
||
}
|
||
|
||
strBack = "{\"error\": 1 ,\"msg\": \"添加成功!\",\"rows\":[]}";
|
||
}
|
||
else
|
||
{
|
||
strBack = "{\"error\": -1 ,\"msg\": \"添加失败:数据分割失败!\",\"rows\":[]}";
|
||
}
|
||
}
|
||
else
|
||
{
|
||
strBack = "{\"error\": -1 ,\"msg\": \"添加失败:JSON参数解析异常!\",\"rows\":[]}";
|
||
}
|
||
#endregion
|
||
break;
|
||
case "HIGHWAY_EXCHANGE.T_MOBILE_PAY":
|
||
#region HIGHWAY_EXCHANGE.T_MOBILE_PAY 收银前端异常移动支付数据表
|
||
//必填项
|
||
_RequiredDatas = new string[] { "MOBILE_PAY_ID", "MOBILEPAY_TYPE", "TICKET_CODE", "MOBILEPAY_DATE" };
|
||
_ISCheckData = ISCheckData(jsonString, _RequiredDatas);
|
||
if (_ISCheckData != null)
|
||
{
|
||
strBack = _ISCheckData;
|
||
break;
|
||
}
|
||
List<Model.EXCHANGE.MOBILE_PAY> _DataMobile_Pay =
|
||
JsonHelper.JSONStringToListUTC<Model.EXCHANGE.MOBILE_PAY>(jsonString);
|
||
if (_DataMobile_Pay != null && _DataMobile_Pay.Count > 0)
|
||
{
|
||
var _MinDate = _DataMobile_Pay.Min(p => p.MOBILEPAY_DATE);
|
||
if (_MinDate == null || _MinDate.Value == DateTime.MinValue)
|
||
{
|
||
_MinDate = DateTime.Now;
|
||
}
|
||
|
||
var _MaxDate = _DataMobile_Pay.Max(p => p.MOBILEPAY_DATE);
|
||
if (_MaxDate == null || _MaxDate.Value == DateTime.MinValue)
|
||
{
|
||
_MaxDate = DateTime.Now;
|
||
}
|
||
//该服务区所有数据
|
||
DataTable _DataTable = _OracleHelper.ExcuteSqlGetDataSet(
|
||
$@"SELECT MOBILE_PAY_ID,MOBILEPAY_TYPE,TICKET_CODE
|
||
FROM HIGHWAY_EXCHANGE.T_MOBILE_PAY
|
||
WHERE SERVERPARTCODE = '{codes[0]}' AND MOBILEPAY_DATE BETWEEN
|
||
TO_DATE('{_MinDate.Value.ToString("yyyy/MM/dd HH:mm:ss")}','YYYY/MM/DD HH24:MI:SS') AND
|
||
TO_DATE('{_MaxDate.Value.ToString("yyyy/MM/dd HH:mm:ss")}','YYYY/MM/DD HH24:MI:SS')").Tables[0];
|
||
|
||
List<Model.EXCHANGE.MOBILE_PAY> _InsertList = new List<Model.EXCHANGE.MOBILE_PAY>();//需插入的集合
|
||
List<Model.EXCHANGE.MOBILE_PAY> _UpdateList = new List<Model.EXCHANGE.MOBILE_PAY>();//需更新的集合
|
||
DataRow[] _DataRows = null; //临时DataRow数组
|
||
|
||
foreach (Model.EXCHANGE.MOBILE_PAY _MOBILE_PAY in _DataMobile_Pay)
|
||
{
|
||
if (_DataTable != null && _DataTable.Rows.Count > 0)
|
||
{
|
||
_DataRows = _DataTable.Select(
|
||
$" MOBILE_PAY_ID = {_MOBILE_PAY.MOBILE_PAY_ID} AND " +
|
||
$" MOBILEPAY_TYPE = '{_MOBILE_PAY.MOBILEPAY_TYPE}' AND " +
|
||
$" TICKET_CODE = '{_MOBILE_PAY.TICKET_CODE}'");
|
||
if (_DataRows != null && _DataRows.Length > 0)
|
||
{
|
||
//记录已存在、需更新的数据
|
||
_UpdateList.Add(_MOBILE_PAY);
|
||
continue;
|
||
}
|
||
}
|
||
//需更新的集合
|
||
_InsertList.Add(_MOBILE_PAY);
|
||
}
|
||
|
||
if (_InsertList.Count + _UpdateList.Count == _DataMobile_Pay.Count)
|
||
{
|
||
if (_InsertList.Count > 0)
|
||
{
|
||
OperationDataHelper<Model.EXCHANGE.MOBILE_PAY>.InsertTableData(
|
||
_OracleHelper, _InsertList, "HIGHWAY_EXCHANGE.T_MOBILE_PAY");
|
||
}
|
||
|
||
if (_UpdateList.Count > 0)
|
||
{
|
||
try
|
||
{
|
||
OperationDataHelper<Model.EXCHANGE.MOBILE_PAY>.UpdateTableData(
|
||
_OracleHelper, _UpdateList, "HIGHWAY_EXCHANGE.T_MOBILE_PAY",
|
||
new string[] { "MOBILE_PAY_ID", "MOBILEPAY_TYPE", "TICKET_CODE" });
|
||
}
|
||
catch (Exception)
|
||
{
|
||
strBack = "{\"error\": 2 ,\"msg\": \"添加成功,更新失败!\",\"rows\":" +
|
||
JsonHelper.ListToJson(_UpdateList, "rows", false) + "}";
|
||
break;
|
||
}
|
||
}
|
||
//添加、更新成功无需传递任何参数。
|
||
strBack = "{\"error\": 1 ,\"msg\": \"添加成功!\",\"rows\":[]}";
|
||
}
|
||
else
|
||
{
|
||
strBack = "{\"error\": -1 ,\"msg\": \"添加失败:数据分割失败!\",\"rows\":[]}";
|
||
}
|
||
}
|
||
else
|
||
{
|
||
strBack = "{\"error\": -1 ,\"msg\": \"添加失败:JSON参数解析异常!\",\"rows\":[]}";
|
||
}
|
||
#endregion
|
||
break;
|
||
case "HIGHWAY_EXCHANGE.T_SELLDATA":
|
||
#region HIGHWAY_EXCHANGE.T_SELLDATA 销售流水表【旧】
|
||
//必填项
|
||
_RequiredDatas = new string[] { "SELLDATA_ID", "SELLDATA_DATE", "SERVERPARTCODE",
|
||
"SHOPCODE", "MACHINECODE", "TICKETCODE", "WORKERCODE", "COMMODITY_CODE" };
|
||
_ISCheckData = ISCheckData(jsonString, _RequiredDatas);
|
||
if (_ISCheckData != null)
|
||
{
|
||
strBack = _ISCheckData;
|
||
break;
|
||
}
|
||
List<Model.EXCHANGE.SELLDATA> _DataSelldata = JsonHelper.JSONStringToListUTC<Model.EXCHANGE.SELLDATA>(jsonString);
|
||
if (_DataSelldata != null && _DataSelldata.Count > 0)
|
||
{
|
||
string _strShopCode = "";
|
||
var _ShopCodeList = _DataSelldata.Select(p => p.SHOPCODE).Distinct().ToArray();
|
||
foreach (var _ShopCodeTemp in _ShopCodeList)
|
||
{
|
||
_strShopCode += (string.IsNullOrWhiteSpace(_strShopCode) ? "'" : ",'") + _ShopCodeTemp.Trim() + "'";
|
||
}
|
||
|
||
var _MinDate = _DataSelldata.Min(p => p.SELLDATA_DATE);
|
||
if (_MinDate == null || _MinDate.Value == DateTime.MinValue)
|
||
{
|
||
_MinDate = DateTime.Now;
|
||
}
|
||
|
||
var _MaxDate = _DataSelldata.Max(p => p.SELLDATA_DATE);
|
||
if (_MaxDate == null || _MaxDate.Value == DateTime.MinValue)
|
||
{
|
||
_MaxDate = DateTime.Now;
|
||
}
|
||
//该服务区所有数据
|
||
DataTable _DataTable = _OracleHelper.ExcuteSqlGetDataSet(
|
||
$@"SELECT SELLDATA_ID,SELLDATA_DATE,SERVERPARTCODE,
|
||
SHOPCODE,MACHINECODE,TICKETCODE,LINENUM
|
||
FROM HIGHWAY_EXCHANGE.T_SELLDATA
|
||
WHERE SERVERPARTCODE = '{codes[0]}' AND SHOPCODE IN ({_strShopCode}) AND
|
||
SELLDATA_DATE BETWEEN TO_DATE('{_MinDate.Value.ToString("yyyy/MM/dd HH:mm:ss")}','YYYY/MM/DD HH24:MI:SS') AND
|
||
TO_DATE('{_MaxDate.Value.ToString("yyyy/MM/dd HH:mm:ss")}','YYYY/MM/DD HH24:MI:SS')").Tables[0];
|
||
|
||
List<Model.EXCHANGE.SELLDATA> _InsertList = new List<Model.EXCHANGE.SELLDATA>();//需插入的集合
|
||
List<Model.EXCHANGE.SELLDATA> _UpdateList = new List<Model.EXCHANGE.SELLDATA>();//需更新的集合
|
||
DataRow[] _DataRows = null; //临时DataRow数组
|
||
|
||
foreach (Model.EXCHANGE.SELLDATA _SELLDATA in _DataSelldata)
|
||
{
|
||
if (_DataTable != null && _DataTable.Rows.Count > 0)
|
||
{
|
||
_DataRows = _DataTable.Select(
|
||
$" SELLDATA_DATE = '{_SELLDATA.SELLDATA_DATE.ToString()}' AND " +
|
||
$" SERVERPARTCODE = '{_SELLDATA.SERVERPARTCODE}' AND " +
|
||
$" SHOPCODE = '{_SELLDATA.SHOPCODE}' AND " +
|
||
$" MACHINECODE = '{_SELLDATA.MACHINECODE}' AND " +
|
||
$" TICKETCODE = '{_SELLDATA.TICKETCODE}' AND " +
|
||
$" LINENUM = {_SELLDATA.LINENUM}");
|
||
if (_DataRows != null && _DataRows.Length > 0)
|
||
{
|
||
//记录已存在、需更新的数据
|
||
_UpdateList.Add(_SELLDATA);
|
||
continue;
|
||
}
|
||
}
|
||
|
||
//需更新的集合
|
||
_InsertList.Add(_SELLDATA);
|
||
}
|
||
|
||
if (_InsertList.Count + _UpdateList.Count == _DataSelldata.Count)
|
||
{
|
||
if (_InsertList.Count > 0)
|
||
{
|
||
OperationDataHelper<Model.EXCHANGE.SELLDATA>.InsertTableData(
|
||
_OracleHelper, _InsertList, "HIGHWAY_EXCHANGE.T_SELLDATA");
|
||
}
|
||
|
||
//添加、更新成功无需传递任何参数。
|
||
strBack = "{\"error\": 1 ,\"msg\": \"添加成功!\",\"rows\":[]}";
|
||
}
|
||
else
|
||
{
|
||
strBack = "{\"error\": -1 ,\"msg\": \"添加失败:数据分割失败!\",\"rows\":[]}";
|
||
}
|
||
}
|
||
else
|
||
{
|
||
strBack = "{\"error\": -1 ,\"msg\": \"添加失败:JSON参数解析异常!\",\"rows\":[]}";
|
||
}
|
||
#endregion
|
||
break;
|
||
case "HIGHWAY_EXCHANGE.T_TRANSFER_SELLDATA":
|
||
#region HIGHWAY_EXCHANGE.T_TRANSFER_SELLDATA 销售流水集合表
|
||
_RequiredDatas = new string[] { "TRANSFER_ID", "SELLDATA_DATE", "SERVERPARTCODE",
|
||
"SHOPCODE", "MACHINECODE", "TICKETCODE", "WORKERCODE", "SELLCOUNT",
|
||
"OFFPRICE", "FACTAMOUNT", "TRANSFER_FIRSTDATAS" };
|
||
_ISCheckData = ISCheckData(jsonString, _RequiredDatas);
|
||
if (_ISCheckData != null)
|
||
{
|
||
strBack = _ISCheckData;
|
||
break;
|
||
}
|
||
List<Model.EXCHANGE.TRANSFER_SELLDATA> _DataTransferSell =
|
||
JsonHelper.JSONStringToListUTC<Model.EXCHANGE.TRANSFER_SELLDATA>(jsonString);
|
||
if (_DataTransferSell != null && _DataTransferSell.Count > 0)
|
||
{
|
||
string _strShopCode = "";
|
||
var _ShopCodeList = _DataTransferSell.Select(p => p.SHOPCODE).Distinct().ToArray();
|
||
foreach (var _ShopCodeTemp in _ShopCodeList)
|
||
{
|
||
_strShopCode += (string.IsNullOrWhiteSpace(_strShopCode) ? "'" : ",'") + _ShopCodeTemp.Trim() + "'";
|
||
}
|
||
|
||
var _MinDate = _DataTransferSell.Min(p => p.SELLDATA_DATE);
|
||
if (_MinDate == null || _MinDate.Value == DateTime.MinValue)
|
||
{
|
||
_MinDate = DateTime.Now;
|
||
}
|
||
|
||
var _MaxDate = _DataTransferSell.Max(p => p.SELLDATA_DATE);
|
||
if (_MaxDate == null || _MaxDate.Value == DateTime.MinValue)
|
||
{
|
||
_MaxDate = DateTime.Now;
|
||
}
|
||
//该服务区所有数据
|
||
DataTable _DataTable = _OracleHelper.ExcuteSqlGetDataSet(
|
||
$@"SELECT TRANSFER_ID,SELLDATA_DATE,SERVERPARTCODE,
|
||
SHOPCODE,MACHINECODE,TICKETCODE
|
||
FROM HIGHWAY_EXCHANGE.T_TRANSFER_SELLDATA
|
||
WHERE SERVERPARTCODE = '{codes[0]}' AND SHOPCODE IN ({_strShopCode}) AND
|
||
SELLDATA_DATE BETWEEN TO_DATE('{_MinDate.Value.ToString("yyyy/MM/dd HH:mm:ss")}','YYYY/MM/DD HH24:MI:SS') AND
|
||
TO_DATE('{_MaxDate.Value.ToString("yyyy/MM/dd HH:mm:ss")}','YYYY/MM/DD HH24:MI:SS')").Tables[0];
|
||
List<Model.EXCHANGE.TRANSFER_SELLDATA> _InsertList = new List<Model.EXCHANGE.TRANSFER_SELLDATA>();//需插入的集合
|
||
List<Model.EXCHANGE.TRANSFER_SELLDATA> _UpdateList = new List<Model.EXCHANGE.TRANSFER_SELLDATA>();//需更新的集合
|
||
DataRow[] _DataRows = null; //临时DataRow数组
|
||
|
||
foreach (Model.EXCHANGE.TRANSFER_SELLDATA _TRANSFER_SELLDATA in _DataTransferSell)
|
||
{
|
||
if (_DataTable != null && _DataTable.Rows.Count > 0)
|
||
{
|
||
_DataRows = _DataTable.Select(
|
||
$" SELLDATA_DATE = '{_TRANSFER_SELLDATA.SELLDATA_DATE.ToString()}' AND " +
|
||
$" SERVERPARTCODE = '{_TRANSFER_SELLDATA.SERVERPARTCODE}' AND " +
|
||
$" SHOPCODE = '{_TRANSFER_SELLDATA.SHOPCODE}' AND " +
|
||
$" MACHINECODE = '{_TRANSFER_SELLDATA.MACHINECODE}' AND " +
|
||
$" TICKETCODE = '{_TRANSFER_SELLDATA.TICKETCODE}' AND " +
|
||
$" TRANSFER_ID = {_TRANSFER_SELLDATA.TRANSFER_ID}");
|
||
if (_DataRows != null && _DataRows.Length > 0)
|
||
{
|
||
//记录已存在、需更新的数据
|
||
_UpdateList.Add(_TRANSFER_SELLDATA);
|
||
continue;
|
||
}
|
||
}
|
||
|
||
//需插入的集合
|
||
_InsertList.Add(_TRANSFER_SELLDATA);
|
||
}
|
||
|
||
if (_InsertList.Count + _UpdateList.Count == _DataTransferSell.Count)
|
||
{
|
||
if (_InsertList.Count > 0)
|
||
{
|
||
OperationDataHelper<Model.EXCHANGE.TRANSFER_SELLDATA>.InsertTableData(
|
||
_OracleHelper, _InsertList, "HIGHWAY_EXCHANGE.T_TRANSFER_SELLDATA");
|
||
}
|
||
|
||
//添加、更新成功无需传递任何参数。
|
||
strBack = "{\"error\": 1 ,\"msg\": \"添加成功!\",\"rows\":[]}";
|
||
}
|
||
else
|
||
{
|
||
strBack = "{\"error\": -1 ,\"msg\": \"添加失败:数据分割失败!\",\"rows\":[]}";
|
||
}
|
||
}
|
||
else
|
||
{
|
||
strBack = "{\"error\": -1 ,\"msg\": \"添加失败:JSON参数解析异常!\",\"rows\":[]}";
|
||
}
|
||
#endregion
|
||
break;
|
||
case "HIGHWAY_EXCHANGE.T_ENDACCOUNT":
|
||
#region HIGHWAY_EXCHANGE.T_ENDACCOUNT 日结账期表【旧】
|
||
//必填项
|
||
try
|
||
{
|
||
if (_OracleHelper.ExcuteSqlGetDataSet(
|
||
@"SELECT 1 FROM ALL_TAB_COLUMNS
|
||
WHERE OWNER = 'HIGHWAY_EXCHANGE' AND
|
||
TABLE_NAME = 'T_ENDACCOUNT' AND
|
||
COLUMN_NAME = 'SERVERPART_CODE'").Tables[0].Rows.Count > 0)
|
||
{
|
||
isReplaceColumnName = true;
|
||
}
|
||
}
|
||
catch { }
|
||
_RequiredDatas = new string[]
|
||
{
|
||
"ENDACCOUNT_ID",
|
||
"ENDACCOUNT_STARTDATE",
|
||
"SERVERPARTCODE",
|
||
"SHOPCODE",
|
||
"MACHINECODE" ,
|
||
"FLAG"
|
||
};
|
||
_ISCheckData = ISCheckData(jsonString, _RequiredDatas);
|
||
if (_ISCheckData != null)
|
||
{
|
||
strBack = _ISCheckData;
|
||
break;
|
||
}
|
||
if (isReplaceColumnName)
|
||
{
|
||
jsonString = jsonString.Replace("SERVERPARTCODE", "SERVERPART_CODE");
|
||
List<Model.HIGHWAY.ENDACCOUNT_SC> _DataEndaccount =
|
||
JsonHelper.JSONStringToListUTC<Model.HIGHWAY.ENDACCOUNT_SC>(jsonString);
|
||
if (_DataEndaccount != null && _DataEndaccount.Count > 0)
|
||
{
|
||
string str_DataCode = "";
|
||
//获取数据包中的服务区、门店、收银机号信息
|
||
var _DataCodeList = _DataEndaccount.Select(p => new
|
||
{
|
||
p.SERVERPART_CODE,
|
||
p.SHOPCODE,
|
||
p.MACHINECODE
|
||
}).Distinct().ToArray();
|
||
//拼接组成区服已有数据查询条件值
|
||
foreach (var _DataCodeTemp in _DataCodeList)
|
||
{
|
||
str_DataCode += (string.IsNullOrWhiteSpace(str_DataCode) ? "'" : ",'") +
|
||
_DataCodeTemp.SERVERPART_CODE.Trim() +
|
||
_DataCodeTemp.SHOPCODE.Trim() +
|
||
_DataCodeTemp.MACHINECODE.Trim() + "'";
|
||
}
|
||
//获取数据包中最小时间
|
||
var _MinDate = _DataEndaccount.Min(p => p.ENDACCOUNT_STARTDATE);
|
||
if (_MinDate == null || _MinDate.Value == DateTime.MinValue)
|
||
{
|
||
_MinDate = DateTime.Now;
|
||
}
|
||
//获取数据包中最大时间
|
||
var _MaxDate = _DataEndaccount.Max(p => p.ENDACCOUNT_STARTDATE);
|
||
if (_MaxDate == null || _MaxDate.Value == DateTime.MinValue)
|
||
{
|
||
_MaxDate = DateTime.Now;
|
||
}
|
||
//获取数据包中包含的服务区门店中已上传过的数据
|
||
DataTable _DataTable = _OracleHelper.ExcuteSqlGetDataSet(
|
||
$@"SELECT ENDACCOUNT_ID,ENDACCOUNT_STARTDATE,
|
||
SERVERPART_CODE,SHOPCODE,MACHINECODE,FLAG
|
||
FROM HIGHWAY_EXCHANGE.T_ENDACCOUNT
|
||
WHERE SERVERPART_CODE || SHOPCODE || MACHINECODE IN ({str_DataCode}) AND ENDACCOUNT_STARTDATE BETWEEN
|
||
TO_DATE('{_MinDate.Value.ToString("yyyy/MM/dd HH:mm:ss")}','YYYY/MM/DD HH24:MI:SS') AND
|
||
TO_DATE('{_MaxDate.Value.ToString("yyyy/MM/dd HH:mm:ss")}','YYYY/MM/DD HH24:MI:SS')").Tables[0];
|
||
|
||
List<Model.HIGHWAY.ENDACCOUNT_SC> _InsertList = new List<Model.HIGHWAY.ENDACCOUNT_SC>();//需插入的集合
|
||
List<Model.HIGHWAY.ENDACCOUNT_SC> _UpdateList = new List<Model.HIGHWAY.ENDACCOUNT_SC>();//需更新的集合
|
||
DataRow[] _DataRows = null; //临时DataRow数组
|
||
|
||
foreach (Model.HIGHWAY.ENDACCOUNT_SC _ENDACCOUNT in _DataEndaccount)
|
||
{
|
||
if (_DataTable != null && _DataTable.Rows.Count > 0)
|
||
{
|
||
_DataRows = _DataTable.Select(
|
||
$" ENDACCOUNT_ID = {_ENDACCOUNT.ENDACCOUNT_ID} AND " +
|
||
$" ENDACCOUNT_STARTDATE = '{_ENDACCOUNT.ENDACCOUNT_STARTDATE.ToString()}' AND " +
|
||
$" SERVERPART_CODE = '{_ENDACCOUNT.SERVERPART_CODE}' AND " +
|
||
$" SHOPCODE = '{_ENDACCOUNT.SHOPCODE}' AND " +
|
||
$" MACHINECODE = '{_ENDACCOUNT.MACHINECODE}' AND " +
|
||
$" FLAG = {_ENDACCOUNT.FLAG}");
|
||
if (_DataRows != null && _DataRows.Length > 0)
|
||
{
|
||
//记录已存在、需更新的数据
|
||
_UpdateList.Add(_ENDACCOUNT);
|
||
continue;
|
||
}
|
||
}
|
||
|
||
//需更新的集合
|
||
_InsertList.Add(_ENDACCOUNT);
|
||
}
|
||
|
||
if (_InsertList.Count + _UpdateList.Count == _DataEndaccount.Count)
|
||
{
|
||
if (_InsertList.Count > 0)
|
||
{
|
||
OperationDataHelper<Model.HIGHWAY.ENDACCOUNT_SC>.InsertTableData(
|
||
_OracleHelper, _InsertList, "HIGHWAY_EXCHANGE.T_ENDACCOUNT");
|
||
}
|
||
|
||
if (_UpdateList.Count > 0)
|
||
{
|
||
try
|
||
{
|
||
OperationDataHelper<Model.HIGHWAY.ENDACCOUNT_SC>.UpdateTableData(
|
||
_OracleHelper, _UpdateList, "HIGHWAY_EXCHANGE.T_ENDACCOUNT",
|
||
new string[] { "ENDACCOUNT_ID", "ENDACCOUNT_STARTDATE", "SERVERPART_CODE", "SHOPCODE", "MACHINECODE", "FLAG" });
|
||
}
|
||
catch (Exception)
|
||
{
|
||
strBack = "{\"error\": 2 ,\"msg\": \"添加成功,更新失败!\",\"rows\":" +
|
||
JsonHelper.ListToJson(_UpdateList, "rows", false) + "}";
|
||
break;
|
||
}
|
||
}
|
||
//添加、更新成功无需传递任何参数。
|
||
strBack = "{\"error\": 1 ,\"msg\": \"添加成功!\",\"rows\":[]}";
|
||
}
|
||
else
|
||
{
|
||
strBack = "{\"error\": -1 ,\"msg\": \"添加失败:数据分割失败!\",\"rows\":[]}";
|
||
}
|
||
}
|
||
else
|
||
{
|
||
strBack = "{\"error\": -1 ,\"msg\": \"添加失败:JSON参数解析异常!\",\"rows\":[]}";
|
||
}
|
||
}
|
||
else
|
||
{
|
||
List<Model.HIGHWAY.ENDACCOUNT> _DataEndaccount =
|
||
JsonHelper.JSONStringToListUTC<Model.HIGHWAY.ENDACCOUNT>(jsonString);
|
||
if (_DataEndaccount != null && _DataEndaccount.Count > 0)
|
||
{
|
||
string str_DataCode = "";
|
||
//获取数据包中的服务区、门店、收银机信息
|
||
var _DataCodeList = _DataEndaccount.Select(p => new
|
||
{
|
||
p.SERVERPARTCODE,
|
||
p.SHOPCODE,
|
||
p.MACHINECODE
|
||
}).Distinct().ToArray();
|
||
//拼接组成已上传数据查询条件值
|
||
foreach (var _DataCodeTemp in _DataCodeList)
|
||
{
|
||
str_DataCode += (string.IsNullOrWhiteSpace(str_DataCode) ? "'" : ",'") +
|
||
_DataCodeTemp.SERVERPARTCODE.Trim() +
|
||
_DataCodeTemp.SHOPCODE.Trim() +
|
||
_DataCodeTemp.MACHINECODE.Trim() + "'";
|
||
}
|
||
//获取数据包中最小时间
|
||
var _MinDate = _DataEndaccount.Min(p => p.ENDACCOUNT_STARTDATE);
|
||
if (_MinDate == null || _MinDate.Value == DateTime.MinValue)
|
||
{
|
||
_MinDate = DateTime.Now;
|
||
}
|
||
//获取数据包中最大时间
|
||
var _MaxDate = _DataEndaccount.Max(p => p.ENDACCOUNT_STARTDATE);
|
||
if (_MaxDate == null || _MaxDate.Value == DateTime.MinValue)
|
||
{
|
||
_MaxDate = DateTime.Now;
|
||
}
|
||
//该服务区所有数据
|
||
DataTable _DataTable = _OracleHelper.ExcuteSqlGetDataSet(
|
||
$@"SELECT ENDACCOUNT_ID,ENDACCOUNT_STARTDATE,
|
||
SERVERPARTCODE,SHOPCODE,MACHINECODE,FLAG
|
||
FROM HIGHWAY_EXCHANGE.T_ENDACCOUNT
|
||
WHERE SERVERPARTCODE || SHOPCODE || MACHINECODE IN ({str_DataCode}) AND
|
||
ENDACCOUNT_STARTDATE BETWEEN TO_DATE('{_MinDate.Value.ToString("yyyy/MM/dd HH:mm:ss")}','YYYY/MM/DD HH24:MI:SS') AND
|
||
TO_DATE('{_MaxDate.Value.ToString("yyyy/MM/dd HH:mm:ss")}','YYYY/MM/DD HH24:MI:SS')").Tables[0];
|
||
|
||
List<Model.HIGHWAY.ENDACCOUNT> _InsertList = new List<Model.HIGHWAY.ENDACCOUNT>();//需插入的集合
|
||
List<Model.HIGHWAY.ENDACCOUNT> _UpdateList = new List<Model.HIGHWAY.ENDACCOUNT>();//需更新的集合
|
||
DataRow[] _DataRows = null; //临时DataRow数组
|
||
|
||
foreach (Model.HIGHWAY.ENDACCOUNT _ENDACCOUNT in _DataEndaccount)
|
||
{
|
||
if (_DataTable != null && _DataTable.Rows.Count > 0)
|
||
{
|
||
_DataRows = _DataTable.Select(
|
||
$" ENDACCOUNT_ID = {_ENDACCOUNT.ENDACCOUNT_ID} AND " +
|
||
$" ENDACCOUNT_STARTDATE = '{_ENDACCOUNT.ENDACCOUNT_STARTDATE.ToString()}' AND " +
|
||
$" SERVERPARTCODE = '{_ENDACCOUNT.SERVERPARTCODE}' AND " +
|
||
$" SHOPCODE = '{_ENDACCOUNT.SHOPCODE}' AND " +
|
||
$" MACHINECODE = '{_ENDACCOUNT.MACHINECODE}' AND " +
|
||
$" FLAG = {_ENDACCOUNT.FLAG}");
|
||
if (_DataRows != null && _DataRows.Length > 0)
|
||
{
|
||
//记录已存在、需更新的数据
|
||
_UpdateList.Add(_ENDACCOUNT);
|
||
continue;
|
||
}
|
||
}
|
||
|
||
//需更新的集合
|
||
_InsertList.Add(_ENDACCOUNT);
|
||
}
|
||
|
||
if (_InsertList.Count + _UpdateList.Count == _DataEndaccount.Count)
|
||
{
|
||
if (_InsertList.Count > 0)
|
||
{
|
||
|
||
OperationDataHelper<Model.HIGHWAY.ENDACCOUNT>.InsertTableData(
|
||
_OracleHelper, _InsertList, "HIGHWAY_EXCHANGE.T_ENDACCOUNT");
|
||
}
|
||
|
||
if (_UpdateList.Count > 0)
|
||
{
|
||
try
|
||
{
|
||
OperationDataHelper<Model.HIGHWAY.ENDACCOUNT>.UpdateTableData(
|
||
_OracleHelper, _UpdateList, "HIGHWAY_EXCHANGE.T_ENDACCOUNT",
|
||
new string[] { "ENDACCOUNT_ID", "ENDACCOUNT_STARTDATE",
|
||
"SERVERPARTCODE", "SHOPCODE", "MACHINECODE", "FLAG" });
|
||
}
|
||
catch (Exception)
|
||
{
|
||
strBack = "{\"error\": 2 ,\"msg\": \"添加成功,更新失败!\",\"rows\":" +
|
||
JsonHelper.ListToJson(_UpdateList, "rows", false) + "}";
|
||
break;
|
||
}
|
||
}
|
||
//添加、更新成功无需传递任何参数。
|
||
strBack = "{\"error\": 1 ,\"msg\": \"添加成功!\",\"rows\":[]}";
|
||
}
|
||
else
|
||
{
|
||
strBack = "{\"error\": -1 ,\"msg\": \"添加失败:数据分割失败!\",\"rows\":[]}";
|
||
}
|
||
}
|
||
else
|
||
{
|
||
strBack = "{\"error\": -1 ,\"msg\": \"添加失败:JSON参数解析异常!\",\"rows\":[]}";
|
||
}
|
||
}
|
||
#endregion
|
||
break;
|
||
case "HIGHWAY_EXCHANGE.T_PERSONSELL":
|
||
#region HIGHWAY_EXCHANGE.T_PERSONSELL 收银员交班表【旧】
|
||
//必填项
|
||
_RequiredDatas = new string[] { "PERSONSELL_ID", "SERVERPARTCODE", "SHOPCODE", "MACHINECODE", "STARTDATE" };
|
||
_ISCheckData = ISCheckData(jsonString, _RequiredDatas);
|
||
if (_ISCheckData != null)
|
||
{
|
||
strBack = _ISCheckData;
|
||
break;
|
||
}
|
||
List<Model.HIGHWAY.PERSONSELL> _DataPersonsell =
|
||
JsonHelper.JSONStringToListUTC<Model.HIGHWAY.PERSONSELL>(jsonString);
|
||
if (_DataPersonsell != null && _DataPersonsell.Count > 0)
|
||
{
|
||
string _strShopCode = "";
|
||
var _ShopCodeList = _DataPersonsell.Select(p => p.SHOPCODE).Distinct().ToArray();
|
||
foreach (var _ShopCodeTemp in _ShopCodeList)
|
||
{
|
||
_strShopCode += (string.IsNullOrWhiteSpace(_strShopCode) ? "'" : ",'") + _ShopCodeTemp.Trim() + "'";
|
||
}
|
||
|
||
var _MinDate = _DataPersonsell.Min(p => p.STARTDATE);
|
||
if (_MinDate == null || _MinDate.Value == DateTime.MinValue)
|
||
{
|
||
_MinDate = DateTime.Now;
|
||
}
|
||
|
||
var _MaxDate = _DataPersonsell.Max(p => p.STARTDATE);
|
||
if (_MaxDate == null || _MaxDate.Value == DateTime.MinValue)
|
||
{
|
||
_MaxDate = DateTime.Now;
|
||
}
|
||
//该服务区所有数据
|
||
DataTable _DataTable = _OracleHelper.ExcuteSqlGetDataSet(
|
||
$@"SELECT PERSONSELL_ID,SERVERPARTCODE,
|
||
SHOPCODE,MACHINECODE,STARTDATE
|
||
FROM HIGHWAY_EXCHANGE.T_PERSONSELL
|
||
WHERE SERVERPARTCODE = '{codes[0]}' AND SHOPCODE IN ({_strShopCode}) AND
|
||
STARTDATE BETWEEN TO_DATE('{_MinDate.Value.ToString("yyyy/MM/dd HH:mm:ss")}','YYYY/MM/DD HH24:MI:SS') AND
|
||
TO_DATE('{_MaxDate.Value.ToString("yyyy/MM/dd HH:mm:ss")}','YYYY/MM/DD HH24:MI:SS')").Tables[0];
|
||
|
||
List<Model.HIGHWAY.PERSONSELL> _InsertList = new List<Model.HIGHWAY.PERSONSELL>();//需插入的集合
|
||
List<Model.HIGHWAY.PERSONSELL> _UpdateList = new List<Model.HIGHWAY.PERSONSELL>();//需更新的集合
|
||
DataRow[] _DataRows = null; //临时DataRow数组
|
||
|
||
foreach (Model.HIGHWAY.PERSONSELL _PERSONSELL in _DataPersonsell)
|
||
{
|
||
if (_DataTable != null && _DataTable.Rows.Count > 0)
|
||
{
|
||
_DataRows = _DataTable.Select(
|
||
$" PERSONSELL_ID = {_PERSONSELL.PERSONSELL_ID} AND " +
|
||
$" STARTDATE = '{_PERSONSELL.STARTDATE.ToString()}' AND " +
|
||
$" SERVERPARTCODE = '{_PERSONSELL.SERVERPARTCODE}' AND " +
|
||
$" SHOPCODE = '{_PERSONSELL.SHOPCODE}' AND " +
|
||
$" MACHINECODE = '{_PERSONSELL.MACHINECODE}'");
|
||
if (_DataRows != null && _DataRows.Length > 0)
|
||
{
|
||
//记录已存在、需更新的数据
|
||
_UpdateList.Add(_PERSONSELL);
|
||
continue;
|
||
}
|
||
}
|
||
|
||
//需更新的集合
|
||
_InsertList.Add(_PERSONSELL);
|
||
}
|
||
|
||
if (_InsertList.Count + _UpdateList.Count == _DataPersonsell.Count)
|
||
{
|
||
if (_InsertList.Count > 0)
|
||
{
|
||
|
||
OperationDataHelper<Model.HIGHWAY.PERSONSELL>.InsertTableData(
|
||
_OracleHelper, _InsertList, "HIGHWAY_EXCHANGE.T_PERSONSELL");
|
||
}
|
||
|
||
if (_UpdateList.Count > 0)
|
||
{
|
||
try
|
||
{
|
||
OperationDataHelper<Model.HIGHWAY.PERSONSELL>.UpdateTableData(
|
||
_OracleHelper, _UpdateList, "HIGHWAY_EXCHANGE.T_PERSONSELL",
|
||
new string[] { "PERSONSELL_ID", "SERVERPARTCODE", "SHOPCODE",
|
||
"MACHINECODE", "STARTDATE" });
|
||
}
|
||
catch (Exception)
|
||
{
|
||
strBack = "{\"error\": 2 ,\"msg\": \"添加成功,更新失败!\",\"rows\":" +
|
||
JsonHelper.ListToJson<Model.HIGHWAY.PERSONSELL>(_UpdateList, "rows", false) + "}";
|
||
break;
|
||
}
|
||
}
|
||
//添加、更新成功无需传递任何参数。
|
||
strBack = "{\"error\": 1 ,\"msg\": \"添加成功!\",\"rows\":[]}";
|
||
}
|
||
else
|
||
{
|
||
strBack = "{\"error\": -1 ,\"msg\": \"添加失败:数据分割失败!\",\"rows\":[]}";
|
||
}
|
||
}
|
||
else
|
||
{
|
||
strBack = "{\"error\": -1 ,\"msg\": \"添加失败:JSON参数解析异常!\",\"rows\":[]}";
|
||
}
|
||
#endregion
|
||
break;
|
||
case "HIGHWAY_EXCHANGE.T_COMMODITYSALE":
|
||
#region HIGHWAY_EXCHANGE.T_COMMODITYSALE 单品报表【旧】
|
||
//必填项
|
||
_RequiredDatas = new string[] { "COMMODITYSALE_ID", "STARTDATE",
|
||
"ENDDATE", "SERVERPARTCODE", "SHOPCODE" ,"COMMODITY_CODE" };
|
||
_ISCheckData = ISCheckData(jsonString, _RequiredDatas);
|
||
if (_ISCheckData != null)
|
||
{
|
||
strBack = _ISCheckData;
|
||
break;
|
||
}
|
||
List<Model.HIGHWAY.COMMODITYSALE> _DataCommoditysale =
|
||
JsonHelper.JSONStringToListUTC<Model.HIGHWAY.COMMODITYSALE>(jsonString);
|
||
if (_DataCommoditysale != null && _DataCommoditysale.Count > 0)
|
||
{
|
||
string _strShopCode = "";
|
||
var _ShopCodeList = _DataCommoditysale.Select(p => p.SHOPCODE).Distinct().ToArray();
|
||
foreach (var _ShopCodeTemp in _ShopCodeList)
|
||
{
|
||
_strShopCode += (string.IsNullOrWhiteSpace(_strShopCode) ? "'" : ",'") + _ShopCodeTemp.Trim() + "'";
|
||
}
|
||
|
||
var _MinDate = _DataCommoditysale.Min(p => p.ENDDATE);
|
||
if (_MinDate == null || _MinDate.Value == DateTime.MinValue)
|
||
{
|
||
_MinDate = DateTime.Now;
|
||
}
|
||
|
||
var _MaxDate = _DataCommoditysale.Max(p => p.ENDDATE);
|
||
if (_MaxDate == null || _MaxDate.Value == DateTime.MinValue)
|
||
{
|
||
_MaxDate = DateTime.Now;
|
||
}
|
||
//该服务区所有数据
|
||
DataTable _DataTable = _OracleHelper.ExcuteSqlGetDataSet(
|
||
$@"SELECT COMMODITYSALE_ID,STARTDATE,ENDDATE,
|
||
SERVERPARTCODE,SHOPCODE,MACHINECODE,COMMODITY_CODE
|
||
FROM HIGHWAY_EXCHANGE.T_COMMODITYSALE
|
||
WHERE SERVERPARTCODE = '{codes[0]}' AND SHOPCODE IN ({_strShopCode}) AND
|
||
ENDDATE BETWEEN TO_DATE('{_MinDate.Value.ToString("yyyy/MM/dd HH:mm:ss")}','YYYY/MM/DD HH24:MI:SS') AND
|
||
TO_DATE('{_MaxDate.Value.ToString("yyyy/MM/dd HH:mm:ss")}','YYYY/MM/DD HH24:MI:SS')").Tables[0];
|
||
|
||
List<Model.HIGHWAY.COMMODITYSALE> _InsertList = new List<Model.HIGHWAY.COMMODITYSALE>();//需插入的集合
|
||
List<Model.HIGHWAY.COMMODITYSALE> _UpdateList = new List<Model.HIGHWAY.COMMODITYSALE>();//需更新的集合
|
||
DataRow[] _DataRows = null; //临时DataRow数组
|
||
|
||
foreach (Model.HIGHWAY.COMMODITYSALE _COMMODITYSALE in _DataCommoditysale)
|
||
{
|
||
if (_DataTable != null && _DataTable.Rows.Count > 0)
|
||
{
|
||
_DataRows = _DataTable.Select(
|
||
$" STARTDATE = '{_COMMODITYSALE.STARTDATE.ToString()}' AND " +
|
||
$" ENDDATE = '{_COMMODITYSALE.ENDDATE.ToString()}' AND " +
|
||
$" SERVERPARTCODE = '{_COMMODITYSALE.SERVERPARTCODE}' AND " +
|
||
$" SHOPCODE = '{_COMMODITYSALE.SHOPCODE}' AND " +
|
||
$" COMMODITY_CODE = '{_COMMODITYSALE.COMMODITY_CODE}' AND " +
|
||
$" COMMODITYSALE_ID = {_COMMODITYSALE.COMMODITYSALE_ID}");
|
||
if (_DataRows != null && _DataRows.Length > 0)
|
||
{
|
||
//记录已存在、需更新的数据
|
||
_UpdateList.Add(_COMMODITYSALE);
|
||
continue;
|
||
}
|
||
}
|
||
|
||
//需更新的集合
|
||
_InsertList.Add(_COMMODITYSALE);
|
||
}
|
||
|
||
if (_InsertList.Count + _UpdateList.Count == _DataCommoditysale.Count)
|
||
{
|
||
if (_InsertList.Count > 0)
|
||
{
|
||
OperationDataHelper<Model.HIGHWAY.COMMODITYSALE>.InsertTableData(
|
||
_OracleHelper, _InsertList, "HIGHWAY_EXCHANGE.T_COMMODITYSALE");
|
||
}
|
||
|
||
//if (_UpdateList.Count > 0)
|
||
//{
|
||
// try
|
||
// {
|
||
// OperationDataHelper<Model.HIGHWAY.COMMODITYSALE>.UpdateTableData(
|
||
// _OracleHelper, _UpdateList, "HIGHWAY_EXCHANGE.T_COMMODITYSALE",
|
||
// new string[] { "STARTDATE", "ENDDATE", "SERVERPARTCODE", "SHOPCODE", "COMMODITY_CODE" });
|
||
// }
|
||
// catch (Exception)
|
||
// {
|
||
// strBack = "{\"error\": 2 ,\"msg\": \"添加成功,更新失败!\",\"rows\":" +
|
||
// JsonHelper.ListToJson<Model.HIGHWAY.COMMODITYSALE>(_UpdateList, "rows", false) + "}";
|
||
// break;
|
||
// }
|
||
//}
|
||
//添加、更新成功无需传递任何参数。
|
||
strBack = "{\"error\": 1 ,\"msg\": \"添加成功!\",\"rows\":[]}";
|
||
}
|
||
else
|
||
{
|
||
strBack = "{\"error\": -1 ,\"msg\": \"添加失败:数据分割失败!\",\"rows\":[]}";
|
||
}
|
||
}
|
||
else
|
||
{
|
||
strBack = "{\"error\": -1 ,\"msg\": \"添加失败:JSON参数解析异常!\",\"rows\":[]}";
|
||
}
|
||
#endregion
|
||
break;
|
||
case "HIGHWAY_EXCHANGE.T_TRANSFER_SALE":
|
||
#region HIGHWAY_EXCHANGE.T_TRANSFER_SALE 单品数据集合
|
||
//必填项
|
||
_RequiredDatas = new string[] { "TRANSFER_ID", "SERVERPARTCODE", "TRANSFER_FIRSTDATAS" };
|
||
_ISCheckData = ISCheckData(jsonString, _RequiredDatas);
|
||
if (_ISCheckData != null)
|
||
{
|
||
strBack = _ISCheckData;
|
||
break;
|
||
}
|
||
List<Model.EXCHANGE.TRANSFER_SALE> _DataTransfer_sale =
|
||
JsonHelper.JSONStringToListUTC<Model.EXCHANGE.TRANSFER_SALE>(jsonString);
|
||
if (_DataTransfer_sale != null && _DataTransfer_sale.Count > 0)
|
||
{
|
||
var _MinDate = _DataTransfer_sale.Min(p => p.ENDDATE);
|
||
if (_MinDate == null || _MinDate.Value == DateTime.MinValue)
|
||
{
|
||
_MinDate = DateTime.Now;
|
||
}
|
||
var _MaxDate = _DataTransfer_sale.Max(p => p.ENDDATE);
|
||
if (_MaxDate == null || _MaxDate.Value == DateTime.MinValue)
|
||
{
|
||
_MaxDate = DateTime.Now;
|
||
}
|
||
//该服务区所有数据
|
||
DataTable _DataTable = _OracleHelper.ExcuteSqlGetDataSet(
|
||
string.Format(@"SELECT TRANSFER_ID,SERVERPARTCODE,
|
||
SHOPCODE,STARTDATE,ENDDATE,TRANSFER_FIRSTDATAS
|
||
FROM HIGHWAY_EXCHANGE.T_TRANSFER_SALE
|
||
WHERE SERVERPARTCODE = '{0}' AND ENDDATE BETWEEN
|
||
TO_DATE('{1}','YYYY/MM/DD HH24:MI:SS') AND TO_DATE('{2}','YYYY/MM/DD HH24:MI:SS')",
|
||
codes[0], _MinDate.Value.ToString("yyyy/MM/dd HH:mm:ss"),
|
||
_MaxDate.Value.ToString("yyyy/MM/dd HH:mm:ss"))).Tables[0];
|
||
|
||
List<Model.EXCHANGE.TRANSFER_SALE> _InsertList = new List<Model.EXCHANGE.TRANSFER_SALE>();//需插入的集合
|
||
List<Model.EXCHANGE.TRANSFER_SALE> _UpdateList = new List<Model.EXCHANGE.TRANSFER_SALE>();//需更新的集合
|
||
DataRow[] _DataRows = null; //临时DataRow数组
|
||
|
||
foreach (Model.EXCHANGE.TRANSFER_SALE _TRANSFER_SALE in _DataTransfer_sale)
|
||
{
|
||
if (_DataTable != null && _DataTable.Rows.Count > 0)
|
||
{
|
||
_DataRows = _DataTable.Select(
|
||
$" TRANSFER_ID = {_TRANSFER_SALE.TRANSFER_ID} AND " +
|
||
$" SERVERPARTCODE = '{_TRANSFER_SALE.SERVERPARTCODE}' AND " +
|
||
$" SHOPCODE = '{_TRANSFER_SALE.SHOPCODE}' AND " +
|
||
$" ENDDATE = '{_TRANSFER_SALE.ENDDATE}' AND " +
|
||
$" TRANSFER_FIRSTDATAS = '{_TRANSFER_SALE.TRANSFER_FIRSTDATAS}' ");
|
||
if (_DataRows != null && _DataRows.Length > 0)
|
||
{
|
||
//记录已存在、需更新的数据
|
||
_UpdateList.Add(_TRANSFER_SALE);
|
||
continue;
|
||
}
|
||
}
|
||
//需更新的集合
|
||
_InsertList.Add(_TRANSFER_SALE);
|
||
}
|
||
|
||
if (_InsertList.Count + _UpdateList.Count == _DataTransfer_sale.Count)
|
||
{
|
||
if (_InsertList.Count > 0)
|
||
{
|
||
OperationDataHelper<Model.EXCHANGE.TRANSFER_SALE>.InsertTableData(
|
||
_OracleHelper, _InsertList, "HIGHWAY_EXCHANGE.T_TRANSFER_SALE");
|
||
}
|
||
|
||
strBack = "{\"error\": 1 ,\"msg\": \"添加成功!\",\"rows\":[]}";
|
||
}
|
||
else
|
||
{
|
||
strBack = "{\"error\": -1 ,\"msg\": \"添加失败:数据分割失败!\",\"rows\":[]}";
|
||
}
|
||
}
|
||
else
|
||
{
|
||
strBack = "{\"error\": -1 ,\"msg\": \"添加失败:JSON参数解析异常!\",\"rows\":[]}";
|
||
}
|
||
#endregion
|
||
break;
|
||
case "HIGHWAY_EXCHANGE.T_EXCEPTION":
|
||
#region HIGHWAY_EXCHANGE.T_EXCEPTION 异常稽核数据表【旧】
|
||
//必填项
|
||
_RequiredDatas = new string[] { "EXCEPTION_ID", "EXCEPTION_DATE",
|
||
"SERVERPARTCODE", "SHOPCODE", "MACHINECODE", "EXCEPTIONTYPE" };
|
||
_ISCheckData = ISCheckData(jsonString, _RequiredDatas);
|
||
if (_ISCheckData != null)
|
||
{
|
||
strBack = _ISCheckData;
|
||
break;
|
||
}
|
||
List<Model.EXCHANGE.EXCEPTION> _DataException = JsonHelper.JSONStringToListUTC<Model.EXCHANGE.EXCEPTION>(jsonString);
|
||
if (_DataException != null && _DataException.Count > 0)
|
||
{
|
||
var _MinDate = _DataException.Min(p => p.EXCEPTION_DATE);
|
||
if (_MinDate == null || _MinDate.Value == DateTime.MinValue)
|
||
{
|
||
_MinDate = DateTime.Now;
|
||
}
|
||
|
||
var _MaxDate = _DataException.Max(p => p.EXCEPTION_DATE);
|
||
if (_MaxDate == null || _MaxDate.Value == DateTime.MinValue)
|
||
{
|
||
_MaxDate = DateTime.Now;
|
||
}
|
||
//该服务区所有数据
|
||
DataTable _DataTable = _OracleHelper.ExcuteSqlGetDataSet(
|
||
$@"SELECT EXCEPTION_ID,EXCEPTION_DATE,SERVERPARTCODE,
|
||
SHOPCODE,MACHINECODE,EXCEPTIONTYPE
|
||
FROM HIGHWAY_EXCHANGE.T_EXCEPTION
|
||
WHERE SERVERPARTCODE = '{codes[0]}' AND EXCEPTION_DATE BETWEEN
|
||
TO_DATE('{_MinDate.Value.ToString("yyyy/MM/dd HH:mm:ss")}','YYYY/MM/DD HH24:MI:SS') AND
|
||
TO_DATE('{_MaxDate.Value.ToString("yyyy/MM/dd HH:mm:ss")}','YYYY/MM/DD HH24:MI:SS')").Tables[0];
|
||
|
||
List<Model.EXCHANGE.EXCEPTION> _InsertList = new List<Model.EXCHANGE.EXCEPTION>();//需插入的集合
|
||
List<Model.EXCHANGE.EXCEPTION> _UpdateList = new List<Model.EXCHANGE.EXCEPTION>();//需更新的集合
|
||
DataRow[] _DataRows = null; //临时DataRow数组
|
||
|
||
foreach (Model.EXCHANGE.EXCEPTION _EXCEPTION in _DataException)
|
||
{
|
||
if (_DataTable != null && _DataTable.Rows.Count > 0)
|
||
{
|
||
_DataRows = _DataTable.Select(
|
||
$" EXCEPTION_ID = {_EXCEPTION.EXCEPTION_ID} AND " +
|
||
$" EXCEPTION_DATE = '{_EXCEPTION.EXCEPTION_DATE.ToString()}' AND " +
|
||
$" SERVERPARTCODE = '{_EXCEPTION.SERVERPARTCODE}' AND " +
|
||
$" SHOPCODE = '{_EXCEPTION.SHOPCODE}' AND " +
|
||
$" MACHINECODE = '{_EXCEPTION.MACHINECODE}' AND " +
|
||
$" EXCEPTIONTYPE = '{_EXCEPTION.EXCEPTIONTYPE}'");
|
||
if (_DataRows != null && _DataRows.Length > 0)
|
||
{
|
||
//记录已存在、需更新的数据
|
||
_UpdateList.Add(_EXCEPTION);
|
||
continue;
|
||
}
|
||
}
|
||
//需更新的集合
|
||
_InsertList.Add(_EXCEPTION);
|
||
}
|
||
|
||
if (_InsertList.Count + _UpdateList.Count == _DataException.Count)
|
||
{
|
||
if (_InsertList.Count > 0)
|
||
{
|
||
OperationDataHelper<Model.EXCHANGE.EXCEPTION>.InsertTableData(
|
||
_OracleHelper, _InsertList, "HIGHWAY_EXCHANGE.T_EXCEPTION");
|
||
}
|
||
|
||
strBack = "{\"error\": 1 ,\"msg\": \"添加成功!\",\"rows\":[]}";
|
||
}
|
||
else
|
||
{
|
||
strBack = "{\"error\": -1 ,\"msg\": \"添加失败:数据分割失败!\",\"rows\":[]}";
|
||
}
|
||
}
|
||
else
|
||
{
|
||
strBack = "{\"error\": -1 ,\"msg\": \"添加失败:JSON参数解析异常!\",\"rows\":[]}";
|
||
}
|
||
#endregion
|
||
break;
|
||
case "HIGHWAY_EXCHANGE.T_ABNORMALITY":
|
||
#region HIGHWAY_EXCHANGE.T_ABNORMALITY 异常操作记录主表
|
||
//必填项
|
||
_RequiredDatas = new string[] { "ABNORMALITY_CODE", "SERVERPART_CODE", "SHOPCODE",
|
||
"ABNORMALITY_TIME", "ABNORMALITY_TYPE" };
|
||
_ISCheckData = ISCheckData(jsonString, _RequiredDatas);
|
||
if (_ISCheckData != null)
|
||
{
|
||
strBack = _ISCheckData;
|
||
break;
|
||
}
|
||
List<Model.EXCHANGE.ABNORMALITY> _DataAbnormality =
|
||
JsonHelper.JSONStringToListUTC<Model.EXCHANGE.ABNORMALITY>(jsonString);
|
||
if (_DataAbnormality != null && _DataAbnormality.Count > 0)
|
||
{
|
||
string _strShopCode = "";
|
||
var _ShopCodeList = _DataAbnormality.Select(p => p.SHOPCODE).Distinct().ToArray();
|
||
foreach (var _ShopCodeTemp in _ShopCodeList)
|
||
{
|
||
_strShopCode += (string.IsNullOrWhiteSpace(_strShopCode) ? "'" : ",'") + _ShopCodeTemp.Trim() + "'";
|
||
}
|
||
|
||
var _MinDate = _DataAbnormality.Min(p => p.ABNORMALITY_TIME);
|
||
if (_MinDate == null || _MinDate.Value == DateTime.MinValue)
|
||
{
|
||
_MinDate = DateTime.Now;
|
||
}
|
||
|
||
var _MaxDate = _DataAbnormality.Max(p => p.ABNORMALITY_TIME);
|
||
if (_MaxDate == null || _MaxDate.Value == DateTime.Now)
|
||
{
|
||
_MaxDate = DateTime.Now;
|
||
}
|
||
//该服务区所有数据
|
||
DataTable _DataTable = _OracleHelper.ExcuteSqlGetDataSet(
|
||
$@"SELECT ABNORMALITY_CODE
|
||
FROM HIGHWAY_EXCHANGE.T_ABNORMALITY
|
||
WHERE SERVERPART_CODE = '{codes[0]}' AND SHOPCODE IN ({_strShopCode}) AND
|
||
ABNORMALITY_TIME BETWEEN TO_DATE('{_MinDate.Value.ToString("yyyy/MM/dd HH:mm:ss")}','YYYY/MM/DD HH24:MI:SS') AND
|
||
TO_DATE('{_MaxDate.Value.ToString("yyyy/MM/dd HH:mm:ss")}','YYYY/MM/DD HH24:MI:SS')").Tables[0];
|
||
|
||
List<Model.EXCHANGE.ABNORMALITY> _InsertList = new List<Model.EXCHANGE.ABNORMALITY>();//需插入的集合
|
||
List<Model.EXCHANGE.ABNORMALITY> _UpdateList = new List<Model.EXCHANGE.ABNORMALITY>();//需更新的集合
|
||
DataRow[] _DataRows = null; //临时DataRow数组
|
||
|
||
foreach (Model.EXCHANGE.ABNORMALITY _ABNORMALITY in _DataAbnormality)
|
||
{
|
||
if (_DataTable != null && _DataTable.Rows.Count > 0)
|
||
{
|
||
_DataRows = _DataTable.Select(
|
||
$" ABNORMALITY_CODE = '{_ABNORMALITY.ABNORMALITY_CODE}'");
|
||
if (_DataRows != null && _DataRows.Length > 0)
|
||
{
|
||
//记录已存在、需更新的数据
|
||
_UpdateList.Add(_ABNORMALITY);
|
||
continue;
|
||
}
|
||
}
|
||
|
||
//需更新的集合
|
||
_InsertList.Add(_ABNORMALITY);
|
||
}
|
||
|
||
if (_InsertList.Count + _UpdateList.Count == _DataAbnormality.Count)
|
||
{
|
||
if (_InsertList.Count > 0)
|
||
{
|
||
OperationDataHelper<Model.EXCHANGE.ABNORMALITY>.InsertTableData(
|
||
_OracleHelper, _InsertList, "HIGHWAY_EXCHANGE.T_ABNORMALITY", true,
|
||
"ABNORMALITY_ID", "HIGHWAY_EXCHANGE.SEQ_ABNORMALITY.NEXTVAL");
|
||
}
|
||
strBack = "{\"error\": 1 ,\"msg\": \"添加成功!\",\"rows\":[]}";
|
||
}
|
||
else
|
||
{
|
||
strBack = "{\"error\": -1 ,\"msg\": \"添加失败:数据分割失败!\",\"rows\":[]}";
|
||
}
|
||
}
|
||
else
|
||
{
|
||
strBack = "{\"error\": -1 ,\"msg\": \"添加失败:JSON参数解析异常!\",\"rows\":[]}";
|
||
}
|
||
#endregion
|
||
break;
|
||
case "HIGHWAY_EXCHANGE.T_ABNORMALITYDETAIL":
|
||
#region HIGHWAY_EXCHANGE.T_ABNORMALITYDETAIL 异常操作稽核统计表
|
||
//必填项
|
||
_RequiredDatas = new string[] { "ABNORMALITYDETIL_CODE", "ABNORMALITY_CODE",
|
||
"COMMODITY_CODE", "COMMODITY_BARCODE", "OPERATEDATE" };
|
||
_ISCheckData = ISCheckData(jsonString, _RequiredDatas);
|
||
if (_ISCheckData != null)
|
||
{
|
||
strBack = _ISCheckData;
|
||
break;
|
||
}
|
||
List<Model.EXCHANGE.ABNORMALITYDETAIL> _DataAbnormalityDetail =
|
||
JsonHelper.JSONStringToListUTC<Model.EXCHANGE.ABNORMALITYDETAIL>(jsonString);
|
||
if (_DataAbnormalityDetail != null && _DataAbnormalityDetail.Count > 0)
|
||
{
|
||
|
||
var _MinDate = _DataAbnormalityDetail.Min(p => p.OPERATEDATE);
|
||
if (_MinDate == null || _MinDate.Value == DateTime.MinValue)
|
||
{
|
||
_MinDate = DateTime.Now;
|
||
}
|
||
|
||
var _MaxDate = _DataAbnormalityDetail.Max(p => p.OPERATEDATE);
|
||
if (_MaxDate == null || _MaxDate.Value == DateTime.Now)
|
||
{
|
||
_MaxDate = DateTime.Now;
|
||
}
|
||
//该服务区所有数据
|
||
DataTable _DataTable = _OracleHelper.ExcuteSqlGetDataSet(
|
||
$@"SELECT ABNORMALITYDETIL_CODE
|
||
FROM HIGHWAY_EXCHANGE.T_ABNORMALITYDETAIL
|
||
WHERE ABNORMALITYDETIL_CODE LIKE '{codes[0] + codes[1] + "%"}' AND
|
||
OPERATEDATE BETWEEN TO_DATE('{_MinDate.Value.ToString("yyyy/MM/dd HH:mm:ss")}','YYYY/MM/DD HH24:MI:SS') AND
|
||
TO_DATE('{_MaxDate.Value.ToString("yyyy/MM/dd HH:mm:ss")}','YYYY/MM/DD HH24:MI:SS')").Tables[0];
|
||
|
||
List<Model.EXCHANGE.ABNORMALITYDETAIL> _InsertList = new List<Model.EXCHANGE.ABNORMALITYDETAIL>();//需插入的集合
|
||
List<Model.EXCHANGE.ABNORMALITYDETAIL> _UpdateList = new List<Model.EXCHANGE.ABNORMALITYDETAIL>();//需更新的集合
|
||
DataRow[] _DataRows = null; //临时DataRow数组
|
||
|
||
foreach (Model.EXCHANGE.ABNORMALITYDETAIL _ABNORMALITYDETAIL in _DataAbnormalityDetail)
|
||
{
|
||
if (_DataTable != null && _DataTable.Rows.Count > 0)
|
||
{
|
||
_DataRows = _DataTable.Select(
|
||
$" ABNORMALITYDETIL_CODE = '{_ABNORMALITYDETAIL.ABNORMALITYDETIL_CODE}'");
|
||
if (_DataRows != null && _DataRows.Length > 0)
|
||
{
|
||
//记录已存在、需更新的数据
|
||
_UpdateList.Add(_ABNORMALITYDETAIL);
|
||
continue;
|
||
}
|
||
}
|
||
|
||
//需更新的集合
|
||
_InsertList.Add(_ABNORMALITYDETAIL);
|
||
}
|
||
|
||
if (_InsertList.Count + _UpdateList.Count == _DataAbnormalityDetail.Count)
|
||
{
|
||
if (_InsertList.Count > 0)
|
||
{
|
||
OperationDataHelper<Model.EXCHANGE.ABNORMALITYDETAIL>.InsertTableData(
|
||
_OracleHelper, _InsertList, "HIGHWAY_EXCHANGE.T_ABNORMALITYDETAIL", true,
|
||
"ABNORMALITYDETIL_ID", "HIGHWAY_EXCHANGE.SEQ_ABNORMALITYDETAIL.NEXTVAL");
|
||
}
|
||
strBack = "{\"error\": 1 ,\"msg\": \"添加成功!\",\"rows\":[]}";
|
||
}
|
||
else
|
||
{
|
||
strBack = "{\"error\": -1 ,\"msg\": \"添加失败:数据分割失败!\",\"rows\":[]}";
|
||
}
|
||
}
|
||
else
|
||
{
|
||
strBack = "{\"error\": -1 ,\"msg\": \"添加失败:JSON参数解析异常!\",\"rows\":[]}";
|
||
}
|
||
#endregion
|
||
break;
|
||
case "HIGHWAY_EXCHANGE.T_ABNOEMALITYANALYSIS":
|
||
#region HIGHWAY_EXCHANGE.T_ABNOEMALITYANALYSIS 异常操作稽核统计表
|
||
//必填项
|
||
_RequiredDatas = new string[] { "ABNOEMALITYANALYSIS_CODE", "SERVERPART_CODE",
|
||
"SHOPCODE", "ENDACCOUNT_START", "ENDACCOUNT_END", "ABNOEMALITY_TYPE",
|
||
"OPERATEDATE" };
|
||
_ISCheckData = ISCheckData(jsonString, _RequiredDatas);
|
||
if (_ISCheckData != null)
|
||
{
|
||
strBack = _ISCheckData;
|
||
break;
|
||
}
|
||
List<Model.EXCHANGE.ABNOEMALITYANALYSIS> _DataAbnoemalityAnalysis =
|
||
JsonHelper.JSONStringToListUTC<Model.EXCHANGE.ABNOEMALITYANALYSIS>(jsonString);
|
||
if (_DataAbnoemalityAnalysis != null && _DataAbnoemalityAnalysis.Count > 0)
|
||
{
|
||
string _strShopCode = "";
|
||
var _ShopCodeList = _DataAbnoemalityAnalysis.Select(p => p.SHOPCODE).Distinct().ToArray();
|
||
foreach (var _ShopCodeTemp in _ShopCodeList)
|
||
{
|
||
_strShopCode += (string.IsNullOrWhiteSpace(_strShopCode) ? "'" : ",'") + _ShopCodeTemp.Trim() + "'";
|
||
}
|
||
|
||
var _MinDate = _DataAbnoemalityAnalysis.Min(p => p.OPERATEDATE);
|
||
if (_MinDate == null || _MinDate.Value == DateTime.MinValue)
|
||
{
|
||
_MinDate = DateTime.Now;
|
||
}
|
||
|
||
var _MaxDate = _DataAbnoemalityAnalysis.Max(p => p.OPERATEDATE);
|
||
if (_MaxDate == null || _MaxDate.Value == DateTime.Now)
|
||
{
|
||
_MaxDate = DateTime.Now;
|
||
}
|
||
//该服务区所有数据
|
||
DataTable _DataTable = _OracleHelper.ExcuteSqlGetDataSet(
|
||
$@"SELECT ABNOEMALITYANALYSIS_CODE
|
||
FROM HIGHWAY_EXCHANGE.T_ABNOEMALITYANALYSIS
|
||
WHERE SERVERPART_CODE = '{codes[0]}' AND SHOPCODE IN ({_strShopCode}) AND
|
||
OPERATEDATE BETWEEN TO_DATE('{_MinDate.Value.ToString("yyyy/MM/dd HH:mm:ss")}','YYYY/MM/DD HH24:MI:SS') AND
|
||
TO_DATE('{_MaxDate.Value.ToString("yyyy/MM/dd HH:mm:ss")}','YYYY/MM/DD HH24:MI:SS')").Tables[0];
|
||
|
||
List<Model.EXCHANGE.ABNOEMALITYANALYSIS> _InsertList = new List<Model.EXCHANGE.ABNOEMALITYANALYSIS>();//需插入的集合
|
||
List<Model.EXCHANGE.ABNOEMALITYANALYSIS> _UpdateList = new List<Model.EXCHANGE.ABNOEMALITYANALYSIS>();//需更新的集合
|
||
DataRow[] _DataRows = null; //临时DataRow数组
|
||
|
||
foreach (Model.EXCHANGE.ABNOEMALITYANALYSIS _ABNOEMALITYANALYSIS in _DataAbnoemalityAnalysis)
|
||
{
|
||
if (_DataTable != null && _DataTable.Rows.Count > 0)
|
||
{
|
||
_DataRows = _DataTable.Select(
|
||
$" ABNOEMALITYANALYSIS_CODE = '{_ABNOEMALITYANALYSIS.ABNOEMALITYANALYSIS_CODE}'");
|
||
if (_DataRows != null && _DataRows.Length > 0)
|
||
{
|
||
//记录已存在、需更新的数据
|
||
_UpdateList.Add(_ABNOEMALITYANALYSIS);
|
||
continue;
|
||
}
|
||
}
|
||
|
||
//需更新的集合
|
||
_InsertList.Add(_ABNOEMALITYANALYSIS);
|
||
}
|
||
|
||
if (_InsertList.Count + _UpdateList.Count == _DataAbnoemalityAnalysis.Count)
|
||
{
|
||
if (_InsertList.Count > 0)
|
||
{
|
||
OperationDataHelper<Model.EXCHANGE.ABNOEMALITYANALYSIS>.InsertTableData(
|
||
_OracleHelper, _InsertList, "HIGHWAY_EXCHANGE.T_ABNOEMALITYANALYSIS", true,
|
||
"ABNOEMALITYANALYSIS_ID", "HIGHWAY_EXCHANGE.SEQ_ABNOEMALITYANALYSIS.NEXTVAL");
|
||
}
|
||
strBack = "{\"error\": 1 ,\"msg\": \"添加成功!\",\"rows\":[]}";
|
||
}
|
||
else
|
||
{
|
||
strBack = "{\"error\": -1 ,\"msg\": \"添加失败:数据分割失败!\",\"rows\":[]}";
|
||
}
|
||
}
|
||
else
|
||
{
|
||
strBack = "{\"error\": -1 ,\"msg\": \"添加失败:JSON参数解析异常!\",\"rows\":[]}";
|
||
}
|
||
#endregion
|
||
break;
|
||
case "HIGHWAY_EXCHANGE.T_CUSTOMERINFO":
|
||
#region HIGHWAY_EXCHANGE.T_CUSTOMERINFO 客群分析数据表
|
||
//必填项
|
||
_RequiredDatas = new string[] { "SELLMASTER_CODE", "SERVERPARTCODE", "ACQUISITION_TIME" };
|
||
_ISCheckData = ISCheckData(jsonString, _RequiredDatas);
|
||
if (_ISCheckData != null)
|
||
{
|
||
strBack = _ISCheckData;
|
||
break;
|
||
}
|
||
List<Model.EXCHANGE.CUSTOMERINFO> _DataCustomerinfo =
|
||
JsonHelper.JSONStringToListUTC<Model.EXCHANGE.CUSTOMERINFO>(jsonString);
|
||
if (_DataCustomerinfo != null && _DataCustomerinfo.Count > 0)
|
||
{
|
||
string _strShopCode = "";
|
||
var _ShopCodeList = _DataCustomerinfo.Select(p => p.SHOPCODE).Distinct().ToArray();
|
||
foreach (var _ShopCodeTemp in _ShopCodeList)
|
||
{
|
||
_strShopCode += (string.IsNullOrWhiteSpace(_strShopCode) ? "'" : ",'") + _ShopCodeTemp.Trim() + "'";
|
||
}
|
||
|
||
var _MinDate = _DataCustomerinfo.Min(p => p.ACQUISITION_TIME);
|
||
if (_MinDate == null || _MinDate.Value == DateTime.MinValue)
|
||
{
|
||
_MinDate = DateTime.Now;
|
||
}
|
||
|
||
var _MaxDate = _DataCustomerinfo.Max(p => p.ACQUISITION_TIME);
|
||
if (_MaxDate == null || _MaxDate.Value == DateTime.Now)
|
||
{
|
||
_MaxDate = DateTime.Now;
|
||
}
|
||
//该服务区所有数据
|
||
DataTable _DataTable = _OracleHelper.ExcuteSqlGetDataSet(
|
||
$@"SELECT SELLMASTER_CODE,ACQUISITION_TIME,
|
||
SERVERPARTCODE,SHOPCODE,MACHINECODE
|
||
FROM HIGHWAY_EXCHANGE.T_CUSTOMERINFO
|
||
WHERE SERVERPARTCODE = '{codes[0]}' AND SHOPCODE IN ({_strShopCode}) AND
|
||
MACHINECODE = '{codes[3]}' AND ACQUISITION_TIME BETWEEN
|
||
TO_DATE('{_MinDate.Value.ToString("yyyy/MM/dd HH:mm:ss")}','YYYY/MM/DD HH24:MI:SS') AND
|
||
TO_DATE('{_MaxDate.Value.ToString("yyyy/MM/dd HH:mm:ss")}','YYYY/MM/DD HH24:MI:SS')").Tables[0];
|
||
|
||
List<Model.EXCHANGE.CUSTOMERINFO> _InsertList = new List<Model.EXCHANGE.CUSTOMERINFO>();//需插入的集合
|
||
List<Model.EXCHANGE.CUSTOMERINFO> _UpdateList = new List<Model.EXCHANGE.CUSTOMERINFO>();//需更新的集合
|
||
DataRow[] _DataRows = null; //临时DataRow数组
|
||
|
||
foreach (Model.EXCHANGE.CUSTOMERINFO _CUSTOMERINFO in _DataCustomerinfo)
|
||
{
|
||
if (_DataTable != null && _DataTable.Rows.Count > 0)
|
||
{
|
||
_DataRows = _DataTable.Select(
|
||
$" SELLMASTER_CODE = '{_CUSTOMERINFO.SELLMASTER_CODE}' AND " +
|
||
$" ACQUISITION_TIME = '{_CUSTOMERINFO.ACQUISITION_TIME.ToString()}' AND " +
|
||
$" SERVERPARTCODE = '{_CUSTOMERINFO.SERVERPARTCODE}' AND " +
|
||
$" SHOPCODE = '{_CUSTOMERINFO.SHOPCODE}' AND " +
|
||
$" MACHINECODE = '{_CUSTOMERINFO.MACHINECODE}'");
|
||
if (_DataRows != null && _DataRows.Length > 0)
|
||
{
|
||
//记录已存在、需更新的数据
|
||
_UpdateList.Add(_CUSTOMERINFO);
|
||
continue;
|
||
}
|
||
}
|
||
|
||
//需更新的集合
|
||
_InsertList.Add(_CUSTOMERINFO);
|
||
}
|
||
|
||
if (_InsertList.Count + _UpdateList.Count == _DataCustomerinfo.Count)
|
||
{
|
||
if (_InsertList.Count > 0)
|
||
{
|
||
OperationDataHelper<Model.EXCHANGE.CUSTOMERINFO>.InsertTableData_OracleParameter(
|
||
_OracleHelper, _InsertList, "HIGHWAY_EXCHANGE.T_CUSTOMERINFO");
|
||
}
|
||
strBack = "{\"error\": 1 ,\"msg\": \"添加成功!\",\"rows\":[]}";
|
||
}
|
||
else
|
||
{
|
||
strBack = "{\"error\": -1 ,\"msg\": \"添加失败:数据分割失败!\",\"rows\":[]}";
|
||
}
|
||
}
|
||
else
|
||
{
|
||
strBack = "{\"error\": -1 ,\"msg\": \"添加失败:JSON参数解析异常!\",\"rows\":[]}";
|
||
}
|
||
#endregion
|
||
break;
|
||
case "HIGHWAY_EXCHANGE.T_CUSTOMERANALYSIS":
|
||
#region HIGHWAY_EXCHANGE.T_CUSTOMERANALYSIS 客单时段统计表
|
||
//必填项
|
||
_RequiredDatas = new string[] { "CUSTOMERANALYSIS_CODE", "SERVERPART_CODE",
|
||
"SHOPCODE", "BUSINESSTYPE", "CUSTOMERANALYSIS_DATE" };
|
||
_ISCheckData = ISCheckData(jsonString, _RequiredDatas);
|
||
if (_ISCheckData != null)
|
||
{
|
||
strBack = _ISCheckData;
|
||
break;
|
||
}
|
||
List<Model.EXCHANGE.CUSTOMERANALYSIS> _DataCustomerAnalysis =
|
||
JsonHelper.JSONStringToListUTC<Model.EXCHANGE.CUSTOMERANALYSIS>(jsonString);
|
||
if (_DataCustomerAnalysis != null && _DataCustomerAnalysis.Count > 0)
|
||
{
|
||
string _strShopCode = "";
|
||
var _ShopCodeList = _DataCustomerAnalysis.Select(p => p.SHOPCODE).Distinct().ToArray();
|
||
foreach (var _ShopCodeTemp in _ShopCodeList)
|
||
{
|
||
_strShopCode += (string.IsNullOrWhiteSpace(_strShopCode) ? "'" : ",'") + _ShopCodeTemp.Trim() + "'";
|
||
}
|
||
|
||
var _MinDate = _DataCustomerAnalysis.Min(p => p.CUSTOMERANALYSIS_DATE);
|
||
if (_MinDate == null || _MinDate.Value == DateTime.MinValue)
|
||
{
|
||
_MinDate = DateTime.Now;
|
||
}
|
||
|
||
var _MaxDate = _DataCustomerAnalysis.Max(p => p.CUSTOMERANALYSIS_DATE);
|
||
if (_MaxDate == null || _MaxDate.Value == DateTime.Now)
|
||
{
|
||
_MaxDate = DateTime.Now;
|
||
}
|
||
//该服务区所有数据
|
||
DataTable _DataTable = _OracleHelper.ExcuteSqlGetDataSet(
|
||
$@"SELECT CUSTOMERANALYSIS_CODE
|
||
FROM HIGHWAY_EXCHANGE.T_CUSTOMERANALYSIS
|
||
WHERE SERVERPART_CODE = '{codes[0]}' AND SHOPCODE = ({_strShopCode}) AND
|
||
CUSTOMERANALYSIS_DATE BETWEEN TO_DATE('{_MinDate.Value.ToString("yyyy/MM/dd HH:mm:ss")}','YYYY/MM/DD HH24:MI:SS') AND
|
||
TO_DATE('{_MaxDate.Value.ToString("yyyy/MM/dd HH:mm:ss")}','YYYY/MM/DD HH24:MI:SS')").Tables[0];
|
||
|
||
List<Model.EXCHANGE.CUSTOMERANALYSIS> _InsertList = new List<Model.EXCHANGE.CUSTOMERANALYSIS>();//需插入的集合
|
||
List<Model.EXCHANGE.CUSTOMERANALYSIS> _UpdateList = new List<Model.EXCHANGE.CUSTOMERANALYSIS>();//需更新的集合
|
||
DataRow[] _DataRows = null; //临时DataRow数组
|
||
|
||
foreach (Model.EXCHANGE.CUSTOMERANALYSIS _CUSTOMERANALYSIS in _DataCustomerAnalysis)
|
||
{
|
||
if (_DataTable != null && _DataTable.Rows.Count > 0)
|
||
{
|
||
_DataRows = _DataTable.Select(
|
||
$" CUSTOMERANALYSIS_CODE = '{_CUSTOMERANALYSIS.CUSTOMERANALYSIS_CODE}'");
|
||
if (_DataRows != null && _DataRows.Length > 0)
|
||
{
|
||
//记录已存在、需更新的数据
|
||
_UpdateList.Add(_CUSTOMERANALYSIS);
|
||
continue;
|
||
}
|
||
}
|
||
|
||
//需更新的集合
|
||
_InsertList.Add(_CUSTOMERANALYSIS);
|
||
}
|
||
|
||
if (_InsertList.Count + _UpdateList.Count == _DataCustomerAnalysis.Count)
|
||
{
|
||
if (_InsertList.Count > 0)
|
||
{
|
||
OperationDataHelper<Model.EXCHANGE.CUSTOMERANALYSIS>.InsertTableData(
|
||
_OracleHelper, _InsertList, "HIGHWAY_EXCHANGE.T_CUSTOMERANALYSIS", true,
|
||
"CUSTOMERANALYSIS_ID", "HIGHWAY_EXCHANGE.SEQ_CUSTOMERANALYSIS.NEXTVAL");
|
||
}
|
||
strBack = "{\"error\": 1 ,\"msg\": \"添加成功!\",\"rows\":[]}";
|
||
}
|
||
else
|
||
{
|
||
strBack = "{\"error\": -1 ,\"msg\": \"添加失败:数据分割失败!\",\"rows\":[]}";
|
||
}
|
||
}
|
||
else
|
||
{
|
||
strBack = "{\"error\": -1 ,\"msg\": \"添加失败:JSON参数解析异常!\",\"rows\":[]}";
|
||
}
|
||
#endregion
|
||
break;
|
||
case "HIGHWAY_EXCHANGE.T_SALESANALYSIS":
|
||
#region HIGHWAY_EXCHANGE.T_SALESANALYSIS 客单区段统计表
|
||
//必填项
|
||
_RequiredDatas = new string[] { "SALESANALYSIS_CODE", "SERVERPART_CODE",
|
||
"SHOPCODE", "SALESANALYSIS_DATE", "SALEAMOUNT_START", "SALEAMOUNT_END" };
|
||
_ISCheckData = ISCheckData(jsonString, _RequiredDatas);
|
||
if (_ISCheckData != null)
|
||
{
|
||
strBack = _ISCheckData;
|
||
break;
|
||
}
|
||
List<Model.EXCHANGE.SALESANALYSIS> _DataSalesAnalysis =
|
||
JsonHelper.JSONStringToListUTC<Model.EXCHANGE.SALESANALYSIS>(jsonString);
|
||
if (_DataSalesAnalysis != null && _DataSalesAnalysis.Count > 0)
|
||
{
|
||
string _strShopCode = "";
|
||
var _ShopCodeList = _DataSalesAnalysis.Select(p => p.SHOPCODE).Distinct().ToArray();
|
||
foreach (var _ShopCodeTemp in _ShopCodeList)
|
||
{
|
||
_strShopCode += (string.IsNullOrWhiteSpace(_strShopCode) ? "'" : ",'") + _ShopCodeTemp.Trim() + "'";
|
||
}
|
||
|
||
var _MinDate = _DataSalesAnalysis.Min(p => p.SALESANALYSIS_DATE);
|
||
if (_MinDate == null || _MinDate.Value == DateTime.MinValue)
|
||
{
|
||
_MinDate = DateTime.Now;
|
||
}
|
||
|
||
var _MaxDate = _DataSalesAnalysis.Max(p => p.SALESANALYSIS_DATE);
|
||
if (_MaxDate == null || _MaxDate.Value == DateTime.Now)
|
||
{
|
||
_MaxDate = DateTime.Now;
|
||
}
|
||
//该服务区所有数据
|
||
DataTable _DataTable = _OracleHelper.ExcuteSqlGetDataSet(
|
||
$@"SELECT SALESANALYSIS_CODE
|
||
FROM HIGHWAY_EXCHANGE.T_SALESANALYSIS
|
||
WHERE SERVERPART_CODE = '{codes[0]}' AND SHOPCODE IN ({_strShopCode}) AND
|
||
SALESANALYSIS_DATE BETWEEN TO_DATE('{_MinDate.Value.ToString("yyyy/MM/dd HH:mm:ss")}','YYYY/MM/DD HH24:MI:SS') AND
|
||
TO_DATE('{_MaxDate.Value.ToString("yyyy/MM/dd HH:mm:ss")}','YYYY/MM/DD HH24:MI:SS')").Tables[0];
|
||
|
||
List<Model.EXCHANGE.SALESANALYSIS> _InsertList = new List<Model.EXCHANGE.SALESANALYSIS>();//需插入的集合
|
||
List<Model.EXCHANGE.SALESANALYSIS> _UpdateList = new List<Model.EXCHANGE.SALESANALYSIS>();//需更新的集合
|
||
DataRow[] _DataRows = null; //临时DataRow数组
|
||
|
||
foreach (Model.EXCHANGE.SALESANALYSIS _SALESANALYSIS in _DataSalesAnalysis)
|
||
{
|
||
if (_DataTable != null && _DataTable.Rows.Count > 0)
|
||
{
|
||
_DataRows = _DataTable.Select(
|
||
$" SALESANALYSIS_CODE = '{_SALESANALYSIS.SALESANALYSIS_CODE}'");
|
||
if (_DataRows != null && _DataRows.Length > 0)
|
||
{
|
||
//记录已存在、需更新的数据
|
||
_UpdateList.Add(_SALESANALYSIS);
|
||
continue;
|
||
}
|
||
}
|
||
|
||
//需更新的集合
|
||
_InsertList.Add(_SALESANALYSIS);
|
||
}
|
||
|
||
if (_InsertList.Count + _UpdateList.Count == _DataSalesAnalysis.Count)
|
||
{
|
||
if (_InsertList.Count > 0)
|
||
{
|
||
OperationDataHelper<Model.EXCHANGE.SALESANALYSIS>.InsertTableData(
|
||
_OracleHelper, _InsertList, "HIGHWAY_EXCHANGE.T_SALESANALYSIS", true,
|
||
"SALESANALYSIS_ID", "HIGHWAY_EXCHANGE.SEQ_SALESANALYSIS.NEXTVAL");
|
||
}
|
||
strBack = "{\"error\": 1 ,\"msg\": \"添加成功!\",\"rows\":[]}";
|
||
}
|
||
else
|
||
{
|
||
strBack = "{\"error\": -1 ,\"msg\": \"添加失败:数据分割失败!\",\"rows\":[]}";
|
||
}
|
||
}
|
||
else
|
||
{
|
||
strBack = "{\"error\": -1 ,\"msg\": \"添加失败:JSON参数解析异常!\",\"rows\":[]}";
|
||
}
|
||
#endregion
|
||
break;
|
||
case "HIGHWAY_EXCHANGE.T_COMMODITYANALYSIS":
|
||
#region HIGHWAY_EXCHANGE.T_COMMODITYANALYSIS 推荐单品统计表
|
||
//必填项
|
||
_RequiredDatas = new string[] { "COMMODITYANALYSIS_CODE", "SERVERPART_CODE",
|
||
"BUSINESSTYPE","SHOPCODE", "COMMODITY_CODE", "COMMODITYANALYSIS_DATE" };
|
||
_ISCheckData = ISCheckData(jsonString, _RequiredDatas);
|
||
if (_ISCheckData != null)
|
||
{
|
||
strBack = _ISCheckData;
|
||
break;
|
||
}
|
||
List<Model.EXCHANGE.COMMODITYANALYSIS> _DataCommodityAnalysis =
|
||
JsonHelper.JSONStringToListUTC<Model.EXCHANGE.COMMODITYANALYSIS>(jsonString);
|
||
if (_DataCommodityAnalysis != null && _DataCommodityAnalysis.Count > 0)
|
||
{
|
||
string _strShopCode = "";
|
||
var _ShopCodeList = _DataCommodityAnalysis.Select(p => p.SHOPCODE).Distinct().ToArray();
|
||
foreach (var _ShopCodeTemp in _ShopCodeList)
|
||
{
|
||
_strShopCode += (string.IsNullOrWhiteSpace(_strShopCode) ? "'" : ",'") + _ShopCodeTemp.Trim() + "'";
|
||
}
|
||
|
||
var _MinDate = _DataCommodityAnalysis.Min(p => p.COMMODITYANALYSIS_DATE);
|
||
if (_MinDate == null || _MinDate.Value == DateTime.MinValue)
|
||
{
|
||
_MinDate = DateTime.Now;
|
||
}
|
||
|
||
var _MaxDate = _DataCommodityAnalysis.Max(p => p.COMMODITYANALYSIS_DATE);
|
||
if (_MaxDate == null || _MaxDate.Value == DateTime.Now)
|
||
{
|
||
_MaxDate = DateTime.Now;
|
||
}
|
||
//该服务区所有数据
|
||
DataTable _DataTable = _OracleHelper.ExcuteSqlGetDataSet(
|
||
$@"SELECT COMMODITYANALYSIS_CODE
|
||
FROM HIGHWAY_EXCHANGE.T_COMMODITYANALYSIS
|
||
WHERE SERVERPART_CODE = '{codes[0]}' AND SHOPCODE IN ({_strShopCode}) AND
|
||
COMMODITYANALYSIS_DATE BETWEEN TO_DATE('{_MinDate.Value.ToString("yyyy/MM/dd HH:mm:ss")}','YYYY/MM/DD HH24:MI:SS') AND
|
||
TO_DATE('{_MaxDate.Value.ToString("yyyy/MM/dd HH:mm:ss")}','YYYY/MM/DD HH24:MI:SS')").Tables[0];
|
||
|
||
List<Model.EXCHANGE.COMMODITYANALYSIS> _InsertList = new List<Model.EXCHANGE.COMMODITYANALYSIS>();//需插入的集合
|
||
List<Model.EXCHANGE.COMMODITYANALYSIS> _UpdateList = new List<Model.EXCHANGE.COMMODITYANALYSIS>();//需更新的集合
|
||
DataRow[] _DataRows = null; //临时DataRow数组
|
||
|
||
foreach (Model.EXCHANGE.COMMODITYANALYSIS _COMMODITYANALYSIS in _DataCommodityAnalysis)
|
||
{
|
||
if (_DataTable != null && _DataTable.Rows.Count > 0)
|
||
{
|
||
_DataRows = _DataTable.Select(
|
||
$" COMMODITYANALYSIS_CODE = '{_COMMODITYANALYSIS.COMMODITYANALYSIS_CODE}'");
|
||
if (_DataRows != null && _DataRows.Length > 0)
|
||
{
|
||
//记录已存在、需更新的数据
|
||
_UpdateList.Add(_COMMODITYANALYSIS);
|
||
continue;
|
||
}
|
||
}
|
||
|
||
//需更新的集合
|
||
_InsertList.Add(_COMMODITYANALYSIS);
|
||
}
|
||
|
||
if (_InsertList.Count + _UpdateList.Count == _DataCommodityAnalysis.Count)
|
||
{
|
||
if (_InsertList.Count > 0)
|
||
{
|
||
OperationDataHelper<Model.EXCHANGE.COMMODITYANALYSIS>.InsertTableData(
|
||
_OracleHelper, _InsertList, "HIGHWAY_EXCHANGE.T_COMMODITYANALYSIS", true,
|
||
"COMMODITYANALYSIS_ID", "HIGHWAY_EXCHANGE.SEQ_COMMODITYANALYSIS.NEXTVAL");
|
||
}
|
||
strBack = "{\"error\": 1 ,\"msg\": \"添加成功!\",\"rows\":[]}";
|
||
}
|
||
else
|
||
{
|
||
strBack = "{\"error\": -1 ,\"msg\": \"添加失败:数据分割失败!\",\"rows\":[]}";
|
||
}
|
||
}
|
||
else
|
||
{
|
||
strBack = "{\"error\": -1 ,\"msg\": \"添加失败:JSON参数解析异常!\",\"rows\":[]}";
|
||
}
|
||
#endregion
|
||
break;
|
||
case "HIGHWAY_EXCHANGE.T_SALESINTERVALANALYSIS":
|
||
#region HIGHWAY_EXCHANGE.T_SALESINTERVALANALYSIS 客单时段统计表
|
||
//必填项
|
||
_RequiredDatas = new string[] { "SALESINTERVALANALYSIS_CODE", "SERVERPART_CODE",
|
||
"SHOPCODE", "DATE_START", "DATE_END","AMOUNT_START", "AMOUNT_END" };
|
||
_ISCheckData = ISCheckData(jsonString, _RequiredDatas);
|
||
if (_ISCheckData != null)
|
||
{
|
||
strBack = _ISCheckData;
|
||
break;
|
||
}
|
||
List<Model.EXCHANGE.SALESINTERVALANALYSIS> _DataSalesIntervalAnalysis =
|
||
JsonHelper.JSONStringToListUTC<Model.EXCHANGE.SALESINTERVALANALYSIS>(jsonString);
|
||
if (_DataSalesIntervalAnalysis != null && _DataSalesIntervalAnalysis.Count > 0)
|
||
{
|
||
string _strShopCode = "";
|
||
var _ShopCodeList = _DataSalesIntervalAnalysis.Select(p => p.SHOPCODE).Distinct().ToArray();
|
||
foreach (var _ShopCodeTemp in _ShopCodeList)
|
||
{
|
||
_strShopCode += (string.IsNullOrWhiteSpace(_strShopCode) ? "'" : ",'") + _ShopCodeTemp.Trim() + "'";
|
||
}
|
||
|
||
var _MinDate = _DataSalesIntervalAnalysis.Min(p => p.DATE_END);
|
||
if (_MinDate == null || _MinDate.Value == DateTime.MinValue)
|
||
{
|
||
_MinDate = DateTime.Now;
|
||
}
|
||
|
||
var _MaxDate = _DataSalesIntervalAnalysis.Max(p => p.DATE_END);
|
||
if (_MaxDate == null || _MaxDate.Value == DateTime.Now)
|
||
{
|
||
_MaxDate = DateTime.Now;
|
||
}
|
||
//该服务区所有数据
|
||
DataTable _DataTable = _OracleHelper.ExcuteSqlGetDataSet(
|
||
$@"SELECT SALESINTERVALANALYSIS_CODE
|
||
FROM HIGHWAY_EXCHANGE.T_SALESINTERVALANALYSIS
|
||
WHERE SERVERPART_CODE = '{codes[0]}' AND SHOPCODE IN ({_strShopCode}) AND
|
||
DATE_END BETWEEN TO_DATE('{_MinDate.Value.ToString("yyyy/MM/dd HH:mm:ss")}','YYYY/MM/DD HH24:MI:SS') AND
|
||
TO_DATE('{_MaxDate.Value.ToString("yyyy/MM/dd HH:mm:ss")}','YYYY/MM/DD HH24:MI:SS')").Tables[0];
|
||
|
||
List<Model.EXCHANGE.SALESINTERVALANALYSIS> _InsertList = new List<Model.EXCHANGE.SALESINTERVALANALYSIS>();//需插入的集合
|
||
List<Model.EXCHANGE.SALESINTERVALANALYSIS> _UpdateList = new List<Model.EXCHANGE.SALESINTERVALANALYSIS>();//需更新的集合
|
||
DataRow[] _DataRows = null; //临时DataRow数组
|
||
|
||
foreach (Model.EXCHANGE.SALESINTERVALANALYSIS _SALESINTERVALANALYSIS in _DataSalesIntervalAnalysis)
|
||
{
|
||
if (_DataTable != null && _DataTable.Rows.Count > 0)
|
||
{
|
||
_DataRows = _DataTable.Select(
|
||
$" SALESINTERVALANALYSIS_CODE = '{_SALESINTERVALANALYSIS.SALESINTERVALANALYSIS_CODE}'");
|
||
if (_DataRows != null && _DataRows.Length > 0)
|
||
{
|
||
//记录已存在、需更新的数据
|
||
_UpdateList.Add(_SALESINTERVALANALYSIS);
|
||
continue;
|
||
}
|
||
}
|
||
|
||
//需更新的集合
|
||
_InsertList.Add(_SALESINTERVALANALYSIS);
|
||
}
|
||
|
||
if (_InsertList.Count + _UpdateList.Count == _DataSalesIntervalAnalysis.Count)
|
||
{
|
||
if (_InsertList.Count > 0)
|
||
{
|
||
OperationDataHelper<Model.EXCHANGE.SALESINTERVALANALYSIS>.InsertTableData(
|
||
_OracleHelper, _InsertList, "HIGHWAY_EXCHANGE.T_SALESINTERVALANALYSIS", true,
|
||
"SALESINTERVALANALYSIS_ID", "HIGHWAY_EXCHANGE.SEQ_SALESINTERVALANALYSIS.NEXTVAL");
|
||
}
|
||
strBack = "{\"error\": 1 ,\"msg\": \"添加成功!\",\"rows\":[]}";
|
||
}
|
||
else
|
||
{
|
||
strBack = "{\"error\": -1 ,\"msg\": \"添加失败:数据分割失败!\",\"rows\":[]}";
|
||
}
|
||
}
|
||
else
|
||
{
|
||
strBack = "{\"error\": -1 ,\"msg\": \"添加失败:JSON参数解析异常!\",\"rows\":[]}";
|
||
}
|
||
#endregion
|
||
break;
|
||
break;
|
||
default:
|
||
strBack = "{\"error\": -1 ,\"msg\": \"数据上传表类型不正确\",\"rows\":[]}";
|
||
break;
|
||
}
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
strBack = "{\"error\": -1 ,\"msg\": \"添加失败:" + ex.Message + "\",\"rows\":[]}";
|
||
}
|
||
return strBack;
|
||
}
|
||
|
||
#endregion
|
||
|
||
#region 方法 -> 检查必要参数
|
||
/// <summary>
|
||
/// 检查必要参数
|
||
/// </summary>
|
||
/// <param name="jsonString"></param>
|
||
/// <param name="_RequiredDatas"></param>
|
||
/// <returns></returns>
|
||
private static string ISCheckData(string jsonString, string[] _RequiredDatas, int maxDataQuantity = 4)
|
||
{
|
||
if (!string.IsNullOrEmpty(jsonString))
|
||
{
|
||
JArray _JsonArray = JArray.Parse(jsonString);
|
||
if (_JsonArray.Count > maxDataQuantity * 100)
|
||
{
|
||
return "{\"error\": -1 ,\"msg\": \"添加失败:json数据包不可超过400条数据\",\"rows\":[]}";
|
||
}
|
||
|
||
for (int i = 0; i < _JsonArray.Count; i++)
|
||
{
|
||
JObject _Json = JObject.Parse(_JsonArray[i].ToString());
|
||
foreach (string _RequiredData in _RequiredDatas)
|
||
{
|
||
if ((_Json.Property(_RequiredData.ToUpper()) == null && _Json.Property(_RequiredData.ToLower()) == null) ||
|
||
(_Json.Property(_RequiredData.ToUpper()) != null && _Json.Property(_RequiredData.ToUpper()).Value.ToString() == "") ||
|
||
(_Json.Property(_RequiredData.ToLower()) != null && _Json.Property(_RequiredData.ToLower()).Value.ToString() == ""))
|
||
{
|
||
return "{\"error\": -1 ,\"msg\": \"添加失败:第" + (i + 1) +
|
||
"组数据中,JSON缺少必要参数:" + _RequiredData + "\",\"rows\":[]}";
|
||
}
|
||
}
|
||
}
|
||
return null;
|
||
}
|
||
else
|
||
{
|
||
return "{\"error\": -1 ,\"msg\": \"添加失败:JSON参数解析异常!\",\"rows\":[]}";
|
||
}
|
||
}
|
||
#endregion
|
||
|
||
}
|
||
} |