Nenhuma Descrição

viewWorkOrder.vue 17KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509
  1. <template>
  2. <view class="wrapper">
  3. <view>
  4. <uni-segmented-control :current="current" :values="items" @clickItem="onClickItem" styleType="text" activeColor="#4cd964"></uni-segmented-control>
  5. <view>
  6. <view v-show="current === 0">
  7. <view class="detailContent">
  8. <view class="contentTable">
  9. <text class="contentTitle">工单编号:</text>
  10. <text class="contentText">{{ detailContentData.workOrderId }}</text>
  11. </view>
  12. <view class="contentTable">
  13. <text class="contentTitle">状态:</text>
  14. <text class="contentText">{{ detailContentData.F_WorkState | workStateFilters(detailContentData) }}</text>
  15. </view>
  16. <view class="contentTable">
  17. <text class="contentTitle">受理人:</text>
  18. <text class="contentText">{{ detailContentData.F_CreateUser | acceptPersonFilters(detailContentData) }}</text>
  19. </view>
  20. <view class="contentTable">
  21. <text class="contentTitle">处理方式:</text>
  22. <text class="contentText">{{ detailContentData.F_IsResult | dealWithWayFilters }}</text>
  23. </view>
  24. <view class="contentTable">
  25. <text class="contentTitle">录入时间:</text>
  26. <text class="contentText">{{ detailContentData.F_CreateTime }}</text>
  27. </view>
  28. <view class="contentTable">
  29. <text class="contentTitle">提交时间:</text>
  30. <text class="contentText">{{ detailContentData.F_SubmitTime }}</text>
  31. </view>
  32. <view class="contentTable">
  33. <text class="contentTitle">办理时间:</text>
  34. <text class="contentText">{{ detailContentData.F_DealTime }}</text>
  35. </view>
  36. <view class="contentTable">
  37. <text class="contentTitle">结案时间:</text>
  38. <text class="contentText">{{ detailContentData.F_CloseTime }}</text>
  39. </view>
  40. <view class="contentTable">
  41. <text class="contentTitle">三方通话:</text>
  42. <text class="contentText">{{ detailContentData.F_Business | threeWayCallFilters }}</text>
  43. </view>
  44. <view class="contentTable">
  45. <text class="contentTitle">反映类型:</text>
  46. <text class="contentText">{{ detailContentData.TypeName1 }}</text>
  47. </view>
  48. <view class="contentTable">
  49. <text class="contentTitle">紧急程度:</text>
  50. <text class="contentText">{{ detailContentData.F_Level | levelFilters }}</text>
  51. </view>
  52. <view class="contentTable">
  53. <text class="contentTitle">反映类别:</text>
  54. <text class="contentText">{{ detailContentData.KeyName }}</text>
  55. </view>
  56. <view class="contentTable">
  57. <text class="contentTitle">密级:</text>
  58. <text class="contentText">{{ detailContentData.F_IsProtect | isProtectFilters }}</text>
  59. </view>
  60. <view class="contentTable">
  61. <text class="contentTitle">办理单位:</text>
  62. <text class="contentText">{{ detailContentData.deptname }}</text>
  63. </view>
  64. <view class="contentTable">
  65. <text class="contentTitle">处理结果:</text>
  66. <text class="contentText">{{ detailContentData.F_Result }}</text>
  67. </view>
  68. <view class="contentTable">
  69. <text class="contentTitle">追加回复:</text>
  70. <text class="contentText">{{ detailContentData.F_AdditionalReply }}</text>
  71. </view>
  72. <view class="contentTable">
  73. <text class="contentTitle">结案意见:</text>
  74. <text class="contentText">{{ detailContentData.F_FinalOpinion }}</text>
  75. </view>
  76. <view class="contentTable">
  77. <text class="contentTitle">附件:</text>
  78. <view class="contentText">
  79. <show-file :file="File"></show-file>
  80. </view>
  81. <!-- <text >{{ detailContentData.SourceName }}</text> -->
  82. </view>
  83. </view>
  84. </view>
  85. <view v-show="current === 1">
  86. <view class="detailContent">
  87. <view class="contentBlock">
  88. <text class="title">二级办理单位</text>
  89. <view class="content" v-for="item in twoAssignedInformation" :key="item.F_Id">
  90. <view class="contentTable">
  91. <text class="contentTitle">交办时间:</text>
  92. <text class="contentText">{{ item.F_CreateTime }}</text>
  93. </view>
  94. <view class="contentTable">
  95. <text class="contentTitle">办理时限:</text>
  96. <text class="contentText">{{ item.F_LimitTime }}</text>
  97. </view>
  98. <view class="contentTable">
  99. <text class="contentTitle">承办单位:</text>
  100. <text class="contentText">{{ item.DeptName }}</text>
  101. </view>
  102. <view class="contentTable">
  103. <text class="contentTitle">交办意见:</text>
  104. <text class="contentText">{{ item.F_AssignedOpinion }}</text>
  105. </view>
  106. </view>
  107. <yiLine>
  108. <view></view>
  109. </yiLine>
  110. </view>
  111. <view class="contentBlock">
  112. <text class="title">三级办理单位</text>
  113. <view class="content" v-for="item in threeAssignedInformation" :key="item.F_Id">
  114. <view class="contentTable">
  115. <text class="contentTitle">交办时间:</text>
  116. <text class="contentText">{{ item.F_CreateTime }}</text>
  117. </view>
  118. <view class="contentTable">
  119. <text class="contentTitle">办理时限:</text>
  120. <text class="contentText">{{ item.F_LimitTime }}</text>
  121. </view>
  122. <view class="contentTable">
  123. <text class="contentTitle">承办单位:</text>
  124. <text class="contentText">{{ item.DeptName }}</text>
  125. </view>
  126. <view class="contentTable">
  127. <text class="contentTitle">交办意见:</text>
  128. <text class="contentText">{{ item.F_AssignedOpinion }}</text>
  129. </view>
  130. </view>
  131. <yiLine>
  132. <view></view>
  133. </yiLine>
  134. </view>
  135. <view class="contentBlock">
  136. <text class="title">退回审核</text>
  137. <view class="content" v-for="item in backAuditList" :key="item.F_Id">
  138. <view class="contentTable">
  139. <text class="contentTitle">申请时间:</text>
  140. <text class="contentText">{{ item.F_CreateTime }}</text>
  141. </view>
  142. <view class="contentTable">
  143. <text class="contentTitle">申请原因:</text>
  144. <text class="contentText">{{ item.F_Result }}</text>
  145. </view>
  146. <view class="contentTable">
  147. <text class="contentTitle">状态:</text>
  148. <text class="contentText">{{ item.F_IsAudit | backauditFilters }}</text>
  149. </view>
  150. <view class="contentTable">
  151. <text class="contentTitle">审核时间:</text>
  152. <text class="contentText">{{ item.F_AuditTime }}</text>
  153. </view>
  154. <view class="contentTable">
  155. <text class="contentTitle">审核意见:</text>
  156. <text class="contentText">{{ item.F_AuditReason }}</text>
  157. </view>
  158. <view class="contentTable">
  159. <text class="contentTitle">申请单位:</text>
  160. <text class="contentText">{{ item.DeptName }}</text>
  161. </view>
  162. <view class="contentTable">
  163. <text class="contentTitle">附件:</text>
  164. <view class="contentText">
  165. </view>
  166. </view>
  167. </view>
  168. <yiLine>
  169. <view></view>
  170. </yiLine>
  171. </view>
  172. </view>
  173. </view>
  174. <view v-show="current === 2"></view>
  175. </view>
  176. </view>
  177. </view>
  178. </template>
  179. <script>
  180. import yiLine from "../../components/yi-line/yi-line.vue"
  181. import showFile from "../../components/showFile/index.vue"
  182. export default {
  183. components: {
  184. yiLine,
  185. showFile
  186. },
  187. data() {
  188. return {
  189. wid: "", // 工单编号
  190. detailContentData: {}, // 详情内容
  191. twoAssignedInformation: [], // 二级交办信息
  192. threeAssignedInformation: [], // 三级交办信息
  193. backAuditList: [], // 退回审核
  194. current: 0,
  195. items: ["工单信息", "交办信息", "市长批示", "工单驳回", "办理情况", "延时审核", "回访信息", "督办信息", "市民催办", "办理过程", "市民评议", "多媒体审核"],
  196. File: [
  197. {
  198. "F_AddTime": "2021-12-08 16:40:34",
  199. "F_FileId": 86595,
  200. "F_FileName": "(20211208164033996)588812181.jpg",
  201. "F_FileType": ".jpg",
  202. "F_FileUrl": " http://docking.zwfw.anyang.gov.cn:9998/Upload/Files/2021/12/08/(20211208164033996)588812181.jpg",
  203. "F_Size": 117990,
  204. "F_UserCode": "10199"
  205. },
  206. {
  207. "F_AddTime": "2021-12-08 16:40:34",
  208. "F_FileId": 86595,
  209. "F_FileName": "(20211208164033996)588812181.jpg",
  210. "F_FileType": ".jpg",
  211. "F_FileUrl": " http://docking.zwfw.anyang.gov.cn:9998/Upload/Files/2021/12/08/(20211208164033996)588812181.jpg",
  212. "F_Size": 117990,
  213. "F_UserCode": "10199"
  214. },
  215. {
  216. "F_AddTime": "2021-12-08 16:40:34",
  217. "F_FileId": 86595,
  218. "F_FileName": "(20211208164033996)588812181.jpg",
  219. "F_FileType": ".jpg",
  220. "F_FileUrl": " http://docking.zwfw.anyang.gov.cn:9998/Upload/Files/2021/12/08/(20211208164033996)588812181.jpg",
  221. "F_Size": 117990,
  222. "F_UserCode": "10199"
  223. },
  224. {
  225. "F_AddTime": "2021-12-08 16:40:34",
  226. "F_FileId": 86595,
  227. "F_FileName": "(20211208164033996)588812181.jpg",
  228. "F_FileType": ".jpg",
  229. "F_FileUrl": " http://docking.zwfw.anyang.gov.cn:9998/Upload/Files/2021/12/08/(20211208164033996)588812181.jpg",
  230. "F_Size": 117990,
  231. "F_UserCode": "10199"
  232. },
  233. {
  234. "F_AddTime": "2021-12-08 16:40:34",
  235. "F_FileId": 86595,
  236. "F_FileName": "(20211208164033996)588812181.jpg",
  237. "F_FileType": ".jpg",
  238. "F_FileUrl": " http://docking.zwfw.anyang.gov.cn:9998/Upload/Files/2021/12/08/(20211208164033996)588812181.jpg",
  239. "F_Size": 117990,
  240. "F_UserCode": "10199"
  241. },
  242. {
  243. "F_AddTime": "2021-12-08 16:40:34",
  244. "F_FileId": 86595,
  245. "F_FileName": "(20211208164033996)588812181.jpg",
  246. "F_FileType": ".pdf",
  247. "F_FileUrl": " http://docking.zwfw.anyang.gov.cn:9998/Upload/Files/2021/12/08/(20211208164033996)588812181.jpg",
  248. "F_Size": 117990,
  249. "F_UserCode": "10199"
  250. },
  251. {
  252. "F_AddTime": "2021-12-08 16:40:34",
  253. "F_FileId": 86595,
  254. "F_FileName": "(20211208164033996)588812181.jpg",
  255. "F_FileType": ".pdf",
  256. "F_FileUrl": " http://docking.zwfw.anyang.gov.cn:9998/Upload/Files/2021/12/08/(20211208164033996)588812181.jpg",
  257. "F_Size": 117990,
  258. "F_UserCode": "10199"
  259. },
  260. {
  261. "F_AddTime": "2021-12-08 16:40:34",
  262. "F_FileId": 86595,
  263. "F_FileName": "(20211208164033996)588812181.jpg",
  264. "F_FileType": ".pdf",
  265. "F_FileUrl": " http://docking.zwfw.anyang.gov.cn:9998/Upload/Files/2021/12/08/(20211208164033996)588812181.jpg",
  266. "F_Size": 117990,
  267. "F_UserCode": "10199"
  268. },
  269. ]
  270. }
  271. },
  272. onLoad(option) {
  273. this.wid = option.wid
  274. // 获取详情
  275. this.getDetail("0")
  276. // 获取交办信息
  277. // this.getDetail("1")
  278. },
  279. methods: {
  280. // 返回列表页
  281. returnPage() {
  282. uni.$emit("updateList", {})
  283. uni.navigateBack({
  284. delta: 2,
  285. })
  286. },
  287. //获取详情
  288. getDetail(type) {
  289. let params = {
  290. type: type,
  291. workorderid: this.wid,
  292. token: uni.getStorageSync("token"),
  293. }
  294. this.$http
  295. .get("/WorkOrder/GetWorkOrderNew", params)
  296. .then((response) => {
  297. if (response.state.toLowerCase() === "success") {
  298. let data = response.data
  299. if (String(type) === "0") {
  300. this.detailContentData = Object.assign({}, data.data[0])
  301. } else if (String(type) === "1") {
  302. this.twoAssignedInformation = data.jbdata;
  303. this.threeAssignedInformation = data.ejjbdata;
  304. this.backAuditList = data.thdata;
  305. }
  306. }
  307. })
  308. .catch((e) => {
  309. console.log(e)
  310. })
  311. },
  312. onClickItem(e) {
  313. this.current = e.currentIndex;
  314. switch (e.currentIndex) {
  315. case 1:
  316. // 获取交办信息
  317. this.getDetail("1");
  318. break;
  319. default:
  320. break;
  321. }
  322. },
  323. },
  324. filters: {
  325. workStateFilters(value, data) {
  326. let str;
  327. switch(value) {
  328. case 0:
  329. let entryTimeDate = new Date(Date.parse(Data[0].F_CreateTime));
  330. let defaultTimeDate = new Date(Date.parse("2020-10-16 00:00:00"));
  331. if (entryTimeDate >= defaultTimeDate) {
  332. str = "新工单";
  333. } else {
  334. str = "新工单(历史工单)";
  335. }
  336. break;
  337. case 1:
  338. str = "待交办";
  339. break;
  340. case 2:
  341. str = "待查收";
  342. break;
  343. case 3:
  344. str = "退回审核中";
  345. break;
  346. case 4:
  347. str = "办理中";
  348. break;
  349. case 5:
  350. str = "延时审核中";
  351. break;
  352. case 6:
  353. str = "已办理";
  354. break;
  355. case 7:
  356. str = "待回访";
  357. break;
  358. case 8:
  359. if (String(data.F_Identification) === "0" ) {
  360. str = "重置转发";
  361. } else if (String(data.F_Identification) === "1") {
  362. str = "退回重办";
  363. } else {
  364. str = "重办中";
  365. }
  366. break;
  367. case 9:
  368. str = "已结案";
  369. break;
  370. case 10:
  371. str = "待审核";
  372. break;
  373. case 11:
  374. str = "重办待交办";
  375. break;
  376. case 13:
  377. str = "重办驳回";
  378. break;
  379. default:
  380. str = "";
  381. break;
  382. }
  383. return str
  384. },
  385. acceptPersonFilters(value, data) {
  386. let str;
  387. switch(data.F_InfoSource) {
  388. case 1:
  389. str = data.F_CreateUser;
  390. break;
  391. default:
  392. str = data.F_CusName;
  393. break;
  394. }
  395. return str;
  396. },
  397. dealWithWayFilters(value) {
  398. let str;
  399. switch(value) {
  400. case 0:
  401. str = "网络转办";
  402. break;
  403. case 1:
  404. str = "当即办理";
  405. break;
  406. default:
  407. str = "";
  408. break;
  409. }
  410. return str;
  411. },
  412. threeWayCallFilters(value) {
  413. let str;
  414. switch(value) {
  415. case 1:
  416. str = "是";
  417. break;
  418. default:
  419. str = "否";
  420. break;
  421. }
  422. return str;
  423. },
  424. levelFilters(value) {
  425. let str;
  426. switch(value) {
  427. case 1:
  428. str = "普通";
  429. break;
  430. default:
  431. str = "紧急";
  432. break;
  433. }
  434. return str;
  435. },
  436. isProtectFilters(value) {
  437. let str;
  438. switch(value) {
  439. case 0:
  440. str = "普通";
  441. break;
  442. default:
  443. str = "保密";
  444. break;
  445. }
  446. return str;
  447. },
  448. backauditFilters(value) {
  449. let str;
  450. switch(String(value)) {
  451. case "1":
  452. str = "同意";
  453. break;
  454. case "2":
  455. str = "拒绝";
  456. break;
  457. default:
  458. str = "";
  459. break;
  460. }
  461. return str;
  462. }
  463. }
  464. }
  465. </script>
  466. <style lang="scss">
  467. .wrapper {
  468. padding: 10px 10px 0 10px;
  469. .segmented-control {
  470. width: 100%;
  471. overflow: auto;
  472. /deep/ .segmented-control__item {
  473. white-space: nowrap;
  474. margin-right: 8px;
  475. }
  476. /deep/ .segmented-control__item:last-child {
  477. margin-right: 0px;
  478. }
  479. }
  480. .detailContent {
  481. margin: 15px 0 15px 0;
  482. .contentBlock {
  483. margin: 18px 0 0 0;
  484. .title {
  485. font-weight: 700;
  486. }
  487. .content {
  488. margin: 5px 0 5px 0;
  489. }
  490. }
  491. .contentTable {
  492. margin: 0 0 5px 0;
  493. .contentTitle {
  494. font-weight: 700;
  495. font-size: 14px;
  496. }
  497. .contentText {
  498. color: #525252;
  499. font-size: 14px;
  500. }
  501. }
  502. }
  503. }
  504. </style>