|
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945 |
- using Dapper;
- using Learun.DataBase.Repository;
- using Learun.Util;
- using System;
- using System.Collections.Generic;
- using System.Data;
- using System.Diagnostics;
- using System.Linq;
- using System.Net.Http;
- using System.Runtime.InteropServices;
- using System.Text;
- using System.Threading.Tasks;
- using Learun.Application.Base.SystemModule;
- using Learun.Application.Organization;
- using Newtonsoft.Json;
- using static Learun.Application.TwoDevelopment.EducationalAdministration.ArrangeExamTermService;
-
- namespace Learun.Application.TwoDevelopment.EducationalAdministration
- {
- /// <summary>
- /// 版 本 Learun-ADMS-Ultimate V7.0.0 数字化智慧校园
- /// Copyright (c) 2013-2018 北京泉江科技有限公司
- /// 创 建:超级管理员
- /// 日 期:2019-02-27 11:05
- /// 描 述:排课
- /// </summary>
- public class ArrangeLessonTermService : RepositoryFactory
- {
-
- private static readonly HttpClient Client;
- static ArrangeLessonTermService()
- {
- Client = new HttpClient();
- }
- #region 构造函数和属性
-
- private string fieldSql;
- public ArrangeLessonTermService()
- {
- fieldSql = @"
- t.ALTId,
- t.LessonDate,
- t.AcademicYearNo,
- t.Semester,
- t.DeptNo,
- t.MajorNo,
- t.LessonNo,
- t.LessonName,
- t.TeachClassNo,
- t.TeachClassSn,
- t.EmpNo,
- t.EmpName,
- t.LessonSortNo,
- t.StuSortNo,
- t.JoinLessonNum,
- t.RelatedClassNo,
- t.ClassroomNo,
- t.LessonTime,
- t.Remark,
- t.CheckMark,
- t.RecordMark
- ";
- }
- #endregion
-
- #region 获取数据
-
- /// <summary>
- /// 获取列表数据
- /// <summary>
- /// <returns></returns>
- public IEnumerable<ArrangeLessonTermEntity> GetList(string queryJson)
- {
- try
- {
- //参考写法
- var queryParam = queryJson.ToJObject();
- // 虚拟参数
- var dp = new DynamicParameters(new { });
-
- var strSql = new StringBuilder();
- strSql.Append("SELECT ");
- strSql.Append(fieldSql);
- strSql.Append(" FROM ArrangeLessonTerm t where 1=1 ");
-
- if (!queryParam["AcademicYearNo"].IsEmpty())
- {
- dp.Add("AcademicYearNo", queryParam["AcademicYearNo"].ToString(), DbType.String);
- strSql.Append(" AND t.AcademicYearNo = @AcademicYearNo ");
- }
- if (!queryParam["Semester"].IsEmpty())
- {
- dp.Add("Semester", queryParam["Semester"].ToString(), DbType.String);
- strSql.Append(" AND t.Semester = @Semester ");
- }
- if (!queryParam["DeptNo"].IsEmpty())
- {
- dp.Add("DeptNo", queryParam["DeptNo"].ToString(), DbType.String);
- strSql.Append(" AND t.DeptNo = @DeptNo ");
- }
- if (!queryParam["MajorNo"].IsEmpty())
- {
- dp.Add("MajorNo", queryParam["MajorNo"].ToString(), DbType.String);
- strSql.Append(" AND t.MajorNo = @MajorNo ");
- }
- if (!queryParam["LessonNo"].IsEmpty())
- {
- dp.Add("LessonNo", queryParam["LessonNo"].ToString(), DbType.String);
- strSql.Append(" AND t.LessonNo = @LessonNo ");
- }
- if (!queryParam["TeachClassNo"].IsEmpty())
- {
- dp.Add("TeachClassNo", "%" + queryParam["TeachClassNo"].ToString(), DbType.String);
- strSql.Append(" AND t.TeachClassNo like @TeachClassNo ");
- }
- if (!queryParam["EmpNo"].IsEmpty())
- {
- dp.Add("EmpNo", queryParam["EmpNo"].ToString(), DbType.String);
- strSql.Append(" AND t.EmpNo = @EmpNo ");
- }
- if (!queryParam["ClassroomNo"].IsEmpty())
- {
- dp.Add("ClassroomNo", queryParam["ClassroomNo"].ToString(), DbType.String);
- strSql.Append(" AND t.ClassroomNo = @ClassroomNo ");
- }
-
- return this.BaseRepository("CollegeMIS").FindList<ArrangeLessonTermEntity>(strSql.ToString(), dp);
- }
- catch (Exception ex)
- {
- if (ex is ExceptionEx)
- {
- throw;
- }
- else
- {
- throw ExceptionEx.ThrowServiceException(ex);
- }
- }
- }
-
- public IEnumerable<ArrangeLessonTermEntity> GetListForTimeTable(string queryJson)
- {
- try
- {
- //参考写法
- var queryParam = queryJson.ToJObject();
- // 虚拟参数
- var dp = new DynamicParameters(new { });
-
- var strSql = new StringBuilder();
- strSql.Append("SELECT LessonDate,AcademicYearNo,Semester");
- strSql.Append(" FROM ArrangeLessonTerm t where 1=1 ");
-
- if (!queryParam["AcademicYearNo"].IsEmpty())
- {
- dp.Add("AcademicYearNo", queryParam["AcademicYearNo"].ToString(), DbType.String);
- strSql.Append(" AND t.AcademicYearNo = @AcademicYearNo ");
- }
- if (!queryParam["Semester"].IsEmpty())
- {
- dp.Add("Semester", queryParam["Semester"].ToString(), DbType.String);
- strSql.Append(" AND t.Semester = @Semester ");
- }
- if (!queryParam["DeptNo"].IsEmpty())
- {
- dp.Add("DeptNo", queryParam["DeptNo"].ToString(), DbType.String);
- strSql.Append(" AND t.DeptNo = @DeptNo ");
- }
- if (!queryParam["MajorNo"].IsEmpty())
- {
- dp.Add("MajorNo", queryParam["MajorNo"].ToString(), DbType.String);
- strSql.Append(" AND t.MajorNo = @MajorNo ");
- }
- if (!queryParam["LessonNo"].IsEmpty())
- {
- dp.Add("LessonNo", queryParam["LessonNo"].ToString(), DbType.String);
- strSql.Append(" AND t.LessonNo = @LessonNo ");
- }
- if (!queryParam["TeachClassNo"].IsEmpty())
- {
- dp.Add("TeachClassNo", "%" + queryParam["TeachClassNo"].ToString(), DbType.String);
- strSql.Append(" AND t.TeachClassNo like @TeachClassNo ");
- }
- if (!queryParam["EmpNo"].IsEmpty())
- {
- dp.Add("EmpNo", queryParam["EmpNo"].ToString(), DbType.String);
- strSql.Append(" AND t.EmpNo = @EmpNo ");
- }
- if (!queryParam["ClassroomNo"].IsEmpty())
- {
- dp.Add("ClassroomNo", queryParam["ClassroomNo"].ToString(), DbType.String);
- strSql.Append(" AND t.ClassroomNo = @ClassroomNo ");
- }
-
- return this.BaseRepository("CollegeMIS").FindList<ArrangeLessonTermEntity>(strSql.ToString(), dp);
- }
- catch (Exception ex)
- {
- if (ex is ExceptionEx)
- {
- throw;
- }
- else
- {
- throw ExceptionEx.ThrowServiceException(ex);
- }
- }
- }
-
- internal IEnumerable<ArrangeLessonTermEntity> GetListByEmpNo(List<string> empNos)
- {
- try
- {
- return this.BaseRepository("CollegeMIS").FindList<ArrangeLessonTermEntity>(a => empNos.Contains(a.EmpNo)).ToList();
- }
- catch (Exception ex)
- {
- if (ex is ExceptionEx)
- {
- throw;
- }
- else
- {
- throw ExceptionEx.ThrowServiceException(ex);
- }
- }
- }
-
- /// <summary>
- /// 获取列表分页数据
- /// <param name="pagination">分页参数</param>
- /// <summary>
- /// <returns></returns>
- public IEnumerable<ArrangeLessonTermEntity> GetPageList(Pagination pagination, string queryJson)
- {
- try
- {
- var strSql = new StringBuilder();
- strSql.Append("SELECT ");
- strSql.Append(fieldSql);
- strSql.Append(" FROM ArrangeLessonTerm t ");
- return this.BaseRepository("CollegeMIS").FindList<ArrangeLessonTermEntity>(strSql.ToString(), pagination);
- }
- catch (Exception ex)
- {
- if (ex is ExceptionEx)
- {
- throw;
- }
- else
- {
- throw ExceptionEx.ThrowServiceException(ex);
- }
- }
- }
-
- /// <summary>
- /// 获取实体数据
- /// <param name="keyValue">主键</param>
- /// <summary>
- /// <returns></returns>
- public ArrangeLessonTermEntity GetEntity(string keyValue)
- {
- try
- {
- return this.BaseRepository("CollegeMIS").FindEntity<ArrangeLessonTermEntity>(keyValue);
- }
- catch (Exception ex)
- {
- if (ex is ExceptionEx)
- {
- throw;
- }
- else
- {
- throw ExceptionEx.ThrowServiceException(ex);
- }
- }
- }
-
-
- #endregion
-
- #region 提交数据
-
- /// <summary>
- /// 删除实体数据
- /// <param name="keyValue">主键</param>
- /// <summary>
- /// <returns></returns>
- public void DeleteEntity(string keyValue)
- {
- try
- {
- this.BaseRepository("CollegeMIS").Delete<ArrangeLessonTermEntity>(t => t.ALTId == keyValue);
- }
- catch (Exception ex)
- {
- if (ex is ExceptionEx)
- {
- throw;
- }
- else
- {
- throw ExceptionEx.ThrowServiceException(ex);
- }
- }
- }
-
- /// <summary>
- /// 保存实体数据(新增、修改)
- /// <param name="keyValue">主键</param>
- /// <summary>
- /// <returns></returns>
- public void SaveEntity(string keyValue, ArrangeLessonTermEntity entity)
- {
- try
- {
- if (!string.IsNullOrEmpty(keyValue))
- {
- entity.Modify(keyValue);
- this.BaseRepository("CollegeMIS").Update(entity);
- }
- else
- {
- entity.Create();
- this.BaseRepository("CollegeMIS").Insert(entity);
- }
- }
- catch (Exception ex)
- {
- if (ex is ExceptionEx)
- {
- throw;
- }
- else
- {
- throw ExceptionEx.ThrowServiceException(ex);
- }
- }
- }
-
- internal bool GetAny()
- {
- try
- {
- var semesterAndYear = Common.GetSemesterAndYear();
- return this.BaseRepository("CollegeMIS").FindList<ArrangeLessonTermEntity>(a => a.AcademicYearNo == semesterAndYear.AcademicYearShort && a.Semester == semesterAndYear.Semester).Any();
-
- }
- catch (Exception ex)
- {
- if (ex is ExceptionEx)
- {
- throw;
- }
- else
- {
- throw ExceptionEx.ThrowServiceException(ex);
- }
- }
- }
-
- #endregion
-
-
-
- /// <summary>
- /// 获取相关课程考勤的学生信息
- /// </summary>
- /// <param name="year"></param>
- /// <param name="semester"></param>
- /// <param name="empno"></param>
- /// <param name="lessonNo"></param>
- /// <param name="teachClassNo"></param>
- /// <returns></returns>
- public IEnumerable<StuSelectLessonListEntity> AttendanceStudents(Pagination pagination, string queryJson)
- {
- try
- {
- var queryParam = queryJson.ToJObject();
- var strSql = new StringBuilder();
- strSql.Append("SELECT ");
- strSql.Append(@"
- a.[StuNo]
- ,a.[DeptNo]
- ,a.[MajorNo]
- ,a.[ClassNo]
- ,a.[StuName]
- ,a.[GenderNo]
- ,a.[AcademicYearNo]
- ,a.[Semester]
- ,a.[LessonNo]
- ,a.[LessonName]
- ,a.[TeachClassNo]
- ,a.[LessonSortNo]
- ,a.[Grade]
- ,a.[ConflictLessonNo]
- ,a.[EmpNo]
- ,a.[TeachPlanNo],b.ID as StuAttendanceNo,b.AttendOrNo,b.Sort,b.AttenCondition,b.AttenScore,b.LessonDate
- ");
- strSql.Append(" FROM StuSelectLessonList a left join StuAttendance b on a.AcademicYearNo=b.AcademicYearNo and a.StuNo=b.StuNo and a.Semester=b.Semester and a.EmpNo=b.EmpNo and a.LessonNo=b.LessonNo and a.TeachClassNo=b.TeachClassNo ");
- strSql.Append($" and b.LessonTime='{queryParam["lessonTime"]}'");
- strSql.Append($" and b.LessonDate='{queryParam["lessonDate"]}'");
- strSql.Append(" WHERE 1=1 ");
- strSql.Append($"and a.AcademicYearNo='{ queryParam["year"]}' and a.Semester='{queryParam["semester"]}' and a.EmpNo='{queryParam["empno"]}' and a.LessonNo='{queryParam["lessonNo"]}' and a.TeachClassNo='{queryParam["teachClassNo"]}' ");
- return this.BaseRepository("CollegeMIS").FindList<StuSelectLessonListEntity>(strSql.ToString(), pagination);
- }
- catch (Exception ex)
- {
- if (ex is ExceptionEx)
- {
- throw;
- }
- else
- {
- throw ExceptionEx.ThrowServiceException(ex);
- }
- }
- }
-
- private string strAcademicYear;
- private string strSemester;
- /// <summary>
- /// 同步排课系统数据
- /// </summary>
- /// <returns></returns>
- public async Task<bool> AsyncArrangeLessonData()
- {
- bool result = false;
- try
- {
- var apiData = await Client.GetStringAsync(Config.GetValue("ArrangeLessonAPI"));
- if (!string.IsNullOrEmpty(apiData))
- {
- var data = JsonConvert.DeserializeObject<Root>(apiData);
- var dataList = data.entity.list;
- if (dataList.Any())
- {
- var oldArrangeLessonTermList = (await BaseRepository("CollegeMIS").FindListAsync<ArrangeLessonTermEntity>()).ToList();
- var insertDataList = new List<ArrangeLessonTermEntity>();
- var lessonData = (await BaseRepository("CollegeMIS").FindListAsync<LessonInfoEntity>()).ToList();
- var classData = (await BaseRepository("CollegeMIS").FindListAsync<ClassInfoEntity>()).ToList();
- foreach (var item in dataList)
- {
- var classinfo = classData.FirstOrDefault(m => m.ClassNo == item.paike.clazzId);
- var insertData = new ArrangeLessonTermEntity
- {
- ALTId = Guid.NewGuid().ToString(),
- LessonDate = DateTime.Parse(item.times),
- AcademicYearNo = item.schoolYear,
- Semester = item.paike.semester,
- DeptNo = classinfo?.DeptNo,
- MajorNo = classinfo?.MajorNo,
- LessonNo = item.paike.curriculunId,
- LessonName = item.paike.curriculunName,
- TeachClassNo = item.paike.curriculunName + item.paike.clazzId,
- EmpNo = item.paike.teacherId,
- EmpName = item.paike.teacherName,
- LessonSortNo = lessonData.FirstOrDefault(m => m.LessonNo == item.paike.curriculunId)?.LessonSortNo,
- ClassroomNo = item.paike.classRoomId,
- LessonTime = item.paike.week + item.paike.section,
- CheckMark = "1",
- F_SchoolId = item.schoolId
- };
- strAcademicYear = insertData.AcademicYearNo;
- strSemester = insertData.Semester;
- if (oldArrangeLessonTermList.Count(m => m.AcademicYearNo == insertData.AcademicYearNo && m.Semester == insertData.Semester
- && m.LessonNo == insertData.LessonNo && m.LessonDate == insertData.LessonDate
- && m.DeptNo == insertData.DeptNo && m.MajorNo == insertData.MajorNo
- && m.TeachClassNo == insertData.TeachClassNo && m.EmpNo == insertData.EmpNo
- && m.ClassroomNo == insertData.ClassroomNo && m.LessonTime == insertData.LessonTime
- && m.F_SchoolId == insertData.F_SchoolId) == 0
- && insertDataList.Count(m => m.AcademicYearNo == insertData.AcademicYearNo && m.Semester == insertData.Semester
- && m.LessonNo == insertData.LessonNo && m.LessonDate == insertData.LessonDate
- && m.DeptNo == insertData.DeptNo && m.MajorNo == insertData.MajorNo
- && m.TeachClassNo == insertData.TeachClassNo && m.EmpNo == insertData.EmpNo
- && m.ClassroomNo == insertData.ClassroomNo && m.LessonTime == insertData.LessonTime
- && m.F_SchoolId == insertData.F_SchoolId) == 0)
- {
- insertDataList.Add(insertData);
- }
- }
- var insertResult = await BaseRepository("CollegeMIS").InsertAsync(insertDataList);
- //TeachClass数据处理
-
- var arrangeLessonTermData = (await BaseRepository("CollegeMIS").FindListAsync<ArrangeLessonTermEntity>(@"select AcademicYearNo,Semester,DeptNo,majorno,lessonno,replace(teachclassno,lessonname,'') as teachclassno,empno from [dbo].[ArrangeLessonTerm]
- where (AcademicYearNo = '" + strAcademicYear + "') and semester='" + strSemester + @"'
- group by AcademicYearNo,Semester,DeptNo,majorno,lessonno,replace(teachclassno,lessonname,'') ,empno ")).ToList();
- var TeachClassData = (await BaseRepository("CollegeMIS").FindListAsync<TeachClassEntity>(@"SELECT *
- FROM TeachClass
- WHERE (AcademicYearNo = '" + strAcademicYear + "') and semester='" + strSemester + "' ")).ToList();
- var insertTeachClassDataList = new List<TeachClassEntity>();
- if (arrangeLessonTermData.Any())
- {
- foreach (var altitem in arrangeLessonTermData)
- {
- var insertTeachClassData = new TeachClassEntity()
- {
- AcademicYearNo = altitem.AcademicYearNo,
- Semester = altitem.Semester,
- DeptNo = altitem.DeptNo,
- MajorNo = altitem.MajorNo,
- LessonNo = altitem.LessonNo,
- Grade = classData.FirstOrDefault(m => m.ClassNo == altitem.TeachClassNo)?.Grade,
- LessonSortNo = altitem.LessonSortNo,
- TeachClassNo = altitem.TeachClassNo,
- EmpNo = altitem.EmpNo,
- F_SchoolId = altitem.F_SchoolId
- };
- //非空判断
- 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);
- }
-
- }
- await BaseRepository("CollegeMIS").InsertAsync(insertTeachClassDataList);
- }
- //继续openlessonplan同步
- await AsyncOpenLessonPlanData();
- if (insertResult > 0)
- {
- result = true;
- }
- }
- }
-
- }
- catch (Exception ex)
- {
- if (ex is ExceptionEx)
- {
- throw;
- }
- else
- {
- throw ExceptionEx.ThrowServiceException(ex);
- }
- }
- return result;
- }
-
- /// <summary>
- /// 同步专业开课计划数据,学生选课数据
- /// </summary>
- /// <returns></returns>
- public async Task<bool> AsyncOpenLessonPlanData()
- {
- bool result = false;
- try
- {
- var apiData = await Client.GetStringAsync(Config.GetValue("OpenLessonPlanAPI"));
- if (!string.IsNullOrEmpty(apiData))
- {
- var openLessonPlanData = await BaseRepository("CollegeMIS").FindListAsync<OpenLessonPlanEntity>();
- var data = JsonConvert.DeserializeObject<Root>(apiData);
- var dataList = data.entity.list;
- if (dataList.Any())
- {
- var insertDataList = new List<OpenLessonPlanEntity>();
- var majorData = (await BaseRepository("CollegeMIS").FindListAsync<CdMajorEntity>()).ToList();
- var lessonData = (await BaseRepository("CollegeMIS").FindListAsync<LessonInfoEntity>()).ToList();
- foreach (var item in dataList)
- {
- var insertData = new OpenLessonPlanEntity()
- {
- MakeDate = DateTime.Now,
- AcademicYearNo = item.schoolYear,
- Semester = item.semester.shangxia,
- DeptNo = majorData.Find(m => m.MajorNo == item.majorNumber).DeptNo,
- MajorNo = item.majorNumber,
- LessonNo = item.curriculumNumber,
- LessonName = item.curriculumName,
- PartCode = "",
- Grade = item.grade,
- LessonSortNo = lessonData.FirstOrDefault(m => m.LessonNo == item.curriculumNumber)?.LessonSortNo,
- LessonSortDetailNo = lessonData.FirstOrDefault(m => m.LessonNo == item.curriculumNumber)?.LessonSortDetailNo,
- StartWeek = 1,
- EndWeek = !string.IsNullOrEmpty(item.semester.zhouci) ? Convert.ToInt32(item.semester.zhouci) : 1,
- CheckStyleNo = "1",
- ScoreRecordStyleNo = "1",
- TeachDeptNo = majorData.Find(m => m.MajorNo == item.majorNumber).DeptNo,
- StudyScore = lessonData.FirstOrDefault(m => m.LessonNo == item.curriculumNumber)?.StudyScore,
- AmendDate = DateTime.Now,
- ClassroomType = 1,
- ClassroomPracticeType = 99,
- CheckMarkDept = "1",
- CheckMark = "1",
- TestMark = 0,
- F_SchoolId = item.schoolId
- };
- if (openLessonPlanData.Count(m => m.AcademicYearNo == insertData.AcademicYearNo &&
- m.Semester == insertData.Semester &&
- m.DeptNo == insertData.DeptNo &&
- 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) == 0 && insertDataList.Count(m => m.AcademicYearNo == insertData.AcademicYearNo &&
- m.Semester == insertData.Semester &&
- m.DeptNo == insertData.DeptNo &&
- 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) == 0)
- {
- insertDataList.Add(insertData);
- }
- }
- var insertResult = await BaseRepository("CollegeMIS").InsertAsync(insertDataList);
- //学生选课数据
-
- var TeachClassData = (await BaseRepository("CollegeMIS").FindListAsync<TeachClassEntity>(@"SELECT *
- FROM TeachClass
- WHERE (AcademicYearNo = '" + strAcademicYear + "') and semester='" + strSemester + "' ")).ToList();
- var stuinfobasicData = (await BaseRepository("CollegeMIS").FindListAsync<StuInfoBasicEntity>()).ToList();
- var stuSelectLessonListEntityData = (await BaseRepository("CollegeMIS").FindListAsync<StuSelectLessonListEntity>()).ToList();
- var insertStuSelectLessonListDataList = new List<StuSelectLessonListEntity>();
- if (TeachClassData.Any())
- {
- foreach (var itemteachclass in TeachClassData)
- {
- var classstulist = stuinfobasicData.Where(m => m.ClassNo == itemteachclass.TeachClassNo)
- .ToList();
- foreach (var stu in classstulist)
- {
- var insertDatastuselect = new StuSelectLessonListEntity();
- insertDatastuselect.NoticeBookNo = stu.NoticeNo;
- insertDatastuselect.StuNo = stu.StuNo;
- insertDatastuselect.DeptNo = stu.DeptNo;
- insertDatastuselect.ClassNo = stu.ClassNo;
- insertDatastuselect.MajorNo = stu.MajorNo;
- insertDatastuselect.StuName = stu.StuName;
- insertDatastuselect.GenderNo = stu.GenderNo != null && stu.GenderNo.Value ? "1" : "0";
- insertDatastuselect.AcademicYearNo = itemteachclass.AcademicYearNo;
- insertDatastuselect.Semester = itemteachclass.Semester;
- insertDatastuselect.OpenLessonDeptNo = itemteachclass.DeptNo;
- insertDatastuselect.OpenLessonMajorNo = itemteachclass.MajorNo;
- insertDatastuselect.LessonNo = itemteachclass.LessonNo;
- insertDatastuselect.LessonName = lessonData.FirstOrDefault(m => m.LessonNo == itemteachclass.LessonNo)?.LessonName;
- insertDatastuselect.PartCode = "";
- insertDatastuselect.OrdinaryScoreScale = 1;
- insertDatastuselect.TermInScoreScale = 1;
- insertDatastuselect.TermEndScoreScale = 1;
- insertDatastuselect.OtherScoreScale = 1;
- insertDatastuselect.TeachClassNo = stu.ClassNo;
- insertDatastuselect.LessonSortNo = lessonData.FirstOrDefault(m => m.LessonNo == itemteachclass.LessonNo)?.LessonSortNo;
- insertDatastuselect.StuSortNo = "02";
- insertDatastuselect.Grade = stu.Grade;
- insertDatastuselect.StudyScore = lessonData.FirstOrDefault(m => m.LessonNo == itemteachclass.LessonNo).StudyScore == null ? 0 : lessonData.FirstOrDefault(m => m.LessonNo == itemteachclass.LessonNo).StudyScore;
- insertDatastuselect.TotalStudyHour = lessonData.FirstOrDefault(m => m.LessonNo == itemteachclass.LessonNo).TotalStudyHour == null ? 0 : lessonData.FirstOrDefault(m => m.LessonNo == itemteachclass.LessonNo).TotalStudyHour;
- insertDatastuselect.IsInEffect = "1";
- insertDatastuselect.EmpNo = itemteachclass.EmpNo;
- insertDatastuselect.IsPitchOn = "1";
- insertDatastuselect.CheckMark = "0";
- insertDatastuselect.InsertTime = DateTime.Now;
- insertDatastuselect.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);
- }
- }
- }
- await BaseRepository("CollegeMIS").InsertAsync(insertStuSelectLessonListDataList);
- }
- if (insertResult > 0)
- {
- result = true;
- }
-
- }
- }
-
- }
- catch (Exception ex)
- {
- if (ex is ExceptionEx)
- {
- throw;
- }
- else
- {
- throw ExceptionEx.ThrowServiceException(ex);
- }
- }
- return result;
- }
-
- /// <summary>
- /// 清空当前学期排课数据
- /// </summary>
- /// <returns></returns>
- public async Task<bool> AsyncModifyArrangeLessonData()
- {
- bool result = false;
- try
- {
- var apiData = await Client.GetStringAsync(Config.GetValue("ModifyArrangeLessonAPI"));
- if (!string.IsNullOrEmpty(apiData))
- {
- var data = JsonConvert.DeserializeObject<Root>(apiData);
- if (data.success)
- {
- var semesterAndYear = Common.GetSemesterAndYear();
- var strAcademicYear = semesterAndYear.AcademicYearShort;
- var strSemester = semesterAndYear.Semester;
- var executeResult = await BaseRepository("CollegeMIS").ExecuteAsyncBySql(
- $"delete from ArrangeLessonTerm where AcademicYearNo='{strAcademicYear}' and Semester='{strSemester}' ");
- await BaseRepository("CollegeMIS").ExecuteAsyncBySql(
- $"delete from TeachClass where AcademicYearNo='{strAcademicYear}' and Semester='{strSemester}' ");
- await BaseRepository("CollegeMIS").ExecuteAsyncBySql(
- $"delete from OpenLessonPlan where AcademicYearNo='{strAcademicYear}' and Semester='{strSemester}' ");
- await BaseRepository("CollegeMIS").ExecuteAsyncBySql(
- $"delete from StuSelectLessonList where AcademicYearNo='{strAcademicYear}' and Semester='{strSemester}' ");
- if (executeResult > 0)
- {
- result = true;
- }
- }
- }
- }
- catch (Exception ex)
- {
- if (ex is ExceptionEx)
- {
- throw;
- }
- else
- {
- throw ExceptionEx.ThrowServiceException(ex);
- }
- }
- return result;
- }
-
- /// <summary>
- /// 按条件同步排课数据
- /// </summary>
- /// <returns></returns>
- public async Task<bool> AsyncArrangeLessonDataByCondition(ArrangeLessonTermEntity entity)
- {
- bool result = false;
- try
- {
- var lessonData = (await BaseRepository("CollegeMIS").FindListAsync<LessonInfoEntity>()).ToList();
- var classData = (await BaseRepository("CollegeMIS").FindListAsync<ClassInfoEntity>()).ToList();
- var classroomData = (await BaseRepository("CollegeMIS").FindListAsync<ClassroomInfoEntity>()).ToList();
- if (entity.SyncType == "1")
- {
- var oldArrangeLessonTermList = (await BaseRepository("CollegeMIS").FindListAsync<ArrangeLessonTermEntity>($"select * from ArrangeLessonTerm t where t.AcademicYearNo='{entity.AcademicYearNo}' and t.Semester='{entity.Semester}' ")).ToList();
-
- var LessonList = BaseRepository("paikeDbString").FindList<paikeList>(
- @"SELECT a.week AS 'week', a.section AS 'section',a.timetext AS 'timetext',c.name AS 'classname',c.number AS 'classnumber',
- r.name AS 'roomname',r.number AS 'ClassroomNo',t.name AS 'teachername',t.number AS 'teacherNumber', cu.name AS 'curriculunName',
- cu.number AS 'curriculunNumber', s.year AS 'year', s.number AS 'semester'
- FROM tb_paike a
- LEFT JOIN tb_clazz c ON c.id= a.`clazzid`
- LEFT JOIN tb_classroom r ON r.id =a.`classroomid`
- LEFT JOIN tb_teacher t ON t.id =a.`teacherid`
- LEFT JOIN tb_curriculum cu ON cu.id=a.`curriculunid`
- LEFT JOIN tb_semester s ON s.id=a.`semester`
- WHERE 1=1 AND c.number IS NOT NULL AND s.year = '" + entity.AcademicYearNo + "' AND s.number ='" + entity.Semester + "'");
-
- if (LessonList.Count() > 0)
- {
- var insertDataList = new List<ArrangeLessonTermEntity>();
- foreach (var item in LessonList)
- {
- var classinfo = classData.FirstOrDefault(m => m.ClassNo == item.classnumber);
- var timesArr = item.timetext.Substring(0, item.timetext.Length - 1).Split(',');
- foreach (var timesItem in timesArr)
- {
- var insertData = new ArrangeLessonTermEntity
- {
- ALTId = Guid.NewGuid().ToString(),
- LessonDate = DateTime.Parse(timesItem),
- AcademicYearNo = item.year,
- Semester = item.semester,
- DeptNo = classinfo?.DeptNo,
- MajorNo = classinfo?.MajorNo,
- LessonNo = item.curriculunNumber,
- LessonName = item.curriculunName,
- TeachClassNo = item.curriculunName + classinfo?.ClassNo,
- EmpNo = item.teacherNumber,
- EmpName = item.teachername,
- LessonSortNo = lessonData.FirstOrDefault(m => m.LessonNo == item.curriculunNumber)?.LessonSortNo,
- ClassroomNo = classroomData.FirstOrDefault(m => m.ClassroomNo == item.ClassroomNo)?.ClassroomNo,
- LessonTime = item.week + item.section,
- CheckMark = "1",
- F_SchoolId = entity.F_SchoolId
- };
- if (oldArrangeLessonTermList.Count(m => m.AcademicYearNo == insertData.AcademicYearNo && m.Semester == insertData.Semester
- && m.LessonNo == insertData.LessonNo && m.LessonDate.Value.Date == insertData.LessonDate.Value.Date
- && m.DeptNo == insertData.DeptNo && m.MajorNo == insertData.MajorNo
- && m.TeachClassNo == insertData.TeachClassNo && m.EmpNo == insertData.EmpNo
- && m.ClassroomNo == insertData.ClassroomNo && m.LessonTime == insertData.LessonTime
- && m.F_SchoolId == insertData.F_SchoolId) == 0
- && insertDataList.Count(m => m.AcademicYearNo == insertData.AcademicYearNo && m.Semester == insertData.Semester
- && m.LessonNo == insertData.LessonNo && m.LessonDate.Value.Date == insertData.LessonDate.Value.Date
- && m.DeptNo == insertData.DeptNo && m.MajorNo == insertData.MajorNo
- && m.TeachClassNo == insertData.TeachClassNo && m.EmpNo == insertData.EmpNo
- && m.ClassroomNo == insertData.ClassroomNo && m.LessonTime == insertData.LessonTime
- && m.F_SchoolId == insertData.F_SchoolId) == 0)
- {
- insertDataList.Add(insertData);
- BaseRepository("CollegeMIS").Insert(insertData);
- }
- }
- }
-
- }
-
- //实训课
- var LessonListOfPracticalTrain = BaseRepository("paikeDbString").FindList<paikeList>(
- @"SELECT a.WEEK AS 'week',a.section AS 'section',a.timetext AS 'timetext',c.NAME AS 'classname',c.number AS 'classnumber',
- r.NAME AS 'roomname',r.number AS 'ClassroomNo',t.NAME AS 'teachername',t.number AS 'teacherNumber',cu.NAME AS 'curriculunName',
- cu.number AS 'curriculunNumber',s.YEAR AS 'year',s.number AS 'semester',a.teachers_number AS 'teachersNumber',a.teachers_name AS 'teachersName'
- FROM tb_practicaltraining_paike a
- LEFT JOIN tb_clazz c ON c.id = a.`clazzid`
- LEFT JOIN tb_classroom r ON r.id = a.`classroomid`
- LEFT JOIN tb_teacher t ON t.id = a.`teacherid`
- LEFT JOIN tb_curriculum cu ON cu.id = a.`curriculunid`
- LEFT JOIN tb_semester s ON s.id = a.`semester`
- WHERE 1 = 1 AND c.number IS NOT NULL AND s.YEAR = '" + entity.AcademicYearNo + "' AND s.number = '" + entity.Semester + "'");
- if (LessonListOfPracticalTrain.Any())
- {
- var insertDataList = new List<ArrangeLessonTermEntity>();
- foreach (var item in LessonListOfPracticalTrain)
- {
- var classinfo = classData.FirstOrDefault(m => m.ClassNo == item.classnumber);
- var timesArr = item.timetext.Substring(0, item.timetext.Length - 1).Split(',');
- foreach (var timesItem in timesArr)
- {
- var insertData = new ArrangeLessonTermEntity
- {
- ALTId = Guid.NewGuid().ToString(),
- LessonDate = DateTime.Parse(timesItem),
- AcademicYearNo = item.year,
- Semester = item.semester,
- DeptNo = classinfo?.DeptNo,
- MajorNo = classinfo?.MajorNo,
- LessonNo = item.curriculunNumber,
- LessonName = item.curriculunName,
- TeachClassNo = item.curriculunName + classinfo?.ClassNo,
- EmpNo = item.teacherNumber,
- EmpName = item.teachername,
- LessonSortNo = lessonData.FirstOrDefault(m => m.LessonNo == item.curriculunNumber)?.LessonSortNo,
- ClassroomNo = classroomData.FirstOrDefault(m => m.ClassroomNo == item.ClassroomNo)?.ClassroomNo,
- LessonTime = item.week + item.section,
- CheckMark = "1",
- F_SchoolId = entity.F_SchoolId
- };
- if (oldArrangeLessonTermList.Count(m => m.AcademicYearNo == insertData.AcademicYearNo && m.Semester == insertData.Semester
- && m.LessonNo == insertData.LessonNo && m.LessonDate.Value.Date == insertData.LessonDate.Value.Date
- && m.DeptNo == insertData.DeptNo && m.MajorNo == insertData.MajorNo
- && m.TeachClassNo == insertData.TeachClassNo && m.EmpNo == insertData.EmpNo
- && m.ClassroomNo == insertData.ClassroomNo && m.LessonTime == insertData.LessonTime
- && m.F_SchoolId == insertData.F_SchoolId) == 0
- && insertDataList.Count(m => m.AcademicYearNo == insertData.AcademicYearNo && m.Semester == insertData.Semester
- && m.LessonNo == insertData.LessonNo && m.LessonDate.Value.Date == insertData.LessonDate.Value.Date
- && m.DeptNo == insertData.DeptNo && m.MajorNo == insertData.MajorNo
- && m.TeachClassNo == insertData.TeachClassNo && m.EmpNo == insertData.EmpNo
- && m.ClassroomNo == insertData.ClassroomNo && m.LessonTime == insertData.LessonTime
- && m.F_SchoolId == insertData.F_SchoolId) == 0)
- {
- insertDataList.Add(insertData);
- BaseRepository("CollegeMIS").Insert(insertData);
- }
- }
- }
- }
-
- }
- else
- {
- //TeachClass数据处理 20211214改为直接读取mysql库
- var teachclasslist = BaseRepository("paikeDbString").FindList<TeachClassEntity>(@"SELECT clazz.name AS 'clazzname',
- clazz.number AS 'TeachClassNo',
- curriculum.name AS 'curriculumname',
- curriculum.number AS 'LessonNo',
- semester.year AS 'AcademicYearNo',
- semester.number AS 'Semester',
- a.jointclass AS 'jointclass',
- a.type AS 'LessonSortNo',
- a.classhour AS 'classhour',
- room.name AS 'roomname',
- room.number AS 'roomnumber',
- teacher.name AS 'teachername',
- teacher.number AS 'EmpNo'
- FROM tb_class_plan a
- LEFT JOIN tb_clazz clazz ON clazz.id = a.clazzid
- LEFT JOIN tb_semester semester ON semester.id = clazz.semester
- LEFT JOIN tb_curriculum curriculum ON curriculum.id = a.curriculum
- LEFT JOIN tb_classroom room ON room.id = a.classroom
- LEFT JOIN tb_teacher teacher ON teacher.id = a.teacher
- WHERE a.type='1' and semester.year = '" + entity.AcademicYearNo + "' AND semester.number = '" + entity.Semester + "'");
- var TeachClassData = (await BaseRepository("CollegeMIS").FindListAsync<TeachClassEntity>(@"SELECT *
- FROM TeachClass
- WHERE (AcademicYearNo = '" + entity.AcademicYearNo + "') and semester='" + entity.Semester + "' and F_SchoolId='" + entity.F_SchoolId + "' ")).ToList();
- //待插入数据
- var insertTeachClassDataList = new List<TeachClassEntity>();
- foreach (var teachClassEntity in teachclasslist)
- {
- var classitemEntity = classData.FirstOrDefault(m => m.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 = entity.F_SchoolId
- };
- //非空判断
- 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);
- }
- }
- await BaseRepository("CollegeMIS").InsertAsync(insertTeachClassDataList);
- //继续openlessonplan同步
- await AsyncOpenLessonPlanDataByCondition(entity);
- }
- result = true;
- }
- catch (Exception ex)
- {
- if (ex is ExceptionEx)
- {
- throw;
- }
- else
- {
- throw ExceptionEx.ThrowServiceException(ex);
- }
- }
- return result;
- }
-
- /// <summary>
- /// 按条件同步专业开课计划数据,学生选课数据
- /// </summary>
- /// <returns></returns>
- public async Task<bool> AsyncOpenLessonPlanDataByCondition(ArrangeLessonTermEntity entity)
- {
- try
- {
- var TeachList = BaseRepository("paikeDbString").FindList<TeachClassEntity>(
- @"select m.name AS 'MajorName', m.number AS 'MajorNo', tt.EmpNo AS 'EmpNo',
- tt.EmpName AS 'EmpName', sc.name AS 'F_SchoolName', sc.sid AS 'F_SchoolId',
- p.grade AS 'Grade', p.classhour AS 'classhour', curr.name AS 'LessonName', curr.number AS 'LessonNo',
- s.year AS 'AcademicYearNo', s.number AS 'Semester' ,cour.`assessmentmethod` AS 'ExamType' FROM tb_major_plan p
- LEFT JOIN (
- SELECT
- t.teacher,
- GROUP_CONCAT(DISTINCT c.`name`) AS 'EmpName',
- GROUP_CONCAT(DISTINCT c.number) AS 'EmpNo'
- FROM
- tb_major_plan t
- LEFT JOIN tb_teacher c ON FIND_IN_SET(c.id, t.teacher) > 0
- GROUP BY
- t.teacher
- ) tt ON tt.teacher = p.teacher
- LEFT JOIN tb_semester s ON s.id=p.`semester`
- LEFT JOIN tb_school sc ON sc.`id`= p.`school`
- LEFT JOIN tb_major m ON m.id=p.major
- LEFT JOIN tb_course cour ON cour.id= p.`course`
- LEFT JOIN tb_curriculum curr ON curr.id=cour.`course`
- WHERE s.year = '" + entity.AcademicYearNo + "' AND s.number = '" + entity.Semester
- + "' AND sc.sid = '" + entity.F_SchoolId + "' AND curr.`ification` ='1' ORDER BY p.`major` ");
-
- var majorData = (await BaseRepository("CollegeMIS").FindListAsync<CdMajorEntity>()).ToList();
- var lessonData = (await BaseRepository("CollegeMIS").FindListAsync<LessonInfoEntity>()).ToList();
-
- if (TeachList.Count() > 0)
- {
- var openLessonPlanData = await BaseRepository("CollegeMIS").FindListAsync<OpenLessonPlanEntity>();
- var now = DateTime.Now;
- var insertDataList = new List<OpenLessonPlanEntity>();
-
- foreach (var item in TeachList)
- {
- foreach (var itemTeach in item.EmpNo.Split(','))
- {
- var insertData = new OpenLessonPlanEntity()
- {
- TeachNo = itemTeach,
- MakeDate = now,
- AcademicYearNo = item.AcademicYearNo,
- Semester = item.Semester,
- DeptNo = majorData.FirstOrDefault(m => m.MajorNo == item.MajorNo)?.DeptNo,
- MajorNo = item.MajorNo,
- LessonNo = item.LessonNo,
- LessonName = item.LessonName,
- PartCode = "",
- Grade = item.Grade,
- LessonSortNo = lessonData.FirstOrDefault(m => m.LessonNo == item.LessonNo)
- ?.LessonSortNo,
- LessonSortDetailNo = lessonData
- .FirstOrDefault(m => m.LessonNo == item.LessonSortDetailNo)?.LessonSortDetailNo,
- StartWeek = item.StartWeek,
- EndWeek = item.EndWeek,
- CheckStyleNo = "1",
- ScoreRecordStyleNo = "1",
- TeachDeptNo = majorData.FirstOrDefault(m => m.MajorNo == item.MajorNo)?.DeptNo,
- StudyScore = 0,
- AmendDate = now,
- ClassroomType = 1,
- ClassroomPracticeType = 99,
- CheckMarkDept = "1",
- CheckMark = "1",
- TestMark = 0,
- F_SchoolId = item.F_SchoolId,
- State = 1,
- ExamType = item.ExamType
- };
- 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) == 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) == 0)
- {
- insertDataList.Add(insertData);
- }
- }
- }
- await BaseRepository("CollegeMIS").InsertAsync(insertDataList);
- }
- //学生选课数据
- var TeachClassData = (await BaseRepository("CollegeMIS").FindListAsync<TeachClassEntity>(@"SELECT *
- FROM TeachClass
- WHERE (AcademicYearNo = '" + entity.AcademicYearNo + "') and semester='" + entity.Semester + "' and F_SchoolId='" + entity.F_SchoolId + "' ")).ToList();
- var stuinfobasicData = (await BaseRepository("CollegeMIS").FindListAsync<StuInfoBasicEntity>()).ToList();
- var stuSelectLessonListEntityData = (await BaseRepository("CollegeMIS").FindListAsync<StuSelectLessonListEntity>()).ToList();
- var insertStuSelectLessonListDataList = new List<StuSelectLessonListEntity>();
- if (TeachClassData.Any())
- {
- foreach (var itemteachclass in TeachClassData)
- {
- var classstulist = stuinfobasicData.Where(m => m.ClassNo == itemteachclass.TeachClassNo)
- .ToList();
- foreach (var stu in classstulist)
- {
- var insertDatastuselect = new StuSelectLessonListEntity();
- insertDatastuselect.NoticeBookNo = stu.NoticeNo;
- insertDatastuselect.StuNo = stu.StuNo;
- insertDatastuselect.DeptNo = stu.DeptNo;
- insertDatastuselect.ClassNo = stu.ClassNo;
- insertDatastuselect.MajorNo = stu.MajorNo;
- insertDatastuselect.StuName = stu.StuName;
- insertDatastuselect.GenderNo = stu.GenderNo != null && stu.GenderNo.Value ? "1" : "0";
- insertDatastuselect.AcademicYearNo = itemteachclass.AcademicYearNo;
- insertDatastuselect.Semester = itemteachclass.Semester;
- insertDatastuselect.OpenLessonDeptNo = itemteachclass.DeptNo;
- insertDatastuselect.OpenLessonMajorNo = itemteachclass.MajorNo;
- insertDatastuselect.LessonNo = itemteachclass.LessonNo;
- insertDatastuselect.LessonName = lessonData.FirstOrDefault(m => m.LessonNo == itemteachclass.LessonNo)?.LessonName;
- insertDatastuselect.PartCode = "";
- insertDatastuselect.OrdinaryScoreScale = 1;
- insertDatastuselect.TermInScoreScale = 1;
- insertDatastuselect.TermEndScoreScale = 1;
- insertDatastuselect.OtherScoreScale = 1;
- insertDatastuselect.TeachClassNo = stu.ClassNo;
- insertDatastuselect.LessonSortNo = lessonData.FirstOrDefault(m => m.LessonNo == itemteachclass.LessonNo)?.LessonSortNo;
- insertDatastuselect.StuSortNo = "02";
- insertDatastuselect.Grade = stu.Grade;
- insertDatastuselect.StudyScore = 0;
- insertDatastuselect.TotalStudyHour = 0;
- insertDatastuselect.IsInEffect = "1";
- insertDatastuselect.EmpNo = itemteachclass.EmpNo;
- insertDatastuselect.IsPitchOn = "1";
- insertDatastuselect.CheckMark = "1";
- insertDatastuselect.InsertTime = DateTime.Now;
- insertDatastuselect.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);
- }
- }
- }
- await BaseRepository("CollegeMIS").InsertAsync(insertStuSelectLessonListDataList);
- }
- }
- catch (Exception ex)
- {
- if (ex is ExceptionEx)
- {
- throw;
- }
- else
- {
- throw ExceptionEx.ThrowServiceException(ex);
- }
- }
- return true;
- }
-
- /// <summary>
- /// 按条件清空排课数据
- /// </summary>
- /// <returns></returns>
- public async Task<bool> AsyncModifyArrangeLessonDataByCondition(ArrangeLessonTermEntity entity)
- {
- bool result = false;
- var db = BaseRepository("CollegeMIS");
- try
- {
- if (entity.SyncType == "1")
- {
- HttpContent httpContent = new StringContent("{\"school\":\"" + entity.F_SchoolId + "\",\"year\":\"" + entity.AcademicYearNo + "\",\"number\":\"" + entity.Semester + "\"}");
- httpContent.Headers.ContentType = new System.Net.Http.Headers.MediaTypeHeaderValue("application/json");
- string apiData = await Client.PostAsync(Config.GetValue("ModifyArrangeLessonAPI"), httpContent).Result.Content.ReadAsStringAsync();
-
- if (!string.IsNullOrEmpty(apiData))
- {
- var data = JsonConvert.DeserializeObject<Root>(apiData);
- if (data.success)
- {
- db.BeginTrans();
- db.ExecuteBySql(
- $"delete from ArrangeLessonTerm where F_SchoolId='{entity.F_SchoolId}' and AcademicYearNo='{entity.AcademicYearNo}' and Semester='{entity.Semester}' ");
- db.Commit();
- result = true;
- }
- }
- }
- else
- {
- db.BeginTrans();
- db.ExecuteBySql(
- $"delete from TeachClass where F_SchoolId='{entity.F_SchoolId}' and AcademicYearNo='{entity.AcademicYearNo}' and Semester='{entity.Semester}' ");
- db.ExecuteBySql(
- $"delete from OpenLessonPlan where F_SchoolId='{entity.F_SchoolId}' and AcademicYearNo='{entity.AcademicYearNo}' and Semester='{entity.Semester}' ");
- db.ExecuteBySql(
- $"delete from StuSelectLessonList where F_SchoolId='{entity.F_SchoolId}' and AcademicYearNo='{entity.AcademicYearNo}' and Semester='{entity.Semester}' ");
- db.Commit();
- result = true;
- }
- }
- catch (Exception ex)
- {
- db.Rollback();
- if (ex is ExceptionEx)
- {
- throw;
- }
- else
- {
- throw ExceptionEx.ThrowServiceException(ex);
- }
- }
- return result;
- }
-
-
- /// <summary>
- /// 课程表
- /// </summary>
- /// <param name="userAccount">账号</param>
- /// <param name="userType">用户类型 学生 教师</param>
- /// <param name="startDate">查询开始时间</param>
- /// <param name="endDate">查询截止时间</param>
- /// <returns></returns>
- public IEnumerable<TimeTable> GetTimeTable(string userAccount, string userType, string startDate, string endDate)
- {
- var semesterAndYear = Common.GetSemesterAndYear(startDate);
- var strAcademicYear = semesterAndYear.AcademicYearShort;
- var strSemester = semesterAndYear.Semester;
- string sql;
- if (userType == "学生")
- {
- sql = @"SELECT
- b.LessonNo,b.AcademicYearNo as AcademicYear,b.LessonName,b.LessonTime,b.LessonDate,b.Empname EmpName,b.EmpNo,c.ClassroomName,b.Semester,b.ClassroomNo as ClassRoomNo,b.LessonSortNo,d.ClassName,e.EnName,f.LessonTypeName,f.LessonTypeCode
- from StuSelectLessonList a
- left join ArrangeLessonTerm b on b.TeachClassNo=RTRIM(a.LessonName) + RTRIM(a.PartCode) + RTRIM(a.TeachClassNo)
- left join ClassroomInfo c on c.ClassroomNo=b.classroomNo
- left join ClassInfo d on replace(b.TeachClassNo,b.LessonName,'')=d.ClassNo
- left join LessonInfo e on a.LessonNo=e.LessonNo
- left join CdLessonType f on e.LessonTypeId=f.LTId
- where a.StuNo=@userAccount and a.AcademicYearNo=@strAcademicYear and a.Semester=@strSemester
- and b.AcademicYearNo=@strAcademicYear and b.Semester=@strSemester
- and b.LessonDate>=@startDate and b.LessonDate<=@endDate and b.CheckMark=1";
- }
- else
- {
- sql = @"select b.AcademicYearNo as AcademicYear,b.LessonNo,e.EnName,b.LessonName,b.LessonTime,b.LessonDate,b.EmpNo,b.Empname EmpName,replace(b.TeachClassNo,b.LessonName,'') TeachClassNo, c.ClassroomName,b.Semester,b.ClassroomNo as ClassRoomNo,b.LessonSortNo,d.ClassName,f.LessonTypeName,f.LessonTypeCode
- from ArrangeLessonTerm b
- left join ClassroomInfo c on c.ClassroomNo=b.classroomNo
- left join ClassInfo d on replace(b.TeachClassNo,b.LessonName,'')=d.ClassNo
- left join LessonInfo e on b.LessonNo=e.LessonNo
- left join CdLessonType f on e.LessonTypeId=f.LTId
- where b.EmpNo=@userAccount and b.AcademicYearNo=@strAcademicYear and b.Semester=@strSemester
- and b.LessonDate>=@startDate and b.LessonDate<=@endDate and b.CheckMark=1";
- }
-
- try
- {
- var result = BaseRepository("CollegeMIS").FindList<TimeTable>(sql, new { userAccount, startDate, endDate, strAcademicYear, strSemester });
- return result;
- }
- catch (Exception ex)
- {
- if (ex is ExceptionEx)
- {
- throw;
- }
- else
- {
- throw ExceptionEx.ThrowServiceException(ex);
- }
- }
- }
- public IEnumerable<CdMajorEntity> GetMajors(string academicYearNo, string semester)
- {
- try
- {
- //var data = BaseRepository("CollegeMIS").FindList<CdMajorEntity>(m => m.CheckMark == true);
-
- //根据学年学期判断排课同步数据表中是否有数据:若有,说明该学年学期同步过;若没有,修改基础表,false;
- var aa = this.BaseRepository("CollegeMIS").FindEntity<ArrangeLessonSyncEntity>(x => x.AcademicYearNo == academicYearNo && x.Semester == semester && x.STypeId == "3");
- if (aa == null)
- {
- this.BaseRepository("CollegeMIS").ExecuteBySql("update CdMajor set SyncFlag='false' ");
- }
-
- //数据
- var db = BaseRepository("CollegeMIS");
- db.BeginTrans();
- var data = db.FindList<CdMajorEntity>("select * from CdMajor where CheckMark=1 and ID not in (select STableId from ArrangeLessonSync where AcademicYearNo='" + academicYearNo + "' and Semester='" + semester + "' )");
- DateTime syncdate = DateTime.Now;
- foreach (var item in data.Select(m => m.ID))
- {
- ArrangeLessonSyncEntity alsEntity = new ArrangeLessonSyncEntity();
- alsEntity.Create();
- alsEntity.AcademicYearNo = academicYearNo;
- alsEntity.Semester = semester;
- alsEntity.STypeId = "3";
- alsEntity.SDate = syncdate;
- alsEntity.STableId = item;
- db.Insert(alsEntity);
- }
- db.Commit();
- return data;
- }
- catch (Exception e)
- {
- Console.WriteLine(e);
- throw;
- }
- }
- public IEnumerable<CdMajorEntity> GetMajorsNotRecord(string academicYearNo, string semester)
- {
- try
- {
- //var data = BaseRepository("CollegeMIS").FindList<CdMajorEntity>(m => m.CheckMark == true);
-
- var db = BaseRepository("CollegeMIS");
- db.BeginTrans();
- var data = db.FindList<CdMajorEntity>("select * from CdMajor where CheckMark=1 and ID not in (select STableId from ArrangeLessonSync where AcademicYearNo='" + academicYearNo + "' and Semester='" + semester + "' )");
-
- db.Commit();
- return data;
- }
- catch (Exception e)
- {
- Console.WriteLine(e);
- throw;
- }
- }
-
- public IEnumerable<ClassroomInfoEntity> GetClassrooms(string academicYearNo, string semester)
- {
- try
- {
- //var data = BaseRepository("CollegeMIS").FindList<ClassroomInfoEntity>(m => m.CheckMark == true);
-
- //根据学年学期判断排课同步数据表中是否有数据:若有,说明该学年学期同步过;若没有,修改基础表,false;
- var aa = this.BaseRepository("CollegeMIS").FindEntity<ArrangeLessonSyncEntity>(x => x.AcademicYearNo == academicYearNo && x.Semester == semester && x.STypeId == "6");
- if (aa == null)
- {
- this.BaseRepository("CollegeMIS").ExecuteBySql("update ClassroomInfo set SyncFlag='false' ");
- }
-
- //数据
- var db = BaseRepository("CollegeMIS");
- db.BeginTrans();
- var data = db.FindList<ClassroomInfoEntity>("select * from ClassroomInfo where CheckMark=1 and ClassroomId not in (select STableId from ArrangeLessonSync where AcademicYearNo='" + academicYearNo + "' and Semester='" + semester + "' )");
- DateTime syncdate = DateTime.Now;
- foreach (var item in data.Select(m => m.ClassroomId))
- {
- ArrangeLessonSyncEntity alsEntity = new ArrangeLessonSyncEntity();
- alsEntity.Create();
- alsEntity.AcademicYearNo = academicYearNo;
- alsEntity.Semester = semester;
- alsEntity.STypeId = "6";
- alsEntity.SDate = syncdate;
- alsEntity.STableId = item;
- db.Insert(alsEntity);
- }
- db.Commit();
- return data;
- }
- catch (Exception e)
- {
- Console.WriteLine(e);
- throw;
- }
- }
- public IEnumerable<ClassroomInfoEntity> GetClassroomsNotRecord(string academicYearNo, string semester)
- {
- try
- {
- //var data = BaseRepository("CollegeMIS").FindList<ClassroomInfoEntity>(m => m.CheckMark == true);
-
- var db = BaseRepository("CollegeMIS");
- db.BeginTrans();
- var data = db.FindList<ClassroomInfoEntity>("select * from ClassroomInfo where CheckMark=1 and ClassroomId not in (select STableId from ArrangeLessonSync where AcademicYearNo='" + academicYearNo + "' and Semester='" + semester + "' )");
-
- db.Commit();
- return data;
- }
- catch (Exception e)
- {
- Console.WriteLine(e);
- throw;
- }
- }
-
- public IEnumerable<CdClassTypeEntity> GetClassType()
- {
- try
- {
- var data = BaseRepository("CollegeMIS").FindList<CdClassTypeEntity>();
- return data;
- }
- catch (Exception e)
- {
- Console.WriteLine(e);
- throw;
- }
- }
-
- public IEnumerable<LessonInfoEntity> GetLessons(string academicYearNo, string semester)
- {
- try
- {
- //var data = BaseRepository("CollegeMIS").FindList<LessonInfoEntity>(m => m.CheckMark == true);
-
- //根据学年学期判断排课同步数据表中是否有数据:若有,说明该学年学期同步过;若没有,修改基础表,false;
- var aa = this.BaseRepository("CollegeMIS").FindEntity<ArrangeLessonSyncEntity>(x => x.AcademicYearNo == academicYearNo && x.Semester == semester && x.STypeId == "5");
- if (aa == null)
- {
- this.BaseRepository("CollegeMIS").ExecuteBySql("update LessonInfo set SyncFlag='false' ");
- }
-
- //数据
- var db = BaseRepository("CollegeMIS");
- db.BeginTrans();
- var data = db.FindList<LessonInfoEntity>("select * from LessonInfo where CheckMark=1 and LessonId not in (select STableId from ArrangeLessonSync where AcademicYearNo='" + academicYearNo + "' and Semester='" + semester + "' )");
- DateTime syncdate = DateTime.Now;
- foreach (var item in data.Select(m => m.LessonId))
- {
- ArrangeLessonSyncEntity alsEntity = new ArrangeLessonSyncEntity();
- alsEntity.Create();
- alsEntity.AcademicYearNo = academicYearNo;
- alsEntity.Semester = semester;
- alsEntity.STypeId = "5";
- alsEntity.SDate = syncdate;
- alsEntity.STableId = item;
- db.Insert(alsEntity);
- }
- db.Commit();
- return data;
- }
- catch (Exception e)
- {
- Console.WriteLine(e);
- throw;
- }
- }
- public IEnumerable<LessonInfoEntity> GetLessonsNotRecord(string academicYearNo, string semester)
- {
- try
- {
- //var data = BaseRepository("CollegeMIS").FindList<LessonInfoEntity>(m => m.CheckMark == true);
-
- var db = BaseRepository("CollegeMIS");
- db.BeginTrans();
- var data = db.FindList<LessonInfoEntity>("select * from LessonInfo where CheckMark=1 and LessonId not in (select STableId from ArrangeLessonSync where AcademicYearNo='" + academicYearNo + "' and Semester='" + semester + "' )");
-
- db.Commit();
- return data;
- }
- catch (Exception e)
- {
- Console.WriteLine(e);
- throw;
- }
- }
-
- public IEnumerable<CdLessonSortDetailEntity> GetLessonSortDetails()
- {
- try
- {
- var data = BaseRepository("CollegeMIS").FindList<CdLessonSortDetailEntity>();
- return data;
- }
- catch (Exception e)
- {
- Console.WriteLine(e);
- throw;
- }
- }
-
- public IEnumerable<CdLessonSortEntity> GetLessonSorts()
- {
- try
- {
- var data = BaseRepository("CollegeMIS").FindList<CdLessonSortEntity>();
- return data;
- }
- catch (Exception e)
- {
- Console.WriteLine(e);
- throw;
- }
- }
-
- public IEnumerable<EmpInfoEntity> GetTeachers(string academicYearNo, string semester)
- {
- try
- {
- //var data = BaseRepository("CollegeMIS").FindList<EmpInfoEntity>("select a.*,b.F_Password,b.F_Secretkey from dbo.EmpInfo a left join adms7ultimate2.dbo.LR_Base_User b on a.EmpNo=b.F_EnCode where a.CheckMark=1");
-
- //根据学年学期判断排课同步数据表中是否有数据:若有,说明该学年学期同步过;若没有,修改基础表,false;
- var aa = this.BaseRepository("CollegeMIS").FindEntity<ArrangeLessonSyncEntity>(x => x.AcademicYearNo == academicYearNo && x.Semester == semester && x.STypeId == "7");
- if (aa == null)
- {
- this.BaseRepository("CollegeMIS").ExecuteBySql("update EmpInfo set SyncFlag='false' ");
- }
-
- //数据
- var db = BaseRepository("CollegeMIS");
- var dbbase = BaseRepository();
- db.BeginTrans();
- var data = db.FindList<EmpInfoEntity>("select a.*,b.F_Password,b.F_Secretkey from dbo.EmpInfo a left join " + dbbase.getDbConnection().Database + ".dbo.LR_Base_User b on a.EmpNo=b.F_EnCode where a.CheckMark=1 and a.ishaslesson=1 and b.F_DeleteMark=0 and a.EmpId not in (select STableId from ArrangeLessonSync where AcademicYearNo='" + academicYearNo + "' and Semester='" + semester + "' )");
- DateTime syncdate = DateTime.Now;
- foreach (var item in data.Select(m => m.EmpId))
- {
- ArrangeLessonSyncEntity alsEntity = new ArrangeLessonSyncEntity();
- alsEntity.Create();
- alsEntity.AcademicYearNo = academicYearNo;
- alsEntity.Semester = semester;
- alsEntity.STypeId = "7";
- alsEntity.SDate = syncdate;
- alsEntity.STableId = item;
- db.Insert(alsEntity);
- }
- db.Commit();
- return data;
- }
- catch (Exception e)
- {
- Console.WriteLine(e);
- throw;
- }
- }
- public IEnumerable<EmpInfoEntity> GetTeachersNotRecord(string academicYearNo, string semester)
- {
- try
- {
- //var data = BaseRepository("CollegeMIS").FindList<EmpInfoEntity>("select a.*,b.F_Password,b.F_Secretkey from dbo.EmpInfo a left join adms7ultimate2.dbo.LR_Base_User b on a.EmpNo=b.F_EnCode where a.CheckMark=1");
-
- var db = BaseRepository("CollegeMIS");
- var dbbase = BaseRepository();
- db.BeginTrans();
- var data = db.FindList<EmpInfoEntity>("select a.*,b.F_Password,b.F_Secretkey from dbo.EmpInfo a left join " + dbbase.getDbConnection().Database + ".dbo.LR_Base_User b on a.EmpNo=b.F_EnCode where a.CheckMark=1 and a.ishaslesson=1 and b.F_DeleteMark=0 and a.EmpId not in (select STableId from ArrangeLessonSync where AcademicYearNo='" + academicYearNo + "' and Semester='" + semester + "' )");
-
- db.Commit();
- return data;
- }
- catch (Exception e)
- {
- Console.WriteLine(e);
- throw;
- }
- }
-
- public IEnumerable<ClassInfoEntity> GetClasses(string academicYearNo, string semester)
- {
- try
- {
- //var data = BaseRepository("CollegeMIS").FindList<ClassInfoEntity>(m => m.CheckMark == true);
-
- //根据学年学期判断排课同步数据表中是否有数据:若有,说明该学年学期同步过;若没有,修改基础表,false;
- var aa = this.BaseRepository("CollegeMIS").FindEntity<ArrangeLessonSyncEntity>(x => x.AcademicYearNo == academicYearNo && x.Semester == semester && x.STypeId == "4");
- if (aa == null)
- {
- this.BaseRepository("CollegeMIS").ExecuteBySql("update ClassInfo set SyncFlag='false' ");
- }
-
- //数据
- var db = BaseRepository("CollegeMIS");
- db.BeginTrans();
- var data = db.FindList<ClassInfoEntity>("select * from ClassInfo where CheckMark=1 and ClassId not in (select STableId from ArrangeLessonSync where AcademicYearNo='" + academicYearNo + "' and Semester='" + semester + "' )");
- DateTime syncdate = DateTime.Now;
- foreach (var item in data.Select(m => m.ClassId))
- {
- ArrangeLessonSyncEntity alsEntity = new ArrangeLessonSyncEntity();
- alsEntity.Create();
- alsEntity.AcademicYearNo = academicYearNo;
- alsEntity.Semester = semester;
- alsEntity.STypeId = "4";
- alsEntity.SDate = syncdate;
- alsEntity.STableId = item;
- db.Insert(alsEntity);
- }
- db.Commit();
- return data;
- }
- catch (Exception e)
- {
- Console.WriteLine(e);
- throw;
- }
- }
- public IEnumerable<ClassInfoEntity> GetClassesNotRecord(string academicYearNo, string semester)
- {
- try
- {
- //var data = BaseRepository("CollegeMIS").FindList<ClassInfoEntity>(m => m.CheckMark == true);
-
- var db = BaseRepository("CollegeMIS");
- db.BeginTrans();
- var data = db.FindList<ClassInfoEntity>("select * from ClassInfo where CheckMark=1 and ClassId not in (select STableId from ArrangeLessonSync where AcademicYearNo='" + academicYearNo + "' and Semester='" + semester + "' )");
-
- db.Commit();
- return data;
- }
- catch (Exception e)
- {
- Console.WriteLine(e);
- throw;
- }
- }
-
- public IEnumerable<StuInfoBasicEntity> GetStus(string academicYearNo, string semester)
- {
- try
- {
- //var data = BaseRepository("CollegeMIS").FindList<StuInfoBasicEntity>(@"select a.StuId,a.StuNo,a.DeptNo,a.MajorNo,a.Grade,a.ClassNo,a.StuName,a.GenderNo,a.Birthday,b.F_Password,b.F_Secretkey from dbo.StuInfoBasic a left join adms7ultimate2.dbo.LR_Base_User b on a.StuNo=b.F_EnCode where a.CheckMark='1'");
-
- //根据学年学期判断排课同步数据表中是否有数据:若有,说明该学年学期同步过;若没有,修改基础表,false;
- var aa = this.BaseRepository("CollegeMIS").FindEntity<ArrangeLessonSyncEntity>(x => x.AcademicYearNo == academicYearNo && x.Semester == semester && x.STypeId == "8");
- if (aa == null)
- {
- this.BaseRepository("CollegeMIS").ExecuteBySql("update StuInfoBasic set SyncFlag='false' ");
- }
-
- //数据
- var db = BaseRepository("CollegeMIS");
- var dbbase = BaseRepository();
- db.BeginTrans();
- var data = db.FindList<StuInfoBasicEntity>("select a.*,b.F_Password,b.F_Secretkey from dbo.StuInfoBasic a left join " + dbbase.getDbConnection().Database + ".dbo.LR_Base_User b on a.StuNo=b.F_EnCode where a.CheckMark=1 and a.StuId not in (select STableId from ArrangeLessonSync where AcademicYearNo='" + academicYearNo + "' and Semester='" + semester + "' )");
- DateTime syncdate = DateTime.Now;
- foreach (var item in data.Select(m => m.StuId))
- {
- ArrangeLessonSyncEntity alsEntity = new ArrangeLessonSyncEntity();
- alsEntity.Create();
- alsEntity.AcademicYearNo = academicYearNo;
- alsEntity.Semester = semester;
- alsEntity.STypeId = "8";
- alsEntity.SDate = syncdate;
- alsEntity.STableId = item;
- db.Insert(alsEntity);
- }
- db.Commit();
- return data;
- }
- catch (Exception e)
- {
- Console.WriteLine(e);
- throw;
- }
- }
-
- public IEnumerable<StuInfoBasicEntity> GetStusNotRecord(string academicYearNo, string semester)
- {
- try
- {
- //var data = BaseRepository("CollegeMIS").FindList<StuInfoBasicEntity>(@"select a.StuId,a.StuNo,a.DeptNo,a.MajorNo,a.Grade,a.ClassNo,a.StuName,a.GenderNo,a.Birthday,b.F_Password,b.F_Secretkey from dbo.StuInfoBasic a left join adms7ultimate2.dbo.LR_Base_User b on a.StuNo=b.F_EnCode where a.CheckMark='1'");
-
- //数据
- var db = BaseRepository("CollegeMIS");
- var dbbase = BaseRepository();
- db.BeginTrans();
- var data = db.FindList<StuInfoBasicEntity>("select a.*,b.F_Password,b.F_Secretkey from dbo.StuInfoBasic a left join " + dbbase.getDbConnection().Database + ".dbo.LR_Base_User b on a.StuNo=b.F_EnCode where a.CheckMark=1 and a.StuId not in (select STableId from ArrangeLessonSync where AcademicYearNo='" + academicYearNo + "' and Semester='" + semester + "' )");
-
- db.Commit();
- return data;
- }
- catch (Exception e)
- {
- Console.WriteLine(e);
- throw;
- }
- }
- public IEnumerable<StuInfoBasicEntity> GetStudents()
- {
- try
- {
- var data = BaseRepository("CollegeMIS").FindList<StuInfoBasicEntity>(@"select a.StuId,a.StuNo,a.DeptNo,a.MajorNo,a.Grade,a.ClassNo,
- a.StuName,GenderNo,a.Birthday,b.F_Password,b.F_Secretkey from
- dbo.StuInfoBasic a left join adms7ultimate2.dbo.LR_Base_User b on a.StuNo=b.F_EnCode where a.CheckMark='1'");
- return data;
- }
- catch (Exception e)
- {
- Console.WriteLine(e);
- throw;
- }
- }
-
- public IEnumerable<TeachClassEntity> GetClassLessons()
- {
- try
- {
- var data = BaseRepository("CollegeMIS").FindList<TeachClassEntity>(@"select AcademicYearNo,Semester,DeptNo,MajorNo,LessonNo,TeachClassNo,EmpNo,LessonSortNo from TeachClass
- group by AcademicYearNo,Semester,DeptNo,MajorNo,LessonNo,TeachClassNo,EmpNo,LessonSortNo");
- return data;
- }
- catch (Exception e)
- {
- Console.WriteLine(e);
- throw;
- }
- }
-
-
- /// <summary>
- /// 课程表【教务】
- /// </summary>
- /// <param name="startDate">查询开始时间</param>
- /// <param name="endDate">查询截止时间</param>
- /// <param name="classNo">班级编号</param>
- /// <param name="empNo">教师编号</param>
- /// <param name="classroomNo">教室编号</param>
- /// <returns></returns>
- public IEnumerable<TimeTable> GetTimeTableInEducation(string startDate, string endDate, string classNo, string empNo, string schoolId, string classroomNo)
- {
- var semesterAndYear = Common.GetSemesterAndYear(startDate);
- var strAcademicYear = semesterAndYear.AcademicYearShort;
- var strSemester = semesterAndYear.Semester;
- string sql = @"select b.AltId,b.F_SchoolId,b.DeptNo,b.MajorNo,b.AcademicYearNo as AcademicYear,b.LessonNo,b.LessonName,b.LessonTime,b.LessonDate,b.EmpNo,b.Empname EmpName,replace (b.TeachClassNo,b.LessonName,'') TeachClassNo, c.ClassroomName,b.Semester,b.ClassroomNo as ClassRoomNo,b.LessonSortNo,d.ClassName,f.LessonTypeName,f.LessonTypeCode
- from ArrangeLessonTerm b
- left join ClassroomInfo c on c.ClassroomNo=b.classroomNo
- left join ClassInfo d on replace(b.TeachClassNo,b.LessonName,'')=d.ClassNo
- left join LessonInfo e on b.LessonNo=e.LessonNo
- left join CdLessonType f on e.LessonTypeId=f.LTId
- where b.AcademicYearNo=@strAcademicYear and b.Semester=@strSemester
- and b.LessonDate>=@startDate and b.LessonDate<=@endDate
- and b.CheckMark=1";
- try
- {
- var result = BaseRepository("CollegeMIS").FindList<TimeTable>(sql, new { startDate, endDate, strAcademicYear, strSemester });
- if (!string.IsNullOrEmpty(classNo))
- {
- if (classNo.Contains(","))
- {
- result = result.Where(x => classNo.Contains(x.ClassName));
- }
- else
- {
- result = result.Where(x => x.TeachClassNo == classNo);
- }
- }
- if (!string.IsNullOrEmpty(empNo))
- {
- result = result.Where(x => x.EmpNo == empNo);
- }
- if (!string.IsNullOrEmpty(schoolId))
- {
- result = result.Where(x => x.F_SchoolId == schoolId);
- }
- if (!string.IsNullOrEmpty(classroomNo))
- {
- result = result.Where(x => x.ClassRoomNo == classroomNo);
- }
- return result;
- }
- catch (Exception ex)
- {
- if (ex is ExceptionEx)
- {
- throw;
- }
- else
- {
- throw ExceptionEx.ThrowServiceException(ex);
- }
- }
- }
-
- /// <summary>
- /// 课程表【教务】--班级下拉框信息
- /// </summary>
- /// <returns></returns>
- public IEnumerable<SelectModel> GetClassData(string schoolId)
- {
- try
- {
- //前五年-后五年
- var preYear = DateTime.Now.AddYears(-5).Year;
- var nextYear = DateTime.Now.AddYears(5).Year;
- var yearList = new List<string>();
- for (int i = preYear; i <= nextYear; i++)
- {
- yearList.Add(string.Format("'{0}-{1}'", i.ToString().Substring(2), (i + 1).ToString().Substring(2)));
- }
- var yearListStr = string.Join(",", yearList.ToArray());
-
- var strSql = new StringBuilder();
- strSql.Append("select distinct REPLACE(a.TeachClassNo,a.LessonName,'') as value,c.ClassName as text from ");
- strSql.Append("ArrangeLessonTerm a inner join ClassInfo c on REPLACE(a.TeachClassNo,a.LessonName,'')=c.ClassNo ");
- strSql.Append("where a.AcademicYearNo in (" + yearListStr + ") ");
- if (!string.IsNullOrEmpty(schoolId))
- {
- strSql.Append(" and a.F_SchoolId = '" + schoolId + "' ");
- }
-
- var result = this.BaseRepository("CollegeMIS").FindList<SelectModel>(strSql.ToString()).OrderBy(x => x.value);
- return result;
- }
- catch (Exception ex)
- {
- if (ex is ExceptionEx)
- {
- throw;
- }
- else
- {
- throw ExceptionEx.ThrowServiceException(ex);
- }
- }
- }
-
- /// <summary>
- /// 课程表【教务】--教师下拉框信息
- /// </summary>
- /// <param name="startDate"></param>
- /// <returns></returns>
- public IEnumerable<SelectModel> GetTeacherData(string schoolId)
- {
- try
- {
- //前五年-后五年
- var preYear = DateTime.Now.AddYears(-1).Year;
- var nextYear = DateTime.Now.AddYears(1).Year;
- var yearList = new List<string>();
- for (int i = preYear; i <= nextYear; i++)
- {
- yearList.Add(string.Format("'{0}-{1}'", i.ToString().Substring(2), (i + 1).ToString().Substring(2)));
- }
- var aa = new List<SelectModel>();
- //必修课
- //var teacherData = this.BaseRepository("CollegeMIS").FindList<ArrangeLessonTermEntity>(x => yearList.Contains(x.AcademicYearNo));
- var teacherData = this.BaseRepository("CollegeMIS").FindList<ArrangeLessonTermEntity>("select EmpNo,EmpName,F_SchoolId from ArrangeLessonTerm where AcademicYearNo in(" + string.Join(",", yearList) + ") ");
-
- if (!string.IsNullOrEmpty(schoolId))
- {
- teacherData = teacherData.Where(x => x.F_SchoolId == schoolId);
- }
- var teacherDataModel = teacherData.Select(x => new { x.EmpNo, x.EmpName }).Distinct().ToList()
- .Select(x => new SelectModel()
- {
- text = x.EmpName,
- value = x.EmpNo
- });
- aa.AddRange(teacherDataModel);
- //选修课
- var teacherData2 = this.BaseRepository("CollegeMIS").FindList<ArrangeLessonTermOfElectiveEntity>(x => yearList.Contains(x.AcademicYearNo));
- if (!string.IsNullOrEmpty(schoolId))
- {
- teacherData2 = teacherData2.Where(x => x.F_SchoolId == schoolId);
- }
- var teacherDataModel2 = teacherData2.Select(x => new { x.EmpNo, x.EmpName }).Distinct().ToList()
- .Select(x => new SelectModel()
- {
- text = x.EmpName,
- value = x.EmpNo
- });
- aa.AddRange(teacherDataModel2);
-
- var aaaa = aa.Select(x => new { x.text, x.value }).Distinct().ToList();
- var aaaaa = aaaa.Select(x => new SelectModel()
- {
- text = x.text,
- value = x.value
- }).OrderBy(x => x.value);
-
- return aaaaa;
- }
- catch (Exception ex)
- {
- if (ex is ExceptionEx)
- {
- throw;
- }
- else
- {
- throw ExceptionEx.ThrowServiceException(ex);
- }
- }
- }
-
- /// <summary>
- /// 课程表【教务】--教室下拉框信息
- /// </summary>
- /// <returns></returns>
- public IEnumerable<SelectModel> GetClassroomData(string schoolId)
- {
- try
- {
- //前五年-后五年
- var preYear = DateTime.Now.AddYears(-5).Year;
- var nextYear = DateTime.Now.AddYears(5).Year;
- var yearList = new List<string>();
- for (int i = preYear; i <= nextYear; i++)
- {
- yearList.Add(string.Format("'{0}-{1}'", i.ToString().Substring(2), (i + 1).ToString().Substring(2)));
- }
- var yearListStr = string.Join(",", yearList.ToArray());
-
- var strSql = new StringBuilder();
- strSql.Append("select distinct a.ClassroomNo as value,c.ClassroomName as text from ");
- strSql.Append("ArrangeLessonTerm a inner join ClassroomInfo c on a.ClassroomNo=c.ClassroomNo ");
- strSql.Append("where a.AcademicYearNo in (" + yearListStr + ") ");
- if (!string.IsNullOrEmpty(schoolId))
- {
- strSql.Append(" and a.F_SchoolId = '" + schoolId + "' ");
- }
-
- var result = this.BaseRepository("CollegeMIS").FindList<SelectModel>(strSql.ToString()).OrderBy(x => x.value);
- return result;
- }
- catch (Exception ex)
- {
- if (ex is ExceptionEx)
- {
- throw;
- }
- else
- {
- throw ExceptionEx.ThrowServiceException(ex);
- }
- }
- }
-
- public IEnumerable<CdDeptEntity> GetDepts(string academicYearNo, string semester)
- {
- try
- {
- //var data = BaseRepository("CollegeMIS").FindList<CdDeptEntity>();
-
- //根据学年学期判断排课同步数据表中是否有数据:若有,说明该学年学期同步过;若没有,修改基础表,false;
- var aa = this.BaseRepository("CollegeMIS").FindEntity<ArrangeLessonSyncEntity>(x => x.AcademicYearNo == academicYearNo && x.Semester == semester && x.STypeId == "2");
- if (aa == null)
- {
- this.BaseRepository("CollegeMIS").ExecuteBySql("update CdDept set SyncFlag='false' ");
- }
-
- //数据
- var db = BaseRepository("CollegeMIS");
- db.BeginTrans();
- var data = db.FindList<CdDeptEntity>("select * from CdDept where DeptId not in (select STableId from ArrangeLessonSync where AcademicYearNo='" + academicYearNo + "' and Semester='" + semester + "' )");
- DateTime syncdate = DateTime.Now;
- foreach (var item in data.Select(m => m.DeptId))
- {
- ArrangeLessonSyncEntity alsEntity = new ArrangeLessonSyncEntity();
- alsEntity.Create();
- alsEntity.AcademicYearNo = academicYearNo;
- alsEntity.Semester = semester;
- alsEntity.STypeId = "2";
- alsEntity.SDate = syncdate;
- alsEntity.STableId = item;
- db.Insert(alsEntity);
- }
- db.Commit();
- return data;
- }
- catch (Exception e)
- {
- Console.WriteLine(e);
- throw;
- }
- }
- public IEnumerable<CdDeptEntity> GetDeptsNotRecord(string academicYearNo, string semester)
- {
- try
- {
- //var data = BaseRepository("CollegeMIS").FindList<CdDeptEntity>();
-
- var db = BaseRepository("CollegeMIS");
- db.BeginTrans();
- var data = db.FindList<CdDeptEntity>("select * from CdDept where DeptId not in (select STableId from ArrangeLessonSync where AcademicYearNo='" + academicYearNo + "' and Semester='" + semester + "' )");
-
- db.Commit();
- return data;
- }
- catch (Exception e)
- {
- Console.WriteLine(e);
- throw;
- }
- }
-
- public IEnumerable<CompanyEntity> GetSchools(string academicYearNo, string semester)
- {
- try
- {
- //var data = BaseRepository().FindList<CompanyEntity>();
-
- //根据学年学期判断排课同步数据表中是否有数据:若有,说明该学年学期同步过;若没有,修改基础表,false;
- var aa = this.BaseRepository("CollegeMIS").FindEntity<ArrangeLessonSyncEntity>(x => x.AcademicYearNo == academicYearNo && x.Semester == semester && x.STypeId == "1");
- if (aa == null)
- {
- this.BaseRepository().ExecuteBySql("update LR_Base_Company set SyncFlag='false' ");
- }
-
- //数据
- var dbCollegeMIS = BaseRepository("CollegeMIS");
- dbCollegeMIS.BeginTrans();
- var data = BaseRepository().FindList<CompanyEntity>("select * from LR_Base_Company where F_CompanyId not in (select STableId from " + dbCollegeMIS.getDbConnection().Database + ".dbo.ArrangeLessonSync where AcademicYearNo='" + academicYearNo + "' and Semester='" + semester + "' )");
- DateTime syncdate = DateTime.Now;
- foreach (var item in data.Select(m => m.F_CompanyId))
- {
- ArrangeLessonSyncEntity alsEntity = new ArrangeLessonSyncEntity();
- alsEntity.Create();
- alsEntity.AcademicYearNo = academicYearNo;
- alsEntity.Semester = semester;
- alsEntity.STypeId = "1";
- alsEntity.SDate = syncdate;
- alsEntity.STableId = item;
- dbCollegeMIS.Insert(alsEntity);
- }
- dbCollegeMIS.Commit();
- return data;
- }
- catch (Exception e)
- {
- Console.WriteLine(e);
- throw;
- }
- }
- public IEnumerable<CompanyEntity> GetSchoolsNotRecord(string academicYearNo, string semester)
- {
- try
- {
- //var data = BaseRepository().FindList<CompanyEntity>();
-
- var dbCollegeMIS = BaseRepository("CollegeMIS");
- dbCollegeMIS.BeginTrans();
- var data = BaseRepository().FindList<CompanyEntity>("select * from LR_Base_Company where F_CompanyId not in (select STableId from " + dbCollegeMIS.getDbConnection().Database + ".dbo.ArrangeLessonSync where AcademicYearNo='" + academicYearNo + "' and Semester='" + semester + "' )");
-
- dbCollegeMIS.Commit();
- return data;
- }
- catch (Exception e)
- {
- Console.WriteLine(e);
- throw;
- }
- }
-
- public IEnumerable<CdLessonTypeEntity> GetLessonTypes()
- {
- try
- {
- var data = BaseRepository("CollegeMIS").FindList<CdLessonTypeEntity>();
- return data;
- }
- catch (Exception e)
- {
- Console.WriteLine(e);
- throw;
- }
- }
- public IEnumerable<ArrangeLessonTermEntity> GetPageListForTeacherWorkload(Pagination paginationobj, string queryJson)
- {
- try
- {
- var queryParam = queryJson.ToJObject();
- var strSql = new StringBuilder();
- strSql.Append("select count(ALTId)as lessoncount,EmpName,EmpNo,1 as coefficient from ArrangeLessonTerm ");
- strSql.Append(" WHERE 1=1 ");
- strSql.Append($"and AcademicYearNo='{ queryParam["AcademicYearNo"]}' and Semester='{queryParam["Semester"]}' group by EmpName,EmpNo order by EmpNo ");
- return this.BaseRepository("CollegeMIS").FindList<ArrangeLessonTermEntity>(strSql.ToString());
-
-
- }
- catch (Exception ex)
- {
- if (ex is ExceptionEx)
- {
- throw;
- }
- else
- {
- throw ExceptionEx.ThrowServiceException(ex);
- }
- }
- }
- /// <summary>
- /// 教学工作量
- /// </summary>
- /// <param name="paginationobj"></param>
- /// <param name="queryJson"></param>
- /// <returns></returns>
- public IEnumerable<ArrangeLessonTermEntity> GetPageListForTeacherWorkloadByEmpNo(Pagination paginationobj, string queryJson, string empNo)
- {
- try
- {
- var queryParam = queryJson.ToJObject();
- var strSql = new StringBuilder();
- strSql.Append("select count(t.ALTId) as lessoncount,t.LessonNo,t.LessonName,1 as coefficient from ArrangeLessonTerm t ");
- strSql.Append($" WHERE 1=1 and t.EmpNo='{empNo}' ");
- strSql.Append(" group by t.LessonNo,t.LessonName ");
- return this.BaseRepository("CollegeMIS").FindList<ArrangeLessonTermEntity>(strSql.ToString());
-
- }
- catch (Exception ex)
- {
- if (ex is ExceptionEx)
- {
- throw;
- }
- else
- {
- throw ExceptionEx.ThrowServiceException(ex);
- }
- }
- }
-
- /// <summary>
- /// 教学调度【教务】--课程下拉框信息
- /// </summary>
- /// <returns></returns>
- public IEnumerable<SelectModel> GetLessonDataInTerm(string queryJson)
- {
- try
- {
- return this.BaseRepository("CollegeMIS").FindList<SelectModel>("select distinct t.LessonNo as value,t.LessonName as text from ArrangeLessonTerm t where 1=1 ");
- }
- catch (Exception ex)
- {
- if (ex is ExceptionEx)
- {
- throw;
- }
- else
- {
- throw ExceptionEx.ThrowServiceException(ex);
- }
- }
- }
-
- /// <summary>
- /// 获取本学期开课计划
- /// </summary>
- /// <param name="academicYearNo"></param>
- /// <param name="semester"></param>
- /// <returns></returns>
- public IEnumerable<TimeTable> GetAllClassLesson(string academicYearNo, string semester)
- {
- try
- {
- return this.BaseRepository("CollegeMIS").FindList<TimeTable>(@"select b.F_SchoolId,b.DeptNo,b.MajorNo,b.AcademicYearNo as AcademicYear,b.Semester,b.LessonNo,
- b.LessonName, b.LessonTime, b.EmpNo, b.Empname EmpName, replace(b.TeachClassNo, b.LessonName, '') TeachClassNo, c.ClassroomName, b.ClassroomNo as ClassRoomNo, d.ClassName
- from ArrangeLessonTerm b
- left
- join ClassroomInfo c on c.ClassroomNo = b.classroomNo
-
- left
- join ClassInfo d on replace(b.TeachClassNo, b.LessonName, '') = d.ClassNo
- where b.AcademicYearNo = '" + academicYearNo + "' and b.Semester = '" + semester + @"'
- and b.CheckMark = 1
- group by b.F_SchoolId, b.DeptNo, b.MajorNo, b.AcademicYearNo, b.Semester, b.LessonNo, b.LessonName, b.LessonTime, b.EmpNo, b.Empname, b.TeachClassNo, c.ClassroomName, b.ClassroomNo, d.ClassName
- ");
- }
- catch (Exception ex)
- {
- if (ex is ExceptionEx)
- {
- throw;
- }
- else
- {
- throw ExceptionEx.ThrowServiceException(ex);
- }
- }
- }
- /// <summary>
- /// 按条件重置基础数据同步状态
- /// </summary>
- /// <param name="entity"></param>
- /// <returns></returns>
- public bool InitAsyncDataByCondition(ArrangeLessonTermEntity entity)
- {
- bool result = true;
- var db = BaseRepository("CollegeMIS").BeginTrans();
- try
- {
- foreach (var tablename in entity.SyncBasicTable.Split(','))
- {
- if (tablename == "CdDept")
- {
- //清空同步记录表
- db.ExecuteBySql("delete from ArrangeLessonSync where AcademicYearNo='" +
- entity.AcademicYearNo + "' and Semester='" + entity.Semester +
- "' and STypeId='2'");
- }
- if (tablename == "CdMajor")
- {
- //清空同步记录表
- db.ExecuteBySql("delete from ArrangeLessonSync where AcademicYearNo='" +
- entity.AcademicYearNo + "' and Semester='" + entity.Semester +
- "' and STypeId='3'");
- }
- if (tablename == "ClassInfo")
- {
- //清空同步记录表
- db.ExecuteBySql("delete from ArrangeLessonSync where AcademicYearNo='" +
- entity.AcademicYearNo + "' and Semester='" + entity.Semester +
- "' and STypeId='4'");
- }
- if (tablename == "ClassroomInfo")
- {
- //清空同步记录表
- db.ExecuteBySql("delete from ArrangeLessonSync where AcademicYearNo='" +
- entity.AcademicYearNo + "' and Semester='" + entity.Semester +
- "' and STypeId='6'");
- }
- if (tablename == "LessonInfo")
- {
- //清空同步记录表
- db.ExecuteBySql("delete from ArrangeLessonSync where AcademicYearNo='" +
- entity.AcademicYearNo + "' and Semester='" + entity.Semester +
- "' and STypeId='5'");
- }
- if (tablename == "EmpInfo")
- {
- //清空同步记录表
- db.ExecuteBySql("delete from ArrangeLessonSync where AcademicYearNo='" +
- entity.AcademicYearNo + "' and Semester='" + entity.Semester +
- "' and STypeId='7'");
- }
- //重置基础数据表
- db.ExecuteBySql("update " + tablename + " set SyncFlag=0");
- }
- db.Commit();
- }
- catch (Exception e)
- {
- result = false;
- }
- return result;
- }
- }
-
-
- #region MyRegion
-
- public class TimeTable
- {
- public string AltId { set; get; }
- public DateTime LessonDate { get; set; }
- public string EnName { get; set; }
- public string AcademicYear { get; set; }
- public string LessonNo { get; set; }
- public string LessonName { get; set; }
- public string LessonTime { get; set; }
- public string EmpNo { get; set; }
- public string EmpName { get; set; }
- public string TeachClassNo { get; set; }
- public string ClassroomName { get; set; }
- public string Semester { get; set; }
- public string ClassRoomNo { get; set; }
- public string LessonSortNo { get; set; }
- public string ClassName { get; set; }
-
- public string OLPEId { get; set; }
- /// <summary>
- /// 排考结构Id
- /// </summary>
- public string StructureId { get; set; }
- public string LeaveType { get; set; }
- public string IsCheck { get; set; }
- /// <summary>
- /// 校区Id
- /// </summary>
- public string F_SchoolId { get; set; }
- public string DeptNo { get; set; }
- public string MajorNo { get; set; }
- /// <summary>
- /// 课程类型
- /// </summary>
- public string LessonTypeName { get; set; }
- public string LessonTypeCode { get; set; }
-
-
- }
-
- public class Common
- {
- /// <summary>
- /// 根据当前时间获取学年和学期
- /// </summary>
- /// <returns></returns>
- public static (string AcademicYearShort, string AcademicYearLong, string Semester) GetSemesterAndYear(string startDate = "")
- {
- string AcademicYearShort = "";//短格式学年度
- string AcademicYearLong = "";//长格式学年度
- string Semester = "";//学期
- DateTime dateParam = DateTime.Now;
- if (!string.IsNullOrEmpty(startDate))
- {
- dateParam = DateTime.Parse(startDate);
- }
- if (dateParam.Month >= 8)
- {
- AcademicYearShort = dateParam.Year.ToString().Substring(2, 2) + "-";
- AcademicYearShort += (dateParam.Year + 1).ToString().Substring(2, 2);
- AcademicYearLong = dateParam.Year.ToString() + "-";
- AcademicYearLong += (dateParam.Year + 1).ToString();
- Semester = "1";
- }
- else
- {
- if (dateParam.Month >= 2)//根据当前时间获取学年和学期,注意跨年份
- {
- AcademicYearShort = (dateParam.Year - 1).ToString().Substring(2, 2) + "-";
- AcademicYearShort += dateParam.Year.ToString().Substring(2, 2);
- AcademicYearLong = (dateParam.Year - 1).ToString() + "-";
- AcademicYearLong += dateParam.Year.ToString();
- Semester = "2";
- }
- else
- {
- AcademicYearShort = (dateParam.Year - 1).ToString().Substring(2, 2) + "-";
- AcademicYearShort += dateParam.Year.ToString().Substring(2, 2);
- AcademicYearLong = (dateParam.Year - 1).ToString() + "-";
- AcademicYearLong += dateParam.Year.ToString();
- Semester = "1";
- }
- }
- return (AcademicYearShort, AcademicYearLong, Semester);
- }
- /// <summary>
- /// 计算周一的时间
- /// </summary>
- /// <param name="someDate"></param>
- /// <returns></returns>
- public static DateTime CalculateFirstDateOfWeek(DateTime someDate)
- {
- int i = someDate.DayOfWeek - DayOfWeek.Monday;
- if (i == -1) i = 6;// i值 > = 0 ,因为枚举原因,Sunday排在最前,此时Sunday-Monday=-1,必须+7=6。
- TimeSpan ts = new TimeSpan(i, 0, 0, 0);
- return someDate.Subtract(ts);
- }
- /// <summary>
- /// 计算周日的时间
- /// </summary>
- /// <param name="someDate"></param>
- /// <returns></returns>
- public static DateTime CalculateLastDateOfWeek(DateTime someDate)
- {
- int i = someDate.DayOfWeek - DayOfWeek.Sunday;
- if (i != 0) i = 7 - i;// 因为枚举原因,Sunday排在最前,相减间隔要被7减。
- TimeSpan ts = new TimeSpan(i, 0, 0, 0);
- return someDate.Add(ts);
- }
- }
-
- #region 当期学期排课数据同步
- public class Paike
- {
- public string id { get; set; }
- /// <summary>
- /// 20180101
- /// </summary>
- public string clazzId { get; set; }
- /// <summary>
- /// 18学前教育01班
- /// </summary>
- public string clazzName { get; set; }
- /// <summary>
- /// XCMY0016
- /// </summary>
- public string teacherId { get; set; }
- /// <summary>
- /// 薛雅馨
- /// </summary>
- public string teacherName { get; set; }
- /// <summary>
- /// 0103
- /// </summary>
- public string curriculunId { get; set; }
- /// <summary>
- /// 大学体育(学前系)(合)
- /// </summary>
- public string curriculunName { get; set; }
-
- public string curriculuntype { get; set; }
- /// <summary>
- /// 1
- /// </summary>
- public string section { get; set; }
- /// <summary>
- /// 1
- /// </summary>
- public string week { get; set; }
- /// <summary>
- /// 08:00-09:00
- /// </summary>
- public string curriculunTime { get; set; }
- /// <summary>
- /// 1
- /// </summary>
- public string kebiaoType { get; set; }
- /// <summary>
- /// 1102
- /// </summary>
- public string classRoomId { get; set; }
- /// <summary>
- /// 1102教室
- /// </summary>
- public string classRoomName { get; set; }
- /// <summary>
- /// 1
- /// </summary>
- public string rankSchedule { get; set; }
- /// <summary>
- /// 0
- /// </summary>
- public string periodTime { get; set; }
- /// <summary>
- /// [{"date":"2019-03-04 08:00-09:00","endTime":"2019-03-04 09:00:00","startTime":"2019-03-04 08:00:00"},{"date":"2019-03-18 08:00-09:00","endTime":"2019-03-18 09:00:00","startTime":"2019-03-18 08:00:00"},{"date":"2019-04-01 08:00-09:00","endTime":"2019-04-01 09:00:00","startTime":"2019-04-01 08:00:00"},{"date":"2019-04-15 08:00-09:00","endTime":"2019-04-15 09:00:00","startTime":"2019-04-15 08:00:00"},{"date":"2019-04-29 08:00-09:00","endTime":"2019-04-29 09:00:00","startTime":"2019-04-29 08:00:00"},{"date":"2019-05-13 08:00-09:00","endTime":"2019-05-13 09:00:00","startTime":"2019-05-13 08:00:00"},{"date":"2019-05-27 08:00-09:00","endTime":"2019-05-27 09:00:00","startTime":"2019-05-27 08:00:00"},{"date":"2019-06-10 08:00-09:00","endTime":"2019-06-10 09:00:00","startTime":"2019-06-10 08:00:00"},{"date":"2019-06-24 08:00-09:00","endTime":"2019-06-24 09:00:00","startTime":"2019-06-24 08:00:00"},{"date":"2019-07-08 08:00-09:00","endTime":"2019-07-08 09:00:00","startTime":"2019-07-08 08:00:00"}]
- /// </summary>
- public string timeText { get; set; }
- /// <summary>
- /// 2
- /// </summary>
- public string semester { get; set; }
- /// <summary>
- /// Flag
- /// </summary>
- public bool flag { get; set; }
- public string year { get; set; }
- public string number { get; set; }
- public string curriculunNumber { get; set; }
- public string teacherNumber { get; set; }
- public string classRoomNumber { get; set; }
- }
-
- public class StuScore
- {
- public string id { get; set; }
- public string examname { get; set; }
- public string stuno { get; set; }
- public string stuname { get; set; }
- public string classno { get; set; }
- public string classname { get; set; }
- public string teachclassno { get; set; }
- public string termendscore { get; set; }
- public string examtime { get; set; }
- public string lessonno { get; set; }
- public string lessonname { get; set; }
- public string scoolYear { get; set; }
- public string term { get; set; }
- }
-
- public class Major
- {
- /// <summary>
- /// 01
- /// </summary>
- public string id { get; set; }
- /// <summary>
- /// 学前教育
- /// </summary>
- public string majorName { get; set; }
- /// <summary>
- /// 01
- /// </summary>
- public string majorNumber { get; set; }
- /// <summary>
- ///
- /// </summary>
- public string bz { get; set; }
- }
-
- public class semester
- {
- public DateTime? starttime { get; set; }
- public DateTime? endtime { get; set; }
- public string zhouci { get; set; }
- public string shangxia { get; set; }
- }
-
- public class List
- {
- public StuScore stuscore { get; set; }
-
- /// <summary>
- /// Paike
- /// </summary>
- public Paike paike { get; set; }
- /// <summary>
- /// 2019-03-04 08:00-09:00
- /// </summary>
- public string times { get; set; }
- /// <summary>
- /// Major
- /// </summary>
- public Major major { get; set; }
- /// <summary>
- /// 18-19
- /// </summary>
- public string schoolYear { get; set; }
- /// <summary>
- /// 学期类
- /// </summary>
- public semester semester { get; set; }
- /// <summary>
- /// 第几级
- /// </summary>
- public string grade { get; set; }
- /// <summary>
- /// 专业编号
- /// </summary>
- public string majorNumber { get; set; }
- /// <summary>
- /// 课程名称
- /// </summary>
- public string curriculumName { get; set; }
- /// <summary>
- /// 课程编号
- /// </summary>
- public string curriculumNumber { get; set; }
- /// <summary>
- /// 选修必修
- /// </summary>
- public string isElective { get; set; }
- /// <summary>
- /// 周学时
- /// </summary>
- public string classhour { get; set; }
- /// <summary>
- /// 教师编号
- /// </summary>
- public string teacherId { get; set; }
- /// <summary>
- /// 教师姓名
- /// </summary>
- public string teacherName { get; set; }
- /// <summary>
- /// 学校主键
- /// </summary>
- public string schoolId { get; set; }
-
- }
-
- public class Entity
- {
- /// <summary>
- /// true
- /// </summary>
- public string opflag { get; set; }
- /// <summary>
- /// 1000
- /// </summary>
- public string opCode { get; set; }
- /// <summary>
- /// OK!
- /// </summary>
- public string message { get; set; }
- /// <summary>
- /// List
- /// </summary>
- public List<List> list { get; set; }
-
- public List<StuScore> stuScoreList { get; set; }
- }
-
- public class Root
- {
- /// <summary>
- /// 操作成功
- /// </summary>
- public string message { get; set; }
- /// <summary>
- /// Success
- /// </summary>
- public bool success { get; set; }
- /// <summary>
- /// Entity
- /// </summary>
- public Entity entity { get; set; }
- }
-
-
- #endregion
-
- #region 按条件同步排课数据
-
- public class RootByCondition
- {
- /// <summary>
- /// 操作成功
- /// </summary>
- public string message { get; set; }
- /// <summary>
- /// Success
- /// </summary>
- public bool success { get; set; }
- /// <summary>
- /// Entity
- /// </summary>
- public EntityByCondition entity { get; set; }
- }
- public class EntityByCondition
- {
- /// <summary>
- /// true
- /// </summary>
- public string opflag { get; set; }
- /// <summary>
- /// 1000
- /// </summary>
- public string opCode { get; set; }
- /// <summary>
- /// OK!
- /// </summary>
- public string message { get; set; }
- /// <summary>
- /// List
- /// </summary>
- public List<ListByCondition> list { get; set; }
- }
- public class ListByCondition
- {
- public string year { get; set; }
- public string number { get; set; }
- public string curriculunNumber { get; set; }
- public string curriculunName { get; set; }
-
- /// <summary>
- /// Paike
- /// </summary>
- public PaikeByCondition paike { get; set; }
- /// <summary>
- /// "2019-03-12,2019-03-26,2019-04-09,2019-04-23,2019-05-07,2019-05-21,2019-06-04,2019-06-18,2019-07-02,2019-07-16,2019-07-30,"
- /// </summary>
- public string timeText { get; set; }
- /// <summary>
- /// Major
- /// </summary>
- public MajorByCondition major { get; set; }
-
- public string teacherNumber { get; set; }
- public string teacherName { get; set; }
- public string curriculunSid { get; set; }
- public string classRoomSid { get; set; }
- public string schoolSid { get; set; }
- public object week { get; set; }
- public string section { get; set; }
- public string clazzSid { get; set; }
- }
- public class PaikeByCondition
- {
- public string id { get; set; }
- /// <summary>
- /// 班级Id
- /// </summary>
- public string clazzId { get; set; }
- /// <summary>
- /// 班级名称
- /// </summary>
- public string clazzName { get; set; }
- /// <summary>
- /// 班级编号
- /// </summary>
- public string clazzSid { get; set; }
- /// <summary>
- /// 年级
- /// </summary>
- public string grade { get; set; }
- /// <summary>
- /// 教师Id
- /// </summary>
- public string teacherId { get; set; }
- /// <summary>
- /// 教师名称
- /// </summary>
- public string teacherName { get; set; }
- /// <summary>
- /// 教师编号
- /// </summary>
- public string teacherSid { get; set; }
- /// <summary>
- /// 课程Id
- /// </summary>
- public string curriculunId { get; set; }
- /// <summary>
- /// 课程名称
- /// </summary>
- public string curriculunName { get; set; }
- /// <summary>
- /// 课程编号
- /// </summary>
- public string curriculunSid { get; set; }
- /// <summary>
- /// 第几节次
- /// </summary>
- public string section { get; set; }
- /// <summary>
- /// 星期几
- /// </summary>
- public string week { get; set; }
- /// <summary>
- /// 课表类型
- /// </summary>
- public string kebiaoType { get; set; }
- /// 教室Id
- /// </summary>
- public string classRoomId { get; set; }
- /// <summary>
- /// 教室名称
- /// </summary>
- public string classRoomName { get; set; }
- /// <summary>
- /// 教室编号
- /// </summary>
- public string classRoomSid { get; set; }
- /// <summary>
- /// 排课安排
- /// </summary>
- public string rankSchedule { get; set; }
- /// <summary>
- /// "2019-03-12,2019-03-26,2019-04-09,2019-04-23,2019-05-07,2019-05-21,2019-06-04,2019-06-18,2019-07-02,2019-07-16,2019-07-30,"
- /// </summary>
- public string timeText { get; set; }
- /// <summary>
- /// 学年
- /// </summary>
- public string semester { get; set; }
- /// <summary>
- /// Flag
- /// </summary>
- public bool flag { get; set; }
- }
- public class MajorByCondition
- {
- /// <summary>
- /// 专业Id
- /// </summary>
- public string id { get; set; }
- /// <summary>
- /// 专业名称
- /// </summary>
- public string name { get; set; }
- /// <summary>
- /// 专业编号
- /// </summary>
- public string number { get; set; }
- /// <summary>
- /// 系
- /// </summary>
- public DepartmentByCondition department { get; set; }
- /// <summary>
- /// 学年学期
- /// </summary>
- public SemesterByCondition semester { get; set; }
- /// <summary>
- /// 学校
- /// </summary>
- public SchoolByCondition school { get; set; }
- public string sid { get; set; }
- public string qsid { get; set; }
- }
- public class DepartmentByCondition
- {
- /// <summary>
- /// 系Id
- /// </summary>
- public string id { get; set; }
- /// <summary>
- /// 系名称
- /// </summary>
- public string name { get; set; }
- /// <summary>
- /// 系编号【开课计划接口】
- /// </summary>
- public string number { get; set; }
- }
- public class SemesterByCondition
- {
- public string id { get; set; }
- /// <summary>
- /// 学年
- /// </summary>
- public string year { get; set; }
- /// <summary>
- /// 学期
- /// </summary>
- public string number { get; set; }
-
- /// <summary>
- /// 开始时间【开课计划接口】
- /// </summary>
- public DateTime starTime { get; set; }
- /// <summary>
- /// 结束时间【开课计划接口】
- /// </summary>
- public DateTime endTime { get; set; }
- /// <summary>
- /// 开始周次【开课计划接口】
- /// </summary>
- public int yesNo { get; set; }
- /// <summary>
- /// 结束周次【开课计划接口】
- /// </summary>
- public int week { get; set; }
- }
- public class SchoolByCondition
- {
- /// <summary>
- /// 学校Id
- /// </summary>
- public string sid { get; set; }
- /// <summary>
- /// 学校名称
- /// </summary>
- public string name { get; set; }
- }
-
- public class RootOfPlanByCondition
- {
- /// <summary>
- /// 操作成功
- /// </summary>
- public string message { get; set; }
- /// <summary>
- /// Success
- /// </summary>
- public bool success { get; set; }
- /// <summary>
- /// Entity
- /// </summary>
- public EntityOfPlanByCondition entity { get; set; }
- }
- public class EntityOfPlanByCondition
- {
- /// <summary>
- /// true
- /// </summary>
- public string opflag { get; set; }
- /// <summary>
- /// 1000
- /// </summary>
- public string opCode { get; set; }
- /// <summary>
- /// OK!
- /// </summary>
- public string message { get; set; }
- /// <summary>
- /// List
- /// </summary>
- public List<ListOfPlanByCondition> list { get; set; }
- }
- public class ListOfPlanByCondition
- {
- public SchoolByCondition school { get; set; }
- public SemesterByCondition semester { get; set; }
- public DepartmentByCondition department { get; set; }
- public MajorByCondition major { get; set; }
- /// <summary>
- /// 开课计划
- /// </summary>
- public CourseOfPlanByCondition course { get; set; }
- public int? classhour { get; set; }
- public int? credit { get; set; }
- public string grade { get; set; }
-
- }
- public class CourseOfPlanByCondition
- {
- /// <summary>
- /// 开课计划Id
- /// </summary>
- public string id { get; set; }
- /// <summary>
- /// 课程编号
- /// </summary>
- public string number { get; set; }
- /// <summary>
- /// 课程信息
- /// </summary>
- public CourseInfoOfPlanByCondition course { get; set; }
- /// <summary>
- /// 课程名称
- /// </summary>
- public string coursename { get; set; }
- }
- public class CourseInfoOfPlanByCondition
- {
- /// <summary>
- /// 课程Id
- /// </summary>
- public string id { get; set; }
- /// <summary>
- /// 课程名称
- /// </summary>
- public string name { get; set; }
-
- public string number { get; set; }
-
- }
-
-
- #endregion
-
- public class paikeList
- {
- public string week { get; set; }
- public string section { get; set; }
- public string timetext { get; set; }
- public string classname { get; set; }
- public string classnumber { get; set; }
- public string roomname { get; set; }
- public string ClassroomNo { get; set; }
- public string teachername { get; set; }
- public string teacherNumber { get; set; }
- public string curriculunName { get; set; }
- public string curriculunNumber { get; set; }
- public string year { get; set; }
- public string semester { get; set; }
- public string schoolno { get; set; }
- /// <summary>
- /// 副讲老师编号
- /// </summary>
- public string teachersNumber { get; set; }
- /// <summary>
- /// 副讲老师名称
- /// </summary>
- public string teachersName { get; set; }
- }
- #endregion
- }
-
-
|