You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

747 lines
23 KiB

  1. using System;
  2. using Learun.Util;
  3. using System.Data;
  4. using Learun.Application.TwoDevelopment.EducationalAdministration;
  5. using System.Web.Mvc;
  6. using System.Collections.Generic;
  7. using System.IO;
  8. using System.Linq;
  9. using Learun.Application.Base.SystemModule;
  10. using static Learun.Application.TwoDevelopment.EducationalAdministration.StuInfoBasicEntity;
  11. namespace Learun.Application.Web.Areas.EducationalAdministration.Controllers
  12. {
  13. /// <summary>
  14. /// 版 本 Learun-ADMS-Ultimate V7.0.0 数字化智慧校园
  15. /// Copyright (c) 2013-2018 北京泉江科技有限公司
  16. /// 创 建:超级管理员
  17. /// 日 期:2019-02-21 16:53
  18. /// 描 述:学生学籍
  19. /// </summary>
  20. public class StuInfoBasicController : MvcControllerBase
  21. {
  22. private StuInfoBasicIBLL stuInfoBasicIBLL = new StuInfoBasicBLL();
  23. private ArrangeLessonSyncIBLL arrangeLessonSyncIBLL = new ArrangeLessonSyncBLL();
  24. private AnnexesFileIBLL annexesFileIbll = new AnnexesFileBLL();
  25. private StuEncourgementIBLL stuEncourgementIBLL = new StuEncourgementBLL();
  26. private StuPunishmentIBLL stuPunishmentIBLL = new StuPunishmentBLL();
  27. private StuScoreIBLL stuScoreIBLL = new StuScoreBLL();
  28. #region 视图功能
  29. /// <summary>
  30. /// 主页面
  31. /// <summary>
  32. /// <returns></returns>
  33. [HttpGet]
  34. public ActionResult Index()
  35. {
  36. return View();
  37. }
  38. /// <summary>
  39. /// 主页面【大厂】
  40. /// <summary>
  41. /// <returns></returns>
  42. [HttpGet]
  43. public ActionResult IndexOfDC()
  44. {
  45. return View();
  46. }
  47. /// <summary>
  48. /// 表单页
  49. /// <summary>
  50. /// <returns></returns>
  51. [HttpGet]
  52. public ActionResult Form()
  53. {
  54. return View();
  55. }
  56. /// <summary>
  57. /// 表单页【大厂】
  58. /// <summary>
  59. /// <returns></returns>
  60. [HttpGet]
  61. public ActionResult FormOfDC()
  62. {
  63. return View();
  64. }
  65. [HttpGet]
  66. public ActionResult FormView()
  67. {
  68. return View();
  69. }
  70. [HttpGet]
  71. public ActionResult MyClass()
  72. {
  73. return View();
  74. }
  75. [HttpGet]
  76. public ActionResult CreateGraduateNo()
  77. {
  78. return View();
  79. }
  80. /// <summary>
  81. /// 毕业归档
  82. /// </summary>
  83. /// <returns></returns>
  84. [HttpGet]
  85. public ActionResult Graduate()
  86. {
  87. return View();
  88. }
  89. [HttpGet]
  90. public ActionResult CreateGraduateNoForm()
  91. {
  92. return View();
  93. }
  94. /// <summary>
  95. /// 异动转入
  96. /// </summary>
  97. /// <returns></returns>
  98. public ActionResult FormTran()
  99. {
  100. return View();
  101. }
  102. /// <summary>
  103. /// 学生列表【班级信息管理】
  104. /// <summary>
  105. /// <returns></returns>
  106. [HttpGet]
  107. public ActionResult IndexInClass()
  108. {
  109. return View();
  110. }
  111. /// <summary>
  112. /// 打印
  113. /// <summary>
  114. /// <returns></returns>
  115. [HttpGet]
  116. public ActionResult Print(string keyValue)
  117. {
  118. var stuInfoBasicEntity = stuInfoBasicIBLL.GetStuInfoBasicEntity(keyValue);
  119. if (stuInfoBasicEntity == null)
  120. {
  121. return View(new StuInfoBasicEntity());
  122. }
  123. //头像
  124. stuInfoBasicEntity.Photo = annexesFileIbll.GetEntityByFolderId(stuInfoBasicEntity.Photo)?.F_FilePath;
  125. if (!string.IsNullOrEmpty(stuInfoBasicEntity.Photo))
  126. {
  127. stuInfoBasicEntity.Photo = stuInfoBasicEntity.Photo.Substring(stuInfoBasicEntity.Photo.IndexOf("Resource") - 1);
  128. }
  129. //奖罚情况
  130. stuInfoBasicEntity.StuEncourgementList = stuEncourgementIBLL.GetEncourgementListByStuNo(stuInfoBasicEntity.StuNo).OrderBy(x => x.AcademicYearNo).ThenBy(x => x.Semester).ToList();
  131. stuInfoBasicEntity.StuPunishmentList = stuPunishmentIBLL.GetPunishmentListByStuNo(stuInfoBasicEntity.StuNo).OrderBy(x => x.AcademicYearNo).ThenBy(x => x.Semester).ToList();
  132. //学习成绩
  133. stuInfoBasicEntity.StuScoreClassOneList = stuScoreIBLL.GetAllScoreListByStuNo(stuInfoBasicEntity.StuNo)
  134. .Where(x => x.AcademicYearNo != null && x.Semester != null && x.Score != null)
  135. .GroupBy(x => new { x.AcademicYearNo, x.Semester })
  136. .Select(x => new StuScoreClassOne()
  137. {
  138. AcademicYearNo = x.Key.AcademicYearNo,
  139. Semester = x.Key.Semester,
  140. StuScoreList = x.Select(y => new StuScoreEntity()
  141. {
  142. LessonNo = y.LessonNo,
  143. LessonName = y.LessonName,
  144. Score = y.Score
  145. }).OrderBy(xx => xx.LessonNo).ToList()
  146. }).OrderBy(xx => xx.AcademicYearNo).ThenBy(xx => xx.Semester).ToList();
  147. return View(stuInfoBasicEntity);
  148. }
  149. /// <summary>
  150. /// 打印
  151. /// <summary>
  152. /// <returns></returns>
  153. [HttpGet]
  154. public ActionResult Printxjk(string keyValue)
  155. {
  156. var stuInfoBasicEntity = stuInfoBasicIBLL.GetStuInfoBasicEntity(keyValue);
  157. ViewBag.PrintDate = DateTime.Now.ToDate();
  158. if (stuInfoBasicEntity == null)
  159. {
  160. return View(new StuInfoBasicEntity());
  161. }
  162. //头像
  163. stuInfoBasicEntity.Photo = annexesFileIbll.GetEntityByFolderId(stuInfoBasicEntity.Photo)?.F_FilePath;
  164. if (!string.IsNullOrEmpty(stuInfoBasicEntity.Photo))
  165. {
  166. stuInfoBasicEntity.Photo = stuInfoBasicEntity.Photo.Substring(stuInfoBasicEntity.Photo.IndexOf("Resource") - 1);
  167. }
  168. //学习成绩
  169. stuInfoBasicEntity.StuScoreClassOneList = stuScoreIBLL.GetAllScoreListByStuNo(stuInfoBasicEntity.StuNo)
  170. .Where(x => x.AcademicYearNo != null && x.Semester != null && x.Score != null)
  171. .GroupBy(x => new { x.AcademicYearNo, x.Semester })
  172. .Select(x => new StuScoreClassOne()
  173. {
  174. AcademicYearNo = x.Key.AcademicYearNo,
  175. Semester = x.Key.Semester,
  176. StuScoreList = x.Select(y => new StuScoreEntity()
  177. {
  178. LessonNo = y.LessonNo,
  179. LessonName = y.LessonName,
  180. Score = y.Score
  181. }).OrderBy(xx => xx.LessonNo).ToList()
  182. }).OrderBy(xx => xx.AcademicYearNo).ThenBy(xx => xx.Semester).ToList();
  183. return View(stuInfoBasicEntity);
  184. }
  185. /// <summary>
  186. /// 离校手续-图书资料归还
  187. /// </summary>
  188. /// <returns></returns>
  189. [HttpGet]
  190. public ActionResult GraduateReturnBooks()
  191. {
  192. return View();
  193. }
  194. /// <summary>
  195. /// 离校手续-就业协议备案
  196. /// </summary>
  197. /// <returns></returns>
  198. [HttpGet]
  199. public ActionResult GraduateEmployAgree()
  200. {
  201. return View();
  202. }
  203. /// <summary>
  204. /// 离校手续-学杂费结算
  205. /// </summary>
  206. /// <returns></returns>
  207. [HttpGet]
  208. public ActionResult GraduateFeeSettle()
  209. {
  210. return View();
  211. }
  212. /// <summary>
  213. /// 离校手续-办理退住手续
  214. /// </summary>
  215. /// <returns></returns>
  216. [HttpGet]
  217. public ActionResult GraduateCheckOut()
  218. {
  219. return View();
  220. }
  221. /// <summary>
  222. /// 离校手续-校园卡注销
  223. /// </summary>
  224. /// <returns></returns>
  225. [HttpGet]
  226. public ActionResult GraduateCardDeregistrate()
  227. {
  228. return View();
  229. }
  230. /// <summary>
  231. /// 离校手续-毕业证领取
  232. /// </summary>
  233. /// <returns></returns>
  234. [HttpGet]
  235. public ActionResult GraduateDiplomaReceive()
  236. {
  237. return View();
  238. }
  239. /// <summary>
  240. /// 离校手续-档案与组织关系转出
  241. /// </summary>
  242. /// <returns></returns>
  243. [HttpGet]
  244. public ActionResult GraduateFileTransfer()
  245. {
  246. return View();
  247. }
  248. /// <summary>
  249. /// 毕业证领取表单
  250. /// </summary>
  251. /// <returns></returns>
  252. public ActionResult GraduateDiplomaReceiveForm()
  253. {
  254. return View();
  255. }
  256. #endregion
  257. #region 获取数据
  258. /// <summary>
  259. /// 生成帐号
  260. /// </summary>
  261. /// <returns></returns>
  262. [HttpPost]
  263. [AjaxOnly]
  264. public ActionResult Generate()
  265. {
  266. stuInfoBasicIBLL.GenerateAccout();
  267. return Success("生成成功!");
  268. }
  269. [HttpPost]
  270. [AjaxOnly]
  271. public ActionResult UpdateAccount()
  272. {
  273. stuInfoBasicIBLL.UpdateAccount();
  274. return Success("更新成功!");
  275. }
  276. /// <summary>
  277. /// 获取页面显示列表数据
  278. /// <summary>
  279. /// <param name="queryJson">查询参数</param>
  280. /// <returns></returns>
  281. [HttpGet]
  282. [AjaxOnly]
  283. public ActionResult GetPageList(string pagination, string queryJson)
  284. {
  285. Pagination paginationobj = pagination.ToObject<Pagination>();
  286. var data = stuInfoBasicIBLL.GetPageList(paginationobj, queryJson);
  287. var jsonData = new
  288. {
  289. rows = data,
  290. total = paginationobj.total,
  291. page = paginationobj.page,
  292. records = paginationobj.records
  293. };
  294. return Success(jsonData);
  295. }
  296. /// <summary>
  297. /// 获取表单数据
  298. /// <summary>
  299. /// <returns></returns>
  300. [HttpGet]
  301. [AjaxOnly]
  302. public ActionResult GetFormData(string keyValue)
  303. {
  304. var StuInfoBasicData = stuInfoBasicIBLL.GetStuInfoBasicEntity(keyValue);
  305. var jsonData = new
  306. {
  307. StuInfoBasic = StuInfoBasicData,
  308. };
  309. return Success(jsonData);
  310. }
  311. /// <summary>
  312. /// 获取毕业学生的专业
  313. /// </summary>
  314. /// <returns></returns>
  315. [HttpGet]
  316. [AjaxOnly]
  317. public ActionResult GetMajorInfoWithGraduation()
  318. {
  319. var data = stuInfoBasicIBLL.GetMajorInfoWithGraduation();
  320. return Success(data);
  321. }
  322. /// <summary>
  323. /// 获取页面显示列表数据
  324. /// <summary>
  325. /// <returns></returns>
  326. [HttpGet]
  327. [AjaxOnly]
  328. public ActionResult GetAllList()
  329. {
  330. var data = stuInfoBasicIBLL.GetAllList();
  331. return Success(data);
  332. }
  333. /// <summary>
  334. /// 根据帐号获取学生的信息
  335. /// </summary>
  336. /// <param name="Account"></param>
  337. /// <returns></returns>
  338. [HttpGet]
  339. [AjaxOnly]
  340. public ActionResult GetStuInfo(string Account)
  341. {
  342. var stuInfo = stuInfoBasicIBLL.GetStuInfoBasicEntityByStuNo(Account);
  343. if (stuInfo != null)
  344. {
  345. return JsonResult(stuInfo);
  346. }
  347. else
  348. {
  349. return Fail("学生不存在");
  350. }
  351. }
  352. /// <summary>
  353. /// 根据帐号获取学生的信息
  354. /// </summary>
  355. /// <param name="ClassNo">班级码</param>
  356. /// <returns></returns>
  357. [HttpGet]
  358. [AjaxOnly]
  359. public ActionResult GetStuInfoByClassNo(string ClassNo)
  360. {
  361. var stuInfo = stuInfoBasicIBLL.GetStuInfoByClassNo(ClassNo);
  362. return Success(stuInfo);
  363. }
  364. /// <summary>
  365. /// 根据帐号获取学生的信息
  366. /// </summary>
  367. /// <param name="Account"></param>
  368. /// <returns></returns>
  369. [HttpGet]
  370. [AjaxOnly]
  371. public ActionResult GetStuInfoBasicEntityByStuName(string name)
  372. {
  373. var stuInfo = stuInfoBasicIBLL.GetStuInfoBasicEntityByStuName(name);
  374. return Success(stuInfo);
  375. }
  376. /// <summary>
  377. /// 获取左侧树形数据
  378. /// <summary>
  379. /// <returns></returns>
  380. [HttpGet]
  381. [AjaxOnly]
  382. public ActionResult GetTree()
  383. {
  384. var data = stuInfoBasicIBLL.GetTree();
  385. return Success(data);
  386. }
  387. #endregion
  388. #region 提交数据
  389. /// <summary>
  390. /// 领取毕业证
  391. /// </summary>
  392. /// <param name="keyValue">学生id</param>
  393. /// <returns></returns>
  394. [HttpPost]
  395. [AjaxOnly]
  396. public ActionResult GetCard(string keyValue,string status, string strEntity)
  397. {
  398. if (status == "1")//领取
  399. {
  400. StuInfoBasicEntity entity = strEntity.ToObject<StuInfoBasicEntity>();
  401. stuInfoBasicIBLL.GetCard(keyValue, status, entity);
  402. }
  403. else//取消领取
  404. {
  405. stuInfoBasicIBLL.GetCard(keyValue,status,new StuInfoBasicEntity());
  406. }
  407. return Success("操作成功");
  408. }
  409. /// <summary>
  410. /// 图书资料归还
  411. /// </summary>
  412. /// <param name="keyValue">学生id</param>
  413. /// <returns></returns>
  414. [HttpPost]
  415. [AjaxOnly]
  416. public ActionResult IsReturnBooks(string keyValue, string status)
  417. {
  418. stuInfoBasicIBLL.IsReturnBooks(keyValue, status);
  419. return Success("操作成功");
  420. }
  421. /// <summary>
  422. /// 就业协议备案
  423. /// </summary>
  424. /// <param name="keyValue">学生id</param>
  425. /// <returns></returns>
  426. [HttpPost]
  427. [AjaxOnly]
  428. public ActionResult IsEmployAgree(string keyValue, string status)
  429. {
  430. stuInfoBasicIBLL.IsEmployAgree(keyValue, status);
  431. return Success("操作成功");
  432. }
  433. /// <summary>
  434. /// 学杂费结算
  435. /// </summary>
  436. /// <param name="keyValue">学生id</param>
  437. /// <returns></returns>
  438. [HttpPost]
  439. [AjaxOnly]
  440. public ActionResult IsFeeSettle(string keyValue, string status)
  441. {
  442. stuInfoBasicIBLL.IsFeeSettle(keyValue, status);
  443. return Success("操作成功");
  444. }
  445. /// <summary>
  446. /// 办理退住手续
  447. /// </summary>
  448. /// <param name="keyValue">学生id</param>
  449. /// <returns></returns>
  450. [HttpPost]
  451. [AjaxOnly]
  452. public ActionResult IsCheckOut(string keyValue, string status)
  453. {
  454. stuInfoBasicIBLL.IsCheckOut(keyValue, status);
  455. return Success("操作成功");
  456. }
  457. /// <summary>
  458. /// 校园卡注销
  459. /// </summary>
  460. /// <param name="keyValue">学生id</param>
  461. /// <returns></returns>
  462. [HttpPost]
  463. [AjaxOnly]
  464. public ActionResult IsCardDeregistrate(string keyValue, string status)
  465. {
  466. stuInfoBasicIBLL.IsCardDeregistrate(keyValue, status);
  467. return Success("操作成功");
  468. }
  469. /// <summary>
  470. /// 档案与组织关系转出
  471. /// </summary>
  472. /// <param name="keyValue">学生id</param>
  473. /// <returns></returns>
  474. [HttpPost]
  475. [AjaxOnly]
  476. public ActionResult IsFileTransfer(string keyValue, string status,string fort)
  477. {
  478. stuInfoBasicIBLL.IsFileTransfer(keyValue, status, fort);
  479. return Success("操作成功");
  480. }
  481. /// <summary>
  482. /// 学生毕业归档
  483. /// </summary>
  484. /// <param name="keyValue">学生id</param>
  485. /// <returns></returns>
  486. [HttpPost]
  487. [AjaxOnly]
  488. public ActionResult StuStore()
  489. {
  490. stuInfoBasicIBLL.StuStore();
  491. return Success("操作成功");
  492. }
  493. /// <summary>
  494. /// 删除实体数据
  495. /// <param name="keyValue">主键</param>
  496. /// <summary>
  497. /// <returns></returns>
  498. [HttpPost]
  499. [AjaxOnly]
  500. public ActionResult DeleteForm(string keyValue)
  501. {
  502. stuInfoBasicIBLL.DeleteEntity(keyValue);
  503. return Success("删除成功!");
  504. }
  505. /// <summary>
  506. /// 保存实体数据(新增、修改)
  507. /// <param name="keyValue">主键</param>
  508. /// <summary>
  509. /// <returns></returns>
  510. [HttpPost]
  511. [ValidateAntiForgeryToken]
  512. [AjaxOnly]
  513. public ActionResult SaveForm(string keyValue, string strEntity)
  514. {
  515. StuInfoBasicEntity entity = strEntity.ToObject<StuInfoBasicEntity>();
  516. entity.SyncFlag = false;
  517. var model = stuInfoBasicIBLL.GetStuInfoBasicEntityByStuNo(entity.StuNo);
  518. if (string.IsNullOrEmpty(keyValue))
  519. {
  520. if (model != null)
  521. {
  522. return Fail("学生编号已存在!");
  523. }
  524. }
  525. else
  526. {
  527. if (model != null && model.StuId != keyValue)
  528. {
  529. return Fail("学生编号已存在!");
  530. }
  531. entity.SyncFlag = true;
  532. //判断排课同步数据是否存在:若存在,清除同步数据;
  533. var arrangeLessonSyncList = arrangeLessonSyncIBLL.GetArrangeLessonSyncListByTableId(keyValue);
  534. if (arrangeLessonSyncList.Any())
  535. {
  536. arrangeLessonSyncIBLL.DeleteEntityByTableId(keyValue);
  537. }
  538. else
  539. {
  540. entity.SyncFlag = false;
  541. }
  542. }
  543. stuInfoBasicIBLL.SaveEntity(keyValue, entity);
  544. return Success("保存成功!");
  545. }
  546. [HttpPost]
  547. [AjaxOnly]
  548. public ActionResult CreateGraduateNoByMajor(string CityCode, string SchoolCode, string MajorList)
  549. {
  550. stuInfoBasicIBLL.CreateGraduateNoByMajor(CityCode, SchoolCode, MajorList);
  551. return Success("生成成功");
  552. }
  553. /// <summary>
  554. /// 按学号生成毕业证号
  555. /// </summary>
  556. /// <returns></returns>
  557. [HttpPost]
  558. [AjaxOnly]
  559. public ActionResult DoCreateGraduateNo()
  560. {
  561. stuInfoBasicIBLL.DoCreateGraduateNo();
  562. return Success("生成成功");
  563. }
  564. /// <summary>
  565. /// 审核
  566. /// <param name="keyValue">主键</param>
  567. /// <summary>
  568. /// <returns></returns>
  569. [HttpPost]
  570. [AjaxOnly]
  571. public ActionResult Check(string keyValue)
  572. {
  573. var keyValueArr = keyValue.Split(',');
  574. foreach (var item in keyValueArr)
  575. {
  576. var StuInfoBasicData = stuInfoBasicIBLL.GetStuInfoBasicEntity(item);
  577. if (StuInfoBasicData != null)
  578. {
  579. StuInfoBasicData.CheckMark = "1";
  580. stuInfoBasicIBLL.SaveEntity(item, StuInfoBasicData);
  581. }
  582. }
  583. return Success("审核成功!");
  584. }
  585. /// <summary>
  586. /// 取消审核
  587. /// <param name="keyValue">主键</param>
  588. /// <summary>
  589. /// <returns></returns>
  590. [HttpPost]
  591. [AjaxOnly]
  592. public ActionResult UnCheck(string keyValue)
  593. {
  594. var keyValueArr = keyValue.Split(',');
  595. foreach (var item in keyValueArr)
  596. {
  597. var StuInfoBasicData = stuInfoBasicIBLL.GetStuInfoBasicEntity(item);
  598. if (StuInfoBasicData != null)
  599. {
  600. StuInfoBasicData.CheckMark = "0";
  601. stuInfoBasicIBLL.SaveEntity(item, StuInfoBasicData);
  602. }
  603. }
  604. return Success("取消审核成功!");
  605. }
  606. /// <summary>
  607. /// 全部审核
  608. /// <param name="keyValue">主键</param>
  609. /// <summary>
  610. /// <returns></returns>
  611. [HttpPost]
  612. [AjaxOnly]
  613. public ActionResult CheckAll()
  614. {
  615. stuInfoBasicIBLL.CheckAll();
  616. return Success("全部审核成功!");
  617. }
  618. /// <summary>
  619. /// 准许学生毕业操作
  620. /// <param name="keyValue">学号</param>
  621. /// <summary>
  622. /// <returns></returns>
  623. [HttpGet]
  624. [AjaxOnly]
  625. public ActionResult AllowGraduate(string stuNo, string status)
  626. {
  627. stuInfoBasicIBLL.AllowGraduate(stuNo, status);
  628. return Success("操作成功!");
  629. }
  630. [HttpPost]
  631. [AjaxOnly]
  632. public ActionResult IsPhoto(string stuId, string base64url)
  633. {
  634. var loginuser = LoginUserInfo.Get();
  635. //头像处理
  636. var folderId = Guid.NewGuid().ToString();
  637. string filePath = Config.GetValue("AnnexesFile");
  638. string uploadDate = DateTime.Now.ToString("yyyyMMdd");
  639. string FileEextension = ".png";
  640. string fileGuid = Guid.NewGuid().ToString();
  641. string virtualPath = string.Format("{0}/{1}/{2}/{3}{4}", filePath, loginuser.account, uploadDate, fileGuid, FileEextension);
  642. //创建文件夹
  643. string path = Path.GetDirectoryName(virtualPath);
  644. Directory.CreateDirectory(path);
  645. AnnexesFileEntity fileAnnexesEntity = new AnnexesFileEntity();
  646. if (!System.IO.File.Exists(virtualPath))
  647. {
  648. byte[] bytes = Convert.FromBase64String(base64url.Replace("data:image/png;base64,", ""));
  649. FileInfo file = new FileInfo(virtualPath);
  650. FileStream fs = file.Create();
  651. fs.Write(bytes, 0, bytes.Length);
  652. fs.Close();
  653. //文件信息写入数据库
  654. fileAnnexesEntity.F_Id = fileGuid;
  655. fileAnnexesEntity.F_FileName = "userphoto.png";
  656. fileAnnexesEntity.F_FilePath = virtualPath;
  657. fileAnnexesEntity.F_FileSize = bytes.Length.ToString();
  658. fileAnnexesEntity.F_FileExtensions = FileEextension;
  659. fileAnnexesEntity.F_FileType = FileEextension.Replace(".", "");
  660. fileAnnexesEntity.F_CreateUserId = loginuser.userId;
  661. fileAnnexesEntity.F_CreateUserName = loginuser.realName;
  662. annexesFileIbll.SaveEntity(folderId, fileAnnexesEntity);
  663. var stuEntity = stuInfoBasicIBLL.GetStuInfoBasicEntity(stuId);
  664. stuEntity.Photo = folderId;
  665. stuInfoBasicIBLL.SaveEntity(stuEntity.StuId, stuEntity);
  666. return Success("上传成功");
  667. }
  668. else
  669. {
  670. return Fail("上传失败");
  671. }
  672. }
  673. /// <summary>
  674. /// 同步照片
  675. /// <summary>
  676. /// <returns></returns>
  677. [HttpGet]
  678. [AjaxOnly]
  679. public ActionResult SynPhoto()
  680. {
  681. stuInfoBasicIBLL.SynPhoto();
  682. return Success("同步成功!");
  683. }
  684. #endregion
  685. }
  686. }