Sin descripción

ButtonGroup.cs 20KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552
  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 IsExport()
  146. {
  147. return new button(34, "回传");
  148. }
  149. public static button Result()
  150. {
  151. return new button(35, "编辑");
  152. }
  153. public static button Upload()
  154. {
  155. return new button(36, "上传");
  156. }
  157. public static button Remkers()
  158. {
  159. return new button(37, "备注");
  160. }
  161. public static button Runsend()
  162. {
  163. return new button(38, "转派");
  164. }
  165. public static button Reloadsuber()
  166. {
  167. return new button(39, "重办待交办");
  168. }
  169. public static button Reminder()
  170. {
  171. return new button(40, "催办");
  172. }
  173. #region 知识库操作按钮
  174. public static button zsk_query()
  175. {
  176. return new button(1, "查询");
  177. }
  178. public static button zsk_edit()
  179. {
  180. return new button(2, "编辑");
  181. }
  182. public static button zsk_delete()
  183. {
  184. return new button(3, "删除");
  185. }
  186. public static button zsk_submit()
  187. {
  188. return new button(4, "提交");
  189. }
  190. public static button zsk_audit()
  191. {
  192. return new button(5, "审核");
  193. }
  194. public static button zsk_solved()
  195. {
  196. return new button(6, "解决");
  197. }
  198. public static button zsk_unsolved()
  199. {
  200. return new button(7, "未解决");
  201. }
  202. #endregion
  203. /// <summary>
  204. /// 按钮类
  205. /// </summary>
  206. public class button
  207. {
  208. public int key { get; set; }
  209. public string value { get; set; }
  210. public button(int _key, string _value) {
  211. key = _key;
  212. value = _value;
  213. }
  214. }
  215. /// <summary>
  216. /// 根据状态和角色代码获取操作按钮
  217. /// </summary>
  218. /// <param name="state"></param>
  219. /// <param name="code"></param>
  220. /// <param name="iszb"></param>
  221. /// <returns></returns>
  222. public static List<button> GetButtons(string state, string code, string iszb="", string iszbdw="",string ispd="",string ishc = "")
  223. {
  224. //中心话务员(ZXHWY) 二级网络单位(WLDW) 管理员(GLY) 坐席班长(ZXBZ) 调度专员(ZXLD)
  225. //中心领导管理员(ZXLDGLYGLY) 话务主管(ZXBZ) 中心领导(ZXLDGLY) 话务组长(ZXBZ)
  226. //导播话务员(DBHWY) 网易新闻(11) 三级网络单位(EJWLDW) 民生播报(MSBB)
  227. //督办专员(DBZY) 质检专员(ZJZY)
  228. //调度主管(DDZG)
  229. List<button> buttons = new List<button>();
  230. buttons.Add(query());
  231. switch (state)
  232. {
  233. case "0":
  234. //调度专员 质检专员可以进行编辑 zhengbingbing 20191017
  235. if (code == "ZXLD" || code == "ZJZY")
  236. {
  237. buttons.Add(delete());
  238. buttons.Add(edit());
  239. }
  240. //中心话务员 坐席班长 管理员
  241. if (code == "ZXHWY" || code == "ZXBZ" || code == "GLY" || code == "DDZG")
  242. {
  243. buttons.Add(submit());
  244. buttons.Add(edit()); buttons.Add(delete());
  245. }
  246. break;
  247. case "1":
  248. //质检专员可以进行编辑 zhengbingbing 20191017
  249. if (code == "ZJZY")
  250. buttons.Add(edit());
  251. //调度专员 中心领导管理员 管理员
  252. if (code == "ZXLD" || code == "ZXLDGLYGLY" || code == "GLY" || code == "DDZG")
  253. {
  254. // buttons.Add(approval());
  255. buttons.Add(edit());
  256. // buttons.Add(back());
  257. buttons.Add(assign());
  258. //buttons.Add(approval());
  259. //20190315提出需求 操作-领导批示改为转督办 (20190327 zhengbingbing)
  260. //buttons.Add(turnsee());
  261. // buttons.Add(instruct());
  262. }
  263. break;
  264. case "2":
  265. //二级网络单位 管理员
  266. if (code == "WLDW" || code == "GLY")
  267. {
  268. buttons.Add(receive()); buttons.Add(reback());
  269. }
  270. //调度专员 中心领导管理员 管理员
  271. if (code == "ZXLD" || code == "ZXLDGLYGLY" || code == "GLY" || code == "DDZG")
  272. {
  273. // buttons.Add(approval());
  274. buttons.Add(takeback());
  275. buttons.Add(Reminder());
  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. // buttons.Add(approval());
  289. }
  290. break;
  291. case "4":
  292. //二级网络单位 管理员
  293. if (code == "ZXLD" || code == "WLDW" || code == "GLY" || code == "DDZG")
  294. {
  295. buttons.Add(feedback());
  296. if (code != "WLDW")
  297. {
  298. buttons.Add(Runsend());
  299. }
  300. if (iszbdw == "1" || code == "GLY" || code == "DDZG")
  301. {
  302. buttons.Add(reback());
  303. buttons.Add(delay());
  304. if (ispd == "0" || ispd == "")
  305. {
  306. // buttons.Add(split());
  307. }
  308. else
  309. {
  310. // buttons.Add(withdraw());
  311. }
  312. if (ispd == "3")
  313. {
  314. buttons.Add(auditdeal());
  315. }
  316. }
  317. }
  318. //调度专员 中心领导管理员 管理员
  319. if (code == "ZXLD" || code == "ZXLDGLYGLY" || code == "GLY" || code == "DDZG")
  320. {
  321. // buttons.Add(approval());
  322. buttons.Add(takeback());
  323. buttons.Add(Reminder());
  324. // buttons.Add(turnsee()); //buttons.Add(oversee());
  325. // buttons.Add(supervision());
  326. }
  327. //质检专员
  328. // if (code == "ZJZY")
  329. // buttons.Add(turnsee());
  330. //三级网络单位
  331. if (code == "EJWLDW")
  332. {
  333. if (ispd == "1")
  334. {
  335. buttons.Add(sign()); buttons.Add(refuse());
  336. }
  337. if (ispd == "2")
  338. {
  339. buttons.Add(feedback());
  340. }
  341. }
  342. break;
  343. case "5":
  344. //调度专员 中心领导管理员 管理员
  345. if (code == "ZXLD" || code == "ZXLDGLYGLY" || code == "GLY" || code == "DDZG")
  346. {
  347. // buttons.Add(approval());
  348. buttons.Add(auditdelay());
  349. }
  350. //三级网络单位
  351. if (code == "EJWLDW")
  352. {
  353. if (ispd == "1")
  354. {
  355. buttons.Add(sign()); buttons.Add(refuse());
  356. }
  357. if (ispd == "2")
  358. {
  359. buttons.Add(feedback());
  360. }
  361. }
  362. break;
  363. case "6":
  364. #region
  365. //中心话务员 坐席班长 管理员
  366. //if (code == "ZXHWY" || code == "ZXBZ" || code == "GLY"||code == "ZXLD")
  367. // {
  368. // buttons.Add(edit());
  369. // }
  370. //20190315提出需求,回访由质检人员操作 (20190327 zhengbingbing)
  371. #endregion
  372. //质检专员(ZJZY)
  373. if (code == "ZJZY" || code == "GLY" || code == "DDZG"|| code == "WLDW")
  374. {
  375. buttons.Add(visit());
  376. }
  377. break;
  378. case "7":
  379. //调度专员 中心领导管理员 管理员
  380. //if (code == "ZXLD" || code == "ZXLDGLYGLY" || code == "GLY")
  381. if (code == "ZXLD" || code == "ZJZY" || code == "GLY" || code == "DDZG")
  382. {
  383. //buttons.Add(reload());
  384. buttons.Add(subreload());
  385. buttons.Add(end());
  386. buttons.Add(Result());
  387. // buttons.Add(approval());
  388. }
  389. if (code == "WLDW")
  390. buttons.Add(Upload());
  391. break;
  392. case "8":
  393. //二级网络单位 管理员
  394. if (code == "WLDW" || code == "GLY" || code == "DDZG")
  395. {
  396. buttons.Add(receive()); buttons.Add(reback());
  397. }
  398. //调度专员 中心领导管理员 管理员
  399. if (code == "ZXLD" || code == "ZXLDGLYGLY" || code == "GLY" || code == "DDZG")
  400. {
  401. // buttons.Add(approval());
  402. buttons.Add(takeback());
  403. //buttons.Add(oversee());
  404. // buttons.Add(turnsee());
  405. // buttons.Add(supervision());
  406. }
  407. //质检专员
  408. // if (code == "ZJZY")
  409. // buttons.Add(turnsee());
  410. break;
  411. case "9":
  412. //调度专员 中心领导管理员 管理员
  413. if (code == "ZXLD" || code == "ZXLDGLYGLY" || code == "GLY" || code == "DDZG" )
  414. {
  415. // buttons.Add(approval());
  416. // if (iszb == "1")
  417. // buttons.Add(back());
  418. if (ishc !="1")
  419. {
  420. buttons.Add(IsExport());
  421. buttons.Add(subreload());
  422. buttons.Add(Reloadsuber());
  423. }
  424. }
  425. if (code == "WLDW")
  426. buttons.Add(Upload());
  427. break;
  428. case "10":
  429. //坐席班长 管理员
  430. #region
  431. //20190715 去掉审核环节 zhengbingbing
  432. if (code == "ZXBZ" || code == "GLY" || code == "DDZG")
  433. buttons.Add(audit());
  434. #endregion
  435. if (code == "ZXHWY" || code == "ZXBZ" || code == "GLY" || code == "DDZG")
  436. buttons.Add(edit());
  437. break;
  438. case "11":
  439. //调度专员 中心领导管理员 管理员
  440. if (code == "ZXLD" || code == "ZXLDGLYGLY" || code == "GLY" || code == "DDZG")
  441. {
  442. // buttons.Add(approval());
  443. buttons.Add(reload());// buttons.Add(reject());Reloadsuber
  444. }
  445. break;
  446. case "12":
  447. //督办专员(DBZY) 管理员
  448. if (code == "DBZY" || code == "GLY" || code == "DDZG")
  449. {
  450. // buttons.Add(oversee()); buttons.Add(turnnosee());
  451. }
  452. break;
  453. case "13":
  454. if (code == "ZJZY" || code == "GLY" || code == "DDZG")
  455. {
  456. buttons.Add(subreload());
  457. buttons.Add(end());
  458. }
  459. break;
  460. case "14":
  461. if (code == "ZXLD" || code == "GLY" || code == "DDZG")
  462. {
  463. buttons.Add(approval());
  464. }
  465. break;
  466. }
  467. //buttons.Add(export());
  468. //调度专员 中心领导管理员 管理员
  469. if (state != "0" && state != "9"&&state !="14" && (code == "ZXLD" || code == "ZXLDGLYGLY" || code == "GLY" || code == "DDZG"))
  470. {
  471. buttons.Add(forceend());
  472. }
  473. buttons.Add(Remkers());
  474. return buttons;
  475. }
  476. #region 知识库操作权限
  477. /// <summary>
  478. /// 根据状态和角色代码获取操作按钮
  479. /// </summary>
  480. /// <param name="state"></param>
  481. /// <param name="code"></param>
  482. /// <param name="iszb"></param>
  483. /// <returns></returns>
  484. public static List<button> GetZSKButtons(string state, string rolecode,string createby,string nowuser)
  485. {
  486. //中心话务员(ZXHWY) 二级网络单位(WLDW) 管理员(GLY) 坐席班长(ZXBZ) 调度专员(ZXLD)
  487. //中心领导管理员(ZXLDGLYGLY) 话务主管(ZXBZ) 中心领导(ZXLDGLY) 话务组长(ZXBZ)
  488. //导播话务员(DBHWY) 网易新闻(11) 三级网络单位(EJWLDW) 民生播报(MSBB)
  489. //督办专员(DBZY) 质检专员(ZJZY)
  490. List<button> buttons = new List<button>();
  491. buttons.Add(zsk_query());
  492. switch (state)
  493. {//状态:0草稿,1 待审核,2审核通过,3审核不通过,4无效
  494. case "0":
  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. case "1":
  503. if (rolecode == "ZXLD" || rolecode == "ZXLDGLY" || rolecode == "ZXLDGLYGLY" || rolecode == "GLY")
  504. buttons.Add(zsk_audit());
  505. break;
  506. case "2":
  507. case "5":
  508. if (rolecode == "ZXHWY" || rolecode == "ZXBZ" || rolecode == "ZXLD" || rolecode == "DBZY" || rolecode == "ZJZY" || rolecode == "GLY")
  509. {
  510. //解决 未解决
  511. buttons.Add(zsk_solved()); buttons.Add(zsk_unsolved());
  512. }
  513. //if (rolecode == "GLY")
  514. // buttons.Add(zsk_delete());
  515. break;
  516. case "3":
  517. case "4":
  518. if (createby == nowuser || rolecode == "GLY")
  519. {
  520. buttons.Add(zsk_submit());
  521. //buttons.Add(zsk_edit());
  522. //buttons.Add(zsk_delete());
  523. }
  524. break;
  525. }
  526. if (createby == nowuser || rolecode == "GLY")
  527. {
  528. buttons.Add(zsk_edit());
  529. buttons.Add(zsk_delete());
  530. }
  531. return buttons;
  532. }
  533. #endregion
  534. }
  535. }