Commit 3449bf12 authored by liudong1993's avatar liudong1993

1

parent 6d0347e0
...@@ -15,6 +15,8 @@ namespace EduSpider.IServices ...@@ -15,6 +15,8 @@ namespace EduSpider.IServices
{ {
string ImportExcelForStuExamScore(string path_server,int courseId, string examName, int userId); string ImportExcelForStuExamScore(string path_server,int courseId, string examName, int userId);
List<RB_Exam_Extend> GetExamPageList(int pageIndex, int pageSize, out long count, RB_Exam_Extend demodel); List<RB_Exam_Extend> GetExamPageList(int pageIndex, int pageSize, out long count, RB_Exam_Extend demodel);
object GetExamStuScoreInfo(int examId, int stuId); object GetExamStuScoreInfo(int examId, int stuId, int stuUId);
List<RB_Exam_Score_Extend> GetExamStuList(RB_Exam_Score_Extend demodel);
string DelExamInfo(int examId, int baseUserId);
} }
} }
...@@ -43,5 +43,15 @@ namespace EduSpider.Model.Entity ...@@ -43,5 +43,15 @@ namespace EduSpider.Model.Entity
/// 创建时间 /// 创建时间
/// </summary> /// </summary>
public DateTime CreateTime { get; set; } public DateTime CreateTime { get; set; }
/// <summary>
/// 更新人
/// </summary>
public int UpdateBy { get; set; }
/// <summary>
/// 更新时间
/// </summary>
public DateTime UpdateTime { get; set; }
} }
} }
...@@ -45,7 +45,7 @@ LEFT JOIN ( ...@@ -45,7 +45,7 @@ LEFT JOIN (
SELECT e.ExamId,COUNT(0) as StuNum,SUM(e.TScore) as TScore FROM rb_exam_score e GROUP BY e.ExamId SELECT e.ExamId,COUNT(0) as StuNum,SUM(e.TScore) as TScore FROM rb_exam_score e GROUP BY e.ExamId
) es on e.ExamId = es.ExamId ) es on e.ExamId = es.ExamId
where {where} order by e.EcamId desc"; where {where} order by e.EcamId desc";
return GetPage<RB_Exam_Extend>(pageIndex, pageSize, out count, sql).ToList(); return GetPage<RB_Exam_Extend>(pageIndex, pageSize, out count, sql, parameters).ToList();
} }
} }
} }
...@@ -6,6 +6,7 @@ using System.Collections.Generic; ...@@ -6,6 +6,7 @@ using System.Collections.Generic;
using System.Linq; using System.Linq;
using System.Text; using System.Text;
using System.Threading.Tasks; using System.Threading.Tasks;
using VTX.FW.DB.Dapper;
namespace EduSpider.Repository namespace EduSpider.Repository
{ {
...@@ -16,6 +17,7 @@ namespace EduSpider.Repository ...@@ -16,6 +17,7 @@ namespace EduSpider.Repository
{ {
public List<RB_Exam_Score_Extend> GetList(RB_Exam_Score_Extend dmodel) public List<RB_Exam_Score_Extend> GetList(RB_Exam_Score_Extend dmodel)
{ {
var parameters = new DynamicParameters();
string where = " 1=1"; string where = " 1=1";
if (dmodel.ExamId > 0) if (dmodel.ExamId > 0)
{ {
...@@ -25,8 +27,17 @@ namespace EduSpider.Repository ...@@ -25,8 +27,17 @@ namespace EduSpider.Repository
{ {
where += $" and {nameof(RB_Exam_Score_Extend.StuId)} ={dmodel.StuId}"; where += $" and {nameof(RB_Exam_Score_Extend.StuId)} ={dmodel.StuId}";
} }
if (dmodel.StuUId > 0)
{
where += $" and {nameof(RB_Exam_Score_Extend.StuUId)} ={dmodel.StuUId}";
}
if (!string.IsNullOrEmpty(dmodel.StuName))
{
where += $" and {nameof(RB_Exam_Score_Extend.StuName)} like @StuName";
parameters.Add("StuName", "%" + dmodel.StuName.Trim() + "%");
}
string sql = $"select * from RB_Exam_Score where {where}"; string sql = $"select * from RB_Exam_Score where {where}";
return Get<RB_Exam_Score_Extend>(sql).ToList(); return Get<RB_Exam_Score_Extend>(sql, parameters).ToList();
} }
} }
} }
...@@ -10,6 +10,7 @@ using System.Linq; ...@@ -10,6 +10,7 @@ using System.Linq;
using System.Text; using System.Text;
using System.Threading.Tasks; using System.Threading.Tasks;
using VTX.FW.Attr; using VTX.FW.Attr;
using VTX.FW.DB;
using VTX.FW.Helper; using VTX.FW.Helper;
namespace EduSpider.Services namespace EduSpider.Services
...@@ -58,14 +59,30 @@ namespace EduSpider.Services ...@@ -58,14 +59,30 @@ namespace EduSpider.Services
return examRepository.GetExamPageList(pageIndex, pageSize, out count, demodel); return examRepository.GetExamPageList(pageIndex, pageSize, out count, demodel);
} }
/// <summary>
/// 获取考试学生列表
/// </summary>
/// <param name="demodel"></param>
/// <returns></returns>
public List<RB_Exam_Score_Extend> GetExamStuList(RB_Exam_Score_Extend demodel)
{
return exam_ScoreRepository.GetList(demodel);
}
/// <summary> /// <summary>
/// 获取学生考试详情 /// 获取学生考试详情
/// </summary> /// </summary>
/// <param name="examId"></param> /// <param name="examId"></param>
/// <param name="stuId"></param> /// <param name="stuId"></param>
/// <param name="stuUId"></param>
/// <returns></returns> /// <returns></returns>
public object GetExamStuScoreInfo(int examId, int stuId) public object GetExamStuScoreInfo(int examId, int stuId, int stuUId)
{ {
if (stuUId > 0) {
var accountModel = accountRepository.GetAccountList(new RB_Account_Extend() { Id = stuUId, AccountType = Utility.Enum.AccountTypeEnum.Student }).FirstOrDefault();
if (accountModel == null) { return ""; }
stuId = accountModel.AccountId;
}
var stuModel = studentRepository.GetEntity(stuId); var stuModel = studentRepository.GetEntity(stuId);
if (stuModel == null) { return ""; } if (stuModel == null) { return ""; }
var examModel = examRepository.GetEntity(examId); var examModel = examRepository.GetEntity(examId);
...@@ -128,6 +145,29 @@ namespace EduSpider.Services ...@@ -128,6 +145,29 @@ namespace EduSpider.Services
}; };
} }
/// <summary>
/// 删除考试
/// </summary>
/// <param name="examId"></param>
/// <param name="baseUserId"></param>
/// <returns></returns>
public string DelExamInfo(int examId, int baseUserId)
{
Dictionary<string, object> keyValues = new Dictionary<string, object>() {
{ nameof(RB_Exam_Extend.Status), 1},
{ nameof(RB_Exam_Extend.UpdateBy), baseUserId},
{ nameof(RB_Exam_Extend.UpdateTime), DateTime.Now},
};
List<WhereHelper> wheres = new List<WhereHelper>() {
new WhereHelper(){
FiledName = nameof(RB_Exam_Extend.ExamId),
FiledValue = examId,
OperatorEnum =OperatorEnum.Equal
}
};
bool flag = examRepository.Update(keyValues, wheres);
return flag ? "" : "出错了,请联系管理员";
}
/// <summary> /// <summary>
/// 导入考试成绩 /// 导入考试成绩
......
...@@ -52,8 +52,25 @@ namespace EduSpider.WebApi.Controllers ...@@ -52,8 +52,25 @@ namespace EduSpider.WebApi.Controllers
/// <returns></returns> /// <returns></returns>
[HttpPost] [HttpPost]
public ApiResult GetExamStuList() { public ApiResult GetExamStuList() {
RB_Exam_Score_Extend demodel = JsonHelper.Deserialize<RB_Exam_Score_Extend>(RequestParm.Msg.ToString());
return ApiResult.Success(); if (demodel.ExamId <= 0)
{
return ApiResult.ParamIsNull();
}
var list = examService.GetExamStuList(demodel);
return ApiResult.Success("", list.Select(x => new
{
x.Id,
x.ExamId,
x.StuId,
x.StuUId,
x.StuName,
x.TScore,
x.ExamScore,
ScoreRate = Math.Round(x.TScore / x.ExamScore, 2, MidpointRounding.AwayFromZero),
x.Rank,
x.RankRate
}));
} }
/// <summary> /// <summary>
...@@ -64,14 +81,42 @@ namespace EduSpider.WebApi.Controllers ...@@ -64,14 +81,42 @@ namespace EduSpider.WebApi.Controllers
public ApiResult GetExamStuScoreInfo() { public ApiResult GetExamStuScoreInfo() {
int ExamId = ReqParameters.GetInt("ExamId");//考试ID int ExamId = ReqParameters.GetInt("ExamId");//考试ID
int StuId = ReqParameters.GetInt("StuId");//学生id int StuId = ReqParameters.GetInt("StuId");//学生id
int StuUId = ReqParameters.GetInt("StuUId");//学生Uid
if (ExamId <= 0 || StuId <= 0) { if (ExamId <= 0 || StuId <= 0 || StuUId <= 0)
{
return ApiResult.ParamIsNull(); return ApiResult.ParamIsNull();
} }
var robj = examService.GetExamStuScoreInfo(ExamId, StuId); var robj = examService.GetExamStuScoreInfo(ExamId, StuId, StuUId);
return ApiResult.Success("", robj); return ApiResult.Success("", robj);
} }
/// <summary>
/// 删除考试
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult DelExamInfo() {
int ExamId = ReqParameters.GetInt("ExamId");//考试ID
if (ExamId <= 0)
{
return ApiResult.ParamIsNull("请传递考试ID");
}
if (UserInfo.AccountType != Utility.Enum.AccountTypeEnum.Teacher)
{
return ApiResult.ParamIsNull("非老师账户,无法操作");
}
string rmsg = examService.DelExamInfo(ExamId, base.BaseUserId);
if (rmsg == "")
{
return ApiResult.Success();
}
else {
return ApiResult.Failed(rmsg);
}
}
} }
} }
...@@ -78,7 +78,7 @@ namespace EduSpider.WebApi.Controllers ...@@ -78,7 +78,7 @@ namespace EduSpider.WebApi.Controllers
string dateStr = DateTime.Now.ToString("yyyyMMdd"); string dateStr = DateTime.Now.ToString("yyyyMMdd");
string tempPath = basepath + "upfile\\temporary\\" + dateStr + "\\"; string tempPath = basepath + "upfile\\temporary\\" + dateStr + "\\";
string path_server = tempPath + path; string path_server = tempPath + path;
string httpPath = "/upfile/temporary/" + dateStr + "/" + path; //string httpPath = "/upfile/temporary/" + dateStr + "/" + path;
if (!Directory.Exists(tempPath)) if (!Directory.Exists(tempPath))
{ {
Directory.CreateDirectory(tempPath); Directory.CreateDirectory(tempPath);
...@@ -92,6 +92,14 @@ namespace EduSpider.WebApi.Controllers ...@@ -92,6 +92,14 @@ namespace EduSpider.WebApi.Controllers
string rmsg = examService.ImportExcelForStuExamScore(path_server, CourseId, ExamName, UserId); string rmsg = examService.ImportExcelForStuExamScore(path_server, CourseId, ExamName, UserId);
if (rmsg == "") if (rmsg == "")
{ {
try
{
System.IO.File.Delete(path_server);//删除原文件
}
catch (Exception)
{
LogHelper.WriteError("UploadStuExamScore", "删除原文件失败");
}
return ApiResult.Success(); return ApiResult.Success();
} }
else else
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment