Browse Source

优化

master
ltlzx 5 years ago
parent
commit
811ebd74c4
  1. BIN
      src/assets/img/all_zc.png
  2. BIN
      src/assets/img/all_zc1.png
  3. BIN
      src/assets/img/all_zc2.png
  4. 78
      src/components/common/countDown.vue
  5. 277
      src/components/page/ClassificationDetails.vue
  6. 160
      src/components/page/Listing.vue
  7. 16
      src/components/page/Order/index.vue
  8. 12
      src/components/page/Order/orderPendingPay.vue
  9. 13
      src/components/page/Order/sellOrderPendingPay.vue

BIN
src/assets/img/all_zc.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.3 KiB

BIN
src/assets/img/all_zc1.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.0 KiB

BIN
src/assets/img/all_zc2.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.0 KiB

78
src/components/common/countDown.vue

@ -0,0 +1,78 @@
<template>
<span :endTime="endTime" :callback="callback" :endText="endText" class="order_time">
<slot>
{{content}}
</slot>
</span>
</template>
<script>
export default {
data(){
return {
content: '',
}
},
props:{
endTime:{
type: Number,
default :''
},
endText:{
type : String,
default:'已结束'
},
callback : {
type : Function,
default :''
}
},
mounted () {
this.countdowm(this.endTime)
},
methods: {
countdowm(timestamp){
console.info(timestamp)
let self = this;
let timer = setInterval(function(){
let nowTime = new Date();
let endTime = new Date(timestamp * 1000);
let t = endTime.getTime() - nowTime.getTime();
if(t>0){
let day = Math.floor(t/86400000);
let hour=Math.floor((t/3600000)%24);
let min=Math.floor((t/60000)%60);
let sec=Math.floor((t/1000)%60);
hour = hour < 10 ? "0" + hour : hour;
min = min < 10 ? "0" + min : min;
sec = sec < 10 ? "0" + sec : sec;
let format = '';
if(day > 0){
format = `${day}${hour}小时${min}${sec}`;
}
if(day <= 0 && hour > 0 ){
format = `${hour}小时${min}${sec}`;
}
if(day <= 0 && hour <= 0){
format =`${min}${sec}`;
}
self.content = format;
}else{
clearInterval(timer);
self.content = self.endText;
self._callback();
}
},1000);
},
_callback(){
if(this.callback && this.callback instanceof Function){
this.callback(...this);
}
}
}
}
</script>
<style scoped>
.order_time{
color: #89201F;
}
</style>

277
src/components/page/ClassificationDetails.vue

@ -1,41 +1,119 @@
<template>
<div>
<!-- <div class="breadcrumb">
<el-breadcrumb separator-class="el-icon-arrow-right">
<el-breadcrumb-item :to="{ path: '/AssetClassification' }">所以分类</el-breadcrumb-item>
<el-breadcrumb-item>活动管理</el-breadcrumb-item>
<el-breadcrumb-item>活动列表</el-breadcrumb-item>
<el-breadcrumb-item>活动详情</el-breadcrumb-item>
</el-breadcrumb>
</div> -->
<div>
<div class="seach">
<div class="seach_left">
<img src="../../assets/img/all_zc.png" alt="">
<span>资产类型</span>
</div>
<div class="seach_right">
<el-radio-group v-model="query.radio1" class="seach_group" @change="changeDate(3)">
<el-radio-button :label="0" >不限</el-radio-button>
<el-radio-button :label="1">著作权</el-radio-button>
<el-radio-button :label="2">专利权</el-radio-button>
<el-radio-button :label="3">专有技术</el-radio-button>
<el-radio-button :label="4">商标专有权</el-radio-button>
<el-radio-button :label="5">销售网络及客户关系</el-radio-button>
<el-radio-button :label="6">特许经营权</el-radio-button>
<el-radio-button :label="7">合同权益</el-radio-button>
<el-radio-button :label="8">域名</el-radio-button>
<el-radio-button :label="9">商誉</el-radio-button>
<el-radio-button :label="10">时间和档期</el-radio-button>
</el-radio-group>
</div>
</div>
<div class="seach">
<div class="seach_div">
<div class="seach_item">
<span>标的所在地</span>
<el-input v-model="query.input" placeholder="请输入标的所在地" class="seach_input" suffix-icon="el-icon-search"></el-input>
</div>
<div class="seach_item">
<span>标的挂牌类型</span>
<el-select v-model="query.value" placeholder="全部" class="seach_input">
<el-option key="1" label="全部" value="全部"></el-option>
<el-option key="2" label="协议" value="协议"></el-option>
<el-option key="3" label="拍卖" value="拍卖"></el-option>
<div class="seach_left">
<img src="../../assets/img/all_zc1.png" alt="">
<span>资产所在地</span>
</div>
<div class="seach_right">
<el-radio-group v-model="query.radio2" class="seach_group" @change="changeDate(2)">
<el-radio-button :label="0" >不限</el-radio-button>
</el-radio-group>
<el-select placeholder="选择具体省份" clearable filterable v-model="query.province" class="select_city" @change="changeDate(0)">
<el-option
v-for="item in province"
:key="item.id"
:label="item.name"
:value="item.province_code" >
</el-option>
</el-select>
<el-select placeholder="选择具体城市" clearable filterable v-model="query.city" class="select_city" @change="changeDate(1)">
<el-option
v-for="item in city"
:key="item.id"
:label="item.name"
:value="item.city_code" >
</el-option>
</el-select>
<el-select placeholder="选择具体区镇" clearable filterable v-model="query.area" class="select_city">
<el-option
v-for="item in area"
:key="item.id"
:label="item.name"
:value="item.area_code">
</el-option>
</el-select>
</div>
</div>
<el-dropdown trigger="click">
<span class="el-dropdown-link">
排序<i class="el-icon-arrow-down el-icon--right"></i>
<div class="seach">
<div class="seach_left">
<img src="../../assets/img/all_zc2.png" alt="">
<span>资产状态</span>
</div>
<div class="seach_right">
<el-radio-group v-model="query.radio1" class="seach_group" @change="changeDate(3)">
<el-radio-button :label="0" >不限</el-radio-button>
<el-radio-button :label="1">挂牌中</el-radio-button>
<el-radio-button :label="2">交易中</el-radio-button>
<el-radio-button :label="3">已成交</el-radio-button>
<el-radio-button :label="4">已摘牌</el-radio-button>
</el-radio-group>
</div>
</div>
</div>
<div class="seach1">
<div class="seach1_item">
<span>
全部资产
<span class="seach1_item_span">{{pageTotal}}</span>
</span>
<el-dropdown-menu slot="dropdown">
<el-dropdown-item>黄金糕</el-dropdown-item>
<el-dropdown-item>狮子头</el-dropdown-item>
<el-dropdown-item>螺蛳粉</el-dropdown-item>
<el-dropdown-item disabled>双皮奶</el-dropdown-item>
<el-dropdown-item divided>蚵仔煎</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
</div>
<div class="seach1_item">
<el-select placeholder="选择具体区镇" v-model="query.select" @change="changeDate(3)">
<el-option :key="0" label="资产价格升序" :value="0"></el-option>
<el-option :key="1" label="资产价格降序" :value="1"></el-option>
<el-option :key="2" label="挂牌时间升序" :value="2"></el-option>
<el-option :key="3" label="挂牌时间降序" :value="3"></el-option>
</el-select>
</div>
<div class="seach1_item">
<el-date-picker
v-model="query.value3"
type="date"
placeholder="选择日期"
format="yyyy 年 MM 月 dd 日"
value-format="timestamp"
@change="changeDate(3)">
</el-date-picker>
</div>
<div class="seach1_item">
<span>价格</span>
<el-input
class="seach_input"
v-model="query.input4">
<span slot="prefix" class="el-input__icon "></span>
</el-input>
<span>-</span>
<el-input
class="seach_input"
v-model="query.input4">
<span slot="prefix" class="el-input__icon "></span>
</el-input>
<button @click="changeDate(3)" class="seach_button">确定</button>
</div>
</div>
<div class="tabs">
@ -78,7 +156,7 @@
</div>
</template>
<script>
import {assetClassInfo} from '../../api/index'
import {assetClassInfo,getProvince,getCity,getArea,} from '../../api/index'
export default {
data(){
return{
@ -86,16 +164,70 @@ export default {
page:1,
limit:10,
search_name:'',
status:''
status:'',
province:'',
city:'',
area:'',
radio1:0,
radio2:0,
select:0,
value3:'',
input4:''
},
pageTotal:0,
listingList:[]
listingList:[],
province:[],
city:[],
area:[],
}
},
created(){
this.getData()
this.getProvince();
},
methods:{
changeDate(type){
if(type==0){
this.getCity()
this.query.radio2=''
}else if(type==1){
this.getArea()
this.query.radio2=''
}else if(type==2){
this.query.province=''
this.query.city=''
this.query.area=''
}
this.getData()
},
getProvince(){
getProvince().then(res => {
if(res.code==100){
this.province=res.list
}
})
},
getCity(){
let data={
code:this.query.province
}
getCity(data).then(res=>{
if(res.code==100){
this.city=res.list
}
})
},
getArea(){
let data={
code:this.query.city
}
getArea(data).then(res=>{
if(res.code==100){
this.area=res.list
}
})
},
getData(){
assetClassInfo(this.query).then(res => {
console.info(res)
@ -119,30 +251,75 @@ export default {
}
</script>
<style scoped>
.seach{
display: flex;
background-color: #FDF8F8;
border: 1px solid #E9B7B7;
.seach_button{
width: 60px;
height: 30px;
font-size: 12px;
color: #333333;
background-color: transparent;
border:1px solid #D7D7D7;
cursor: pointer;
}
.seach_input{
width: 100px;
margin: 0 15px;
}
.seach1{
width: 100%;
height: 50px;
margin-top: 30px;
background: #F2F2F2;
border: 1px solid #D7D7D7;
box-sizing: border-box;
display: flex;
align-items: center;
}
.seach1_item{
padding: 0 15px;
justify-content: space-between;
display: flex;
align-items: center;
border-right: 1px solid #D7D7D7;
font-size: 12px;
height: 100%;
}
.seach1_item_span{
color: #C94C4C;
}
.seach1_item:last-child{
border-right: none;
}
.select_city{
margin: 0 15px;
}
.seach{
padding: 25px 0;
border-bottom: 1px solid #D7D7D7;
display: flex;
}
.seach:last-child{
border-bottom: none;
}
.seach_item{
.seach_left{
display: flex;
align-items: center;
font-weight: 650;
font-size: 14px;
color: #C94C4C;
width: 130px;
margin-right: 20px;
}
.seach_input{
width: 170px;
border: 1px solid #E9B7B7;
margin-left: 15px;
}
.seach_input>>>.el-input__inner{
.seach_group >>> .el-radio-button--small .el-radio-button__inner{
border: none;
padding-left: 5px;
border-radius: 0;
}
.seach_group >>> .el-radio-button__orig-radio:checked+.el-radio-button__inner{
color: #FFF;
background-color: #C94C4C;
box-shadow: none;
}
.seach_left img{
width: 17px;
height: 17px;
margin-right: 5px;
}
.el-dropdown-link{
color: #EAB1B1;
@ -201,10 +378,6 @@ export default {
.el-breadcrumb{
font-size: 18px;
}
.seach_div{
display: flex;
align-items: center;
}
.tabs_item_content{
width: 100%;
background-color: rgba(255, 255, 255, 0.5);

160
src/components/page/Listing.vue

@ -1,39 +1,87 @@
<template>
<div>
<div class="seach">
<div class="seach_item">
<span>标的所在地</span>
<el-input v-model="query.input" placeholder="请输入标的所在地" class="seach_input" suffix-icon="el-icon-search"></el-input>
</div>
<div class="seach_item">
<span>标的挂牌类型</span>
<el-select v-model="query.value" placeholder="全部" class="seach_input">
<el-option key="1" label="全部" value="全部"></el-option>
<el-option key="2" label="协议" value="协议"></el-option>
<el-option key="3" label="拍卖" value="拍卖"></el-option>
<div class="seach1">
<div class="seach1_item">
<span>
全部资产
<span class="seach1_item_span">{{pageTotal}}</span>
</span>
</div>
<div class="seach1_item">
<el-select placeholder="选择具体区镇" v-model="query.select" @change="getData">
<el-option :key="0" label="资产价格升序" :value="0"></el-option>
<el-option :key="1" label="资产价格降序" :value="1"></el-option>
<el-option :key="2" label="挂牌时间升序" :value="2"></el-option>
<el-option :key="3" label="挂牌时间降序" :value="3"></el-option>
</el-select>
</div>
<div class="seach_item">
<span>标的资产类型</span>
<el-input v-model="query.input" placeholder="请输入资产类型关键字" class="seach_input"></el-input>
<div class="seach1_item">
<el-date-picker
v-model="query.date"
type="date"
placeholder="选择日期"
format="yyyy 年 MM 月 dd 日"
value-format="timestamp"
@change="getData">
</el-date-picker>
</div>
<div class="seach1_item">
<span>价格</span>
<el-input
class="seach_input"
v-model="query.min_price">
<span slot="prefix" class="el-input__icon "></span>
</el-input>
<span>-</span>
<el-input
class="seach_input"
v-model="query.max_price">
<span slot="prefix" class="el-input__icon "></span>
</el-input>
<button @click="getData" class="seach_button">确定</button>
</div>
</div>
<div class="seach1">
<div class="seach1_item">
<span>挂牌类型</span>
<el-select v-model="query.cartellino_type" @change="getData" class="seach1_select">
<el-option :key="0" label="全部" value=""></el-option>
<el-option :key="1" label="协议" :value="1"></el-option>
<el-option :key="2" label="拍卖" :value="2"></el-option>
</el-select>
</div>
<div class="seach1_item">
<span>挂牌方名称</span>
<el-input
class="seach1_select"
placeholder="请输入挂牌方关键字"
v-model="query.username">
</el-input>
</div>
<div class="seach1_item">
<span>挂牌编号</span>
<el-input
class="seach1_select"
placeholder="请输入挂牌编号"
v-model="query.cartellino_id">
</el-input>
</div>
<div class="seach_item">
<div class="seach1_item">
<span>标的名称</span>
<el-input v-model="query.input" placeholder="请输入标的名称关键字" class="seach_input"></el-input>
<el-input
class="seach1_select"
placeholder="请输入标的名称关键字"
v-model="query.serial_name">
</el-input>
</div>
<div class="seach1_item">
<button @click="getData" class="seach_button">确定</button>
</div>
</div>
<el-dropdown trigger="click">
<span class="el-dropdown-link">
排序<i class="el-icon-arrow-down el-icon--right"></i>
</span>
<el-dropdown-menu slot="dropdown">
<el-dropdown-item>黄金糕</el-dropdown-item>
<el-dropdown-item>狮子头</el-dropdown-item>
<el-dropdown-item>螺蛳粉</el-dropdown-item>
<el-dropdown-item disabled>双皮奶</el-dropdown-item>
<el-dropdown-item divided>蚵仔煎</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
</div>
<div class="tabs">
@ -97,7 +145,7 @@ export default {
console.info(res)
if(res.code==100){
this.listingList=res.data.list;
this.pageTotal=res.count
this.pageTotal=res.data.count
}else{
this.$message.error(res.msg)
}
@ -116,29 +164,53 @@ export default {
</script>
<style scoped>
.seach{
display: flex;
background-color: #FDF8F8;
border: 1px solid #E9B7B7;
margin: 20px 0;
}
.seach1_select{
margin-left: 10px;
width: 170px;
}
.seach_button{
width: 60px;
height: 30px;
font-size: 12px;
color: #333333;
background-color: transparent;
border:1px solid #D7D7D7;
cursor: pointer;
}
.seach_input{
width: 100px;
margin: 0 15px;
}
.seach1{
width: 100%;
height: 50px;
margin-top: 30px;
padding: 0 15px;
justify-content: space-between;
background: #F2F2F2;
border: 1px solid #D7D7D7;
box-sizing: border-box;
display: flex;
align-items: center;
}
.seach_item{
.seach1:last-child{
border-top: none;
}
.seach1_item{
padding: 0 20px;
display: flex;
align-items: center;
font-size: 14px;
border-right: 1px solid #D7D7D7;
font-size: 12px;
height: 100%;
}
.seach_input{
width: 170px;
border: 1px solid #E9B7B7;
margin-left: 15px;
.seach1_item_span{
color: #C94C4C;
}
.seach1_item:last-child{
border-right: none;
}
.seach_input>>>.el-input__inner{
border: none;
padding-left: 5px;
.select_city{
margin: 0 15px;
}
.el-dropdown-link{
color: #EAB1B1;

16
src/components/page/Order/index.vue

@ -30,6 +30,22 @@ export default{
confirm(val){
console.info(val);
this.confirmTime=val;
if (val.status==8 || val.status==2 || val.status==3) {
this.step=2
if (val.status==8) {
this.$router.push({path:'/order/orderDetails',query:{batchcode:val.batchcode,type:2}})
this.type=2
}
}else if (val.status==0 ||val.status==1) {
this.step=1
}else if (val.status==4 ) {
this.step=3
}else if (val.status==6 ) {
this.step=4
}else if (val.status==7 ) {
this.step=5
this.$router.push({path:'/order/orderDetails',query:{batchcode:val.batchcode,type:this.$route.query.type}})
}
}
}
}

12
src/components/page/Order/orderPendingPay.vue

@ -45,16 +45,18 @@
</div>
<p class="order_info_right_tips" v-if="orderInfos.status==0 && orderInfos.check_status==0 || orderInfos.status==1 && orderInfos.check_status==2">
您还有
<span class="order_time">23小时43分15秒{{orderInfos.serial_name}}</span>
<countDown :endTime="orderInfos.pay_overdue_time" endText="已经结束了"></countDown>
来付款超时订单自动关闭订单关闭后3天内不能再重复购买同一个资产为避免不便之处请尽快付款
</p>
<p class="order_info_right_tips" v-if="orderInfos.status==4">
您还有
<span class="order_time">23小时43分15秒{{orderInfos.serial_name}}</span>
<countDown :endTime="orderInfos.pay_overdue_time" endText="已经结束了"></countDown>
来确认超时订单自动确认订单确认后交易所将会出具双方交易凭证确认资产交易成功请尽快确认
</p>
<p class="order_info_right_tips" v-else-if="orderInfos.status==1 && orderInfos.check_status==0">
已上传转账记录还有<span class="order_time">23小时43分15秒{{orderInfos.serial_name}}</span>由交易所确认请耐心等候
已上传转账记录还有
<countDown :endTime="orderInfos.pay_overdue_time" endText="已经结束了"></countDown>
由交易所确认请耐心等候
</p>
<p class="order_info_right_tips" v-else-if="orderInfos.status==2 && orderInfos.check_status==0 || orderInfos.status==3 && orderInfos.check_status==2">
请双方上传签约合同PDF文件扫描件由交易所见证交易过程
@ -191,7 +193,9 @@ export default {
}
},
components: {
ElImageViewer: () => import('element-ui/packages/image/src/image-viewer')
ElImageViewer: () => import('element-ui/packages/image/src/image-viewer'),
countDown: () => import('../../common/countDown.vue'),
},
created(){
this.query.batchcode=this.$route.query.batchcode

13
src/components/page/Order/sellOrderPendingPay.vue

@ -45,13 +45,17 @@
</span>
</div>
<p class="order_info_right_tips" v-if="orderInfos.status==0 && orderInfos.check_status==0 || orderInfos.status==1 && orderInfos.check_status==2">
摘牌方还要23小时43分15秒来付款超时订单自动关闭
摘牌方还要
<countDown :endTime="orderInfos.pay_overdue_time" endText="已经结束了"></countDown>
来付款超时订单自动关闭
</p>
<p class="order_info_right_tips" v-if="orderInfos.status==6">
摘牌方已确认交付该订单正在结算中订单结算金额为 ¥ 27,000.00 请耐心等候
</p>
<p class="order_info_right_tips" v-else-if="orderInfos.status==1 && orderInfos.check_status==0">
摘牌方已上传转账记录还有23小时43分15秒由交易所确认请耐心等候
摘牌方已上传转账记录还有
<countDown :endTime="orderInfos.pay_overdue_time" endText="已经结束了"></countDown>
由交易所确认请耐心等候
</p>
<p class="order_info_right_tips" v-else-if="orderInfos.status==2 && orderInfos.check_status==0||orderInfos.status==3 && orderInfos.check_status==2">
请双方上传签约合同PDF文件扫描件由交易所见证交易过程
@ -61,7 +65,7 @@
</p>
<p class="order_info_right_tips" v-if="orderInfos.status==4">
摘牌方还有
<span class="order_time">23小时43分15秒{{orderInfos.serial_name}}</span>
<countDown :endTime="orderInfos.pay_overdue_time" endText="已经结束了"></countDown>
来确认超时订单自动确认订单确认后交易所将会出具双方交易凭证确认资产交易成功
</p>
<template v-if="orderInfos.status==2 && orderInfos.check_status==0 ||orderInfos.status==3 && orderInfos.check_status==0||orderInfos.status==3 && orderInfos.check_status==2">
@ -193,7 +197,8 @@ export default {
}
},
components: {
ElImageViewer: () => import('element-ui/packages/image/src/image-viewer')
ElImageViewer: () => import('element-ui/packages/image/src/image-viewer'),
countDown: () => import('../../common/countDown.vue'),
},
created(){
this.query.batchcode=this.$route.query.batchcode

Loading…
Cancel
Save