Browse Source

挂牌

master
ltlzx 5 years ago
parent
commit
62e4481380
  1. 41
      package-lock.json
  2. 1
      package.json
  3. 64
      src/api/index.js
  4. 8
      src/components/common/Footer.vue
  5. 7
      src/components/common/Header.vue
  6. 204
      src/components/common/country.js
  7. 532
      src/components/page/Hoster/Listing.vue
  8. 19
      src/components/page/Hoster/myAssets.vue
  9. 7
      src/components/page/Purchaser/wkPurchaser.vue
  10. 7
      src/components/page/Purchaser/wkThird.vue
  11. 13
      src/components/page/Purchaser/wkTrusteeship.vue
  12. 5
      src/router/index.js

41
package-lock.json

@ -2307,6 +2307,11 @@
"integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==",
"dev": true
},
"cssfilter": {
"version": "0.0.10",
"resolved": "https://registry.npmjs.org/cssfilter/-/cssfilter-0.0.10.tgz",
"integrity": "sha1-xtJnJjKi5cg+AT5oZKQs6N79IK4="
},
"cssnano": {
"version": "3.10.0",
"resolved": "https://registry.npmjs.org/cssnano/-/cssnano-3.10.0.tgz",
@ -4500,6 +4505,16 @@
"integrity": "sha512-l9sfDFsuqtOqKDsQdqrMRk0U85RZc0RtOR9yPI7mRVOa4FsR/BVnZ0shmQRM96Ji99kYZP/7hn1cedc1+ApsTQ==",
"dev": true
},
"highlight.js": {
"version": "9.18.5",
"resolved": "https://registry.npmjs.org/highlight.js/-/highlight.js-9.18.5.tgz",
"integrity": "sha512-a5bFyofd/BHCX52/8i8uJkjr9DYwXIPnM/plwI6W7ezItLGqzt7X2G2nXuYSfsIJdkwwj/g9DG1LkcGJI/dDoA=="
},
"highlight.js-async-webpack": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/highlight.js-async-webpack/-/highlight.js-async-webpack-1.0.4.tgz",
"integrity": "sha1-wGtnv5nwSQRdYrdW5YVbCRLsYWw="
},
"hmac-drbg": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz",
@ -5452,6 +5467,16 @@
"integrity": "sha512-9FbRY3i6U+CbHgrdNbAUaisjWTozkm1ZfupYQJiZ87NtYHk2Zh9DvxMgp/fifxVhqTLpd5fCCLossUbpZxGeKw==",
"dev": true
},
"mavon-editor": {
"version": "2.9.1",
"resolved": "https://registry.npmjs.org/mavon-editor/-/mavon-editor-2.9.1.tgz",
"integrity": "sha512-N42ZBBVjDOOmwwBKRLytItMGG9bR8KBZN4ZI8sxpHh3dqL6SF5HNhzn/sVHDctp9vxphO930a3zu4GFZWQwZ1Q==",
"requires": {
"highlight.js": "^9.11.0",
"highlight.js-async-webpack": "^1.0.4",
"xss": "^1.0.6"
}
},
"md5.js": {
"version": "1.3.5",
"resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz",
@ -11740,6 +11765,22 @@
"safe-buffer": "~5.1.0"
}
},
"xss": {
"version": "1.0.9",
"resolved": "https://registry.npmjs.org/xss/-/xss-1.0.9.tgz",
"integrity": "sha512-2t7FahYnGJys6DpHLhajusId7R0Pm2yTmuL0GV9+mV0ZlaLSnb2toBmppATfg5sWIhZQGlsTLoecSzya+l4EAQ==",
"requires": {
"commander": "^2.20.3",
"cssfilter": "0.0.10"
},
"dependencies": {
"commander": {
"version": "2.20.3",
"resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz",
"integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ=="
}
}
},
"xtend": {
"version": "4.0.2",
"resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz",

1
package.json

@ -12,6 +12,7 @@
"dependencies": {
"axios": "^0.21.1",
"element-ui": "^2.15.3",
"mavon-editor": "^2.9.1",
"vue": "^2.5.2",
"vue-router": "^3.0.1"
},

64
src/api/index.js

@ -3,7 +3,7 @@ import request from '../utils/request';
// 用户开户
export const openAccount = query => {
return request({
url: '/public/index.php/api/user.Account/openAccount',
url: '/api/user.Account/openAccount',
method: 'post',
data: query
});
@ -11,7 +11,7 @@ export const openAccount = query => {
// 获取单个类型资料
export const getAccountInfo = query => {
return request({
url: '/public/index.php/api/user.Account/getAccountInfo',
url: '/api/user.Account/getAccountInfo',
method: 'get',
params: query
});
@ -19,7 +19,7 @@ export const getAccountInfo = query => {
// 获取用户是否已开户
export const isOpenAccount = query => {
return request({
url: '/public/index.php/api/user.Account/isOpenAccount',
url: '/api/user.Account/isOpenAccount',
method: 'get',
params: query
});
@ -27,7 +27,63 @@ export const isOpenAccount = query => {
// 资产分类列表
export const assetClassList = query => {
return request({
url: '/public/index.php/api/user.Asset/assetClassList',
url: '/api/user.Asset/assetClassList',
method: 'get',
params: query
});
};
// 资产列表
export const assetList = query => {
return request({
url: '/api/user.Asset/assetList',
method: 'get',
params: query
});
};
// 获取资产类型
export const get_asset_type = query => {
return request({
url: '/api/user.Asset/get_asset_type',
method: 'get',
params: query
});
};
// 获取省份数据
export const getProvince = query => {
return request({
url: 'api/Index/getProvince',
method: 'get',
params: query
});
};
// 获取市份数据
export const getCity = query => {
return request({
url: '/api/Index/getCity',
method: 'get',
params: query
});
};
// 获取区镇数据
export const getArea = query => {
return request({
url: '/api/Index/getArea',
method: 'get',
params: query
});
};
// 资产挂牌
export const cartellino = query => {
return request({
url: '/api/user.Asset/cartellino',
method: 'post',
data: query
});
};
// 获取挂牌费用
export const getPrice = query => {
return request({
url: '/api/user.Asset/getPrice',
method: 'get',
params: query
});

8
src/components/common/Footer.vue

@ -61,6 +61,7 @@ export default {
padding-top: 20px;
padding-bottom: 10px;
margin-top: 30px;
background-color: rgba(37, 46, 75, 1);
}
.body>div{
width: 1200px;
@ -78,7 +79,7 @@ export default {
font-size: 12px;
display: flex;
flex-direction: column;
color: #555555;
color: #F3F6FF;
align-items: center;
margin-left: 55px;
}
@ -96,7 +97,7 @@ export default {
}
.foot_top_right_item>p{
font-size: 12px;
color: #7F7F7F;
color: #F3F6FF;
margin-top: 10px;
}
.foot_top_right_item_title{
@ -106,6 +107,7 @@ export default {
padding: 5px 0;
border-bottom: 1px solid #AAAAAA;
font-size: 14px;
color: #F3F6FF;
}
.title_span{
font-size: 18px;
@ -113,7 +115,7 @@ export default {
}
.foot_info{
font-size: 12px;
color: rgba(127, 127, 127, 0.898039215686275);
color: #F3F6FF;
margin-top: 20px;
}
</style>

7
src/components/common/Header.vue

@ -131,7 +131,9 @@ export default {
}else{
this.sidebarList[2].url='/wkThird'
}
this.goPage(this.sidebarList[0].url)
if(goType==0){
this.goPage(this.sidebarList[0].url)
}
}else{
this.sidebarList=[
{name:'首页',url:''},
@ -151,13 +153,14 @@ export default {
},
watch:{
$route(newValue, oldValue){
this.activeClass=newValue.path
this.activeClass='/'+newValue.path.split('/')[1]
if(this.login_type==1){
this.isOpenAccount()
}
}
},
created(){
console.info(this.$route)
this.activeClass=this.$route.path
this.login_type=localStorage.getItem('login_type')
this.UserConsole(this.login_type,1)

204
src/components/common/country.js

@ -0,0 +1,204 @@
export function monthArray(){
const monthArray=['1月','2月','3月','4月','5月','6月','7月','8月','9月','10月','11月','12月'];
return monthArray;
}
export function staticCountryArray(){
const countrys=[{
label: '热门国家',
options: [{value:'China',label:'中国'},]
},{
label: '所有国家',
options: [
{value:'Angola',label:'安哥拉'},
{value:'Afghanistan',label:'阿富汗'},
{value:'Albania',label:'阿尔巴尼亚'},
{value:'Algeria',label:'阿尔及利亚'},
{value:'Andorra',label:'安道尔共和国'},
{value:'Anguilla',label:'安圭拉岛'},
{value:'Antigua and Barbuda',label:'安提瓜和巴布达'},
{value:'Argentina',label:'阿根廷'},
{value:'Armenia',label:'亚美尼亚'},
{value:'Ascension',label:'阿森松'},
{value:'Australia',label:'澳大利亚'},
{value:'Austria',label:'奥地利'},
{value:'Azerbaijan',label:'阿塞拜疆'},
{value:'Bahamas',label:'巴哈马'},
{value:'Bahrain',label:'巴林'},
{value:'Bangladesh',label:'孟加拉国'},
{value:'Barbados',label:'巴巴多斯'},
{value:'Belarus',label:'白俄罗斯'},
{value:'Belgium',label:'比利时'},
{value:'Belize',label:'伯利兹'},
{value:'Benin',label:'贝宁'},
{value:'Bermuda Is',label:'百慕大群岛'},
{value:'Bolivia',label:'玻利维亚'},
{value:'Botswana',label:'博茨瓦纳'},
{value:'Brazil',label:'巴西'},
{value:'Brunei',label:'文莱'},
{value:'Bulgaria',label:'保加利亚'},
{value:'Burkina Faso',label:'布基纳法索'},
{value:'Burma',label:'缅甸'},
{value:'Burundi',label:'布隆迪'},
{value:'Cameroon',label:'喀麦隆'},
{value:'Canada',label:'加拿大'},
{value:'Cayman Is',label:'开曼群岛'},
{value:'Central African Republic',label:'中非共和国'},
{value:'Chad',label:'乍得'},
{value:'Chile',label:'智利'},
{value:'China',label:'中国'},
{value:'Colombia',label:'哥伦比亚'},
{value:'Congo',label:'刚果'},
{value:'Cook Is',label:'库克群岛'},
{value:'Costa Rica',label:'哥斯达黎加'},
{value:'Cuba',label:'古巴'},
{value:'Cyprus',label:'塞浦路斯'},
{value:'Czech Republic',label:'捷克'},
{value:'Denmark',label:'丹麦'},
{value:'Djibouti',label:'吉布提'},
{value:'Dominica Rep',label:'多米尼加共和国'},
{value:'Ecuador',label:'厄瓜多尔'},
{value:'Egypt',label:'埃及'},
{value:'EI Salvador',label:'萨尔瓦多'},
{value:'Estonia',label:'爱沙尼亚'},
{value:'Ethiopia',label:'埃塞俄比亚'},
{value:'Fiji',label:'斐济'},
{value:'Finland',label:'芬兰'},
{value:'France',label:'法国'},
{value:'French Guiana',label:'法属圭亚那'},
{value:'French Polynesia',label:'法属玻利尼西亚'},
{value:'Gabon',label:'加蓬'},
{value:'Gambia',label:'冈比亚'},
{value:'Georgia',label:'格鲁吉亚'},
{value:'Germany',label:'德国'},
{value:'Ghana',label:'加纳'},
{value:'Gibraltar',label:'直布罗陀'},
{value:'Greece',label:'希腊'},
{value:'Grenada',label:'格林纳达'},
{value:'Guam',label:'关岛'},
{value:'Guatemala',label:'危地马拉'},
{value:'Guinea',label:'几内亚'},
{value:'Guyana',label:'圭亚那'},
{value:'Haiti',label:'海地'},
{value:'Honduras',label:'洪都拉斯'},
{value:'Hungary',label:'匈牙利'},
{value:'Iceland',label:'冰岛'},
{value:'India',label:'印度'},
{value:'Indonesia',label:'印度尼西亚'},
{value:'Iran',label:'伊朗'},
{value:'Iraq',label:'伊拉克'},
{value:'Ireland',label:'爱尔兰'},
{value:'Israel',label:'以色列'},
{value:'Italy',label:'意大利'},
{value:'Ivory Coast',label:'科特迪瓦'},
{value:'Jamaica',label:'牙买加'},
{value:'Japan',label:'日本'},
{value:'Jordan',label:'约旦'},
{value:'Kampuchea (Cambodia )',label:'柬埔寨'},
{value:'Kazakstan',label:'哈萨克斯坦'},
{value:'Kenya',label:'肯尼亚'},
{value:'Korea',label:'韩国'},
{value:'Kuwait',label:'科威特'},
{value:'Kyrgyzstan',label:'吉尔吉斯坦'},
{value:'Laos',label:'老挝'},
{value:'Latvia',label:'拉脱维亚'},
{value:'Lebanon',label:'黎巴嫩'},
{value:'Lesotho',label:'莱索托'},
{value:'Liberia',label:'利比里亚'},
{value:'Libya',label:'利比亚'},
{value:'Liechtenstein',label:'列支敦士登'},
{value:'Lithuania',label:'立陶宛'},
{value:'Luxembourg',label:'卢森堡'},
{value:'Madagascar',label:'马达加斯加'},
{value:'Malawi',label:'马拉维'},
{value:'Malaysia',label:'马来西亚'},
{value:'Maldives',label:'马尔代夫'},
{value:'Mali',label:'马里'},
{value:'Malta',label:'马耳他'},
{value:'Mariana Is',label:'马里亚那群岛'},
{value:'Martinique',label:'马提尼克'},
{value:'Mauritius',label:'毛里求斯'},
{value:'Mexico',label:'墨西哥'},
{value:'Moldova',label:'摩尔多瓦'},
{value:'Monaco',label:'摩纳哥'},
{value:'Mongolia',label:'蒙古'},
{value:'Montserrat Is',label:'蒙特塞拉特岛'},
{value:'Morocco',label:'摩洛哥'},
{value:'Mozambique',label:'莫桑比克'},
{value:'Namibia',label:'纳米比亚'},
{value:'Nauru',label:'瑙鲁'},
{value:'Nepal',label:'尼泊尔'},
{value:'Netheriands Antilles',label:'荷属安的列斯'},
{value:'Netherlands',label:'荷兰'},
{value:'New Zealand',label:'新西兰'},
{value:'Nicaragua',label:'尼加拉瓜'},
{value:'Niger',label:'尼日尔'},
{value:'Nigeria',label:'尼日利亚'},
{value:'North Korea',label:'朝鲜'},
{value:'Norway',label:'挪威'},
{value:'Oman',label:'阿曼'},
{value:'Pakistan',label:'巴基斯坦'},
{value:'Panama',label:'巴拿马'},
{value:'Papua New Cuinea',label:'巴布亚新几内亚'},
{value:'Paraguay',label:'巴拉圭'},
{value:'Peru',label:'秘鲁'},
{value:'Philippines',label:'菲律宾'},
{value:'Poland',label:'波兰'},
{value:'Portugal',label:'葡萄牙'},
{value:'Puerto Rico',label:'波多黎各'},
{value:'Qatar',label:'卡塔尔'},
{value:'Reunion',label:'留尼旺'},
{value:'Romania',label:'罗马尼亚'},
{value:'Russia',label:'俄罗斯'},
{value:'Saint Lueia',label:'圣卢西亚'},
{value:'Saint Vincent',label:'圣文森特岛'},
{value:'Samoa Eastern',label:'东萨摩亚(美)'},
{value:'Samoa Western',label:'西萨摩亚'},
{value:'San Marino',label:'圣马力诺'},
{value:'Sao Tome and Principe',label:'圣多美和普林西比'},
{value:'Saudi Arabia',label:'沙特阿拉伯'},
{value:'Senegal',label:'塞内加尔'},
{value:'Seychelles',label:'塞舌尔'},
{value:'Sierra Leone',label:'塞拉利昂'},
{value:'Singapore',label:'新加坡'},
{value:'Slovakia',label:'斯洛伐克'},
{value:'Slovenia',label:'斯洛文尼亚'},
{value:'Solomon Is',label:'所罗门群岛'},
{value:'Somali',label:'索马里'},
{value:'South Africa',label:'南非'},
{value:'Spain',label:'西班牙'},
{value:'SriLanka',label:'斯里兰卡'},
{value:'St.Lucia',label:'圣卢西亚'},
{value:'St.Vincent',label:'圣文森特'},
{value:'Sudan',label:'苏丹'},
{value:'Suriname',label:'苏里南'},
{value:'Swaziland',label:'斯威士兰'},
{value:'Sweden',label:'瑞典'},
{value:'Switzerland',label:'瑞士'},
{value:'Syria',label:'叙利亚'},
{value:'Tajikstan',label:'塔吉克斯坦'},
{value:'Tanzania',label:'坦桑尼亚'},
{value:'Thailand',label:'泰国'},
{value:'Togo',label:'多哥'},
{value:'Tonga',label:'汤加'},
{value:'Trinidad and Tobago',label:'特立尼达和多巴哥'},
{value:'Tunisia',label:'突尼斯'},
{value:'Turkey',label:'土耳其'},
{value:'Turkmenistan',label:'土库曼斯坦'},
{value:'Uganda',label:'乌干达'},
{value:'Ukraine',label:'乌克兰'},
{value:'United Arab Emirates',label:'阿拉伯联合酋长国'},
{value:'United Kiongdom',label:'英国'},
{value:'United States of America',label:'美国'},
{value:'Uruguay',label:'乌拉圭'},
{value:'Uzbekistan',label:'乌兹别克斯坦'},
{value:'Venezuela',label:'委内瑞拉'},
{value:'Vietnam',label:'越南'},
{value:'Yemen',label:'也门'},
{value:'Yugoslavia',label:'南斯拉夫'},
{value:'Zimbabwe',label:'津巴布韦'},
{value:'Zaire',label:'扎伊尔'},
{value:'Zambia',label:'赞比亚'}
]
}]
return countrys;
}

532
src/components/page/Hoster/Listing.vue

@ -0,0 +1,532 @@
<template>
<div class="body">
<p class="title">资产挂牌</p>
<div class="listing_title">基础信息</div>
<el-form :model="ruleForm" :rules="rules" ref="ruleForm1" label-width="150px" class="ruleForm" label-position="left">
<el-form-item label="上传资产图片" prop="serial_img" >
<p class="listing_tips">上传高清质量资产正面图有助快速通过审核方便购买方了解资产图片尺寸建议为800px * 800px</p>
<div class="listing_upload">
<el-upload
class="avatar-uploader"
:action="action"
:show-file-list="false"
:on-change="fileChange"
:on-success="(res)=>{handleAvatarSuccess(0,res,index)}" v-for="(item,index) in 5" :key="index">
<img v-if="ruleForm.serial_img[index]" :src="ruleForm.serial_img[index]" class="avatar">
<template v-else>
<i class="el-icon-plus avatar-uploader-icon"></i>
<p class="avatar_p">添加上传图片</p>
</template>
</el-upload>
</div>
</el-form-item>
<el-form-item label="资产名称" prop="serial_name" >
<el-input v-model="ruleForm.serial_name" placeholder="最多允许输入30个汉字(60字符)" class="serial_name"></el-input>
</el-form-item>
<el-form-item label="资产类型" prop="asset_type_id" >
<p class="listing_tips">请确认或修改资产类型</p>
<el-cascader :show-all-levels="false" filterable :props="props" :options="options" class="serial_name" v-model="ruleForm.asset_type_id"></el-cascader>
</el-form-item>
<el-form-item label="资产所在地" prop="province">
<el-select placeholder="选择具体省份" clearable filterable v-model="ruleForm.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="ruleForm.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="ruleForm.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>
</el-form-item>
<el-form-item label="资产基本情况" prop="serial_content" >
<div class="listing_title1">
<p class="listing_tips">请确认或修改资产类型</p>
<div class="listing_title1_right">
<button class="listing_button">下载模板</button>
<button class="listing_button">上传文件</button>
</div>
</div>
<mavon-editor
v-model="ruleForm.serial_content"
:subfield="false" ref="md" :boxShadow="false"
@imgAdd="$imgAdd" @change="change"
class="listing_editor"/>
<div class="upload_file">
<p class="listing_tips">已上传文件</p>
</div>
</el-form-item>
<el-form-item label="其他资产材料" :prop="ruleForm.buy_mode==2?'serial_img' :'' " >
<p class="listing_tips">请上传与资产相关的证明材料线上交易请在此处上传相关资产</p>
<button class="listing_button">上传文件</button>
</el-form-item>
<el-form-item label="内部决策情况" prop="decision" >
<el-radio v-model="ruleForm.decision" :label="1">个人同意</el-radio>
<el-radio v-model="ruleForm.decision" :label="2">股东会决议</el-radio>
<el-radio v-model="ruleForm.decision" :label="3">董事会决议</el-radio>
<el-radio v-model="ruleForm.decision" :label="4">总经理办公会决议</el-radio>
<el-radio v-model="ruleForm.decision" :label="5">其他</el-radio>
<el-input v-model="ruleForm.decision_case" v-if="ruleForm.decision==5" placeholder="请输入其他情况" class="listing_input"></el-input>
</el-form-item>
<el-form-item label="挂牌时长" prop="cartellino_time_id" >
<el-select placeholder="选择挂牌时长" clearable filterable v-model="ruleForm.cartellino_time_id" class="select_city1">
<el-option
v-for="item in xuanzeguojia"
:key="item.id"
:label="item.value"
:value="item.value"></el-option>
</el-select>
</el-form-item>
<div class="listing_title">交易信息</div>
<el-form-item label="挂牌类型" prop="cartellino_type" >
<el-radio v-model="ruleForm.cartellino_type" :label="1">协议</el-radio>
<el-radio v-model="ruleForm.cartellino_type" :label="2">拍卖</el-radio>
</el-form-item>
<el-form-item label="资产单价" prop="price" v-if="ruleForm.cartellino_type==1">
<el-input v-model="ruleForm.price" placeholder="请输入单个资产的价格" class="listing_input"></el-input>
</el-form-item>
<div class="listing_flex">
<el-form-item label="起拍单价" prop="start_auction_money" v-if="ruleForm.cartellino_type==2">
<el-input v-model="ruleForm.start_auction_money" placeholder="请输入起拍单价" class="listing_input"></el-input>
</el-form-item>
<el-form-item label="竞价金额" prop="bidding_money" v-if="ruleForm.cartellino_type==2">
<el-input v-model="ruleForm.bidding_money" placeholder="请输入单次竞价时需要增加的金额" class="listing_input"></el-input>
</el-form-item>
</div>
<div class="listing_flex">
<el-form-item label="资产单位" prop="asset_unit" >
<el-input v-model="ruleForm.asset_unit" placeholder="请输入单个资产单位的量词" class="listing_input"></el-input>
</el-form-item>
<el-form-item label="挂牌数量" prop="count">
<el-input v-model="ruleForm.count" placeholder="请输入需要挂牌资产的数量" class="listing_input"></el-input>
</el-form-item>
</div>
<el-form-item label="起购数量" prop="pay_count">
<el-input v-model="ruleForm.pay_count" placeholder="请输入购买时单次至少购买数量" class="listing_input"></el-input>
</el-form-item>
<el-form-item label="付款方式" prop="pay_mode" >
<el-radio v-model="ruleForm.pay_mode" :label="1">网银支付</el-radio>
<el-radio v-model="ruleForm.pay_mode" :label="2">对公转账</el-radio>
<span class="listing_tips">交易金额大于200万时系统自动选择对公转账</span>
</el-form-item>
<el-form-item label="交易方式" prop="buy_mode" >
<el-radio v-model="ruleForm.buy_mode" :label="1">线下交易</el-radio>
<el-radio v-model="ruleForm.buy_mode" :label="2">线上交易</el-radio>
<span class="listing_tips">选取线上交易请在基础信息内上传资产数据</span>
</el-form-item>
<el-form-item label="交付方式" prop="goods_mode">
<el-radio v-model="ruleForm.goods_mode" :label="1">现场交付</el-radio>
<el-radio v-model="ruleForm.goods_mode" :label="2">物流配送</el-radio>
<el-input v-model="ruleForm.express_money" v-if="ruleForm.goods_mode==2" placeholder="请输入物流配送金额" class="listing_input"></el-input>
</el-form-item>
<div class="listing_title">挂牌费用说明</div>
<el-form-item label="交付方式" prop="serial_img">
<el-radio v-model="ruleForm.pay_type" :label="1">支付宝支付</el-radio>
<el-radio v-model="ruleForm.pay_type" :label="2">网银支付</el-radio>
</el-form-item>
</el-form>
<div class="footer">
<button class="submit" @click="submit">提交资料</button>
</div>
</div>
</template>
<script>
import { mavonEditor } from 'mavon-editor'
import 'mavon-editor/dist/css/index.css'
import {get_asset_type,getProvince,getCity,getArea,cartellino,getPrice} from '../../../api/index'
export default {
data(){
return{
host:'http://wenhua.xingtongworld.com',
action:'http://wenhua.xingtongworld.com/api/Index/uploadimg',
query:{
id:'',
// name:''
},
options:[],
props: {
multiple: true,
value:'id',
label:'name',
leaf:'is_son',
},
province:[],
city:[],
area:[],
xuanzeguojia:[],
ruleForm:{
serial_name:'',
serial_img:[],
asset_type_id:'',
province:null,
city:'',
area:'',
serial_content:'',
else_serial_file:[],
decision:1,
decision_case:'',
cartellino_time_id:'',
cartellino_type:1,
price:'',
asset_unit:'',
count:'',
pay_count:'',
pay_mode:1,
buy_mode:1,
goods_mode:1,
express_money:'',
start_auction_money:'',
bidding_money:'',
pay_type:1,
},
rules:{
serial_img: [
{ required: true, message: '请上传资产图片', trigger: 'blur' },
],
serial_name: [
{ required: true, message: '请输入资产名称', trigger: 'blur' },
],
asset_type_id: [
{ required: true, message: '请选择资产类型', trigger: 'blur' },
],
province: [
{ required: true, message: '请选择资产所在地(省)', trigger: 'blur' },
],
serial_content: [
{ required: true, message: '请输入资产基本情况', trigger: 'blur' },
],
else_serial_file: [
{ required: true, message: '请上传其他资产材料', trigger: 'blur' },
],
decision: [
{ required: true, message: '请选择内部决策情况', trigger: 'blur' },
],
cartellino_time_id: [
{ required: true, message: '请选择挂牌时长', trigger: 'blur' },
],
cartellino_type: [
{ required: true, message: '请选择挂牌类型', trigger: 'blur' },
],
price: [
{ required: true, message: '请输入资产单价', trigger: 'blur' },
],
asset_unit: [
{ required: true, message: '请输入资产单位', trigger: 'blur' },
],
count: [
{ required: true, message: '请输入挂牌数量', trigger: 'blur' },
],
pay_count: [
{ required: true, message: '请输入购买时单次至少购买数量', trigger: 'blur' },
],
pay_mode: [
{ required: true, message: '请选择付款方式', trigger: 'blur' },
],
buy_mode: [
{ required: true, message: '请选择交易方式', trigger: 'blur' },
],
goods_mode: [
{ required: true, message: '请选择交付方式', trigger: 'blur' },
],
pay_type: [
{ required: true, message: '请选择支付方式', trigger: 'blur' },
],
start_auction_money: [
{ required: true, message: '请输入起拍单价', trigger: 'blur' },
],
bidding_money: [
{ required: true, message: '请输入竞价金额', trigger: 'blur' },
],
},
}
},
components: {
mavonEditor
},
created(){
this.get_asset_type();
this.getProvince();
this.getPrice()
},
methods:{
getPrice(){
getPrice().then(res => {
console.info(res)
if(res.code==100){
}
})
},
changeDate(type){
console.info(type)
if(type==0){
this.getCity()
}else if(type==1){
this.getArea()
}
},
getProvince(){
getProvince().then(res => {
console.info(res)
if(res.code==100){
this.province=res.list
}
})
},
getCity(){
let data={
code:this.ruleForm.province
}
getCity(data).then(res=>{
console.info(res)
if(res.code==100){
this.city=res.list
}
})
},
getArea(){
let data={
code:this.ruleForm.city
}
getArea(data).then(res=>{
console.info(res)
if(res.code==100){
this.area=res.list
}
})
},
get_asset_type(){
get_asset_type().then(res=>{
console.info(res)
if(res.code==100){
this.options=res.data
}
})
},
submit(){
this.$refs["ruleForm1"].validate((valid) => {
if(valid){
cartellino(this.ruleForm).then(res=>{
})
}
})
},
// md
$imgAdd(pos, $file){
var formdata = new FormData();
formdata.append('file', $file);
//
this.$axios({
url: this.action,
method: 'post',
data: formdata,
headers: { 'Content-Type': 'multipart/form-data' },
}).then((url) => {
this.$refs.md.$img2Url(pos, url);
})
},
change(value, render){
// render markdown
this.html = render;
},
fileChange(file){
const typeArr = ['image/png', 'image/gif', 'image/jpeg', 'image/jpg'];
const isJPG = typeArr.indexOf(file.raw.type) !== -1;
const isLt3M = file.size / 1024 / 1024 < 10;
if (!isJPG) {
this.$message.error('只能是图片!');
this.$refs.upload.clearFiles();
return;
}
if (!isLt3M) {
this.$message.error('上传图片大小不能超过 10MB!');
this.$refs.upload.clearFiles();
return;
}
},
overstep(){
this.$message.error('只能上传一张图片!');
},
handleAvatarSuccess(type,res,index) {
console.info(res)
if(res.code == 1){
let url=this.host + res.data.img_url;
if(type==0){
console.info(index)
if(this.ruleForm.serial_img[index]){
// this.ruleForm.serial_img[index]=url
this.$set(this.ruleForm.serial_img,index,url)
}else{
this.ruleForm.serial_img.push(url)
}
console.info(this.ruleForm.serial_img)
}
}
}
}
}
</script>
<style scoped>
.body{
margin-top: 15px;
}
.title{
color: #333333;
font-size: 18px;
margin-bottom: 15px;
}
.listing_title1{
display: flex;
align-items: center;
width: 800px;
justify-content: space-between;
margin-bottom: 15px;
}
.listing_title{
background-color: #C94D4D;
color: white;
font-size: 16px;
height: 40px;
line-height: 40px;
padding-left: 20px;
}
.upload_file{
margin: 15px 0;
}
.listing_flex{
display: flex;
}
.listing_editor{
min-height: 500px;
width: 800px;
border: 1px solid #D1D1D1;
}
.listing_title1_right{
width: 160px;
display: flex;
justify-content: space-between;
}
.listing_button{
width: 70px;
height: 32px;
border-radius: 5px;
border: 1px solid #E7B0B0;
background: #F3D8D8;
font-size: 14px;
color: rgba(201, 76, 76, 0.898039215686275);
}
.listing_upload{
display: flex;
margin-top: 10px;
}
.select_type{
width: 800px;
height: 50px;
color: #7F7F7F;
padding-left: 15px;
line-height: 50px;
background-color: #FDF8F8;
border: 1px solid #F3D8D8;
margin-bottom: 10px;
}
.listing_tips{
font-size: 14px;
color: rgba(127, 127, 127, 0.898039215686275);
}
.listing_tips:hover{
color: #D85E5E;
}
.avatar_p{
font-size: 14px;
color: #7F7F7F;
}
.serial_name{
width: 800px;
}
.select_city{
width: 200px;
margin-right: 15px;
}
.select_city1{
width: 400px;
}
.listing_input{
width: 300px;
}
.footer{
text-align: center;
margin-top: 50px;
}
.submit{
width: 340px;
height: 40px;
background: -moz-linear-gradient(top, #F8D89F 0%, #D98282 100%);
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#F8D89F), color-stop(100%,#D98282));
background: -webkit-linear-gradient(top, #F8D89F 0%,#D98282 100%);
background: -o-linear-gradient(top, #F8D89F 0%,#D98282 100%);
background: -ms-linear-gradient(top, #F8D89F 0%,#D98282 100%);
background: linear-gradient(to bottom, #F8D89F 0%,#D98282 100%);
font-size: 14px;
color: #FFFFFF;
border: none;
margin-bottom: 10px;
}
.avatar-uploader{
margin-right: 15px;
}
.ruleForm>>>.el-form-item__label{
padding-left: 20px;
text-align: right;
}
.avatar-uploader >>> .el-upload--text{
width: 120px;
height: 120px;
/* line-height: 120px; */
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
}
.avatar-uploader .el-upload {
border: 1px dashed #d9d9d9;
border-radius: 6px;
cursor: pointer;
position: relative;
overflow: hidden;
}
.avatar-uploader .el-upload:hover {
border-color: #409EFF;
}
.avatar-uploader-icon {
font-size: 40px;
color: #8c939d;
width: 40px;
height: 40px;
line-height: 40px;
text-align: center;
color: #CB5151;
}
.avatar-uploader img{
width: 120px;
height: 120px;
line-height: 120px;
}
</style>

19
src/components/page/Hoster/myAssets.vue

@ -4,11 +4,11 @@
<div class="header_left">
<span v-for="(item,index) in headerList" :key="index" :class="header_active==index ? 'header_active':''" @click="goPage(item.url)">{{item.name}}</span>
</div>
<button class="hedaer_button">资产挂牌</button>
<button class="hedaer_button" @click="goPage">资产挂牌</button>
</div>
<div class="seach">
<div class="seach_item">
<el-input v-model="query.input" placeholder="请输入资产名称/资产编号或托管方名称" class="seach_input" suffix-icon="el-icon-search"></el-input>
<el-input v-model="query.search_name" placeholder="请输入资产名称/资产编号或托管方名称" class="seach_input" suffix-icon="el-icon-search"></el-input>
</div>
<div class="seach_item">
<el-date-picker
@ -71,14 +71,16 @@
</div>
</template>
<script>
import {assetList} from '../../../api/index'
export default {
data(){
return{
query:{
input:'',
search_name:'',
time:'',
page:1,
limit:10,
status:''
},
pageTotal:50,
@ -93,7 +95,18 @@ export default {
header_active:0
}
},
created(){
this.assetList()
},
methods:{
assetList(){
assetList(this.query).then(res => {
console.info(res)
})
},
goPage(){
this.$router.push('/AssetListing')
},
//
handlePageChange(val) {
this.$set(this.query, 'page', val);

7
src/components/page/Purchaser/wkPurchaser.vue

@ -133,7 +133,7 @@ export default {
checked:1,
disabled:false,
host:'http://wenhua.xingtongworld.com',
action:'http://wenhua.xingtongworld.com/public/index.php/api/Index/uploadimg',
action:'http://wenhua.xingtongworld.com/api/Index/uploadimg',
upList:[
{name:'营业执照(复印件)',type:0,url:'',key:'business_license'},
{name:'法人代表证明书',type:0,url:'',key:'legal_certificate'},
@ -239,6 +239,7 @@ export default {
if(res.data!=null){
this.disabled=true
this.changeRadio(res.data.account_type)
res.data.establish_time=res.data.establish_time*1000
for(let key in res.data){
for(let item in this.ruleForm){
if(key==item){
@ -292,12 +293,16 @@ export default {
this.$refs["ruleForm1"].validate((valid) => {
if(valid){
if(this.ruleForm.account_type==1){
this.ruleForm.establish_time=this.ruleForm.establish_time/1000
}
openAccount(this.ruleForm).then(res => {
console.info(res)
if(res.code==101){
this.$message.error(res.msg);
}else{
this.$message.success('上传资料成功!请等待审核~');
this.disabled=true
}
});
}

7
src/components/page/Purchaser/wkThird.vue

@ -132,7 +132,7 @@ export default {
checked:1,
disabled:false,
host:'http://wenhua.xingtongworld.com',
action:'http://wenhua.xingtongworld.com/public/index.php/api/Index/uploadimg',
action:'http://wenhua.xingtongworld.com/api/Index/uploadimg',
upList:[
{name:'营业执照(复印件)',type:0,url:'',key:'business_license'},
{name:'法人代表证明书',type:0,url:'',key:'legal_certificate'},
@ -238,6 +238,7 @@ export default {
if(res.data!=null){
this.disabled=true
this.changeRadio(res.data.account_type)
res.data.establish_time=res.data.establish_time*1000
for(let key in res.data){
for(let item in this.ruleForm){
if(key==item){
@ -291,12 +292,16 @@ export default {
this.$refs["ruleForm1"].validate((valid) => {
if(valid){
if(this.ruleForm.account_type==1){
this.ruleForm.establish_time=this.ruleForm.establish_time/1000
}
openAccount(this.ruleForm).then(res => {
console.info(res)
if(res.code==101){
this.$message.error(res.msg);
}else{
this.$message.success('上传资料成功!请等待审核~');
this.disabled=true
}
});
}

13
src/components/page/Purchaser/wkTrusteeship.vue

@ -133,14 +133,14 @@ export default {
checked:1,
disabled:false,
host:'http://wenhua.xingtongworld.com',
action:'http://wenhua.xingtongworld.com/public/index.php/api/Index/uploadimg',
action:'http://wenhua.xingtongworld.com/api/Index/uploadimg',
upList:[
{name:'营业执照(复印件)',type:0,url:'',key:'business_license'},
{name:'法人代表证明书',type:0,url:'',key:'legal_certificate'},
{name:'法人身份证件(复印件)',type:0,url:'',key:'legal_card'},
{name:' 数字证书申请表',type:0,url:'',key:'number_certificate'},
{name:' 银行开户证明',type:0,url:'',key:'bank_account_certificate'},
{name:'资产证明文件',type:0,url:'',key:'asset_certificate'},
{name:'资产托管权属承诺函',type:0,url:'',key:'asset_trusteeship'},
{name:'法人授权委托书',type:0,url:'',key:'legal_authorization'},
{name:'经办人身份证(复印件)',type:0,url:'',key:'operator_card'},
{name:'其他要求文件',type:0,url:'',key:'else_file'},
@ -239,6 +239,7 @@ export default {
if(res.data!=null){
this.disabled=true
this.changeRadio(res.data.account_type)
res.data.establish_time=res.data.establish_time*1000
for(let key in res.data){
for(let item in this.ruleForm){
if(key==item){
@ -265,7 +266,7 @@ export default {
{name:'法人身份证件(复印件)',type:0,url:'',key:'legal_card'},
{name:' 数字证书申请表',type:0,url:'',key:'number_certificate'},
{name:' 银行开户证明',type:0,url:'',key:'bank_account_certificate'},
{name:'资产证明文件',type:0,url:'',key:'asset_certificate'},
{name:'资产托管权属承诺函',type:0,url:'',key:'asset_trusteeship'},
{name:'法人授权委托书',type:0,url:'',key:'legal_authorization'},
{name:'经办人身份证(复印件)',type:0,url:'',key:'operator_card'},
{name:'其他要求文件',type:0,url:'',key:'else_file'},
@ -275,7 +276,7 @@ export default {
{name:'身份证正面',type:0,url:'',key:'user_card_front'},
{name:'身份证背面',type:0,url:'',key:'user_card_backfacade'},
{name:' 数字证书申请表',type:0,url:'',key:'number_certificate'},
{name:'资产证明文件',type:0,url:'',key:'asset_certificate'},
{name:'资产托管权属承诺函',type:0,url:'',key:'asset_trusteeship'},
{name:'其他要求文件',type:0,url:'',key:'else_file'},
]
}
@ -292,12 +293,16 @@ export default {
this.$refs["ruleForm1"].validate((valid) => {
if(valid){
if(this.ruleForm.account_type==1){
this.ruleForm.establish_time=this.ruleForm.establish_time/1000
}
openAccount(this.ruleForm).then(res => {
console.info(res)
if(res.code==101){
this.$message.error(res.msg);
}else{
this.$message.success('上传资料成功!请等待审核~');
this.disabled=true
}
});
}

5
src/router/index.js

@ -108,6 +108,11 @@ export default new Router({
},
]
},
{
path: 'AssetListing',
component: () => import(/* webpackChunkName: "dashboard" */ '../components/page/Hoster/Listing.vue'),
meta: { title: '资产挂牌' }
},
]
}
]

Loading…
Cancel
Save