sim.vue 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186
  1. <template>
  2. <view>
  3. <view class="status_bar"></view>
  4. <view class="" style="position: relative;top: 44px;">
  5. <view style="position: fixed;z-index: 100;width: 100%;">
  6. <uni-nav-bar @clickLeft="clickLeft" left-icon="back" left-text="返回" title="sim卡详情"></uni-nav-bar>
  7. </view>
  8. <view class="sim_info">
  9. <view class="sim_info_loding" v-if="loding">
  10. <image src="../../static/images/cb/6286299.gif" mode="" class="img"></image>
  11. </view>
  12. <view class="sim_info_title">
  13. <image :src="$imageURL+'/bigdata_app'+'/image/cb/sim1.png'" mode=""></image>
  14. <p>sim卡查询{{"("+simnew+")"}}</p>
  15. </view>
  16. <view class="sim_info_text">
  17. <p>运营商:{{siminfo.data.carrier}}</p>
  18. <view class="sim_info_iccid" @click="copy(siminfo.data.iccid)">
  19. <p>ICCID:{{siminfo.data.iccid}}</p>
  20. <image src="../../static/images/ba167c2774bc7a63381dc3aaf1ef95c.png" mode="" class="tishi"></image>
  21. </view>
  22. <p>状态:{{state}}</p>
  23. <p>套餐:{{siminfo.data.data_plan || siminfo.data.totalDataVolume}}MB</p>
  24. <p v-if="simnew=='旧'">已用流量:{{siminfo.data.data_usage.toFixed(2)}}MB</p>
  25. <p v-if="simnew=='新'">已用流量:{{siminfo.data.usedDataVolume.toFixed(2)}}MB</p>
  26. <p v-if="simnew=='旧'">剩余流量:{{siminfo.data.data_balance.toFixed(2)}}MB</p>
  27. <p v-if="simnew=='新'">剩余流量:{{(siminfo.data.totalDataVolume-siminfo.data.usedDataVolume).toFixed(2)}}MB</p>
  28. <p v-if="simnew=='旧'">到期时间:{{siminfo.data.expiry_date|timeFormat()}}</p>
  29. <p v-if="simnew=='新'">到期时间:{{siminfo.data.expireDate}}</p>
  30. </view>
  31. </view>
  32. </view>
  33. </view>
  34. </template>
  35. <script>
  36. export default {
  37. data() {
  38. return {
  39. iccid: '',
  40. siminfo: {
  41. data: {
  42. carrier: "--",
  43. account_status: "--",
  44. data_plan: "--",
  45. data_usage: "--",
  46. data_balance: "--",
  47. outbound_date: ""
  48. }
  49. },
  50. state:"",
  51. id: '',
  52. simnew:"",
  53. loding:false
  54. }
  55. },
  56. methods: {
  57. async simdata(data) { //获取sim信息
  58. const res = await this.$myRequest({
  59. url: '/api/api_gateway?method=forecast.send_control.sim_query',
  60. data: {
  61. iccid: data
  62. }
  63. })
  64. if(res.code==1){//企鹏
  65. this.simnew = "新"
  66. switch (res.data.data.deviceStatus){
  67. case "TEST_READY_NAME":
  68. this.state = "可测试"
  69. break;
  70. case "INVENTORY_NAME":
  71. this.state = "库存"
  72. break;
  73. case "ACTIVATION_READY_NAME":
  74. this.state = "可激活"
  75. break;
  76. case "ACTIVATED_NAME":
  77. this.state = "已激活"
  78. break;
  79. case "DEACTIVATED_NAME":
  80. this.state = "已停卡"
  81. break;
  82. case "RETIRED_NAME":
  83. this.state = "已销卡"
  84. break;
  85. case "PURGED_NAME":
  86. this.state = "已清除"
  87. break;
  88. }
  89. }else if(res.code==2){//合宙
  90. var arr = ['未知', '测试期', '沉默期', '使用中', '停机', '停机保号', '预销号', '销号']
  91. this.state = arr[res.data.data.account_status]
  92. this.simnew = "旧"
  93. }
  94. this.siminfo = res.data
  95. this.loding = false
  96. console.log(this.siminfo.data)
  97. },
  98. clickLeft() {
  99. uni.navigateBack({
  100. delta: 1
  101. })
  102. },
  103. copy(item){
  104. uni.setClipboardData({
  105. data: item ,
  106. success: function () {
  107. console.log('success');
  108. }
  109. });
  110. },
  111. },
  112. onLoad(option) {
  113. console.log(option.simid)
  114. this.simdata(option.simid)
  115. this.id = option.simid
  116. this.loding = true
  117. }
  118. }
  119. </script>
  120. <style lang="scss">
  121. .sim_info {
  122. width: 90%;
  123. position: absolute;
  124. top: 54px;
  125. left: 5%;
  126. box-shadow: 0 0 10rpx #bcb9ca;
  127. padding: 30rpx 20rpx 50rpx;
  128. border-radius: 20rpx;
  129. box-sizing: border-box;
  130. .sim_info_loding{
  131. position: absolute;
  132. top: 0;
  133. left: 0;
  134. width: 100%;
  135. background-color: rgba(0,0,0,0.3);
  136. border-radius: 20rpx;
  137. height: 100%;
  138. display: flex;
  139. justify-content: space-around;
  140. align-items: center;
  141. .img{
  142. width: 200rpx;
  143. height: 175rpx;
  144. }
  145. }
  146. .sim_info_title {
  147. width: 100%;
  148. display: flex;
  149. image {
  150. width: 24rpx;
  151. height: 32rpx;
  152. margin: 6rpx 20rpx 0 0;
  153. }
  154. p {
  155. font-weight: 700;
  156. }
  157. }
  158. .sim_info_text {
  159. width: 100%;
  160. padding-left: 44rpx;
  161. p {
  162. height: 30rpx;
  163. margin-top: 20rpx;
  164. font-size: 26rpx;
  165. }
  166. .sim_info_iccid{
  167. display: flex;
  168. .tishi{
  169. width: 30rpx;
  170. height: 30rpx;
  171. margin: 26rpx 0 0 20rpx;
  172. color: #000;
  173. }
  174. }
  175. }
  176. }
  177. </style>