1130 lines
56 KiB
C#
1130 lines
56 KiB
C#
using StoreHub.KJDWebService.Models;
|
|
using StoreHub.Framework.Repositorys;
|
|
using Microsoft.Extensions.Configuration;
|
|
using StoreHub.KJDWebService.Models.ShopModel;
|
|
using StoreHub.KJDWebService.Commons;
|
|
using NaiBa.Util.Extension;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Data;
|
|
using System.Drawing;
|
|
using System.Linq;
|
|
using System.Text;
|
|
|
|
namespace StoreHub.KJDWebService.Services
|
|
{
|
|
public class ShopService : ServiceBase
|
|
{
|
|
public ShopService(SqlRepository sqlRepository, IConfiguration configuration) : base(sqlRepository, configuration)
|
|
{
|
|
}
|
|
public string GetShop(string inputData, bool isAdmin = false)
|
|
{
|
|
if (!string.IsNullOrEmpty(inputData))
|
|
{
|
|
var user_name = RegexUtils.GetStringQuery(ref inputData, "user_name");
|
|
var password = RegexUtils.GetStringQuery(ref inputData, "password");
|
|
var search_id = RegexUtils.GetStringQuery(ref inputData, "search_id");
|
|
var search_user_name = RegexUtils.GetStringQuery(ref inputData, "search_user_name");
|
|
var search_login_name = RegexUtils.GetStringQuery(ref inputData, "search_login_name");
|
|
var search_notes = RegexUtils.GetStringQuery(ref inputData, "search_notes");
|
|
var search_name = RegexUtils.GetStringQuery(ref inputData, "search_name");
|
|
var operate_sub_sa_name = RegexUtils.GetStringQuery(ref inputData, "operate_sub_sa_name")?.Replace("'", "\\'");
|
|
var shop_ids = RegexUtils.GetStringQuery(ref inputData, "shop_ids")?.Replace("'", "");
|
|
if (!string.IsNullOrWhiteSpace(shop_ids))
|
|
{
|
|
List<string> shopIdLst = shop_ids.Split(',').ToList();
|
|
shop_ids = "'" + string.Join("','", shopIdLst) + "'";
|
|
}
|
|
var shop_names = RegexUtils.GetStringQuery(ref inputData, "shop_names");
|
|
if (!string.IsNullOrWhiteSpace(shop_names))
|
|
{
|
|
List<string> shopNameLst = shop_names.Split(',').ToList();
|
|
shop_names = "'" + string.Join("','", shopNameLst) + "'";
|
|
}
|
|
var shop_notes = RegexUtils.GetStringQuery(ref inputData, "shop_notes");
|
|
if (!string.IsNullOrWhiteSpace(shop_notes))
|
|
{
|
|
List<string> shopNotesLst = shop_notes.Split(',').ToList();
|
|
shop_notes = "'" + string.Join("','", shopNotesLst) + "'";
|
|
}
|
|
|
|
var page = RegexUtils.GetStringQuery(ref inputData, "page").ParseToInt();
|
|
var page_size = RegexUtils.GetStringQuery(ref inputData, "page_size").ParseToInt();
|
|
|
|
if (page_size == 0)
|
|
page_size = 50;
|
|
int r2 = 0;
|
|
int.TryParse(RegexUtils.GetStringQuery(ref inputData, "r2"), out r2);
|
|
|
|
string conn = "ConnKJD";
|
|
MysqlUtils mySql = new MysqlUtils(conn);
|
|
|
|
string sql = "SELECT COUNT(s.id) FROM kjd.shop s WHERE 1=1";
|
|
|
|
//where子句
|
|
string where = "";
|
|
if (isAdmin)
|
|
where += " and (s.cookie='' or s.shop_id!='')";
|
|
if (!isAdmin)
|
|
where += " and (s.user_name='" + user_name + "' or s.sub_user_name like '%" + user_name + "%')";
|
|
if (!string.IsNullOrWhiteSpace(operate_sub_sa_name))
|
|
where += " and s.operate_sub_sa_name='" + operate_sub_sa_name + "'";
|
|
if (!string.IsNullOrWhiteSpace(search_user_name))
|
|
where += " and s.user_name like '%" + search_user_name + "%'";
|
|
if (!string.IsNullOrWhiteSpace(search_login_name))
|
|
where += " and s.login_name like '%" + search_login_name + "%'";
|
|
if (!string.IsNullOrWhiteSpace(search_notes))
|
|
where += " and s.notes like '%" + search_notes + "%'";
|
|
if (!string.IsNullOrWhiteSpace(search_id))
|
|
where += " and s.shop_id like '%" + search_id + "%'";
|
|
if (!string.IsNullOrWhiteSpace(search_name))
|
|
where += " and s.shop_account like '%" + search_name + "%'";
|
|
if (!string.IsNullOrWhiteSpace(shop_ids))
|
|
where += " and s.shop_id in (" + shop_ids + ")";
|
|
if (!string.IsNullOrWhiteSpace(shop_names))
|
|
where += " and s.shop_account in (" + shop_names + ")";
|
|
if (!string.IsNullOrWhiteSpace(shop_notes))
|
|
where += " and s.notes in (" + shop_notes + ")";
|
|
sql += where;
|
|
|
|
var count = mySql.ExecuteRowCount(sql);
|
|
|
|
DataTable dt;
|
|
if (count == 0)
|
|
{
|
|
dt = new DataTable();
|
|
}
|
|
else
|
|
{
|
|
sql = "SELECT s.*, c.add_product_remaining add_remaining, c.add_product_month add_month, cc.jit_expire_time FROM kjd.shop s" +
|
|
/*, u.sub_nick_name*/
|
|
//" LEFT JOIN (SELECT parent_user_name, GROUP_CONCAT(nick_name) as sub_nick_name FROM kjd.user WHERE user_name in(s.sub_user_name) GROUP BY parent_user_name) u ON s.shop_id=u.parent_user_name" +
|
|
" LEFT JOIN kjd.shop_add_prod_count c ON s.shop_id=c.shop_id" +
|
|
" LEFT JOIN (SELECT shop_id, MAX(expire_time) as jit_expire_time FROM kjd.jit_card_code GROUP BY shop_id) cc ON s.shop_id=cc.shop_id" +
|
|
" WHERE 1=1";
|
|
|
|
sql += where; // where 子句
|
|
|
|
sql += " ORDER BY s.id DESC";
|
|
sql += " LIMIT " + Math.Max(page - 1, 0) * page_size + "," + page_size;
|
|
dt = mySql.ExecuteDataTable(sql);
|
|
}
|
|
|
|
mySql.Close();
|
|
if (dt != null)
|
|
{
|
|
List<ShopParam> shopList=new List<ShopParam>();
|
|
foreach (DataRow row in dt.Rows)
|
|
{
|
|
ShopParam shop = new ShopParam
|
|
{
|
|
id = Convert.ToInt32(row["id"]),
|
|
login_name = row["login_name"].ToString(),
|
|
login_pass = row["login_pass"].ToString(),
|
|
cookie = row["cookie"].ToString(),
|
|
cookie2 = row["cookie2"].ToString(),
|
|
shop_id = row["shop_id"].ToString(),
|
|
shop_account = row["shop_account"].ToString(),
|
|
sub_user_name = row["sub_user_name"].ToString(),
|
|
//sub_nick_name = row["sub_nick_name"].ToString(),
|
|
user_name = row["user_name"].ToString(),
|
|
company_name = row["company_name"].ToString(),
|
|
notes = row["notes"].ToString(),
|
|
login_status = row["login_status"].ToString(),
|
|
login_status2 = row["login_status2"].ToString(),
|
|
add_product_remaining = Math.Max(0, row["add_remaining"].ParseToInt()),
|
|
add_product_month = row["add_month"].ParseToInt(),
|
|
operate_sub_sa_name = row["operate_sub_sa_name"].ParseToString(),
|
|
ad_cookie = row["ad_cookie"].ParseToString(),
|
|
ad_login_status = row["ad_login_status"].ParseToString(),
|
|
ad_seller_unique_id = row["ad_seller_unique_id"].ParseToString(),
|
|
ad_url = row["ad_url"].ParseToString(),
|
|
jit_expire_time = row["jit_expire_time"].IsNullOrEmpty() ? new DateTime?() : Convert.ToDateTime(row["jit_expire_time"]),
|
|
};
|
|
shopList.Add(shop);
|
|
}
|
|
|
|
//sql = "\r\nINSERT INTO kjd.shop_add_prod_count(shop_id,shop_account,add_product_remaining,add_product_month) VALUES ";
|
|
//foreach (var shop in shopList)
|
|
//{
|
|
// sql += "\r\n('" + shop.shop_id + "','" + shop.shop_account + "'," + shop.add_product_remaining + "," + shop.add_product_month + "),";
|
|
//}
|
|
//sql = sql.TrimEnd(',') + " \r\n";
|
|
//sql += "ON DUPLICATE KEY UPDATE " +
|
|
// "shop_account=VALUES(shop_account)," +
|
|
// "add_product_remaining=VALUES(add_product_remaining)," +
|
|
// "add_product_month=VALUES(add_product_month);";
|
|
//var result = mySql.ExecuteNonQuery(sql);
|
|
//mySql.Close();
|
|
|
|
int month = DateTime.Now.Month;
|
|
var shopMonthList = shopList.Where(s => s.add_product_month != month);
|
|
if (shopMonthList.Count() > 0)
|
|
{
|
|
int remainCount = 300;
|
|
var shopMonthIdList = shopMonthList.Select(s => s.id);
|
|
mySql = new MysqlUtils(conn);
|
|
string ids = string.Join(",", shopMonthIdList);
|
|
sql = "";
|
|
sql += "update kjd.shop set add_product_remaining=" + remainCount + ", add_product_month=" + month +
|
|
" where 1=1 and id in (" + ids + ");";
|
|
|
|
sql += "\r\nINSERT INTO kjd.shop_add_prod_count(shop_id,shop_account,add_product_remaining,add_product_month) VALUES ";
|
|
foreach (var shop in shopMonthList)
|
|
{
|
|
sql+= "\r\n('" + shop.shop_id + "','" + shop.shop_account + "'," + remainCount + "," + month + "),";
|
|
}
|
|
sql = sql.TrimEnd(',') + " \r\n";
|
|
sql += "ON DUPLICATE KEY UPDATE " +
|
|
"shop_account=VALUES(shop_account)," +
|
|
"add_product_remaining=VALUES(add_product_remaining)," +
|
|
"add_product_month=VALUES(add_product_month);";
|
|
var rst = mySql.ExecuteNonQuery(sql);
|
|
mySql.Close();
|
|
|
|
if (rst)
|
|
{
|
|
foreach (var shop in shopMonthList)
|
|
{
|
|
shop.add_product_month = month;
|
|
shop.add_product_remaining = remainCount;
|
|
}
|
|
}
|
|
}
|
|
var data = JsonUtils.SerializeObjectToString(shopList);
|
|
|
|
|
|
//return "{\"code\":200,\"msg\":\"success\",\"data\":" + data + ",\"c\":\"" + EncrypUtil.Encryption(r2) + "\"}";
|
|
return "{\"code\":200,\"msg\":\"success\",\"data\":" + data + ",\"count\":" + count + "}";
|
|
}
|
|
}
|
|
return "{\"code\":19999,\"msg\":\"未知错误\"}";
|
|
}
|
|
|
|
public string SubSaGetSelectProdShop(string inputData) // 废弃
|
|
{
|
|
if (!string.IsNullOrEmpty(inputData))
|
|
{
|
|
var user_name = RegexUtils.GetStringQuery(ref inputData, "user_name");
|
|
var password = RegexUtils.GetStringQuery(ref inputData, "password");
|
|
var search_id = RegexUtils.GetStringQuery(ref inputData, "search_id");
|
|
var search_user_name = RegexUtils.GetStringQuery(ref inputData, "search_user_name");
|
|
var search_login_name = RegexUtils.GetStringQuery(ref inputData, "search_login_name");
|
|
var search_notes = RegexUtils.GetStringQuery(ref inputData, "search_notes");
|
|
var search_name = RegexUtils.GetStringQuery(ref inputData, "search_name");
|
|
var operate_sub_sa_name = RegexUtils.GetStringQuery(ref inputData, "operate_sub_sa_name")?.Replace("'", "\\'");
|
|
var shop_ids = RegexUtils.GetStringQuery(ref inputData, "shop_ids")?.Replace("'", "");
|
|
if (!string.IsNullOrWhiteSpace(shop_ids))
|
|
{
|
|
List<string> shopIdLst = shop_ids.Split(',').ToList();
|
|
shop_ids = "'" + string.Join("','", shopIdLst) + "'";
|
|
}
|
|
var shop_names = RegexUtils.GetStringQuery(ref inputData, "shop_names");
|
|
if (!string.IsNullOrWhiteSpace(shop_names))
|
|
{
|
|
List<string> shopNameLst = shop_names.Split(',').ToList();
|
|
shop_names = "'" + string.Join("','", shopNameLst) + "'";
|
|
}
|
|
var shop_notes = RegexUtils.GetStringQuery(ref inputData, "shop_notes");
|
|
if (!string.IsNullOrWhiteSpace(shop_notes))
|
|
{
|
|
List<string> shopNotesLst = shop_notes.Split(',').ToList();
|
|
shop_notes = "'" + string.Join("','", shopNotesLst) + "'";
|
|
}
|
|
|
|
var page = RegexUtils.GetStringQuery(ref inputData, "page").ParseToInt();
|
|
var page_size = RegexUtils.GetStringQuery(ref inputData, "page_size").ParseToInt();
|
|
|
|
if (page_size == 0)
|
|
page_size = 50;
|
|
int r2 = 0;
|
|
int.TryParse(RegexUtils.GetStringQuery(ref inputData, "r2"), out r2);
|
|
|
|
string conn = "ConnKJD";
|
|
MysqlUtils mySql = new MysqlUtils(conn);
|
|
|
|
string sql = "SELECT COUNT(s.id) FROM kjd.shop s WHERE 1=1";
|
|
|
|
//where子句
|
|
string where = "";
|
|
if (!string.IsNullOrWhiteSpace(operate_sub_sa_name))
|
|
where += " and (s.shop_id in (SELECT DISTINCT shop_id From kjd.product_select WHERE operate_sub_sa_name='" + operate_sub_sa_name + "') or " +
|
|
"s.shop_id in (SELECT DISTINCT shop_id From kjd.third_product_select WHERE operate_sub_sa_name='" + operate_sub_sa_name + "'))";
|
|
where += " and (s.cookie='' or s.shop_id!='')";
|
|
//if (!string.IsNullOrWhiteSpace(operate_sub_sa_name))
|
|
// where += " and s.operate_sub_sa_name='" + operate_sub_sa_name + "'";
|
|
if (!string.IsNullOrWhiteSpace(search_user_name))
|
|
where += " and s.user_name like '%" + search_user_name + "%'";
|
|
if (!string.IsNullOrWhiteSpace(search_login_name))
|
|
where += " and s.login_name like '%" + search_login_name + "%'";
|
|
if (!string.IsNullOrWhiteSpace(search_notes))
|
|
where += " and s.notes like '%" + search_notes + "%'";
|
|
if (!string.IsNullOrWhiteSpace(search_id))
|
|
where += " and s.shop_id like '%" + search_id + "%'";
|
|
if (!string.IsNullOrWhiteSpace(search_name))
|
|
where += " and s.shop_account like '%" + search_name + "%'";
|
|
if (!string.IsNullOrWhiteSpace(shop_ids))
|
|
where += " and s.shop_id in (" + shop_ids + ")";
|
|
if (!string.IsNullOrWhiteSpace(shop_names))
|
|
where += " and s.shop_account in (" + shop_names + ")";
|
|
if (!string.IsNullOrWhiteSpace(shop_notes))
|
|
where += " and s.notes in (" + shop_notes + ")";
|
|
sql += where;
|
|
|
|
var count = mySql.ExecuteRowCount(sql);
|
|
|
|
DataTable dt;
|
|
if (count == 0)
|
|
{
|
|
dt = new DataTable();
|
|
}
|
|
else
|
|
{
|
|
sql = "SELECT s.*,c.add_product_remaining add_remaining,c.add_product_month add_month FROM kjd.shop s LEFT JOIN kjd.shop_add_prod_count c ON s.shop_id=c.shop_id WHERE 1=1";
|
|
|
|
sql += where; // where 子句
|
|
|
|
sql += " ORDER BY s.id DESC";
|
|
sql += " LIMIT " + Math.Max(page - 1, 0) * page_size + "," + page_size;
|
|
dt = mySql.ExecuteDataTable(sql);
|
|
}
|
|
|
|
mySql.Close();
|
|
if (dt != null)
|
|
{
|
|
List<ShopParam> shopList = new List<ShopParam>();
|
|
foreach (DataRow row in dt.Rows)
|
|
{
|
|
ShopParam shop = new ShopParam
|
|
{
|
|
id = Convert.ToInt32(row["id"]),
|
|
login_name = row["login_name"].ToString(),
|
|
login_pass = row["login_pass"].ToString(),
|
|
cookie = row["cookie"].ToString(),
|
|
cookie2 = row["cookie2"].ToString(),
|
|
shop_id = row["shop_id"].ToString(),
|
|
shop_account = row["shop_account"].ToString(),
|
|
sub_user_name = row["sub_user_name"].ToString(),
|
|
user_name = row["user_name"].ToString(),
|
|
company_name = row["company_name"].ToString(),
|
|
notes = row["notes"].ToString(),
|
|
login_status = row["login_status"].ToString(),
|
|
login_status2 = row["login_status2"].ToString(),
|
|
add_product_remaining = Math.Max(0, row["add_remaining"].ParseToInt()),
|
|
add_product_month = row["add_month"].ParseToInt(),
|
|
operate_sub_sa_name = row["operate_sub_sa_name"].ParseToString(),
|
|
ad_cookie = row["ad_cookie"].ParseToString(),
|
|
ad_login_status = row["ad_login_status"].ParseToString(),
|
|
ad_seller_unique_id = row["ad_seller_unique_id"].ParseToString(),
|
|
ad_url = row["ad_url"].ParseToString(),
|
|
};
|
|
shopList.Add(shop);
|
|
}
|
|
|
|
//sql = "\r\nINSERT INTO kjd.shop_add_prod_count(shop_id,shop_account,add_product_remaining,add_product_month) VALUES ";
|
|
//foreach (var shop in shopList)
|
|
//{
|
|
// sql += "\r\n('" + shop.shop_id + "','" + shop.shop_account + "'," + shop.add_product_remaining + "," + shop.add_product_month + "),";
|
|
//}
|
|
//sql = sql.TrimEnd(',') + " \r\n";
|
|
//sql += "ON DUPLICATE KEY UPDATE " +
|
|
// "shop_account=VALUES(shop_account)," +
|
|
// "add_product_remaining=VALUES(add_product_remaining)," +
|
|
// "add_product_month=VALUES(add_product_month);";
|
|
//var result = mySql.ExecuteNonQuery(sql);
|
|
//mySql.Close();
|
|
|
|
int month = DateTime.Now.Month;
|
|
var shopMonthList = shopList.Where(s => s.add_product_month != month);
|
|
if (shopMonthList.Count() > 0)
|
|
{
|
|
int remainCount = 300;
|
|
var shopMonthIdList = shopMonthList.Select(s => s.id);
|
|
mySql = new MysqlUtils(conn);
|
|
string ids = string.Join(",", shopMonthIdList);
|
|
sql = "";
|
|
sql += "update kjd.shop set add_product_remaining=" + remainCount + ", add_product_month=" + month +
|
|
" where 1=1 and id in (" + ids + ");";
|
|
|
|
sql += "\r\nINSERT INTO kjd.shop_add_prod_count(shop_id,shop_account,add_product_remaining,add_product_month) VALUES ";
|
|
foreach (var shop in shopMonthList)
|
|
{
|
|
sql += "\r\n('" + shop.shop_id + "','" + shop.shop_account + "'," + remainCount + "," + month + "),";
|
|
}
|
|
sql = sql.TrimEnd(',') + " \r\n";
|
|
sql += "ON DUPLICATE KEY UPDATE " +
|
|
"shop_account=VALUES(shop_account)," +
|
|
"add_product_remaining=VALUES(add_product_remaining)," +
|
|
"add_product_month=VALUES(add_product_month);";
|
|
var rst = mySql.ExecuteNonQuery(sql);
|
|
mySql.Close();
|
|
|
|
if (rst)
|
|
{
|
|
foreach (var shop in shopMonthList)
|
|
{
|
|
shop.add_product_month = month;
|
|
shop.add_product_remaining = remainCount;
|
|
}
|
|
}
|
|
}
|
|
var data = JsonUtils.SerializeObjectToString(shopList);
|
|
|
|
|
|
//return "{\"code\":200,\"msg\":\"success\",\"data\":" + data + ",\"c\":\"" + EncrypUtil.Encryption(r2) + "\"}";
|
|
return "{\"code\":200,\"msg\":\"success\",\"data\":" + data + ",\"count\":" + count + "}";
|
|
}
|
|
}
|
|
return "{\"code\":19999,\"msg\":\"未知错误\"}";
|
|
}
|
|
|
|
|
|
|
|
public string UpdateAddProdRemaining(string inputData)
|
|
{
|
|
if (!string.IsNullOrEmpty(inputData))
|
|
{
|
|
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 user_name = RegexUtils.GetStringQuery(ref inputData, "user_name");
|
|
var password = RegexUtils.GetStringQuery(ref inputData, "password");
|
|
var remainCount = RegexUtils.GetStringQuery(ref inputData, "remain_count");
|
|
var shop_ids = RegexUtils.GetStringQuery(ref inputData, "shop_ids")?.Replace("'", "");
|
|
if (!string.IsNullOrWhiteSpace(shop_ids))
|
|
{
|
|
List<string> shopIdLst = shop_ids.Split(',').ToList();
|
|
shop_ids = "'" + string.Join("','", shopIdLst) + "'";
|
|
}
|
|
|
|
string conn = "ConnKJD";
|
|
MysqlUtils mySql = new MysqlUtils(conn);
|
|
string sql = "";
|
|
sql += "update kjd.shop_add_prod_count set add_product_remaining=" + remainCount +
|
|
" where 1=1 and shop_id in (" + shop_ids + ");";
|
|
|
|
var rst = mySql.ExecuteNonQuery(sql);
|
|
var msg = mySql.Message;
|
|
mySql.Close();
|
|
|
|
if (rst)
|
|
return "{\"code\":200,\"msg\":\"success\"}";
|
|
else
|
|
return "{\"code\":50000,\"msg\":\"" + msg + "\"}";
|
|
}
|
|
else
|
|
{
|
|
return "{\"code\":19999,\"msg\":\"输入为空\"}";
|
|
}
|
|
}
|
|
|
|
//获取一个手机登录号码下的所有店铺(以便有则更新,无则新增)
|
|
public string GetOneLoginNameShop(string inputData)
|
|
{
|
|
if (!string.IsNullOrEmpty(inputData))
|
|
{
|
|
var user_name = RegexUtils.GetStringQuery(ref inputData, "user_name");
|
|
var login_name = RegexUtils.GetStringQuery(ref inputData, "login_name");
|
|
var password = RegexUtils.GetStringQuery(ref inputData, "password");
|
|
int r2 = 0;
|
|
int.TryParse(RegexUtils.GetStringQuery(ref inputData, "r2"), out r2);
|
|
|
|
string conn = "ConnKJD";
|
|
MysqlUtils mySql = new MysqlUtils(conn);
|
|
string sql = "select id,login_name,login_pass,cookie,cookie2,shop_id,shop_account,sub_user_name,user_name from kjd.shop where user_name='"
|
|
+ user_name + "' and login_name='" + login_name + "'";
|
|
|
|
var dt = mySql.ExecuteDataTable(sql);
|
|
mySql.Close();
|
|
if (dt != null)
|
|
{
|
|
List<ShopParam> shopList = new List<ShopParam>();
|
|
foreach (DataRow row in dt.Rows)
|
|
{
|
|
ShopParam shop = new ShopParam
|
|
{
|
|
id = Convert.ToInt32(row["id"]),
|
|
login_name = row["login_name"].ToString(),
|
|
login_pass = row["login_pass"].ToString(),
|
|
cookie = row["cookie"].ToString(),
|
|
cookie2 = row["cookie2"].ToString(),
|
|
shop_id = row["shop_id"].ToString(),
|
|
shop_account = row["shop_account"].ToString(),
|
|
sub_user_name = row["sub_user_name"].ToString(),
|
|
user_name = row["user_name"].ToString(),
|
|
company_name = row["company_name"].ToString(),
|
|
notes = row["notes"].ToString(),
|
|
login_status = row["login_status"].ToString(),
|
|
};
|
|
shopList.Add(shop);
|
|
}
|
|
var data = JsonUtils.SerializeObjectToString(shopList);
|
|
return "{\"code\":200,\"msg\":\"success\",\"data\":" + data + ",\"c\":\"" + EncrypUtil.Encryption(r2) + "\"}";
|
|
}
|
|
}
|
|
return "{\"code\":19999,\"msg\":\"未知错误\"}";
|
|
}
|
|
|
|
//获取一个手机登录号码下特定ID的店铺
|
|
public string GetOneIdShop(string inputData)
|
|
{
|
|
if (!string.IsNullOrEmpty(inputData))
|
|
{
|
|
var user_name = RegexUtils.GetStringQuery(ref inputData, "user_name");
|
|
var login_name = RegexUtils.GetStringQuery(ref inputData, "login_name");
|
|
var shop_id = RegexUtils.GetStringQuery(ref inputData, "shop_id");
|
|
var password = RegexUtils.GetStringQuery(ref inputData, "password");
|
|
int r2 = 0;
|
|
int.TryParse(RegexUtils.GetStringQuery(ref inputData, "r2"), out r2);
|
|
|
|
string conn = "ConnKJD";
|
|
MysqlUtils mySql = new MysqlUtils(conn);
|
|
string sql = "select id,login_name,login_pass,cookie,cookie2,shop_id,shop_account,sub_user_name,user_name from kjd.shop where user_name='"
|
|
+ user_name + "' and login_name='" + login_name + "' and shop_id='" + shop_id + "'";
|
|
|
|
var dt = mySql.ExecuteDataTable(sql);
|
|
mySql.Close();
|
|
if (dt != null)
|
|
{
|
|
List<ShopParam> shopList = new List<ShopParam>();
|
|
foreach (DataRow row in dt.Rows)
|
|
{
|
|
ShopParam shop = new ShopParam
|
|
{
|
|
id = Convert.ToInt32(row["id"]),
|
|
login_name = row["login_name"].ToString(),
|
|
login_pass = row["login_pass"].ToString(),
|
|
cookie = row["cookie"].ToString(),
|
|
cookie2 = row["cookie2"].ToString(),
|
|
shop_id = row["shop_id"].ToString(),
|
|
shop_account = row["shop_account"].ToString(),
|
|
sub_user_name = row["sub_user_name"].ToString(),
|
|
user_name = row["user_name"].ToString(),
|
|
company_name = row["company_name"].ToString(),
|
|
notes = row["notes"].ToString(),
|
|
login_status = row["login_status"].ToString(),
|
|
};
|
|
shopList.Add(shop);
|
|
}
|
|
var data = JsonUtils.SerializeObjectToString(shopList);
|
|
return "{\"code\":200,\"msg\":\"success\",\"data\":" + data + ",\"c\":\"" + EncrypUtil.Encryption(r2) + "\"}";
|
|
}
|
|
}
|
|
return "{\"code\":19999,\"msg\":\"未知错误\"}";
|
|
}
|
|
|
|
public string AddShop(string inputData, bool isAdmin=false)
|
|
{
|
|
if (!string.IsNullOrEmpty(inputData))
|
|
{
|
|
string user_name = RegexUtils.GetStringQuery(ref inputData, "user_name");
|
|
if (isAdmin)
|
|
user_name = RegexUtils.GetStringQuery(ref inputData, "shop_user_name");
|
|
string login_name = RegexUtils.GetStringQuery(ref inputData, "login_name");
|
|
string login_pass = RegexUtils.GetStringQuery(ref inputData, "login_pass");
|
|
string sub_user_name = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "sub_user_name"));
|
|
string cookie = RegexUtils.GetStringQuery(ref inputData, "cookie");
|
|
string cookie2 = RegexUtils.GetStringQuery(ref inputData, "cookie2");
|
|
string shop_id = RegexUtils.GetStringQuery(ref inputData, "shop_id");
|
|
string shop_account = RegexUtils.GetStringQuery(ref inputData, "shop_account");
|
|
string group_name = RegexUtils.GetStringQuery(ref inputData, "group_name");
|
|
string notes = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "notes"));
|
|
int r2 = 0;
|
|
int.TryParse(RegexUtils.GetStringQuery(ref inputData, "r2"), out r2);
|
|
|
|
if (string.IsNullOrEmpty(user_name))
|
|
{
|
|
return "{\"code\":500,\"msg\":\"没有用户名\"}";
|
|
}
|
|
if (string.IsNullOrEmpty(login_name))
|
|
{
|
|
return "{\"code\":501,\"msg\":\"没有店铺登录名\"}";
|
|
}
|
|
|
|
string conn = "ConnKJD";
|
|
MysqlUtils mySql = new MysqlUtils(conn);
|
|
string sql = "";
|
|
if (string.IsNullOrEmpty(shop_id))
|
|
sql = "select exists (select 1 from kjd.shop where login_name='" + login_name + "' and user_name='" + user_name + "')";
|
|
else
|
|
sql = "select exists (select 1 from kjd.shop where login_name='" + login_name + "' and user_name='" + user_name +
|
|
"' and shop_id='" + shop_id + "')";
|
|
var exist = mySql.ExecuteFirstInt(sql);
|
|
if (exist>0)
|
|
{
|
|
mySql.Close();
|
|
return "{\"code\":500,\"msg\":\"店铺" + login_name +" " + shop_account + "已存在\"}";
|
|
}
|
|
|
|
sql = "insert into kjd.shop (login_name,login_pass,cookie,cookie2,shop_account,shop_id,sub_user_name,user_name,group_name,notes,add_time,mdy_time) " +
|
|
"values ('" + login_name + "','" + login_pass + "','" + cookie + "','" + cookie2 + "','" + shop_account + "','" + shop_id + "','" +
|
|
sub_user_name + "','" + user_name + "','" + group_name + "','" + notes + "','" +
|
|
DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + "','" +
|
|
DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + "');";
|
|
var rst = mySql.ExecuteNonQuery(sql);
|
|
mySql.Close();
|
|
if (rst)
|
|
{
|
|
return "{\"code\":200,\"msg\":\"success\"}";
|
|
}
|
|
}
|
|
return "{\"code\":19999,\"msg\":\"未知错误\"}";
|
|
}
|
|
|
|
public string MdyShop(string inputData, bool isAdmin=false)
|
|
{
|
|
if (!string.IsNullOrEmpty(inputData))
|
|
{
|
|
string user_name = RegexUtils.GetStringQuery(ref inputData, "user_name");
|
|
if (isAdmin)
|
|
user_name = RegexUtils.GetStringQuery(ref inputData, "shop_user_name");
|
|
string login_name = RegexUtils.GetStringQuery(ref inputData, "login_name");
|
|
string login_pass = RegexUtils.GetStringQuery(ref inputData, "login_pass");
|
|
string sub_user_name = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "sub_user_name"));
|
|
string cookie = RegexUtils.GetStringQuery(ref inputData, "cookie");
|
|
string cookie2 = RegexUtils.GetStringQuery(ref inputData, "cookie2");
|
|
string new_shop_id = RegexUtils.GetStringQuery(ref inputData, "new_shop_id");
|
|
string old_shop_id = RegexUtils.GetStringQuery(ref inputData, "shop_id");
|
|
string shop_account = RegexUtils.GetStringQuery(ref inputData, "shop_account");
|
|
string group_name = RegexUtils.GetStringQuery(ref inputData, "group_name");
|
|
string notes = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "notes"));
|
|
string login_status = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "login_status"));
|
|
|
|
int r2 = 0;
|
|
int.TryParse(RegexUtils.GetStringQuery(ref inputData, "r2"), out r2);
|
|
|
|
if (string.IsNullOrEmpty(user_name))
|
|
{
|
|
return "{\"code\":500,\"msg\":\"没有用户名\"}";
|
|
}
|
|
if (string.IsNullOrEmpty(login_name))
|
|
{
|
|
return "{\"code\":501,\"msg\":\"没有店铺登录名\"}";
|
|
}
|
|
|
|
string conn = "ConnKJD";
|
|
MysqlUtils mySql = new MysqlUtils(conn);
|
|
string sql = "update kjd.shop set";
|
|
if (login_pass != null)
|
|
sql += " login_pass='" + login_pass + "',";
|
|
if (cookie != null)
|
|
sql += " cookie='" + cookie + "',";
|
|
if (cookie2 != null)
|
|
sql += " cookie2='" + cookie2 + "',";
|
|
if (new_shop_id != null)
|
|
sql += " shop_id='" + new_shop_id + "',";
|
|
if (shop_account != null)
|
|
sql += " shop_account='" + shop_account + "',";
|
|
if (sub_user_name != null)
|
|
sql += " sub_user_name='" + sub_user_name + "',";
|
|
if (group_name != null)
|
|
sql += " group_name='" + group_name + "',";
|
|
if (notes != null)
|
|
sql += " notes='" + notes + "',";
|
|
if (login_status != null)
|
|
sql += " login_status='" + login_status + "',";
|
|
sql = sql.TrimEnd(',');
|
|
sql += " where login_name='" + login_name + "' and (user_name='" + user_name + "' or sub_user_name like '%" + user_name + "%')";
|
|
if (!string.IsNullOrEmpty(old_shop_id))
|
|
sql += " and shop_id='" + old_shop_id + "'";
|
|
|
|
var rst = mySql.ExecuteNonQuery(sql);
|
|
mySql.Close();
|
|
if (rst)
|
|
{
|
|
return "{\"code\":200,\"msg\":\"success\"}";
|
|
}
|
|
}
|
|
return "{\"code\":19999,\"msg\":\"未知错误\"}";
|
|
}
|
|
|
|
public string MdyCookieAndLoginStatus(string inputData)
|
|
{
|
|
if (!string.IsNullOrEmpty(inputData))
|
|
{
|
|
string login_name = RegexUtils.GetStringQuery(ref inputData, "login_name");
|
|
string cookie = RegexUtils.GetStringQuery(ref inputData, "cookie");
|
|
string cookie2 = RegexUtils.GetStringQuery(ref inputData, "cookie2");
|
|
string login_status = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "login_status"));
|
|
string login_status2 = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "login_status2"));
|
|
|
|
int r2 = 0;
|
|
int.TryParse(RegexUtils.GetStringQuery(ref inputData, "r2"), out r2);
|
|
|
|
if (string.IsNullOrEmpty(login_name))
|
|
{
|
|
return "{\"code\":500,\"msg\":\"店铺没有登录名\"}";
|
|
}
|
|
|
|
string conn = "ConnKJD";
|
|
MysqlUtils mySql = new MysqlUtils(conn);
|
|
string sql = "update kjd.shop set";
|
|
if (cookie != null)
|
|
sql += " cookie='" + cookie + "',";
|
|
if (cookie2 != null)
|
|
sql += " cookie2='" + cookie2 + "',";
|
|
if (login_status != null)
|
|
sql += " login_status='" + login_status + "',";
|
|
if (login_status2 != null)
|
|
sql += " login_status2='" + login_status2 + "',";
|
|
sql = sql.TrimEnd(',');
|
|
sql += " where login_name='" + login_name + "'";
|
|
|
|
var rst = mySql.ExecuteNonQuery(sql);
|
|
mySql.Close();
|
|
if (rst)
|
|
{
|
|
return "{\"code\":200,\"msg\":\"success\"}";
|
|
}
|
|
}
|
|
return "{\"code\":19999,\"msg\":\"未知错误\"}";
|
|
}
|
|
|
|
public string MdyAdsCookieAndLoginStatus(string inputData)
|
|
{
|
|
if (!string.IsNullOrEmpty(inputData))
|
|
{
|
|
string shop_id = RegexUtils.GetStringQuery(ref inputData, "shop_id");
|
|
string ad_url = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "ad_url"));
|
|
string ad_seller_unique_id = RegexUtils.GetStringQuery(ref inputData, "ad_seller_unique_id");
|
|
string ad_login_status = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "ad_login_status"));
|
|
string ad_cookie = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "ad_cookie"));
|
|
|
|
int r2 = 0;
|
|
int.TryParse(RegexUtils.GetStringQuery(ref inputData, "r2"), out r2);
|
|
|
|
if (string.IsNullOrEmpty(shop_id))
|
|
{
|
|
return "{\"code\":500,\"msg\":\"店铺没有登录名\"}";
|
|
}
|
|
|
|
string conn = "ConnKJD";
|
|
MysqlUtils mySql = new MysqlUtils(conn);
|
|
string sql = "update kjd.shop set";
|
|
if (ad_url != null)
|
|
sql += " ad_url='" + ad_url + "',";
|
|
if (ad_seller_unique_id != null)
|
|
sql += " ad_seller_unique_id='" + ad_seller_unique_id + "',";
|
|
if (ad_login_status != null)
|
|
sql += " ad_login_status='" + ad_login_status + "',";
|
|
if (ad_cookie != null)
|
|
sql += " ad_cookie='" + ad_cookie + "',";
|
|
sql = sql.TrimEnd(',');
|
|
sql += " where shop_id='" + shop_id + "'";
|
|
|
|
var rst = mySql.ExecuteNonQuery(sql);
|
|
mySql.Close();
|
|
if (rst)
|
|
{
|
|
return "{\"code\":200,\"msg\":\"success\"}";
|
|
}
|
|
}
|
|
return "{\"code\":19999,\"msg\":\"未知错误\"}";
|
|
}
|
|
|
|
public string DelShop(string inputData, bool isAdmin=false)
|
|
{
|
|
if (!string.IsNullOrEmpty(inputData))
|
|
{
|
|
var login_name = RegexUtils.GetStringQuery(ref inputData, "login_name");
|
|
var user_name = RegexUtils.GetStringQuery(ref inputData, "user_name");
|
|
if (isAdmin)
|
|
user_name = RegexUtils.GetStringQuery(ref inputData, "shop_user_name");
|
|
var shop_id = RegexUtils.GetStringQuery(ref inputData, "shop_id");
|
|
var password = RegexUtils.GetStringQuery(ref inputData, "password");
|
|
int r2 = 0;
|
|
int.TryParse(RegexUtils.GetStringQuery(ref inputData, "r2"), out r2);
|
|
|
|
if (string.IsNullOrEmpty(user_name))
|
|
{
|
|
return "{\"code\":500,\"msg\":\"没有用户名\"}";
|
|
}
|
|
if (string.IsNullOrEmpty(login_name))
|
|
{
|
|
return "{\"code\":501,\"msg\":\"没有店铺登录名\"}";
|
|
}
|
|
|
|
string conn = "ConnKJD";
|
|
MysqlUtils mySql = new MysqlUtils(conn);
|
|
string sql = "delete from kjd.shop where user_name='" + user_name + "' and login_name='" + login_name + "'";
|
|
if (!string.IsNullOrEmpty(shop_id))
|
|
sql += " and shop_id='" + shop_id + "'";
|
|
|
|
var rst = mySql.ExecuteNonQuery(sql);
|
|
mySql.Close();
|
|
if (rst)
|
|
{
|
|
return "{\"code\":200,\"msg\":\"success\"}";
|
|
}
|
|
}
|
|
return "{\"code\":19999,\"msg\":\"未知错误\"}";
|
|
}
|
|
|
|
/// <summary>
|
|
/// 设置店铺的二级超管
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
public string SetShopSubSa(string inputData)
|
|
{
|
|
if (!string.IsNullOrEmpty(inputData))
|
|
{
|
|
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 user_name = RegexUtils.GetStringQuery(ref inputData, "user_name")?.Replace("'", "\\'");
|
|
if (string.IsNullOrEmpty(user_name))
|
|
{
|
|
return "{\"code\":50001,\"msg\":\"没有用户名\"}";
|
|
}
|
|
|
|
var id = RegexUtils.GetStringQuery(ref inputData, "db_id")?.Replace("'", "\\'");
|
|
var login_name = RegexUtils.GetStringQuery(ref inputData, "shop_login_name")?.Replace("'", "\\'");
|
|
var operate_sub_sa_name = RegexUtils.GetStringQuery(ref inputData, "operate_sub_sa_name")?.Replace("'", "\\'");
|
|
|
|
if (string.IsNullOrEmpty(id) && string.IsNullOrEmpty(login_name))
|
|
{
|
|
return "{\"code\":50002,\"msg\":\"未选择任何待上传\"}";
|
|
}
|
|
|
|
string conn = "ConnKJD";
|
|
MysqlUtils mySql = new MysqlUtils(conn);
|
|
string sql = "update kjd.shop set";
|
|
if (operate_sub_sa_name != null)
|
|
sql += " operate_sub_sa_name='" + operate_sub_sa_name + "',";
|
|
sql += " add_sub_sa_time='" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + "',";
|
|
sql = sql.TrimEnd(',');
|
|
if (!string.IsNullOrEmpty(id))
|
|
sql += " where id in (" + id + ")";
|
|
else if (!string.IsNullOrEmpty(login_name))
|
|
sql += " where login_name in ('" + login_name.Replace(",", "','") + "')";
|
|
else
|
|
sql += " where 1=2";
|
|
var rst = mySql.ExecuteNonQuery(sql);
|
|
mySql.Close();
|
|
if (rst)
|
|
{
|
|
return "{\"code\":200,\"msg\":\"success\"}";
|
|
}
|
|
else
|
|
{
|
|
return "{\"code\":500,\"msg\":\"" + mySql.Message + "\"}";
|
|
}
|
|
}
|
|
return "{\"code\":19999,\"msg\":\"输入为空\"}";
|
|
}
|
|
|
|
public string GetShopCardCodeList(string inputData)
|
|
{
|
|
if (!string.IsNullOrEmpty(inputData))
|
|
{
|
|
var user_name = RegexUtils.GetStringQuery(ref inputData, "user_name");
|
|
var password = RegexUtils.GetStringQuery(ref inputData, "password");
|
|
var search_card_code_id = RegexUtils.GetStringQuery(ref inputData, "search_card_code_id");
|
|
var search_shop_id = RegexUtils.GetStringQuery(ref inputData, "search_shop_id");
|
|
var search_shop_name = RegexUtils.GetStringQuery(ref inputData, "search_shop_name");
|
|
var search_notes = RegexUtils.GetStringQuery(ref inputData, "search_notes");
|
|
var card_code_ids = RegexUtils.GetStringQuery(ref inputData, "card_code_ids")?.Replace("'", "");
|
|
var sort_field = RegexUtils.GetStringQuery(ref inputData, "sort_field")?.Replace("'", "");
|
|
if (!string.IsNullOrWhiteSpace(card_code_ids))
|
|
{
|
|
List<string> shopIdLst = card_code_ids.Split(',').ToList();
|
|
card_code_ids = "'" + string.Join("','", shopIdLst) + "'";
|
|
}
|
|
var shop_ids = RegexUtils.GetStringQuery(ref inputData, "shop_ids")?.Replace("'", "");
|
|
if (!string.IsNullOrWhiteSpace(shop_ids))
|
|
{
|
|
List<string> shopIdLst = shop_ids.Split(',').ToList();
|
|
shop_ids = "'" + string.Join("','", shopIdLst) + "'";
|
|
}
|
|
var shop_names = RegexUtils.GetStringQuery(ref inputData, "shop_names");
|
|
if (!string.IsNullOrWhiteSpace(shop_names))
|
|
{
|
|
List<string> shopNameLst = shop_names.Split(',').ToList();
|
|
shop_names = "'" + string.Join("','", shopNameLst) + "'";
|
|
}
|
|
var list_notes = RegexUtils.GetStringQuery(ref inputData, "list_notes");
|
|
if (!string.IsNullOrWhiteSpace(list_notes))
|
|
{
|
|
List<string> notesLst = list_notes.Split(',').ToList();
|
|
list_notes = "'" + string.Join("','", notesLst) + "'";
|
|
}
|
|
|
|
var page = RegexUtils.GetStringQuery(ref inputData, "page").ParseToInt();
|
|
var page_size = RegexUtils.GetStringQuery(ref inputData, "page_size").ParseToInt();
|
|
|
|
if (page_size == 0)
|
|
page_size = 50;
|
|
int r2 = 0;
|
|
int.TryParse(RegexUtils.GetStringQuery(ref inputData, "r2"), out r2);
|
|
|
|
string conn = "ConnKJD";
|
|
MysqlUtils mySql = new MysqlUtils(conn);
|
|
|
|
string sql = "SELECT COUNT(s.id) FROM kjd.jit_card_code s WHERE 1=1";
|
|
|
|
//where子句
|
|
string where = "";
|
|
if (!string.IsNullOrWhiteSpace(search_card_code_id))
|
|
where += " and s.card_code_id like '%" + search_card_code_id + "%'";
|
|
if (!string.IsNullOrWhiteSpace(search_shop_id))
|
|
where += " and s.shop_id like '%" + search_shop_id + "%'";
|
|
if (!string.IsNullOrWhiteSpace(search_shop_name))
|
|
where += " and s.shop_account like '%" + search_shop_name + "%'";
|
|
if (!string.IsNullOrWhiteSpace(search_notes))
|
|
where += " and s.notes like '%" + search_notes + "%'";
|
|
if (!string.IsNullOrWhiteSpace(card_code_ids))
|
|
where += " and s.card_code_id in (" + card_code_ids + ")";
|
|
if (!string.IsNullOrWhiteSpace(shop_ids))
|
|
where += " and s.shop_id in (" + shop_ids + ")";
|
|
if (!string.IsNullOrWhiteSpace(shop_names))
|
|
where += " and s.shop_account in (" + shop_names + ")";
|
|
if (!string.IsNullOrWhiteSpace(list_notes))
|
|
where += " and s.notes in (" + list_notes + ")";
|
|
sql += where;
|
|
|
|
var count = mySql.ExecuteRowCount(sql);
|
|
|
|
DataTable dt;
|
|
if (count == 0)
|
|
{
|
|
dt = new DataTable();
|
|
}
|
|
else
|
|
{
|
|
sql = "SELECT s.* FROM kjd.jit_card_code s WHERE 1=1";
|
|
|
|
sql += where; // where 子句
|
|
|
|
// 排序
|
|
if (sort_field == "expire_time")
|
|
sql += " ORDER BY s.expire_time DESC";
|
|
else
|
|
sql += " ORDER BY s.id DESC";
|
|
sql += " LIMIT " + Math.Max(page - 1, 0) * page_size + "," + page_size;
|
|
dt = mySql.ExecuteDataTable(sql);
|
|
}
|
|
|
|
mySql.Close();
|
|
if (dt != null)
|
|
{
|
|
List<JitCardCodeParam> cardCodeList = new List<JitCardCodeParam>();
|
|
foreach (DataRow row in dt.Rows)
|
|
{
|
|
JitCardCodeParam cardCode = new JitCardCodeParam
|
|
{
|
|
id = Convert.ToInt32(row["id"]),
|
|
shop_id = row["shop_id"].ToString(),
|
|
shop_account = row["shop_account"].ToString(),
|
|
add_time = (DateTime)row["add_time"],
|
|
active_time = row["active_time"].IsNullOrEmpty() ? new DateTime?() : Convert.ToDateTime(row["active_time"]),
|
|
expire_time = row["expire_time"].IsNullOrEmpty() ? new DateTime?() : Convert.ToDateTime(row["expire_time"]),
|
|
card_code_id = row["card_code_id"].ToString(),
|
|
notes = row["notes"].ToString(),
|
|
};
|
|
cardCodeList.Add(cardCode);
|
|
}
|
|
var data = JsonUtils.SerializeObjectToString(cardCodeList);
|
|
|
|
|
|
return "{\"code\":200,\"msg\":\"success\",\"data\":" + data + ",\"count\":" + count + "}";
|
|
}
|
|
}
|
|
return "{\"code\":19999,\"msg\":\"未知错误\"}";
|
|
}
|
|
|
|
public string CreateShopCardCode(string inputData)
|
|
{
|
|
if (!string.IsNullOrEmpty(inputData))
|
|
{
|
|
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 user_name = RegexUtils.GetStringQuery(ref inputData, "user_name")?.Replace("'", "\\'");
|
|
if (string.IsNullOrEmpty(user_name))
|
|
{
|
|
return "{\"code\":50001,\"msg\":\"没有用户名\"}";
|
|
}
|
|
|
|
var create_count = RegexUtils.GetStringQuery(ref inputData, "create_count")?.Replace("'", "\\'");
|
|
|
|
if (string.IsNullOrEmpty(create_count))
|
|
{
|
|
return "{\"code\":50002,\"msg\":\"未选择生成数量\"}";
|
|
}
|
|
|
|
string conn = "ConnKJD";
|
|
MysqlUtils mySql = new MysqlUtils(conn);
|
|
string sql = "insert into kjd.jit_card_code (card_code_id) values ";
|
|
Random random = new Random(Guid.NewGuid().GetHashCode());
|
|
for (int i = 0; i < create_count.ParseToInt(); i++)
|
|
{
|
|
sql += "('" + GenerateCardCode(random, 16) + "'),";
|
|
}
|
|
sql = sql.TrimEnd(',') + ";";
|
|
var rst = mySql.ExecuteNonQuery(sql);
|
|
mySql.Close();
|
|
if (rst)
|
|
{
|
|
return "{\"code\":200,\"msg\":\"success\"}";
|
|
}
|
|
else
|
|
{
|
|
return "{\"code\":500,\"msg\":\"" + mySql.Message + "\"}";
|
|
}
|
|
}
|
|
return "{\"code\":19999,\"msg\":\"输入为空\"}";
|
|
}
|
|
|
|
public string DelShopCardCode(string inputData)
|
|
{
|
|
if (!string.IsNullOrEmpty(inputData))
|
|
{
|
|
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 user_name = RegexUtils.GetStringQuery(ref inputData, "user_name")?.Replace("'", "\\'");
|
|
if (string.IsNullOrEmpty(user_name))
|
|
{
|
|
return "{\"code\":50001,\"msg\":\"没有用户名\"}";
|
|
}
|
|
|
|
var del_ids = RegexUtils.GetStringQuery(ref inputData, "del_ids")?.Replace("'", "\\'");
|
|
|
|
if (string.IsNullOrEmpty(del_ids))
|
|
{
|
|
return "{\"code\":50002,\"msg\":\"未选择删除数据\"}";
|
|
}
|
|
|
|
string conn = "ConnKJD";
|
|
MysqlUtils mySql = new MysqlUtils(conn);
|
|
string sql = "delete from kjd.jit_card_code where id in (" + del_ids + ");";
|
|
var rst = mySql.ExecuteNonQuery(sql);
|
|
mySql.Close();
|
|
if (rst)
|
|
{
|
|
return "{\"code\":200,\"msg\":\"success\"}";
|
|
}
|
|
else
|
|
{
|
|
return "{\"code\":500,\"msg\":\"" + mySql.Message + "\"}";
|
|
}
|
|
}
|
|
return "{\"code\":19999,\"msg\":\"输入为空\"}";
|
|
}
|
|
|
|
public string ActiveJitCardCode(string inputData)
|
|
{
|
|
if (!string.IsNullOrEmpty(inputData))
|
|
{
|
|
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 user_name = RegexUtils.GetStringQuery(ref inputData, "user_name")?.Replace("'", "\\'");
|
|
if (string.IsNullOrEmpty(user_name))
|
|
{
|
|
return "{\"code\":50001,\"msg\":\"没有用户名\"}";
|
|
}
|
|
|
|
var shop_id = RegexUtils.GetStringQuery(ref inputData, "shop_id")?.Replace("'", "\\'");
|
|
var card_code_id = RegexUtils.GetStringQuery(ref inputData, "card_code_id")?.Replace("'", "\\'");
|
|
var shop_account = RegexUtils.GetStringQuery(ref inputData, "shop_account")?.Replace("'", "\\'");
|
|
if (string.IsNullOrEmpty(shop_id))
|
|
{
|
|
return "{\"code\":50002,\"msg\":\"未输入店铺\"}";
|
|
}
|
|
if (string.IsNullOrEmpty(card_code_id))
|
|
{
|
|
return "{\"code\":50002,\"msg\":\"未输入卡密\"}";
|
|
}
|
|
|
|
string conn = "ConnKJD";
|
|
MysqlUtils mySql = new MysqlUtils(conn);
|
|
string sql = "select card_code_id from kjd.jit_card_code where card_code_id = \'" + card_code_id + "\' and active_time is null;";
|
|
var rst = mySql.ExecuteExists(sql);
|
|
if (!rst)
|
|
{
|
|
mySql.Close();
|
|
if (string.IsNullOrEmpty(mySql.Message))
|
|
{
|
|
return "{\"code\":500,\"msg\":\"JIT卡密不存在或已激活\"}";
|
|
}
|
|
else
|
|
{
|
|
return "{\"code\":500,\"msg\":\"" + mySql.Message + "\"}";
|
|
}
|
|
}
|
|
sql = "select s.shop_id,cc.jit_expire_time from kjd.shop s" +
|
|
" LEFT JOIN (SELECT shop_id, MAX(expire_time) as jit_expire_time FROM kjd.jit_card_code GROUP BY shop_id) cc ON s.shop_id=cc.shop_id" +
|
|
" where s.shop_id = '" + shop_id + "';";
|
|
var dt = mySql.ExecuteDataTable(sql);
|
|
if (dt == null || !mySql.Message.IsNullOrEmpty())
|
|
{
|
|
mySql.Close();
|
|
return "{\"code\":500,\"msg\":\"" + mySql.Message + "\"}";
|
|
}
|
|
else if (dt.Rows.Count == 0)
|
|
{
|
|
mySql.Close();
|
|
return "{\"code\":500,\"msg\":\"店铺不存在\"}";
|
|
}
|
|
|
|
var row = dt.Rows[0];
|
|
ShopParam shop = new ShopParam
|
|
{
|
|
shop_id = row["shop_id"].ToString(),
|
|
jit_expire_time = row["jit_expire_time"].IsNullOrEmpty() ? new DateTime?() : Convert.ToDateTime(row["jit_expire_time"]),
|
|
};
|
|
DateTime activeTime = DateTime.Now;
|
|
DateTime expireTime = DateTime.Now.Date.AddMonths(1);
|
|
if (shop.jit_expire_time != null && shop.jit_expire_time.Value.Date > DateTime.Now.Date)
|
|
expireTime = shop.jit_expire_time.Value.Date.AddMonths(1);
|
|
shop.jit_expire_time = expireTime;
|
|
|
|
sql = "update kjd.jit_card_code set active_time='" + activeTime.ToString("yyyy/MM/dd HH:mm:ss") + "'," +
|
|
"expire_time='" + expireTime.ToString("yyyy/MM/dd HH:mm:ss") + "'," +
|
|
"shop_id='" + shop_id + "',shop_account='" + shop_account + "'" +
|
|
" where card_code_id='" + card_code_id + "';";
|
|
rst = mySql.ExecuteNonQuery(sql);
|
|
|
|
mySql.Close();
|
|
if (rst)
|
|
{
|
|
return "{\"code\":200,\"expire_time\":\"" + expireTime + "\",\"msg\":\"success\"}";
|
|
}
|
|
else
|
|
{
|
|
return "{\"code\":500,\"msg\":\"" + mySql.Message + "\"}";
|
|
}
|
|
}
|
|
return "{\"code\":19999,\"msg\":\"输入为空\"}";
|
|
}
|
|
|
|
private static readonly char[] chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789".ToCharArray(); // 增加特殊字符
|
|
|
|
public static string GenerateCardCode(Random random, int length)
|
|
{
|
|
StringBuilder result = new StringBuilder(length);
|
|
for (int i = 0; i < length; i++)
|
|
{
|
|
result.Append(chars[random.Next(chars.Length)]);
|
|
}
|
|
return result.ToString();
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|