public async Task <CommonResponse <string> > ReturnWarn([FromBody] ReturnWarnRequest request) { request.SerializeToLog("ReturnWarn"); var response = await _borrowRegisterService.ReturnWarn(request); response.SerializeToLog("ReturnWarn"); return(response); }
public async Task <CommonResponse <string> > ReturnWarn(ReturnWarnRequest request) { var response = new CommonResponse <string>(); try { if (request == null) { throw new BizException("参数不能为空"); } var borrowRegister = await _db.BorrowRegister.FirstAsync(c => c.Id == request.BorrowRegisterId); if (borrowRegister == null) { throw new BizException("借阅记录不存在"); } if (!(borrowRegister.Status == BorrowRegisterStatus.Borrowed || borrowRegister.Status == BorrowRegisterStatus.Overdue || borrowRegister.Status == BorrowRegisterStatus.Renewed)) { throw new BizException("借阅登记状态为:已借出、延期、逾期 才能催还"); } //var archives = await _db.ArchivesInfo.Join(_db.BorrowRegisterDetail.Where(j => j.BorrowRegisterId == borrowRegister.Id).Take(1), a => a.Id, b => b.ArchivesId, (a, b) => new { a, b }) // .Select(c => new // { // c.a.ProjectName, // c.b.Id // }).FirstOrDefaultAsync(); var projects = await _db.BorrowRegisterDetail.AsNoTracking().FirstOrDefaultAsync(c => c.BorrowRegisterId == borrowRegister.Id); ApplicationLog.Info("SMS_171116662." + borrowRegister.Phone + "." + borrowRegister.Id); var msgRes = OssHelper.SendSms("SMS_171116662", borrowRegister.Phone, $"{{\"name\":\"{borrowRegister.Borrower}\", \"PtName\":\"{(projects?.ProjectName)}\", \"RDate\":\"{borrowRegister.ReturnDate.ToString("yyyy-MM-dd")}\" }}"); if (msgRes.Code == "OK") { borrowRegister.ReturnNotified = true; borrowRegister.NotifyCount = borrowRegister.NotifyCount.GetValueOrDefault() + 1; borrowRegister.UpdateTime = DateTime.Now; await _db.SaveChangesAsync(); response.Data = borrowRegister.NotifyCount.ToString(); } response.Success = true; } catch (BizException ex) { response.Message = ex.Message; } catch (Exception ex) { response.Message = "催还发生异常"; ApplicationLog.Error("ReturnWarn", ex); } return(response); }