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.
 
 
 
 
 
 

161 lines
5.0 KiB

  1. using Learun.Application.Base.SystemModule;
  2. using Learun.Application.CRM;
  3. using Learun.Util;
  4. using System.Web.Mvc;
  5. namespace Learun.Application.Web.Areas.LR_CRMModule.Controllers
  6. {
  7. /// <summary>
  8. /// 版 本 Learun-ADMS-Ultimate V7.0.0 数字化智慧校园
  9. /// Copyright (c) 2013-2018 北京泉江科技有限公司
  10. /// 创 建:超级管理员
  11. /// 日 期:2017-07-11 11:30
  12. /// 描 述:商机管理
  13. /// </summary>
  14. public class ChanceController : MvcControllerBase
  15. {
  16. private CrmChanceIBLL crmChanceIBLL = new CrmChanceBLL();
  17. private CodeRuleIBLL codeRuleIBLL = new CodeRuleBLL();
  18. #region 视图功能
  19. /// <summary>
  20. /// 商机列表页面
  21. /// </summary>
  22. /// <returns></returns>
  23. [HttpGet]
  24. public ActionResult Index()
  25. {
  26. return View();
  27. }
  28. /// <summary>
  29. /// 商机表单页面
  30. /// </summary>
  31. /// <returns></returns>
  32. [HttpGet]
  33. public ActionResult Form()
  34. {
  35. if (Request["keyValue"] == null)
  36. {
  37. ViewBag.EnCode = codeRuleIBLL.GetBillCode(((int)CodeRuleEnum.CrmChanceCode).ToString());
  38. }
  39. return View();
  40. }
  41. /// <summary>
  42. /// 商机明细页面
  43. /// </summary>
  44. /// <returns></returns>
  45. [HttpGet]
  46. public ActionResult Detail()
  47. {
  48. return View();
  49. }
  50. #endregion
  51. #region 获取数据
  52. /// <summary>
  53. /// 获取商机列表
  54. /// </summary>
  55. /// <param name="pagination">分页参数</param>
  56. /// <param name="queryJson">查询参数</param>
  57. /// <returns>返回分页列表Json</returns>
  58. [HttpGet]
  59. [AjaxOnly]
  60. public ActionResult GetPageList(string pagination, string queryJson)
  61. {
  62. Pagination paginationobj = pagination.ToObject<Pagination>();
  63. var data = crmChanceIBLL.GetPageList(paginationobj, queryJson);
  64. var jsonData = new
  65. {
  66. rows = data,
  67. total = paginationobj.total,
  68. page = paginationobj.page,
  69. records = paginationobj.records,
  70. };
  71. return JsonResult(jsonData);
  72. }
  73. /// <summary>
  74. /// 获取商机实体
  75. /// </summary>
  76. /// <param name="keyValue">主键值</param>
  77. /// <returns>返回对象Json</returns>
  78. [HttpGet]
  79. [AjaxOnly]
  80. public ActionResult GetFormJson(string keyValue)
  81. {
  82. var data = crmChanceIBLL.GetEntity(keyValue);
  83. return ToJsonResult(data);
  84. }
  85. #endregion
  86. #region 验证数据
  87. /// <summary>
  88. /// 商机名称不能重复
  89. /// </summary>
  90. /// <param name="FullName">名称</param>
  91. /// <param name="keyValue">主键</param>
  92. /// <returns></returns>
  93. [HttpGet]
  94. [AjaxOnly]
  95. public ActionResult ExistFullName(string FullName, string keyValue)
  96. {
  97. bool IsOk = crmChanceIBLL.ExistFullName(FullName, keyValue);
  98. return Success(IsOk.ToString());
  99. }
  100. #endregion
  101. #region 提交数据
  102. /// <summary>
  103. /// 删除商机数据
  104. /// </summary>
  105. /// <param name="keyValue">主键值</param>
  106. /// <returns></returns>
  107. [HttpPost]
  108. [AjaxOnly]
  109. public ActionResult DeleteForm(string keyValue)
  110. {
  111. crmChanceIBLL.DeleteEntity(keyValue);
  112. return Success("删除成功。");
  113. }
  114. /// <summary>
  115. /// 保存商机表单(新增、修改)
  116. /// </summary>
  117. /// <param name="keyValue">主键值</param>
  118. /// <param name="entity">实体对象</param>
  119. /// <returns></returns>
  120. [HttpPost]
  121. [ValidateAntiForgeryToken]
  122. [AjaxOnly]
  123. public ActionResult SaveForm(string keyValue, CrmChanceEntity entity)
  124. {
  125. crmChanceIBLL.SaveEntity(keyValue, entity);
  126. return Success("操作成功。");
  127. }
  128. /// <summary>
  129. /// 商机作废
  130. /// </summary>
  131. /// <param name="keyValue">主键值</param>
  132. /// <returns></returns>
  133. [HttpPost]
  134. [AjaxOnly]
  135. public ActionResult Invalid(string keyValue)
  136. {
  137. crmChanceIBLL.Invalid(keyValue);
  138. return Success("作废成功。");
  139. }
  140. /// <summary>
  141. /// 商机转换客户
  142. /// </summary>
  143. /// <param name="keyValue">主键值</param>
  144. /// <returns></returns>
  145. [HttpPost]
  146. [AjaxOnly]
  147. public ActionResult ToCustomer(string keyValue)
  148. {
  149. string enCode = codeRuleIBLL.GetBillCode(((int)CodeRuleEnum.CrmChanceCode).ToString());
  150. crmChanceIBLL.ToCustomer(keyValue, enCode);
  151. codeRuleIBLL.UseRuleSeed(((int)CodeRuleEnum.CrmChanceCode).ToString());
  152. return Success("转换成功。");
  153. }
  154. #endregion
  155. }
  156. }