您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符

service.vue 13KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386
  1. <template>
  2. <view class="wrapper">
  3. <navBar title="九州ETC"></navBar>
  4. <view class="search-box">
  5. <image :src="`${$imgUrl}service/icon-search.png`" class="icon"></image>
  6. <input class="search" placeholder="请输入业务名称" />
  7. </view>
  8. <view class="content">
  9. <view class="left">
  10. <view :class="activeTab === '业务服务' ? 'menu active' : 'menu'" @click="tabHandle('业务服务')">
  11. <view :class="activeTab === '业务服务' ?'border on':'border'"></view>
  12. <view class="menu-text">业务服务</view>
  13. </view>
  14. <view :class="activeTab === '资金服务' ? 'menu active' : 'menu'" @click="tabHandle('资金服务')">
  15. <view :class="activeTab === '资金服务' ?'border on':'border'"></view>
  16. <view class="menu-text">资金服务</view>
  17. </view>
  18. <view :class="activeTab === '查询服务' ? 'menu active' : 'menu'" @click="tabHandle('查询服务')">
  19. <view :class="activeTab === '查询服务' ?'border on':'border'"></view>
  20. <view class="menu-text">查询服务</view>
  21. </view>
  22. <view :class="activeTab === '信息管理' ? 'menu active' : 'menu'" @click="tabHandle('信息管理')">
  23. <view :class="activeTab === '信息管理' ?'border on':'border'"></view>
  24. <view class="menu-text">信息管理</view>
  25. </view>
  26. <view :class="activeTab === '其他服务' ? 'menu active' : 'menu'" @click="tabHandle('其他服务')">
  27. <view :class="activeTab === '其他服务' ?'border on':'border'"></view>
  28. <view class="menu-text">其他服务</view>
  29. </view>
  30. </view>
  31. <view class="right">
  32. <view class="right-content" v-if="activeTab === '业务服务'">
  33. <view class="item-box" @click="toNext('/after-sale/card-deactivation-activation/select-car')">
  34. <view class="item bg-blue" :style="{'--background':bgBlue}">
  35. <image :src="`${$imgUrl}service/imgs/kqty.png`" />
  36. </view>
  37. <view class="text">卡签停用卡签启用</view>
  38. </view>
  39. <view class="item-box" @click="toNext('/after-sale/card-loss-reporting/select-car')">
  40. <view class="item bg-orange" :style="{'--background':bgOrange}">
  41. <image :src="`${$imgUrl}service/imgs/gs.png`" />
  42. </view>
  43. <view class="text text-orange">卡签挂失解除挂失</view>
  44. </view>
  45. <view class="item-box" @click="toNext('/after-sale/ETC-log-off/select-car')">
  46. <view class="item bg-blue" :style="{'--background':bgBlue}">
  47. <image :src="`${$imgUrl}service/imgs/zx.png`" />
  48. </view>
  49. <view class="text">卡签注销</view>
  50. </view>
  51. <view class="item-box" style="display: none;">
  52. <view class="item bg-blue" :style="{'--background':bgBlue}">
  53. <image :src="`${$imgUrl}service/imgs/xxcx.png`" />
  54. </view>
  55. <view class="text">卡签信息重写</view>
  56. </view>
  57. <view class="item-box" @click="toNext('/after-sale/card-supplement/reissueForm')" style="display: none;">
  58. <view class="item bg-blue" :style="{'--background':bgBlue}">
  59. <image :src="`${$imgUrl}service/imgs/hkhq.png`" />
  60. </view>
  61. <view class="text">补卡换卡补签换签</view>
  62. </view>
  63. <view class="item-box" @click="toNext('/after-sale/additional-equipment/additional-equipment-confirm')">
  64. <view class="item bg-blue" :style="{'--background':bgBlue}">
  65. <image :src="`${$imgUrl}service/imgs/zbOBUsb.png`" />
  66. </view>
  67. <view class="text">增补OBU设备</view>
  68. </view>
  69. <view class="item-box" @click="toNext('/after-sale/transfer-ownership/select-car-transfer')">
  70. <view class="item bg-blue" :style="{'--background':bgBlue}">
  71. <image :src="`${$imgUrl}service/imgs/etcgh.png`" />
  72. </view>
  73. <view class="text">ETC过户</view>
  74. </view>
  75. <view class="item-box" @click="toNext('/after-sale/pin-code-deblocking/select-car')">
  76. <view class="item bg-blue" :style="{'--background':bgBlue}">
  77. <image :src="`${$imgUrl}service/imgs/kpinjs.png`" />
  78. </view>
  79. <view class="text">卡Pin码解锁</view>
  80. </view>
  81. <view class="item-box" @click="toNext('/after-sale/equipment-upgrade/select-car')">
  82. <view class="item bg-blue" :style="{'--background':bgBlue}">
  83. <image :src="`${$imgUrl}service/imgs/kpinjs.png`" />
  84. </view>
  85. <view class="text">设备升级</view>
  86. </view>
  87. <view class="item-box" @click="toNext('/after-sale/card-Renewal/select-car')">
  88. <view class="item bg-blue" :style="{'--background':bgBlue}">
  89. <image :src="`${$imgUrl}service/imgs/kxq.png`" />
  90. </view>
  91. <view class="text">卡签续期</view>
  92. </view>
  93. <view class="item-box" @click="toNext('/after-sale/replace-equipment/select-car')">
  94. <view class="item bg-blue" :style="{'--background':bgBlue}">
  95. <image :src="`${$imgUrl}huan-icon.png`" />
  96. </view>
  97. <view class="text">更换设备</view>
  98. </view>
  99. <view class="item-box" @click="toNext('/after-sale/account-change/select-car')">
  100. <view class="item bg-blue" :style="{'--background':bgBlue}">
  101. <image :src='`${$imgUrl}huan-icon.png`' />
  102. </view>
  103. <view class="text">扣款账户变更</view>
  104. </view>
  105. <view class="item-box" @click="$util.navTo('/invoice/Invoice-mannager',true)">
  106. <view class="item bg-blue" :style="{'--background':bgBlue}">
  107. <image :src='`${$imgUrl}fa-icon.png`' />
  108. </view>
  109. <view class="text">发票管理</view>
  110. </view>
  111. <view class="item-box" @click="toNext('/after-sale/rescind-carId/rescind-carId-select')">
  112. <view class="item bg-blue" :style="{'--background':bgBlue}">
  113. <image :src="`${$imgUrl}service/imgs/jcclzy.png`" />
  114. </view>
  115. <view class="text">解除车牌占用</view>
  116. </view>
  117. <view class="item-box" @click="toNext('/after-sale/card-release-pending/select-car')">
  118. <view class="item bg-blue" :style="{'--background':bgBlue}">
  119. <image :src="`${$imgUrl}service/imgs/jcgq.png`" />
  120. </view>
  121. <view class="text">卡签解除挂起</view>
  122. </view>
  123. <view class="item-box" @click="toNext('/after-sale/activation-once-again/select-car')">
  124. <view class="item bg-blue" :style="{'--background':bgBlue}">
  125. <image :src="`${$imgUrl}service/imgs/obucxjh.png`" />
  126. </view>
  127. <view class="text">OBU重新激活</view>
  128. </view>
  129. <view class="item-box" @click="$util.navTo('/issueActivation/install-activation-order',true)">
  130. <view class="item bg-blue" :style="{'--background':bgBlue}">
  131. <image :src="`${$imgUrl}service/imgs/sbjh.png`" />
  132. </view>
  133. <view class="text">设备激活</view>
  134. </view>
  135. <view class="item-box" @click="$util.navTo('/issueActivation/old-user',true)">
  136. <view class="item bg-blue" :style="{'--background':bgBlue}">
  137. <image :src="`${$imgUrl}service/imgs/gwcfx.png`" />
  138. </view>
  139. <view class="text">公务车发行</view>
  140. </view>
  141. <view class="item-box" @click="$util.navTo('/after-sale/to-bookkeeping-card/select-car')">
  142. <view class="item bg-blue" :style="{'--background':bgBlue}">
  143. <image :src="`${$imgUrl}service/imgs/czkzjzk.png`" />
  144. </view>
  145. <view class="text">储值卡转记账卡</view>
  146. </view>
  147. </view>
  148. <view class="right-content" v-if="activeTab === '资金服务'">
  149. <view class="item-box">
  150. <view class="item bg-blue" :style="{'--background':bgBlue}">
  151. <image :src="`${$imgUrl}service/imgs/ktf.png`" />
  152. </view>
  153. <view class="text">卡退费</view>
  154. </view>
  155. <view class="item-box">
  156. <view class="item bg-blue" :style="{'--background':bgBlue}">
  157. <image :src="`${$imgUrl}service/imgs/qctf.png`" />
  158. </view>
  159. <view class="text">圈存退费</view>
  160. </view>
  161. <view class="item-box" @click="$util.navTo(`/service/capital/card-loop`)">
  162. <view class="item bg-blue" :style="{'--background':bgBlue}">
  163. <image :src="`${$imgUrl}service/imgs/czkqc.png`" />
  164. </view>
  165. <view class="text">储值卡圈存</view>
  166. </view>
  167. <view class="item-box" @click="$util.navTo('/after-sale/arrears/arrears')">
  168. <view class="item bg-blue" :style="{'--background':bgBlue}">
  169. <image :src="`${$imgUrl}service/imgs/qfbj.png`" />
  170. </view>
  171. <view class="text">欠费补缴</view>
  172. </view>
  173. <view class="item-box" @click="$util.navTo('/after-sale/refund-order-balance/select-car')">
  174. <view class="item bg-blue" :style="{'--background':bgBlue}">
  175. <image :src="`${$imgUrl}service/imgs/yebl.png`" />
  176. </view>
  177. <view class="text">余额补领</view>
  178. </view>
  179. <view class="item-box" @click="toNext('/orders/flowingWater')">
  180. <view class="item bg-blue" :style="{'--background':bgBlue}">
  181. <image :src="`${$imgUrl}service/imgs/bukae.png`" />
  182. </view>
  183. <view class="text">补卡额</view>
  184. </view>
  185. </view>
  186. <view class="right-content" v-if="activeTab === '查询服务'">
  187. <view class="item-box" @click="toNext('/service/search/etcFlowingWater')">
  188. <view class="item bg-blue" :style="{'--background':bgBlue}">
  189. <image :src="`${$imgUrl}service/imgs/etctxls.png`" />
  190. </view>
  191. <view class="text">ETC通行流水记录</view>
  192. </view>
  193. </view>
  194. <view class="right-content" v-if="activeTab === '信息管理'">
  195. <view class="item-box" @click="$util.navTo('/pages/bluetooth/bluetooth?routeType=4',true)">
  196. <view class="item bg-blue" :style="{'--background':bgBlue}">
  197. <image :src="`${$imgUrl}service/imgs/pj.png`" />
  198. </view>
  199. <view class="text">卡签信息</view>
  200. </view>
  201. </view>
  202. <view class="right-content" v-if="activeTab === '其他服务'">
  203. <view class="item-box" @click="$util.navTo('/service/remind/satisfaction-evaluate',true)">
  204. <view class="item bg-blue" :style="{'--background':bgBlue}">
  205. <image :src="`${$imgUrl}service/imgs/pj.png`" />
  206. </view>
  207. <view class="text">满意度评价</view>
  208. </view>
  209. <view class="item-box" @click="$util.navTo('/invoice/Invoice-mannager')">
  210. <view class="item bg-blue" :style="{'--background':bgBlue}">
  211. <image :src="`${$imgUrl}service/imgs/etctxls.png`" />
  212. </view>
  213. <view class="text">发票服务</view>
  214. </view>
  215. </view>
  216. </view>
  217. </view>
  218. </view>
  219. </template>
  220. <script lang="ts" setup>
  221. import navBar from "@/components/nav-bar/nav-bar.vue";
  222. import {ref} from "vue"
  223. import {onLoad} from "@dcloudio/uni-app";
  224. import {fileURL} from "@/datas/fileURL.js";
  225. import {
  226. msg,
  227. } from "@/utils/utils";
  228. const bgOrange = `url(${fileURL}image/service/bg-orange.png) center center no-repeat`;
  229. const bgBlue = `url(${fileURL}image/service/bg-blue.png) center center no-repeat`;
  230. const activeTab = ref("业务服务");
  231. // 切换
  232. function tabHandle(val) {
  233. activeTab.value = val;
  234. }
  235. function toNext(url) {
  236. uni.navigateTo({
  237. url: url
  238. });
  239. // msg("该功能正在开发中,敬请期待!")
  240. }
  241. </script>
  242. <style>
  243. page {
  244. height: 100%;
  245. }
  246. .wrapper {
  247. display: flex;
  248. background: linear-gradient(to left, #43A1E0 0%, #13E7C1 100%);
  249. flex-direction: column;
  250. height: 100%;
  251. }
  252. .search-box {
  253. margin: 50rpx 40rpx;
  254. height: 72rpx;
  255. border-radius: 36rpx;
  256. background: #F7F7F7;
  257. display: flex;
  258. justify-content: center;
  259. align-items: center;
  260. }
  261. .search-box .icon {
  262. width: 48rpx;
  263. height: 48rpx;
  264. margin: 0 20rpx;
  265. }
  266. .search-box .search {
  267. flex: 1;
  268. margin-right: 20rpx;
  269. height: 100%;
  270. padding: 0 10rpx;
  271. font-size: 28rpx;
  272. color: #00B38B;
  273. }
  274. .content {
  275. display: flex;
  276. flex: 1;
  277. flex-grow: 1;
  278. background: #fff;
  279. border-radius: 30rpx 30rpx 0 0;
  280. padding-top: 40rpx;
  281. }
  282. .left {
  283. width: 180rpx;
  284. border-right: 1px solid #DCDCDC;
  285. margin-right: 29rpx;
  286. }
  287. .left .menu-text {
  288. font-size: 26rpx;
  289. color: #666666;
  290. width: 120rpx;
  291. }
  292. .left .menu {
  293. padding-left: 15rpx;
  294. display: flex;
  295. align-items: center;
  296. margin: 20rpx 0 60rpx 0;
  297. }
  298. .left .active .menu-text {
  299. font-weight: bold;
  300. color: #00B38B;
  301. font-size: 28rpx;
  302. line-height: 32rpx;
  303. }
  304. .left .border {
  305. width: 9rpx;
  306. height: 26rpx;
  307. border-radius: 4rpx;
  308. margin-right: 20rpx;
  309. }
  310. .left .on {
  311. background: linear-gradient(0deg, #43A1E0 0%, #13E7C1 100%);
  312. font-size: 28rpx;
  313. }
  314. .right {
  315. flex: 1;
  316. }
  317. .right-content {
  318. display: flex;
  319. flex-wrap: wrap;
  320. }
  321. .right .item-box {
  322. display: flex;
  323. flex-direction: column;
  324. justify-content: center;
  325. align-items: center;
  326. margin-right: 30rpx;
  327. margin-bottom: 39rpx;
  328. }
  329. .item {
  330. width: 105rpx;
  331. height: 105rpx;
  332. display: flex;
  333. justify-content: center;
  334. align-items: center;
  335. border-radius: 20rpx;
  336. }
  337. .item image {
  338. width: 64rpx;
  339. height: 64rpx;
  340. }
  341. .right .text {
  342. width: 105rpx;
  343. font-size: 22rpx;
  344. text-align: center;
  345. height: 60rpx;
  346. display: flex;
  347. justify-content: center;
  348. align-items: center;
  349. margin-top: 19rpx;
  350. color: #666666
  351. }
  352. .bg-blue {
  353. background: var(--background);
  354. }
  355. .bg-orange {
  356. background: var(--background);
  357. }
  358. .right .text-orange {
  359. color: #FD8362
  360. }
  361. </style>