@@ -9,6 +9,7 @@
|
||||
<strong>@Html.DisplayFor(model => Model.Errmsg)</strong>
|
||||
</h5>
|
||||
<h3><strong>发送短信</strong></h3>
|
||||
|
||||
<form method="post">
|
||||
<input type="hidden" asp-for="pageid" />
|
||||
<input type="submit" value="拉取5天内的回复短信" class="btn btn-primary" asp-page-handler="Pull" />
|
||||
|
||||
@@ -40,7 +40,7 @@ namespace _2021_backend.Pages.Message
|
||||
Context = context;
|
||||
}
|
||||
|
||||
public IActionResult Construct(int PageId)
|
||||
public IActionResult Construct(int PageId, string emsg)
|
||||
{
|
||||
List<int> stus;
|
||||
IQueryable<int> q;
|
||||
@@ -62,101 +62,149 @@ namespace _2021_backend.Pages.Message
|
||||
int count = (PageId + 1) * pageSize > cnt ? (cnt - PageId * pageSize) : pageSize;
|
||||
Messages = Messages.GetRange(PageId * pageSize, count);
|
||||
|
||||
Errmsg = emsg;
|
||||
|
||||
return Page();
|
||||
}
|
||||
|
||||
public async Task<IActionResult> OnGetAsync(int PageId)
|
||||
{
|
||||
return Construct(PageId);
|
||||
return Construct(PageId, "");
|
||||
}
|
||||
|
||||
public async Task<IActionResult> OnPostAsync(int PageId)
|
||||
{
|
||||
return Construct(PageId);
|
||||
return Construct(PageId, "");
|
||||
}
|
||||
|
||||
public async void OnPostPullAsync(int PageId)
|
||||
{
|
||||
|
||||
var stu = Context.Students.ToList();
|
||||
foreach (var e in stu)
|
||||
if (HttpContext.User.HasClaim((c) =>
|
||||
{
|
||||
await Utils.TencentSMS.Pull(Context, e, true);
|
||||
}
|
||||
return c.Type == ClaimTypes.Role && (
|
||||
c.Value == "admin" || c.Value == "manager");
|
||||
}))
|
||||
{
|
||||
var stu = Context.Students.ToList();
|
||||
foreach (var e in stu)
|
||||
{
|
||||
await Utils.TencentSMS.Pull(Context, e, true);
|
||||
}
|
||||
|
||||
Construct(PageId);
|
||||
Construct(PageId, "");
|
||||
}
|
||||
else Construct(PageId, "您无权进行此操作");
|
||||
}
|
||||
|
||||
public async Task<IActionResult> OnPostSignAsync(int PageId)
|
||||
{
|
||||
|
||||
var stu = Context.Students.ToList();
|
||||
foreach (var e in stu)
|
||||
if (HttpContext.User.HasClaim((c) =>
|
||||
{
|
||||
if (e.Status == status.刚报名)
|
||||
await Utils.TencentSMS.Send(Context, SMSType.Signed, e, Context.Users.Find(int.Parse(User.Claims.FirstOrDefault(c => c.Type == ClaimTypes.Sid).Value)).Name);
|
||||
}
|
||||
return c.Type == ClaimTypes.Role && (
|
||||
c.Value == "admin" || c.Value == "manager");
|
||||
}))
|
||||
{
|
||||
var stu = Context.Students.ToList();
|
||||
foreach (var e in stu)
|
||||
{
|
||||
if (e.Status == status.刚报名)
|
||||
await Utils.TencentSMS.Send(Context, SMSType.Signed, e, Context.Users.Find(int.Parse(User.Claims.FirstOrDefault(c => c.Type == ClaimTypes.Sid).Value)).Name);
|
||||
}
|
||||
|
||||
return Construct(PageId);
|
||||
return Construct(PageId, "");
|
||||
}
|
||||
else return Construct(PageId, "您无权进行此操作");
|
||||
}
|
||||
|
||||
public async Task<IActionResult> OnPostResultRejectAsync(int PageId)
|
||||
{
|
||||
var stu = Context.Students.ToList();
|
||||
foreach (var e in stu)
|
||||
if (HttpContext.User.HasClaim((c) =>
|
||||
{
|
||||
if (e.Status == status.不通过)
|
||||
return c.Type == ClaimTypes.Role && (
|
||||
c.Value == "admin" || c.Value == "manager");
|
||||
}))
|
||||
{
|
||||
var stu = Context.Students.ToList();
|
||||
foreach (var e in stu)
|
||||
{
|
||||
if (!Context.SMS.Any(it => it.Host == e.Id && it.Type == SMSType.Reject))
|
||||
await Utils.TencentSMS.Send(Context, SMSType.Reject, e, Context.Users.Find(int.Parse(User.Claims.FirstOrDefault(c => c.Type == ClaimTypes.Sid).Value)).Name);
|
||||
if (e.Status == status.不通过)
|
||||
{
|
||||
if (!Context.SMS.Any(it => it.Host == e.Id && it.Type == SMSType.Reject))
|
||||
await Utils.TencentSMS.Send(Context, SMSType.Reject, e, Context.Users.Find(int.Parse(User.Claims.FirstOrDefault(c => c.Type == ClaimTypes.Sid).Value)).Name);
|
||||
}
|
||||
}
|
||||
return Construct(PageId, "");
|
||||
}
|
||||
return Construct(PageId);
|
||||
else return Construct(PageId, "您无权进行此操作");
|
||||
}
|
||||
|
||||
public async Task<IActionResult> OnPostTimeSelectAsync(int PageId)
|
||||
{
|
||||
var stu = Context.Students.ToList();
|
||||
foreach (var e in stu)
|
||||
if (HttpContext.User.HasClaim((c) =>
|
||||
{
|
||||
if (e.Status != status.不通过 && e.Status != status.已选时间)
|
||||
return c.Type == ClaimTypes.Role && (
|
||||
c.Value == "admin" || c.Value == "manager");
|
||||
}))
|
||||
{
|
||||
var stu = Context.Students.ToList();
|
||||
foreach (var e in stu)
|
||||
{
|
||||
await Utils.TencentSMS.Send(Context, SMSType.TimeSelect, e, Context.Users.Find(int.Parse(User.Claims.FirstOrDefault(c => c.Type == ClaimTypes.Sid).Value)).Name);
|
||||
if (e.Status != status.不通过 && e.Status != status.已选时间)
|
||||
{
|
||||
await Utils.TencentSMS.Send(Context, SMSType.TimeSelect, e, Context.Users.Find(int.Parse(User.Claims.FirstOrDefault(c => c.Type == ClaimTypes.Sid).Value)).Name);
|
||||
}
|
||||
}
|
||||
Context.SaveChanges();
|
||||
return Construct(PageId, "");
|
||||
}
|
||||
Context.SaveChanges();
|
||||
return Construct(PageId);
|
||||
else return Construct(PageId, "您无权进行此操作");
|
||||
}
|
||||
|
||||
public async Task<IActionResult> OnPostResultAccpetAsync(int PageId)
|
||||
public async Task<IActionResult> OnPostResultAcceptAsync(int PageId)
|
||||
{
|
||||
var stu = Context.Students.ToList();
|
||||
foreach (var e in stu)
|
||||
if (HttpContext.User.HasClaim((c) =>
|
||||
{
|
||||
if (e.Status == status.通过)
|
||||
return c.Type == ClaimTypes.Role && (
|
||||
c.Value == "admin" || c.Value == "manager");
|
||||
}))
|
||||
{
|
||||
var stu = Context.Students.ToList();
|
||||
foreach (var e in stu)
|
||||
{
|
||||
if (!Context.SMS.Any(it => it.Host == e.Id && it.Type == SMSType.Accept))
|
||||
await Utils.TencentSMS.Send(Context, SMSType.Accept, e, Context.Users.Find(int.Parse(User.Claims.FirstOrDefault(c => c.Type == ClaimTypes.Sid).Value)).Name);
|
||||
}
|
||||
if (e.Status == status.通过)
|
||||
{
|
||||
if (!Context.SMS.Any(it => it.Host == e.Id && it.Type == SMSType.Accept))
|
||||
await Utils.TencentSMS.Send(Context, SMSType.Accept, e, Context.Users.Find(int.Parse(User.Claims.FirstOrDefault(c => c.Type == ClaimTypes.Sid).Value)).Name);
|
||||
}
|
||||
|
||||
}
|
||||
return Construct(PageId, "");
|
||||
}
|
||||
return Construct(PageId);
|
||||
else return Construct(PageId, "您无权进行此操作");
|
||||
}
|
||||
|
||||
public async Task<IActionResult> OnPostTimeSetAsync(int PageId)
|
||||
{
|
||||
var stu = Context.Students.ToList();
|
||||
foreach(var e in stu)
|
||||
if (HttpContext.User.HasClaim((c) =>
|
||||
{
|
||||
var t = Context.Sessions.Find(e.InterviewTime);
|
||||
if(t != null && t.Students.Find(s => s==e.Id)!= 0 && e.Status == status.已选时间)
|
||||
return c.Type == ClaimTypes.Role && (
|
||||
c.Value == "admin" || c.Value == "manager");
|
||||
}))
|
||||
{
|
||||
var stu = Context.Students.ToList();
|
||||
foreach (var e in stu)
|
||||
{
|
||||
await Utils.TencentSMS.Send(Context, SMSType.TimeSet, e, Context.Users.Find(int.Parse(User.Claims.FirstOrDefault(c => c.Type == ClaimTypes.Sid).Value)).Name);
|
||||
e.Status = status.已确认时间;
|
||||
var t = Context.Sessions.Find(e.InterviewTime);
|
||||
if (t != null && t.Students.Find(s => s == e.Id) != 0 && e.Status == status.已选时间)
|
||||
{
|
||||
await Utils.TencentSMS.Send(Context, SMSType.TimeSet, e, Context.Users.Find(int.Parse(User.Claims.FirstOrDefault(c => c.Type == ClaimTypes.Sid).Value)).Name);
|
||||
e.Status = status.已确认时间;
|
||||
}
|
||||
}
|
||||
Context.SaveChanges();
|
||||
return Construct(PageId, "");
|
||||
}
|
||||
Context.SaveChanges();
|
||||
return Construct(PageId);
|
||||
else return Construct(PageId, "您无权进行此操作");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user