using CommonUtil;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;
using Operater.DAL;
using Operater.DbModel;
using Operater.DTO.Market;
using Operater.Service;
using SqlSugar;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
namespace Api.Operater.Controllers
{
[Route(TopConstants.API_ROUTE)]
public class MarketController : BaseController
{
private readonly ILoginUserInfoService _loginUserInfoService;
public MarketController(ILoginUserInfoService loginUserInfoService)
{
_loginUserInfoService = loginUserInfoService;
}
///
/// 查询指定号码任务列表
///
///
///
[HttpPost]
public IActionResult GetCustomernumbersendTaskList([FromBody] GetCustomernumbersendTaskListRequest request)
{
int totalcount = 0;
var userInfo= _loginUserInfoService.GetUserInfo();
var where_expression = Expressionable.Create().AndIF(!request.theme.IsNullOrEmpty(), t => t.Theme.Contains(request.theme))
.AndIF(!request.sttime.IsNull()&&request.sttime>DateTime.Parse("1900-01-01 00:00:00"),t=>t.Createtime>=request.sttime)
.AndIF(!request.etime.IsNull() && request.sttime > DateTime.Parse("1900-01-01 00:00:00"), t => t.Createtime >= request.etime)
.And(t=>t.Isshowsend==0)
.And(t=>t.Sellerid==userInfo.Id)
.And(t=>t.Istest=="0")
.ToExpression();
var tasklist = new CustomernumbersendDAL().ListPageGet(where_expression,t=>t.Createtime, DbEnum.OrderType.Desc, request.PageNo,request.PageSize,ref totalcount);
return Success(tasklist, request.PageNo, request.PageSize, totalcount);
}
///
/// 查询最新的短信内容
///
///
///
[HttpPost]
public IActionResult GetCustomernumbersendTaskFirst()
{
var userInfo = _loginUserInfoService.GetUserInfo();
var where_expression = Expressionable.Create()
.And(t => t.Sellerid == userInfo.Id)
.ToExpression();
var tasklist = new CustomernumbersendDAL().GetFirst(where_expression, t => t.Createtime, DbEnum.OrderType.Desc);
var where_expression1 = Expressionable.Create()
.And(t => t.Sellerid == userInfo.Id)
.And(t => t.Istest == "1")
.ToExpression();
var tasklist1 = new CustomernumbersendDAL().GetFirst(where_expression1, t => t.Createtime, DbEnum.OrderType.Desc);
var result = new { smsname = tasklist.Smsname, Smscontent = tasklist.Smscontent, mobile = tasklist1.Mobile };
return Success(result);
}
///
/// 创建指定号码任务
///
///
///
[HttpPost]
public IActionResult AddCustomernumbersendTask([FromBody] AddCustomernumbersendTaskRequest request)
{
var userInfo = _loginUserInfoService.GetUserInfo();
Customernumbersend customernumbersend = new Customernumbersend
{
Id= Guid.NewGuid().ToString(),
Createtime=DateTime.Now,
Mobile=request.mobile,
Sendcount=request.sendcount,
Smscontent=request.smscontent,
Sellerid=userInfo.Id,
Sendtype=request.sendtype,
Smsname=request.smsname,
Wantsendtype=request.wantsendtype,
Wantsendtime=request.wantsendtime,
Theme=request.theme,
Pdday=request.pdday,
Istest=request.istest,
Querytext=request.querytext,
Cyclestime=request.cyclestime,
Cyclescount=request.cyclescount,
Cycleminute=request.cycleminute
};
var aa = JSONUtil.ObjectToJson(customernumbersend);
bool issuccess= new CustomernumbersendDAL().Insert(customernumbersend);
return Success(issuccess);
}
///
/// 终止指定号码任务
///
///
///
[HttpPost]
public IActionResult DelCustomernumbersendTask([FromBody] DelCustomernumbersendTaskRequest request)
{
var userInfo = _loginUserInfoService.GetUserInfo();
Customernumbersend customernumbersend = new Customernumbersend
{
Sendstatus = 3
};
int issuccess = new CustomernumbersendDAL().Update(customernumbersend, i => new { i.Sendstatus }, t => t.Id == request.id);
return Success(issuccess==1?true:false);
}
///
/// 获取标签
///
///
[HttpPost]
public IActionResult GetLabelList()
{
var labellist = new MembersRulesengineDAL().ListGet(t => t.IsUsing == 1);
return Success(labellist);
}
}
}