Browse Source

Merge branch '黑龙江艺术高中职' of http://123.57.209.16:3000/bjquanjiang/DigitalScholl into 黑龙江艺术高中职

黑艺新账号
hwh2023 1 year ago
parent
commit
07ff471753
7 changed files with 415 additions and 106 deletions
  1. BIN
      Learun.Framework.Ultimate V7/Learun.Application.Web/Content/excel/ArrangeLessonTermImport.xls
  2. +41
    -33
      Learun.Framework.Ultimate V7/Learun.Application.WebApi/Modules/AnnexesApiWx.cs
  3. +315
    -40
      Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/EducationalAdministration/ArrangeLessonTerm/ArrangeLessonTermService.cs
  4. +26
    -10
      Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/PersonnelManagement/ADR_Restriction/ADR_RestrictionService.cs
  5. +1
    -1
      Learun.Framework.Ultimate V7/LearunApp-2.2.0/common/mixins.js
  6. +16
    -11
      Learun.Framework.Ultimate V7/LearunApp-2.2.0/pages/AttendanceCard/single_zc.vue
  7. +16
    -11
      Learun.Framework.Ultimate V7/LearunApp-2.2.0/pages/AttendanceCardTeacher/single_zc.vue

BIN
Learun.Framework.Ultimate V7/Learun.Application.Web/Content/excel/ArrangeLessonTermImport.xls View File


+ 41
- 33
Learun.Framework.Ultimate V7/Learun.Application.WebApi/Modules/AnnexesApiWx.cs View File

@@ -74,43 +74,51 @@ namespace Learun.Application.WebApi.Modules
/// <returns></returns>
public Response WxUpload(dynamic _)
{
var files = (List<HttpFile>)this.Context.Request.Files;
string folderId = Request.Form["folderId"];
string filePath = Config.GetValue("AnnexesFile");
string uploadDate = DateTime.Now.ToString("yyyyMMdd");
string fileEextension = Path.GetExtension(files[0].Name);
string fileType = fileEextension.Replace(".", "");
string fileGuid = Guid.NewGuid().ToString();

string virtualPath = string.Format("{0}/{1}/{2}/{3}{4}", filePath, userInfo.userId, uploadDate, fileGuid, fileEextension);

//创建文件夹
string path = Path.GetDirectoryName(virtualPath);
Directory.CreateDirectory(path);
AnnexesFileEntity fileAnnexesEntity = new AnnexesFileEntity();
if (!System.IO.File.Exists(virtualPath))
try
{
byte[] bytes = new byte[files[0].Value.Length];
files[0].Value.Read(bytes, 0, bytes.Length);
FileInfo file = new FileInfo(virtualPath);
FileStream fs = file.Create();
fs.Write(bytes, 0, bytes.Length);
fs.Close();

//文件信息写入数据库
fileAnnexesEntity.F_Id = fileGuid;
fileAnnexesEntity.F_FileName = files[0].Name;
fileAnnexesEntity.F_FilePath = virtualPath;
fileAnnexesEntity.F_FileSize = files[0].Value.Length.ToString();
fileAnnexesEntity.F_FileExtensions = fileEextension;
fileAnnexesEntity.F_FileType = fileType;
fileAnnexesEntity.F_CreateUserId = userInfo.userId;
fileAnnexesEntity.F_CreateUserName = userInfo.realName;
var files = (List<HttpFile>)this.Context.Request.Files;
string folderId = Request.Form["folderId"];
string filePath = Config.GetValue("AnnexesFile");
string uploadDate = DateTime.Now.ToString("yyyyMMdd");
string fileEextension = Path.GetExtension(files[0].Name);
string fileType = fileEextension.Replace(".", "");
string fileGuid = Guid.NewGuid().ToString();

string virtualPath = string.Format("{0}/{1}/{2}/{3}{4}", filePath, userInfo.userId, uploadDate, fileGuid, fileEextension);

//创建文件夹
string path = Path.GetDirectoryName(virtualPath);
Directory.CreateDirectory(path);
AnnexesFileEntity fileAnnexesEntity = new AnnexesFileEntity();
if (!System.IO.File.Exists(virtualPath))
{
byte[] bytes = new byte[files[0].Value.Length];
files[0].Value.Read(bytes, 0, bytes.Length);
FileInfo file = new FileInfo(virtualPath);
FileStream fs = file.Create();
fs.Write(bytes, 0, bytes.Length);
fs.Close();

//文件信息写入数据库
fileAnnexesEntity.F_Id = fileGuid;
fileAnnexesEntity.F_FileName = files[0].Name;
fileAnnexesEntity.F_FilePath = virtualPath;
fileAnnexesEntity.F_FileSize = files[0].Value.Length.ToString();
fileAnnexesEntity.F_FileExtensions = fileEextension;
fileAnnexesEntity.F_FileType = fileType;
fileAnnexesEntity.F_CreateUserId = userInfo.userId;
fileAnnexesEntity.F_CreateUserName = userInfo.realName;

annexesFileIBLL.SaveEntity(folderId, fileAnnexesEntity);
}

annexesFileIBLL.SaveEntity(folderId, fileAnnexesEntity);
return SuccessString(folderId);
}
catch (Exception e)
{

return SuccessString(folderId);
return Fail($"上传失败({e.Message})");
}
}

/// <summary>


+ 315
- 40
Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/EducationalAdministration/ArrangeLessonTerm/ArrangeLessonTermService.cs View File

@@ -2272,10 +2272,13 @@ group by AcademicYearNo,Semester,DeptNo,MajorNo,LessonNo,TeachClassNo,EmpNo,Les
/// <returns></returns>
public string ArrangeLessonTermImport(DataTable dt, string fileId)
{
var db = this.BaseRepository("CollegeMIS").BeginTrans();
try
{
int snum = 0;
int fnum = 0;
//插入时间
var Insertdate = DateTime.Now;
if (dt.Rows.Count > 0)
{
DataTable failDt = new DataTable();
@@ -2284,7 +2287,6 @@ group by AcademicYearNo,Semester,DeptNo,MajorNo,LessonNo,TeachClassNo,EmpNo,Les
{
failDt.Columns.Add(dc.ColumnName, dc.DataType);
}
var db = this.BaseRepository("CollegeMIS").BeginTrans();

IEnumerable<ArrangeLessonTermEntity> ArrangeLessonTermHistory = db.FindList<ArrangeLessonTermEntity>("select * from ArrangeLessonTerm");
var ArrangeLessonTerminsert = new List<ArrangeLessonTermEntity>();
@@ -2297,7 +2299,7 @@ group by AcademicYearNo,Semester,DeptNo,MajorNo,LessonNo,TeachClassNo,EmpNo,Les
#region 必填项空验证
if (dr["上课日期"].ToString().IsEmpty())
{
throw (new Exception("上课日期不能为空"));
throw (new Exception("上课日期不能为空"));
}
if (dr["开始时间"].ToString().IsEmpty())
{
@@ -2313,67 +2315,101 @@ group by AcademicYearNo,Semester,DeptNo,MajorNo,LessonNo,TeachClassNo,EmpNo,Les
}
if (dr["学期"].ToString().IsEmpty())
{
throw (new Exception("学期入账日期不能为空"));
throw (new Exception("学期不能为空"));
}
if (dr["班级"].ToString().IsEmpty())
if (dr["班级编号"].ToString().IsEmpty())
{
throw (new Exception("班级类型不能为空"));
throw (new Exception("班级编号不能为空"));
}
if (dr["课程"].ToString().IsEmpty())
if (dr["班级名称"].ToString().IsEmpty())
{
throw (new Exception("课程不能为空"));
throw (new Exception("班级名称不能为空"));
}
if (dr["教师姓名"].ToString().IsEmpty())
if (dr["课程编号"].ToString().IsEmpty())
{
throw (new Exception("教师姓名不能为空"));
throw (new Exception("课程编号不能为空"));
}
if (dr["上课时间"].ToString().IsEmpty())
if (dr["课程名称"].ToString().IsEmpty())
{
throw (new Exception("上课时间不能为空"));
throw (new Exception("课程名称不能为空"));
}
if (dr["是否必修课"].ToString().IsEmpty())
if (dr["教师编号"].ToString().IsEmpty())
{
throw (new Exception("是否必修课不能为空"));
throw (new Exception("教师编号不能为空"));
}
#endregion
//插入时间
var Insertdate = DateTime.Now;
var LessonName = dr["课程"].ToString();
var ClassName = dr["班级"].ToString();
var ClassroomName = dr["教室"].ToString();
var EmpName = dr["教师姓名"].ToString();
if (dr["教师名称"].ToString().IsEmpty())
{
throw (new Exception("教师名称不能为空"));
}
if (dr["教室编号"].ToString().IsEmpty())
{
throw (new Exception("教室编号不能为空"));
}
if (dr["教室名称"].ToString().IsEmpty())
{
throw (new Exception("教室名称不能为空"));
}
if (dr["上课节次"].ToString().IsEmpty())
{
throw (new Exception("上课节次不能为空"));
}
#endregion

#region 开始时间、结束时间格式判断
var st = new TimeSpan();
var stFlag = TimeSpan.TryParse(dr["开始时间"].ToString(), out st);
if (!stFlag)
{
throw (new Exception("开始时间格式有误"));
}
var et = new TimeSpan();
var etFlag = TimeSpan.TryParse(dr["结束时间"].ToString(), out et);
if (!etFlag)
{
throw (new Exception("结束时间格式有误"));
}

#endregion

//基础数据
var lessonEntity = BaseRepository("CollegeMIS").FindEntity<LessonInfoEntity>(x => x.LessonName == LessonName);
var classEntity = BaseRepository("CollegeMIS").FindEntity<ClassInfoEntity>(x => x.ClassName == ClassName);
var classroomEntity = BaseRepository("CollegeMIS").FindEntity<ClassroomInfoEntity>(x => x.ClassroomName == ClassroomName);
var lessonEntity = db.FindList<LessonInfoEntity>($"select * from Lessoninfo where LessonName='" + dr["课程名称"].ToString().Trim() + "' and LessonNo='" + dr["课程编号"].ToString().Trim() + "' and CheckMark=1 ");
var classEntity = db.FindList<ClassInfoEntity>($"select * from ClassInfo where ClassName='" + dr["班级名称"].ToString().Trim() + "' and ClassNo='" + dr["班级编号"].ToString().Trim() + "' and CheckMark=1 ");
var classroomEntity = db.FindList<ClassroomInfoEntity>($"select * from ClassroomInfo where ClassroomName='" + dr["教室名称"].ToString().Trim() + "' and ClassroomNo='" + dr["教室编号"].ToString().Trim() + "' and CheckMark=1 ");
var empinfoEntity = db.FindList<EmpInfoEntity>($"select * from EmpInfo where EmpName='" + dr["教师名称"].ToString().Trim() + "' and EmpNo='" + dr["教师编号"].ToString().Trim() + "' and CheckMark=1 ");
var CompanyEntity = BaseRepository().FindList<CompanyEntity>(x => x.F_EnabledMark == 1).ToList().FirstOrDefault();
var empinfoEntity = BaseRepository("CollegeMIS").FindEntity<EmpInfoEntity>(x => x.EmpName == EmpName);
if (lessonEntity.Count() <= 0)
throw (new Exception("查无此课程"));
if (classEntity.Count() <= 0)
throw (new Exception("查无此班级"));
if (empinfoEntity.Count() <= 0)
throw (new Exception("查无此教师"));
if (classroomEntity.Count() <= 0)
throw (new Exception("查无此教室"));

//写入要导入替换的数据
ArrangeLessonTermEntity arrangeLessonTermEntity = new ArrangeLessonTermEntity
{
ALTId = Guid.NewGuid().ToString(),
LessonDate = dr["上课日期"].ToDate(),
StartTime = dr["开始时间"].ToString(),
EndTime = dr["结束时间"].ToString(),
LessonDate = dr["上课日期"].ToString().ToDate(),
StartTime = st.ToString(@"hh\:mm"),
EndTime = et.ToString(@"hh\:mm"),
AcademicYearNo = dr["学年"].ToString(),
Semester = dr["学期"].ToString(),
DeptNo = classEntity.DeptNo,
MajorNo = classEntity.MajorNo,
LessonNo = lessonEntity.LessonNo,
LessonName = lessonEntity.LessonName,
TeachClassNo = lessonEntity.LessonName + classEntity.ClassNo,
EmpNo = empinfoEntity.EmpNo,
EmpName = empinfoEntity.EmpName,
ClassroomNo = classroomEntity.ClassroomNo,
LessonTime = dr["上课时间"].ToString(),
LessonSortNo = dr["是否必修课"].ToString() == "是" ? "1" : "0",
//默认数据
DeptNo = classEntity.FirstOrDefault().DeptNo,
MajorNo = classEntity.FirstOrDefault().MajorNo,
LessonNo = lessonEntity.FirstOrDefault().LessonNo,
LessonName = lessonEntity.FirstOrDefault().LessonName,
TeachClassNo = lessonEntity.FirstOrDefault().LessonName + classEntity.FirstOrDefault().ClassNo,
EmpNo = empinfoEntity.FirstOrDefault().EmpNo,
EmpName = empinfoEntity.FirstOrDefault().EmpName,
ClassroomNo = classroomEntity.FirstOrDefault().ClassroomNo,
LessonTime = dr["上课节次"].ToString(),
LessonSortNo = lessonEntity.FirstOrDefault().LessonSortNo,
//默认数;
CheckMark = "1",
InsertDate = Insertdate,
IsImport = true,
F_SchoolId = CompanyEntity.F_CompanyId,

F_SchoolId = CompanyEntity.F_CompanyId
};

#region 判断是否重复
@@ -2414,11 +2450,17 @@ group by AcademicYearNo,Semester,DeptNo,MajorNo,LessonNo,TeachClassNo,EmpNo,Les
string errordt = failDt.ToJson();
cache.Write<string>(cacheKey + fileId, errordt, CacheId.excel);
}
if (snum > 0)
{
//写入开课计划数据
InsertTeachClassDataInImport(Insertdate);
}
}
return snum + "|" + fnum;
}
catch (Exception ex)
{
db.Rollback();
if (ex is ExceptionEx)
{
throw;
@@ -2430,6 +2472,239 @@ group by AcademicYearNo,Semester,DeptNo,MajorNo,LessonNo,TeachClassNo,EmpNo,Les
}
}

/// <summary>
/// 课表导入时,写入开课计划数据
/// </summary>
/// <param name="insertdate">写入时间</param>
public bool InsertTeachClassDataInImport(DateTime insertdate)
{
bool result = false;
var date = insertdate.AddSeconds(1);
try
{
IEnumerable<ArrangeLessonTermEntity> ArrangeLessonTermData = BaseRepository("CollegeMIS").FindList<ArrangeLessonTermEntity>("SELECT t.* from ArrangeLessonTerm t WHERE t.InsertDate >= '" + insertdate + "' and t.InsertDate < '" + date + "' and t.IsImport=1 ");

if (ArrangeLessonTermData.Any())
{
//表已有数据
var TeachClassData = this.BaseRepository("CollegeMIS").FindList<TeachClassEntity>();
//待插入数据
var insertTeachClassDataList = new List<TeachClassEntity>();
var teachclasslist = ArrangeLessonTermData.GroupBy(x => new { x.AcademicYearNo, x.Semester, x.TeachClassNo, x.LessonNo, x.LessonName, x.EmpNo, x.LessonSortNo })
.Select(x => new TeachClassEntity
{
AcademicYearNo = x.Key.AcademicYearNo,
Semester = x.Key.Semester,
LessonNo = x.Key.LessonNo,
LessonName = x.Key.LessonName,
LessonSortNo = x.Key.LessonSortNo,
TeachClassNo = x.Key.TeachClassNo.Replace(x.Key.LessonName, ""),
EmpNo = x.Key.EmpNo,
F_SchoolId = x.FirstOrDefault().F_SchoolId,
DeptNo = x.FirstOrDefault().DeptNo,
MajorNo = x.FirstOrDefault().MajorNo,
Grade = this.BaseRepository("CollegeMIS").FindEntity<ClassInfoEntity>(m => m.ClassNo == x.Key.TeachClassNo.Replace(x.Key.LessonName, ""))?.Grade
});
foreach (var teachClassEntity in teachclasslist)
{
//var classitemEntity = this.BaseRepository("CollegeMIS").FindEntity<ClassInfoEntity>(x => x.ClassNo == teachClassEntity.TeachClassNo);
//var insertTeachClassData = new TeachClassEntity()
//{
// AcademicYearNo = teachClassEntity.AcademicYearNo,
// Semester = teachClassEntity.Semester,
// DeptNo = classitemEntity?.DeptNo,
// MajorNo = classitemEntity?.MajorNo,
// LessonNo = teachClassEntity.LessonNo,
// Grade = classitemEntity?.Grade,
// LessonSortNo = teachClassEntity.LessonSortNo,
// TeachClassNo = teachClassEntity.TeachClassNo,
// EmpNo = teachClassEntity.EmpNo,
// F_SchoolId = teachClassEntity.F_SchoolId
//};
var insertTeachClassData = teachClassEntity;
//非空判断
if (TeachClassData.Count(m => m.AcademicYearNo == insertTeachClassData.AcademicYearNo &&
m.Semester == insertTeachClassData.Semester && m.DeptNo == insertTeachClassData.DeptNo &&
m.MajorNo == insertTeachClassData.MajorNo && m.LessonNo == insertTeachClassData.LessonNo &&
m.Grade == insertTeachClassData.Grade && m.LessonSortNo == insertTeachClassData.LessonSortNo &&
m.TeachClassNo == insertTeachClassData.TeachClassNo && m.EmpNo == insertTeachClassData.EmpNo &&
m.F_SchoolId == insertTeachClassData.F_SchoolId) == 0
&& insertTeachClassDataList.Count(m => m.AcademicYearNo == insertTeachClassData.AcademicYearNo &&
m.Semester == insertTeachClassData.Semester && m.DeptNo == insertTeachClassData.DeptNo &&
m.MajorNo == insertTeachClassData.MajorNo && m.LessonNo == insertTeachClassData.LessonNo &&
m.Grade == insertTeachClassData.Grade && m.LessonSortNo == insertTeachClassData.LessonSortNo &&
m.TeachClassNo == insertTeachClassData.TeachClassNo && m.EmpNo == insertTeachClassData.EmpNo &&
m.F_SchoolId == insertTeachClassData.F_SchoolId) == 0)
{
insertTeachClassDataList.Add(insertTeachClassData);
}
}
this.BaseRepository("CollegeMIS").Insert(insertTeachClassDataList);

#region 写入专业开课计划数据
//todo:wx
//历史数据
var openLessonPlanData = BaseRepository("CollegeMIS").FindList<OpenLessonPlanEntity>();
var Teachdatetime = DateTime.Now;
var insertDataList = new List<OpenLessonPlanEntity>();
var lessonData = BaseRepository("CollegeMIS").FindList<LessonInfoEntity>().ToList();
var openlessonplanlist = teachclasslist.GroupBy(x => new { x.AcademicYearNo, x.Semester, x.DeptNo, x.MajorNo, x.Grade, x.LessonNo, x.LessonName, x.LessonSortNo })
.Select(x => new OpenLessonPlanEntity()
{
AcademicYearNo = x.Key.AcademicYearNo,
Semester = x.Key.Semester,
DeptNo = x.Key.DeptNo,
MajorNo = x.Key.MajorNo,
Grade = x.Key.Grade,
LessonNo = x.Key.LessonNo,
LessonName = x.Key.LessonName,
LessonSortNo = x.Key.LessonSortNo,
F_SchoolId = x.FirstOrDefault().F_SchoolId
});
foreach (var item in openlessonplanlist)
{

var insertData = new OpenLessonPlanEntity()
{

MakeDate = Teachdatetime,
AcademicYearNo = item.AcademicYearNo,
Semester = item.Semester,
DeptNo = item.DeptNo,
MajorNo = item.MajorNo,
LessonNo = item.LessonNo,
LessonName = item.LessonName,
PartCode = "",
Grade = item.Grade,
LessonSortNo = item.LessonSortNo,
LessonSortDetailNo = lessonData
.FirstOrDefault(m => m.LessonNo == item.LessonSortDetailNo)?.LessonSortDetailNo,
StartWeek = item.StartWeek,
EndWeek = item.EndWeek,
CheckStyleNo = "1",
ScoreRecordStyleNo = "1",
TeachDeptNo = item.DeptNo,
StudyScore = 0,
AmendDate = Teachdatetime,
ClassroomType = 1,
ClassroomPracticeType = 99,
CheckMarkDept = "1",
CheckMark = "1",
TestMark = 0,
F_SchoolId = item.F_SchoolId,
State = 1,
ExamType = "1"
};
if (openLessonPlanData.Count(m => m.AcademicYearNo == insertData.AcademicYearNo && m.Semester == insertData.Semester &&
m.MajorNo == insertData.MajorNo && m.LessonNo == insertData.LessonNo &&
m.Grade == insertData.Grade && m.LessonSortNo == insertData.LessonSortNo &&
m.LessonName == insertData.LessonName && m.F_SchoolId == insertData.F_SchoolId &&
m.DeptNo == insertData.DeptNo) == 0 &&
insertDataList.Count(m => m.AcademicYearNo == insertData.AcademicYearNo && m.Semester == insertData.Semester &&
m.MajorNo == insertData.MajorNo && m.LessonNo == insertData.LessonNo &&
m.Grade == insertData.Grade && m.LessonSortNo == insertData.LessonSortNo &&
m.LessonName == insertData.LessonName && m.F_SchoolId == insertData.F_SchoolId &&
m.DeptNo == insertData.DeptNo) == 0)
{
insertDataList.Add(insertData);
}
}
this.BaseRepository("CollegeMIS").Insert(insertDataList);

#endregion

#region 写入学生选课数据

var stuinfobasicData = this.BaseRepository("CollegeMIS").FindList<StuInfoBasicEntity>();
//表已有数据
var stuSelectLessonListEntityData = this.BaseRepository("CollegeMIS").FindList<StuSelectLessonListEntity>();
//待插入数据
var insertStuSelectLessonListDataList = new List<StuSelectLessonListEntity>();
var now = DateTime.Now;
foreach (var itemteachclass in teachclasslist)
{
var classstulist = stuinfobasicData.Where(m => m.ClassNo == itemteachclass.TeachClassNo).ToList();
foreach (var stu in classstulist)
{
var insertDatastuselect = new StuSelectLessonListEntity()
{
NoticeBookNo = stu.NoticeNo,
StuNo = stu.StuNo,
DeptNo = stu.DeptNo,
ClassNo = stu.ClassNo,
MajorNo = stu.MajorNo,
StuName = stu.StuName,
GenderNo = stu.GenderNo != null && stu.GenderNo.Value ? "1" : "0",
AcademicYearNo = itemteachclass.AcademicYearNo,
Semester = itemteachclass.Semester,
OpenLessonDeptNo = itemteachclass.DeptNo,
OpenLessonMajorNo = itemteachclass.MajorNo,
LessonNo = itemteachclass.LessonNo,
LessonName = this.BaseRepository("CollegeMIS").FindEntity<LessonInfoEntity>(x => x.LessonNo == itemteachclass.LessonNo)?.LessonName,
PartCode = "",
OrdinaryScoreScale = 1,
TermInScoreScale = 1,
TermEndScoreScale = 1,
OtherScoreScale = 1,
TeachClassNo = stu.ClassNo,
LessonSortNo = itemteachclass.LessonSortNo,
StuSortNo = "02",
Grade = stu.Grade,
StudyScore = 0,
TotalStudyHour = 0,
IsInEffect = "1",
EmpNo = itemteachclass.EmpNo,
IsPitchOn = "1",
CheckMark = "1",
InsertTime = now,
F_SchoolId = itemteachclass.F_SchoolId
};
if (stuSelectLessonListEntityData.Count(m => m.StuNo == insertDatastuselect.StuNo &&
m.AcademicYearNo == insertDatastuselect.AcademicYearNo &&
m.Semester == insertDatastuselect.Semester &&
m.DeptNo == insertDatastuselect.DeptNo &&
m.MajorNo == insertDatastuselect.MajorNo &&
m.LessonNo == insertDatastuselect.LessonNo &&
m.Grade == insertDatastuselect.Grade &&
m.OpenLessonDeptNo == insertDatastuselect.OpenLessonDeptNo &&
m.OpenLessonMajorNo == insertDatastuselect.OpenLessonMajorNo &&
m.EmpNo == insertDatastuselect.EmpNo && m.ClassNo == insertDatastuselect.ClassNo &&
m.F_SchoolId == insertDatastuselect.F_SchoolId) == 0 &&
insertStuSelectLessonListDataList.Count(m => m.StuNo == insertDatastuselect.StuNo &&
m.AcademicYearNo == insertDatastuselect.AcademicYearNo &&
m.Semester == insertDatastuselect.Semester &&
m.DeptNo == insertDatastuselect.DeptNo &&
m.MajorNo == insertDatastuselect.MajorNo &&
m.LessonNo == insertDatastuselect.LessonNo &&
m.Grade == insertDatastuselect.Grade &&
m.OpenLessonDeptNo == insertDatastuselect.OpenLessonDeptNo &&
m.OpenLessonMajorNo == insertDatastuselect.OpenLessonMajorNo &&
m.EmpNo == insertDatastuselect.EmpNo && m.ClassNo == insertDatastuselect.ClassNo &&
m.F_SchoolId == insertDatastuselect.F_SchoolId) == 0)
{
insertStuSelectLessonListDataList.Add(insertDatastuselect);
}
}
}
this.BaseRepository("CollegeMIS").Insert(insertStuSelectLessonListDataList);
#endregion

}
}
catch (Exception ex)
{
if (ex is ExceptionEx)
{
throw;
}
else
{
throw ExceptionEx.ThrowServiceException(ex);
}
}
return result;
}


}



+ 26
- 10
Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/PersonnelManagement/ADR_Restriction/ADR_RestrictionService.cs View File

@@ -399,6 +399,10 @@ namespace Learun.Application.TwoDevelopment.PersonnelManagement
adrRecordEntity.ADPhoto = ADPhoto;
adrRecordEntity.ClockPlace = ClockPlace;
adrRecordEntity.Img = img;
if(AIsOut)
{
adrRecordEntity.IsFit = true;
}
////记录日志
//ADR_DeviceLogEntity adrDeviceLogEntity = new ADR_DeviceLogEntity();
//adrDeviceLogEntity.Create();
@@ -441,10 +445,10 @@ namespace Learun.Application.TwoDevelopment.PersonnelManagement
return true;
}
//考勤记录
this.BaseRepository("CollegeMIS").ExecuteBySql("insert into ADR_Record(ID, UserNo, ADType, ADTime, ClockTime, ClockStatus, ClockPlace,Img, ADYear, ADMonth, ADDay, ADPhoto,ALon,ALat,AIsOut,ARemark) values(" +
this.BaseRepository("CollegeMIS").ExecuteBySql("insert into ADR_Record(ID, UserNo, ADType, ADTime, ClockTime, ClockStatus, ClockPlace,Img, ADYear, ADMonth, ADDay, ADPhoto,ALon,ALat,AIsOut,IsFit,ARemark) values(" +
"'" + adrRecordEntity.ID + "','" + adrRecordEntity.UserNo + "','" + adrRecordEntity.ADType + "','" + adrRecordEntity.ADTime + "'," +
"'" + adrRecordEntity.ClockTime + "','" + adrRecordEntity.ClockStatus + "','" + adrRecordEntity.ClockPlace + "','" + adrRecordEntity.Img + "','" + adrRecordEntity.ADYear + "'," +
"'" + adrRecordEntity.ADMonth + "','" + adrRecordEntity.ADDay + "','" + adrRecordEntity.ADPhoto + "'," + adrRecordEntity.ALon + "," + adrRecordEntity.ALat + ",'" + adrRecordEntity.AIsOut + "','" + adrRecordEntity.ARemark + "')");
"'" + adrRecordEntity.ADMonth + "','" + adrRecordEntity.ADDay + "','" + adrRecordEntity.ADPhoto + "'," + adrRecordEntity.ALon + "," + adrRecordEntity.ALat + ",'" + adrRecordEntity.AIsOut + "','" + adrRecordEntity.IsFit + "','" + adrRecordEntity.ARemark + "')");
//同步修改授课考勤打卡
ClockInModifyTeachAttendance(adrRecordEntity);
return true;
@@ -529,6 +533,10 @@ namespace Learun.Application.TwoDevelopment.PersonnelManagement
adrRecordEntity.ADPhoto = ADPhoto;
adrRecordEntity.ClockPlace = ClockPlace;
adrRecordEntity.Img = img;
if(AIsOut)
{
adrRecordEntity.IsFit = true;
}
////记录日志
//ADR_DeviceLogEntity adrDeviceLogEntity = new ADR_DeviceLogEntity();
//adrDeviceLogEntity.Create();
@@ -559,10 +567,10 @@ namespace Learun.Application.TwoDevelopment.PersonnelManagement
}
else
{
this.BaseRepository("CollegeMIS").ExecuteBySql("insert into ADR_Record(ID, UserNo, ADType, ADTime, ClockTime, ClockStatus, ClockPlace,Img, ADYear, ADMonth, ADDay, ADPhoto,ALon,ALat,AIsOut,ARemark) values(" +
this.BaseRepository("CollegeMIS").ExecuteBySql("insert into ADR_Record(ID, UserNo, ADType, ADTime, ClockTime, ClockStatus, ClockPlace,Img, ADYear, ADMonth, ADDay, ADPhoto,ALon,ALat,AIsOut,IsFit,ARemark) values(" +
"'" + adrRecordEntity.ID + "','" + adrRecordEntity.UserNo + "','" + adrRecordEntity.ADType + "','" + adrRecordEntity.ADTime + "'," +
"'" + adrRecordEntity.ClockTime + "','" + adrRecordEntity.ClockStatus + "','" + adrRecordEntity.ClockPlace + "','" + adrRecordEntity.Img + "','" + adrRecordEntity.ADYear + "'," +
"'" + adrRecordEntity.ADMonth + "','" + adrRecordEntity.ADDay + "','" + adrRecordEntity.ADPhoto + "'," + adrRecordEntity.ALon + "," + adrRecordEntity.ALat + ",'" + adrRecordEntity.AIsOut + "','" + adrRecordEntity.ARemark + "')");
"'" + adrRecordEntity.ClockTime + "','" + adrRecordEntity.ClockStatus + "','" + adrRecordEntity.ClockPlace + "','"+adrRecordEntity.Img+"','" + adrRecordEntity.ADYear + "'," +
"'" + adrRecordEntity.ADMonth + "','" + adrRecordEntity.ADDay + "','" + adrRecordEntity.ADPhoto + "'," + adrRecordEntity.ALon + "," + adrRecordEntity.ALat + ",'" + adrRecordEntity.AIsOut + "','" + adrRecordEntity.IsFit + "','" + adrRecordEntity.ARemark + "')");
return true;
}
}
@@ -630,6 +638,10 @@ namespace Learun.Application.TwoDevelopment.PersonnelManagement
adrRecordEntity.ADPhoto = ADPhoto;
adrRecordEntity.ClockPlace = ClockPlace;
adrRecordEntity.Img = img;
if(AIsOut)
{
adrRecordEntity.IsFit = true;
}
////记录日志
//ADR_DeviceLogEntity adrDeviceLogEntity = new ADR_DeviceLogEntity();
//adrDeviceLogEntity.Create();
@@ -650,10 +662,10 @@ namespace Learun.Application.TwoDevelopment.PersonnelManagement
var attendancerecordlist = this.BaseRepository("CollegeMIS").FindList<ADR_RecordEntity>("select * from ADR_Record where ADYear='" + strTimeYear + "' and ADMonth='" + strTimeMonth + "' and ADDay='" + strTimeDay + "' and UserNo='" + EmpNo + "'").ToList();
if (attendancerecordlist.Count(m => m.ADType == "7") == 0)
{
this.BaseRepository("CollegeMIS").ExecuteBySql("insert into ADR_Record(ID, UserNo, ADType, ADTime, ClockTime, ClockStatus, ClockPlace,Img, ADYear, ADMonth, ADDay, ADPhoto,ALon,ALat,AIsOut,ARemark) values(" +
this.BaseRepository("CollegeMIS").ExecuteBySql("insert into ADR_Record(ID, UserNo, ADType, ADTime, ClockTime, ClockStatus, ClockPlace,Img, ADYear, ADMonth, ADDay, ADPhoto,ALon,ALat,AIsOut,IsFit,ARemark) values(" +
"'" + adrRecordEntity.ID + "','" + adrRecordEntity.UserNo + "','" + adrRecordEntity.ADType + "','" + adrRecordEntity.ADTime + "'," +
"'" + adrRecordEntity.ClockTime + "','" + adrRecordEntity.ClockStatus + "','" + adrRecordEntity.ClockPlace + "','" + adrRecordEntity.Img + "','" + adrRecordEntity.ADYear + "'," +
"'" + adrRecordEntity.ADMonth + "','" + adrRecordEntity.ADDay + "','" + adrRecordEntity.ADPhoto + "'," + adrRecordEntity.ALon + "," + adrRecordEntity.ALat + ",'" + adrRecordEntity.AIsOut + "','" + adrRecordEntity.ARemark + "')");
"'" + adrRecordEntity.ClockTime + "','" + adrRecordEntity.ClockStatus + "','" + adrRecordEntity.ClockPlace + "','"+adrRecordEntity.Img+"','" + adrRecordEntity.ADYear + "'," +
"'" + adrRecordEntity.ADMonth + "','" + adrRecordEntity.ADDay + "','" + adrRecordEntity.ADPhoto + "'," + adrRecordEntity.ALon + "," + adrRecordEntity.ALat + ",'" + adrRecordEntity.AIsOut + "','" + adrRecordEntity.IsFit + "','" + adrRecordEntity.ARemark + "')");
}
return true;
}
@@ -985,6 +997,10 @@ namespace Learun.Application.TwoDevelopment.PersonnelManagement
adrRecordEntity.ADPhoto = ADPhoto;
adrRecordEntity.ClockPlace = ClockPlace;
adrRecordEntity.Img = img;
if(AIsOut)
{
adrRecordEntity.IsFit = true;
}
//adrRecordEntity.ADPhoto = str;
////记录日志
//ADR_DeviceLogEntity adrDeviceLogEntitylateorleave = new ADR_DeviceLogEntity();
@@ -1042,10 +1058,10 @@ namespace Learun.Application.TwoDevelopment.PersonnelManagement
return true;
}
//考勤记录
this.BaseRepository("CollegeMIS").ExecuteBySql("insert into ADR_Record(ID, UserNo, ADType, ADTime, ClockTime, ClockStatus, ClockPlace,Img, ADYear, ADMonth, ADDay, ADPhoto,ALon,ALat,AIsOut,ARemark) values(" +
this.BaseRepository("CollegeMIS").ExecuteBySql("insert into ADR_Record(ID, UserNo, ADType, ADTime, ClockTime, ClockStatus, ClockPlace,Img, ADYear, ADMonth, ADDay, ADPhoto,ALon,ALat,AIsOut,IsFit,ARemark) values(" +
"'" + adrRecordEntity.ID + "','" + adrRecordEntity.UserNo + "','" + adrRecordEntity.ADType + "','" + adrRecordEntity.ADTime + "'," +
"'" + adrRecordEntity.ClockTime + "','" + adrRecordEntity.ClockStatus + "','" + adrRecordEntity.ClockPlace + "','" + adrRecordEntity.Img + "','" + adrRecordEntity.ADYear + "'," +
"'" + adrRecordEntity.ADMonth + "','" + adrRecordEntity.ADDay + "','" + adrRecordEntity.ADPhoto + "'," + adrRecordEntity.ALon + "," + adrRecordEntity.ALat + ",'" + adrRecordEntity.AIsOut + "','" + adrRecordEntity.ARemark + "')");
"'" + adrRecordEntity.ADMonth + "','" + adrRecordEntity.ADDay + "','" + adrRecordEntity.ADPhoto + "'," + adrRecordEntity.ALon + "," + adrRecordEntity.ALat + ",'" + adrRecordEntity.AIsOut + "','" + adrRecordEntity.IsFit + "','" + adrRecordEntity.ARemark + "')");
//同步修改授课考勤打卡
ClockInModifyTeachAttendance(adrRecordEntity);
return true;


+ 1
- 1
Learun.Framework.Ultimate V7/LearunApp-2.2.0/common/mixins.js View File

@@ -774,7 +774,7 @@ export default {
//获取百度地图ak
GET_AK() {
let ak = ['zdBn8ZVlAELEK3rsBsxin7cXaYxjT1uE','Nx9VQtQEgzUm5GuBVt5SHoO5jt204xNo']
let ak = ['zdBn8ZVlAELEK3rsBsxin7cXaYxjT1uE','78iR1wqm8cER7Gjt4tT26HrGGtGuk9LI']
let current = this.GET_STORAGE('baiduAK')
if(!current){
let ri = Math.floor(Math.random()*2);


+ 16
- 11
Learun.Framework.Ultimate V7/LearunApp-2.2.0/pages/AttendanceCard/single_zc.vue View File

@@ -9,7 +9,8 @@

<view v-if="ready" class="bg-white margin-tb padding" style="padding-top: 0; overflow: hidden;">
<l-button v-if="edit" @click="action('save')" size="lg" color="green" class="block margin-top" block>
确认打卡({{second}}s)
确认打卡
<!-- ({{second}}s) -->
</l-button>
</view>
</view>
@@ -102,15 +103,15 @@
() => {}
])
await this.fetchForm()
this.timer = setInterval(()=>{
this.second--
if(this.second>0)return
this.TOAST('拍照超时,请重新打卡')
setTimeout(()=>{
this.NAV_BACK()
},500)
return
},1000)
// this.timer = setInterval(()=>{
// this.second--
// if(this.second>0)return
// this.TOAST('拍照超时,请重新打卡')
// setTimeout(()=>{
// this.NAV_BACK()
// },500)
// return
// },1000)

this.ready = true
this.HIDE_LOADING()
@@ -140,6 +141,10 @@
const postData = await this.getPostData(this.id)
console.log(postData)
let strEntity = JSON.parse(postData.strEntity)
if(!strEntity.Img){
this.TOAST('图片上传失败')
return
}
// let strEntity_ = {...strEntity,...this.params}
this.HTTP_POST('learun/adms/attendance/clockin', JSON.stringify(strEntity), '打卡失败').then(success => {
this.HIDE_LOADING()
@@ -177,7 +182,7 @@
},
},
destroyed() {
clearInterval(this.timer)
// clearInterval(this.timer)
}
}
</script>

+ 16
- 11
Learun.Framework.Ultimate V7/LearunApp-2.2.0/pages/AttendanceCardTeacher/single_zc.vue View File

@@ -9,7 +9,8 @@

<view v-if="ready" class="bg-white margin-tb padding" style="padding-top: 0; overflow: hidden;">
<l-button v-if="edit" @click="action('save')" size="lg" color="green" class="block margin-top" block>
确认打卡({{second}}s)
确认打卡
<!-- ({{second}}s) -->
</l-button>
</view>
</view>
@@ -102,15 +103,15 @@
() => {}
])
await this.fetchForm()
this.timer = setInterval(()=>{
this.second--
if(this.second>0)return
this.TOAST('拍照超时,请重新打卡')
setTimeout(()=>{
this.NAV_BACK()
},500)
return
},1000)
// this.timer = setInterval(()=>{
// this.second--
// if(this.second>0)return
// this.TOAST('拍照超时,请重新打卡')
// setTimeout(()=>{
// this.NAV_BACK()
// },500)
// return
// },1000)

this.ready = true
this.HIDE_LOADING()
@@ -140,6 +141,10 @@
const postData = await this.getPostData(this.id)
console.log(postData)
let strEntity = JSON.parse(postData.strEntity)
if(!strEntity.Img){
this.TOAST('图片上传失败')
return
}
// let strEntity_ = {...strEntity,...this.params}
this.HTTP_POST('learun/adms/attendance/clockinTeacher', JSON.stringify(strEntity), '打卡失败').then(success => {
this.HIDE_LOADING()
@@ -177,7 +182,7 @@
},
},
destroyed() {
clearInterval(this.timer)
// clearInterval(this.timer)
}
}
</script>

Loading…
Cancel
Save