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.

StuInfoBasicController.cs 22 KiB

4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719
  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. #endregion
  249. #region 获取数据
  250. /// <summary>
  251. /// 生成帐号
  252. /// </summary>
  253. /// <returns></returns>
  254. [HttpPost]
  255. [AjaxOnly]
  256. public ActionResult Generate()
  257. {
  258. stuInfoBasicIBLL.GenerateAccout();
  259. return Success("生成成功!");
  260. }
  261. [HttpPost]
  262. [AjaxOnly]
  263. public ActionResult UpdateAccount()
  264. {
  265. stuInfoBasicIBLL.UpdateAccount();
  266. return Success("更新成功!");
  267. }
  268. /// <summary>
  269. /// 获取页面显示列表数据
  270. /// <summary>
  271. /// <param name="queryJson">查询参数</param>
  272. /// <returns></returns>
  273. [HttpGet]
  274. [AjaxOnly]
  275. public ActionResult GetPageList(string pagination, string queryJson)
  276. {
  277. Pagination paginationobj = pagination.ToObject<Pagination>();
  278. var data = stuInfoBasicIBLL.GetPageList(paginationobj, queryJson);
  279. var jsonData = new
  280. {
  281. rows = data,
  282. total = paginationobj.total,
  283. page = paginationobj.page,
  284. records = paginationobj.records
  285. };
  286. return Success(jsonData);
  287. }
  288. /// <summary>
  289. /// 获取表单数据
  290. /// <summary>
  291. /// <returns></returns>
  292. [HttpGet]
  293. [AjaxOnly]
  294. public ActionResult GetFormData(string keyValue)
  295. {
  296. var StuInfoBasicData = stuInfoBasicIBLL.GetStuInfoBasicEntity(keyValue);
  297. var jsonData = new
  298. {
  299. StuInfoBasic = StuInfoBasicData,
  300. };
  301. return Success(jsonData);
  302. }
  303. /// <summary>
  304. /// 获取毕业学生的专业
  305. /// </summary>
  306. /// <returns></returns>
  307. [HttpGet]
  308. [AjaxOnly]
  309. public ActionResult GetMajorInfoWithGraduation()
  310. {
  311. var data = stuInfoBasicIBLL.GetMajorInfoWithGraduation();
  312. return Success(data);
  313. }
  314. /// <summary>
  315. /// 获取页面显示列表数据
  316. /// <summary>
  317. /// <returns></returns>
  318. [HttpGet]
  319. [AjaxOnly]
  320. public ActionResult GetAllList()
  321. {
  322. var data = stuInfoBasicIBLL.GetAllList();
  323. return Success(data);
  324. }
  325. /// <summary>
  326. /// 根据帐号获取学生的信息
  327. /// </summary>
  328. /// <param name="Account"></param>
  329. /// <returns></returns>
  330. [HttpGet]
  331. [AjaxOnly]
  332. public ActionResult GetStuInfo(string Account)
  333. {
  334. var stuInfo = stuInfoBasicIBLL.GetStuInfoBasicEntityByStuNo(Account);
  335. if (stuInfo != null)
  336. {
  337. return JsonResult(stuInfo);
  338. }
  339. else
  340. {
  341. return Fail("学生不存在");
  342. }
  343. }
  344. /// <summary>
  345. /// 根据帐号获取学生的信息
  346. /// </summary>
  347. /// <param name="ClassNo">班级码</param>
  348. /// <returns></returns>
  349. [HttpGet]
  350. [AjaxOnly]
  351. public ActionResult GetStuInfoByClassNo(string ClassNo)
  352. {
  353. var stuInfo = stuInfoBasicIBLL.GetStuInfoByClassNo(ClassNo);
  354. return Success(stuInfo);
  355. }
  356. /// <summary>
  357. /// 根据帐号获取学生的信息
  358. /// </summary>
  359. /// <param name="Account"></param>
  360. /// <returns></returns>
  361. [HttpGet]
  362. [AjaxOnly]
  363. public ActionResult GetStuInfoBasicEntityByStuName(string name)
  364. {
  365. var stuInfo = stuInfoBasicIBLL.GetStuInfoBasicEntityByStuName(name);
  366. return Success(stuInfo);
  367. }
  368. /// <summary>
  369. /// 获取左侧树形数据
  370. /// <summary>
  371. /// <returns></returns>
  372. [HttpGet]
  373. [AjaxOnly]
  374. public ActionResult GetTree()
  375. {
  376. var data = stuInfoBasicIBLL.GetTree();
  377. return Success(data);
  378. }
  379. #endregion
  380. #region 提交数据
  381. /// <summary>
  382. /// 领取毕业证
  383. /// </summary>
  384. /// <param name="keyValue">学生id</param>
  385. /// <returns></returns>
  386. [HttpPost]
  387. [AjaxOnly]
  388. public ActionResult GetCard(string keyValue,string status)
  389. {
  390. stuInfoBasicIBLL.GetCard(keyValue,status);
  391. return Success("操作成功");
  392. }
  393. /// <summary>
  394. /// 图书资料归还
  395. /// </summary>
  396. /// <param name="keyValue">学生id</param>
  397. /// <returns></returns>
  398. [HttpPost]
  399. [AjaxOnly]
  400. public ActionResult IsReturnBooks(string keyValue, string status)
  401. {
  402. stuInfoBasicIBLL.IsReturnBooks(keyValue, status);
  403. return Success("操作成功");
  404. }
  405. /// <summary>
  406. /// 就业协议备案
  407. /// </summary>
  408. /// <param name="keyValue">学生id</param>
  409. /// <returns></returns>
  410. [HttpPost]
  411. [AjaxOnly]
  412. public ActionResult IsEmployAgree(string keyValue, string status)
  413. {
  414. stuInfoBasicIBLL.IsEmployAgree(keyValue, status);
  415. return Success("操作成功");
  416. }
  417. /// <summary>
  418. /// 学杂费结算
  419. /// </summary>
  420. /// <param name="keyValue">学生id</param>
  421. /// <returns></returns>
  422. [HttpPost]
  423. [AjaxOnly]
  424. public ActionResult IsFeeSettle(string keyValue, string status)
  425. {
  426. stuInfoBasicIBLL.IsFeeSettle(keyValue, status);
  427. return Success("操作成功");
  428. }
  429. /// <summary>
  430. /// 办理退住手续
  431. /// </summary>
  432. /// <param name="keyValue">学生id</param>
  433. /// <returns></returns>
  434. [HttpPost]
  435. [AjaxOnly]
  436. public ActionResult IsCheckOut(string keyValue, string status)
  437. {
  438. stuInfoBasicIBLL.IsCheckOut(keyValue, status);
  439. return Success("操作成功");
  440. }
  441. /// <summary>
  442. /// 校园卡注销
  443. /// </summary>
  444. /// <param name="keyValue">学生id</param>
  445. /// <returns></returns>
  446. [HttpPost]
  447. [AjaxOnly]
  448. public ActionResult IsCardDeregistrate(string keyValue, string status)
  449. {
  450. stuInfoBasicIBLL.IsCardDeregistrate(keyValue, status);
  451. return Success("操作成功");
  452. }
  453. /// <summary>
  454. /// 档案与组织关系转出
  455. /// </summary>
  456. /// <param name="keyValue">学生id</param>
  457. /// <returns></returns>
  458. [HttpPost]
  459. [AjaxOnly]
  460. public ActionResult IsFileTransfer(string keyValue, string status)
  461. {
  462. stuInfoBasicIBLL.IsFileTransfer(keyValue, status);
  463. return Success("操作成功");
  464. }
  465. /// <summary>
  466. /// 学生毕业归档
  467. /// </summary>
  468. /// <param name="keyValue">学生id</param>
  469. /// <returns></returns>
  470. [HttpPost]
  471. [AjaxOnly]
  472. public ActionResult StuStore()
  473. {
  474. stuInfoBasicIBLL.StuStore();
  475. return Success("操作成功");
  476. }
  477. /// <summary>
  478. /// 删除实体数据
  479. /// <param name="keyValue">主键</param>
  480. /// <summary>
  481. /// <returns></returns>
  482. [HttpPost]
  483. [AjaxOnly]
  484. public ActionResult DeleteForm(string keyValue)
  485. {
  486. stuInfoBasicIBLL.DeleteEntity(keyValue);
  487. return Success("删除成功!");
  488. }
  489. /// <summary>
  490. /// 保存实体数据(新增、修改)
  491. /// <param name="keyValue">主键</param>
  492. /// <summary>
  493. /// <returns></returns>
  494. [HttpPost]
  495. [ValidateAntiForgeryToken]
  496. [AjaxOnly]
  497. public ActionResult SaveForm(string keyValue, string strEntity)
  498. {
  499. StuInfoBasicEntity entity = strEntity.ToObject<StuInfoBasicEntity>();
  500. entity.SyncFlag = false;
  501. var model = stuInfoBasicIBLL.GetStuInfoBasicEntityByStuNo(entity.StuNo);
  502. if (string.IsNullOrEmpty(keyValue))
  503. {
  504. if (model != null)
  505. {
  506. return Fail("学生编号已存在!");
  507. }
  508. }
  509. else
  510. {
  511. if (model != null && model.StuId != keyValue)
  512. {
  513. return Fail("学生编号已存在!");
  514. }
  515. entity.SyncFlag = true;
  516. //判断排课同步数据是否存在:若存在,清除同步数据;
  517. var arrangeLessonSyncList = arrangeLessonSyncIBLL.GetArrangeLessonSyncListByTableId(keyValue);
  518. if (arrangeLessonSyncList.Any())
  519. {
  520. arrangeLessonSyncIBLL.DeleteEntityByTableId(keyValue);
  521. }
  522. else
  523. {
  524. entity.SyncFlag = false;
  525. }
  526. }
  527. stuInfoBasicIBLL.SaveEntity(keyValue, entity);
  528. return Success("保存成功!");
  529. }
  530. [HttpPost]
  531. [AjaxOnly]
  532. public ActionResult CreateGraduateNoByMajor(string CityCode, string SchoolCode, string MajorList)
  533. {
  534. stuInfoBasicIBLL.CreateGraduateNoByMajor(CityCode, SchoolCode, MajorList);
  535. return Success("生成成功");
  536. }
  537. /// <summary>
  538. /// 审核
  539. /// <param name="keyValue">主键</param>
  540. /// <summary>
  541. /// <returns></returns>
  542. [HttpPost]
  543. [AjaxOnly]
  544. public ActionResult Check(string keyValue)
  545. {
  546. var keyValueArr = keyValue.Split(',');
  547. foreach (var item in keyValueArr)
  548. {
  549. var StuInfoBasicData = stuInfoBasicIBLL.GetStuInfoBasicEntity(item);
  550. if (StuInfoBasicData != null)
  551. {
  552. StuInfoBasicData.CheckMark = "1";
  553. stuInfoBasicIBLL.SaveEntity(item, StuInfoBasicData);
  554. }
  555. }
  556. return Success("审核成功!");
  557. }
  558. /// <summary>
  559. /// 取消审核
  560. /// <param name="keyValue">主键</param>
  561. /// <summary>
  562. /// <returns></returns>
  563. [HttpPost]
  564. [AjaxOnly]
  565. public ActionResult UnCheck(string keyValue)
  566. {
  567. var keyValueArr = keyValue.Split(',');
  568. foreach (var item in keyValueArr)
  569. {
  570. var StuInfoBasicData = stuInfoBasicIBLL.GetStuInfoBasicEntity(item);
  571. if (StuInfoBasicData != null)
  572. {
  573. StuInfoBasicData.CheckMark = "0";
  574. stuInfoBasicIBLL.SaveEntity(item, StuInfoBasicData);
  575. }
  576. }
  577. return Success("取消审核成功!");
  578. }
  579. /// <summary>
  580. /// 全部审核
  581. /// <param name="keyValue">主键</param>
  582. /// <summary>
  583. /// <returns></returns>
  584. [HttpPost]
  585. [AjaxOnly]
  586. public ActionResult CheckAll()
  587. {
  588. stuInfoBasicIBLL.CheckAll();
  589. return Success("全部审核成功!");
  590. }
  591. /// <summary>
  592. /// 准许学生毕业操作
  593. /// <param name="keyValue">学号</param>
  594. /// <summary>
  595. /// <returns></returns>
  596. [HttpGet]
  597. [AjaxOnly]
  598. public ActionResult AllowGraduate(string stuNo, string status)
  599. {
  600. stuInfoBasicIBLL.AllowGraduate(stuNo, status);
  601. return Success("操作成功!");
  602. }
  603. [HttpPost]
  604. [AjaxOnly]
  605. public ActionResult IsPhoto(string stuId, string base64url)
  606. {
  607. var loginuser = LoginUserInfo.Get();
  608. //头像处理
  609. var folderId = Guid.NewGuid().ToString();
  610. string filePath = Config.GetValue("AnnexesFile");
  611. string uploadDate = DateTime.Now.ToString("yyyyMMdd");
  612. string FileEextension = ".png";
  613. string fileGuid = Guid.NewGuid().ToString();
  614. string virtualPath = string.Format("{0}/{1}/{2}/{3}{4}", filePath, loginuser.account, uploadDate, fileGuid, FileEextension);
  615. //创建文件夹
  616. string path = Path.GetDirectoryName(virtualPath);
  617. Directory.CreateDirectory(path);
  618. AnnexesFileEntity fileAnnexesEntity = new AnnexesFileEntity();
  619. if (!System.IO.File.Exists(virtualPath))
  620. {
  621. byte[] bytes = Convert.FromBase64String(base64url.Replace("data:image/png;base64,", ""));
  622. FileInfo file = new FileInfo(virtualPath);
  623. FileStream fs = file.Create();
  624. fs.Write(bytes, 0, bytes.Length);
  625. fs.Close();
  626. //文件信息写入数据库
  627. fileAnnexesEntity.F_Id = fileGuid;
  628. fileAnnexesEntity.F_FileName = "userphoto.png";
  629. fileAnnexesEntity.F_FilePath = virtualPath;
  630. fileAnnexesEntity.F_FileSize = bytes.Length.ToString();
  631. fileAnnexesEntity.F_FileExtensions = FileEextension;
  632. fileAnnexesEntity.F_FileType = FileEextension.Replace(".", "");
  633. fileAnnexesEntity.F_CreateUserId = loginuser.userId;
  634. fileAnnexesEntity.F_CreateUserName = loginuser.realName;
  635. annexesFileIbll.SaveEntity(folderId, fileAnnexesEntity);
  636. var stuEntity = stuInfoBasicIBLL.GetStuInfoBasicEntity(stuId);
  637. stuEntity.Photo = folderId;
  638. stuInfoBasicIBLL.SaveEntity(stuEntity.StuId, stuEntity);
  639. return Success("上传成功");
  640. }
  641. else
  642. {
  643. return Fail("上传失败");
  644. }
  645. }
  646. /// <summary>
  647. /// 同步照片
  648. /// <summary>
  649. /// <returns></returns>
  650. [HttpGet]
  651. [AjaxOnly]
  652. public ActionResult SynPhoto()
  653. {
  654. stuInfoBasicIBLL.SynPhoto();
  655. return Success("同步成功!");
  656. }
  657. #endregion
  658. }
  659. }