No puede seleccionar más de 25 temas Los temas deben comenzar con una letra o número, pueden incluir guiones ('-') y pueden tener hasta 35 caracteres de largo.
 
 
 
 
 
 

261 líneas
8.4 KiB

  1. using System;
  2. using Learun.Util;
  3. using System.Data;
  4. using Learun.Application.TwoDevelopment.PersonnelManagement;
  5. using System.Web.Mvc;
  6. using System.Collections.Generic;
  7. using System.Linq;
  8. namespace Learun.Application.Web.Areas.PersonnelManagement.Controllers
  9. {
  10. /// <summary>
  11. /// 版 本 Learun-ADMS-Ultimate V7.0.0 数字化智慧校园
  12. /// Copyright (c) 2013-2018 北京泉江科技有限公司
  13. /// 创 建:超级管理员
  14. /// 日 期:2020-03-27 17:52
  15. /// 描 述:工资记录表
  16. /// </summary>
  17. public class Sal_UserSalaryController : MvcControllerBase
  18. {
  19. private Sal_UserSalaryIBLL sal_UserSalaryIBLL = new Sal_UserSalaryBLL();
  20. private Sal_UserSalaryItemIBLL sal_UserSalaryItemIBLL = new Sal_UserSalaryItemBLL();
  21. private Sal_SalaryTemplateItemIBLL sal_SalaryTemplateItemIBLL = new Sal_SalaryTemplateItemBLL();
  22. #region 视图功能
  23. /// <summary>
  24. /// 主页面
  25. /// <summary>
  26. /// <returns></returns>
  27. [HttpGet]
  28. public ActionResult Index()
  29. {
  30. return View();
  31. }
  32. /// <summary>
  33. /// 我的工资
  34. /// <summary>
  35. /// <returns></returns>
  36. [HttpGet]
  37. public ActionResult IndexOfMy()
  38. {
  39. return View();
  40. }
  41. /// <summary>
  42. /// 表单页
  43. /// <summary>
  44. /// <returns></returns>
  45. [HttpGet]
  46. public ActionResult Form()
  47. {
  48. var itemList = sal_UserSalaryIBLL.GetAllTemplateInfo();
  49. ViewBag.ItemList = itemList.ToList();
  50. return View();
  51. }
  52. /// <summary>
  53. /// 详情页
  54. /// <summary>
  55. /// <returns></returns>
  56. [HttpGet]
  57. public ActionResult FormView()
  58. {
  59. var itemList = sal_UserSalaryIBLL.GetAllTemplateInfo();
  60. ViewBag.ItemList = itemList.ToList();
  61. return View();
  62. }
  63. #endregion
  64. #region 获取数据
  65. /// <summary>
  66. /// 获取页面显示列表数据
  67. /// <summary>
  68. /// <param name="queryJson">查询参数</param>
  69. /// <returns></returns>
  70. [HttpGet]
  71. [AjaxOnly]
  72. public ActionResult GetPageList(string pagination, string queryJson)
  73. {
  74. Pagination paginationobj = pagination.ToObject<Pagination>();
  75. var data = sal_UserSalaryIBLL.GetPageList(paginationobj, queryJson);
  76. var objectList = new List<Object>();
  77. foreach (var userSalary in data)
  78. {
  79. dynamic dataItem = new System.Dynamic.ExpandoObject();
  80. var dataItemDic = dataItem as IDictionary<string, object>;
  81. dataItemDic["F_UserId"] = userSalary.F_UserId;
  82. dataItemDic["USId"] = userSalary.USId;
  83. dataItemDic["STAll"] = userSalary.STAll;
  84. dataItemDic["STActual"] = userSalary.STActual;
  85. dataItemDic["USDate"] = userSalary.USDate;
  86. var ListItem = sal_SalaryTemplateItemIBLL.GetListByUSId(userSalary.USId);
  87. foreach (var itemEntity in ListItem)
  88. {
  89. var name = itemEntity.STIId;
  90. var val = itemEntity.STIValue;
  91. dataItemDic[name] = val;
  92. }
  93. objectList.Add(dataItem);
  94. }
  95. var jsonData = new
  96. {
  97. rows = objectList,
  98. total = paginationobj.total,
  99. page = paginationobj.page,
  100. records = paginationobj.records
  101. };
  102. return Success(jsonData);
  103. }
  104. /// <summary>
  105. /// 获取表单数据
  106. /// <summary>
  107. /// <returns></returns>
  108. [HttpGet]
  109. [AjaxOnly]
  110. public ActionResult GetFormData(string keyValue)
  111. {
  112. var Sal_UserSalaryData = sal_UserSalaryIBLL.GetSal_UserSalaryEntity(keyValue);
  113. dynamic dataItem = new System.Dynamic.ExpandoObject();
  114. var dataItemDic = dataItem as IDictionary<string, object>;
  115. dataItemDic["F_UserId"] = Sal_UserSalaryData.F_UserId;
  116. dataItemDic["USId"] = Sal_UserSalaryData.USId;
  117. dataItemDic["STAll"] = Sal_UserSalaryData.STAll;
  118. dataItemDic["STActual"] = Sal_UserSalaryData.STActual;
  119. dataItemDic["USDate"] = Sal_UserSalaryData.USDate;
  120. var ListItem = sal_SalaryTemplateItemIBLL.GetListByUSId(Sal_UserSalaryData.USId);
  121. foreach (var itemEntity in ListItem)
  122. {
  123. var name = itemEntity.STIId;
  124. var val = itemEntity.STIValue;
  125. dataItemDic[name] = val;
  126. }
  127. var jsonData = new
  128. {
  129. Sal_UserSalary = dataItem,
  130. };
  131. return Success(jsonData);
  132. }
  133. /// <summary>
  134. /// 获取已经启用的工资模板信息
  135. /// </summary>
  136. /// <returns></returns>
  137. [HttpGet]
  138. [AjaxOnly]
  139. public ActionResult GetEnableTemplateInfo()
  140. {
  141. var TemplateItems = sal_UserSalaryIBLL.GetEnableTemplateInfo();
  142. var jsonData = new
  143. {
  144. ItemList = TemplateItems,
  145. };
  146. return Success(jsonData);
  147. }
  148. /// <summary>
  149. /// 获取全部工资模板信息
  150. /// </summary>
  151. /// <returns></returns>
  152. [HttpGet]
  153. [AjaxOnly]
  154. public ActionResult GetAllTemplateInfo()
  155. {
  156. var TemplateItems = sal_UserSalaryIBLL.GetAllTemplateInfo();
  157. var jsonData = new
  158. {
  159. ItemList = TemplateItems,
  160. };
  161. return Success(jsonData);
  162. }
  163. #endregion
  164. #region 提交数据
  165. /// <summary>
  166. /// 删除实体数据
  167. /// <param name="keyValue">主键</param>
  168. /// <summary>
  169. /// <returns></returns>
  170. [HttpPost]
  171. [AjaxOnly]
  172. public ActionResult DeleteForm(string keyValue)
  173. {
  174. sal_UserSalaryIBLL.DeleteEntity(keyValue);
  175. return Success("删除成功!");
  176. }
  177. /// <summary>
  178. /// 保存实体数据(新增、修改)
  179. /// <param name="keyValue">主键</param>
  180. /// <summary>
  181. /// <returns></returns>
  182. [HttpPost]
  183. [ValidateAntiForgeryToken]
  184. [AjaxOnly]
  185. public ActionResult SaveForm(string keyValue, string strEntity, string strDetail)
  186. {
  187. Sal_UserSalaryEntity entity = strEntity.ToObject<Sal_UserSalaryEntity>();
  188. List<Sal_UserSalaryItemEntity> itemList = strDetail.ToList<Sal_UserSalaryItemEntity>();
  189. if (string.IsNullOrEmpty(keyValue))
  190. {
  191. entity.Create();
  192. }
  193. entity.STActual = 0;
  194. entity.STAll = 0;
  195. foreach (var item in itemList)
  196. {
  197. var Sal_SalaryTemplateItemEntity =
  198. sal_SalaryTemplateItemIBLL.GetSal_SalaryTemplateItemEntity(item.STIId);
  199. if (Sal_SalaryTemplateItemEntity != null)
  200. {
  201. if (Sal_SalaryTemplateItemEntity.STIParticipation == "true")
  202. {
  203. if (Sal_SalaryTemplateItemEntity.STIAdd == "true")
  204. {
  205. entity.STActual += Convert.ToDecimal(item.STIValue);
  206. }
  207. else
  208. {
  209. entity.STActual -= Convert.ToDecimal(item.STIValue);
  210. }
  211. }
  212. if (Sal_SalaryTemplateItemEntity.STIAdd == "true")
  213. {
  214. entity.STAll += Convert.ToDecimal(item.STIValue);
  215. }
  216. else
  217. {
  218. entity.STAll -= Convert.ToDecimal(item.STIValue);
  219. }
  220. if (string.IsNullOrEmpty(keyValue))
  221. {
  222. item.USId = entity.USId;
  223. sal_UserSalaryItemIBLL.SaveEntity("", item);
  224. }
  225. else
  226. {
  227. sal_UserSalaryItemIBLL.SaveEntity(keyValue, item);
  228. }
  229. }
  230. }
  231. sal_UserSalaryIBLL.SaveEntity(keyValue, entity);
  232. return Success("保存成功!");
  233. }
  234. #endregion
  235. }
  236. }