Browse Source

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

master
liaoxinyu 1 year ago
parent
commit
55bfb88a63
  1. 6
      src/components/NewMsg.vue
  2. 40
      src/utils/class/date.js
  3. 2
      src/views/contract/handicap.vue
  4. 2
      src/views/contract/handicapRight.vue
  5. 4
      src/views/exchange/book-trades.vue
  6. 7
      src/views/exchange/order-list.vue
  7. 4
      src/views/wallet/contract-assets.vue

6
src/components/NewMsg.vue

@ -39,7 +39,7 @@
</div> </div>
<div class="content"> <div class="content">
<p class="text_title">{{ item.data.title }}</p> <p class="text_title">{{ item.data.title }}</p>
<p class="sub-text text-muted">{{ item.created_at }}</p> <p class="sub-text text-muted">{{ convertTo12HourFormat(item.created_at) }}</p>
</div> </div>
</a> </a>
<div class="text-center sub-text text-muted" v-if="!more"> <div class="text-center sub-text text-muted" v-if="!more">
@ -56,13 +56,14 @@
</div> </div>
</div> </div>
<v-box v-model="showMsg" :title="msgDetail.data && msgDetail.data.title"> <v-box v-model="showMsg" :title="msgDetail.data && msgDetail.data.title">
<p class="sub-text text-muted">{{ msgDetail.created_at }}</p> <p class="sub-text text-muted">{{ msgDetail.created_at?convertTo12HourFormat(msgDetail.created_at):msgDetail.created_at }}</p>
{{ msgDetail.data && msgDetail.data.content }} {{ msgDetail.data && msgDetail.data.content }}
</v-box> </v-box>
</li> </li>
</template> </template>
<script> <script>
import Member from "@/api/member"; import Member from "@/api/member";
import date from "@/utils/class/date.js";
export default { export default {
name: "new-msg", name: "new-msg",
data() { data() {
@ -81,6 +82,7 @@ export default {
} }
}, },
methods: { methods: {
convertTo12HourFormat: date.convertTo12HourFormat,
reset() { reset() {
this.page = 1; this.page = 1;
this.list = []; this.list = [];

40
src/utils/class/date.js

@ -48,7 +48,7 @@ function time2Date(time, isOffset = false) {
function parseTime(time, isOffset = false, cformat = null) { function parseTime(time, isOffset = false, cformat = null) {
// 设置默认格式 // 设置默认格式
let format = cformat || '{y}-{m}-{d} {h}:{i}:{s}'; let format = cformat || '{y}-{m}-{d} {h}:{i}:{s} {a}';
const date = time2Date(time, isOffset); const date = time2Date(time, isOffset);
@ -57,17 +57,18 @@ function parseTime(time, isOffset = false, cformat = null) {
y: date.getFullYear(), y: date.getFullYear(),
m: date.getMonth() + 1, // 显示月份值需要+1 m: date.getMonth() + 1, // 显示月份值需要+1
d: date.getDate(), d: date.getDate(),
h: date.getHours(), h: date.getHours() % 12 || 12,
i: date.getMinutes(), i: date.getMinutes(),
s: date.getSeconds(), 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...部分,分别替换不同的值 // 匹配{}中的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]; let value = dataObj[key];
// 给值添加前导0 // 给值添加前导0
@ -111,15 +112,40 @@ 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, { Object.assign(Date, {
time2Date, time2Date,
parseTime, parseTime,
pubTime, pubTime
}); });
export default{ export default{
time2Date, time2Date,
parseTime, parseTime,
pubTime pubTime,
convertTo12HourFormat
} }

2
src/views/contract/handicap.vue

@ -107,7 +107,7 @@
</div> </div>
<div class="d-flex fn-14" v-for="(item, idx) in tradeList.slice(0,30)" :key="idx"> <div class="d-flex fn-14" v-for="(item, idx) in tradeList.slice(0,30)" :key="idx">
<div class="w-10/24"> <div class="w-10/24">
{{ parseTime(item.ts, false, "{h}:{i}:{s}") }} {{ parseTime(item.ts, false, "{h}:{i}:{s} {a}") }}
</div> </div>
<div class="w-7/24 increace"> <div class="w-7/24 increace">
{{ item.price }} {{ item.price }}

2
src/views/contract/handicapRight.vue

@ -19,7 +19,7 @@
</div> </div>
<div class="d-flex fn-12" v-for="(item, idx) in tradeList" :key="idx"> <div class="d-flex fn-12" v-for="(item, idx) in tradeList" :key="idx">
<div class="w-10/24"> <div class="w-10/24">
{{ parseTime(item.ts, false, "{h}:{i}:{s}") }} {{ parseTime(item.ts, false, "{h}:{i}:{s} {a}") }}
</div> </div>
<div class="w-7/24" :class="item.direction=='buy'?'increace':'decreace'"> <div class="w-7/24" :class="item.direction=='buy'?'increace':'decreace'">
{{ item.price }} {{ item.price }}

4
src/views/exchange/book-trades.vue

@ -191,7 +191,7 @@ export default {
n.price = Math.omitTo(n.price, this.priceDecimals); n.price = Math.omitTo(n.price, this.priceDecimals);
n.amount = Math.omitTo(n.amount, this.qtyDecimals); n.amount = Math.omitTo(n.amount, this.qtyDecimals);
n.time = Date.parseTime(n.ts, false, "{h}:{i}:{s}"); n.time = Date.parseTime(n.ts, false, "{h}:{i}:{s} {a}");
// //
if (++count == this.trade.length - 1) { if (++count == this.trade.length - 1) {
@ -199,7 +199,7 @@ export default {
m.changeRate = 1; m.changeRate = 1;
m.price = Math.omitTo(m.price, this.priceDecimals); m.price = Math.omitTo(m.price, this.priceDecimals);
m.amount = Math.omitTo(m.amount, this.qtyDecimals); m.amount = Math.omitTo(m.amount, this.qtyDecimals);
m.time = Date.parseTime(m.ts, false, "{h}:{i}:{s}"); m.time = Date.parseTime(m.ts, false, "{h}:{i}:{s} {a}");
} }
}); });
} else { } else {

7
src/views/exchange/order-list.vue

@ -114,7 +114,7 @@
<tbody> <tbody>
<template v-for="(item,index) in ordersHistory.data"> <template v-for="(item,index) in ordersHistory.data">
<tr class="text-nowrap" :key="item.id" :name="item.entrust_type+'_'+item.id+'_'+index" slot="title" @click="handleChange(item)"> <tr class="text-nowrap" :key="item.id" :name="item.entrust_type+'_'+item.id+'_'+index" slot="title" @click="handleChange(item)">
<td>{{item.created_at}}</td> <td>{{convertTo12HourFormat(item.created_at)}}</td>
<td>{{item.symbol}}</td> <td>{{item.symbol}}</td>
<template v-if="item.entrust_type == 1"> <template v-if="item.entrust_type == 1">
<td class="green">{{$t("common.buy-in")}}</td> <td class="green">{{$t("common.buy-in")}}</td>
@ -194,7 +194,8 @@
<script> <script>
import Order from "@/api/order"; import Order from "@/api/order";
import math from "@/utils/class/math.js";
import date from "@/utils/class/date.js";
export default { export default {
props: [ props: [
"ordersOpen", "ordersOpen",
@ -213,6 +214,8 @@ export default {
}; };
}, },
methods: { methods: {
omitTo: math.omitTo,
convertTo12HourFormat: date.convertTo12HourFormat,
toggle(name) { toggle(name) {
this.currentTab = name; this.currentTab = name;
// //

4
src/views/wallet/contract-assets.vue

@ -36,7 +36,7 @@
<tbody> <tbody>
<tr v-for="item in list" :key="item.id"> <tr v-for="item in list" :key="item.id">
<td></td> <td></td>
<td>{{ item.created_at }}</td> <td>{{ convertTo12HourFormat(item.created_at) }}</td>
<td>{{ item.log_type_text }}</td> <td>{{ item.log_type_text }}</td>
<td <td
:class="{ :class="{
@ -71,6 +71,7 @@
</template> </template>
<script> <script>
import wallet from "../../api/wallet.js"; import wallet from "../../api/wallet.js";
import date from "@/utils/class/date.js";
export default { export default {
name: "contract-assets", name: "contract-assets",
data() { data() {
@ -83,6 +84,7 @@ export default {
this.getList(); this.getList();
}, },
methods: { methods: {
convertTo12HourFormat: date.convertTo12HourFormat,
changePageCurrent(idx) { changePageCurrent(idx) {
this.CurrentObj.page = idx; this.CurrentObj.page = idx;
this.getList(); this.getList();

Loading…
Cancel
Save