Browse Source

所有时间变为12进制,并且显示上午和下午

master
liaoxinyu 1 year ago
parent
commit
bf1e05204c
  1. 3
      pages/assets/account-bill.vue
  2. 3
      pages/assets/bill.vue
  3. 4
      pages/currency/list.vue
  4. 4
      pages/exchange/contract-bill.vue
  5. 6
      pages/exchange/exchangeHis.vue
  6. 2
      pages/exchange/latest-transaction.vue
  7. 8
      pages/notice/index.vue
  8. 4
      pages/notice/msg-detail.vue
  9. 38
      utils/class/date.js

3
pages/assets/account-bill.vue

@ -15,7 +15,7 @@
<view class="d-flex justify-between">
<view>
<view class="color-light fn-lg">{{ query.symbol }}</view>
<view class="fn-10">{{ item.created_at }}</view>
<view class="fn-10">{{ convertTo12HourFormat(item.created_at) }}</view>
</view>
</view>
<view
@ -57,6 +57,7 @@ export default {
},
methods: {
parseTime: date.parseTime,
convertTo12HourFormat: date.convertTo12HourFormat,
appTokenAssets() {
let data = {
coin_name: this.query.coin_name,

3
pages/assets/bill.vue

@ -24,7 +24,7 @@
<div class="d-flex justify-between">
<div>
<div class="color-light fn-lg">{{query.coin_name}}</div>
<div class="fn-10">{{item.created_at}}</div>
<div class="fn-10">{{convertTo12HourFormat(item.created_at)}}</div>
</div>
</div>
<div class="fn-md" :class="item.amount*1<0?'color-sell':'color-buy'">{{item.amount*1>=0?'+':''}}{{item.amount*1}}</div>
@ -76,6 +76,7 @@ export default {
methods: {
omitTo:math.omitTo,
parseTime: date.parseTime,
convertTo12HourFormat: date.convertTo12HourFormat,
appTokenAssets() {
let data = {
coin_name: this.query.coin_name,

4
pages/currency/list.vue

@ -40,7 +40,7 @@
</view>
<view class="row d-flex m-y-xs justify-between">
<view class="label fn-sm">{{$t('otc.h6')}}</view>
<view class="fn-10">{{item.created_at}}</view>
<view class="fn-10">{{convertTo12HourFormat(item.created_at)}}</view>
</view>
</view>
</view>
@ -51,6 +51,7 @@
<script>
import math from "@/utils/class/math";
import Otc from "@/api/otc";
import date from "@/utils/class/date.js";
import {mapGetters} from 'vuex'
export default {
data() {
@ -67,6 +68,7 @@ export default {
},
methods: {
omitTo:math.omitTo,
convertTo12HourFormat: date.convertTo12HourFormat,
appTokenAssets() {
let data = {
coin_name: this.query.coin_name,

4
pages/exchange/contract-bill.vue

@ -12,7 +12,7 @@
<view class="d-flex justify-between">
<view>
<!-- <view class="color-light fn-lg">{{ $route.query.symbol }}</view> -->
<view class="fn-10">{{ item.created_at }}</view>
<view class="fn-10">{{ convertTo12HourFormat(item.created_at) }}</view>
</view>
</view>
<view
@ -29,6 +29,7 @@
</template>
<script>
import Wallet from "@/api/wallet";
import date from "@/utils/class/date.js";
export default {
name: "contract-bill",
props:['symbolLeft'],
@ -37,6 +38,7 @@ export default {
},
methods: {
accountFlow: Wallet.accountFlow,
convertTo12HourFormat: date.convertTo12HourFormat,
},
};
</script>

6
pages/exchange/exchangeHis.vue

@ -28,7 +28,7 @@
<div v-if="item.entrust_type==2" class="suatus color-sell fn-20 m-r-xs rounded">{{$t('exchange.b6')}}</div>
<div>
<div class="color-light fn-20">{{item.symbol}}</div>
<div class="fn-10">{{item.created_at}}</div>
<div class="fn-10">{{convertTo12HourFormat(item.created_at)}}</div>
</div>
</div>
<div class="d-flex">
@ -76,7 +76,7 @@
<div v-if="item.entrust_type==2" class="suatus color-sell fn-20 m-r-xs rounded">{{$t('exchange.b6')}}</div>
<div>
<div class="color-light fn-20">{{item.symbol}}</div>
<div class="fn-10">{{item.created_at}}</div>
<div class="fn-10">{{convertTo12HourFormat(item.created_at)}}</div>
</div>
</div>
<div>{{item.status_text}}</div>
@ -115,6 +115,7 @@
<script>
import Order from "@/api/order";
import math from '@/utils/class/math'
import date from "@/utils/class/date.js";
export default {
data(){
return {
@ -125,6 +126,7 @@ export default {
},
methods:{
division:math.division,
convertTo12HourFormat: date.convertTo12HourFormat,
ifCancel(item) {
this.$dialog
.confirm({

2
pages/exchange/latest-transaction.vue

@ -10,7 +10,7 @@
</thead>
<tbody class="color-light">
<tr v-for="(item,idx) in tradeList" :key="idx">
<td class="p-l-md p-y-xs">{{parseTime(item.ts,false,'{h}:{i}:{s}')}}</td>
<td class="p-l-md p-y-xs">{{parseTime(item.ts,false,'{h}:{i}:{s} {a}')}}</td>
<td>
<span class="color-buy" v-if="item.direction=='buy'">
{{$t('exchange.b5')}}

8
pages/notice/index.vue

@ -15,7 +15,7 @@
<v-link tag="li" v-if="item.title!==null" :to="{path:'/pages/notice/detail',query:{id:item.id}}" class="item d-flex p-md align-center m-x-md m-b-xs bg-panel-3 rounded box-shadow" v-for="item in $list(list)" :key="item.id">
<view class="flex-fill">
<view class="title color-light eps-2 m-b-xs">{{item.title}}</view>
<view class="time fn-sm">{{item.created_at}}</view>
<view class="time fn-sm">{{convertTo12HourFormat(item.created_at)}}</view>
<!-- <view class="time fn-sm">{{item.created_ats| parseTime}}</view> -->
</view>
<van-icon name="arrow" />
@ -30,7 +30,7 @@
<v-link tag="li" :to="{path:'/pages/notice/msg-detail',query:{id:item.id}}" class="item d-flex p-md align-center m-x-md m-b-xs bg-panel-3 rounded box-shadow" v-for="item in $list(list)" :key="item.id">
<view class="flex-fill">
<view class="title color-light eps-2 m-b-xs">{{item.data.title}}</view>
<view class="time fn-sm">{{item.created_at}}</view>
<view class="time fn-sm">{{convertTo12HourFormat(item.created_at)}}</view>
<!-- <view class="time fn-sm">{{item.created_ats| parseTime}}</view> -->
</view>
<van-icon name="arrow" />
@ -44,6 +44,7 @@
<script>
import formData from "@/utils/class/date";
import Member from "@/api/member";
import date from "@/utils/class/date.js";
export default {
data() {
return {
@ -60,6 +61,9 @@ export default {
return formData.parseTime(val);
},
},
methods: {
convertTo12HourFormat: date.convertTo12HourFormat,
}
};
</script>
<style lang="scss" scoped>

4
pages/notice/msg-detail.vue

@ -7,7 +7,7 @@
{{data.title}}
</view>
<view class="time fn-sm">
{{detail.created_at}}
{{convertTo12HourFormat(detail.created_at)}}
</view>
</view>
<view class="edit-content m-t-md" v-html="data.content">
@ -18,6 +18,7 @@
</template>
<script>
import Member from "@/api/member";
import date from "@/utils/class/date.js";
export default {
data(){
return {
@ -29,6 +30,7 @@ export default {
computed: {
},
methods:{
convertTo12HourFormat: date.convertTo12HourFormat,
readNotifiable(){
Member.readNotifiable({
id:this.query.id

38
utils/class/date.js

@ -84,7 +84,7 @@ function parseTime(time, isOffset = false, cformat = null) {
// 设置默认格式
// let format = cformat || '{y}-{m}-{d} {h}:{i}:{s}';
let format = cformat || '{m}/{d}/{y} {h}:{i}:{s}';
let format = cformat || '{m}/{d}/{y} {h}:{i}:{s} {a}';
const date = time2Date(time, isOffset);
@ -93,17 +93,18 @@ function parseTime(time, isOffset = false, cformat = null) {
y: date.getFullYear(),
m: date.getMonth() + 1, // 显示月份值需要+1
d: date.getDate(),
h: date.getHours(),
h: date.getHours() % 12 || 12,
i: date.getMinutes(),
s: date.getSeconds(),
a: date.getDay()
a: date.getHours() >= 12 ? 'PM' : 'AM',
w: date.getDay()
};
// 星期值需要转化为中文
dataObj.a = '星期' + ['日', '一', '二', '三', '四', '五', '六'][dataObj.a];
dataObj.w = '星期' + ['日', '一', '二', '三', '四', '五', '六'][dataObj.w];
// 匹配{}中的y|m|d...部分,分别替换不同的值
const result = format.replace(/{(y|m|d|h|i|s|a)+}/g, (segment, key) => {
const result = format.replace(/{(y|m|d|h|i|s|a|w)+}/g, (segment, key) => {
// 由索引提取值
let value = dataObj[key];
// 给值添加前导0
@ -148,6 +149,30 @@ function pubTime(time, isOffset = false, format = null) {
}
}
/**
* 接口时间转换成12进制
* @param {string|number} dateTimeStr 接口返回的时间和日期
*/
function convertTo12HourFormat(dateTimeStr) {
// 解析输入的日期时间字符串
const date = new Date(dateTimeStr.replace(' ', 'T')); // 使用 T 将字符串转换为 ISO 格式
// 获取各个部分
const year = date.getFullYear();
const month = String(date.getMonth() + 1).padStart(2, '0'); // 月份要加1,并填充为2位
const day = String(date.getDate()).padStart(2, '0'); // 填充为2位
let hours = date.getHours();
const minutes = String(date.getMinutes()).padStart(2, '0'); // 填充为2位
const seconds = String(date.getSeconds()).padStart(2, '0'); // 填充为2位
// 计算12小时制的小时和 AM/PM
const ampm = hours >= 12 ? 'PM' : 'AM';//PM代表下午,AM代表上午。
hours = String(hours % 12 || 12).padStart(2, '0'); // 0转换为12
// 格式化输出
return `${year}-${month}-${day} ${hours}:${minutes}:${seconds} ${ampm}`;
}
// 将方法写入构造函数 便于全局使用
Object.assign(Date, {
time2Date,
@ -158,5 +183,6 @@ Object.assign(Date, {
export default{
time2Date,
parseTime,
pubTime
pubTime,
convertTo12HourFormat
}

Loading…
Cancel
Save