249 lines
8.8 KiB
C#
249 lines
8.8 KiB
C#
using Common.DbExtends;
|
|
using Common.DbExtends.Extends;
|
|
using Common.Models.Enums;
|
|
using Common.Models.SubTables;
|
|
using Common.Models.UnqTables;
|
|
using Server.MyClass.Views;
|
|
using SqlSugar;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
using System.Web.Http;
|
|
using Server.Controllers.Help;
|
|
using Server.Services;
|
|
using Server.Utils;
|
|
|
|
namespace Server.Controllers.MemberManagement
|
|
{
|
|
public class BlacklistController : DefaultController
|
|
{
|
|
|
|
/// <summary>
|
|
/// 获取黑名单
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
[HttpPost, ErrorFilter]
|
|
public WebResult GetBlacklist()
|
|
{
|
|
var Keyword = GetString("Keyword");
|
|
var PageIndex = GetInt("PageIndex", true);
|
|
var PageSize = GetInt("PageSize", true);
|
|
if (PageSize > 100) PageSize = 100;
|
|
|
|
var tNumber = 0;
|
|
|
|
var exp = Expressionable.Create<UserBlack>();
|
|
exp.And(f => !f.IsDel);
|
|
if (!string.IsNullOrEmpty(Keyword))
|
|
{
|
|
exp.And(f => f.NickName.Contains(Keyword) || f.Username.Contains(Keyword));
|
|
}
|
|
var DataList = Db.Queryable<UserBlack>().Where(exp.ToExpression()).ToPageList(PageIndex, PageSize, ref tNumber);
|
|
var res = new PageResult<UserBlack>(DataList, tNumber, PageSize, PageIndex);
|
|
return PutData(res);
|
|
}
|
|
/// <summary>
|
|
/// 加白名单
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
public WebResult AddWhite()
|
|
{
|
|
var Username = GetString("Username", true);
|
|
var userType = GetEnum<UserType>("UserType", true);
|
|
|
|
var user = Db.Queryable<User>().Where(f => f.Username == Username && f.UserType == userType).First();
|
|
|
|
if (user == null)
|
|
{
|
|
user = new User()
|
|
{
|
|
Username = Username,
|
|
UserType = userType,
|
|
CreateTime = DateTime.Now,
|
|
};
|
|
|
|
Db.Save(user);
|
|
}
|
|
|
|
var userData = Db.GetUserData(user.Id);
|
|
if (userData.UserStatus == UserStatus.白名单)
|
|
{
|
|
return PutData("该用户已在白名单中,请勿重复操作");
|
|
}
|
|
|
|
userData.UserStatus = UserStatus.白名单;
|
|
Db.Save(userData);
|
|
|
|
return PutSuccess;
|
|
}
|
|
/// <summary>
|
|
/// 删除用户黑名单
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
public WebResult RemoveBlack()
|
|
{
|
|
var username = GetString("Username", true);
|
|
var userType = GetEnum<UserType>("UserType", true);
|
|
var isCloud = GetBoolean("IsCloud");
|
|
|
|
var blacklistService = new BlacklistService();
|
|
var result = blacklistService.RemoveUserBlack(username, userType, isCloud);
|
|
if (string.IsNullOrWhiteSpace(result))
|
|
{
|
|
return PutSuccess;
|
|
}
|
|
return PutData("删除失败");
|
|
}
|
|
|
|
/// <summary>
|
|
/// 加用户黑名单
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
[HttpPost, ErrorFilter]
|
|
public WebResult AddBlack()
|
|
{
|
|
//加黑类型
|
|
var type = GetEnum<UserType>("Type", true);
|
|
var userId = GetString("UserName", true);
|
|
var nickName = GetString("NickName");
|
|
var blackType = GetEnum<BlackType>("BlackType", true);
|
|
var remark = GetString("Remark");
|
|
var avatar = GetString("Avatar");
|
|
var isCloud = GetBoolean("IsCloud");
|
|
var blacklistService = new BlacklistService();
|
|
var result = blacklistService.AddUserBlack(type, userId, nickName, blackType, avatar, remark, isCloud);
|
|
if (string.IsNullOrWhiteSpace(result))
|
|
{
|
|
return PutSuccess;
|
|
}
|
|
return PutData(result);
|
|
}
|
|
/// <summary>
|
|
/// 加商品黑名单
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
[HttpPost, ErrorFilter]
|
|
public WebResult AddGoodsBlack()
|
|
{
|
|
//加黑类型
|
|
var goodsId = GetString("GoodsId", true);
|
|
var platform = GetEnum<LianmengType>("Platform", true);
|
|
var storeName = GetString("StoreName");
|
|
var remark = GetString("Remark");
|
|
var isCloud = GetBoolean("IsCloud");
|
|
var blacklistService = new BlacklistService();
|
|
var result = blacklistService.AddGoodsBlack(goodsId, platform, storeName, remark, isCloud);
|
|
if (string.IsNullOrWhiteSpace(result))
|
|
{
|
|
return PutSuccess;
|
|
}
|
|
return PutData(result);
|
|
}
|
|
/// <summary>
|
|
/// 删除商品黑名单
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
[HttpPost, ErrorFilter]
|
|
public WebResult RemoveGoodsBlack()
|
|
{
|
|
//加黑类型
|
|
var goodsId = GetString("GoodsId", true);
|
|
var platform = GetEnum<LianmengType>("Platform", true);
|
|
var isCloud = GetBoolean("IsCloud");
|
|
var blacklistService = new BlacklistService();
|
|
var result = blacklistService.RemoveGoodsBlack(goodsId, platform, isCloud);
|
|
if (string.IsNullOrWhiteSpace(result))
|
|
{
|
|
return PutSuccess;
|
|
}
|
|
return PutData(result);
|
|
}
|
|
/// <summary>
|
|
/// 加店铺黑名单
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
[HttpPost, ErrorFilter]
|
|
public WebResult AddStoreBlack()
|
|
{
|
|
//加黑类型
|
|
var platform = GetEnum<LianmengType>("Platform", true);
|
|
var storeId = GetString("StoreId", true);
|
|
var storeName = GetString("StoreName");
|
|
var remark = GetString("Remark");
|
|
var isCloud = GetBoolean("IsCloud");
|
|
var blacklistService = new BlacklistService();
|
|
var result = blacklistService.AddStoreBlack(platform, storeId, storeName, remark, isCloud);
|
|
if (string.IsNullOrWhiteSpace(result))
|
|
{
|
|
return PutSuccess;
|
|
}
|
|
return PutData(result);
|
|
}
|
|
/// <summary>
|
|
/// 删除商店黑名单
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
[HttpPost, ErrorFilter]
|
|
public WebResult RemoveStoreBlack()
|
|
{
|
|
//加黑类型
|
|
var storeId = GetString("StoreId", true);
|
|
var platform = GetEnum<LianmengType>("Platform", true);
|
|
var isCloud = GetBoolean("IsCloud");
|
|
var blacklistService = new BlacklistService();
|
|
var result = blacklistService.RemoveStoreBlack(storeId, platform, isCloud);
|
|
if (string.IsNullOrWhiteSpace(result))
|
|
{
|
|
return PutSuccess;
|
|
}
|
|
return PutData(result);
|
|
}
|
|
/// <summary>
|
|
/// 获取商店黑名单列表
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
[HttpPost, ErrorFilter]
|
|
public WebResult GetGoodsBlacklist()
|
|
{
|
|
var Keyword = GetString("Keyword");
|
|
var PageIndex = GetInt("PageIndex", true);
|
|
var PageSize = GetInt("PageSize", true);
|
|
if (PageSize > 100) PageSize = 100;
|
|
var tNumber = 0;
|
|
var exp = Expressionable.Create<GoodsBlacklist>();
|
|
exp.And(f => !f.IsDel);
|
|
if (!string.IsNullOrEmpty(Keyword))
|
|
{
|
|
exp.And(f => f.StoreName.Contains(Keyword) || f.Remark.Contains(Keyword));
|
|
}
|
|
var DataList = Db.Queryable<GoodsBlacklist>().Where(exp.ToExpression()).ToPageList(PageIndex, PageSize, ref tNumber);
|
|
var res = new PageResult<GoodsBlacklist>(DataList, tNumber, PageSize, PageIndex);
|
|
return PutData(res);
|
|
}
|
|
/// <summary>
|
|
/// 获取店铺黑名单列表
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
[HttpPost, ErrorFilter]
|
|
public WebResult GetStoreBlacklist()
|
|
{
|
|
var Keyword = GetString("Keyword");
|
|
var PageIndex = GetInt("PageIndex", true);
|
|
var PageSize = GetInt("PageSize", true);
|
|
if (PageSize > 100) PageSize = 100;
|
|
var tNumber = 0;
|
|
var exp = Expressionable.Create<StoreBlacklist>();
|
|
exp.And(f => !f.IsDel);
|
|
if (!string.IsNullOrEmpty(Keyword))
|
|
{
|
|
exp.And(f => f.StoreName.Contains(Keyword) || f.Remark.Contains(Keyword));
|
|
}
|
|
var DataList = Db.Queryable<StoreBlacklist>().Where(exp.ToExpression()).ToPageList(PageIndex, PageSize, ref tNumber);
|
|
var res = new PageResult<StoreBlacklist>(DataList, tNumber, PageSize, PageIndex);
|
|
return PutData(res);
|
|
}
|
|
}
|
|
}
|