ChannelService.cs 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266
  1. using System;
  2. using System.Data;
  3. using QWPlatform.IService;
  4. using PMS.EntityModels.Channel;
  5. using System.Data.SqlClient;
  6. using PMS.BusinessModels.ProManager;
  7. using QWPlatform.SystemLibrary;
  8. namespace PMS.DBService.Channel
  9. {
  10. /// <summary>
  11. /// 创建者:冉利
  12. /// 创建日期:2018/12/10
  13. /// 功能描述:渠道信息的新增
  14. /// </summary>
  15. public class ChannelService : DataServiceBase
  16. {
  17. //实例化数据库
  18. public DataServiceBase dataservice = new DataServiceBase();
  19. #region 获取和查询渠道信息
  20. /// <summary>
  21. /// 获取渠道信息
  22. /// </summary>
  23. /// <param name="search"></param>
  24. /// <param name="currrentID"></param>
  25. /// <param name="startnumber"></param>
  26. /// <param name="endNumber"></param>
  27. /// <param name="total"></param>
  28. /// <returns></returns>
  29. public string SelectChannel(string search, string currrentID,int startnumber, int endNumber)
  30. {
  31. var exeResult = this.ProcedureBuilder.Procedure("b_基础管理_渠道项目.p_渠道信息_Selectsz")
  32. .Paramter("查询条件_In", search)
  33. .Paramter("登录人ID_In", currrentID)
  34. .Paramter("开始行_In", startnumber)
  35. .Paramter("结束行_In", endNumber)
  36. .ParamterOut("总行数_Out", DbType.Double, 5)
  37. .ParamterOut("Resultlist", true);
  38. exeResult.Execute();
  39. //var dt = exeResult.ParameterValue<DataTable>("Resultlist");
  40. //return dt;
  41. //exeResult.Execute();
  42. var dt = exeResult.ParameterValue<DataTable>("Resultlist");
  43. var total = exeResult.ParameterValue<decimal>("总行数_Out");
  44. return dt.ToEasyUIGridJson(Convert.ToInt32(total));
  45. }
  46. #endregion
  47. #region 新增修改渠道信息
  48. /// <summary>
  49. /// 新增渠道信息
  50. /// </summary>
  51. /// <param name="jsonstring"></param>
  52. /// <param name="EditType">新增渠道</param>
  53. //p_渠道信息_Edit
  54. public string EditChannel(ChannelModel model, int editType)
  55. {
  56. var exeResult = this.ProcedureBuilder.Procedure("b_基础管理_渠道项目.p_渠道信息_Edit")
  57. .Paramter("Id_In", model.ID)
  58. .Paramter("编码_In", model.code)
  59. .Paramter("名称_In", model.name)
  60. .Paramter("简码_In", model.brevitycode)
  61. .Paramter("性质_In", model.nature)
  62. .Paramter("开始日期_In",model.startdate)
  63. .Paramter("商务联系人_In",model.business)
  64. .Paramter("技术联系人_In",model.technology)
  65. .Paramter("电话_In",model.phonenumber)
  66. .Paramter("地址_In",model.address)
  67. .Paramter("备注_In", model.note)
  68. .Paramter("商务联系人邮箱_In", model.businessMail)
  69. .Paramter("商务联系人微信_In", model.businessWxin)
  70. .Paramter("技术联系人邮箱_In", model.technologyMail)
  71. .Paramter("技术联系人微信_In", model.technologyWxin)
  72. .Paramter("编辑类型_In",editType)
  73. .ParamterOut("Resultstr_Out", DbType.String, 400);
  74. exeResult.Execute();
  75. var dt = exeResult.ParameterValue<String>("Resultstr_Out");
  76. return dt;
  77. }
  78. #endregion
  79. #region 查询渠道信息
  80. public DataTable GetChannelInfo(string id)
  81. {
  82. var dt = this.SelectBuilder.Columns("*")
  83. .From("渠道信息")
  84. .Where("ID", id)
  85. .Select();
  86. return dt;
  87. }
  88. #endregion
  89. #region 查询所有渠道信息得id 名称(名称+简码)
  90. public DataTable GetChannelIdName()
  91. {
  92. string sql= "select '' AS ID,'全部' AS 名称 From dual Union ALL select ID, concat(名称,'(' || 简码 || ')') AS 名称 From 渠道信息";
  93. var dt = this.SqlBuilder.SqlText(sql).Select();
  94. return dt;
  95. }
  96. #endregion
  97. #region 所有渠道性质
  98. public DataTable GetChannelnature() {
  99. string sql = "select 代码 AS ID,显示名 AS 名称 from 基础编码 where 分类ID='7AC2C85B-04C5-49FB-95B4-9EE3F0552B4A'";
  100. var dt = this.SqlBuilder.SqlText(sql).Select();
  101. return dt;
  102. }
  103. #endregion
  104. #region 删除渠道信息
  105. public string DelChannelInfo(string id,int type)
  106. {
  107. var exeResult = this.ProcedureBuilder.Procedure("b_基础管理_渠道项目.p_渠道信息_Sign")
  108. .Paramter("Id_In", id)
  109. .Paramter("标记类型_In", type)
  110. .ParamterOut("Resultstr_Out", DbType.String, 400);
  111. exeResult.Execute();
  112. string ExeResults = exeResult.ParameterValue<String>("Resultstr_Out");
  113. return ExeResults;
  114. }
  115. #endregion
  116. #region 根据条件查询渠道信息
  117. public string SearchModuleInfos(string search, string currrentID, int page, int rows)
  118. {
  119. // Procedure p_渠道信息_Select
  120. // (
  121. // 查询条件_In In Varchar2,
  122. // 登录人ID_In In Varchar2,
  123. // Resultlist Out Sys_Refcursor
  124. //)
  125. if(search == "null" )
  126. {
  127. search = "";
  128. }
  129. var exeResult = this.ProcedureBuilder.Procedure("b_基础管理_渠道项目.p_渠道信息_Selectsz")
  130. .Paramter("查询条件_In", search)
  131. .Paramter("登录人ID_In", currrentID)
  132. .Paramter("开始行_In", page)
  133. .Paramter("结束行_In", rows)
  134. .ParamterOut("总行数_Out", DbType.Double, 0)
  135. .ParamterOut("Resultlist", true);
  136. exeResult.Execute();
  137. var dt = exeResult.ParameterValue<DataTable>("Resultlist");
  138. var total = exeResult.ParameterValue<decimal>("总行数_Out");
  139. return dt.ToEasyUIGridJson(Convert.ToInt32(total));
  140. }
  141. public DataTable GetChannelProjectTree()
  142. {
  143. var exeResult = this.ProcedureBuilder.Procedure("b_平台管理_权限管理.p_获取渠道项目树形菜单")
  144. .Paramter("In_空id", DBNull.Value)
  145. .Paramter("In_空值", DBNull.Value)
  146. .ParamterOut("Resultlist", true);
  147. exeResult.Execute();
  148. var ExeResults = exeResult.ParameterValue<DataTable>("Resultlist");
  149. return ExeResults;
  150. }
  151. public DataTable GetChannelCombo()
  152. {
  153. return this.SelectBuilder.Columns("ID,名称").From("渠道信息").Where("状态", 1).OrderBy("编码 asc").Select();
  154. }
  155. public DataTable GetProjectCombobox(string ChannelId)
  156. {
  157. return this.SelectBuilder.Columns("ID,名称").From("项目信息").Where("渠道ID", ChannelId).Where("启用",1).Select();
  158. }
  159. public DataTable GetInstitution(string id)
  160. {
  161. return this.SelectBuilder.Columns("ID,名称").From("站点信息").Where("项目ID", id).Select();
  162. }
  163. #endregion
  164. /// <summary>
  165. /// 查询渠道编码
  166. /// </summary>
  167. /// <returns></returns>
  168. public string ChannelCode()
  169. {
  170. string sql = "select * from(select 编码 from 渠道信息 order by 编码 desc)where rownum = 1 ";
  171. var result = this.SqlBuilder.SqlText(sql).Select<string>();
  172. return result;
  173. }
  174. /// <summary>
  175. /// 查询渠道名称
  176. /// </summary>
  177. /// <param name="Name"></param>
  178. /// <returns></returns>
  179. public string ChannelName(string Name)
  180. {
  181. //select 名称 from 渠道信息 where 名称 = '中联西安公司'id=:iD
  182. //select 名称 from 渠道信息 where 名称 = '中联总部'
  183. //string sql = "select count(*) from 渠道信息 where 名称=:Name";
  184. //var result = this.SqlBuilder.SqlText(sql).Parameters("名称",Name).Select<string>();
  185. //return result;
  186. var dt = this.SelectBuilder.Columns("名称")
  187. .From("渠道信息")
  188. .Where("名称", Name)
  189. .Select<string>();
  190. if (dt==null)
  191. {
  192. return "";
  193. }
  194. return dt;
  195. }
  196. /// <summary>
  197. /// 根据渠道id查询人员信息
  198. /// </summary>
  199. /// <param name="channelid"></param>
  200. /// <returns></returns>
  201. public DataTable Channelbusiness(string channelid)
  202. {
  203. //select 姓名 from 人员信息 where 渠道ID = '937C9A4F-99EF-4D0D-B6CA-FC12CA06E05C'
  204. var result = this.SelectBuilder.Columns("姓名")
  205. .From("人员信息")
  206. .Where("渠道ID", channelid)
  207. .Select();
  208. return result;
  209. }
  210. /// <summary>
  211. /// 通过渠道信息id值得到渠道信息并返回分页结果
  212. /// </summary>
  213. /// <param name="data"></param>
  214. /// <param name="startnumber"></param>
  215. /// <param name="endNumber"></param>
  216. /// <returns></returns>
  217. public string ChannelDataGridsM(string data, int startnumber, int endNumber)
  218. {
  219. var dt = this.ProcedureBuilder.Procedure("b_基础管理_渠道项目.p_当前ID查询渠道信息_Selectsz")
  220. .Paramter("StringId_In", data)
  221. .Paramter("开始行_In", startnumber)
  222. .Paramter("结束行_In", endNumber)
  223. .ParamterOut("总行数_Out",DbType.Double,5)
  224. .ParamterOut("Resultlist", true);
  225. dt.Execute();
  226. var result = dt.ParameterValue<DataTable>("Resultlist");
  227. var total = dt.ParameterValue<decimal>("总行数_Out");
  228. return result.ToEasyUIGridJson(Convert.ToInt32(total));
  229. }
  230. /// <summary>
  231. /// 获取项目渠道树(含权限)
  232. /// </summary>
  233. /// <param name="Channel"></param>
  234. /// <param name="Item"></param>
  235. /// <returns></returns>
  236. public DataTable GetChannelComboTree(string Channel,string Item)
  237. {
  238. var exeResult = this.ProcedureBuilder.Procedure("b_平台管理_权限管理.p_获取渠道项目Combotree")
  239. .Paramter("渠道ID_In", Channel)
  240. .Paramter("项目ID_In", Item)
  241. .ParamterOut("Resultlist", true);
  242. exeResult.Execute();
  243. var ExeResults = exeResult.ParameterValue<DataTable>("Resultlist");
  244. return ExeResults;
  245. }
  246. }
  247. }