3686 lines
168 KiB
C#
3686 lines
168 KiB
C#
using KJD_Web.Model;
|
||
using KJD_Web.Model.WxModel;
|
||
using KJD_Web.Utils;
|
||
using MySql.Data.MySqlClient;
|
||
using MySqlX.XDevAPI;
|
||
using NaiBa.Util.Extension;
|
||
using Newtonsoft.Json;
|
||
using Newtonsoft.Json.Serialization;
|
||
using System;
|
||
using System.Collections.Generic;
|
||
using System.Data;
|
||
using System.Data.SqlClient;
|
||
using System.Drawing.Printing;
|
||
using System.Linq;
|
||
using System.Net.NetworkInformation;
|
||
using System.Text;
|
||
using System.Text.RegularExpressions;
|
||
using System.Web;
|
||
using System.Web.UI.WebControls;
|
||
|
||
namespace KJD_Web.BLL.WXXD
|
||
{
|
||
public class WXOrderManage
|
||
{
|
||
public string WXGetErpOrderList(string inputData, bool isDetail = false)
|
||
{
|
||
if (!string.IsNullOrEmpty(inputData))
|
||
{
|
||
if (!WXUserManage.GetSign(inputData))
|
||
return "{\"code\":999,\"msg\":\"校验失败\"}";
|
||
var timeCalc = DateTime.Now;
|
||
|
||
var erp_shop_id_in = RegexUtils.GetStringQuery(ref inputData, "erp_shop_id_in")?.Replace("'", "\\'");
|
||
var erp_order_id_in = RegexUtils.GetStringQuery(ref inputData, "erp_order_id_in")?.Replace("'", "\\'");
|
||
if (erp_shop_id_in.IsNullOrEmpty() && erp_order_id_in.IsNullOrEmpty())
|
||
{
|
||
return "{\"code\":500,\"msg\":\"未指定店铺和订单\"}";
|
||
}
|
||
var query_status = RegexUtils.GetStringQuery(ref inputData, "query_status")?.Replace("'", "\\'");
|
||
var purchase_status = RegexUtils.GetStringQuery(ref inputData, "purchase_status")?.Replace("'", "\\'");
|
||
var sort_type = RegexUtils.GetStringQuery(ref inputData, "sort_type")?.Replace("'", "\\'");
|
||
var start_time = RegexUtils.GetStringQuery(ref inputData, "start_time").ParseToInt();
|
||
var end_time = RegexUtils.GetStringQuery(ref inputData, "end_time").ParseToInt();
|
||
var is_not_count = RegexUtils.GetStringQuery(ref inputData, "is_not_count") == "true";
|
||
|
||
int page = RegexUtils.GetStringQuery(ref inputData, "page").ParseToInt();
|
||
int page_size = RegexUtils.GetStringQuery(ref inputData, "page_size").ParseToInt(50);
|
||
|
||
string conn = System.Configuration.ConfigurationManager.ConnectionStrings["ConnKJD"].ConnectionString;
|
||
MysqlUtils mySql = new MysqlUtils(conn);
|
||
|
||
string sql = "SELECT COUNT(*) FROM erp.oms_wei_order o WHERE 1=1 ";
|
||
|
||
string where = "";
|
||
if (!string.IsNullOrWhiteSpace(erp_shop_id_in))
|
||
where += " and o.shop_id in (" + erp_shop_id_in + ")";
|
||
if (!string.IsNullOrWhiteSpace(erp_order_id_in))
|
||
where += " and o.order_id in ('" + erp_order_id_in.Replace(",", "','") + "')";
|
||
if (!string.IsNullOrWhiteSpace(query_status))
|
||
where += " and o.status = " + query_status;
|
||
if (!string.IsNullOrWhiteSpace(purchase_status))
|
||
where += " and o.purchase_status = " + purchase_status;
|
||
if (start_time > 0)
|
||
where += " and o.update_time >= " + start_time;
|
||
if (end_time > 0)
|
||
where += " and o.update_time <= " + end_time;
|
||
sql += where;
|
||
|
||
var count = 0;
|
||
if (!is_not_count)
|
||
count = mySql.ExecuteRowCount(sql);
|
||
|
||
DataTable dt;
|
||
if (count == 0 && !is_not_count)
|
||
{
|
||
dt = new DataTable();
|
||
}
|
||
else
|
||
{
|
||
//tinyint(1)中存超过两个值,只返回true或false,无法直接取值解决办法
|
||
//解决方法:
|
||
//1.强制修改mapResult中的映射,将po属性的类型由Boolean改为Byte
|
||
//2.查询 tinyint(1) 的sql 字段时,转为(status + 0) as status
|
||
//3.避免使用 tinyint(1) 作为字段的数据类型
|
||
|
||
sql = "SELECT o.*,(out_shipped+0) as out_shipped_int FROM erp.oms_wei_order o WHERE 1=1";
|
||
|
||
//where子句
|
||
sql += where;
|
||
|
||
if (sort_type == "asc")
|
||
//sql += " ORDER BY o.create_time ASC, o.id desc";
|
||
sql += " ORDER BY o.create_time ASC, o.id ASC";
|
||
else
|
||
sql += " ORDER BY o.create_time DESC, o.id DESC";
|
||
sql += " LIMIT " + Math.Max(page - 1, 0) * page_size + "," + page_size;
|
||
dt = mySql.ExecuteDataTable(sql);
|
||
}
|
||
|
||
mySql.Close();
|
||
if (dt != null)
|
||
{
|
||
try
|
||
{
|
||
List<oms_wei_order> orderList = new List<oms_wei_order>();
|
||
foreach (DataRow row in dt.Rows)
|
||
{
|
||
oms_wei_order order = new oms_wei_order
|
||
{
|
||
id = row["id"].ParseToLong(),
|
||
aftersale_detail = row["aftersale_detail"].ParseToNullableString(),
|
||
audit_status = row["audit_status"].ParseToNullableInt(),
|
||
//audit_time = row["audit_time"].ParseToNullableString().ParseToDateTime(),
|
||
city_name = row["city_name"].ParseToNullableString(),
|
||
colour_flag = row["colour_flag"].ParseToNullableInt(),
|
||
colour_flag_update_time = row["colour_flag_update_time"].ParseToNullableString().ParseToDateTime(),
|
||
commission_amount = row["commission_amount"].ParseToNullableInt(),
|
||
county_name = row["county_name"].ParseToNullableString(),
|
||
create_time = row["create_time"].ParseToInt(),
|
||
delivery_deadline = row["delivery_deadline"].ParseToNullableInt(),
|
||
//delivery_product_info = row["delivery_product_info"].ParseToNullableString(),
|
||
delivery_time = row["delivery_time"].ParseToNullableInt(),
|
||
detail_info = row["detail_info"].ParseToNullableString(),
|
||
discounted_price = row["discounted_price"].ParseToNullableInt(),
|
||
erp_send_code = row["erp_send_code"].ParseToNullableString(),
|
||
erp_send_company = row["erp_send_company"].ParseToNullableString(),
|
||
erp_send_status = row["erp_send_status"].ParseToNullableInt(),
|
||
erp_send_time = row["erp_send_time"].ParseToNullableString().ParseToDateTime(),
|
||
//ewaybill_order_code = row["ewaybill_order_code"].ParseToNullableString(),
|
||
external_gift = row["external_gift"].ParseToNullableInt(),
|
||
//ext_info = row["ext_info"].ParseToNullableString(),
|
||
freight = row["freight"].ParseToNullableInt(),
|
||
freight_insurance_amount = row["freight_insurance_amount"].ParseToNullableInt(),
|
||
gift_order_status = row["gift_order_status"].ParseToNullableInt(),
|
||
hash_code = row["hash_code"].ParseToNullableString(),
|
||
has_freight_insurance = row["has_freight_insurance"].ParseToNullableInt(),
|
||
house_number = row["house_number"].ParseToNullableString(),
|
||
is_express_no_used = row["is_express_no_used"].ParseToNullableInt(),
|
||
is_shipment_optimized = row["is_shipment_optimized"].ParseToNullableInt(),
|
||
merchant_id = row["merchant_id"].ParseToLong(),
|
||
openid = row["openid"].ParseToNullableString(),
|
||
order_id = row["order_id"].ParseToNullableString(),
|
||
order_price = row["order_price"].ParseToNullableInt(),
|
||
out_account = row["out_account"].ParseToNullableString(),
|
||
out_after_sale_status = row["out_after_sale_status"].ParseToNullableString(),
|
||
out_amount = row["out_amount"].ParseToNullableInt(),
|
||
out_express_company = row["out_express_company"].ParseToNullableString(),
|
||
out_express_no = row["out_express_no"].ParseToNullableString(),
|
||
out_order_no = row["out_order_no"].ParseToNullableString(),
|
||
out_shipped = row["out_shipped_int"].ParseToNullableInt(),
|
||
//pay_info = row["pay_info"].ParseToNullableString(),
|
||
postal_code = row["postal_code"].ParseToNullableString(),
|
||
predict_commission_fee = row["predict_commission_fee"].ParseToNullableInt(),
|
||
product_price = row["product_price"].ParseToNullableInt(),
|
||
profit = row["profit"].ParseToNullableInt(),
|
||
province_name = row["province_name"].ParseToNullableString(),
|
||
purchase_price = row["purchase_price"].ParseToNullableInt(),
|
||
purchase_status = row["purchase_status"].ParseToNullableInt(),
|
||
purchase_time = row["purchase_time"].ParseToNullableInt(),
|
||
settle_info = row["settle_info"].ParseToNullableString(),
|
||
ship_done_time = row["ship_done_time"].ParseToNullableInt(),
|
||
shop_id = row["shop_id"].ParseToLong(),
|
||
shop_name = row["shop_name"].ParseToNullableString(),
|
||
shop_remark = row["shop_remark"].ParseToNullableString(),
|
||
soft_remark = row["soft_remark"].ParseToNullableString(),
|
||
status = row["status"].ParseToNullableInt(),
|
||
supplier_remark_exception = row["supplier_remark_exception"].ParseToNullableString(),
|
||
tel_number = row["tel_number"].ParseToNullableString(),
|
||
tel_number_ext_info = row["tel_number_ext_info"].ParseToNullableString(),
|
||
transfer_warehouse_status = row["transfer_warehouse_status"].ParseToNullableInt(),
|
||
postage_price = row["postage_price"].ParseToNullableInt(),
|
||
unionid = row["unionid"].ParseToNullableString(),
|
||
update_time = row["update_time"].ParseToInt(),
|
||
user_name = row["user_name"].ParseToNullableString(),
|
||
use_tel_number = row["use_tel_number"].ParseToNullableInt(),
|
||
virtual_order_tel_number = row["virtual_order_tel_number"].ParseToNullableString(),
|
||
};
|
||
if (order.order_id == "3737914129536416512")
|
||
{
|
||
|
||
}
|
||
orderList.Add(order);
|
||
}
|
||
JsonSerializerSettings jsonSetting = new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore };
|
||
var data = JsonUtils.SerializeObjectToString(orderList, jsonSetting);
|
||
var seconds = (DateTime.Now - timeCalc).TotalSeconds.ToString("0.000");
|
||
return "{\"code\":200,\"msg\":\"success\",\"data\":" + data + ",\"count\":" + count + ",\"seconds\":" + seconds + "}";
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
return "{\"code\":500,\"msg\":\"" + ex.Message + "\",\"data\":[],\"count\":" + 0 + "}";
|
||
}
|
||
}
|
||
else
|
||
{
|
||
return "{\"code\":500,\"msg\":\"" + mySql.Message + "\",\"data\":[],\"count\":" + 0 + "}";
|
||
}
|
||
}
|
||
return "{\"code\":19999,\"msg\":\"输入为空\"}";
|
||
}
|
||
|
||
|
||
public string WXGetErpOrderItemList(string inputData, bool isDetail = false)
|
||
{
|
||
if (!string.IsNullOrEmpty(inputData))
|
||
{
|
||
var timeCalc = DateTime.Now;
|
||
|
||
var time = RegexUtils.GetStringQuery(ref inputData, "time").ParseToInt();
|
||
string time1 = RegexUtils.GetStringQuery(ref inputData, "code");
|
||
if (time1 != EncrypUtil.Encryption(time))
|
||
return "{\"code\":50000,\"msg\":\"校验失败\"}";
|
||
|
||
var erp_order_id_in = RegexUtils.GetStringQuery(ref inputData, "erp_order_id_in")?.Replace("'", "\\'");
|
||
if (erp_order_id_in.IsNullOrEmpty())
|
||
{
|
||
return "{\"code\":500,\"msg\":\"未指定订单\"}";
|
||
}
|
||
var sort_type = RegexUtils.GetStringQuery(ref inputData, "sort_type")?.Replace("'", "\\'");
|
||
var is_not_count = RegexUtils.GetStringQuery(ref inputData, "is_not_count") != "false";
|
||
|
||
int page = RegexUtils.GetStringQuery(ref inputData, "page").ParseToInt();
|
||
int page_size = RegexUtils.GetStringQuery(ref inputData, "page_size").ParseToInt(500);
|
||
|
||
string conn = System.Configuration.ConfigurationManager.ConnectionStrings["ConnKJD"].ConnectionString;
|
||
MysqlUtils mySql = new MysqlUtils(conn);
|
||
|
||
string sql = "SELECT COUNT(id) FROM erp.oms_wei_order_item o WHERE 1=1 ";
|
||
|
||
string where = "";
|
||
if (!string.IsNullOrWhiteSpace(erp_order_id_in))
|
||
where += " and o.order_id in ('" + erp_order_id_in.Replace(",", "','") + "')";
|
||
sql += where;
|
||
|
||
var count = 0;
|
||
if (!is_not_count)
|
||
count = mySql.ExecuteRowCount(sql);
|
||
|
||
DataTable dt;
|
||
if (count == 0 && !is_not_count)
|
||
{
|
||
dt = new DataTable();
|
||
}
|
||
else
|
||
{
|
||
sql = "SELECT o.* FROM erp.oms_wei_order_item o WHERE 1=1";
|
||
|
||
//where子句
|
||
sql += where;
|
||
|
||
if (sort_type == "asc")
|
||
sql += " ORDER BY o.id ASC";
|
||
else
|
||
sql += " ORDER BY o.id DESC";
|
||
sql += " LIMIT " + Math.Max(page - 1, 0) * page_size + "," + page_size;
|
||
dt = mySql.ExecuteDataTable(sql);
|
||
}
|
||
|
||
mySql.Close();
|
||
if (dt != null)
|
||
{
|
||
try
|
||
{
|
||
List<oms_wei_order_item> orderItemList = new List<oms_wei_order_item>();
|
||
foreach (DataRow row in dt.Rows)
|
||
{
|
||
oms_wei_order_item order = new oms_wei_order_item
|
||
{
|
||
id = row["id"].ParseToLong(),
|
||
commission_amount = row["commission_amount"].ParseToNullableInt(),
|
||
freight = row["freight"].ParseToNullableInt(),
|
||
merchant_id = row["merchant_id"].ParseToLong(),
|
||
order_id = row["order_id"].ParseToNullableString(),
|
||
predict_commission_fee = row["predict_commission_fee"].ParseToNullableInt(),
|
||
purchase_price = row["purchase_price"].ParseToNullableInt(),
|
||
shop_id = row["shop_id"].ParseToLong(),
|
||
cash_coupon_discounted_price = row["cash_coupon_discounted_price"].ParseToNullableInt(),
|
||
change_price = row["change_price"].ParseToNullableInt(),
|
||
deduction_price = row["deduction_price"].ParseToNullableInt(),
|
||
erp_goods_id = row["erp_goods_id"].ParseToNullableLong(),
|
||
erp_goods_sku_id = row["erp_goods_sku_id"].ParseToNullableLong(),
|
||
estimate_price = row["estimate_price"].ParseToNullableInt(),
|
||
extra_service = row["extra_service"].ParseToNullableString(),
|
||
finish_aftersale_sku_cnt = row["finish_aftersale_sku_cnt"].ParseToNullableInt(),
|
||
is_change_price = row["is_change_price"].ParseToNullableString(),
|
||
is_discounted = row["is_discounted"].ParseToNullableString(),
|
||
market_price = row["market_price"].ParseToNullableInt(),
|
||
on_aftersale_sku_cnt = row["on_aftersale_sku_cnt"].ParseToNullableInt(),
|
||
order_product_coupon_info_list = row["order_product_coupon_info_list"].ParseToNullableString(),
|
||
out_product_id = row["out_product_id"].ParseToNullableString(),
|
||
out_sku_id = row["out_sku_id"].ParseToNullableString(),
|
||
out_warehouse_id = row["out_warehouse_id"].ParseToNullableString(),
|
||
product_id = row["product_id"].ParseToNullableString(),
|
||
real_price = row["real_price"].ParseToNullableInt(),
|
||
refund_status = row["refund_status"].ParseToNullableInt(),
|
||
return_address = row["return_address"].ParseToNullableString(),
|
||
sale_price = row["sale_price"].ParseToNullableInt(),
|
||
sku_attrs = row["sku_attrs"].ParseToNullableString(),
|
||
sku_cnt = row["sku_cnt"].ParseToNullableInt(),
|
||
sku_code = row["sku_code"].ParseToNullableString(),
|
||
sku_deliver_info = row["sku_deliver_info"].ParseToNullableString(),
|
||
sku_id = row["sku_id"].ParseToNullableString(),
|
||
thumb_img = row["thumb_img"].ParseToNullableString(),
|
||
title = row["title"].ParseToNullableString(),
|
||
use_deduction = row["use_deduction"].ParseToNullableString(),
|
||
};
|
||
orderItemList.Add(order);
|
||
}
|
||
JsonSerializerSettings jsonSetting = new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore };
|
||
var data = JsonUtils.SerializeObjectToString(orderItemList, jsonSetting);
|
||
var seconds = (DateTime.Now - timeCalc).TotalSeconds.ToString("0.000");
|
||
return "{\"code\":200,\"msg\":\"success\",\"data\":" + data + ",\"count\":" + count + ",\"seconds\":" + seconds + "}";
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
return "{\"code\":500,\"msg\":\"" + ex.Message + "\",\"data\":[],\"count\":" + 0 + "}";
|
||
}
|
||
}
|
||
else
|
||
{
|
||
return "{\"code\":500,\"msg\":\"" + mySql.Message + "\",\"data\":[],\"count\":" + 0 + "}";
|
||
}
|
||
}
|
||
return "{\"code\":19999,\"msg\":\"输入为空\"}";
|
||
}
|
||
|
||
|
||
public string WXGetErpRefundList(string inputData, bool isDetail = false)
|
||
{
|
||
if (!string.IsNullOrEmpty(inputData))
|
||
{
|
||
var timeCalc = DateTime.Now;
|
||
|
||
var time = RegexUtils.GetStringQuery(ref inputData, "time").ParseToInt();
|
||
string time1 = RegexUtils.GetStringQuery(ref inputData, "code");
|
||
if (time1 != EncrypUtil.Encryption(time))
|
||
return "{\"code\":50000,\"msg\":\"校验失败\"}";
|
||
|
||
var erp_order_id_in = RegexUtils.GetStringQuery(ref inputData, "erp_order_id_in")?.Replace("'", "\\'");
|
||
if (erp_order_id_in.IsNullOrEmpty())
|
||
{
|
||
return "{\"code\":500,\"msg\":\"未指定订单\"}";
|
||
}
|
||
var sort_type = RegexUtils.GetStringQuery(ref inputData, "sort_type")?.Replace("'", "\\'");
|
||
var is_not_count = RegexUtils.GetStringQuery(ref inputData, "is_not_count") != "false";
|
||
|
||
int page = RegexUtils.GetStringQuery(ref inputData, "page").ParseToInt();
|
||
int page_size = RegexUtils.GetStringQuery(ref inputData, "page_size").ParseToInt(500);
|
||
|
||
string conn = System.Configuration.ConfigurationManager.ConnectionStrings["ConnKJD"].ConnectionString;
|
||
MysqlUtils mySql = new MysqlUtils(conn);
|
||
|
||
string sql = "SELECT COUNT(id) FROM erp.oms_wei_refund o WHERE 1=1 ";
|
||
|
||
string where = "";
|
||
if (!string.IsNullOrWhiteSpace(erp_order_id_in))
|
||
where += " and o.order_id in ('" + erp_order_id_in.Replace(",", "','") + "')";
|
||
sql += where;
|
||
|
||
var count = 0;
|
||
if (!is_not_count)
|
||
count = mySql.ExecuteRowCount(sql);
|
||
|
||
DataTable dt;
|
||
if (count == 0 && !is_not_count)
|
||
{
|
||
dt = new DataTable();
|
||
}
|
||
else
|
||
{
|
||
sql = "SELECT o.* FROM" +
|
||
" erp.oms_wei_refund o " +
|
||
" WHERE 1=1";
|
||
|
||
//where子句
|
||
sql += where;
|
||
|
||
if (sort_type == "asc")
|
||
sql += " ORDER BY o.id ASC";
|
||
else
|
||
sql += " ORDER BY o.id DESC";
|
||
sql += " LIMIT " + Math.Max(page - 1, 0) * page_size + "," + page_size;
|
||
dt = mySql.ExecuteDataTable(sql);
|
||
}
|
||
|
||
mySql.Close();
|
||
if (dt != null)
|
||
{
|
||
try
|
||
{
|
||
List<oms_wei_refund> refundItemList = new List<oms_wei_refund>();
|
||
foreach (DataRow row in dt.Rows)
|
||
{
|
||
oms_wei_refund order = new oms_wei_refund
|
||
{
|
||
id = row["id"].ParseToLong(),
|
||
merchant_id = row["merchant_id"].ParseToLong(),
|
||
order_id = row["order_id"].ParseToNullableString(),
|
||
shop_id = row["shop_id"].ParseToLong(),
|
||
erp_goods_id = row["erp_goods_id"].ParseToNullableLong(),
|
||
erp_goods_sku_id = row["erp_goods_sku_id"].ParseToNullableLong(),
|
||
product_id = row["product_id"].ParseToNullableString(),
|
||
sku_id = row["sku_id"].ParseToNullableString(),
|
||
after_sale_order_id = row["after_sale_order_id"].ParseToNullableString(),
|
||
complaint_id = row["complaint_id"].ParseToNullableString(),
|
||
count = row["count"].ParseToNullableInt(),
|
||
create_time = row["create_time"].ParseToNullableInt(),
|
||
details = row["details"].ParseToNullableString(),
|
||
fast_refund = row["fast_refund"].ParseToNullableString(),
|
||
merchant_upload_info = row["merchant_upload_info"].ParseToNullableString(),
|
||
openid = row["openid"].ParseToNullableString(),
|
||
pull_status = row["pull_status"].ParseToNullableInt(),
|
||
pull_time = row["pull_time"].ParseToNullableString().ParseToDateTime(),
|
||
reason = row["reason"].ParseToNullableString(),
|
||
reason_text = row["reason_text"].ParseToNullableString(),
|
||
refund_amount = row["refund_amount"].ParseToNullableInt(),
|
||
refund_reason = row["refund_reason"].ParseToNullableInt(),
|
||
refund_resp = row["refund_resp"].ParseToNullableString(),
|
||
return_delivery_id = row["return_delivery_id"].ParseToNullableString(),
|
||
return_delivery_name = row["return_delivery_name"].ParseToNullableString(),
|
||
return_waybill_id = row["return_waybill_id"].ParseToNullableString(),
|
||
status = row["status"].ParseToNullableString(),
|
||
type = row["type"].ParseToNullableString(),
|
||
unionid = row["unionid"].ParseToNullableString(),
|
||
update_time = row["update_time"].ParseToNullableInt(),
|
||
warehouse_status = row["warehouse_status"].ParseToNullableInt(),
|
||
return_city = row["return_city"].ParseToNullableString(),
|
||
return_county = row["return_county"].ParseToNullableString(),
|
||
return_detail = row["return_detail"].ParseToNullableString(),
|
||
return_province = row["return_province"].ParseToNullableString(),
|
||
return_tel = row["return_tel"].ParseToNullableString(),
|
||
return_user_name = row["return_user_name"].ParseToNullableString(),
|
||
};
|
||
refundItemList.Add(order);
|
||
}
|
||
JsonSerializerSettings jsonSetting = new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore };
|
||
var data = JsonUtils.SerializeObjectToString(refundItemList, jsonSetting);
|
||
var seconds = (DateTime.Now - timeCalc).TotalSeconds.ToString("0.000");
|
||
return "{\"code\":200,\"msg\":\"success\",\"data\":" + data + ",\"count\":" + count + ",\"seconds\":" + seconds + "}";
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
return "{\"code\":500,\"msg\":\"" + ex.Message + "\",\"data\":[],\"count\":" + 0 + "}";
|
||
}
|
||
}
|
||
else
|
||
{
|
||
return "{\"code\":500,\"msg\":\"" + mySql.Message + "\",\"data\":[],\"count\":" + 0 + "}";
|
||
}
|
||
}
|
||
return "{\"code\":19999,\"msg\":\"输入为空\"}";
|
||
}
|
||
|
||
|
||
public string WXAddMdyBuyProdMapSkus(string inputData)
|
||
{
|
||
if (!string.IsNullOrEmpty(inputData))
|
||
{
|
||
if (!WXUserManage.GetSign(inputData))
|
||
return "{\"code\":999,\"msg\":\"校验失败\"}";
|
||
|
||
// 软件用户名
|
||
string spu_code = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "spu_code"))?.Replace("'", "\\'");
|
||
string user_name = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "main_user_name"))?.Replace("'", "\\'");
|
||
string map_url = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "map_url"))?.Replace("'", "\\'");
|
||
string map_goods_name = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "map_goods_name"))?.Replace("'", "\\'");
|
||
string map_goods_id = RegexUtils.GetStringQuery(ref inputData, "map_goods_id")?.Replace("'", "\\'");
|
||
string map_skus = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "map_skus"))?.Replace("'", "\\'");
|
||
string map_send_address = RegexUtils.GetStringQuery(ref inputData, "map_send_address")?.Replace("'", "\\'");
|
||
string transit_warehouse_id = RegexUtils.GetStringQuery(ref inputData, "transit_warehouse_id")?.Replace("'", "\\'");
|
||
string platform = RegexUtils.GetStringQuery(ref inputData, "platform")?.Replace("'", "\\'");
|
||
if (platform != "tb")
|
||
platform = "pdd";
|
||
|
||
if (string.IsNullOrEmpty(spu_code))
|
||
return "{\"code\":500,\"msg\":\"缺少系统商品编号\"}";
|
||
if (string.IsNullOrEmpty(user_name))
|
||
return "{\"code\":500,\"msg\":\"缺少用户名\"}";
|
||
if (string.IsNullOrEmpty(map_url) && string.IsNullOrEmpty(map_goods_id))
|
||
return "{\"code\":500,\"msg\":\"缺少采购商品信息\"}";
|
||
|
||
string conn = System.Configuration.ConfigurationManager.ConnectionStrings["ConnKJD"].ConnectionString;
|
||
MysqlUtils mySql = new MysqlUtils(conn);
|
||
|
||
string sql = "SELECT 1 FROM `bxx`.`product_buy_map_skus` where user_name='" + user_name + "' AND spu_code='" + spu_code + "' AND map_goods_id='" +
|
||
map_goods_id + "' AND platform='" + platform + "'";
|
||
string where = "";
|
||
sql += where;
|
||
var exist = mySql.ExecuteFirstInt(sql);
|
||
if (!mySql.Message.IsNullOrEmpty())
|
||
{
|
||
mySql.Close();
|
||
return "{\"code\":501,\"msg\":\"" + mySql.Message + "\"}";
|
||
}
|
||
|
||
if (exist == 0)
|
||
{
|
||
sql = " INSERT INTO `bxx`.`product_buy_map_skus` (user_name,spu_code,map_url,map_goods_name,map_goods_id,map_skus,map_send_address,transit_warehouse_id,platform)" +
|
||
" VALUES (@user_name,@spu_code,@map_url,@map_goods_name,@map_goods_id,@map_skus,@map_send_address,@transit_warehouse_id,@platform);";
|
||
}
|
||
else
|
||
{
|
||
sql = "UPDATE `bxx`.`product_buy_map_skus` SET ";
|
||
if (map_url != null)
|
||
sql += " map_url=@map_url,";
|
||
if (map_goods_name != null)
|
||
sql += " map_goods_name=@map_goods_name,";
|
||
if (map_skus != null)
|
||
sql += " map_skus=@map_skus,";
|
||
if (map_send_address != null)
|
||
sql += " map_send_address=@map_send_address,";
|
||
if (transit_warehouse_id != null)
|
||
sql += " transit_warehouse_id=@transit_warehouse_id,";
|
||
sql = sql.TrimEnd(',');
|
||
sql += " WHERE user_name=@user_name and spu_code=@spu_code and map_goods_id=@map_goods_id and platform=@platform;";
|
||
}
|
||
|
||
List<MySqlParameter> paramLst = new List<MySqlParameter>();
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "user_name", Value = user_name, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "spu_code", Value = spu_code, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "map_url", Value = map_url, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "map_goods_name", Value = map_goods_name, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "map_goods_id", Value = map_goods_id, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "map_skus", Value = map_skus, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "map_send_address", Value = map_send_address, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "transit_warehouse_id", Value = transit_warehouse_id, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "platform", Value = platform, });
|
||
var rows = mySql.ExecuteAffectedRows(sql, paramLst.ToArray());
|
||
mySql.Close();
|
||
if (string.IsNullOrEmpty(mySql.Message))
|
||
{
|
||
if (rows > 0)
|
||
return "{\"code\":200,\"msg\":\"success\"}";
|
||
else
|
||
return "{\"code\":200,\"msg\":\"数据操作失败,请重试\"}";
|
||
}
|
||
else
|
||
{
|
||
return "{\"code\":50003,\"msg\":\"" + mySql.Message + "\"}";
|
||
}
|
||
}
|
||
return "{\"code\":19999,\"msg\":\"输入为空\"}";
|
||
}
|
||
|
||
/// <summary>
|
||
/// 微信获取采购映射商品
|
||
/// </summary>
|
||
/// <param name="inputData"></param>
|
||
/// <returns></returns>
|
||
public string WXGetBuyPordMapSkus(string inputData)
|
||
{
|
||
if (!string.IsNullOrEmpty(inputData))
|
||
{
|
||
if (!WXUserManage.GetSign(inputData))
|
||
return "{\"code\":999,\"msg\":\"校验失败\"}";
|
||
var timeCalc = DateTime.Now;
|
||
|
||
int page = RegexUtils.GetStringQuery(ref inputData, "page").ParseToInt();
|
||
int page_size = RegexUtils.GetStringQuery(ref inputData, "page_size").ParseToInt(200);
|
||
string spu_codes = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "spu_codes"))?.Replace("'", "\\'");
|
||
string user_name = RegexUtils.GetStringQuery(ref inputData, "main_user_name")?.Replace("'", "\\'");
|
||
string not_count = RegexUtils.GetStringQuery(ref inputData, "not_count")?.Replace("'", "\\'");
|
||
if (string.IsNullOrEmpty(spu_codes))
|
||
return "{\"code\":500,\"msg\":\"商品编码不能为空\"}";
|
||
if (string.IsNullOrEmpty(user_name))
|
||
return "{\"code\":500,\"msg\":\"用户名不能为空\"}";
|
||
|
||
string conn = System.Configuration.ConfigurationManager.ConnectionStrings["ConnKJD"].ConnectionString;
|
||
MysqlUtils mySql = new MysqlUtils(conn);
|
||
|
||
string sql = "";
|
||
var count = -1;
|
||
|
||
sql = "SELECT COUNT(*) FROM `bxx`.`product_buy_map_skus` WHERE 1=1";
|
||
string where = "";
|
||
if (spu_codes != null)
|
||
where += " and spu_code IN ('" + spu_codes.Replace(",", "','") + "')";
|
||
if (user_name != null)
|
||
where += " and user_name='" + user_name + "'";
|
||
sql += where;
|
||
sql += ";";
|
||
|
||
if (not_count == "false")
|
||
count = mySql.ExecuteRowCount(sql);
|
||
|
||
DataTable dt;
|
||
if (count == 0)
|
||
{
|
||
dt = new DataTable();
|
||
}
|
||
else
|
||
{
|
||
//sql = "SELECT * FROM `bxx`.`product_buy_map_skus` WHERE 1=1";
|
||
//sql += where;
|
||
//sql += " order by id desc limit " + Math.Max(0, page - 1) * page_size + "," + page_size + ";";
|
||
//dt = mySql.ExecuteDataTable(sql);
|
||
|
||
sql = @"
|
||
SELECT *
|
||
FROM(
|
||
SELECT t.*,ROW_NUMBER() OVER (PARTITION BY spu_code ORDER BY mdy_time DESC) AS rn
|
||
FROM `bxx`.`product_buy_map_skus` t
|
||
) AS ranked
|
||
WHERE rn <= 3" + where;
|
||
sql = @"
|
||
SELECT t.* FROM `bxx`.`product_buy_map_skus` t
|
||
WHERE 1=1 " + where;
|
||
sql += " ORDER BY mdy_time DESC";
|
||
dt = mySql.ExecuteDataTable(sql);
|
||
}
|
||
mySql.Close();
|
||
|
||
if (dt != null)
|
||
{
|
||
try
|
||
{
|
||
List<WXBuyMapSkusInfo> WXBuyMapInfoLst = new List<WXBuyMapSkusInfo>();
|
||
foreach (DataRow row in dt.Rows)
|
||
{
|
||
if (WXBuyMapInfoLst.Where(b => b.spu_code == row["spu_code"].ParseToNullableString()).ToList().Count < 5)
|
||
WXBuyMapInfoLst.Add(new WXBuyMapSkusInfo()
|
||
{
|
||
id = row["id"].ParseToInt(),
|
||
user_name = row["user_name"].ParseToNullableString(),
|
||
spu_code = row["spu_code"].ParseToNullableString(),
|
||
map_url = row["map_url"].ParseToNullableString(),
|
||
map_goods_name = row["map_goods_name"].ParseToNullableString(),
|
||
map_goods_id = row["map_goods_id"].ParseToNullableString(),
|
||
map_skus = row["map_skus"].ParseToNullableString(),
|
||
map_send_address = row["map_send_address"].ParseToNullableString(),
|
||
transit_warehouse_id = row["transit_warehouse_id"].ParseToNullableString(),
|
||
add_time = Convert.ToDateTime(row["add_time"]),
|
||
mdy_time = Convert.ToDateTime(row["mdy_time"]),
|
||
platform = row["platform"].ParseToNullableString(),
|
||
});
|
||
}
|
||
JsonSerializerSettings jsonSetting = new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore };
|
||
var data = JsonUtils.SerializeObjectToString(WXBuyMapInfoLst, jsonSetting);
|
||
var seconds = (DateTime.Now - timeCalc).TotalSeconds.ToString("0.000");
|
||
return "{\"code\":200,\"msg\":\"success\",\"data\":" + data + ",\"count\":" + count + ",\"seconds\":" + seconds + "}";
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
return "{\"code\":500,\"msg\":\"" + ex.Message + "\",\"data\":[],\"count\":" + 0 + "}";
|
||
}
|
||
}
|
||
else
|
||
{
|
||
return "{\"code\":500,\"msg\":\"" + mySql.Message + "\",\"data\":[],\"count\":" + 0 + "}";
|
||
}
|
||
}
|
||
return "{\"code\":19999,\"msg\":\"输入为空\"}";
|
||
}
|
||
|
||
|
||
/// <summary>
|
||
/// 微信添加修改采购映射商品(含sku映射和)
|
||
/// </summary>
|
||
/// <param name="inputData"></param>
|
||
/// <returns></returns>
|
||
public string WXAddMdyBuyProdMap(string inputData)
|
||
{
|
||
if (!string.IsNullOrEmpty(inputData))
|
||
{
|
||
if (!WXUserManage.GetSign(inputData))
|
||
return "{\"code\":999,\"msg\":\"校验失败\"}";
|
||
|
||
// 软件用户名
|
||
string spu_code = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "spu_code"))?.Replace("'", "\\'");
|
||
string sku_code = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "sku_code"))?.Replace("'", "\\'");
|
||
string user_name = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "main_user_name"))?.Replace("'", "\\'");
|
||
string map_url = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "map_url"))?.Replace("'", "\\'");
|
||
string map_goods_name = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "map_goods_name"))?.Replace("'", "\\'");
|
||
string map_spec_name = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "map_spec_name"))?.Replace("'", "\\'");
|
||
string map_goods_id = RegexUtils.GetStringQuery(ref inputData, "map_goods_id")?.Replace("'", "\\'");
|
||
string map_sku_id = RegexUtils.GetStringQuery(ref inputData, "map_sku_id")?.Replace("'", "\\'");
|
||
string map_send_address = RegexUtils.GetStringQuery(ref inputData, "map_send_address")?.Replace("'", "\\'");
|
||
string transit_warehouse_id = RegexUtils.GetStringQuery(ref inputData, "transit_warehouse_id")?.Replace("'", "\\'");
|
||
string platform = RegexUtils.GetStringQuery(ref inputData, "platform")?.Replace("'", "\\'");
|
||
if (platform != "tb")
|
||
platform = "pdd";
|
||
|
||
if (string.IsNullOrEmpty(spu_code) || string.IsNullOrEmpty(sku_code))
|
||
return "{\"code\":500,\"msg\":\"缺少系统商品或SKU编号\"}";
|
||
if (string.IsNullOrEmpty(user_name))
|
||
return "{\"code\":500,\"msg\":\"缺少用户名\"}";
|
||
if (string.IsNullOrEmpty(map_url) && (string.IsNullOrEmpty(map_goods_id) || string.IsNullOrEmpty(map_sku_id)))
|
||
return "{\"code\":500,\"msg\":\"缺少采购商品信息\"}";
|
||
if (string.IsNullOrEmpty(transit_warehouse_id))
|
||
return "{\"code\":500,\"msg\":\"缺少中转仓信息\"}";
|
||
|
||
string conn = System.Configuration.ConfigurationManager.ConnectionStrings["ConnKJD"].ConnectionString;
|
||
MysqlUtils mySql = new MysqlUtils(conn);
|
||
|
||
string sql = "SELECT 1 FROM `bxx`.`product_buy_map` where user_name='" + user_name + "' AND spu_code='" + spu_code + "' AND sku_code='" +
|
||
sku_code + "' AND platform='" + platform + "'";
|
||
string where = "";
|
||
sql += where;
|
||
var exist = mySql.ExecuteFirstInt(sql);
|
||
if (!mySql.Message.IsNullOrEmpty())
|
||
{
|
||
mySql.Close();
|
||
return "{\"code\":501,\"msg\":\"" + mySql.Message + "\"}";
|
||
}
|
||
|
||
if (exist == 0)
|
||
{
|
||
sql = " INSERT INTO `bxx`.`product_buy_map` (user_name,spu_code,sku_code,map_url,map_goods_name,map_spec_name,map_goods_id,map_sku_id,map_send_address,transit_warehouse_id,platform)" +
|
||
" VALUES (@user_name,@spu_code,@sku_code,@map_url,@map_goods_name,@map_spec_name,@map_goods_id,@map_sku_id,@map_send_address,@transit_warehouse_id,@platform);";
|
||
}
|
||
else
|
||
{
|
||
sql = "UPDATE `bxx`.`product_buy_map` SET ";
|
||
if (map_url != null)
|
||
sql += " map_url=@map_url,";
|
||
if (map_goods_name != null)
|
||
sql += " map_goods_name=@map_goods_name,";
|
||
if (map_spec_name != null)
|
||
sql += " map_spec_name=@map_spec_name,";
|
||
if (map_goods_id != null)
|
||
sql += " map_goods_id=@map_goods_id,";
|
||
if (map_sku_id != null)
|
||
sql += " map_sku_id=@map_sku_id,";
|
||
if (map_send_address != null)
|
||
sql += " map_send_address=@map_send_address,";
|
||
if (transit_warehouse_id != null)
|
||
sql += " transit_warehouse_id=@transit_warehouse_id,";
|
||
if (platform != null)
|
||
sql += " platform=@platform,";
|
||
sql = sql.TrimEnd(',');
|
||
sql += " WHERE user_name=@user_name and spu_code=@spu_code and sku_code=@sku_code and platform=@platform;";
|
||
}
|
||
|
||
List<MySqlParameter> paramLst = new List<MySqlParameter>();
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "user_name", Value = user_name, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "spu_code", Value = spu_code, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "sku_code", Value = sku_code, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "map_url", Value = map_url, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "map_goods_name", Value = map_goods_name, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "map_spec_name", Value = map_spec_name, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "map_goods_id", Value = map_goods_id, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "map_sku_id", Value = map_sku_id, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "map_send_address", Value = map_send_address, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "transit_warehouse_id", Value = transit_warehouse_id, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "platform", Value = platform, });
|
||
mySql.ExecuteNonQuery(sql, paramLst.ToArray());
|
||
mySql.Close();
|
||
if (string.IsNullOrEmpty(mySql.Message))
|
||
{
|
||
return "{\"code\":200,\"msg\":\"success\",\"data\":\"\"}";
|
||
}
|
||
else
|
||
{
|
||
return "{\"code\":50003,\"msg\":\"" + mySql.Message + "\",\"data\":\"\"}";
|
||
}
|
||
}
|
||
return "{\"code\":19999,\"msg\":\"输入为空\"}";
|
||
}
|
||
|
||
/// <summary>
|
||
/// 微信获取采购映射商品
|
||
/// </summary>
|
||
/// <param name="inputData"></param>
|
||
/// <returns></returns>
|
||
public string WXGetBuyPordMap(string inputData)
|
||
{
|
||
if (!string.IsNullOrEmpty(inputData))
|
||
{
|
||
if (!WXUserManage.GetSign(inputData))
|
||
return "{\"code\":999,\"msg\":\"校验失败\"}";
|
||
var timeCalc = DateTime.Now;
|
||
|
||
int page = RegexUtils.GetStringQuery(ref inputData, "page").ParseToInt();
|
||
int page_size = RegexUtils.GetStringQuery(ref inputData, "page_size").ParseToInt(200);
|
||
string spu_codes = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "spu_codes"))?.Replace("'", "\\'");
|
||
string sku_codes = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "sku_codes"))?.Replace("'", "\\'");
|
||
string user_name = RegexUtils.GetStringQuery(ref inputData, "main_user_name")?.Replace("'", "\\'");
|
||
string not_count = RegexUtils.GetStringQuery(ref inputData, "not_count")?.Replace("'", "\\'");
|
||
if (string.IsNullOrEmpty(spu_codes))
|
||
return "{\"code\":500,\"msg\":\"商品编码不能为空\"}";
|
||
if (string.IsNullOrEmpty(user_name))
|
||
return "{\"code\":500,\"msg\":\"用户名不能为空\"}";
|
||
|
||
string conn = System.Configuration.ConfigurationManager.ConnectionStrings["ConnKJD"].ConnectionString;
|
||
MysqlUtils mySql = new MysqlUtils(conn);
|
||
|
||
string sql = "";
|
||
var count = -1;
|
||
|
||
sql = "SELECT COUNT(*) FROM `bxx`.`product_buy_map` WHERE 1=1";
|
||
string where = "";
|
||
if (spu_codes != null)
|
||
where += " and spu_code IN ('" + spu_codes.Replace(",", "','") + "')";
|
||
if (sku_codes != null)
|
||
where += " and sku_code IN ('" + sku_codes.Replace(",", "','") + "')";
|
||
if (user_name != null)
|
||
where += " and user_name='" + user_name + "'";
|
||
sql += where;
|
||
sql += ";";
|
||
|
||
if (not_count == "false")
|
||
count = mySql.ExecuteRowCount(sql);
|
||
|
||
DataTable dt;
|
||
if (count == 0)
|
||
{
|
||
dt = new DataTable();
|
||
}
|
||
else
|
||
{
|
||
sql = "SELECT * FROM `bxx`.`product_buy_map` WHERE 1=1";
|
||
sql += where;
|
||
sql += " order by id desc limit " + Math.Max(0, page - 1) * page_size + "," + page_size + ";";
|
||
dt = mySql.ExecuteDataTable(sql);
|
||
}
|
||
mySql.Close();
|
||
|
||
if (dt != null)
|
||
{
|
||
try
|
||
{
|
||
List<WXBuyMapInfo> WXBuyMapInfoLst = new List<WXBuyMapInfo>();
|
||
foreach (DataRow row in dt.Rows)
|
||
{
|
||
WXBuyMapInfoLst.Add(new WXBuyMapInfo()
|
||
{
|
||
id = row["id"].ParseToInt(),
|
||
user_name = row["user_name"].ParseToNullableString(),
|
||
spu_code = row["spu_code"].ParseToNullableString(),
|
||
sku_code = row["sku_code"].ParseToNullableString(),
|
||
map_url = row["map_url"].ParseToNullableString(),
|
||
map_goods_name = row["map_goods_name"].ParseToNullableString(),
|
||
map_spec_name = row["map_spec_name"].ParseToNullableString(),
|
||
map_goods_id = row["map_goods_id"].ParseToNullableString(),
|
||
map_sku_id = row["map_sku_id"].ParseToNullableString(),
|
||
map_send_address = row["map_send_address"].ParseToNullableString(),
|
||
transit_warehouse_id = row["transit_warehouse_id"].ParseToNullableString(),
|
||
add_time = Convert.ToDateTime(row["add_time"]),
|
||
mdy_time = Convert.ToDateTime(row["mdy_time"]),
|
||
platform = row["platform"].ParseToNullableString(),
|
||
});
|
||
}
|
||
JsonSerializerSettings jsonSetting = new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore };
|
||
var data = JsonUtils.SerializeObjectToString(WXBuyMapInfoLst, jsonSetting);
|
||
var seconds = (DateTime.Now - timeCalc).TotalSeconds.ToString("0.000");
|
||
return "{\"code\":200,\"msg\":\"success\",\"data\":" + data + ",\"count\":" + count + ",\"seconds\":" + seconds + "}";
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
return "{\"code\":500,\"msg\":\"" + ex.Message + "\",\"data\":[],\"count\":" + 0 + "}";
|
||
}
|
||
}
|
||
else
|
||
{
|
||
return "{\"code\":500,\"msg\":\"" + mySql.Message + "\",\"data\":[],\"count\":" + 0 + "}";
|
||
}
|
||
}
|
||
return "{\"code\":19999,\"msg\":\"输入为空\"}";
|
||
}
|
||
|
||
/// <summary>
|
||
/// 获取中转仓订单信息
|
||
/// </summary>
|
||
/// <param name="inputData"></param>
|
||
/// <returns></returns>
|
||
public string WXGetTransitOrder(string inputData)
|
||
{
|
||
if (!string.IsNullOrEmpty(inputData))
|
||
{
|
||
if (!WXUserManage.GetSign(inputData))
|
||
return "{\"code\":999,\"msg\":\"校验失败\"}";
|
||
var timeCalc = DateTime.Now;
|
||
var count = -1;
|
||
int page = RegexUtils.GetStringQuery(ref inputData, "page").ParseToInt();
|
||
int page_size = RegexUtils.GetStringQuery(ref inputData, "page_size").ParseToInt(200);
|
||
string order_no = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "order_no"))?.Replace("'", "\\'");
|
||
string order_sku_id = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "order_sku_id"))?.Replace("'", "\\'");
|
||
string out_order_no = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "out_order_no"))?.Replace("'", "\\'");
|
||
string pre_allocated_order_no = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "pre_allocated_order_no"))?.Replace("'", "\\'");
|
||
string transfer_warehouse_status = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "transfer_warehouse_status"))?.Replace("'", "\\'");
|
||
string not_count = RegexUtils.GetStringQuery(ref inputData, "not_count")?.Replace("'", "\\'");
|
||
string is_admin = RegexUtils.GetStringQuery(ref inputData, "is_admin")?.Replace("'", "\\'");
|
||
if (string.IsNullOrEmpty(order_no) && string.IsNullOrEmpty(out_order_no) && string.IsNullOrEmpty(order_sku_id) && is_admin != "true")
|
||
return "{\"code\":500,\"msg\":\"中转订单查询信息不能为空\"}";
|
||
|
||
try
|
||
{
|
||
var oms_wei_external_procurement_log_list = GetTransitOrderTable(page, page_size, order_no, order_sku_id, out_order_no, pre_allocated_order_no, transfer_warehouse_status, not_count, out count);
|
||
if (oms_wei_external_procurement_log_list != null)
|
||
{
|
||
JsonSerializerSettings jsonSetting = new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore };
|
||
var data = JsonUtils.SerializeObjectToString(oms_wei_external_procurement_log_list, jsonSetting);
|
||
var seconds = (DateTime.Now - timeCalc).TotalSeconds.ToString("0.000");
|
||
return "{\"code\":200,\"msg\":\"success\",\"data\":" + data + ",\"count\":" + count + ",\"seconds\":" + seconds + "}";
|
||
|
||
}
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
return "{\"code\":500,\"msg\":\"" + ex.Message + "\",\"data\":[],\"count\":" + 0 + "}";
|
||
}
|
||
}
|
||
return "{\"code\":19999,\"msg\":\"输入为空\"}";
|
||
}
|
||
|
||
|
||
/// <summary>
|
||
/// 查询中转仓订单
|
||
/// </summary>
|
||
public List<oms_wei_external_procurement_log> GetTransitOrderTable(
|
||
int page,
|
||
int pageSize,
|
||
string orderNo,
|
||
string orderSkuId,
|
||
string outOrderNo,
|
||
string preAllocatedOrderNo,
|
||
string transferWarehouseStatus,
|
||
string not_count, out int count)
|
||
{
|
||
var timeCalc = DateTime.Now;
|
||
string conn = System.Configuration.ConfigurationManager.ConnectionStrings["ConnKJD"].ConnectionString;
|
||
MysqlUtils mySql = new MysqlUtils(conn);
|
||
|
||
|
||
string sql = "";
|
||
count = -1;
|
||
|
||
sql = "SELECT COUNT(*) FROM `erp`.`oms_wei_external_procurement_log` WHERE 1=1";
|
||
string where = "";
|
||
if (!string.IsNullOrEmpty(orderNo))
|
||
where += $" and order_no IN ('{orderNo.Replace(",", "','")}')";
|
||
|
||
if (!string.IsNullOrEmpty(orderSkuId))
|
||
where += $" and order_sku_id IN ('{orderSkuId.Replace(",", "','")}')";
|
||
|
||
if (!string.IsNullOrEmpty(outOrderNo))
|
||
where += $" and out_order_no IN ('{outOrderNo.Replace(",", "','")}')";
|
||
|
||
if (!string.IsNullOrEmpty(preAllocatedOrderNo))
|
||
where += $" and pre_allocated_order_no IN ({preAllocatedOrderNo})";
|
||
|
||
if (!string.IsNullOrEmpty(transferWarehouseStatus))
|
||
where += $" and transfer_warehouse_status IN ({transferWarehouseStatus})";
|
||
sql += where;
|
||
sql += ";";
|
||
|
||
if (not_count == "false")
|
||
count = mySql.ExecuteRowCount(sql);
|
||
|
||
DataTable dt;
|
||
if (count == 0)
|
||
{
|
||
dt = new DataTable();
|
||
}
|
||
else
|
||
{
|
||
sql = "SELECT * FROM `erp`.`oms_wei_external_procurement_log` WHERE 1=1";
|
||
sql += where;
|
||
sql += " order by id desc limit " + Math.Max(0, page - 1) * pageSize + "," + pageSize + ";";
|
||
dt = mySql.ExecuteDataTable(sql);
|
||
}
|
||
mySql.Close();
|
||
|
||
if (dt != null)
|
||
{
|
||
List<oms_wei_external_procurement_log> oms_wei_external_procurement_log_list = new List<oms_wei_external_procurement_log>();
|
||
|
||
foreach (DataRow row in dt.Rows)
|
||
{
|
||
oms_wei_external_procurement_log_list.Add(new oms_wei_external_procurement_log()
|
||
{
|
||
id = row["id"].ParseToInt(),
|
||
buyer_account = row["buyer_account"].ParseToNullableString(),
|
||
order_no = row["order_no"].ParseToNullableString(),
|
||
order_sku_id = row["order_sku_id"].ParseToNullableString(),
|
||
out_amount = row["out_amount"].ParseToNullableInt(),
|
||
out_order_no = row["out_order_no"].ParseToNullableString(),
|
||
purchaser_note = row["purchaser_note"].ParseToNullableString(),
|
||
created_time = row["created_time"].ParseToNullableString().ParseToDateTime(),
|
||
express_1_company = row["express_1_company"].ParseToNullableString(),
|
||
express_1_waybill = row["express_1_waybill"].ParseToNullableString(),
|
||
express_2_company = row["express_2_company"].ParseToNullableString(),
|
||
express_2_waybill = row["express_2_waybill"].ParseToNullableString(),
|
||
order_code = row["order_code"].ParseToNullableString(),
|
||
order_platform_code = row["order_platform_code"].ParseToNullableString(),
|
||
pickup_time = row["pickup_time"].ParseToNullableString().ParseToDateTime(),
|
||
platform = row["platform"].ParseToNullableString(),
|
||
pre_allocated_order_no = row["pre_allocated_order_no"].ParseToNullableInt(),
|
||
raw_message = row["raw_message"].ParseToNullableString(),
|
||
refund_status = row["refund_status"].ParseToNullableString(),
|
||
transfer_warehouse_status = row["transfer_warehouse_status"].ParseToNullableInt(),
|
||
updated_time = row["updated_time"].ParseToNullableString().ParseToDateTime(),
|
||
is_transfer_ship = row["is_transfer_ship"].ParseToNullableInt(),
|
||
random_code = row["random_code"].ParseToNullableString(),
|
||
transfer_refund_status = row["transfer_refund_status"].ParseToNullableInt(),
|
||
order_void_status = row["order_void_status"].ParseToNullableInt(),
|
||
warehouse_status = row["warehouse_status"].ParseToNullableInt(),
|
||
inbound_time = row["inbound_time"].ParseToNullableString().ParseToDateTimeNullable(),
|
||
outbound_time = row["outbound_time"].ParseToNullableString().ParseToDateTimeNullable(),
|
||
has_reject = row["has_reject"].ParseToInt(),
|
||
blocked_arrival_time = row["blocked_arrival_time"].ParseToNullableString().ParseToDateTimeNullable(),
|
||
rejected_time = row["rejected_time"].ParseToNullableString().ParseToDateTimeNullable(),
|
||
intercept_return_info = row["intercept_return_info"].ParseToNullableString(),
|
||
intercept_return_status = row["intercept_return_status"].ParseToNullableInt(),
|
||
intercept_return_time = row["intercept_return_status"].ParseToNullableString().ParseToDateTimeNullable(),
|
||
is_manual_shipment = row["is_manual_shipment"].ParseToInt(),
|
||
manual_shipment_status = row["manual_shipment_status"].ParseToNullableInt(),
|
||
location_code = row["location_code"].ParseToNullableString(),
|
||
location_write_time = row["location_write_time"].ParseToNullableString().ParseToDateTimeNullable(),
|
||
virtual_express_company = row["virtual_express_company"].ParseToNullableString(),
|
||
virtual_waybill_no = row["virtual_waybill_no"].ParseToNullableString(),
|
||
});
|
||
}
|
||
return oms_wei_external_procurement_log_list;
|
||
}
|
||
else
|
||
{
|
||
throw new Exception(mySql.Message);
|
||
}
|
||
return null;
|
||
}
|
||
|
||
/// <summary>
|
||
/// 查询中转仓订单
|
||
/// </summary>
|
||
public List<oms_wei_transfer_extra_package> GetTransitExtraPackageTable(
|
||
int page,
|
||
int pageSize,
|
||
string batchId,
|
||
string order_no,
|
||
string order_code,
|
||
string not_count, out int count)
|
||
{
|
||
var timeCalc = DateTime.Now;
|
||
string conn = System.Configuration.ConfigurationManager.ConnectionStrings["ConnKJD"].ConnectionString;
|
||
MysqlUtils mySql = new MysqlUtils(conn);
|
||
|
||
|
||
string sql = "";
|
||
count = -1;
|
||
|
||
sql = "SELECT COUNT(*) FROM `erp`.`oms_wei_transfer_extra_package` WHERE 1=1";
|
||
string where = "";
|
||
if (!string.IsNullOrEmpty(batchId))
|
||
where += $" and batchId IN ('{batchId.Replace(",", "','")}')";
|
||
|
||
if (!string.IsNullOrEmpty(order_no))
|
||
where += $" and order_no IN ('{order_no.Replace(",", "','")}')";
|
||
|
||
if (!string.IsNullOrEmpty(order_code))
|
||
where += $" and order_code IN ('{order_code.Replace(",", "','")}')";
|
||
|
||
sql += where;
|
||
sql += ";";
|
||
|
||
if (not_count == "false")
|
||
count = mySql.ExecuteRowCount(sql);
|
||
|
||
DataTable dt;
|
||
if (count == 0)
|
||
{
|
||
dt = new DataTable();
|
||
}
|
||
else
|
||
{
|
||
sql = "SELECT * FROM `erp`.`oms_wei_transfer_extra_package` WHERE 1=1";
|
||
sql += where;
|
||
sql += " order by id desc limit " + Math.Max(0, page - 1) * pageSize + "," + pageSize + ";";
|
||
dt = mySql.ExecuteDataTable(sql);
|
||
}
|
||
mySql.Close();
|
||
|
||
if (dt != null)
|
||
{
|
||
List<oms_wei_transfer_extra_package> oms_wei_transfer_extra_package_list = new List<oms_wei_transfer_extra_package>();
|
||
|
||
foreach (DataRow row in dt.Rows)
|
||
{
|
||
oms_wei_transfer_extra_package_list.Add(new oms_wei_transfer_extra_package()
|
||
{
|
||
id = row["id"].ParseToInt(),
|
||
buyer_account = row["buyer_account"].ParseToNullableString(),
|
||
order_no = row["order_no"].ParseToNullableString(),
|
||
out_amount = row["out_amount"].ParseToNullableInt(),
|
||
purchaser_note = row["purchaser_note"].ParseToNullableString(),
|
||
created_time = row["created_time"].ParseToNullableString().ParseToDateTime(),
|
||
order_code = row["order_code"].ParseToNullableString(),
|
||
order_platform_code = row["order_platform_code"].ParseToNullableString(),
|
||
pickup_time = row["pickup_time"].ParseToNullableString().ParseToDateTime(),
|
||
platform = row["platform"].ParseToNullableString(),
|
||
raw_message = row["raw_message"].ParseToNullableString(),
|
||
refund_status = row["refund_status"].ParseToNullableString(),
|
||
transfer_warehouse_status = row["transfer_warehouse_status"].ParseToNullableInt(),
|
||
updated_time = row["updated_time"].ParseToNullableString().ParseToDateTime(),
|
||
random_code = row["random_code"].ParseToNullableString(),
|
||
order_void_status = row["order_void_status"].ParseToNullableInt(),
|
||
warehouse_status = row["warehouse_status"].ParseToNullableInt(),
|
||
inbound_time = row["inbound_time"].ParseToNullableString().ParseToDateTimeNullable(),
|
||
outbound_time = row["outbound_time"].ParseToNullableString().ParseToDateTimeNullable(),
|
||
has_reject = row["has_reject"].ParseToNullableInt(),
|
||
blocked_arrival_time = row["blocked_arrival_time"].ParseToNullableString().ParseToDateTimeNullable(),
|
||
rejected_time = row["rejected_time"].ParseToNullableString().ParseToDateTimeNullable(),
|
||
batchId = row["batchId"].ParseToString(),
|
||
logistics_code = row["logistics_code"].ParseToString(),
|
||
logistics_express_code = row["logistics_express_code"].ParseToString(),
|
||
over_weight_fee = row["over_weight_fee"].ParseToNullableInt(),
|
||
pack_type = row["pack_type"].ParseToString(),
|
||
postage = row["postage"].ParseToNullableInt(),
|
||
real_logistics_code = row["real_logistics_code"].ParseToNullableString(),
|
||
real_logistics_express_code = row["real_logistics_express_code"].ParseToNullableString(),
|
||
retry_acquire_success = row["retry_acquire_success"].ParseToNullableInt(),
|
||
location_code = row["location_code"].ParseToNullableString(),
|
||
location_write_time = row["location_write_time"].ParseToNullableString().ParseToDateTimeNullable(),
|
||
has_return = row["has_return"].ParseToNullableInt(),
|
||
intercept_address_info = row["intercept_address_info"].ParseToNullableString(),
|
||
intercept_address_status = row["intercept_address_status"].ParseToNullableInt(),
|
||
intercept_address_time = row["intercept_address_time"].ParseToNullableString().ParseToDateTimeNullable(),
|
||
intercept_return_info = row["intercept_return_info"].ParseToNullableString(),
|
||
intercept_return_status = row["intercept_return_status"].ParseToNullableInt(),
|
||
intercept_return_time = row["intercept_address_time"].ParseToNullableString().ParseToDateTimeNullable(),
|
||
out_order_no = row["out_order_no"].ParseToNullableString(),
|
||
out_sku_id = row["out_sku_id"].ParseToNullableString(),
|
||
});
|
||
}
|
||
return oms_wei_transfer_extra_package_list;
|
||
}
|
||
else
|
||
{
|
||
throw new Exception(mySql.Message);
|
||
}
|
||
return null;
|
||
}
|
||
|
||
|
||
/// <summary>
|
||
/// 修改中转仓订单信息(真实物流),临时补救
|
||
/// </summary>
|
||
/// <param name="inputData"></param>
|
||
/// <returns></returns>
|
||
public string WXUpdateErpOrderExpress(string inputData)
|
||
{
|
||
if (!string.IsNullOrEmpty(inputData))
|
||
{
|
||
if (!WXUserManage.GetSign(inputData))
|
||
return "{\"code\":999,\"msg\":\"校验失败\"}";
|
||
var timeCalc = DateTime.Now;
|
||
|
||
int page = RegexUtils.GetStringQuery(ref inputData, "page").ParseToInt();
|
||
int page_size = RegexUtils.GetStringQuery(ref inputData, "page_size").ParseToInt(200);
|
||
string out_order_no = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "out_order_no"))?.Replace("'", "\\'");
|
||
string express_1_company = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "express_1_company"))?.Replace("'", "\\'");
|
||
string express_1_waybill = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "express_1_waybil"))?.Replace("'", "\\'");
|
||
string refund_status = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "refund_status"))?.Replace("'", "\\'");
|
||
if (string.IsNullOrEmpty(out_order_no))
|
||
return "{\"code\":500,\"msg\":\"订单外部ID信息不能为空\"}";
|
||
//if (string.IsNullOrEmpty(express_1_company))
|
||
// return "{\"code\":500,\"msg\":\"物流公司不能为空\"}";
|
||
//if (string.IsNullOrEmpty(express_1_waybill))
|
||
// return "{\"code\":500,\"msg\":\"物流单号不能为空\"}";
|
||
|
||
if (string.IsNullOrEmpty(express_1_company) && string.IsNullOrEmpty(express_1_waybill) && string.IsNullOrEmpty(refund_status))
|
||
return "{\"code\":500,\"msg\":\"修改信息不能为空\"}";
|
||
|
||
|
||
string conn = System.Configuration.ConfigurationManager.ConnectionStrings["ConnKJD"].ConnectionString;
|
||
MysqlUtils mySql = new MysqlUtils(conn);
|
||
|
||
string sql = "";
|
||
var count = -1;
|
||
|
||
sql = " update `erp`.`oms_wei_external_procurement_log` set ";
|
||
if (!string.IsNullOrEmpty(express_1_company))
|
||
sql += " express_1_company='" + express_1_company + "',";
|
||
if (!string.IsNullOrEmpty(express_1_waybill))
|
||
sql += " express_1_waybill='" + express_1_waybill + "',";
|
||
if (!string.IsNullOrEmpty(refund_status))
|
||
sql += " refund_status='" + refund_status + "',";
|
||
sql = sql.TrimEnd(',');
|
||
sql += " where out_order_no = '" + out_order_no + "';";
|
||
|
||
count = mySql.ExecuteAffectedRows(sql);
|
||
mySql.Close();
|
||
|
||
if (!string.IsNullOrEmpty(mySql.Message))
|
||
{
|
||
return "{\"code\":500,\"msg\":\"" + mySql.Message + "\",\"affected_rows\":" + count + "}";
|
||
}
|
||
return "{\"code\":200,\"msg\":\"success\",\"affected_rows\":" + count + "}";
|
||
}
|
||
return "{\"code\":19999,\"msg\":\"输入为空\"}";
|
||
}
|
||
|
||
/// <summary>
|
||
/// 修改中转仓订单信息(取号状态),临时补救
|
||
/// </summary>
|
||
/// <param name="inputData"></param>
|
||
/// <returns></returns>
|
||
public string WXUpdateErpAllocatedOrderNo(string inputData)
|
||
{
|
||
if (!string.IsNullOrEmpty(inputData))
|
||
{
|
||
if (!WXUserManage.GetSign(inputData))
|
||
return "{\"code\":999,\"msg\":\"校验失败\"}";
|
||
var timeCalc = DateTime.Now;
|
||
|
||
int page = RegexUtils.GetStringQuery(ref inputData, "page").ParseToInt();
|
||
int page_size = RegexUtils.GetStringQuery(ref inputData, "page_size").ParseToInt(200);
|
||
string out_order_no = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "out_order_no"))?.Replace("'", "\\'");
|
||
string pre_allocated_order_no = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "pre_allocated_order_no"))?.Replace("'", "\\'");
|
||
if (string.IsNullOrEmpty(out_order_no))
|
||
return "{\"code\":500,\"msg\":\"订单外部ID信息不能为空\"}";
|
||
|
||
string conn = System.Configuration.ConfigurationManager.ConnectionStrings["ConnKJD"].ConnectionString;
|
||
MysqlUtils mySql = new MysqlUtils(conn);
|
||
|
||
string sql = "";
|
||
var count = -1;
|
||
|
||
sql = " update `erp`.`oms_wei_external_procurement_log` set ";
|
||
if (!string.IsNullOrEmpty(pre_allocated_order_no))
|
||
sql += " pre_allocated_order_no=" + pre_allocated_order_no + ",";
|
||
sql = sql.TrimEnd(',');
|
||
sql += " where out_order_no = '" + out_order_no + "';";
|
||
|
||
count = mySql.ExecuteAffectedRows(sql);
|
||
mySql.Close();
|
||
|
||
if (!string.IsNullOrEmpty(mySql.Message))
|
||
{
|
||
return "{\"code\":500,\"msg\":\"" + mySql.Message + "\",\"affected_rows\":" + count + "}";
|
||
}
|
||
return "{\"code\":200,\"msg\":\"success\",\"affected_rows\":" + count + "}";
|
||
}
|
||
return "{\"code\":19999,\"msg\":\"输入为空\"}";
|
||
}
|
||
|
||
/// <summary>
|
||
/// 删除中转仓订单 临时补救,慎用
|
||
/// </summary>
|
||
/// <param name="inputData"></param>
|
||
/// <returns></returns>
|
||
public string WXDelErpTransitWarehouseOrder(string inputData)
|
||
{
|
||
if (!string.IsNullOrEmpty(inputData))
|
||
{
|
||
if (!WXUserManage.GetSign(inputData))
|
||
return "{\"code\":999,\"msg\":\"校验失败\"}";
|
||
var timeCalc = DateTime.Now;
|
||
|
||
string out_order_no = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "out_order_no"))?.Replace("'", "\\'");
|
||
if (string.IsNullOrEmpty(out_order_no))
|
||
return "{\"code\":500,\"msg\":\"订单外部ID信息不能为空\"}";
|
||
|
||
string conn = System.Configuration.ConfigurationManager.ConnectionStrings["ConnKJD"].ConnectionString;
|
||
MysqlUtils mySql = new MysqlUtils(conn);
|
||
|
||
string sql = "";
|
||
var count = -1;
|
||
|
||
sql = " DELETE FROM `erp`.`oms_wei_external_procurement_log` WHERE out_order_no in ('" + out_order_no.Replace(",", "','") + "')";
|
||
|
||
count = mySql.ExecuteAffectedRows(sql);
|
||
mySql.Close();
|
||
|
||
if (!string.IsNullOrEmpty(mySql.Message))
|
||
{
|
||
return "{\"code\":500,\"msg\":\"" + mySql.Message + "\",\"affected_rows\":" + count + "}";
|
||
}
|
||
if (count == 0)
|
||
{
|
||
return "{\"code\":500,\"msg\":\"删除失败,订单不存在\",\"affected_rows\":" + count + "}";
|
||
}
|
||
return "{\"code\":200,\"msg\":\"success\",\"affected_rows\":" + count + "}";
|
||
}
|
||
return "{\"code\":19999,\"msg\":\"输入为空\"}";
|
||
}
|
||
|
||
/// <summary>
|
||
/// 中转仓额外快递包裹
|
||
/// </summary>
|
||
/// <param name="inputData"></param>
|
||
/// <returns></returns>
|
||
public string WXGetTransferExtraPackage(string inputData)
|
||
{
|
||
if (!string.IsNullOrEmpty(inputData))
|
||
{
|
||
if (!WXUserManage.GetSign(inputData))
|
||
return "{\"code\":999,\"msg\":\"校验失败\"}";
|
||
|
||
var timeCalc = DateTime.Now;
|
||
|
||
var count = -1;
|
||
int page = RegexUtils.GetStringQuery(ref inputData, "page").ParseToInt();
|
||
int page_size = RegexUtils.GetStringQuery(ref inputData, "page_size").ParseToInt(200);
|
||
string batchId = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "batchId"))?.Replace("'", "\\'");
|
||
string order_no = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "order_no"))?.Replace("'", "\\'");
|
||
string order_code = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "order_code"))?.Replace("'", "\\'");
|
||
string not_count = RegexUtils.GetStringQuery(ref inputData, "not_count")?.Replace("'", "\\'");
|
||
if (string.IsNullOrEmpty(order_no) && string.IsNullOrEmpty(order_code))
|
||
return "{\"code\":500,\"msg\":\"中转额外包裹查询信息不能为空\"}";
|
||
|
||
try
|
||
{
|
||
var oms_wei_transfer_extra_package = GetTransitExtraPackageTable(page, page_size, batchId, order_no, order_code, not_count, out count);
|
||
if (oms_wei_transfer_extra_package != null)
|
||
{
|
||
JsonSerializerSettings jsonSetting = new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore };
|
||
var data = JsonUtils.SerializeObjectToString(oms_wei_transfer_extra_package, jsonSetting);
|
||
var seconds = (DateTime.Now - timeCalc).TotalSeconds.ToString("0.000");
|
||
return "{\"code\":200,\"msg\":\"success\",\"data\":" + data + ",\"count\":" + count + ",\"seconds\":" + seconds + "}";
|
||
|
||
}
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
return "{\"code\":500,\"msg\":\"" + ex.Message + "\",\"data\":[],\"count\":" + 0 + "}";
|
||
}
|
||
}
|
||
return "{\"code\":19999,\"msg\":\"输入为空\"}";
|
||
}
|
||
|
||
/// <summary>
|
||
/// 同步单
|
||
/// </summary>
|
||
/// <param name="inputData"></param>
|
||
/// <returns></returns>
|
||
public string WXGetSyncWaybill(string inputData)
|
||
{
|
||
if (!string.IsNullOrEmpty(inputData))
|
||
{
|
||
var timeCalc = DateTime.Now;
|
||
|
||
var time = RegexUtils.GetStringQuery(ref inputData, "time").ParseToInt();
|
||
string time1 = RegexUtils.GetStringQuery(ref inputData, "code");
|
||
if (time1 != EncrypUtil.Encryption(time))
|
||
return "{\"code\":50000,\"msg\":\"校验失败\"}";
|
||
|
||
// 买手订单号
|
||
var order_id = RegexUtils.GetStringQuery(ref inputData, "order_id")?.Replace("'", "\\'");
|
||
if (order_id.IsNullOrEmpty())
|
||
{
|
||
return "{\"code\":500,\"msg\":\"未指定订单\"}";
|
||
}
|
||
var not_upload_pickup_status = RegexUtils.GetStringQuery(ref inputData, "not_upload_pickup_status")?.Replace("'", "\\'");
|
||
var sort_type = RegexUtils.GetStringQuery(ref inputData, "sort_type")?.Replace("'", "\\'");
|
||
var is_not_count = RegexUtils.GetStringQuery(ref inputData, "is_not_count") != "false";
|
||
|
||
int page = RegexUtils.GetStringQuery(ref inputData, "page").ParseToInt();
|
||
int page_size = RegexUtils.GetStringQuery(ref inputData, "page_size").ParseToInt(500);
|
||
|
||
string conn = System.Configuration.ConfigurationManager.ConnectionStrings["ConnKJD"].ConnectionString;
|
||
MysqlUtils mySql = new MysqlUtils(conn);
|
||
|
||
string sql = "SELECT COUNT(id) FROM wxxd.yh_sync_logistics o WHERE 1=1 ";
|
||
|
||
string where = "";
|
||
if (!string.IsNullOrWhiteSpace(order_id))
|
||
where += " and o.order_id in ('" + order_id.Replace(",", "','") + "')";
|
||
if (!string.IsNullOrWhiteSpace(not_upload_pickup_status))
|
||
where += " and (o.upload_pickup_status IS null or o.upload_pickup_status!=" + not_upload_pickup_status + ")";
|
||
sql += where;
|
||
|
||
var count = 0;
|
||
if (!is_not_count)
|
||
count = mySql.ExecuteRowCount(sql);
|
||
|
||
DataTable dt;
|
||
if (count == 0 && !is_not_count)
|
||
{
|
||
dt = new DataTable();
|
||
}
|
||
else
|
||
{
|
||
sql = "SELECT o.* FROM" +
|
||
" wxxd.yh_sync_logistics o " +
|
||
" WHERE 1=1";
|
||
|
||
//where子句
|
||
sql += where;
|
||
|
||
if (sort_type == "asc")
|
||
sql += " ORDER BY o.id ASC";
|
||
else
|
||
sql += " ORDER BY o.id DESC";
|
||
sql += " LIMIT " + Math.Max(page - 1, 0) * page_size + "," + page_size;
|
||
dt = mySql.ExecuteDataTable(sql);
|
||
}
|
||
|
||
mySql.Close();
|
||
if (dt != null)
|
||
{
|
||
try
|
||
{
|
||
List<yh_sync_logistics> yhSyncLogisticsList = new List<yh_sync_logistics>();
|
||
foreach (DataRow row in dt.Rows)
|
||
{
|
||
yh_sync_logistics order = new yh_sync_logistics
|
||
{
|
||
id = row["id"].ParseToLong(),
|
||
order_id = row["order_id"].ParseToNullableString(),
|
||
create_time = row["create_time"].ParseToNullableString().ParseToDateTimeNullable(),
|
||
pickup_code = row["pickup_code"].ParseToNullableString(),
|
||
remark = row["remark"].ParseToNullableString(),
|
||
source_tracking_number = row["source_tracking_number"].ParseToNullableString(),
|
||
tracking_number = row["tracking_number"].ParseToNullableString(),
|
||
upload_pickup_status = row["upload_pickup_status"].ParseToNullableInt(),
|
||
upload_pickup_Time = row["upload_pickup_Time"].ParseToNullableString().ParseToDateTimeNullable(),
|
||
};
|
||
yhSyncLogisticsList.Add(order);
|
||
}
|
||
JsonSerializerSettings jsonSetting = new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore };
|
||
var data = JsonUtils.SerializeObjectToString(yhSyncLogisticsList, jsonSetting);
|
||
var seconds = (DateTime.Now - timeCalc).TotalSeconds.ToString("0.000");
|
||
return "{\"code\":200,\"msg\":\"success\",\"data\":" + data + ",\"count\":" + count + ",\"seconds\":" + seconds + "}";
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
return "{\"code\":500,\"msg\":\"" + ex.Message + "\",\"data\":[],\"count\":" + 0 + "}";
|
||
}
|
||
}
|
||
else
|
||
{
|
||
return "{\"code\":500,\"msg\":\"" + mySql.Message + "\",\"data\":[],\"count\":" + 0 + "}";
|
||
}
|
||
}
|
||
return "{\"code\":19999,\"msg\":\"输入为空\"}";
|
||
}
|
||
|
||
/// <summary>
|
||
/// 修改订单软件备注
|
||
/// </summary>
|
||
/// <param name="inputData"></param>
|
||
/// <returns></returns>
|
||
public string WXUpdateErpSoftRemark(string inputData)
|
||
{
|
||
if (!string.IsNullOrEmpty(inputData))
|
||
{
|
||
if (!WXUserManage.GetSign(inputData))
|
||
return "{\"code\":999,\"msg\":\"校验失败\"}";
|
||
var timeCalc = DateTime.Now;
|
||
|
||
string order_id = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "order_id"))?.Replace("'", "\\'");
|
||
string soft_remark = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "soft_remark"))?.Replace("'", "\\'");
|
||
if (string.IsNullOrEmpty(order_id))
|
||
return "{\"code\":500,\"msg\":\"订单ID不能为空\"}";
|
||
|
||
string conn = System.Configuration.ConfigurationManager.ConnectionStrings["ConnKJD"].ConnectionString;
|
||
MysqlUtils mySql = new MysqlUtils(conn);
|
||
|
||
string sql = "";
|
||
var count = -1;
|
||
|
||
sql = " update erp.oms_wei_order set ";
|
||
if (soft_remark != null)
|
||
sql += " soft_remark='" + soft_remark + "',";
|
||
sql = sql.TrimEnd(',');
|
||
sql += " where order_id = '" + order_id + "';";
|
||
|
||
count = mySql.ExecuteAffectedRows(sql);
|
||
mySql.Close();
|
||
|
||
if (!string.IsNullOrEmpty(mySql.Message))
|
||
{
|
||
return "{\"code\":500,\"msg\":\"" + mySql.Message + "\",\"affected_rows\":" + count + "}";
|
||
}
|
||
return "{\"code\":200,\"msg\":\"success\",\"affected_rows\":" + count + "}";
|
||
}
|
||
return "{\"code\":19999,\"msg\":\"输入为空\"}";
|
||
}
|
||
|
||
public string WXUpdateErpColorFlag(string inputData)
|
||
{
|
||
if (!string.IsNullOrEmpty(inputData))
|
||
{
|
||
if (!WXUserManage.GetSign(inputData))
|
||
return "{\"code\":999,\"msg\":\"校验失败\"}";
|
||
var timeCalc = DateTime.Now;
|
||
|
||
string order_id = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "order_id"))?.Replace("'", "\\'");
|
||
string colour_flag = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "colour_flag"))?.Replace("'", "\\'");
|
||
if (string.IsNullOrEmpty(order_id))
|
||
return "{\"code\":500,\"msg\":\"订单ID不能为空\"}";
|
||
|
||
string conn = System.Configuration.ConfigurationManager.ConnectionStrings["ConnKJD"].ConnectionString;
|
||
MysqlUtils mySql = new MysqlUtils(conn);
|
||
|
||
string sql = "";
|
||
var count = -1;
|
||
|
||
sql = " update erp.oms_wei_order set ";
|
||
if (colour_flag != null)
|
||
{
|
||
sql += " colour_flag=" + colour_flag + ",";
|
||
sql += " colour_flag_update_time='" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + "',";
|
||
}
|
||
sql = sql.TrimEnd(',');
|
||
sql += " where order_id = '" + order_id + "';";
|
||
|
||
count = mySql.ExecuteAffectedRows(sql);
|
||
mySql.Close();
|
||
|
||
if (!string.IsNullOrEmpty(mySql.Message))
|
||
{
|
||
return "{\"code\":500,\"msg\":\"" + mySql.Message + "\",\"affected_rows\":" + count + "}";
|
||
}
|
||
return "{\"code\":200,\"msg\":\"success\",\"affected_rows\":" + count + "}";
|
||
}
|
||
return "{\"code\":19999,\"msg\":\"输入为空\"}";
|
||
}
|
||
|
||
public string WXUpdateErpOutAfterSaleStatus(string inputData)
|
||
{
|
||
if (!string.IsNullOrEmpty(inputData))
|
||
{
|
||
if (!WXUserManage.GetSign(inputData))
|
||
return "{\"code\":999,\"msg\":\"校验失败\"}";
|
||
var timeCalc = DateTime.Now;
|
||
|
||
string order_id = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "order_id"))?.Replace("'", "\\'");
|
||
if (string.IsNullOrEmpty(order_id))
|
||
return "{\"code\":500,\"msg\":\"订单ID不能为空\"}";
|
||
string out_after_sale_status = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "out_after_sale_status"))?.Replace("'", "\\'");
|
||
if (out_after_sale_status == null)
|
||
return "{\"code\":500,\"msg\":\"售后状态不能为NULL\"}";
|
||
|
||
string conn = System.Configuration.ConfigurationManager.ConnectionStrings["ConnKJD"].ConnectionString;
|
||
MysqlUtils mySql = new MysqlUtils(conn);
|
||
|
||
string sql = "";
|
||
var count = -1;
|
||
|
||
sql = " update erp.oms_wei_order set ";
|
||
if (out_after_sale_status != null)
|
||
{
|
||
if (out_after_sale_status == "" || out_after_sale_status == "NULL")
|
||
sql += " out_after_sale_status=NULL,";
|
||
else
|
||
sql += " out_after_sale_status='" + out_after_sale_status + "',";
|
||
}
|
||
sql = sql.TrimEnd(',');
|
||
sql += " where order_id = '" + order_id + "';";
|
||
|
||
count = mySql.ExecuteAffectedRows(sql);
|
||
mySql.Close();
|
||
|
||
if (!string.IsNullOrEmpty(mySql.Message))
|
||
{
|
||
return "{\"code\":500,\"msg\":\"" + mySql.Message + "\",\"affected_rows\":" + count + "}";
|
||
}
|
||
return "{\"code\":200,\"msg\":\"success\",\"affected_rows\":" + count + "}";
|
||
}
|
||
return "{\"code\":19999,\"msg\":\"输入为空\"}";
|
||
}
|
||
|
||
public string WXUpdateErpOutWaybillStatus(string inputData)
|
||
{
|
||
if (!string.IsNullOrEmpty(inputData))
|
||
{
|
||
if (!WXUserManage.GetSign(inputData))
|
||
return "{\"code\":999,\"msg\":\"校验失败\"}";
|
||
var timeCalc = DateTime.Now;
|
||
|
||
string order_id = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "order_id"))?.Replace("'", "\\'");
|
||
if (string.IsNullOrEmpty(order_id))
|
||
return "{\"code\":500,\"msg\":\"订单ID不能为空\"}";
|
||
|
||
string out_express_company = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "out_express_company"))?.Replace("'", "\\'");
|
||
string out_express_no = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "out_express_no"))?.Replace("'", "\\'");
|
||
|
||
// 外采是否发货(0 未发货,1 已发货)
|
||
string out_shipped = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "out_shipped"))?.Replace("'", "\\'");
|
||
|
||
string conn = System.Configuration.ConfigurationManager.ConnectionStrings["ConnKJD"].ConnectionString;
|
||
MysqlUtils mySql = new MysqlUtils(conn);
|
||
|
||
string sql = "";
|
||
var count = -1;
|
||
|
||
sql = " update erp.oms_wei_order set ";
|
||
if (out_express_company != null)
|
||
{
|
||
sql += " out_express_company='" + out_express_company + "',";
|
||
}
|
||
if (out_express_no != null)
|
||
{
|
||
sql += " out_express_no='" + out_express_no + "',";
|
||
}
|
||
if (out_shipped != null)
|
||
{
|
||
sql += " out_shipped=" + out_shipped + ",";
|
||
}
|
||
|
||
sql = sql.TrimEnd(',');
|
||
sql += " where order_id='" + order_id + "';";
|
||
|
||
count = mySql.ExecuteAffectedRows(sql);
|
||
mySql.Close();
|
||
|
||
if (!string.IsNullOrEmpty(mySql.Message))
|
||
{
|
||
return "{\"code\":500,\"msg\":\"" + mySql.Message + "\",\"affected_rows\":" + count + "}";
|
||
}
|
||
return "{\"code\":200,\"msg\":\"success\",\"affected_rows\":" + count + "}";
|
||
}
|
||
return "{\"code\":19999,\"msg\":\"输入为空\"}";
|
||
}
|
||
|
||
public string WXAddMdyBuyerOrder(string inputData)
|
||
{
|
||
if (!string.IsNullOrEmpty(inputData))
|
||
{
|
||
if (!WXUserManage.GetSign(inputData))
|
||
return "{\"code\":999,\"msg\":\"校验失败\"}";
|
||
var timeCalc = DateTime.Now;
|
||
|
||
string wx_order_id = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "wx_order_id"))?.Replace("'", "\\'");
|
||
string wx_sku_id = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "wx_sku_id"))?.Replace("'", "\\'");
|
||
string wx_send_type = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "wx_send_type"))?.Replace("'", "\\'");
|
||
if (wx_send_type.IsNullOrEmpty())
|
||
wx_send_type = "0";
|
||
string TransitCreateTime = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "TransitCreateTime"))?.Replace("'", "\\'");
|
||
string pre_allocated_order_no = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "pre_allocated_order_no"))?.Replace("'", "\\'");
|
||
string buyerId = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "buyerId"))?.Replace("'", "\\'");
|
||
string buyerName = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "buyerName"))?.Replace("'", "\\'");
|
||
string pdd_order_sn = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "pdd_order_sn"))?.Replace("'", "\\'");
|
||
string order_amount = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "order_amount"))?.Replace("'", "\\'");
|
||
string order_time = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "order_time"))?.Replace("'", "\\'");
|
||
string outExpressCompanyCode = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "outExpressCompanyCode"))?.Replace("'", "\\'");
|
||
string tracking_number = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "tracking_number"))?.Replace("'", "\\'");
|
||
string order_status_prompt = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "order_status_prompt"))?.Replace("'", "\\'");
|
||
string after_sales_status = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "after_sales_status"))?.Replace("'", "\\'");
|
||
string order_detail = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "order_detail"))?.Replace("'", "\\'");
|
||
string sync_logistics_msg = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "sync_logistics_msg"))?.Replace("'", "\\'");
|
||
//string wx_order_send_type = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "wx_order_send_type"))?.Replace("'", "\\'");
|
||
//if (string.IsNullOrEmpty(wx_order_send_type))
|
||
// wx_order_send_type = "1";
|
||
if (string.IsNullOrEmpty(wx_order_id) || string.IsNullOrEmpty(pdd_order_sn))
|
||
return "{\"code\":500,\"msg\":\"订单ID不能为空\"}";
|
||
|
||
string conn = System.Configuration.ConfigurationManager.ConnectionStrings["ConnKJD"].ConnectionString;
|
||
MysqlUtils mySql = new MysqlUtils(conn);
|
||
|
||
string sql = "";
|
||
var count = -1;
|
||
|
||
sql = "select id from wxxd.order_pdd_buyer_order where order_sn='" + pdd_order_sn + "'";
|
||
var id = mySql.ExecuteFirstInt(sql);
|
||
if (!string.IsNullOrEmpty(mySql.Message))
|
||
{
|
||
mySql.Close();
|
||
return "{\"code\":500,\"msg\":\"" + mySql.Message + "\"}";
|
||
}
|
||
|
||
//sql = "INSERT INTO wxxd.order_pdd_buyer_order (wx_order_id,wx_sku_id,TransitCreateTime,pre_allocated_order_no,buyerId,buyerName,order_sn,order_amount,order_time," +
|
||
// "outExpressCompanyCode,tracking_number,order_status_prompt,after_sales_status,order_detail)";
|
||
//sql += "VALUES(@wx_order_id,@wx_sku_id,@TransitCreateTime,@pre_allocated_order_no,@buyerId,@buyerName,@pdd_order_sn,@order_amount,@order_time," +
|
||
// "@outExpressCompanyCode,@tracking_number,@order_status_prompt,@after_sales_status,@order_detail)";
|
||
//sql += " ON DUPLICATE KEY UPDATE wx_order_id=VALUES(@wx_order_id),wx_sku_id=VALUES(@wx_sku_id),TransitCreateTime=VALUES(@TransitCreateTime)," +
|
||
// "pre_allocated_order_no=VALUES(@pre_allocated_order_no),buyerId=VALUES(@buyerId),buyerName=VALUES(@buyerName),order_amount=VALUES(@order_amount)," +
|
||
// "order_time=VALUES(@order_time),outExpressCompanyCode=VALUES(@outExpressCompanyCode),tracking_number=VALUES(@tracking_number),order_status_prompt=VALUES(@order_status_prompt)," +
|
||
// "after_sales_status=VALUES(@after_sales_status),order_detail=VALUES(@order_detail)";
|
||
|
||
if (id == 0)
|
||
{
|
||
sql = "INSERT INTO wxxd.order_pdd_buyer_order (wx_order_id,wx_sku_id,wx_send_type,TransitCreateTime,pre_allocated_order_no,buyerId,buyerName,order_sn,order_amount,order_time," +
|
||
"outExpressCompanyCode,tracking_number,order_status_prompt,after_sales_status,order_detail,sync_logistics_msg)";
|
||
sql += "VALUES(@wx_order_id,@wx_sku_id,@wx_send_type,@TransitCreateTime,@pre_allocated_order_no,@buyerId,@buyerName,@pdd_order_sn,@order_amount,@order_time," +
|
||
"@outExpressCompanyCode,@tracking_number,@order_status_prompt,@after_sales_status,@order_detail,@sync_logistics_msg);";
|
||
}
|
||
else
|
||
{
|
||
sql = "UPDATE wxxd.order_pdd_buyer_order SET ";
|
||
if (!string.IsNullOrEmpty(wx_order_id))
|
||
sql += " wx_order_id=@wx_order_id,";
|
||
if (!string.IsNullOrEmpty(wx_sku_id))
|
||
sql += " wx_sku_id=@wx_sku_id,";
|
||
if (!string.IsNullOrEmpty(wx_send_type))
|
||
sql += " wx_send_type=@wx_send_type,";
|
||
if (!string.IsNullOrEmpty(TransitCreateTime))
|
||
sql += " TransitCreateTime=@TransitCreateTime,";
|
||
if (!string.IsNullOrEmpty(pre_allocated_order_no))
|
||
sql += " pre_allocated_order_no=@pre_allocated_order_no,";
|
||
if (!string.IsNullOrEmpty(buyerId))
|
||
sql += " buyerId=@buyerId,";
|
||
if (!string.IsNullOrEmpty(buyerName))
|
||
sql += " buyerName=@buyerName,";
|
||
if (!string.IsNullOrEmpty(order_amount))
|
||
sql += " order_amount=@order_amount,";
|
||
if (!string.IsNullOrEmpty(order_time))
|
||
sql += " order_time=@order_time,";
|
||
if (!string.IsNullOrEmpty(outExpressCompanyCode))
|
||
sql += " outExpressCompanyCode=@outExpressCompanyCode,";
|
||
if (!string.IsNullOrEmpty(tracking_number))
|
||
sql += " tracking_number=@tracking_number,";
|
||
if (!string.IsNullOrEmpty(order_status_prompt))
|
||
sql += " order_status_prompt=@order_status_prompt,";
|
||
if (!string.IsNullOrEmpty(after_sales_status))
|
||
sql += " after_sales_status=@after_sales_status,";
|
||
if (!string.IsNullOrEmpty(order_detail))
|
||
sql += " order_detail=@order_detail,";
|
||
if (!string.IsNullOrEmpty(sync_logistics_msg))
|
||
sql += " sync_logistics_msg=@sync_logistics_msg,";
|
||
sql = sql.TrimEnd(',');
|
||
sql += " where order_sn=@pdd_order_sn";
|
||
}
|
||
//260705-105706954352823
|
||
|
||
|
||
List<MySqlParameter> paramLst = new List<MySqlParameter>();
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "wx_order_id", Value = wx_order_id, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "wx_sku_id", Value = wx_sku_id, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.Int32, ParameterName = "wx_send_type", Value = wx_send_type.ParseToInt(), });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.DateTime, ParameterName = "TransitCreateTime", Value = TransitCreateTime.ParseToDateTime(), });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.Int32, ParameterName = "pre_allocated_order_no", Value = pre_allocated_order_no.ParseToInt(), });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "buyerId", Value = buyerId, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "buyerName", Value = buyerName, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "pdd_order_sn", Value = pdd_order_sn, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.Int32, ParameterName = "order_amount", Value = order_amount.ParseToNullableInt(), });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.Int64, ParameterName = "order_time", Value = order_time.ParseToLong(), });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "outExpressCompanyCode", Value = outExpressCompanyCode, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "tracking_number", Value = tracking_number, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "order_status_prompt", Value = order_status_prompt, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.Int32, ParameterName = "after_sales_status", Value = after_sales_status.ParseToInt(), });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "order_detail", Value = order_detail, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "sync_logistics_msg", Value = sync_logistics_msg, });
|
||
//sql = " update `wxxd`.`order_pdd_buyer_order` set ";
|
||
//if (!string.IsNullOrEmpty(soft_remark))
|
||
// sql += " soft_remark=" + soft_remark + ",";
|
||
//sql = sql.TrimEnd(',');
|
||
//sql += " where order_id = '" + wx_order_id + "';";
|
||
|
||
count = mySql.ExecuteAffectedRows(sql, paramLst.ToArray());
|
||
mySql.Close();
|
||
|
||
if (!string.IsNullOrEmpty(mySql.Message))
|
||
{
|
||
return "{\"code\":500,\"msg\":\"" + mySql.Message + "\",\"affected_rows\":" + count + "}";
|
||
}
|
||
return "{\"code\":200,\"msg\":\"success\",\"affected_rows\":" + count + "}";
|
||
}
|
||
return "{\"code\":19999,\"msg\":\"输入为空\"}";
|
||
}
|
||
|
||
public string WXGetBuyerOrderList(string inputData, bool isDetail = false)
|
||
{
|
||
if (!string.IsNullOrEmpty(inputData))
|
||
{
|
||
if (!WXUserManage.GetSign(inputData))
|
||
return "{\"code\":999,\"msg\":\"校验失败\"}";
|
||
var timeCalc = DateTime.Now;
|
||
|
||
var wx_order_id_in = RegexUtils.GetStringQuery(ref inputData, "wx_order_id_in")?.Replace("'", "\\'");
|
||
var buyer_order_sn_in = RegexUtils.GetStringQuery(ref inputData, "buyer_order_sn_in")?.Replace("'", "\\'");
|
||
if (wx_order_id_in.IsNullOrEmpty() && string.IsNullOrEmpty(buyer_order_sn_in))
|
||
{
|
||
return "{\"code\":500,\"msg\":\"未指定订单\"}";
|
||
}
|
||
var sort_type = RegexUtils.GetStringQuery(ref inputData, "sort_type")?.Replace("'", "\\'");
|
||
var is_not_count = RegexUtils.GetStringQuery(ref inputData, "is_not_count") != "false";
|
||
|
||
int page = RegexUtils.GetStringQuery(ref inputData, "page").ParseToInt();
|
||
int page_size = RegexUtils.GetStringQuery(ref inputData, "page_size").ParseToInt(500);
|
||
|
||
string conn = System.Configuration.ConfigurationManager.ConnectionStrings["ConnKJD"].ConnectionString;
|
||
MysqlUtils mySql = new MysqlUtils(conn);
|
||
|
||
string sql = "SELECT COUNT(id) FROM wxxd.order_pdd_buyer_order o WHERE 1=1 ";
|
||
|
||
string where = "";
|
||
if (!string.IsNullOrWhiteSpace(wx_order_id_in))
|
||
where += " and o.wx_order_id in ('" + wx_order_id_in.Replace(",", "','") + "')";
|
||
if (!string.IsNullOrWhiteSpace(buyer_order_sn_in))
|
||
where += " and o.order_sn in ('" + buyer_order_sn_in.Replace(",", "','") + "')";
|
||
sql += where;
|
||
|
||
var count = 0;
|
||
if (!is_not_count)
|
||
count = mySql.ExecuteRowCount(sql);
|
||
|
||
DataTable dt;
|
||
if (count == 0 && !is_not_count)
|
||
{
|
||
dt = new DataTable();
|
||
}
|
||
else
|
||
{
|
||
sql = "SELECT o.* FROM" +
|
||
" wxxd.order_pdd_buyer_order o " +
|
||
" WHERE 1=1";
|
||
|
||
//where子句
|
||
sql += where;
|
||
|
||
if (sort_type == "asc")
|
||
sql += " ORDER BY o.id ASC";
|
||
else
|
||
sql += " ORDER BY o.id DESC";
|
||
sql += " LIMIT " + Math.Max(page - 1, 0) * page_size + "," + page_size;
|
||
dt = mySql.ExecuteDataTable(sql);
|
||
}
|
||
|
||
mySql.Close();
|
||
if (dt != null)
|
||
{
|
||
try
|
||
{
|
||
List<order_pdd_buyer_order> buyerOrderList = new List<order_pdd_buyer_order>();
|
||
foreach (DataRow row in dt.Rows)
|
||
{
|
||
order_pdd_buyer_order order = new order_pdd_buyer_order
|
||
{
|
||
id = row["id"].ParseToLong(),
|
||
add_time = row["add_time"].ParseToString().ParseToDateTime(),
|
||
after_sales_status = row["after_sales_status"].ParseToNullableInt(),
|
||
buyerId = row["buyerId"].ParseToString(),
|
||
buyerName = row["buyerName"].ParseToString(),
|
||
mdy_time = row["mdy_time"].ParseToString().ParseToDateTime(),
|
||
order_amount = row["order_amount"].ParseToNullableInt(),
|
||
order_detail = row["order_detail"].ParseToString(),
|
||
order_sn = row["order_sn"].ParseToString(),
|
||
order_status_prompt = row["order_status_prompt"].ParseToString(),
|
||
order_time = row["order_time"].ParseToNullableLong(),
|
||
outExpressCompanyCode = row["outExpressCompanyCode"].ParseToString(),
|
||
pre_allocated_order_no = row["pre_allocated_order_no"].ParseToNullableInt(),
|
||
tracking_number = row["tracking_number"].ParseToString(),
|
||
TransitCreateTime = row["TransitCreateTime"].ParseToString().ParseToDateTime(),
|
||
wx_order_id = row["wx_order_id"].ParseToString(),
|
||
wx_sku_id = row["wx_sku_id"].ParseToString(),
|
||
wx_send_type = row["wx_send_type"].ParseToInt(),
|
||
sync_logistics_msg = row["sync_logistics_msg"].ParseToString(),
|
||
};
|
||
buyerOrderList.Add(order);
|
||
}
|
||
JsonSerializerSettings jsonSetting = new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore };
|
||
var data = JsonUtils.SerializeObjectToString(buyerOrderList, jsonSetting);
|
||
var seconds = (DateTime.Now - timeCalc).TotalSeconds.ToString("0.000");
|
||
return "{\"code\":200,\"msg\":\"success\",\"data\":" + data + ",\"count\":" + count + ",\"seconds\":" + seconds + "}";
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
return "{\"code\":500,\"msg\":\"" + ex.Message + "\",\"data\":[],\"count\":" + 0 + "}";
|
||
}
|
||
}
|
||
else
|
||
{
|
||
return "{\"code\":500,\"msg\":\"" + mySql.Message + "\",\"data\":[],\"count\":" + 0 + "}";
|
||
}
|
||
}
|
||
return "{\"code\":19999,\"msg\":\"输入为空\"}";
|
||
}
|
||
|
||
public string WXAddMdyTbBuyerOrder(string inputData)
|
||
{
|
||
if (!string.IsNullOrEmpty(inputData))
|
||
{
|
||
if (!WXUserManage.GetSign(inputData))
|
||
return "{\"code\":999,\"msg\":\"校验失败\"}";
|
||
var timeCalc = DateTime.Now;
|
||
|
||
string wx_order_id = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "wx_order_id"))?.Replace("'", "\\'");
|
||
string wx_sku_id = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "wx_sku_id"))?.Replace("'", "\\'");
|
||
string wx_send_type = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "wx_send_type"))?.Replace("'", "\\'");
|
||
if (wx_send_type.IsNullOrEmpty())
|
||
wx_send_type = "0";
|
||
string TransitCreateTime = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "TransitCreateTime"))?.Replace("'", "\\'");
|
||
string pre_allocated_order_no = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "pre_allocated_order_no"))?.Replace("'", "\\'");
|
||
string buyerId = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "buyerId"))?.Replace("'", "\\'");
|
||
string buyerName = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "buyerName"))?.Replace("'", "\\'");
|
||
string pdd_order_sn = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "pdd_order_sn"))?.Replace("'", "\\'");
|
||
string order_amount = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "order_amount"))?.Replace("'", "\\'");
|
||
string order_time = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "order_time"))?.Replace("'", "\\'");
|
||
string outExpressCompanyCode = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "outExpressCompanyCode"))?.Replace("'", "\\'");
|
||
string tracking_number = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "tracking_number"))?.Replace("'", "\\'");
|
||
string order_status_prompt = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "order_status_prompt"))?.Replace("'", "\\'");
|
||
string after_sales_status = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "after_sales_status"))?.Replace("'", "\\'");
|
||
string order_detail = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "order_detail"))?.Replace("'", "\\'");
|
||
string sync_logistics_msg = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "sync_logistics_msg"))?.Replace("'", "\\'");
|
||
//string wx_order_send_type = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "wx_order_send_type"))?.Replace("'", "\\'");
|
||
//if (string.IsNullOrEmpty(wx_order_send_type))
|
||
// wx_order_send_type = "1";
|
||
if (string.IsNullOrEmpty(wx_order_id) || string.IsNullOrEmpty(pdd_order_sn))
|
||
return "{\"code\":500,\"msg\":\"订单ID不能为空\"}";
|
||
|
||
string conn = System.Configuration.ConfigurationManager.ConnectionStrings["ConnKJD"].ConnectionString;
|
||
MysqlUtils mySql = new MysqlUtils(conn);
|
||
|
||
string sql = "";
|
||
var count = -1;
|
||
|
||
sql = "select id from wxxd.order_tb_buyer_order where order_sn='" + pdd_order_sn + "'";
|
||
var id = mySql.ExecuteFirstInt(sql);
|
||
if (!string.IsNullOrEmpty(mySql.Message))
|
||
{
|
||
mySql.Close();
|
||
return "{\"code\":500,\"msg\":\"" + mySql.Message + "\"}";
|
||
}
|
||
|
||
//sql = "INSERT INTO wxxd.order_tb_buyer_order (wx_order_id,wx_sku_id,TransitCreateTime,pre_allocated_order_no,buyerId,buyerName,order_sn,order_amount,order_time," +
|
||
// "outExpressCompanyCode,tracking_number,order_status_prompt,after_sales_status,order_detail)";
|
||
//sql += "VALUES(@wx_order_id,@wx_sku_id,@TransitCreateTime,@pre_allocated_order_no,@buyerId,@buyerName,@pdd_order_sn,@order_amount,@order_time," +
|
||
// "@outExpressCompanyCode,@tracking_number,@order_status_prompt,@after_sales_status,@order_detail)";
|
||
//sql += " ON DUPLICATE KEY UPDATE wx_order_id=VALUES(@wx_order_id),wx_sku_id=VALUES(@wx_sku_id),TransitCreateTime=VALUES(@TransitCreateTime)," +
|
||
// "pre_allocated_order_no=VALUES(@pre_allocated_order_no),buyerId=VALUES(@buyerId),buyerName=VALUES(@buyerName),order_amount=VALUES(@order_amount)," +
|
||
// "order_time=VALUES(@order_time),outExpressCompanyCode=VALUES(@outExpressCompanyCode),tracking_number=VALUES(@tracking_number),order_status_prompt=VALUES(@order_status_prompt)," +
|
||
// "after_sales_status=VALUES(@after_sales_status),order_detail=VALUES(@order_detail)";
|
||
|
||
if (id == 0)
|
||
{
|
||
sql = "INSERT INTO wxxd.order_tb_buyer_order (wx_order_id,wx_sku_id,wx_send_type,TransitCreateTime,pre_allocated_order_no,buyerId,buyerName,order_sn,order_amount,order_time," +
|
||
"outExpressCompanyCode,tracking_number,order_status_prompt,after_sales_status,order_detail,sync_logistics_msg)";
|
||
sql += "VALUES(@wx_order_id,@wx_sku_id,@wx_send_type,@TransitCreateTime,@pre_allocated_order_no,@buyerId,@buyerName,@pdd_order_sn,@order_amount,@order_time," +
|
||
"@outExpressCompanyCode,@tracking_number,@order_status_prompt,@after_sales_status,@order_detail,@sync_logistics_msg);";
|
||
}
|
||
else
|
||
{
|
||
sql = "UPDATE wxxd.order_tb_buyer_order SET ";
|
||
if (!string.IsNullOrEmpty(wx_order_id))
|
||
sql += " wx_order_id=@wx_order_id,";
|
||
if (!string.IsNullOrEmpty(wx_sku_id))
|
||
sql += " wx_sku_id=@wx_sku_id,";
|
||
if (!string.IsNullOrEmpty(wx_send_type))
|
||
sql += " wx_send_type=@wx_send_type,";
|
||
if (!string.IsNullOrEmpty(TransitCreateTime))
|
||
sql += " TransitCreateTime=@TransitCreateTime,";
|
||
if (!string.IsNullOrEmpty(pre_allocated_order_no))
|
||
sql += " pre_allocated_order_no=@pre_allocated_order_no,";
|
||
if (!string.IsNullOrEmpty(buyerId))
|
||
sql += " buyerId=@buyerId,";
|
||
if (!string.IsNullOrEmpty(buyerName))
|
||
sql += " buyerName=@buyerName,";
|
||
if (!string.IsNullOrEmpty(order_amount))
|
||
sql += " order_amount=@order_amount,";
|
||
if (!string.IsNullOrEmpty(order_time))
|
||
sql += " order_time=@order_time,";
|
||
if (!string.IsNullOrEmpty(outExpressCompanyCode))
|
||
sql += " outExpressCompanyCode=@outExpressCompanyCode,";
|
||
if (!string.IsNullOrEmpty(tracking_number))
|
||
sql += " tracking_number=@tracking_number,";
|
||
if (!string.IsNullOrEmpty(order_status_prompt))
|
||
sql += " order_status_prompt=@order_status_prompt,";
|
||
if (!string.IsNullOrEmpty(after_sales_status))
|
||
sql += " after_sales_status=@after_sales_status,";
|
||
if (!string.IsNullOrEmpty(order_detail))
|
||
sql += " order_detail=@order_detail,";
|
||
if (!string.IsNullOrEmpty(sync_logistics_msg))
|
||
sql += " sync_logistics_msg=@sync_logistics_msg,";
|
||
sql = sql.TrimEnd(',');
|
||
sql += " where order_sn=@pdd_order_sn";
|
||
}
|
||
//260705-105706954352823
|
||
|
||
|
||
List<MySqlParameter> paramLst = new List<MySqlParameter>();
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "wx_order_id", Value = wx_order_id, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "wx_sku_id", Value = wx_sku_id, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.Int32, ParameterName = "wx_send_type", Value = wx_send_type.ParseToInt(), });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.DateTime, ParameterName = "TransitCreateTime", Value = TransitCreateTime.ParseToDateTime(), });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.Int32, ParameterName = "pre_allocated_order_no", Value = pre_allocated_order_no.ParseToInt(), });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "buyerId", Value = buyerId, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "buyerName", Value = buyerName, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "pdd_order_sn", Value = pdd_order_sn, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.Int32, ParameterName = "order_amount", Value = order_amount.ParseToNullableInt(), });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.Int64, ParameterName = "order_time", Value = order_time.ParseToLong(), });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "outExpressCompanyCode", Value = outExpressCompanyCode, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "tracking_number", Value = tracking_number, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "order_status_prompt", Value = order_status_prompt, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.Int32, ParameterName = "after_sales_status", Value = after_sales_status.ParseToInt(), });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "order_detail", Value = order_detail, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "sync_logistics_msg", Value = sync_logistics_msg, });
|
||
//sql = " update `wxxd`.`order_tb_buyer_order` set ";
|
||
//if (!string.IsNullOrEmpty(soft_remark))
|
||
// sql += " soft_remark=" + soft_remark + ",";
|
||
//sql = sql.TrimEnd(',');
|
||
//sql += " where order_id = '" + wx_order_id + "';";
|
||
|
||
count = mySql.ExecuteAffectedRows(sql, paramLst.ToArray());
|
||
mySql.Close();
|
||
|
||
if (!string.IsNullOrEmpty(mySql.Message))
|
||
{
|
||
return "{\"code\":500,\"msg\":\"" + mySql.Message + "\",\"affected_rows\":" + count + "}";
|
||
}
|
||
return "{\"code\":200,\"msg\":\"success\",\"affected_rows\":" + count + "}";
|
||
}
|
||
return "{\"code\":19999,\"msg\":\"输入为空\"}";
|
||
}
|
||
|
||
public string WXGetTbBuyerOrderList(string inputData, bool isDetail = false)
|
||
{
|
||
if (!string.IsNullOrEmpty(inputData))
|
||
{
|
||
if (!WXUserManage.GetSign(inputData))
|
||
return "{\"code\":999,\"msg\":\"校验失败\"}";
|
||
var timeCalc = DateTime.Now;
|
||
|
||
var wx_order_id_in = RegexUtils.GetStringQuery(ref inputData, "wx_order_id_in")?.Replace("'", "\\'");
|
||
var buyer_order_sn_in = RegexUtils.GetStringQuery(ref inputData, "buyer_order_sn_in")?.Replace("'", "\\'");
|
||
if (wx_order_id_in.IsNullOrEmpty() && string.IsNullOrEmpty(buyer_order_sn_in))
|
||
{
|
||
return "{\"code\":500,\"msg\":\"未指定订单\"}";
|
||
}
|
||
var sort_type = RegexUtils.GetStringQuery(ref inputData, "sort_type")?.Replace("'", "\\'");
|
||
var is_not_count = RegexUtils.GetStringQuery(ref inputData, "is_not_count") != "false";
|
||
|
||
int page = RegexUtils.GetStringQuery(ref inputData, "page").ParseToInt();
|
||
int page_size = RegexUtils.GetStringQuery(ref inputData, "page_size").ParseToInt(500);
|
||
|
||
string conn = System.Configuration.ConfigurationManager.ConnectionStrings["ConnKJD"].ConnectionString;
|
||
MysqlUtils mySql = new MysqlUtils(conn);
|
||
|
||
string sql = "SELECT COUNT(id) FROM wxxd.order_tb_buyer_order o WHERE 1=1 ";
|
||
|
||
string where = "";
|
||
if (!string.IsNullOrWhiteSpace(wx_order_id_in))
|
||
where += " and o.wx_order_id in ('" + wx_order_id_in.Replace(",", "','") + "')";
|
||
if (!string.IsNullOrWhiteSpace(buyer_order_sn_in))
|
||
where += " and o.order_sn in ('" + buyer_order_sn_in.Replace(",", "','") + "')";
|
||
sql += where;
|
||
|
||
var count = 0;
|
||
if (!is_not_count)
|
||
count = mySql.ExecuteRowCount(sql);
|
||
|
||
DataTable dt;
|
||
if (count == 0 && !is_not_count)
|
||
{
|
||
dt = new DataTable();
|
||
}
|
||
else
|
||
{
|
||
sql = "SELECT o.* FROM" +
|
||
" wxxd.order_tb_buyer_order o " +
|
||
" WHERE 1=1";
|
||
|
||
//where子句
|
||
sql += where;
|
||
|
||
if (sort_type == "asc")
|
||
sql += " ORDER BY o.id ASC";
|
||
else
|
||
sql += " ORDER BY o.id DESC";
|
||
sql += " LIMIT " + Math.Max(page - 1, 0) * page_size + "," + page_size;
|
||
dt = mySql.ExecuteDataTable(sql);
|
||
}
|
||
|
||
mySql.Close();
|
||
if (dt != null)
|
||
{
|
||
try
|
||
{
|
||
List<order_tb_buyer_order> buyerOrderList = new List<order_tb_buyer_order>();
|
||
foreach (DataRow row in dt.Rows)
|
||
{
|
||
order_tb_buyer_order order = new order_tb_buyer_order
|
||
{
|
||
id = row["id"].ParseToLong(),
|
||
add_time = row["add_time"].ParseToString().ParseToDateTime(),
|
||
after_sales_status = row["after_sales_status"].ParseToNullableInt(),
|
||
buyerId = row["buyerId"].ParseToString(),
|
||
buyerName = row["buyerName"].ParseToString(),
|
||
mdy_time = row["mdy_time"].ParseToString().ParseToDateTime(),
|
||
order_amount = row["order_amount"].ParseToNullableInt(),
|
||
order_detail = row["order_detail"].ParseToString(),
|
||
order_sn = row["order_sn"].ParseToString(),
|
||
order_status_prompt = row["order_status_prompt"].ParseToString(),
|
||
order_time = row["order_time"].ParseToNullableLong(),
|
||
outExpressCompanyCode = row["outExpressCompanyCode"].ParseToString(),
|
||
pre_allocated_order_no = row["pre_allocated_order_no"].ParseToNullableInt(),
|
||
tracking_number = row["tracking_number"].ParseToString(),
|
||
TransitCreateTime = row["TransitCreateTime"].ParseToString().ParseToDateTime(),
|
||
wx_order_id = row["wx_order_id"].ParseToString(),
|
||
wx_sku_id = row["wx_sku_id"].ParseToString(),
|
||
wx_send_type = row["wx_send_type"].ParseToInt(),
|
||
sync_logistics_msg = row["sync_logistics_msg"].ParseToString(),
|
||
};
|
||
buyerOrderList.Add(order);
|
||
}
|
||
JsonSerializerSettings jsonSetting = new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore };
|
||
var data = JsonUtils.SerializeObjectToString(buyerOrderList, jsonSetting);
|
||
var seconds = (DateTime.Now - timeCalc).TotalSeconds.ToString("0.000");
|
||
return "{\"code\":200,\"msg\":\"success\",\"data\":" + data + ",\"count\":" + count + ",\"seconds\":" + seconds + "}";
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
return "{\"code\":500,\"msg\":\"" + ex.Message + "\",\"data\":[],\"count\":" + 0 + "}";
|
||
}
|
||
}
|
||
else
|
||
{
|
||
return "{\"code\":500,\"msg\":\"" + mySql.Message + "\",\"data\":[],\"count\":" + 0 + "}";
|
||
}
|
||
}
|
||
return "{\"code\":19999,\"msg\":\"输入为空\"}";
|
||
}
|
||
|
||
|
||
public string WXAddMdyBuyerAfterSale(string inputData)
|
||
{
|
||
if (!string.IsNullOrEmpty(inputData))
|
||
{
|
||
if (!WXUserManage.GetSign(inputData))
|
||
return "{\"code\":999,\"msg\":\"校验失败\"}";
|
||
var timeCalc = DateTime.Now;
|
||
|
||
string wx_order_id = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "wx_order_id"))?.Replace("'", "\\'");
|
||
string wx_sku_id = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "wx_sku_id"))?.Replace("'", "\\'");
|
||
string wx_send_type = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "wx_send_type"))?.Replace("'", "\\'");
|
||
if (wx_send_type.IsNullOrEmpty())
|
||
wx_send_type = "0";
|
||
string TransitCreateTime = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "TransitCreateTime"))?.Replace("'", "\\'");
|
||
string pre_allocated_order_no = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "pre_allocated_order_no"))?.Replace("'", "\\'");
|
||
string buyerId = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "buyerId"))?.Replace("'", "\\'");
|
||
string buyerName = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "buyerName"))?.Replace("'", "\\'");
|
||
string orderSn = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "orderSn"))?.Replace("'", "\\'");
|
||
string afterSalesId = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "afterSalesId"))?.Replace("'", "\\'");
|
||
string orderAmount = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "orderAmount"))?.Replace("'", "\\'");
|
||
string orderDate = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "orderDate"))?.Replace("'", "\\'");
|
||
string order_detail = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "order_detail"))?.Replace("'", "\\'");
|
||
string refundAmount = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "refundAmount"))?.Replace("'", "\\'");
|
||
string statusText = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "statusText"))?.Replace("'", "\\'");
|
||
string afterSaleAddress = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "afterSaleAddress"))?.Replace("'", "\\'");
|
||
string is_mdy = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "is_mdy"))?.Replace("'", "\\'");
|
||
if (string.IsNullOrEmpty(wx_order_id) || string.IsNullOrEmpty(orderSn) || string.IsNullOrEmpty(afterSalesId))
|
||
return "{\"code\":500,\"msg\":\"订单ID不能为空\"}";
|
||
|
||
string conn = System.Configuration.ConfigurationManager.ConnectionStrings["ConnKJD"].ConnectionString;
|
||
MysqlUtils mySql = new MysqlUtils(conn);
|
||
|
||
string sql = "";
|
||
var count = -1;
|
||
|
||
sql = "select id from wxxd.order_pdd_buyer_after_sale where afterSalesId='" + afterSalesId + "'";
|
||
var id = mySql.ExecuteFirstInt(sql);
|
||
if (!string.IsNullOrEmpty(mySql.Message))
|
||
{
|
||
mySql.Close();
|
||
return "{\"code\":500,\"msg\":\"" + mySql.Message + "\"}";
|
||
}
|
||
|
||
if (id == 0 && is_mdy != "true")
|
||
{
|
||
sql = "INSERT INTO wxxd.order_pdd_buyer_after_sale (wx_order_id,wx_sku_id,wx_send_type,TransitCreateTime,pre_allocated_order_no,buyerId,buyerName,orderSn,afterSalesId,orderAmount,orderDate," +
|
||
"refundAmount,statusText,afterSaleAddress,order_detail)";
|
||
sql += "VALUES(@wx_order_id,@wx_sku_id,@wx_send_type,@TransitCreateTime,@pre_allocated_order_no,@buyerId,@buyerName,@orderSn,@afterSalesId,@orderAmount,@orderDate," +
|
||
"@refundAmount,@statusText,@afterSaleAddress,@order_detail);";
|
||
}
|
||
else
|
||
{
|
||
sql = "UPDATE wxxd.order_pdd_buyer_after_sale SET ";
|
||
if (!string.IsNullOrEmpty(wx_order_id))
|
||
sql += " wx_order_id=@wx_order_id,";
|
||
if (!string.IsNullOrEmpty(wx_sku_id))
|
||
sql += " wx_sku_id=@wx_sku_id,";
|
||
if (!string.IsNullOrEmpty(wx_send_type))
|
||
sql += " wx_send_type=@wx_send_type,";
|
||
if (!string.IsNullOrEmpty(TransitCreateTime))
|
||
sql += " TransitCreateTime=@TransitCreateTime,";
|
||
if (!string.IsNullOrEmpty(pre_allocated_order_no))
|
||
sql += " pre_allocated_order_no=@pre_allocated_order_no,";
|
||
if (!string.IsNullOrEmpty(buyerId))
|
||
sql += " buyerId=@buyerId,";
|
||
if (!string.IsNullOrEmpty(buyerName))
|
||
sql += " buyerName=@buyerName,";
|
||
if (!string.IsNullOrEmpty(orderSn))
|
||
sql += " orderSn=@orderSn,";
|
||
if (!string.IsNullOrEmpty(orderAmount))
|
||
sql += " orderAmount=@orderAmount,";
|
||
if (!string.IsNullOrEmpty(refundAmount))
|
||
sql += " refundAmount=@refundAmount,";
|
||
if (!string.IsNullOrEmpty(statusText))
|
||
sql += " statusText=@statusText,";
|
||
if (!string.IsNullOrEmpty(orderDate))
|
||
sql += " orderDate=@orderDate,";
|
||
if (!string.IsNullOrEmpty(afterSaleAddress))
|
||
sql += " afterSaleAddress=@afterSaleAddress,";
|
||
|
||
if (!string.IsNullOrEmpty(order_detail))
|
||
sql += " order_detail=@order_detail,";
|
||
sql = sql.TrimEnd(',');
|
||
sql += " where afterSalesId=@afterSalesId";
|
||
}
|
||
|
||
List<MySqlParameter> paramLst = new List<MySqlParameter>();
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "wx_order_id", Value = wx_order_id, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "wx_sku_id", Value = wx_sku_id, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.Int32, ParameterName = "wx_send_type", Value = wx_send_type.ParseToInt(), });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.DateTime, ParameterName = "TransitCreateTime", Value = TransitCreateTime.ParseToDateTime(), });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.Int32, ParameterName = "pre_allocated_order_no", Value = pre_allocated_order_no.ParseToInt(), });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "buyerId", Value = buyerId, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "buyerName", Value = buyerName, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "statusText", Value = statusText, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "orderSn", Value = orderSn, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "afterSalesId", Value = afterSalesId, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.Int32, ParameterName = "refundAmount", Value = refundAmount.ParseToNullableInt(), });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.Int32, ParameterName = "orderAmount", Value = orderAmount.ParseToNullableInt(), });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.Int64, ParameterName = "orderDate", Value = orderDate.ParseToLong(), });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "afterSaleAddress", Value = afterSaleAddress, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "order_detail", Value = order_detail, });
|
||
|
||
count = mySql.ExecuteAffectedRows(sql, paramLst.ToArray());
|
||
mySql.Close();
|
||
|
||
if (!string.IsNullOrEmpty(mySql.Message))
|
||
{
|
||
return "{\"code\":500,\"msg\":\"" + mySql.Message + "\",\"affected_rows\":" + count + "}";
|
||
}
|
||
return "{\"code\":200,\"msg\":\"success\",\"affected_rows\":" + count + "}";
|
||
}
|
||
return "{\"code\":19999,\"msg\":\"输入为空\"}";
|
||
}
|
||
|
||
public string WXGetBuyerAfterSaleList(string inputData, bool isDetail = false)
|
||
{
|
||
if (!string.IsNullOrEmpty(inputData))
|
||
{
|
||
if (!WXUserManage.GetSign(inputData))
|
||
return "{\"code\":999,\"msg\":\"校验失败\"}";
|
||
var timeCalc = DateTime.Now;
|
||
|
||
var wx_order_id_in = RegexUtils.GetStringQuery(ref inputData, "wx_order_id_in")?.Replace("'", "\\'");
|
||
var buyer_order_sn_in = RegexUtils.GetStringQuery(ref inputData, "buyer_order_sn_in")?.Replace("'", "\\'");
|
||
if (wx_order_id_in.IsNullOrEmpty() && string.IsNullOrEmpty(buyer_order_sn_in))
|
||
{
|
||
return "{\"code\":500,\"msg\":\"未指定订单\"}";
|
||
}
|
||
var sort_type = RegexUtils.GetStringQuery(ref inputData, "sort_type")?.Replace("'", "\\'");
|
||
var is_not_count = RegexUtils.GetStringQuery(ref inputData, "is_not_count") != "false";
|
||
|
||
int page = RegexUtils.GetStringQuery(ref inputData, "page").ParseToInt();
|
||
int page_size = RegexUtils.GetStringQuery(ref inputData, "page_size").ParseToInt(500);
|
||
|
||
string conn = System.Configuration.ConfigurationManager.ConnectionStrings["ConnKJD"].ConnectionString;
|
||
MysqlUtils mySql = new MysqlUtils(conn);
|
||
|
||
string sql = "SELECT COUNT(id) FROM wxxd.order_pdd_buyer_after_sale o WHERE 1=1 ";
|
||
|
||
string where = "";
|
||
if (!string.IsNullOrWhiteSpace(wx_order_id_in))
|
||
where += " and o.wx_order_id in ('" + wx_order_id_in.Replace(",", "','") + "')";
|
||
if (!string.IsNullOrWhiteSpace(buyer_order_sn_in))
|
||
where += " and o.order_sn in ('" + buyer_order_sn_in.Replace(",", "','") + "')";
|
||
sql += where;
|
||
|
||
var count = 0;
|
||
if (!is_not_count)
|
||
count = mySql.ExecuteRowCount(sql);
|
||
|
||
DataTable dt;
|
||
if (count == 0 && !is_not_count)
|
||
{
|
||
dt = new DataTable();
|
||
}
|
||
else
|
||
{
|
||
sql = "SELECT o.* FROM" +
|
||
" wxxd.order_pdd_buyer_after_sale o " +
|
||
" WHERE 1=1";
|
||
|
||
//where子句
|
||
sql += where;
|
||
|
||
if (sort_type == "asc")
|
||
sql += " ORDER BY o.id ASC";
|
||
else
|
||
sql += " ORDER BY o.id DESC";
|
||
sql += " LIMIT " + Math.Max(page - 1, 0) * page_size + "," + page_size;
|
||
dt = mySql.ExecuteDataTable(sql);
|
||
}
|
||
|
||
mySql.Close();
|
||
if (dt != null)
|
||
{
|
||
try
|
||
{
|
||
List<order_pdd_buyer_after_sale> buyerAfterSaleLst = new List<order_pdd_buyer_after_sale>();
|
||
foreach (DataRow row in dt.Rows)
|
||
{
|
||
order_pdd_buyer_after_sale afterSale = new order_pdd_buyer_after_sale
|
||
{
|
||
id = row["id"].ParseToLong(),
|
||
add_time = row["add_time"].ParseToString().ParseToDateTime(),
|
||
afterSalesId = row["afterSalesId"].ParseToString(),
|
||
buyerId = row["buyerId"].ParseToString(),
|
||
buyerName = row["buyerName"].ParseToString(),
|
||
mdy_time = row["mdy_time"].ParseToString().ParseToDateTime(),
|
||
orderAmount = row["orderAmount"].ParseToNullableInt(),
|
||
order_detail = row["order_detail"].ParseToString(),
|
||
orderSn = row["orderSn"].ParseToString(),
|
||
orderDate = row["orderDate"].ParseToNullableInt(),
|
||
refundAmount = row["refundAmount"].ParseToNullableInt(),
|
||
statusText = row["statusText"].ParseToString(),
|
||
afterSaleAddress = row["afterSaleAddress"].ParseToString(),
|
||
pre_allocated_order_no = row["pre_allocated_order_no"].ParseToNullableInt(),
|
||
TransitCreateTime = row["TransitCreateTime"].ParseToString().ParseToDateTime(),
|
||
wx_order_id = row["wx_order_id"].ParseToString(),
|
||
wx_sku_id = row["wx_sku_id"].ParseToString(),
|
||
wx_send_type = row["wx_send_type"].ParseToInt(),
|
||
};
|
||
buyerAfterSaleLst.Add(afterSale);
|
||
}
|
||
JsonSerializerSettings jsonSetting = new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore };
|
||
var data = JsonUtils.SerializeObjectToString(buyerAfterSaleLst, jsonSetting);
|
||
var seconds = (DateTime.Now - timeCalc).TotalSeconds.ToString("0.000");
|
||
return "{\"code\":200,\"msg\":\"success\",\"data\":" + data + ",\"count\":" + count + ",\"seconds\":" + seconds + "}";
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
return "{\"code\":500,\"msg\":\"" + ex.Message + "\",\"data\":[],\"count\":" + 0 + "}";
|
||
}
|
||
}
|
||
else
|
||
{
|
||
return "{\"code\":500,\"msg\":\"" + mySql.Message + "\",\"data\":[],\"count\":" + 0 + "}";
|
||
}
|
||
}
|
||
return "{\"code\":19999,\"msg\":\"输入为空\"}";
|
||
}
|
||
|
||
|
||
public string WXAddMdyTbBuyerAfterSale(string inputData)
|
||
{
|
||
if (!string.IsNullOrEmpty(inputData))
|
||
{
|
||
if (!WXUserManage.GetSign(inputData))
|
||
return "{\"code\":999,\"msg\":\"校验失败\"}";
|
||
var timeCalc = DateTime.Now;
|
||
|
||
string wx_order_id = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "wx_order_id"))?.Replace("'", "\\'");
|
||
string wx_sku_id = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "wx_sku_id"))?.Replace("'", "\\'");
|
||
string wx_send_type = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "wx_send_type"))?.Replace("'", "\\'");
|
||
if (wx_send_type.IsNullOrEmpty())
|
||
wx_send_type = "0";
|
||
string TransitCreateTime = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "TransitCreateTime"))?.Replace("'", "\\'");
|
||
string pre_allocated_order_no = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "pre_allocated_order_no"))?.Replace("'", "\\'");
|
||
string buyerId = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "buyerId"))?.Replace("'", "\\'");
|
||
string buyerName = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "buyerName"))?.Replace("'", "\\'");
|
||
string orderSn = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "orderSn"))?.Replace("'", "\\'");
|
||
string afterSalesId = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "afterSalesId"))?.Replace("'", "\\'");
|
||
string orderAmount = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "orderAmount"))?.Replace("'", "\\'");
|
||
string orderDate = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "orderDate"))?.Replace("'", "\\'");
|
||
string order_detail = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "order_detail"))?.Replace("'", "\\'");
|
||
string refundAmount = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "refundAmount"))?.Replace("'", "\\'");
|
||
string statusText = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "statusText"))?.Replace("'", "\\'");
|
||
string afterSaleAddress = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "afterSaleAddress"))?.Replace("'", "\\'");
|
||
string is_mdy = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "is_mdy"))?.Replace("'", "\\'");
|
||
if (string.IsNullOrEmpty(wx_order_id) || string.IsNullOrEmpty(orderSn) || string.IsNullOrEmpty(afterSalesId))
|
||
return "{\"code\":500,\"msg\":\"订单ID不能为空\"}";
|
||
|
||
string conn = System.Configuration.ConfigurationManager.ConnectionStrings["ConnKJD"].ConnectionString;
|
||
MysqlUtils mySql = new MysqlUtils(conn);
|
||
|
||
string sql = "";
|
||
var count = -1;
|
||
|
||
sql = "select id from wxxd.order_tb_buyer_after_sale where afterSalesId='" + afterSalesId + "'";
|
||
var id = mySql.ExecuteFirstInt(sql);
|
||
if (!string.IsNullOrEmpty(mySql.Message))
|
||
{
|
||
mySql.Close();
|
||
return "{\"code\":500,\"msg\":\"" + mySql.Message + "\"}";
|
||
}
|
||
|
||
if (id == 0 && is_mdy != "true")
|
||
{
|
||
sql = "INSERT INTO wxxd.order_tb_buyer_after_sale (wx_order_id,wx_sku_id,wx_send_type,TransitCreateTime,pre_allocated_order_no,buyerId,buyerName,orderSn,afterSalesId,orderAmount,orderDate," +
|
||
"refundAmount,statusText,afterSaleAddress,order_detail)";
|
||
sql += "VALUES(@wx_order_id,@wx_sku_id,@wx_send_type,@TransitCreateTime,@pre_allocated_order_no,@buyerId,@buyerName,@orderSn,@afterSalesId,@orderAmount,@orderDate," +
|
||
"@refundAmount,@statusText,@afterSaleAddress,@order_detail);";
|
||
}
|
||
else
|
||
{
|
||
sql = "UPDATE wxxd.order_tb_buyer_after_sale SET ";
|
||
if (!string.IsNullOrEmpty(wx_order_id))
|
||
sql += " wx_order_id=@wx_order_id,";
|
||
if (!string.IsNullOrEmpty(wx_sku_id))
|
||
sql += " wx_sku_id=@wx_sku_id,";
|
||
if (!string.IsNullOrEmpty(wx_send_type))
|
||
sql += " wx_send_type=@wx_send_type,";
|
||
if (!string.IsNullOrEmpty(TransitCreateTime))
|
||
sql += " TransitCreateTime=@TransitCreateTime,";
|
||
if (!string.IsNullOrEmpty(pre_allocated_order_no))
|
||
sql += " pre_allocated_order_no=@pre_allocated_order_no,";
|
||
if (!string.IsNullOrEmpty(buyerId))
|
||
sql += " buyerId=@buyerId,";
|
||
if (!string.IsNullOrEmpty(buyerName))
|
||
sql += " buyerName=@buyerName,";
|
||
if (!string.IsNullOrEmpty(orderSn))
|
||
sql += " orderSn=@orderSn,";
|
||
if (!string.IsNullOrEmpty(orderAmount))
|
||
sql += " orderAmount=@orderAmount,";
|
||
if (!string.IsNullOrEmpty(refundAmount))
|
||
sql += " refundAmount=@refundAmount,";
|
||
if (!string.IsNullOrEmpty(statusText))
|
||
sql += " statusText=@statusText,";
|
||
if (!string.IsNullOrEmpty(orderDate))
|
||
sql += " orderDate=@orderDate,";
|
||
if (!string.IsNullOrEmpty(afterSaleAddress))
|
||
sql += " afterSaleAddress=@afterSaleAddress,";
|
||
|
||
if (!string.IsNullOrEmpty(order_detail))
|
||
sql += " order_detail=@order_detail,";
|
||
sql = sql.TrimEnd(',');
|
||
sql += " where afterSalesId=@afterSalesId";
|
||
}
|
||
|
||
List<MySqlParameter> paramLst = new List<MySqlParameter>();
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "wx_order_id", Value = wx_order_id, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "wx_sku_id", Value = wx_sku_id, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.Int32, ParameterName = "wx_send_type", Value = wx_send_type.ParseToInt(), });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.DateTime, ParameterName = "TransitCreateTime", Value = TransitCreateTime.ParseToDateTime(), });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.Int32, ParameterName = "pre_allocated_order_no", Value = pre_allocated_order_no.ParseToInt(), });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "buyerId", Value = buyerId, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "buyerName", Value = buyerName, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "statusText", Value = statusText, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "orderSn", Value = orderSn, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "afterSalesId", Value = afterSalesId, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.Int32, ParameterName = "refundAmount", Value = refundAmount.ParseToNullableInt(), });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.Int32, ParameterName = "orderAmount", Value = orderAmount.ParseToNullableInt(), });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.Int64, ParameterName = "orderDate", Value = orderDate.ParseToLong(), });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "afterSaleAddress", Value = afterSaleAddress, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "order_detail", Value = order_detail, });
|
||
|
||
count = mySql.ExecuteAffectedRows(sql, paramLst.ToArray());
|
||
mySql.Close();
|
||
|
||
if (!string.IsNullOrEmpty(mySql.Message))
|
||
{
|
||
return "{\"code\":500,\"msg\":\"" + mySql.Message + "\",\"affected_rows\":" + count + "}";
|
||
}
|
||
return "{\"code\":200,\"msg\":\"success\",\"affected_rows\":" + count + "}";
|
||
}
|
||
return "{\"code\":19999,\"msg\":\"输入为空\"}";
|
||
}
|
||
|
||
public string WXGetTbBuyerAfterSaleList(string inputData, bool isDetail = false)
|
||
{
|
||
if (!string.IsNullOrEmpty(inputData))
|
||
{
|
||
if (!WXUserManage.GetSign(inputData))
|
||
return "{\"code\":999,\"msg\":\"校验失败\"}";
|
||
var timeCalc = DateTime.Now;
|
||
|
||
var wx_order_id_in = RegexUtils.GetStringQuery(ref inputData, "wx_order_id_in")?.Replace("'", "\\'");
|
||
var buyer_order_sn_in = RegexUtils.GetStringQuery(ref inputData, "buyer_order_sn_in")?.Replace("'", "\\'");
|
||
if (wx_order_id_in.IsNullOrEmpty() && string.IsNullOrEmpty(buyer_order_sn_in))
|
||
{
|
||
return "{\"code\":500,\"msg\":\"未指定订单\"}";
|
||
}
|
||
var sort_type = RegexUtils.GetStringQuery(ref inputData, "sort_type")?.Replace("'", "\\'");
|
||
var is_not_count = RegexUtils.GetStringQuery(ref inputData, "is_not_count") != "false";
|
||
|
||
int page = RegexUtils.GetStringQuery(ref inputData, "page").ParseToInt();
|
||
int page_size = RegexUtils.GetStringQuery(ref inputData, "page_size").ParseToInt(500);
|
||
|
||
string conn = System.Configuration.ConfigurationManager.ConnectionStrings["ConnKJD"].ConnectionString;
|
||
MysqlUtils mySql = new MysqlUtils(conn);
|
||
|
||
string sql = "SELECT COUNT(id) FROM wxxd.order_tb_buyer_after_sale o WHERE 1=1 ";
|
||
|
||
string where = "";
|
||
if (!string.IsNullOrWhiteSpace(wx_order_id_in))
|
||
where += " and o.wx_order_id in ('" + wx_order_id_in.Replace(",", "','") + "')";
|
||
if (!string.IsNullOrWhiteSpace(buyer_order_sn_in))
|
||
where += " and o.order_sn in ('" + buyer_order_sn_in.Replace(",", "','") + "')";
|
||
sql += where;
|
||
|
||
var count = 0;
|
||
if (!is_not_count)
|
||
count = mySql.ExecuteRowCount(sql);
|
||
|
||
DataTable dt;
|
||
if (count == 0 && !is_not_count)
|
||
{
|
||
dt = new DataTable();
|
||
}
|
||
else
|
||
{
|
||
sql = "SELECT o.* FROM" +
|
||
" wxxd.order_tb_buyer_after_sale o " +
|
||
" WHERE 1=1";
|
||
|
||
//where子句
|
||
sql += where;
|
||
|
||
if (sort_type == "asc")
|
||
sql += " ORDER BY o.id ASC";
|
||
else
|
||
sql += " ORDER BY o.id DESC";
|
||
sql += " LIMIT " + Math.Max(page - 1, 0) * page_size + "," + page_size;
|
||
dt = mySql.ExecuteDataTable(sql);
|
||
}
|
||
|
||
mySql.Close();
|
||
if (dt != null)
|
||
{
|
||
try
|
||
{
|
||
List<order_tb_buyer_after_sale> buyerAfterSaleLst = new List<order_tb_buyer_after_sale>();
|
||
foreach (DataRow row in dt.Rows)
|
||
{
|
||
order_tb_buyer_after_sale afterSale = new order_tb_buyer_after_sale
|
||
{
|
||
id = row["id"].ParseToLong(),
|
||
add_time = row["add_time"].ParseToString().ParseToDateTime(),
|
||
afterSalesId = row["afterSalesId"].ParseToString(),
|
||
buyerId = row["buyerId"].ParseToString(),
|
||
buyerName = row["buyerName"].ParseToString(),
|
||
mdy_time = row["mdy_time"].ParseToString().ParseToDateTime(),
|
||
orderAmount = row["orderAmount"].ParseToNullableInt(),
|
||
order_detail = row["order_detail"].ParseToString(),
|
||
orderSn = row["orderSn"].ParseToString(),
|
||
orderDate = row["orderDate"].ParseToNullableInt(),
|
||
refundAmount = row["refundAmount"].ParseToNullableInt(),
|
||
statusText = row["statusText"].ParseToString(),
|
||
afterSaleAddress = row["afterSaleAddress"].ParseToString(),
|
||
pre_allocated_order_no = row["pre_allocated_order_no"].ParseToNullableInt(),
|
||
TransitCreateTime = row["TransitCreateTime"].ParseToString().ParseToDateTime(),
|
||
wx_order_id = row["wx_order_id"].ParseToString(),
|
||
wx_sku_id = row["wx_sku_id"].ParseToString(),
|
||
wx_send_type = row["wx_send_type"].ParseToInt(),
|
||
};
|
||
buyerAfterSaleLst.Add(afterSale);
|
||
}
|
||
JsonSerializerSettings jsonSetting = new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore };
|
||
var data = JsonUtils.SerializeObjectToString(buyerAfterSaleLst, jsonSetting);
|
||
var seconds = (DateTime.Now - timeCalc).TotalSeconds.ToString("0.000");
|
||
return "{\"code\":200,\"msg\":\"success\",\"data\":" + data + ",\"count\":" + count + ",\"seconds\":" + seconds + "}";
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
return "{\"code\":500,\"msg\":\"" + ex.Message + "\",\"data\":[],\"count\":" + 0 + "}";
|
||
}
|
||
}
|
||
else
|
||
{
|
||
return "{\"code\":500,\"msg\":\"" + mySql.Message + "\",\"data\":[],\"count\":" + 0 + "}";
|
||
}
|
||
}
|
||
return "{\"code\":19999,\"msg\":\"输入为空\"}";
|
||
}
|
||
|
||
|
||
public string WXGetTransitWarehouseAfterSaleList(string inputData)
|
||
{
|
||
if (!string.IsNullOrEmpty(inputData))
|
||
{
|
||
if (!WXUserManage.GetSign(inputData))
|
||
return "{\"code\":999,\"msg\":\"校验失败\"}";
|
||
var timeCalc = DateTime.Now;
|
||
|
||
var wx_order_id_in = RegexUtils.GetStringQuery(ref inputData, "wx_order_id_in")?.Replace("'", "\\'");
|
||
var buyer_order_sn_in = RegexUtils.GetStringQuery(ref inputData, "buyer_order_sn_in")?.Replace("'", "\\'");
|
||
if (wx_order_id_in.IsNullOrEmpty() && string.IsNullOrEmpty(buyer_order_sn_in))
|
||
{
|
||
return "{\"code\":500,\"msg\":\"未指定订单\"}";
|
||
}
|
||
var sort_type = RegexUtils.GetStringQuery(ref inputData, "sort_type")?.Replace("'", "\\'");
|
||
var is_not_count = RegexUtils.GetStringQuery(ref inputData, "is_not_count") != "false";
|
||
|
||
int page = RegexUtils.GetStringQuery(ref inputData, "page").ParseToInt();
|
||
int page_size = RegexUtils.GetStringQuery(ref inputData, "page_size").ParseToInt(1000);
|
||
|
||
string conn = System.Configuration.ConfigurationManager.ConnectionStrings["ConnKJD"].ConnectionString;
|
||
MysqlUtils mySql = new MysqlUtils(conn);
|
||
|
||
string sql = "SELECT COUNT(id) FROM erp.oms_wei_external_procurement_after_sale o WHERE 1=1 ";
|
||
|
||
string where = "";
|
||
if (!string.IsNullOrWhiteSpace(wx_order_id_in))
|
||
where += " and o.order_no in ('" + wx_order_id_in.Replace(",", "','") + "')";
|
||
if (!string.IsNullOrWhiteSpace(buyer_order_sn_in))
|
||
where += " and o.order_code in ('" + buyer_order_sn_in.Replace(",", "','") + "')";
|
||
sql += where;
|
||
|
||
var count = 0;
|
||
if (!is_not_count)
|
||
count = mySql.ExecuteRowCount(sql);
|
||
|
||
DataTable dt;
|
||
if (count == 0 && !is_not_count)
|
||
{
|
||
dt = new DataTable();
|
||
}
|
||
else
|
||
{
|
||
sql = "SELECT o.* FROM" +
|
||
" erp.oms_wei_external_procurement_after_sale o " +
|
||
" WHERE 1=1";
|
||
|
||
//where子句
|
||
sql += where;
|
||
|
||
if (sort_type == "asc")
|
||
sql += " ORDER BY o.id ASC";
|
||
else
|
||
sql += " ORDER BY o.id DESC";
|
||
sql += " LIMIT " + Math.Max(page - 1, 0) * page_size + "," + page_size;
|
||
dt = mySql.ExecuteDataTable(sql);
|
||
}
|
||
|
||
mySql.Close();
|
||
if (dt != null)
|
||
{
|
||
try
|
||
{
|
||
List<oms_wei_external_procurement_after_sale_info> refundItemList = new List<oms_wei_external_procurement_after_sale_info>();
|
||
foreach (DataRow row in dt.Rows)
|
||
{
|
||
oms_wei_external_procurement_after_sale_info order = new oms_wei_external_procurement_after_sale_info
|
||
{
|
||
id = row["id"].ParseToLong(),
|
||
order_no = row["order_no"].ParseToString(),
|
||
order_code = row["order_code"].ParseToString(),
|
||
inbound_time = row["inbound_time"].ParseToNullableString().ParseToDateTimeNullable(),
|
||
outbound_time = row["outbound_time"].ParseToNullableString().ParseToDateTimeNullable(),
|
||
account_user = row["account_user"].ParseToString(),
|
||
after_sale_no = row["after_sale_no"].ParseToString(),
|
||
created_time = row["created_time"].ParseToNullableString().ParseToDateTimeNullable(),
|
||
create_user = row["create_user"].ParseToString(),
|
||
downstream_express_code = row["downstream_express_code"].ParseToString(),
|
||
downstream_waybill = row["downstream_waybill"].ParseToString(),
|
||
external_order_no = row["external_order_no"].ParseToString(),
|
||
raw_message = row["raw_message"].ParseToString(),
|
||
recipient_name = row["recipient_name"].ParseToString(),
|
||
recipient_phone = row["recipient_phone"].ParseToString(),
|
||
refund_city = row["refund_city"].ParseToString(),
|
||
refund_county = row["refund_county"].ParseToString(),
|
||
refund_detail_address = row["refund_detail_address"].ParseToString(),
|
||
refund_province = row["refund_province"].ParseToString(),
|
||
refund_waybill = row["refund_waybill"].ParseToString(),
|
||
return_express_company = row["return_express_company"].ParseToString(),
|
||
return_or_exchange = row["return_or_exchange"].ParseToNullableInt(),
|
||
status = row["status"].ParseToNullableInt(),
|
||
updated_time = row["updated_time"].ParseToNullableString().ParseToDateTimeNullable(),
|
||
update_user = row["update_user"].ParseToString(),
|
||
warehouse_status = row["warehouse_status"].ParseToNullableInt(),
|
||
postage = row["postage"].ParseToNullableInt(),
|
||
location_code = row["location_code"].ParseToNullableString(),
|
||
location_write_time = row["location_write_time"].ParseToNullableString().ParseToDateTimeNullable(),
|
||
pack_type = row["pack_type"].ParseToNullableInt(),
|
||
order_void_status = row["order_void_status"].ParseToNullableInt(),
|
||
};
|
||
if(order.order_no == "3739776364860294912")
|
||
{
|
||
|
||
}
|
||
refundItemList.Add(order);
|
||
}
|
||
JsonSerializerSettings jsonSetting = new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore };
|
||
var data = JsonUtils.SerializeObjectToString(refundItemList, jsonSetting);
|
||
var seconds = (DateTime.Now - timeCalc).TotalSeconds.ToString("0.000");
|
||
return "{\"code\":200,\"msg\":\"success\",\"data\":" + data + ",\"count\":" + count + ",\"seconds\":" + seconds + "}";
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
return "{\"code\":500,\"msg\":\"" + ex.Message + "\",\"data\":[],\"count\":" + 0 + "}";
|
||
}
|
||
}
|
||
else
|
||
{
|
||
return "{\"code\":500,\"msg\":\"" + mySql.Message + "\",\"data\":[],\"count\":" + 0 + "}";
|
||
}
|
||
}
|
||
return "{\"code\":19999,\"msg\":\"输入为空\"}";
|
||
}
|
||
|
||
/// <summary>
|
||
/// 订单异常重拍
|
||
/// </summary>
|
||
/// <param name="inputData"></param>
|
||
/// <returns></returns>
|
||
public string WXUpdateAbnormalTransitOrder(string inputData)
|
||
{
|
||
if (!string.IsNullOrEmpty(inputData))
|
||
{
|
||
if (!WXUserManage.GetSign(inputData))
|
||
return "{\"code\":999,\"msg\":\"校验失败\"}";
|
||
|
||
var out_order_no = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "out_order_no"))?.Replace("'", "\\'");
|
||
var order_no = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "order_no"))?.Replace("'", "\\'");
|
||
var order_sku_id = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "order_sku_id"))?.Replace("'", "\\'");
|
||
var buyer_account = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "buyer_account"))?.Replace("'", "\\'");
|
||
var out_amount = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "out_amount"))?.Replace("'", "\\'");
|
||
var purchaser_note = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "purchaser_note"))?.Replace("'", "\\'");
|
||
var refund_status = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "refund_status"))?.Replace("'", "\\'");
|
||
var old_out_order_no = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "old_out_order_no"))?.Replace("'", "\\'");
|
||
var old_order_no = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "old_order_no"))?.Replace("'", "\\'");
|
||
var old_order_sku_id = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "old_order_sku_id"))?.Replace("'", "\\'");
|
||
var old_buyer_account = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "old_buyer_account"))?.Replace("'", "\\'");
|
||
var old_out_amount = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "old_out_amount"))?.Replace("'", "\\'");
|
||
var old_purchaser_note = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "old_purchaser_note"))?.Replace("'", "\\'");
|
||
var old_refund_status = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "old_refund_status"))?.Replace("'", "\\'");
|
||
var order_code = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "order_code"))?.Replace("'", "\\'");
|
||
if (order_code.IsNullOrEmpty() || old_purchaser_note.IsNullOrEmpty() || old_out_amount.ParseToInt().IsNullOrZero() || old_buyer_account.IsNullOrEmpty() || old_order_no.IsNullOrEmpty() || old_out_order_no.IsNullOrEmpty() ||
|
||
purchaser_note.IsNullOrEmpty() || out_amount.ParseToInt().IsNullOrZero() || buyer_account.IsNullOrEmpty() || order_no.IsNullOrEmpty() || out_order_no.IsNullOrEmpty())
|
||
{
|
||
return "{\"code\":500,\"msg\":\"异常单记录信息不完整\",\"affected_rows\":" + 0 + "}";
|
||
}
|
||
|
||
string conn = System.Configuration.ConfigurationManager.ConnectionStrings["ConnKJD"].ConnectionString;
|
||
MysqlUtils mySql = new MysqlUtils(conn, true);
|
||
|
||
string sql;
|
||
|
||
sql = "INSERT INTO wxxd.order_abnormal_transit_order_rebuy_record (out_order_no,order_no,order_sku_id,buyer_account,out_amount,purchaser_note,refund_status,order_code) ";
|
||
sql += " VALUES('" + old_out_order_no + "','" + old_order_no + "','" + old_order_sku_id + "','" + old_buyer_account + "'," + old_out_amount + ",'" +
|
||
old_purchaser_note + "','" + old_refund_status + "','" + order_code + "')";
|
||
var rows = mySql.ExecuteAffectedRows(sql);
|
||
if (!mySql.Message.IsNullOrEmpty())
|
||
{
|
||
mySql.RollBack();
|
||
mySql.Close();
|
||
return "{\"code\":500,\"msg\":\"" + mySql.Message + "\",\"affected_rows\":" + rows + "}";
|
||
}
|
||
if (rows == 0)
|
||
{
|
||
mySql.RollBack();
|
||
mySql.Close();
|
||
return "{\"code\":500,\"msg\":\"创建异常单重拍记录失败\",\"affected_rows\":" + rows + "}";
|
||
}
|
||
|
||
sql = "UPDATE erp.oms_wei_external_procurement_log SET ";
|
||
sql += " out_order_no='" + out_order_no + "',";
|
||
sql += " order_no='" + order_no + "',";
|
||
sql += " order_sku_id='" + order_sku_id + "',";
|
||
sql += " buyer_account='" + buyer_account + "',";
|
||
sql += " out_amount=" + out_amount + ",";
|
||
sql += " purchaser_note='" + purchaser_note + "',";
|
||
sql += " refund_status='" + refund_status + "',";
|
||
sql = sql.TrimEnd(',');
|
||
sql += " WHERE order_code='" + order_code + "' AND order_no='" + old_order_no + "';";
|
||
rows = mySql.ExecuteAffectedRows(sql);
|
||
if (!mySql.Message.IsNullOrEmpty())
|
||
{
|
||
mySql.RollBack();
|
||
mySql.Close();
|
||
return "{\"code\":500,\"msg\":\"" + mySql.Message + "\",\"affected_rows\":" + rows + "}";
|
||
}
|
||
if (rows == 0)
|
||
{
|
||
mySql.RollBack();
|
||
mySql.Close();
|
||
return "{\"code\":500,\"msg\":\"更新异常单拍单失败\",\"affected_rows\":" + rows + "}";
|
||
}
|
||
mySql.Commit();
|
||
mySql.Close();
|
||
return "{\"code\":200,\"msg\":\"success\",\"affected_rows\":" + rows + "}";
|
||
}
|
||
return "{\"code\":19999,\"msg\":\"输入为空\"}";
|
||
}
|
||
|
||
|
||
/// <summary>
|
||
/// 订单拒收状态维护
|
||
/// </summary>
|
||
/// <param name="inputData"></param>
|
||
/// <returns></returns>
|
||
public string WXUpdateTransitOrderRejectStatus(string inputData)
|
||
{
|
||
if (!string.IsNullOrEmpty(inputData))
|
||
{
|
||
if (!WXUserManage.GetSign(inputData))
|
||
return "{\"code\":999,\"msg\":\"校验失败\"}";
|
||
|
||
var order_no = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "order_no"))?.Replace("'", "\\'");
|
||
var order_sku_id = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "order_sku_id"))?.Replace("'", "\\'");
|
||
var order_code = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "order_code"))?.Replace("'", "\\'");
|
||
var has_reject = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "has_reject"))?.Replace("'", "\\'");
|
||
if (order_code.IsNullOrEmpty() && (order_no.IsNullOrEmpty() || order_sku_id.IsNullOrEmpty()))
|
||
{
|
||
return "{\"code\":500,\"msg\":\"拒收信息不完整\",\"affected_rows\":" + 0 + "}";
|
||
}
|
||
|
||
string conn = System.Configuration.ConfigurationManager.ConnectionStrings["ConnKJD"].ConnectionString;
|
||
MysqlUtils mySql = new MysqlUtils(conn, true);
|
||
|
||
string sql;
|
||
|
||
sql = "UPDATE erp.oms_wei_external_procurement_log SET ";
|
||
sql += " has_reject=" + has_reject + ",";
|
||
sql = sql.TrimEnd(',');
|
||
if (!order_code.IsNullOrEmpty())
|
||
sql += " WHERE order_code='" + order_code + "' AND order_no='" + order_code + "';";
|
||
else
|
||
sql += " WHERE order_no='" + order_no + "' AND order_sku_id='" + order_sku_id + "';";
|
||
var rows = mySql.ExecuteAffectedRows(sql);
|
||
if (!mySql.Message.IsNullOrEmpty())
|
||
{
|
||
mySql.RollBack();
|
||
mySql.Close();
|
||
return "{\"code\":500,\"msg\":\"" + mySql.Message + "\",\"affected_rows\":" + rows + "}";
|
||
}
|
||
if (rows == 0)
|
||
{
|
||
mySql.RollBack();
|
||
mySql.Close();
|
||
return "{\"code\":500,\"msg\":\"更新拒收状态失败,未找到记录\",\"affected_rows\":" + rows + "}";
|
||
}
|
||
mySql.Commit();
|
||
mySql.Close();
|
||
return "{\"code\":200,\"msg\":\"success\",\"affected_rows\":" + rows + "}";
|
||
}
|
||
return "{\"code\":19999,\"msg\":\"输入为空\"}";
|
||
}
|
||
|
||
|
||
public string WXAddOrderItemExtInfo(string inputData)
|
||
{
|
||
if (!string.IsNullOrEmpty(inputData))
|
||
{
|
||
if (!WXUserManage.GetSign(inputData))
|
||
return "{\"code\":999,\"msg\":\"校验失败\"}";
|
||
var timeCalc = DateTime.Now;
|
||
|
||
string order_id = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "wx_order_id"))?.Replace("'", "\\'");
|
||
string sku_id = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "wx_sku_id"))?.Replace("'", "\\'");
|
||
string out_order_id = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "out_order_id"))?.Replace("'", "\\'");
|
||
string shop_app_id = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "shop_app_id"))?.Replace("'", "\\'");
|
||
string shop_name = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "shop_name"))?.Replace("'", "\\'");
|
||
string buy_type = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "buy_type"))?.Replace("'", "\\'");
|
||
string abnormal_text = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "abnormal_text"))?.Replace("'", "\\'");
|
||
string flag = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "flag"))?.Replace("'", "\\'");
|
||
string label = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "label"))?.Replace("'", "\\'");
|
||
string remark = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "remark"))?.Replace("'", "\\'");
|
||
string after_sale_user_delivery_address = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "after_sale_user_delivery_address"))?.Replace("'", "\\'");
|
||
|
||
if (string.IsNullOrEmpty(order_id) || string.IsNullOrEmpty(sku_id))
|
||
return "{\"code\":500,\"msg\":\"订单ID不能为空\"}";
|
||
|
||
string conn = System.Configuration.ConfigurationManager.ConnectionStrings["ConnKJD"].ConnectionString;
|
||
MysqlUtils mySql = new MysqlUtils(conn);
|
||
|
||
string sql = "";
|
||
var count = -1;
|
||
|
||
sql = "select id from wxxd.order_item_ext where order_id='" + order_id + "' and sku_id='" + sku_id + "'";
|
||
var id = mySql.ExecuteFirstInt(sql);
|
||
if (!string.IsNullOrEmpty(mySql.Message))
|
||
{
|
||
mySql.Close();
|
||
return "{\"code\":500,\"msg\":\"" + mySql.Message + "\"}";
|
||
}
|
||
if (id > 0)
|
||
{
|
||
mySql.Close();
|
||
return "{\"code\":500,\"msg\":\"订单已存在\"}";
|
||
}
|
||
|
||
sql = "INSERT INTO wxxd.order_item_ext (order_id,sku_id,out_order_id,shop_app_id,shop_name,buy_type,abnormal_text,flag,label,remark,after_sale_user_delivery_address)";
|
||
sql += "VALUES(@order_id,@sku_id,@out_order_id,@shop_app_id,@shop_name,@buy_type,@abnormal_text,@flag,@label,@remark,@after_sale_user_delivery_address);";
|
||
|
||
List<MySqlParameter> paramLst = new List<MySqlParameter>();
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "order_id", Value = order_id, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "sku_id", Value = sku_id, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "out_order_id", Value = out_order_id, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "shop_app_id", Value = shop_app_id, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "shop_name", Value = shop_name, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "buy_type", Value = buy_type, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "abnormal_text", Value = abnormal_text, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.Int32, ParameterName = "flag", Value = flag, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "label", Value = label, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "remark", Value = remark, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "after_sale_user_delivery_address", Value = after_sale_user_delivery_address, });
|
||
|
||
count = mySql.ExecuteAffectedRows(sql, paramLst.ToArray());
|
||
mySql.Close();
|
||
|
||
if (!string.IsNullOrEmpty(mySql.Message))
|
||
{
|
||
return "{\"code\":500,\"msg\":\"" + mySql.Message + "\",\"affected_rows\":" + count + "}";
|
||
}
|
||
return "{\"code\":200,\"msg\":\"success\",\"affected_rows\":" + count + "}";
|
||
}
|
||
return "{\"code\":19999,\"msg\":\"输入为空\"}";
|
||
}
|
||
|
||
public string WXMdyOrderItemExtInfo(string inputData)
|
||
{
|
||
if (!string.IsNullOrEmpty(inputData))
|
||
{
|
||
if (!WXUserManage.GetSign(inputData))
|
||
return "{\"code\":999,\"msg\":\"校验失败\"}";
|
||
var timeCalc = DateTime.Now;
|
||
|
||
string order_id = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "wx_order_id"))?.Replace("'", "\\'");
|
||
string sku_id = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "wx_sku_id"))?.Replace("'", "\\'");
|
||
string out_order_id = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "out_order_id"))?.Replace("'", "\\'");
|
||
string shop_app_id = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "shop_app_id"))?.Replace("'", "\\'");
|
||
string shop_name = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "shop_name"))?.Replace("'", "\\'");
|
||
string buy_type = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "buy_type"))?.Replace("'", "\\'");
|
||
string abnormal_text = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "abnormal_text"))?.Replace("'", "\\'");
|
||
string flag = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "flag"))?.Replace("'", "\\'");
|
||
string label = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "label"))?.Replace("'", "\\'");
|
||
string remark = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "remark"))?.Replace("'", "\\'");
|
||
string after_sale_user_delivery_address = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "after_sale_user_delivery_address"))?.Replace("'", "\\'");
|
||
|
||
if (string.IsNullOrEmpty(order_id))
|
||
return "{\"code\":500,\"msg\":\"订单ID不能为空\"}";
|
||
|
||
string conn = System.Configuration.ConfigurationManager.ConnectionStrings["ConnKJD"].ConnectionString;
|
||
MysqlUtils mySql = new MysqlUtils(conn);
|
||
|
||
string sql = "UPDATE wxxd.order_item_ext SET ";
|
||
if (!string.IsNullOrEmpty(shop_app_id))
|
||
sql += " shop_app_id=@shop_app_id,";
|
||
if (!string.IsNullOrEmpty(out_order_id))
|
||
sql += " out_order_id=@out_order_id,";
|
||
if (!string.IsNullOrEmpty(shop_name))
|
||
sql += " shop_name=@shop_name,";
|
||
if (buy_type != null)
|
||
sql += " buy_type=@buy_type,";
|
||
if (abnormal_text != null)
|
||
sql += " abnormal_text=@abnormal_text,";
|
||
if (!string.IsNullOrEmpty(flag))
|
||
sql += " flag=@flag,";
|
||
if (label != null)
|
||
sql += " label=@label,";
|
||
if (remark != null)
|
||
sql += " remark=@remark,";
|
||
if (!string.IsNullOrEmpty(after_sale_user_delivery_address))
|
||
sql += " after_sale_user_delivery_address=@after_sale_user_delivery_address,";
|
||
sql = sql.TrimEnd(',');
|
||
sql += " where 1=1";
|
||
if (!string.IsNullOrEmpty(order_id))
|
||
sql += " and order_id=@order_id";
|
||
if (!string.IsNullOrEmpty(sku_id))
|
||
sql += " and sku_id=@sku_id";
|
||
|
||
List<MySqlParameter> paramLst = new List<MySqlParameter>();
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "order_id", Value = order_id, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "sku_id", Value = sku_id, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "out_order_id", Value = out_order_id, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "shop_app_id", Value = shop_app_id, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "shop_name", Value = shop_name, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "buy_type", Value = buy_type, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "abnormal_text", Value = abnormal_text, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.Int32, ParameterName = "flag", Value = flag, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "label", Value = label, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "remark", Value = remark, });
|
||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "after_sale_user_delivery_address", Value = after_sale_user_delivery_address, });
|
||
|
||
var count = mySql.ExecuteAffectedRows(sql, paramLst.ToArray());
|
||
mySql.Close();
|
||
|
||
if (!string.IsNullOrEmpty(mySql.Message))
|
||
{
|
||
return "{\"code\":500,\"msg\":\"" + mySql.Message + "\",\"affected_rows\":" + count + "}";
|
||
}
|
||
return "{\"code\":200,\"msg\":\"success\",\"affected_rows\":" + count + "}";
|
||
}
|
||
return "{\"code\":19999,\"msg\":\"输入为空\"}";
|
||
}
|
||
|
||
public string WXGetOrderItemExtInfoList(string inputData, bool isDetail = false)
|
||
{
|
||
if (!string.IsNullOrEmpty(inputData))
|
||
{
|
||
if (!WXUserManage.GetSign(inputData))
|
||
return "{\"code\":999,\"msg\":\"校验失败\"}";
|
||
var timeCalc = DateTime.Now;
|
||
|
||
var wx_order_id_in = RegexUtils.GetStringQuery(ref inputData, "wx_order_id_in")?.Replace("'", "\\'");
|
||
var wx_sku_id = RegexUtils.GetStringQuery(ref inputData, "wx_sku_id_in")?.Replace("'", "\\'");
|
||
var out_order_id_in = RegexUtils.GetStringQuery(ref inputData, "out_order_id_in")?.Replace("'", "\\'");
|
||
if (wx_order_id_in.IsNullOrEmpty() && out_order_id_in.IsNullOrEmpty())
|
||
{
|
||
return "{\"code\":500,\"msg\":\"未指定订单\"}";
|
||
}
|
||
var sort_type = RegexUtils.GetStringQuery(ref inputData, "sort_type")?.Replace("'", "\\'");
|
||
var is_not_count = RegexUtils.GetStringQuery(ref inputData, "is_not_count") != "false";
|
||
|
||
int page = RegexUtils.GetStringQuery(ref inputData, "page").ParseToInt();
|
||
int page_size = RegexUtils.GetStringQuery(ref inputData, "page_size").ParseToInt(500);
|
||
|
||
string conn = System.Configuration.ConfigurationManager.ConnectionStrings["ConnKJD"].ConnectionString;
|
||
MysqlUtils mySql = new MysqlUtils(conn);
|
||
|
||
string sql = "SELECT COUNT(id) FROM wxxd.order_item_ext o WHERE 1=1 ";
|
||
|
||
string where = "";
|
||
if (!string.IsNullOrWhiteSpace(wx_order_id_in))
|
||
where += " and o.order_id in ('" + wx_order_id_in.Replace(",", "','") + "')";
|
||
if (!string.IsNullOrWhiteSpace(wx_sku_id))
|
||
where += " and o.sku_id in ('" + wx_sku_id.Replace(",", "','") + "')";
|
||
if (!string.IsNullOrWhiteSpace(out_order_id_in))
|
||
where += " and o.out_order_id in ('" + out_order_id_in.Replace(",", "','") + "')";
|
||
sql += where;
|
||
|
||
var count = 0;
|
||
if (!is_not_count)
|
||
count = mySql.ExecuteRowCount(sql);
|
||
|
||
DataTable dt;
|
||
if (count == 0 && !is_not_count)
|
||
{
|
||
dt = new DataTable();
|
||
}
|
||
else
|
||
{
|
||
sql = "SELECT o.* FROM" +
|
||
" wxxd.order_item_ext o " +
|
||
" WHERE 1=1";
|
||
|
||
//where子句
|
||
sql += where;
|
||
|
||
if (sort_type == "asc")
|
||
sql += " ORDER BY o.id ASC";
|
||
else
|
||
sql += " ORDER BY o.id DESC";
|
||
sql += " LIMIT " + Math.Max(page - 1, 0) * page_size + "," + page_size;
|
||
dt = mySql.ExecuteDataTable(sql);
|
||
}
|
||
|
||
mySql.Close();
|
||
if (dt != null)
|
||
{
|
||
try
|
||
{
|
||
List<order_item_ext> buyerOrderList = new List<order_item_ext>();
|
||
foreach (DataRow row in dt.Rows)
|
||
{
|
||
order_item_ext order = new order_item_ext
|
||
{
|
||
id = row["id"].ParseToLong(),
|
||
add_time = row["add_time"].ParseToString().ParseToDateTime(),
|
||
buy_type = row["buy_type"].ParseToString(),
|
||
abnormal_text = row["abnormal_text"].ParseToString(),
|
||
after_sale_user_delivery_address = row["after_sale_user_delivery_address"].ParseToString(),
|
||
flag = row["flag"].ParseToNullableInt(),
|
||
mdy_time = row["mdy_time"].ParseToString().ParseToDateTime(),
|
||
label = row["label"].ParseToString(),
|
||
order_id = row["order_id"].ParseToString(),
|
||
remark = row["remark"].ParseToString(),
|
||
shop_app_id = row["shop_app_id"].ParseToString(),
|
||
shop_name = row["shop_name"].ParseToString(),
|
||
sku_id = row["sku_id"].ParseToString(),
|
||
out_order_id = row["out_order_id"].ParseToString(),
|
||
};
|
||
buyerOrderList.Add(order);
|
||
}
|
||
JsonSerializerSettings jsonSetting = new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore };
|
||
var data = JsonUtils.SerializeObjectToString(buyerOrderList, jsonSetting);
|
||
var seconds = (DateTime.Now - timeCalc).TotalSeconds.ToString("0.000");
|
||
return "{\"code\":200,\"msg\":\"success\",\"data\":" + data + ",\"count\":" + count + ",\"seconds\":" + seconds + "}";
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
return "{\"code\":500,\"msg\":\"" + ex.Message + "\",\"data\":[],\"count\":" + 0 + "}";
|
||
}
|
||
}
|
||
else
|
||
{
|
||
return "{\"code\":500,\"msg\":\"" + mySql.Message + "\",\"data\":[],\"count\":" + 0 + "}";
|
||
}
|
||
}
|
||
return "{\"code\":19999,\"msg\":\"输入为空\"}";
|
||
}
|
||
|
||
public string WXGetErpReturnOrderList(string inputData, bool isDetail = false)
|
||
{
|
||
if (!string.IsNullOrEmpty(inputData))
|
||
{
|
||
if (!WXUserManage.GetSign(inputData))
|
||
return "{\"code\":999,\"msg\":\"校验失败\"}";
|
||
var timeCalc = DateTime.Now;
|
||
|
||
var erp_order_id_in = RegexUtils.GetStringQuery(ref inputData, "erp_order_id_in")?.Replace("'", "\\'");
|
||
if (erp_order_id_in.IsNullOrEmpty())
|
||
{
|
||
return "{\"code\":500,\"msg\":\"未指定订单\"}";
|
||
}
|
||
var sort_type = RegexUtils.GetStringQuery(ref inputData, "sort_type")?.Replace("'", "\\'");
|
||
var is_not_count = RegexUtils.GetStringQuery(ref inputData, "is_not_count") == "true";
|
||
|
||
int page = RegexUtils.GetStringQuery(ref inputData, "page").ParseToInt();
|
||
int page_size = RegexUtils.GetStringQuery(ref inputData, "page_size").ParseToInt(500);
|
||
|
||
string conn = System.Configuration.ConfigurationManager.ConnectionStrings["ConnKJD"].ConnectionString;
|
||
MysqlUtils mySql = new MysqlUtils(conn);
|
||
|
||
string sql = "SELECT COUNT(id) FROM erp.distrib_return_order o WHERE 1=1 ";
|
||
|
||
string where = "";
|
||
if (!string.IsNullOrWhiteSpace(erp_order_id_in))
|
||
where += " and o.order_code_source in ('" + erp_order_id_in.Replace(",", "','") + "')";
|
||
sql += where;
|
||
|
||
var count = 0;
|
||
if (!is_not_count)
|
||
count = mySql.ExecuteRowCount(sql);
|
||
|
||
DataTable dt;
|
||
if (count == 0 && !is_not_count)
|
||
{
|
||
dt = new DataTable();
|
||
}
|
||
else
|
||
{
|
||
sql = "SELECT o.* FROM erp.distrib_return_order o WHERE 1=1";
|
||
|
||
//where子句
|
||
sql += where;
|
||
|
||
if (sort_type == "asc")
|
||
sql += " ORDER BY o.created_at ASC";
|
||
else
|
||
sql += " ORDER BY o.created_at DESC";
|
||
sql += " LIMIT " + Math.Max(page - 1, 0) * page_size + "," + page_size;
|
||
dt = mySql.ExecuteDataTable(sql);
|
||
}
|
||
|
||
mySql.Close();
|
||
if (dt != null)
|
||
{
|
||
try
|
||
{
|
||
List<distrib_return_order_info> orderList = new List<distrib_return_order_info>();
|
||
foreach (DataRow row in dt.Rows)
|
||
{
|
||
distrib_return_order_info order = new distrib_return_order_info
|
||
{
|
||
id = row["id"].ParseToLong(),
|
||
additional_weight_fee = row["additional_weight_fee"].ParseToNullableInt(),
|
||
after_sale_no = row["after_sale_no"].ParseToNullableString(),
|
||
created_at = row["created_at"].ParseToString().ParseToDateTime(),
|
||
ext_field1 = row["ext_field1"].ParseToNullableString(),
|
||
ext_field2 = row["ext_field2"].ParseToNullableString(),
|
||
first_weight_fee = row["first_weight_fee"].ParseToNullableInt(),
|
||
logistics_code = row["logistics_code"].ParseToNullableString(),
|
||
logistics_express_no = row["logistics_express_no"].ParseToNullableString(),
|
||
order_code = row["order_code"].ParseToNullableString(),
|
||
order_code_source = row["order_code_source"].ParseToNullableString(),
|
||
order_void_status = row["order_void_status"].ParseToNullableInt(),
|
||
platform = row["platform"].ParseToNullableString(),
|
||
platform_code = row["platform_code"].ParseToNullableString(),
|
||
platform_order_no = row["platform_order_no"].ParseToNullableString(),
|
||
postage = row["postage"].ParseToNullableInt(),
|
||
real_logistics_code = row["real_logistics_code"].ParseToNullableString(),
|
||
real_logistics_express_code = row["real_logistics_express_code"].ParseToNullableString(),
|
||
receiver_address = row["receiver_address"].ParseToNullableString(),
|
||
receiver_area = row["receiver_area"].ParseToNullableString(),
|
||
receiver_city = row["receiver_city"].ParseToNullableString(),
|
||
receiver_name = row["receiver_name"].ParseToNullableString(),
|
||
receiver_phone = row["receiver_phone"].ParseToNullableString(),
|
||
receiver_province = row["receiver_province"].ParseToNullableString(),
|
||
response_msg = row["response_msg"].ParseToNullableString(),
|
||
return_order_status = row["return_order_status"].ParseToNullableInt(),
|
||
sender_info = row["sender_info"].ParseToNullableString(),
|
||
sender_name = row["sender_name"].ParseToNullableString(),
|
||
sender_phone = row["sender_phone"].ParseToNullableString(),
|
||
shop_name = row["shop_name"].ParseToNullableString(),
|
||
updated_at = row["updated_at"].ParseToString().ParseToDateTime(),
|
||
warehouse_in_time = row["warehouse_in_time"].ParseToString().ParseToDateTime(),
|
||
warehouse_out_time = row["warehouse_out_time"].ParseToString().ParseToDateTime(),
|
||
warehouse_status = row["warehouse_status"].ParseToNullableInt(),
|
||
};
|
||
orderList.Add(order);
|
||
}
|
||
JsonSerializerSettings jsonSetting = new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore };
|
||
var data = JsonUtils.SerializeObjectToString(orderList, jsonSetting);
|
||
var seconds = (DateTime.Now - timeCalc).TotalSeconds.ToString("0.000");
|
||
return "{\"code\":200,\"msg\":\"success\",\"data\":" + data + ",\"count\":" + count + ",\"seconds\":" + seconds + "}";
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
return "{\"code\":500,\"msg\":\"" + ex.Message + "\",\"data\":[],\"count\":" + 0 + "}";
|
||
}
|
||
}
|
||
else
|
||
{
|
||
return "{\"code\":500,\"msg\":\"" + mySql.Message + "\",\"data\":[],\"count\":" + 0 + "}";
|
||
}
|
||
}
|
||
return "{\"code\":19999,\"msg\":\"输入为空\"}";
|
||
}
|
||
|
||
/// <summary>
|
||
/// 获取wx订单状态
|
||
/// <returns></returns>
|
||
public string GetWxTaskStatus(string inputData, bool isDetail = false)
|
||
{
|
||
// 暂时先拿掉
|
||
return "{\"code\":19999,\"msg\":\"参数为空\"}";
|
||
|
||
if (string.IsNullOrEmpty(inputData))
|
||
return "{\"code\":19999,\"msg\":\"参数为空\"}";
|
||
|
||
if (!WXUserManage.GetSign(inputData))
|
||
return "{\"code\":999,\"msg\":\"签名校验失败\"}";
|
||
var user_name = RegexUtils.GetStringQuery(ref inputData, "user_name");
|
||
|
||
string shop_ids = RegexUtils.GetStringQuery(ref inputData, "shop_ids")?.Replace("'", "");//所有店铺信息
|
||
if (string.IsNullOrEmpty(shop_ids))
|
||
throw new ArgumentException("请选择店铺");
|
||
List<string> shopIdLst = shop_ids.Split(',').ToList();
|
||
if (shopIdLst.Count > 0)
|
||
shop_ids = "'" + string.Join("','", shopIdLst) + "'";
|
||
|
||
string start_Time = RegexUtils.GetStringQuery(ref inputData, "start_time")?.Replace("'", "");
|
||
string end_Time = RegexUtils.GetStringQuery(ref inputData, "end_time")?.Replace("'", "");
|
||
DateTime startTime = DateTime.Now.AddDays(-7);
|
||
DateTime endTime = DateTime.Now;
|
||
if (!string.IsNullOrEmpty(start_Time))
|
||
startTime = TimeUtils.StampMillisecondsToDateTime(start_Time.ParseToLong());
|
||
if (!string.IsNullOrEmpty(end_Time))
|
||
endTime = TimeUtils.StampMillisecondsToDateTime(end_Time.ParseToLong());
|
||
if (endTime <= startTime)
|
||
throw new ArgumentException("结束时间必须大于开始时间");
|
||
if (endTime > startTime.AddDays(10))
|
||
throw new ArgumentException("时间范围不能超过10天");
|
||
int startTimestamp = TimeUtils.DateTimeToTimestampSeconds(startTime);
|
||
int endTimestamp = TimeUtils.DateTimeToTimestampSeconds(endTime);
|
||
|
||
var timeCalc = DateTime.Now;
|
||
|
||
string conn = System.Configuration.ConfigurationManager.ConnectionStrings["ConnKJD"].ConnectionString;
|
||
MysqlUtils mySql = new MysqlUtils(conn);
|
||
|
||
// ---------- 1. 查主任务 ----------
|
||
StringBuilder sbTask = new StringBuilder();
|
||
|
||
sbTask.Append("SELECT ");
|
||
sbTask.Append("A.id, ");
|
||
sbTask.Append("A.task_type, ");
|
||
sbTask.Append("A.task_describe, ");
|
||
sbTask.Append("A.shop_ids, ");
|
||
sbTask.Append("C.name AS shop_name, ");
|
||
sbTask.Append("A.object_ids, ");
|
||
sbTask.Append("A.sub_task_num, ");
|
||
sbTask.Append("A.success_task_num, ");
|
||
sbTask.Append("A.fail_task_num, ");
|
||
sbTask.Append("A.status, ");
|
||
sbTask.Append("A.create_by, ");
|
||
sbTask.Append("A.update_by, ");
|
||
sbTask.Append("A.remark, ");
|
||
sbTask.Append("A.task_fail_reason, ");
|
||
sbTask.Append("A.create_time, ");
|
||
sbTask.Append("A.update_time ");
|
||
sbTask.Append("FROM erp.o_user_operate_task AS A ");
|
||
sbTask.Append("INNER JOIN erp.o_shop AS C ON A.shop_ids = C.id ");
|
||
sbTask.Append("WHERE A.task_type IN (25, 31, 36) ");
|
||
|
||
// 时间条件
|
||
{
|
||
sbTask.Append("AND A.create_time BETWEEN '");
|
||
sbTask.Append(startTime);
|
||
sbTask.Append("' AND '");
|
||
sbTask.Append(endTime);
|
||
sbTask.Append("' ");
|
||
}
|
||
|
||
// 店铺条件
|
||
if (!string.IsNullOrEmpty(shop_ids))
|
||
{
|
||
sbTask.Append("AND A.shop_ids IN (");
|
||
sbTask.Append(shop_ids);
|
||
sbTask.Append(") ");
|
||
}
|
||
|
||
sbTask.Append("ORDER BY A.create_time DESC, A.id DESC;");
|
||
|
||
DataTable taskDt = null;
|
||
try
|
||
{
|
||
taskDt = mySql.ExecuteDataTable(sbTask.ToString());
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
return "{\"code\":500,\"msg\":\"" + ex.Message + "\",\"data\":[],\"count\":" + 0 + "}";
|
||
|
||
}
|
||
|
||
|
||
if (taskDt != null)
|
||
{
|
||
List<user_operate_task_info> orderList = new List<user_operate_task_info>();
|
||
|
||
foreach (DataRow row in taskDt.Rows)
|
||
{
|
||
var g = new user_operate_task_info
|
||
{
|
||
id = row["id"].ParseToLong(),
|
||
task_type = row["task_type"].ParseToNullableInt(),
|
||
task_describe = row["task_describe"].ParseToNullableString(),
|
||
shop_ids = row["shop_ids"].ParseToNullableString(),
|
||
shop_name = row["shop_name"].ParseToNullableString(),
|
||
object_ids = row["object_ids"].ParseToNullableString(),
|
||
sub_task_num = row["sub_task_num"].ParseToNullableInt(),
|
||
success_task_num = row["success_task_num"].ParseToNullableInt(),
|
||
fail_task_num = row["fail_task_num"].ParseToNullableInt(),
|
||
status = row["status"].ParseToInt(),
|
||
create_by = row["create_by"].ParseToNullableString(),
|
||
update_by = row["update_by"].ParseToNullableString(),
|
||
remark = row["remark"].ParseToNullableString(),
|
||
task_fail_reason = row["task_fail_reason"].ParseToNullableString(),
|
||
create_time = row["create_time"].ParseToString().ParseToDateTimeNullable(),
|
||
update_time = row["update_time"].ParseToString().ParseToDateTimeNullable(),
|
||
sub_tasks = new List<user_operate_sub_task_info>() // 初始化子任务列表
|
||
};
|
||
orderList.Add(g);
|
||
}
|
||
|
||
|
||
|
||
|
||
List<long> taskIdList = orderList.Select(x => x.id).ToList();
|
||
if (taskIdList.Count > 0)
|
||
{
|
||
StringBuilder sbSubTask = new StringBuilder();
|
||
|
||
sbSubTask.Append("SELECT ");
|
||
sbSubTask.Append("id, ");
|
||
sbSubTask.Append("task_id, ");
|
||
sbSubTask.Append("platform_code, ");
|
||
sbSubTask.Append("shop_id, ");
|
||
sbSubTask.Append("platform_object_id, ");
|
||
sbSubTask.Append("object_id, ");
|
||
sbSubTask.Append("platform_resp_code, ");
|
||
sbSubTask.Append("platform_resp_msg, ");
|
||
sbSubTask.Append("platform_resp_data, ");
|
||
sbSubTask.Append("sys_msg, ");
|
||
sbSubTask.Append("CAST(`status` AS SIGNED) AS `status`, ");
|
||
sbSubTask.Append("audit_result, ");
|
||
sbSubTask.Append("audit_reason, ");
|
||
sbSubTask.Append("create_time, ");
|
||
sbSubTask.Append("create_by, ");
|
||
sbSubTask.Append("update_time, ");
|
||
sbSubTask.Append("update_by ");
|
||
sbSubTask.Append("FROM erp.o_user_operate_sub_task ");
|
||
sbSubTask.Append("WHERE task_id IN (");
|
||
|
||
for (int i = 0; i < taskIdList.Count; i++)
|
||
{
|
||
if (i > 0)
|
||
{
|
||
sbSubTask.Append(", ");
|
||
}
|
||
sbSubTask.Append(taskIdList[i]);
|
||
}
|
||
sbSubTask.Append(") ");
|
||
sbSubTask.Append("ORDER BY task_id, create_time DESC;");
|
||
|
||
DataTable subTaskDt = null;
|
||
try
|
||
{
|
||
subTaskDt = mySql.ExecuteDataTable(sbSubTask.ToString());
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
return "{\"code\":500,\"msg\":\"" + ex.Message + "\",\"data\":[],\"count\":" + 0 + "}";
|
||
}
|
||
|
||
// 按task_id分组存储子任务
|
||
Dictionary<long, List<user_operate_sub_task_info>> subTaskDict = new Dictionary<long, List<user_operate_sub_task_info>>();
|
||
|
||
if (subTaskDt != null)
|
||
{
|
||
foreach (DataRow row in subTaskDt.Rows)
|
||
{
|
||
var subTask = new user_operate_sub_task_info
|
||
{
|
||
id = row["id"].ParseToLong(),
|
||
task_id = row["task_id"].ParseToLong(),
|
||
platform_code = row["platform_code"].ParseToNullableString(),
|
||
shop_id = row["shop_id"].ParseToLong(),
|
||
platform_object_id = row["platform_object_id"].ParseToNullableString(),
|
||
object_id = row["object_id"].ParseToNullableString(),
|
||
platform_resp_code = row["platform_resp_code"].ParseToNullableString(),
|
||
platform_resp_msg = row["platform_resp_msg"].ParseToNullableString(),
|
||
platform_resp_data = row["platform_resp_data"].ParseToNullableString(),
|
||
sys_msg = row["sys_msg"].ParseToNullableString(),
|
||
status = row["status"].ParseToInt(),
|
||
audit_result = row["audit_result"].ParseToNullableInt(),
|
||
audit_reason = row["audit_reason"].ParseToNullableString(),
|
||
create_time = row["create_time"].ParseToString().ParseToDateTimeNullable(),
|
||
create_by = row["create_by"].ParseToNullableString(),
|
||
update_time = row["update_time"].ParseToString().ParseToDateTimeNullable(),
|
||
update_by = row["update_by"].ParseToNullableString()
|
||
};
|
||
|
||
long taskId = subTask.task_id;
|
||
if (!subTaskDict.ContainsKey(taskId))
|
||
{
|
||
subTaskDict[taskId] = new List<user_operate_sub_task_info>();
|
||
}
|
||
subTaskDict[taskId].Add(subTask);
|
||
}
|
||
// 将子任务列表赋值给对应的主任务
|
||
foreach (var task in orderList)
|
||
{
|
||
if (subTaskDict.ContainsKey(task.id))
|
||
{
|
||
task.sub_tasks = subTaskDict[task.id];
|
||
}
|
||
}
|
||
}
|
||
|
||
// ---------- 3. 合并错误信息到主任务 ----------
|
||
foreach (var task in orderList)
|
||
{
|
||
List<string> errorList = new List<string>();
|
||
|
||
// 主任务错误
|
||
if (!string.IsNullOrEmpty(task.task_fail_reason))
|
||
{
|
||
errorList.Add(task.task_fail_reason);
|
||
}
|
||
|
||
// 获取该任务的子任务列表
|
||
if (subTaskDict.ContainsKey(task.id))
|
||
{
|
||
var subTasks = subTaskDict[task.id];
|
||
|
||
// 对于36类型,子任务可能有更详细的错误
|
||
if (task.task_type == 36)
|
||
{
|
||
foreach (var subTask in subTasks)
|
||
{
|
||
// 子任务失败的错误信息
|
||
if (subTask.status == 2 && !string.IsNullOrEmpty(subTask.sys_msg))
|
||
{
|
||
errorList.Add(subTask.sys_msg);
|
||
}
|
||
// 审核不通过的原因
|
||
if (subTask.audit_result == 2 && !string.IsNullOrEmpty(subTask.audit_reason))
|
||
{
|
||
errorList.Add("审核不通过:" + subTask.audit_reason);
|
||
}
|
||
}
|
||
}
|
||
else
|
||
{
|
||
// 25、31类型,如果主任务没有错误,但子任务有错误,也收集
|
||
foreach (var subTask in subTasks)
|
||
{
|
||
if (subTask.status == 2 && !string.IsNullOrEmpty(subTask.sys_msg))
|
||
{
|
||
errorList.Add(subTask.sys_msg);
|
||
}
|
||
}
|
||
}
|
||
}
|
||
|
||
// 合并错误信息(去重)
|
||
task.task_fail_reason = errorList
|
||
.Where(x => !string.IsNullOrEmpty(x))
|
||
.Distinct()
|
||
.ToList()
|
||
.Count > 0 ? string.Join("; ", errorList.Distinct()) : null;
|
||
}
|
||
}
|
||
|
||
JsonSerializerSettings jsonSetting = new JsonSerializerSettings
|
||
{
|
||
NullValueHandling = NullValueHandling.Ignore,
|
||
ContractResolver = new DefaultContractResolver
|
||
{
|
||
// 核心:设置命名策略为 SnakeCaseNamingStrategy
|
||
// 这样序列化时,ProjectId 会变成 "project_id";
|
||
// 反序列化时,"project_id" 也能正确映射回 ProjectId
|
||
NamingStrategy = new SnakeCaseNamingStrategy()
|
||
}
|
||
};
|
||
string jsonResult = JsonConvert.SerializeObject(new
|
||
{
|
||
code = 200,
|
||
msg = "success",
|
||
data = orderList,
|
||
count = orderList.Count
|
||
}, jsonSetting);
|
||
return jsonResult;
|
||
}
|
||
|
||
|
||
else
|
||
{
|
||
return "{\"code\":500,\"msg\":\"" + mySql.Message + "\",\"data\":[],\"count\":" + 0 + "}";
|
||
}
|
||
|
||
return "{\"code\":19999,\"msg\":\"输入为空\"}";
|
||
}
|
||
|
||
|
||
public string WXGetErpEWaybillPathList(string inputData, bool isDetail = false)
|
||
{
|
||
if (!string.IsNullOrEmpty(inputData))
|
||
{
|
||
var timeCalc = DateTime.Now;
|
||
if (!WXUserManage.GetSign(inputData))
|
||
return "{\"code\":999,\"msg\":\"签名校验失败\"}";
|
||
|
||
var erp_order_id_in = RegexUtils.GetStringQuery(ref inputData, "erp_order_id_in")?.Replace("'", "\\'");
|
||
var ewaybill_order_id_in = RegexUtils.GetStringQuery(ref inputData, "ewaybill_order_id_in")?.Replace("'", "\\'");
|
||
var waybill_id_in = RegexUtils.GetStringQuery(ref inputData, "waybill_id_in")?.Replace("'", "\\'");
|
||
if (erp_order_id_in.IsNullOrEmpty() && ewaybill_order_id_in.IsNullOrEmpty() && waybill_id_in.IsNullOrEmpty())
|
||
{
|
||
return "{\"code\":500,\"msg\":\"未指定要查询的物流轨迹\"}";
|
||
}
|
||
var sort_type = RegexUtils.GetStringQuery(ref inputData, "sort_type")?.Replace("'", "\\'");
|
||
var is_not_count = RegexUtils.GetStringQuery(ref inputData, "is_not_count") != "false";
|
||
|
||
int page = RegexUtils.GetStringQuery(ref inputData, "page").ParseToInt();
|
||
int page_size = RegexUtils.GetStringQuery(ref inputData, "page_size").ParseToInt(1000);
|
||
|
||
string conn = System.Configuration.ConfigurationManager.ConnectionStrings["ConnKJD"].ConnectionString;
|
||
MysqlUtils mySql = new MysqlUtils(conn);
|
||
|
||
string sql = "SELECT COUNT(id) FROM erp.oms_wei_ewaybill_path o WHERE 1=1 ";
|
||
|
||
string where = "";
|
||
if (!string.IsNullOrWhiteSpace(erp_order_id_in))
|
||
where += " and o.order_id in ('" + erp_order_id_in.Replace(",", "','") + "')";
|
||
if (!string.IsNullOrWhiteSpace(ewaybill_order_id_in))
|
||
where += " and o.ewaybill_order_id in ('" + ewaybill_order_id_in.Replace(",", "','") + "')";
|
||
if (!string.IsNullOrWhiteSpace(waybill_id_in))
|
||
where += " and o.waybill_id in ('" + waybill_id_in.Replace(",", "','") + "')";
|
||
sql += where;
|
||
|
||
var count = 0;
|
||
if (!is_not_count)
|
||
count = mySql.ExecuteRowCount(sql);
|
||
|
||
DataTable dt;
|
||
if (count == 0 && !is_not_count)
|
||
{
|
||
dt = new DataTable();
|
||
}
|
||
else
|
||
{
|
||
sql = "SELECT o.* FROM erp.oms_wei_ewaybill_path o WHERE 1=1";
|
||
|
||
//where子句
|
||
sql += where;
|
||
|
||
if (sort_type == "asc")
|
||
sql += " ORDER BY o.id ASC";
|
||
else
|
||
sql += " ORDER BY o.id DESC";
|
||
sql += " LIMIT " + Math.Max(page - 1, 0) * page_size + "," + page_size;
|
||
dt = mySql.ExecuteDataTable(sql);
|
||
}
|
||
|
||
mySql.Close();
|
||
if (dt != null)
|
||
{
|
||
try
|
||
{
|
||
List<oms_wei_ewaybill_path> orderItemList = new List<oms_wei_ewaybill_path>();
|
||
foreach (DataRow row in dt.Rows)
|
||
{
|
||
oms_wei_ewaybill_path order = new oms_wei_ewaybill_path
|
||
{
|
||
id = row["id"].ParseToLong(),
|
||
order_id = row["order_id"].ParseToNullableLong(),
|
||
create_time = row["create_time"].ParseToString().ParseToDateTime(),
|
||
ewaybill_order_id = row["ewaybill_order_id"].ParseToString(),
|
||
node_desc = row["node_desc"].ParseToString(),
|
||
shop_id = row["shop_id"].ParseToNullableLong(),
|
||
status = row["status"].ParseToInt(),
|
||
update_time = row["update_time"].ParseToLong(),
|
||
waybill_id = row["waybill_id"].ParseToString(),
|
||
};
|
||
orderItemList.Add(order);
|
||
}
|
||
JsonSerializerSettings jsonSetting = new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore };
|
||
var data = JsonUtils.SerializeObjectToString(orderItemList, jsonSetting);
|
||
var seconds = (DateTime.Now - timeCalc).TotalSeconds.ToString("0.000");
|
||
return "{\"code\":200,\"msg\":\"success\",\"data\":" + data + ",\"count\":" + count + ",\"seconds\":" + seconds + "}";
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
return "{\"code\":500,\"msg\":\"" + ex.Message + "\",\"data\":[],\"count\":" + 0 + "}";
|
||
}
|
||
}
|
||
else
|
||
{
|
||
return "{\"code\":500,\"msg\":\"" + mySql.Message + "\",\"data\":[],\"count\":" + 0 + "}";
|
||
}
|
||
}
|
||
return "{\"code\":19999,\"msg\":\"输入为空\"}";
|
||
}
|
||
|
||
public string WXGetErpEWaybillPathLatestList(string inputData)
|
||
{
|
||
if (!string.IsNullOrEmpty(inputData))
|
||
{
|
||
var timeCalc = DateTime.Now;
|
||
if (!WXUserManage.GetSign(inputData))
|
||
return "{\"code\":999,\"msg\":\"签名校验失败\"}";
|
||
|
||
var erp_order_id_in = RegexUtils.GetStringQuery(ref inputData, "erp_order_id_in")?.Replace("'", "\\'");
|
||
var ewaybill_order_id_in = RegexUtils.GetStringQuery(ref inputData, "ewaybill_order_id_in")?.Replace("'", "\\'");
|
||
var waybill_id_in = RegexUtils.GetStringQuery(ref inputData, "waybill_id_in")?.Replace("'", "\\'");
|
||
if (erp_order_id_in.IsNullOrEmpty() && ewaybill_order_id_in.IsNullOrEmpty() && waybill_id_in.IsNullOrEmpty())
|
||
{
|
||
return "{\"code\":500,\"msg\":\"未指定要查询的物流轨迹\"}";
|
||
}
|
||
//var sort_type = RegexUtils.GetStringQuery(ref inputData, "sort_type")?.Replace("'", "\\'");
|
||
|
||
int page = RegexUtils.GetStringQuery(ref inputData, "page").ParseToInt();
|
||
int page_size = RegexUtils.GetStringQuery(ref inputData, "page_size").ParseToInt(1000);
|
||
|
||
string conn = System.Configuration.ConfigurationManager.ConnectionStrings["ConnKJD"].ConnectionString;
|
||
MysqlUtils mySql = new MysqlUtils(conn);
|
||
|
||
string sql = "";
|
||
string where = "";
|
||
if (!string.IsNullOrWhiteSpace(erp_order_id_in))
|
||
where += " and w.order_id in ('" + erp_order_id_in.Replace(",", "','") + "')";
|
||
if (!string.IsNullOrWhiteSpace(ewaybill_order_id_in))
|
||
where += " and w.ewaybill_order_id in ('" + ewaybill_order_id_in.Replace(",", "','") + "')";
|
||
if (!string.IsNullOrWhiteSpace(waybill_id_in))
|
||
where += " and w.waybill_id in ('" + waybill_id_in.Replace(",", "','") + "')";
|
||
sql += where;
|
||
|
||
DataTable dt;
|
||
{
|
||
sql = @"
|
||
SELECT *
|
||
FROM (
|
||
SELECT *,ROW_NUMBER() OVER (PARTITION BY waybill_id ORDER BY update_time DESC) as rn
|
||
FROM `erp`.`oms_wei_ewaybill_path` w";
|
||
sql += " WHERE 1=1 ";
|
||
sql += where + @"
|
||
) wp
|
||
WHERE wp.rn = 1";
|
||
|
||
//where子句
|
||
//sql += where;
|
||
|
||
//if (sort_type == "asc")
|
||
// sql += " ORDER BY o.id ASC";
|
||
//else
|
||
// sql += " ORDER BY o.id DESC";
|
||
sql += " LIMIT " + Math.Max(page - 1, 0) * page_size + "," + page_size;
|
||
dt = mySql.ExecuteDataTable(sql);
|
||
}
|
||
|
||
mySql.Close();
|
||
if (dt != null)
|
||
{
|
||
try
|
||
{
|
||
List<oms_wei_ewaybill_path> orderItemList = new List<oms_wei_ewaybill_path>();
|
||
foreach (DataRow row in dt.Rows)
|
||
{
|
||
oms_wei_ewaybill_path order = new oms_wei_ewaybill_path
|
||
{
|
||
id = row["id"].ParseToLong(),
|
||
order_id = row["order_id"].ParseToNullableLong(),
|
||
create_time = row["create_time"].ParseToString().ParseToDateTime(),
|
||
ewaybill_order_id = row["ewaybill_order_id"].ParseToString(),
|
||
node_desc = row["node_desc"].ParseToString(),
|
||
shop_id = row["shop_id"].ParseToNullableLong(),
|
||
status = row["status"].ParseToInt(),
|
||
update_time = row["update_time"].ParseToLong(),
|
||
waybill_id = row["waybill_id"].ParseToString(),
|
||
};
|
||
orderItemList.Add(order);
|
||
}
|
||
JsonSerializerSettings jsonSetting = new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore };
|
||
var data = JsonUtils.SerializeObjectToString(orderItemList, jsonSetting);
|
||
var seconds = (DateTime.Now - timeCalc).TotalSeconds.ToString("0.000");
|
||
return "{\"code\":200,\"msg\":\"success\",\"data\":" + data + ",\"count\":" + orderItemList.Count + ",\"seconds\":" + seconds + "}";
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
return "{\"code\":500,\"msg\":\"" + ex.Message + "\",\"data\":[],\"count\":" + 0 + "}";
|
||
}
|
||
}
|
||
else
|
||
{
|
||
return "{\"code\":500,\"msg\":\"" + mySql.Message + "\",\"data\":[],\"count\":" + 0 + "}";
|
||
}
|
||
}
|
||
return "{\"code\":19999,\"msg\":\"输入为空\"}";
|
||
}
|
||
|
||
private JsonSerializerSettings JsonSerializer = new JsonSerializerSettings
|
||
{
|
||
ContractResolver = new CamelCasePropertyNamesContractResolver(),
|
||
NullValueHandling = NullValueHandling.Ignore
|
||
};
|
||
}
|
||
} |