商丘12345 后端

ButtonGroup.cs 19KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Web;
  5. namespace CallCenterApi.Interface.Models.Common
  6. {
  7. public class ButtonGroup
  8. {
  9. public static button query()
  10. {
  11. return new button(1, "查询");
  12. }
  13. public static button edit()
  14. {
  15. return new button(2, "编辑");
  16. }
  17. public static button delete()
  18. {
  19. return new button(3, "删除");
  20. }
  21. public static button submit()
  22. {
  23. return new button(4, "提交");
  24. }
  25. public static button assign()
  26. {
  27. return new button(5, "交办");
  28. }
  29. public static button approval()
  30. {
  31. return new button(6, "领导批示");
  32. }
  33. public static button instruct()
  34. {
  35. return new button(7, "市长指示");
  36. }
  37. public static button oversee()
  38. {
  39. return new button(8, "督办");
  40. }
  41. public static button supervision()
  42. {
  43. return new button(9, "监察");
  44. }
  45. public static button takeback()
  46. {
  47. return new button(10, "收回");
  48. }
  49. public static button receive()
  50. {
  51. return new button(11, "查收");
  52. }
  53. public static button reback()
  54. {
  55. return new button(12, "退回申请");
  56. }
  57. public static button feedback()
  58. {
  59. return new button(13, "办理");
  60. }
  61. public static button delay()
  62. {
  63. return new button(14, "延时申请");
  64. }
  65. public static button auditreback()
  66. {
  67. return new button(15, "退回审核");
  68. }
  69. public static button visit()
  70. {
  71. return new button(16, "回访");
  72. }
  73. public static button auditdelay()
  74. {
  75. return new button(17, "延时审核");
  76. }
  77. public static button reload()
  78. {
  79. return new button(18, "重办");
  80. }
  81. public static button end()
  82. {
  83. return new button(19, "结案");
  84. }
  85. public static button export()
  86. {
  87. return new button(20, "导出");
  88. }
  89. public static button back()
  90. {
  91. return new button(21, "回退");
  92. }
  93. public static button forceend()
  94. {
  95. return new button(22, "强制结案");
  96. }
  97. public static button split()
  98. {
  99. return new button(23, "派单");
  100. }
  101. public static button auditdeal()
  102. {
  103. return new button(24, "处理审核");
  104. }
  105. public static button sign()
  106. {
  107. return new button(25, "签收");
  108. }
  109. public static button refuse()
  110. {
  111. return new button(26, "拒收");
  112. }
  113. public static button withdraw()
  114. {
  115. return new button(27, "撤单");
  116. }
  117. public static button audit()
  118. {
  119. return new button(28, "审核");
  120. }
  121. public static button turnsee()
  122. {
  123. return new button(29, "转督办");
  124. }
  125. public static button turnnosee()
  126. {
  127. return new button(30,"不督办");
  128. }
  129. public static button subreload()
  130. {
  131. return new button(31, "提交重办");
  132. }
  133. public static button reject()
  134. {
  135. return new button(32, "驳回重办");
  136. }
  137. public static button perform()
  138. {
  139. return new button(33, "履职界定");
  140. }
  141. public static button performaudit()
  142. {
  143. return new button(34, "界定审核");
  144. }
  145. public static button Signfor()
  146. {
  147. return new button(35, "签收");
  148. }
  149. public static button Sendback()
  150. {
  151. return new button(36, "退回");
  152. }
  153. public static button delayback()
  154. {
  155. return new button(37, "退回申请延时");
  156. }
  157. public static button visits()
  158. {
  159. return new button(38, "省平台结案");
  160. }
  161. public static button ejdelay()
  162. {
  163. return new button(39, "省平台申请延时");
  164. }
  165. public static button Report()
  166. {
  167. return new button(40, "上报");
  168. }
  169. #region 知识库操作按钮
  170. public static button zsk_query()
  171. {
  172. return new button(1, "查询");
  173. }
  174. public static button zsk_edit()
  175. {
  176. return new button(2, "编辑");
  177. }
  178. public static button zsk_delete()
  179. {
  180. return new button(3, "删除");
  181. }
  182. public static button zsk_submit()
  183. {
  184. return new button(4, "提交");
  185. }
  186. public static button zsk_audit()
  187. {
  188. return new button(5, "审核");
  189. }
  190. public static button zsk_solved()
  191. {
  192. return new button(6, "解决");
  193. }
  194. public static button zsk_unsolved()
  195. {
  196. return new button(7, "未解决");
  197. }
  198. #endregion
  199. /// <summary>
  200. /// 按钮类
  201. /// </summary>
  202. public class button
  203. {
  204. public int key { get; set; }
  205. public string value { get; set; }
  206. public button(int _key, string _value) {
  207. key = _key;
  208. value = _value;
  209. }
  210. }
  211. /// <summary>
  212. /// 根据状态和角色代码获取操作按钮
  213. /// </summary>
  214. /// <param name="state"></param>
  215. /// <param name="code"></param>
  216. /// <param name="iszb"></param>
  217. /// <returns></returns>
  218. public static List<button> GetButtons(string state, string code, string iszb="", string iszbdw="",string ispd="",string type="")
  219. {
  220. //中心话务员(ZXHWY) 二级网络单位(WLDW) 管理员(GLY) 坐席班长(ZXBZ) 调度专员(ZXLD)
  221. //中心领导管理员(ZXLDGLYGLY) 话务主管(ZXBZ) 中心领导(ZXLDGLY) 话务组长(ZXBZ)
  222. //导播话务员(DBHWY) 网易新闻(11) 三级网络单位(EJWLDW) 民生播报(MSBB)
  223. //督办专员(DBZY) 质检专员(ZJZY)
  224. //调度主管(DDZG)
  225. List<button> buttons = new List<button>();
  226. buttons.Add(query());
  227. switch (state)
  228. {
  229. case "0":
  230. //调度专员 质检专员可以进行编辑 zhengbingbing 20191017
  231. if (code == "ZXLD" || code == "ZJZY")
  232. buttons.Add(edit());
  233. //中心话务员 坐席班长 管理员
  234. if (code == "ZXHWY" || code == "ZXBZ" || code == "GLY" || code == "DDZG")
  235. {
  236. if ( type == "109")
  237. {
  238. buttons.Add(Signfor());
  239. buttons.Add(Sendback());
  240. buttons.Add(delayback());
  241. }
  242. else
  243. {
  244. buttons.Add(submit());
  245. buttons.Add(edit()); buttons.Add(delete());
  246. }
  247. }
  248. break;
  249. case "1":
  250. //质检专员可以进行编辑 zhengbingbing 20191017
  251. if (code == "ZJZY")
  252. buttons.Add(edit());
  253. //调度专员 中心领导管理员 管理员
  254. if (code == "ZXLD" || code == "ZXLDGLYGLY" || code == "GLY" || code == "DDZG")
  255. {
  256. if (type != "109")
  257. buttons.Add(Report());
  258. buttons.Add(edit());
  259. buttons.Add(back()); buttons.Add(assign());
  260. //buttons.Add(approval());
  261. //20190315提出需求 操作-领导批示改为转督办 (20190327 zhengbingbing)
  262. //buttons.Add(turnsee());
  263. buttons.Add(instruct());
  264. }
  265. break;
  266. case "2":
  267. //二级网络单位 管理员
  268. if (code == "WLDW" || code == "GLY")
  269. {
  270. buttons.Add(receive()); buttons.Add(reback());
  271. }
  272. //调度专员 中心领导管理员 管理员
  273. if (code == "ZXLD" || code == "ZXLDGLYGLY" || code == "GLY" || code == "DDZG")
  274. {
  275. buttons.Add(takeback());
  276. buttons.Add(turnsee()); //buttons.Add(oversee());
  277. buttons.Add(supervision());
  278. }
  279. //质检专员
  280. if (code == "ZJZY")
  281. buttons.Add(turnsee());
  282. break;
  283. case "3":
  284. //调度专员 中心领导管理员 管理员
  285. if (code == "ZXLD" || code == "ZXLDGLYGLY" || code == "GLY" || code == "DDZG")
  286. {
  287. buttons.Add(auditreback());
  288. }
  289. break;
  290. case "4":
  291. //二级网络单位 管理员
  292. if (code == "WLDW" || code == "GLY" || code == "DDZG")
  293. {
  294. buttons.Add(feedback());
  295. if (iszbdw == "1" || code == "GLY" || code == "DDZG")
  296. {
  297. if (type == "109")
  298. buttons.Add(ejdelay());
  299. else
  300. buttons.Add(delay());
  301. if (ispd == "0" || ispd == "")
  302. {
  303. buttons.Add(split());
  304. }
  305. else
  306. {
  307. buttons.Add(withdraw());
  308. }
  309. if (ispd == "3")
  310. {
  311. buttons.Add(auditdeal());
  312. }
  313. }
  314. }
  315. //调度专员 中心领导管理员 管理员
  316. if (code == "ZXLD" || code == "ZXLDGLYGLY" || code == "GLY" || code == "DDZG")
  317. {
  318. buttons.Add(takeback());
  319. buttons.Add(turnsee()); //buttons.Add(oversee());
  320. buttons.Add(supervision());
  321. }
  322. //质检专员
  323. if (code == "ZJZY")
  324. buttons.Add(turnsee());
  325. //三级网络单位
  326. if (code == "EJWLDW")
  327. {
  328. if (ispd == "1")
  329. {
  330. buttons.Add(sign()); buttons.Add(refuse());
  331. }
  332. if (ispd == "2")
  333. {
  334. buttons.Add(feedback());
  335. }
  336. }
  337. break;
  338. case "5":
  339. //调度专员 中心领导管理员 管理员
  340. if (code == "ZXLD" || code == "ZXLDGLYGLY" || code == "GLY" || code == "DDZG")
  341. {
  342. buttons.Add(auditdelay());
  343. }
  344. //三级网络单位
  345. if (code == "EJWLDW")
  346. {
  347. if (ispd == "1")
  348. {
  349. buttons.Add(sign()); buttons.Add(refuse());
  350. }
  351. if (ispd == "2")
  352. {
  353. buttons.Add(feedback());
  354. }
  355. }
  356. break;
  357. case "6":
  358. #region
  359. //中心话务员 坐席班长 管理员
  360. //if (code == "ZXHWY" || code == "ZXBZ" || code == "GLY")
  361. //{
  362. // buttons.Add(visit());
  363. //}
  364. //20190315提出需求,回访由质检人员操作 (20190327 zhengbingbing)
  365. #endregion
  366. //质检专员(ZJZY)
  367. if (code == "ZJZY" || code == "GLY" || code == "DDZG")
  368. {
  369. buttons.Add(visit());
  370. }
  371. break;
  372. case "7":
  373. //调度专员 中心领导管理员 管理员
  374. //if (code == "ZXLD" || code == "ZXLDGLYGLY" || code == "GLY")
  375. if (code == "ZJZY" || code == "GLY" || code == "DDZG")
  376. {
  377. //buttons.Add(reload());
  378. buttons.Add(subreload());
  379. if (code == "ZJZY" || code == "GLY"|| code == "ZXHWY" || code == "ZXLD" || code == "YSZY" || code == "DDZG" || code == "MTDD")
  380. {
  381. if (type == "109")
  382. buttons.Add(visits());
  383. else
  384. buttons.Add(end());
  385. }
  386. }
  387. break;
  388. case "8":
  389. //二级网络单位 管理员
  390. if (code == "WLDW" || code == "GLY" || code == "DDZG")
  391. {
  392. buttons.Add(receive()); buttons.Add(reback());
  393. }
  394. //调度专员 中心领导管理员 管理员
  395. if (code == "ZXLD" || code == "ZXLDGLYGLY" || code == "GLY" || code == "DDZG")
  396. {
  397. buttons.Add(takeback());
  398. //buttons.Add(oversee());
  399. buttons.Add(turnsee());
  400. buttons.Add(supervision());
  401. }
  402. //质检专员
  403. if (code == "ZJZY")
  404. buttons.Add(turnsee());
  405. break;
  406. case "9":
  407. //调度专员 中心领导管理员 管理员
  408. if ((code == "ZXLD" || code == "ZXLDGLYGLY" || code == "GLY" || code == "DDZG") && iszb == "1")
  409. {
  410. buttons.Add(back());
  411. }
  412. break;
  413. case "10":
  414. //坐席班长 管理员
  415. #region
  416. //20190715 去掉审核环节 zhengbingbing
  417. if (code == "ZXBZ" || code == "GLY" || code == "DDZG")
  418. buttons.Add(audit());
  419. #endregion
  420. if (code == "ZXHWY" || code == "ZXBZ" || code == "GLY" || code == "DDZG")
  421. buttons.Add(edit());
  422. break;
  423. case "11":
  424. //调度专员 中心领导管理员 管理员
  425. if (code == "ZXLD" || code == "ZXLDGLYGLY" || code == "GLY" || code == "DDZG")
  426. {
  427. buttons.Add(reload()); buttons.Add(reject());
  428. }
  429. break;
  430. case "12":
  431. //督办专员(DBZY) 管理员
  432. if (code == "DBZY" || code == "GLY" || code == "DDZG")
  433. {
  434. buttons.Add(oversee()); buttons.Add(turnnosee());
  435. }
  436. break;
  437. case "13":
  438. if (code == "ZJZY" || code == "GLY" || code == "DDZG")
  439. {
  440. buttons.Add(subreload());
  441. buttons.Add(end());
  442. }
  443. break;
  444. }
  445. //buttons.Add(export());
  446. //调度专员 中心领导管理员 管理员
  447. if (state != "0" && state != "9" && (code == "ZXLD" || code == "ZXLDGLYGLY" || code == "GLY" || code == "DDZG"))
  448. {
  449. buttons.Add(forceend());
  450. }
  451. return buttons;
  452. }
  453. #region 知识库操作权限
  454. /// <summary>
  455. /// 根据状态和角色代码获取操作按钮
  456. /// </summary>
  457. /// <param name="state"></param>
  458. /// <param name="code"></param>
  459. /// <param name="iszb"></param>
  460. /// <returns></returns>
  461. public static List<button> GetZSKButtons(string state, string rolecode,string createby,string nowuser)
  462. {
  463. //中心话务员(ZXHWY) 二级网络单位(WLDW) 管理员(GLY) 坐席班长(ZXBZ) 调度专员(ZXLD)
  464. //中心领导管理员(ZXLDGLYGLY) 话务主管(ZXBZ) 中心领导(ZXLDGLY) 话务组长(ZXBZ)
  465. //导播话务员(DBHWY) 网易新闻(11) 三级网络单位(EJWLDW) 民生播报(MSBB)
  466. //督办专员(DBZY) 质检专员(ZJZY)
  467. List<button> buttons = new List<button>();
  468. buttons.Add(zsk_query());
  469. switch (state)
  470. {//状态:0草稿,1 待审核,2审核通过,3审核不通过,4无效
  471. case "0":
  472. if (createby == nowuser || rolecode == "GLY")
  473. {
  474. buttons.Add(zsk_submit());
  475. //buttons.Add(zsk_edit());
  476. //buttons.Add(zsk_delete());
  477. }
  478. break;
  479. case "1":
  480. if (rolecode == "ZXLD" || rolecode == "ZXLDGLY" || rolecode == "ZXLDGLYGLY" || rolecode == "GLY")
  481. buttons.Add(zsk_audit());
  482. break;
  483. case "2":
  484. case "5":
  485. if (rolecode == "ZXHWY" || rolecode == "ZXBZ" || rolecode == "ZXLD" || rolecode == "DBZY" || rolecode == "ZJZY" || rolecode == "GLY")
  486. {
  487. //解决 未解决
  488. buttons.Add(zsk_solved()); buttons.Add(zsk_unsolved());
  489. }
  490. //if (rolecode == "GLY")
  491. // buttons.Add(zsk_delete());
  492. break;
  493. case "3":
  494. case "4":
  495. if (createby == nowuser || rolecode == "GLY")
  496. {
  497. buttons.Add(zsk_submit());
  498. //buttons.Add(zsk_edit());
  499. //buttons.Add(zsk_delete());
  500. }
  501. break;
  502. }
  503. if (createby == nowuser || rolecode == "GLY")
  504. {
  505. buttons.Add(zsk_edit());
  506. buttons.Add(zsk_delete());
  507. }
  508. return buttons;
  509. }
  510. #endregion
  511. }
  512. }