Merge remote-tracking branch 'origin/dev' into dev

pull/7/head
张腾 2024-09-08 23:51:24 +08:00
commit 1c3790a689
30 changed files with 3041 additions and 435 deletions

View File

@ -0,0 +1,100 @@
import request from "@/utils/request";
//发送邮箱验证码
export function apitest(email){
return request({
url:"/market/company/sendcode/"+email,
method: "POST",
})
}
export function reducetestcount(data){
return request({
url:"/market/producttest/reducetestcount",
method: "POST",
data: data
})
}
export function iftest(data){
return request({
url:"/market/product/iftest",
method: "POST",
data: data
})
}
export function findcount(data){
return request({
url:"/market/producttest/findcount",
method: "POST",
data: data
})
}
export function getHeader(data){
return request({
url:"/market/producttest/productheader",
method: "POST",
data: data
})
}
export function getRequest(data){
return request({
url:"/market/producttest/productrequest",
method: "POST",
data: data
})
}
export function sendrequest(options){
// 确保options是一个对象并且包含必要的属性
if (!options || typeof options !== 'object' || !options.apiRouter || typeof options.parameter === 'undefined') {
throw new Error('Invalid options: must be an object with apiRouter and optional parameter properties');
}
// 构建完整的URL
const fullUrl = `/background/api/${options.apiRouter}/${options.parameter || ''}`;
return request({
url:fullUrl,
method: "get",
data: options.parameter,
})
}
export function sendrequest1(options){
// 确保options是一个对象并且包含必要的属性
if (!options || typeof options !== 'object' || !options.apiRouter ) {
throw new Error('Invalid options: must be an object with apiRouter ');
}
// 构建完整的URL
const fullUrl = `/background/api/${options.apiRouter}`;
return request({
url:fullUrl,
method: "post",
data: options
})
}
export function sendrequest2(options){
// 确保options是一个对象并且包含必要的属性
if (!options || typeof options !== 'object' || !options.apiRouter ) {
throw new Error('Invalid options: must be an object with apiRouter ');
}
// 构建完整的URL
const fullUrl = `/background/api/${options.apiRouter}`;
return request({
url:fullUrl,
method: "post"
})
}

View File

@ -0,0 +1,16 @@
import request from "@/utils/request";
export function companyauthentication(data){
return request({
url:"/market/company/companyauthentication",
method: "POST",
data: data
})
}
export function ifcompanyauthentication(data){
return request({
url:"/market/company/ifcompanyauthentication",
method: "POST",
data: data
})
}

View File

@ -1,5 +1,15 @@
import request from "@/utils/request"; import request from "@/utils/request";
//发送邮箱验证码
export function sendcode1(email){
return request({
url:"/market/company/sendcode/"+email,
method: "POST",
})
}
//绑定邮箱
export function linkemail(data){ export function linkemail(data){
return request({ return request({
url:"/market/company/list", url:"/market/company/list",

View File

@ -0,0 +1,49 @@
import request from "@/utils/request";
export function selectapiList(data){
return request({
url:"/background/apimanage/list",
method: "POST",
data: data
})
}
export function apiupdmessage(data){
return request({
url:"/background/apimanage/upd",
method: "POST",
data: data
})
}
export function productStateList(data){
return request({
url:"/background/apimanage/productState",
method: "POST",
data: data
})
}
export function UpdproductState(data){
return request({
url:"/background/apimanage/updproductState",
method: "POST",
data: data
})
}
export function addproduct(data){
return request({
url:"/background/apimanage/add",
method: "POST",
data: data
})
}
export function delapi(productId){
return request({
url:"/background/apimanage/del/"+productId,
method: "POST",
})
}

View File

@ -8,6 +8,14 @@ export function selectcompanyList(data){
}) })
} }
export function reviewStatus(data){
return request({
url:"/background/company/reviewStatus",
method: "POST",
data: data
})
}
export function selectcompanystatus(data){ export function selectcompanystatus(data){
return request({ return request({
url:"/background/company/companystatus", url:"/background/company/companystatus",

View File

@ -1,5 +1,6 @@
import request from "@/utils/request"; import request from "@/utils/request";
export function selectList(data){ export function selectList(data){
return request({ return request({
url:"/market/orders/list", url:"/market/orders/list",
@ -7,3 +8,83 @@ export function selectList(data){
data: data data: data
}) })
} }
export function addordersup(data){
return request({
url:"/market/orders/addOrdeds",
method: "POST",
data: data
})
}
export function ordersDelete(ordersId) {
return request({
url: "/market/orders/delByOrderId/" + ordersId ,
method: "GET"
})
}
export function updateOrders(data) {
return request({
url: "/market/orders/updateOrders",
method: "POST",
data: data
})
}
export function updateByeExist(ordersId) {
return request({
url: "/market/orders/updateByeExist/" + ordersId ,
method: "GET"
})
}
export function updateByExist(ordersId) {
return request({
url: "/market/orders/updateByExist/" + ordersId ,
method: "GET"
})
}
export function orderssd(ordersId) {
return request({
url: "/market/orders/delByOrderId/" + ordersId ,
method: "GET"
})
}
export function pay(data){
return request({
url:"/market/alipay/pay",
method: "get",
data: data
})}
export function getOut(){
return request({
url:"/market/orders/getOutAll",
method: "GET"
})}
export function updateByordersState1(data){
return request({
url:"/market/orders/updateByordersState1",
method: "POST",
data: data
})}
export function listreclaim(data){
return request({
url:"/market/orders/listreclaim",
method: "POST",
data: data
})}

View File

@ -16,4 +16,27 @@ export function selectTypeList(data){
data: data data: data
}) })
} }
export function selectproductspecification(data){
return request({
url:"/market/product/specification",
method: "POST",
data: data
})
}
export function ifbuy(data){
return request({
url:"/market/product/ifbuy",
method: "POST",
data: data
})
}
export function showByproductId(productId){
return request({
url:"/market/product/showByproductId="+productId,
method: "GET"
})
}

View File

@ -1,4 +1,5 @@
import request from "@/utils/request"; import request from "@/utils/request";
import { handleDelete } from '@/api/market/product'
export function gethostportList(){ export function gethostportList(){
return request({ return request({

View File

@ -1,9 +1,10 @@
import request from '@/utils/request' import request from '@/utils/request'
export function getConnectList(data) { export function getExtractDataTableNameList() {
return request({ return request({
url: '/property/dataSource/dataName', url: '/property/dataRunName/extractDataTableName',
method: 'post', method: 'post',
data: data
}) })
} }

View File

@ -1,8 +1,41 @@
import request from '@/utils/request' import request from '@/utils/request'
export function getConnectList(data) {
export function getExtractDataTableNameList() {
return request({ return request({
url: '/property/connect/selectConnect', url: '/property/dataRunName/extractDataTableName',
method: 'post',
})
}
export function addDeptAssetAuthorization(data) {
return request({
url: '/property/dataRunName/addDeptAssetAuthorization',
method: 'post',
data:data
})
}
export function delDeptAssetAuthorization(data) {
return request({
url: '/property/dataRunName/delDeptAssetAuthorization',
method: 'post',
data:data
})
}
export function addUserAssetAuthorization(data) {
return request({
url: '/property/dataRunName/addUserAssetAuthorization',
method: 'post',
data:data
})
}
export function delUserAssetAuthorization(data) {
return request({
url: '/property/dataRunName/delUserAssetAuthorization',
method: 'post', method: 'post',
data:data data:data
}) })

View File

@ -6,3 +6,17 @@ export function getExtractDataTableNameList() {
method: 'post', method: 'post',
}) })
} }
export function findTableValue(dataId,name) {
return request({
url: '/property/dataRunName/findTableValue?dataId='+dataId+"&tableName="+name,
method: 'post',
})
}
export function selectBasicList() {
return request({
url: '/property/dataRunName/selectBasicList',
method: 'post',
})
}

View File

@ -116,6 +116,66 @@ export const constantRoutes = [
} }
] ]
}, },
{
path: '/apidetailmessage',
component: Layout,
children: [
{
path: 'index',
name: 'apidetailmessage',
component: () => import('@/views/background/apidetailmessage/index.vue'),
meta: { title: '接口详情', icon: 'form' }
}
]
},
{
path: '/apimanage',
component: Layout,
children: [
{
path: 'index',
name: 'apimanage',
component: () => import('@/views/background/apimanage/index.vue'),
meta: { title: '接口列表', icon: 'form' }
}
]
},
{
path: '/apiupdmessage',
component: Layout,
children: [
{
path: 'index',
name: 'apiupdmessage',
component: () => import('@/views/background/apiupdmessage/index.vue'),
meta: { title: '接口列表', icon: 'form' }
}
]
},
{
path: '/updorders',
component: Layout,
children: [
{
path: 'index',
name: 'updorders',
component: () => import('@/views/market/updorders/index.vue'),
meta: { title: '修改订单详情', icon: 'form' }
}
]
},
{
path: '/reclaim',
component: Layout,
children: [
{
path: 'index',
name: 'reclaim',
component: () => import('@/views/market/reclaim/index.vue'),
meta: { title: '订单回收站', icon: 'form' }
}
]
},
] ]
// 动态路由,基于用户权限动态去加载 // 动态路由,基于用户权限动态去加载

View File

@ -0,0 +1,96 @@
<template>
<div>
<h3 style="color: #1482f0">接口详情:{{api.productName}}</h3>
<el-divider></el-divider>
{{api}}
<center>
<el-form :model="api" status-icon :rules="rules" ref="ruleForm" label-width="100px" class="demo-ruleForm">
<el-form-item label="序号" prop="productId" style="width: 70%">
{{api.productId}}
</el-form-item>
<el-form-item label="接口名称" prop="productName" style="width: 70%">
{{api.productName}}
</el-form-item>
<el-form-item label="接口类型" prop="productType" style="width: 70%">
{{api.productType}}
</el-form-item>
<el-form-item label="接口描述" prop="productContent" style="width: 70%">
{{api.productContent}}
</el-form-item>
<el-form-item label="接口销量" prop="productSales" style="width: 70%">
{{api.productSales}}
</el-form-item>
<el-form-item label="接口价格" prop="productPrice" style="width: 70%">
{{api.productPrice}}
</el-form-item>
<el-form-item label="接口来源" prop="productFrom" style="width: 70%">
{{api.productFrom}}
</el-form-item>
<el-form-item label="重要路由" prop="apiRouter" style="width: 70%">
{{api.apiRouter}}
</el-form-item>
<el-form-item label="接口地址" prop="apiAddress" style="width: 70%">
{{api.apiAddress}}
</el-form-item>
<el-form-item label="返回格式" prop="returnFormat" style="width: 70%">
{{api.returnFormat}}
</el-form-item>
<el-form-item label="请求方式" prop="requestMethod" style="width: 70%">
{{api.requestMethod}}
<el-button type="primary" @click="submitForm('ruleForm')"></el-button>
</el-form-item>
</el-form>
</center>
</div>
</template>
<script>
//jsjsjson,
//import from ',
export default {
name: "Apidetailmessage",
//import使"
components: {},
props: {},
data() {
//"
return {
api:{}
};
},
// data",
computed: {},
//data",
watch: {},
//",
methods: {
submitForm(){
this.$router.push("/apimanage/index")
}
},
// - 访this",
created() {
},
// - 访DOM",
mounted() {
this.api = this.$route.query.api
},
beforeCreate() {
}, // - ",
beforeMount() {
}, // - ",
beforeUpdate() {
}, // - ",
updated() {
}, // - ",
beforeDestroy() {
}, // - ",
destroyed() {
}, // - ",
activated() {
} //keep-alive",
};
</script>
<style scoped>
</style>

View File

@ -0,0 +1,335 @@
<template>
<div>
<el-form :model="ruleForm" status-icon :rules="rules" ref="ruleForm" label-width="100px" class="demo-ruleForm">
<el-form-item label="接口名称" prop="productName" style="width: 30%">
<el-input type="text" v-model="ruleForm.productName" autocomplete="off"></el-input>
</el-form-item>
<el-form-item>
<el-button type="primary" @click="submitForm('ruleForm')"></el-button>
</el-form-item>
<el-form-item>
<el-select v-model="ruleForm.productState" placeholder="请选择状态" @change="changestate(ruleForm.productState)">
<el-option label="全部" value=""></el-option>
<el-option label="未上线" value="0"></el-option>
<el-option label="已上线" value="1"></el-option>
</el-select>
</el-form-item>
</el-form>
<el-button type="danger" @click="add()">+</el-button>
<el-table
:data="tableData"
style="width: 100%">
<el-table-column
label="序号"
width="180">
<template slot-scope="scope">
<i class="el-icon-time"></i>
<span style="margin-left: 10px">{{ scope.row.productId }}</span>
</template>
</el-table-column>
<el-table-column
label="接口名称"
width="180">
<template slot-scope="scope">
<el-popover trigger="hover" placement="top">
<div slot="reference" class="name-wrapper">
<el-tag size="medium">{{ scope.row.productName }}</el-tag>
</div>
</el-popover>
</template>
</el-table-column>
<el-table-column
label="接口描述"
width="180">
<template slot-scope="scope">
<el-popover trigger="hover" placement="top">
<div slot="reference" class="name-wrapper">
{{ scope.row.productContent }}
</div>
</el-popover>
</template>
</el-table-column>
<el-table-column
label="接口来源"
width="180">
<template slot-scope="scope">
<el-popover trigger="hover" placement="top">
<div slot="reference" class="name-wrapper">
<el-tag size="medium">{{ scope.row.productFrom }}</el-tag>
</div>
</el-popover>
</template>
</el-table-column>
<el-table-column
label="接口销量"
width="180">
<template slot-scope="scope">
<el-popover trigger="hover" placement="top">
<div slot="reference" class="name-wrapper">
<el-tag size="medium">{{ scope.row.productSales }}</el-tag>
</div>
</el-popover>
</template>
</el-table-column>
<el-table-column label="操作">
<template slot-scope="scope">
<div>
<el-button
size="mini"
type="danger"
@click="handlelook(scope.row)">详情</el-button>
<el-button
size="mini"
type="danger"
@click="handleEdit(scope.row)">修改</el-button>
<el-button
size="mini"
type="danger"
@click="handleDelete(scope.row)">删除</el-button>
</div>
<br>
<div v-if="scope.row.productState===0">
<el-button
size="mini"
type="success"
@click="handleUpdState(scope.row)">上线</el-button>
</div>
<div v-if="scope.row.productState===1">
<el-button
size="mini"
type="success"
@click="handleUpdState(scope.row)">下架</el-button>
</div>
</template>
</el-table-column>
</el-table>
<!--分页-->
<el-pagination
@size-change="handleSizeChange"
@current-change="handleCurrentChange"
:current-page="ruleForm.pageNum"
:page-sizes="[5, 7, 9, 11]"
:page-size="ruleForm.pageSize"
layout="total, sizes, prev, pager, next, jumper"
:total="total">
</el-pagination>
<el-dialog
title="提示"
:visible.sync="dialogVisible"
width="30%"
:before-close="handleClose">
<center>
<el-form :model="api" status-icon :rules="rules" ref="ruleForm" label-width="100px" class="demo-ruleForm">
<el-form-item label="接口名称" prop="productName" style="width: 70%">
<el-input type="text" v-model="api.productName" autocomplete="off"></el-input>
</el-form-item>
<el-form-item label="接口类型" prop="productType" style="width: 70%">
<el-input type="text" v-model="api.productType" autocomplete="off"></el-input>
</el-form-item>
<el-form-item label="接口描述" prop="productContent" style="width: 70%">
<el-input type="text" v-model="api.productContent" autocomplete="off"></el-input>
</el-form-item>
<el-form-item label="接口价格" prop="productPrice" style="width: 70%">
<el-input type="text" v-model="api.productPrice" autocomplete="off"></el-input>
</el-form-item>
<el-form-item label="接口来源" prop="productFrom" style="width: 70%">
<el-input type="text" v-model="api.productFrom" autocomplete="off"></el-input>
</el-form-item>
<el-form-item label="重要路由" prop="apiRouter" style="width: 70%">
<el-input type="text" v-model="api.apiRouter" autocomplete="off"></el-input>
</el-form-item>
<el-form-item label="接口地址" prop="apiAddress" style="width: 70%">
<el-input type="text" v-model="api.apiAddress" autocomplete="off"></el-input>
</el-form-item>
<el-form-item label="返回格式" prop="returnFormat" style="width: 70%">
<el-input type="text" v-model="api.returnFormat" autocomplete="off"></el-input>
</el-form-item>
<el-form-item label="请求方式" prop="requestMethod" style="width: 70%">
<el-input type="text" v-model="api.requestMethod" autocomplete="off"></el-input>
</el-form-item>
</el-form>
</center>
<span slot="footer" class="dialog-footer">
<el-button @click="dialogVisible = false"> </el-button>
<el-button @click="resetForm('ruleForm')"></el-button>
<el-button type="primary" @click="addForm(api)"> </el-button>
</span>
</el-dialog>
</div>
</template>
<script>
//jsjsjson,
//import from ',
import {
addproduct,
delapi,
productStateLis,
productStateList,
selectapiList,
UpdproductState
} from "@/api/background/apimanage";
import {resetForm} from "@/utils/muyu";
import {add} from "lodash/math";
export default {
name: "Apimanage",
//import使"
components: {},
props: {},
data() {
//"
return {
tableData:[],
ruleForm:{
pageNum:1,
pageSize:9,
productType:'' ,
productState:''
},
total:0,
dialogVisible: false,
api:{},
};
},
// data",
computed: {},
//data",
watch: {},
//",
methods: {
resetForm,
//
handleClose(done) {
this.$confirm('确认关闭?')
.then(_ => {
done();
})
.catch(_ => {});
},
getapiList(){
selectapiList(this.ruleForm).then(response=>{
console.log(response)
this.tableData=response.data.productListResps
this.total=response.data.total
})
},
// //
// productStateLis(){
// productStateLis().then(response=>{
// this.productStateList=response.data
// })
// },
changestate(value){
this.ruleForm.productState=value
this.getapiList()
},
//
submitForm(){
this.getapiList()
},
//
handleSizeChange(val) {
console.log(`每页 ${val}`);
this.ruleForm.pageSize=val
this.getapiList()
},
handleCurrentChange(val) {
console.log(`当前页: ${val}`);
this.ruleForm.pageNum=val
this.getapiList()
},
//
handlelook(row){
this.$router.push({path:"/apidetailmessage/index",query:{api:row}})
},
//
handleEdit(row){
this.$router.push({path:"/apiupdmessage/index",query:{api:row}})
},
//
handleDelete(row){
if (confirm("确定删除么")){
delapi(row.productId).then(response=>{
alert(response.msg)
if (response.code==200){
this.getapiList()
}
})
}
},
//
add(){
this.dialogVisible=true
},
addForm(){
addproduct(this.api).then(response=>{
alert(response.msg)
if (response.code==200){
this.dialogVisible=false
this.getapiList()
}
})
},
///线
handleUpdState(row){
if (row.productState==0){
if (confirm("确定上线么")){
row.productState=1
alert(JSON.stringify(row))
UpdproductState(row).then(response=>{
alert(response.msg)
if (response.code==200){
this.getapiList()
}
})
}
}else {
if (confirm("确定下架么")){
row.productState=0
UpdproductState(row).then(response=>{
alert(response.msg)
if (response.code==200){
this.getapiList()
}
})
}
}
}
},
// - 访this",
created() {
this.getapiList()
// this.productStateList()
},
// - 访DOM",
mounted() {
},
beforeCreate() {
}, // - ",
beforeMount() {
}, // - ",
beforeUpdate() {
}, // - ",
updated() {
}, // - ",
beforeDestroy() {
}, // - ",
destroyed() {
}, // - ",
activated() {
} //keep-alive",
};
</script>
<style scoped>
</style>

View File

@ -0,0 +1,108 @@
<template>
<div>
<h3 style="color: #1482f0">接口详情:{{api.productName}}</h3>
<el-divider></el-divider>
{{api}}
<center>
<el-form :model="api" status-icon :rules="rules" ref="ruleForm" label-width="100px" class="demo-ruleForm">
<el-form-item label="序号" prop="productId" style="width: 70%">
<el-input type="text" v-model="api.productId" autocomplete="off"></el-input>
</el-form-item>
<el-form-item label="接口名称" prop="productName" style="width: 70%">
<el-input type="text" v-model="api.productName" autocomplete="off"></el-input>
</el-form-item>
<el-form-item label="接口类型" prop="productType" style="width: 70%">
<el-input type="text" v-model="api.productType" autocomplete="off"></el-input>
</el-form-item>
<el-form-item label="接口描述" prop="productContent" style="width: 70%">
<el-input type="text" v-model="api.productContent" autocomplete="off"></el-input>
</el-form-item>
<el-form-item label="接口销量" prop="productSales" style="width: 70%">
<el-input type="text" v-model="api.productSales" autocomplete="off"></el-input>
</el-form-item>
<el-form-item label="接口价格" prop="productPrice" style="width: 70%">
<el-input type="text" v-model="api.productPrice" autocomplete="off"></el-input>
</el-form-item>
<el-form-item label="接口来源" prop="productFrom" style="width: 70%">
<el-input type="text" v-model="api.productFrom" autocomplete="off"></el-input>
</el-form-item>
<el-form-item label="重要路由" prop="apiRouter" style="width: 70%">
<el-input type="text" v-model="api.apiRouter" autocomplete="off"></el-input>
</el-form-item>
<el-form-item label="接口地址" prop="apiAddress" style="width: 70%">
<el-input type="text" v-model="api.apiAddress" autocomplete="off"></el-input>
</el-form-item>
<el-form-item label="返回格式" prop="returnFormat" style="width: 70%">
<el-input type="text" v-model="api.returnFormat" autocomplete="off"></el-input>
</el-form-item>
<el-form-item label="请求方式" prop="requestMethod" style="width: 70%">
<el-input type="text" v-model="api.requestMethod" autocomplete="off"></el-input>
</el-form-item>
<el-form-item>
<el-button type="primary" @click="submitForm(api)"></el-button>
<el-button @click="resetForm('ruleForm')"></el-button>
</el-form-item>
</el-form>
</center>
</div>
</template>
<script>
//jsjsjson,
//import from ',
import {resetForm} from "@/utils/muyu";
import {apiupdmessage} from "@/api/background/apimanage";
export default {
name: "Apiupdmessage",
//import使"
components: {},
props: {},
data() {
//"
return {
api:{}
};
},
// data",
computed: {},
//data",
watch: {},
//",
methods: {
resetForm,
submitForm(api){
apiupdmessage(api).then(response=>{
alert(response.msg)
if (response.code==200){
this.$router.push("/apimanage/index")
}
})
}
},
// - 访this",
created() {
},
// - 访DOM",
mounted() {
this.api = this.$route.query.api
},
beforeCreate() {
}, // - ",
beforeMount() {
}, // - ",
beforeUpdate() {
}, // - ",
updated() {
}, // - ",
beforeDestroy() {
}, // - ",
destroyed() {
}, // - ",
activated() {
} //keep-alive",
};
</script>
<style scoped>
</style>

View File

@ -2,7 +2,7 @@
<div> <div>
<span>企业管理/待审核企业</span> <span>企业管理/待审核企业</span>
<el-container style="height: 500px; border: 1px solid #eee"> <el-container style="height: 500px; border: 1px solid #eee">
<el-aside width="200px" style="background-color: rgb(238, 241, 246)"> <el-aside width="150px" style="background-color: rgb(238, 241, 246)">
<span @click="choseall()"></span> <span @click="choseall()"></span>
<div v-for="(companyStatus,index1) in companystatusList" :key="index1"> <div v-for="(companyStatus,index1) in companystatusList" :key="index1">
<span @click="chosetype(index1)" v-if="companyStatus==0"></span> <span @click="chosetype(index1)" v-if="companyStatus==0"></span>
@ -116,15 +116,32 @@
</el-popover> </el-popover>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column
label="审核状态"
width="180">
<template slot-scope="scope">
<el-popover trigger="hover" placement="top">
<div slot="reference" class="name-wrapper">
<span v-if="scope.row.reviewStatus==0"></span>
<span v-if="scope.row.reviewStatus==1"></span>
<span v-if="scope.row.reviewStatus==2"></span>
</div>
</el-popover>
</template>
</el-table-column>
<el-table-column label="操作"> <el-table-column label="操作">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button <span v-if="scope.row.reviewStatus==0 || scope.row.reviewStatus==1">
size="mini"
@click="handleEdit(scope.$index, scope.row)">编辑</el-button>
<el-button <el-button
size="mini" size="mini"
type="danger" type="danger"
@click="handleDelete(scope.$index, scope.row)">删除</el-button> @click="handleNotEdit(scope.row)">审核不通过</el-button>
</span>
<span v-if="scope.row.reviewStatus==0 || scope.row.reviewStatus==2">
<el-button
size="mini"
@click="handleEdit(scope.row)">审核通过</el-button>
</span>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
@ -149,7 +166,7 @@
<script> <script>
//jsjsjson, //jsjsjson,
//import from ', //import from ',
import {selectcompanyList, selectcompanystatus} from "@/api/background/company"; import {reviewStatus, selectcompanyList, selectcompanystatus} from "@/api/background/company";
export default { export default {
name: "Company", name: "Company",
@ -162,7 +179,7 @@ export default {
tableData:[], tableData:[],
ruleForm:{ ruleForm:{
pageNum:1, pageNum:1,
pageSize:8, pageSize:5,
reviewStatus:'' reviewStatus:''
}, },
total:0, total:0,
@ -211,6 +228,28 @@ export default {
this.ruleForm.reviewStatus='' this.ruleForm.reviewStatus=''
this.getList() this.getList()
}, },
//
handleNotEdit(row){
row.reviewStatus=2
reviewStatus(row).then(response=>{
alert(response.msg)
if (response.code==200){
this.getList()
this.getcompanystatusList()
}
})
},
//
handleEdit(row){
row.reviewStatus=1
reviewStatus(row).then(response=>{
alert(response.msg)
if (response.code==200){
this.getList()
this.getcompanystatusList()
}
})
}
}, },
// - 访this", // - 访this",
created() { created() {

View File

@ -1,5 +1,6 @@
<template> <template>
<div> <div>
{{myapi}}
<el-row> <el-row>
<el-col :span="24"><div class="grid-content bg-purple-dark"> <el-col :span="24"><div class="grid-content bg-purple-dark">
<el-form ref="form" :model="myapi" label-width="120px" :rules="rules"> <el-form ref="form" :model="myapi" label-width="120px" :rules="rules">
@ -12,44 +13,133 @@
<el-form-item label="产品介绍:"> <el-form-item label="产品介绍:">
{{myapi.productContent}} {{myapi.productContent}}
</el-form-item> </el-form-item>
<el-form-item label="重要路由:">
{{myapi.apiRouter}}
</el-form-item>
<el-row> <el-row>
<el-col :span="24"><div class="grid-content bg-purple-dark"> <el-col :span="24"><div class="grid-content bg-purple-dark">
<el-button type="info" @click="test()"></el-button> <span v-if="myapi.remark=='是'">
<el-button type="primary">立即申请</el-button> <el-button type="info" @click="test(myapi)">使</el-button>
<el-button type="primary" @click="apply(myapi)"></el-button>
</span>
<span v-if="myapi.remark=='否'">
<el-button type="info" @click="test(myapi)"></el-button>
<el-button type="primary" @click="apply(myapi)"></el-button>
</span>
</div></el-col> </div></el-col>
</el-row> </el-row>
</el-form> </el-form>
</div></el-col> </div></el-col>
</el-row> </el-row>
<el-divider></el-divider> <el-divider></el-divider>
<el-row class="first-row" > <el-row class="first-row" >
<el-col :span="24"><div class="grid-content bg-purple-dark" > <el-col :span="24"><div class="grid-content bg-purple-dark" >
<el-tabs v-model="activeName" @tab-click="handleClick"> <el-tabs v-model="activeName" @tab-click="handleClick">
<el-tab-pane label="API文档" name="first"> <el-tab-pane label="API文档" name="first">
<el-form ref="form" :model="myapi" label-width="120px" :rules="rules"> <el-form ref="form" :model="myapi" label-width="120px" :rules="rules">
<el-form-item label="接口地址:" > <el-form-item label="接口地址:" >
{{myapi.productName}} {{myapi.apiAddress}}
</el-form-item> </el-form-item>
<el-form-item label="返回格式:"> <el-form-item label="返回格式:">
{{myapi.productPrice}}/ {{myapi.returnFormat}}
</el-form-item> </el-form-item>
<el-form-item label="请求方式:"> <el-form-item label="请求方式:">
{{myapi.productContent}} {{myapi.requestMethod}}
</el-form-item> </el-form-item>
<el-form-item label="简介:"> <el-form-item label="请求Header:">
{{myapi.productContent}} <el-table
:data="heanderData"
style="width: 100%">
<el-table-column
label="名称"
width="180">
<template slot-scope="scope">
<el-popover trigger="hover" placement="top">
<div slot="reference" class="name-wrapper">
{{scope.row.headerName}}
</div>
</el-popover>
</template>
</el-table-column>
<el-table-column
label="值"
width="250">
<template slot-scope="scope">
<el-popover trigger="hover" placement="top">
<div slot="reference" class="name-wrapper">
{{scope.row.headerValue}}
</div>
</el-popover>
</template>
</el-table-column>
</el-table>
</el-form-item> </el-form-item>
<el-form-item label="请求参数说明:"> <el-form-item label="请求参数说明:">
{{myapi.productContent}} <el-table
:data="requestData"
style="width: 100%">
<el-table-column
label="参数名称"
width="180">
<template slot-scope="scope">
<el-popover trigger="hover" placement="top">
<div slot="reference" class="name-wrapper">
{{scope.row.requestName}}
</div>
</el-popover>
</template>
</el-table-column>
<el-table-column
label="参数类型"
width="250">
<template slot-scope="scope">
<el-popover trigger="hover" placement="top">
<div slot="reference" class="name-wrapper">
{{scope.row.requestType}}
</div>
</el-popover>
</template>
</el-table-column>
<el-table-column
label="是否必填"
width="250">
<template slot-scope="scope">
<el-popover trigger="hover" placement="top">
<div slot="reference" class="name-wrapper">
{{scope.row.requestIfmust}}
</div>
</el-popover>
</template>
</el-table-column>
<el-table-column
label="说明"
width="250">
<template slot-scope="scope">
<el-popover trigger="hover" placement="top">
<div slot="reference" class="name-wrapper">
{{scope.row.requestContent}}
</div>
</el-popover>
</template>
</el-table-column>
</el-table>
</el-form-item> </el-form-item>
<el-form-item label="返回参数说明:"> <el-form-item label="返回参数说明:">
{{myapi.productContent}}
</el-form-item> </el-form-item>
<el-form-item label="JSON返回示例:"> <el-form-item label="JSON返回示例:">
{{myapi.productContent}}
</el-form-item> </el-form-item>
<el-form-item label="XML返回示例:"> <el-form-item label="XML返回示例:">
{{myapi.productContent}}
</el-form-item> </el-form-item>
</el-form> </el-form>
</el-tab-pane> </el-tab-pane>
@ -58,12 +148,167 @@
</el-tabs> </el-tabs>
</div></el-col> </div></el-col>
</el-row> </el-row>
<!--测试对话框-->
<el-dialog
title="接口测试"
:visible.sync="dialogVisible"
width="30%"
:before-close="handleClose">
<el-form :model="ruleForm" status-icon :rules="rules" ref="ruleForm" label-width="100px" class="demo-ruleForm">
<el-form-item label="接口名称" prop="pass">
<el-input type="text" v-model="ruleForm.productName" autocomplete="off"></el-input>
</el-form-item>
<el-form-item label="接口地址" prop="pass">
<el-input type="text" v-model="ruleForm.apiAddress" autocomplete="off"></el-input>
</el-form-item>
<el-form-item label="请求方式" prop="pass">
<el-input type="text" v-model="ruleForm.requestMethod" autocomplete="off"></el-input>
</el-form-item>
<el-form-item label="请求参数" prop="pass" v-if="ruleForm.productName=='' && ruleForm.productName==''" >
<el-input type="text" v-model="ruleForm.parameter" autocomplete="off"></el-input>
</el-form-item>
<div v-if="ruleForm.productName=='新闻头条'">
<el-form-item label="type" prop="pass" >
<el-input type="text" v-model="ruleForm.type" autocomplete="off"></el-input>
<span>说明支持类型top(推荐,默认)guonei(国内)guoji(国际)yule(娱乐)tiyu(体育)junshi(军事)keji(科技)caijing(财经)youxi(游戏)qiche(汽车)jiankang(健康)</span>
</el-form-item>
<el-form-item label="page" prop="pass" >
<el-input type="text" v-model="ruleForm.page" autocomplete="off"></el-input>
<span>说明当前页数, 默认1, 最大50</span>
</el-form-item>
<el-form-item label="page_size" prop="pass" >
<el-input type="text" v-model="ruleForm.pageSize" autocomplete="off"></el-input>
<span>说明每页返回条数, 默认30 , 最大30</span>
</el-form-item>
<el-form-item label="is_filter" prop="pass" >
<el-input type="text" v-model="ruleForm.isFilter" autocomplete="off"></el-input>
<span>说明是否只返回有内容详情的新闻, 1:, 默认0</span>
</el-form-item>
</div>
<div v-if="ruleForm.productName=='身份证实名认证'">
<el-form-item label="身份证号码" prop="pass" >
<el-input type="text" v-model="ruleForm.idcard" autocomplete="off"></el-input>
</el-form-item>
<el-form-item label="姓名" prop="pass">
<el-input type="text" v-model="ruleForm.realname" autocomplete="off"></el-input>
</el-form-item>
<el-form-item label="是否返回单号" prop="pass" >
<el-input type="text" v-model="ruleForm.orderid" autocomplete="off"></el-input>
<span>传1时返回单号默认不返回单号(建议传入)</span>
</el-form-item>
</div>
<!--一个参数-->
<el-form-item v-if="ruleForm.productName=='手机号码归属地' && ruleForm.productName=='万年历'">
<el-button type="primary" @click="submitForm(ruleForm)"></el-button>
</el-form-item>
<!--多个参数-->
<el-form-item v-if="ruleForm.productName=='' ||ruleForm.productName=='' " >npm
<el-button type="primary" @click="newsForm(ruleForm)"></el-button>
</el-form-item>
<!--无参数-->
<el-form-item v-if="ruleForm.productName==''" >
<el-button type="primary" @click="noForm(ruleForm)"></el-button>
</el-form-item>
</el-form>
<pre id="json-display">
</pre>
<ul id="news-list">
<!-- 这里将动态插入新闻项 -->
</ul>
<span slot="footer" class="dialog-footer">
<el-button @click="dialogVisible = false">返回</el-button>
</span>
</el-dialog>
<!--支付规格选择对话框-->
<el-dialog
title="提示"
:visible.sync="dialogVisible1"
width="50%"
:before-close="handleClose1">
<span style="color: #1ab394">请选择申请规格</span>
<el-table
:data="tableData"
style="width: 100%">
<el-table-column
label="支付规格"
width="180">
<template slot-scope="scope">
<el-popover trigger="hover" placement="top">
<div slot="reference" class="name-wrapper">
<el-tag size="medium">{{ scope.row.productSpecificationName }}</el-tag>
</div>
</el-popover>
</template>
</el-table-column>
<el-table-column
label="价格"
width="180">
<template slot-scope="scope">
<el-popover trigger="hover" placement="top">
<div slot="reference" class="name-wrapper">
<el-tag size="medium">{{ scope.row.middlePrice }}</el-tag>
</div>
</el-popover>
</template>
</el-table-column>
<el-table-column label="操作">
<template slot-scope="scope">
<el-button
size="mini"
@click="handleEdit(scope.row)">选择</el-button>
</template>
</el-table-column>
</el-table>
<el-divider></el-divider>
<el-form ref="form" :model="newapi" label-width="120px" :rules="rules">
<el-form-item label="产品名称:" >
{{newapi.productName}}
</el-form-item>
<el-form-item label="产品规格:" >
{{newapi.productSpecification}}
</el-form-item>
<el-form-item label="产品价格:" v-if="newapi.productSpecification=='按次查询'">
{{newapi.productPrice}}/
</el-form-item>
<el-form-item label="支付价格:" v-if="newapi.productSpecification!='按次查询'">
{{newapi.productPrice}}
</el-form-item>
<el-form-item label="产品介绍:">
{{newapi.productContent}}
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button @click="dialogVisible1 = false"> </el-button>
<el-button type="primary" @click="dialogVisible1 = false"> </el-button>
</span>
</el-dialog>
</div> </div>
</template> </template>
<script> <script>
//jsjsjson, //jsjsjson,
//import from ', //import from ',
import {
findcount,
getHeader, getRequest,
iftest,
reducetestcount,
sendrequest,
sendrequest1,
sendrequest2
} from "@/api/apitest/apitest";
import api from "js-cookie";
import {companyauthentication, ifcompanyauthentication} from "@/api/authentication/authentication";
import {selectproductspecification} from "@/api/market/product";
import myapi from "@/views/market/myapi/index.vue";
export default { export default {
name: "Apitest", name: "Apitest",
//import使" //import使"
@ -78,7 +323,16 @@
productPrice: '', productPrice: '',
productContent: '' productContent: ''
}, },
activeName: 'first' activeName: 'first',
dialogVisible: false,
dialogVisible1: false,
ruleForm:{},
tableData:[],
newapi:{},
//
heanderData:[],
//
requestData:[]
}; };
}, },
// data", // data",
@ -87,9 +341,254 @@
watch: {}, watch: {},
//", //",
methods: { methods: {
//
getHeader(myapi){
getHeader(myapi).then(response=>{
this.heanderData=response.data
})
},
//
getRequest(myapi){
getRequest(myapi).then(response=>{
this.requestData=response.data
})
},
// //
handleClick(tab, event) { handleClick(tab, event) {
console.log(tab, event); console.log(tab, event);
},
//
test(myapi){
//<=0
findcount(myapi).then(response=>{
alert(response.data.testCount)
if (response.data.testCount<=0){
alert("使用次数已到期,若像继续使用请先充值!")
}else{
this.dialogVisible=true
this.ruleForm={
productName: myapi.productName,
apiAddress: myapi.apiAddress,
requestMethod: myapi.requestMethod,
apiRouter: myapi.apiRouter
}
}
})
},
//
apply(myapi){
//
ifcompanyauthentication().then(response=>{
if (response.code!=200){
alert(response.msg)
}else {
this.getproduct(myapi)
this.dialogVisible1=true
this.newapi={
productName: myapi.productName,
productPrice: myapi.productPrice,
productContent: myapi.productContent,
productSpecification: myapi.productSpecification
}
}
})
},
//
handleClose(done) {
this.$confirm('确认关闭?')
.then(_ => {
done();
})
.catch(_ => {});
},
//
handleClose1(done) {
this.$confirm('确认关闭?')
.then(_ => {
done();
})
.catch(_ => {});
},
//
getproduct(specification){
selectproductspecification(specification).then(response=>{
this.tableData=response.data
})
},
//
handleEdit(row){
this.newapi={
productName:this.myapi.productName,
productSpecification: row.productSpecificationName,
productPrice: row.middlePrice,
productContent:this.myapi.productContent,
}
},
//
noForm(ruleForm){
sendrequest2(ruleForm).then(response=>{
console.log(response)
const jsonData1 = response.data; // response.dataJSON
// JSONJavaScript
const jsonData = JSON.parse(jsonData1);
//
var container = document.getElementById('news-list');
//
container.innerHTML = '';
// div
var resultDiv = document.createElement('div');
// jsonData.reason
if (jsonData.reason !== undefined) {
// reason
resultDiv.innerHTML += '<h2>Reason: ' + jsonData.reason.replace(/!/g, '') + '</h2>';
} else {
resultDiv.innerHTML += '<h2>Reason: Not available</h2>';
}
// jsonData.result
if (jsonData.result !== undefined) {
// result使
resultDiv.innerHTML += '<p>Content: ' + jsonData.result.content + '</p>';
resultDiv.innerHTML += '<p>Source: ' + jsonData.result.source + '</p>';
// JSONrealname, idcard, orderid, res
} else {
resultDiv.innerHTML += '<p>Result information is not available.</p>';
}
// div
container.appendChild(resultDiv);
})
//-1
reducetestcount(this.myapi).then(response=>{})
},
//
submitForm(ruleForm){
sendrequest(ruleForm).then(response=>{
const jsonData = response.data;
// 使JSON.stringify()JSON2
const formattedJson = JSON.stringify(jsonData, null, 2);
// <pre>innerHTMLJSON
document.getElementById('json-display').innerHTML = formattedJson;
})
//-1
reducetestcount(this.myapi).then(response=>{
})
},
//
newsForm(ruleForm) {
if (ruleForm.productName=='新闻头条'){
sendrequest1(ruleForm).then(response => {
console.log(response)
const jsonData1 = response.data; // response.dataJSON
// JSONJavaScript
const jsonData = JSON.parse(jsonData1);
//
var container = document.getElementById('news-list');
//
container.innerHTML = '';
// div
var resultDiv = document.createElement('div');
// jsonData.reason
if (jsonData.reason !== undefined) {
// reason
resultDiv.innerHTML += '<h2>Reason: ' + jsonData.reason.replace(/!/g, '') + '</h2>';
} else {
resultDiv.innerHTML += '<h2>Reason: Not available</h2>';
}
// jsonData.result
if (jsonData.result !== undefined) {
//
resultDiv.innerHTML += '<p>Stat: ' + jsonData.result.stat + '</p>';
resultDiv.innerHTML += '<p>Page: ' + jsonData.result.page + '</p>';
resultDiv.innerHTML += '<p>Page Size: ' + jsonData.result.pageSize + '</p>';
// jsonData.result.data
if (Array.isArray(jsonData.result.data)) {
// HTML
jsonData.result.data.forEach(item => {
resultDiv.innerHTML += `
<div>
<h3>${item.title}</h3>
<p>Unique Key: ${item.uniquekey}</p>
<p>Date: ${item.date}</p>
<p>Category: ${item.category}</p>
<p>Author: ${item.author_name}</p>
<p>URL: <a href="${item.url.replace(/\\/g, '')}">${item.url}</a></p>
</div>
`;
});
} else {
resultDiv.innerHTML += '<p>No data available.</p>';
}
} else {
resultDiv.innerHTML += '<p>Result information is not available.</p>';
}
// div
container.appendChild(resultDiv);
});
}
if (ruleForm.productName=='身份证实名认证'){
sendrequest1(ruleForm).then(response => {
console.log(response)
const jsonData1 = response.data; // response.dataJSON
// JSONJavaScript
const jsonData = JSON.parse(jsonData1);
});
}},
confirmSelection(row) {
this.dialogVisible1=false
if (this.selectedRow) {
//
startPayment(this.selectedRow);
console.log(row)
window.open("http://localhost:9701 " +
"/alipay/pay?middlePrice="+row.middlePrice)
this.$message.success('付款成功')
//
var container = document.getElementById('news-list');
//
container.innerHTML = '';
// div
var resultDiv = document.createElement('div');
// jsonData.reason
if (jsonData.reason !== undefined) {
// reason
resultDiv.innerHTML += '<h2>Reason: ' + jsonData.reason.replace(/!/g, '') + '</h2>';
} else {
resultDiv.innerHTML += '<h2>Reason: Not available</h2>';
}
// jsonData.result
if (jsonData.result !== undefined) {
// result
resultDiv.innerHTML += '<p>Real Name: ' + jsonData.result.realname + '</p>';
resultDiv.innerHTML += '<p>ID Card: ' + jsonData.result.idcard + '</p>';
resultDiv.innerHTML += '<p>Order ID: ' + jsonData.result.orderid + '</p>';
resultDiv.innerHTML += '<p>Result: ' + jsonData.result.res + '</p>';
} else {
resultDiv.innerHTML += '<p>Result information is not available.</p>';
}
// div
container.appendChild(resultDiv);
}
//-1
reducetestcount(this.myapi).then(response=>{})
} }
}, },
// - 访this", // - 访this",
@ -98,6 +597,8 @@
// -` 访DOM", // -` 访DOM",
mounted() { mounted() {
this.myapi = this.$route.query.myapi this.myapi = this.$route.query.myapi
this.getHeader(this.myapi)
this.getRequest((this.myapi))
if (typeof this.myapi === 'string' && this.myapi.trim() !== '') { if (typeof this.myapi === 'string' && this.myapi.trim() !== '') {
try { try {
this.myapi = JSON.parse(this.myapi); this.myapi = JSON.parse(this.myapi);
@ -128,4 +629,13 @@
.first-row { .first-row {
margin-bottom: 20px; /* 创建一个空间,以便可以清晰地看到边框 */ margin-bottom: 20px; /* 创建一个空间,以便可以清晰地看到边框 */
} }
pre {
background-color: #f4f4f4; /* 浅灰色背景 */
border: 1px solid #ddd; /* 边框 */
padding: 10px; /* 内边距 */
overflow-x: auto; /* 水平滚动条(如果需要的话) */
white-space: pre-wrap; /* 保留空白符序列,但是正常地进行换行 */
word-wrap: break-word; /* 防止长单词或URL地址破坏布局 */
font-family: monospace, Menlo, Courier, 'Courier New', monospace; /* 使用等宽字体 */
}
</style> </style>

View File

@ -58,10 +58,47 @@
<el-dialog <el-dialog
:title="dialogtitle" :title="dialogtitle"
:visible.sync="dialogVisible" :visible.sync="dialogVisible"
width="30%" width="50%"
:before-close="handleClose"> :before-close="handleClose">
<!--个人认证--> <!--个人认证-->
<div v-if="this.index==1"> <div v-if="this.index==1">
<h2>基本信息填写</h2><br>
<el-form :model="personForm" status-icon :rules="rules" ref="ruleForm" label-width="100px" class="demo-ruleForm">
<el-form-item label="实名认证附件上传:" prop="pass">
<el-upload
action="/dev-api/market/user/upload"
list-type="picture-card"
:on-preview="handlePictureCardPreview"
:on-remove="handleRemove"
:on-success="handleSuccess1"
:limit="2">
<i class="el-icon-plus"></i>
</el-upload>
<el-dialog :visible.sync="dialogVisiblepicture">
<img width="100%" :src="dialogImageUrl" alt="">
</el-dialog>
<span>请上传清晰完整的营业执照副本照片</span>
</el-form-item>
<el-form-item label="公司名称:" prop="companyName">
<el-input type="text" v-model="personForm.companyName" autocomplete="off"></el-input>
</el-form-item>
<el-form-item label="真实姓名:" prop="USCI">
<el-input type="text" v-model="personForm.USCI" autocomplete="off"></el-input>
</el-form-item>
<el-form-item label="证件类型:" prop="companyLeader">
<span>居民身份证</span>
</el-form-item>
<el-form-item label="证件号码:" prop="registrantName">
<el-input type="text" v-model="personForm.registrantName" autocomplete="off"></el-input>
</el-form-item>
<el-form-item label="手机号码:" prop="registrantPhone">
<el-input type="text" v-model="personForm.registrantPhone" autocomplete="off"></el-input>
</el-form-item>
</el-form>
<center>
<el-button @click="dialogVisible = false"> </el-button>
<el-button type="primary" @click="personyes()"></el-button>
</center>
</div> </div>
<!--企业认证--> <!--企业认证-->
@ -74,7 +111,8 @@
list-type="picture-card" list-type="picture-card"
:on-preview="handlePictureCardPreview" :on-preview="handlePictureCardPreview"
:on-remove="handleRemove" :on-remove="handleRemove"
:on-success="handleSuccess"> :on-success="handleSuccess"
:limit="1">
<i class="el-icon-plus"></i> <i class="el-icon-plus"></i>
</el-upload> </el-upload>
<el-dialog :visible.sync="dialogVisiblepicture"> <el-dialog :visible.sync="dialogVisiblepicture">
@ -86,7 +124,7 @@
<el-input type="text" v-model="companyForm.companyName" autocomplete="off"></el-input> <el-input type="text" v-model="companyForm.companyName" autocomplete="off"></el-input>
</el-form-item> </el-form-item>
<el-form-item label="社会统一编码:" prop="USCI"> <el-form-item label="社会统一编码:" prop="USCI">
<el-input type="text" v-model="companyForm.USCI" autocomplete="off"></el-input> <el-input type="text" v-model="companyForm.usci" autocomplete="off"></el-input>
</el-form-item> </el-form-item>
<el-form-item label="企业法人姓名:" prop="companyLeader"> <el-form-item label="企业法人姓名:" prop="companyLeader">
<el-input type="text" v-model="companyForm.companyLeader" autocomplete="off"></el-input> <el-input type="text" v-model="companyForm.companyLeader" autocomplete="off"></el-input>
@ -104,11 +142,12 @@
<el-input type="text" v-model="companyForm.companyAddress" autocomplete="off"></el-input> <el-input type="text" v-model="companyForm.companyAddress" autocomplete="off"></el-input>
</el-form-item> </el-form-item>
</el-form> </el-form>
<center>
<el-button @click="dialogVisible = false"> </el-button>
<el-button type="primary" @click="companyyes(companyForm)"></el-button>
</center>
</div> </div>
<span slot="footer" class="dialog-footer"> <span slot="footer" class="dialog-footer">
<el-button @click="dialogVisible = false"> </el-button>
<el-button type="primary" @click="yes()"></el-button>
</span> </span>
</el-dialog> </el-dialog>
</div> </div>
@ -118,6 +157,8 @@
<script> <script>
//jsjsjson, //jsjsjson,
//import from ', //import from ',
import {companyauthentication} from "@/api/authentication/authentication";
export default { export default {
name: "Authentication", name: "Authentication",
//import使" //import使"
@ -130,6 +171,9 @@
index:'', index:'',
dialogtitle:'', dialogtitle:'',
companyForm:{}, companyForm:{},
personForm:{
personCardPicture:[]
},
dialogImageUrl: '', dialogImageUrl: '',
dialogVisiblepicture: false dialogVisiblepicture: false
}; };
@ -158,10 +202,19 @@
}) })
.catch(_ => {}); .catch(_ => {});
}, },
yes(){ //
this.index='' personyes(){
this.dialogVisible=false this.dialogVisible=false
}, },
//
companyyes(companyForm){
companyauthentication(companyForm).then(response=>{
alert(response.msg)
if (response.code==200){}
this.dialogVisible=false
})
},
// //
handleRemove(file, fileList) { handleRemove(file, fileList) {
console.log(file, fileList); console.log(file, fileList);
@ -170,8 +223,16 @@
this.dialogImageUrl = file.url; this.dialogImageUrl = file.url;
this.dialogVisible = true; this.dialogVisible = true;
}, },
//
handleSuccess(response,file,fileList){ handleSuccess(response,file,fileList){
this.companyForm.businessLicense=response.data this.companyForm.businessLicense=response.data
},
//
handleSuccess1(response,file,fileList){
this.personForm.personCardPicture=[]
for(const i in fileList){
this.personForm.personCardPicture.push(fileList[i]).response.data
}
} }
}, },
// - 访this", // - 访this",

View File

@ -29,16 +29,22 @@
<el-dialog <el-dialog
title="邮箱绑定" title="邮箱绑定"
:visible.sync="dialogVisible" :visible.sync="dialogVisible"
width="30%" width="50%"
:before-close="handleClose"> :before-close="handleClose">
<el-form :model="EmailForm" status-icon :rules="rules" ref="ruleForm" label-width="100px" class="demo-ruleForm"> <el-form :model="EmailForm" status-icon :rules="rules" ref="ruleForm" label-width="100px" class="demo-ruleForm">
<el-form-item label="邮箱" prop="email"> <el-form-item label="邮箱" prop="email">
<el-input type="text" v-model="EmailForm.email" autocomplete="off" placeholder="请输入绑定的邮箱"></el-input> <el-input type="text" v-model="EmailForm.email" autocomplete="off" placeholder="请输入绑定的邮箱"></el-input>
</el-form-item> </el-form-item>
<el-form-item>
<el-input type="text" v-model="EmailForm.code" placeholder="请输入验证码"></el-input>
</el-form-item>
</el-form> </el-form>
<span slot="footer" class="dialog-footer"> <span slot="footer" class="dialog-footer">
<el-button type="primary" @click="docode(EmailForm.email)"></el-button>
<el-button @click="dialogVisible = false"> </el-button> <el-button @click="dialogVisible = false"> </el-button>
<el-button type="primary" @click="yes(EmailForm)"> </el-button> <el-button type="primary" @click="yes(EmailForm)"> </el-button>
</span> </span>
</el-dialog> </el-dialog>
</div> </div>
@ -47,7 +53,7 @@
<script> <script>
//jsjsjson, //jsjsjson,
//import from ', //import from ',
import {linkemail} from "@/api/authentication/message"; import {linkemail,sendcode1} from "@/api/authentication/message";
export default { export default {
name: "Easymessage", name: "Easymessage",
@ -81,6 +87,12 @@ export default {
}) })
.catch(_ => {}); .catch(_ => {});
}, },
//
docode(email){
sendcode1(email).then(response=>{
alert(response.data)
})
},
// //
yes(EmailForm){ yes(EmailForm){
linkemail(EmailForm).then(response=>{ linkemail(EmailForm).then(response=>{

View File

@ -73,19 +73,6 @@ export default {
myapiList:[], myapiList:[],
myapi:{}, myapi:{},
ruleForm:{}, ruleForm:{},
options: [{
value: '选项1',
label: '全部'
}, {
value: '选项2',
label: '申请中'
}, {
value: '选项3',
label: '申请通过'
}, {
value: '选项4',
label: '审核失败'
}],
value: '' value: ''
}; };
}, },
@ -102,6 +89,7 @@ export default {
//api //api
getList(){ getList(){
selectmyapiList(this.ruleForm).then(response=>{ selectmyapiList(this.ruleForm).then(response=>{
console.log(response)
this.myapiList=response.data this.myapiList=response.data
}) })
}, },
@ -111,13 +99,14 @@ export default {
}, },
// //
test(myapi) { test(myapi) {
if (myapi && myapi.productAddress) { // if (myapi && myapi.productAddress) {
let url = myapi.productAddress; // 使 product.address // let url = myapi.productAddress; // 使 product.address
window.open(url, '_blank'); // URL // window.open(url, '_blank'); // URL
} else { // } else {
console.error('无效的 address 或 product 未定义'); // console.error(' address product ');
// // //
} // }
this.$router.push({path:"/apitest/index",query:{myapi:JSON.stringify(myapi)}})
} }
}, },
// - 访this", // - 访this",

View File

@ -30,11 +30,14 @@
</div> </div>
</el-card> </el-card>
<br>
<button style="float: right; padding: 3px 10px" type="text" @click="reclaim"></button>
<br> <br>
<el-card class="box-card" style="width: 94%;transform: translateX(3%);margin-top: 10px"> <el-card class="box-card" style="width: 94%;transform: translateX(3%);margin-top: 10px">
<div slot="header" class="clearfix"> <div slot="header" class="clearfix">
<span>数据列表</span> <span>数据列表</span>
<button @click="add" style="float: right; padding: 3px 10px" type="text">添加</button> <button @click="add(1)" style="float: right; padding: 3px 10px" type="text">添加</button>
<button style="float: right; padding: 3px 10px" type="text" @click="getOut"></button>
</div> </div>
<el-table :data="arr" style="width: 100%" @selection-change="handleSelectionChange"> <el-table :data="arr" style="width: 100%" @selection-change="handleSelectionChange">
@ -86,34 +89,83 @@
<template slot-scope="scope"> <template slot-scope="scope">
<el-button <el-button
size="mini" size="mini"
@click="handleEdit(scope.row)">编辑</el-button> @click="ordersUpdate(scope.row)">编辑</el-button>
<el-button <el-button
size="mini" size="mini"
type="danger" type="danger"
@click="handleDelete(scope.row)">删除</el-button> @click="updateByeExist(scope.row)">删除</el-button>
<el-button
type="primary"
size="small"
@click="pay(scope.row)" >支付</el-button>
<!-- v-if="scope.row.status === '待支付'"-->
</template> </template>
</el-table-column> </el-table-column>
</el-table-column> </el-table-column>
</el-table-column> </el-table-column>
</el-table> </el-table>
</el-card>
<el-pagination style="float: right" <el-pagination style="float: right"
@size-change="handleSizeChange" @size-change="handleSizeChange"
@current-change="handleCurrentChange" @current-change="handleCurrentChange"
:current-page="orders.pageNum" :current-page="orders.pageNum"
:page-sizes="[2, 4, 6, 8]" :page-sizes="[5, 10, 50, 100]"
:page-size="orders.pageSize" :page-size="orders.pageSize"
layout="total, sizes, prev, pager, next, jumper" layout="total, sizes, prev, pager, next, jumper"
:total="orders.total"> :total="orders.total">
</el-pagination> </el-pagination>
</el-card>
<el-dialog
:title="addtitle"
:visible.sync="addordersoff"
width="50%"
:before-close="handleClose">
<div v-if="this.index==1">
<h2>管理员慎重填写</h2><br>
<el-form :model="ordersForm" status-icon :rules="rules" ref="ruleForm" label-width="100px" class="demo-ruleForm">
<el-form-item label="订单编号:" prop="ordersNum">
<el-input type="text" v-model="ordersForm.ordersNum" autocomplete="off"></el-input>
</el-form-item>
<el-form-item label="订单产品:" prop="ordersProduct">
<el-input type="text" v-model="ordersForm.ordersProduct" autocomplete="off"></el-input>
</el-form-item>
<el-form-item label="订单所属人:" prop="ordersUser">
<el-input type="text" v-model="ordersForm.ordersUser" autocomplete="off"></el-input>
</el-form-item>
<el-form-item label="订单金额:" prop="ordersPrice">
<el-input type="text" v-model="ordersForm.ordersPrice" autocomplete="off"></el-input>
</el-form-item>
<el-form-item label="订单规格:" prop="ordersSpecification">
<el-input type="text" v-model="ordersForm.ordersSpecification" autocomplete="off"></el-input>
</el-form-item>
</el-form>
<center>
<el-button @click="addordersoff = false"> </el-button>
<el-button type="primary" @click="addorders(ordersForm)"></el-button>
</center>
</div>
<span slot="footer" class="dialog-footer">
</span>
</el-dialog>
</div> </div>
</template> </template>
<script> <script>
import {selectList, update } from '@/api/market/orders' import {
import {handleDelete} from "@/api/market/product"; selectList,
updateOrders,
addordersup,
ordersDelete,
pay,
getOut,
updateByeExist
} from '@/api/market/orders'
import { diGui } from "@/api/market/orders"; import { diGui } from "@/api/market/orders";
import axios from 'axios'
//jsjsjson, //jsjsjson,
//import from ', //import from ',
export default { export default {
@ -123,7 +175,6 @@ export default {
props: {}, props: {},
data() { data() {
//" //"
return { return {
orders:{ orders:{
pageNum:1, pageNum:1,
@ -139,6 +190,11 @@ export default {
startDate: null, startDate: null,
endDate: null, endDate: null,
index:'',
addtitle:'',
addordersoff:false,
ordersForm:{},
options: [{ options: [{
value: ' ', value: ' ',
label: '全选' label: '全选'
@ -166,58 +222,6 @@ export default {
watch: {}, watch: {},
//", //",
methods: { methods: {
//
handleDelete(orders){
handleDelete(orders.id).then(
res => {
this.$message.success(res.msg)
this.selectList()
}
)
},
//
chong(){
this.orders={}
this.selectList()
},
//
handleSizeChange(val) {
this.orders.pageSize=val
this.selectList()
},
handleCurrentChange(val) {
this.orders.pageNum=val
this.selectList()
},
//
updateShop(orders){
update(orders).then(
res => {
this.$message.success(res.msg)
this.selectList()
}
)
},
//
handleEdit(orders){
if (this.orders.serviceIds && typeof this.orders.serviceIds === 'string') {
orders.serviceid = this.orders.serviceIds.split(',');
// ...
}
console.log(JSON.stringify(orders))
orders.serviceid=orders.serviceIds.split(',').map(id => parseInt(id, 10));
console.log(JSON.stringify(orders))
this.$router.push({path:'/product/info/update',query:{orders:orders}})
},
//
findShop(){
this.selectList()
},
//
add(){
this.$router.push('add')
},
// //
handleSelectionChange(val) { handleSelectionChange(val) {
this.multipleSelection = val; this.multipleSelection = val;
@ -231,7 +235,106 @@ export default {
this.orders.total = res.data.total this.orders.total = res.data.total
} }
) )
},
//
updateByeExist(row){
const result = window.confirm(`你确定要执行此操作吗?`);
if (result) {
updateByeExist(row.ordersId).then(
res => {
this.$message.success(res.msg)
this.selectList()
} }
)
location.reload();
// 使 id
console.log(`用户点击了确定ID 为 ${row.ordersId}`);
} else {
//
console.log('用户点击了取消');
}
},
//
handleSizeChange(val) {
this.orders.pageSize=val
this.selectList()
},
handleCurrentChange(val) {
this.orders.pageNum=val
this.selectList()
},
//
chong(){
this.orders={}
this.selectList()
},
//
findShop(){
this.selectList()
},
//
add(index){
this.index=index
if (this.index === 1) {
this.addtitle= '添加订单';
}
// else if (this.index === 2) {
// this.dialogtitle= '';
// }
this.addordersoff=true
},
addorders(ordersForm){
addordersup(ordersForm).then(response=>{
alert(response.msg)
if (response.code==200){}
this.addordersoff=false
})
location.reload();
},
handleClose(done) {
this.$confirm('确认关闭?')
.then(_ => {
done();
})
.catch(_ => {});
},
//
ordersUpdate(row){
this.$router.push({path:"/updorders/index",query:{orders:row}})
},
pay(row){
console.log(row)
window.open("http://21.12.0.10:80/alipay/pay?productName="+row.productName +"&ordersNum="+row.ordersNum+"&ordersPrice="+row.ordersPrice)
this.$message.success('付款成功')
},
getOut(){
this.download('system/operlog/export', {
...this.queryParams
}, `operlog_${new Date().getTime()}.xlsx`)
},
reclaim(){
this.$router.push({path:"/reclaim/index"})
}
// getOut(){
// axios.get('/market/orders/getOutAll').
// then(response =>{
// if(response.data && response.data instanceof ArrayBuffer)
// {
// const blob = new Blob([response.data],{type:'application/octet-stream'});
// saveAs(blob ,'');
// }else{
// console.error(":" ,error);
// }
// })
// }
}, },
// - 访this", // - 访this",
created() { created() {

View File

@ -34,6 +34,9 @@
<el-form-item label="产品介绍:"> <el-form-item label="产品介绍:">
<el-textarea v-model="product.productContent">{{product.productContent}}</el-textarea> <el-textarea v-model="product.productContent">{{product.productContent}}</el-textarea>
</el-form-item> </el-form-item>
<el-form-item label="重要路由:">
<el-textarea v-model="product.apiRouter">{{product.apiRouter}}</el-textarea>
</el-form-item>
<el-row> <el-row>
<el-col :span="9"><div class="grid-content bg-purple"> <el-col :span="9"><div class="grid-content bg-purple">
<el-button type="primary" @click="test(product)"></el-button> <el-button type="primary" @click="test(product)"></el-button>
@ -128,22 +131,18 @@ export default {
this.getList() this.getList()
}, },
// //
// test(product){
// // let url = `http://21.12.0.10/prod-api/doc.html#/cloud-market//findListByuserPhone?userId=${this.userId}`;
// let url = `product`;
// window.open(url, '_blank'); // URL
//
// // this.$router.push({path:"/apitest/index",query:{myapi:JSON.stringify(product)}})
// },
test(product){ test(product){
if (product && product.productAddress) { this.$router.push({path:"/apitest/index",query:{myapi:JSON.stringify(product)}})
let url = product.productAddress; // 使 product.address
window.open(url, '_blank'); // URL
} else {
console.error('无效的 address 或 product 未定义');
//
}
}, },
// test(product) {
// if (product && product.productAddress) {
// let url = product.productAddress; // 使 product.address
// window.open(url, '_blank'); // URL
// } else {
// console.error(' address product ');
// //
// }
// },
handleSizeChange(val) { handleSizeChange(val) {
console.log(`每页 ${val}`); console.log(`每页 ${val}`);
this.ruleForm.pageSize=val this.ruleForm.pageSize=val

View File

@ -0,0 +1,263 @@
<template>
<div>
<el-card class="box-card" style="width: 94%;transform: translateX(3%);margin-top: 30px">
<div slot="header" class="clearfix">
<span>筛选搜索</span>
<el-button style="float: right; padding: 3px 30px" type="text" @click="findShop"></el-button>
<el-button style="float: right; padding: 3px 10px" type="text" @click="chong"></el-button>
</div>
<div class="text item">
<el-form ref="form" :model="orders" label-width="100px">
<el-form-item>
订单编号<el-input v-model="orders.ordersNum" placeholder="编号" style="width: 130px;margin-right: 50px"></el-input>
订单款项状态
<el-select v-model="orders.ordersState" placeholder="请选择状态" style="margin-right: 30px" clearable>
<el-option v-for="item in options"
:key="item.value"
:label="item.label"
:value="item.value">
</el-option>
</el-select>
选择时间:
<el-date-picker v-model="orders.startDate" type="date" placeholder="开始时间" style="width: 130px;"/>
-----
<el-date-picker v-model="orders.endDate" type="date" placeholder="结束时间" style="width: 130px;"/>
</el-form-item>
</el-form>
</div>
</el-card>
<br>
<button style="float: right; padding: 3px 10px" type="text" @click="orderslist"></button>
<br>
<el-card class="box-card" style="width: 94%;transform: translateX(3%);margin-top: 10px">
<div slot="header" class="clearfix">
<span>回收站列表</span>
</div>
<el-table :data="arr" style="width: 100%" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55"></el-table-column>
<el-table-column label="日期" width="150" align="center">
<template slot-scope="scope">
<span style="margin-left: 10px">{{ scope.row.ordersLaunchdate }}</span>
</template>
</el-table-column>
<el-table-column label="购买信息">
<el-table-column label="订单编号" width="150" align="center">
<template slot-scope="scope">
<span style="margin-left: 10px"> {{ scope.row.ordersNum }}</span>
</template>
</el-table-column>
<el-table-column label="订单所属人" width="100" align="center">
<template slot-scope="scope">
<span style="margin-left: 10px">{{ scope.row.userName }}</span>
</template>
</el-table-column>
<el-table-column label="购买详情">
<el-table-column prop="province" label="购买接口" width="200" align="center">
<template slot-scope="scope">
<span style="margin-left: 10px">{{ scope.row.productName }}</span>
</template>
</el-table-column>
<el-table-column label="订单金额" width="100" align="center">
<template slot-scope="scope">
<span style="margin-left: 10px">{{ scope.row.ordersPrice }}</span>
</template>
</el-table-column>
<el-table-column label="订单规格" width="300" align="center">
<template slot-scope="scope">
<span style="margin-left: 10px">{{ scope.row.ordersSpecification }}</span>
</template>
</el-table-column>
<el-table-column label="订单款项状态" width="130" align="center">
<template slot-scope="scope">
<span style="margin-left: 10px" v-if="scope.row.ordersState==0"></span>
<span style="margin-left: 10px" v-if="scope.row.ordersState==1"></span>
<span style="margin-left: 10px" v-if="scope.row.ordersState==2"></span>
<span style="margin-left: 10px" v-if="scope.row.ordersState==4">(退)</span>
<span style="margin-left: 10px" v-if="scope.row.ordersState==5">退</span>
</template>
</el-table-column>
<el-table-column label="操作" align="center">
<template slot-scope="scope">
<el-button
size="mini"
@click="handleEdit(scope.row)">恢复</el-button>
<el-button
size="mini"
type="danger"
@click="ordersDelete(scope.row)">彻底删除</el-button>
</template>
</el-table-column>
</el-table-column>
</el-table-column>
</el-table>
<el-pagination style="float: right"
@size-change="handleSizeChange"
@current-change="handleCurrentChange"
:current-page="orders.pageNum"
:page-sizes="[5, 10, 50, 100]"
:page-size="orders.pageSize"
layout="total, sizes, prev, pager, next, jumper"
:total="orders.total">
</el-pagination>
</el-card>
</div>
</template>
<script>
import { ordersDelete, listreclaim, updateByExist} from '@/api/market/orders'
import { diGui } from "@/api/market/orders";
//jsjsjson,
//import from ',
export default {
//import使"
components: {},
props: {},
data() {
//"
return {
orders:{
pageNum:1,
pageSize:10,
total:1,
typeId:0
},
arr:[],
type:[],
startDate: null,
endDate: null,
index:'',
ordersForm:{},
options: [{
value: ' ',
label: '全选'
}, {
value: '0',
label: '待支付'
}, {
value: '1',
label: '已付款'
}, {
value: '2',
label: '未付款'
}, {
value: '3',
label: '售后中(申请退款) '
} ,{
value: '4',
label: '已退款 '
}]
};
},
// data",
computed: {},
//data",
watch: {},
//",
methods: {
//
listreclaim() {
listreclaim(this.orders).then(
res => {
console.log(res)
this.arr = res.data.list
this.orders.total = res.data.total
}
)
},
//
handleEdit(row){
const result = window.confirm(`你确定要执行此操作吗?`);
if (result) {
updateByExist(row.ordersId).then(
res =>{
this.$message.success(res.msg)
this.listreclaim()
}
)
location.reload();
// 使 id
console.log(`用户点击了确定ID 为 ${id}`);
} else {
//
console.log('用户点击了取消');
}
},
//
ordersDelete(row){
const result = window.confirm(`你确定要执行此操作吗?`);
if (result) {
ordersDelete(row.ordersId).then(
res => {
this.$message.success(res.msg)
this.listreclaim()
}
)
location.reload();
// 使 id
console.log(`用户点击了确定ID 为 ${id}`);
} else {
//
console.log('用户点击了取消');
}
},
//
chong(){
this.orders={}
this.listreclaim()
},
//
handleSelectionChange(val) {
this.multipleSelection = val;
},
//
handleSizeChange(val) {
this.orders.pageSize=val
this.listreclaim()
},
handleCurrentChange(val) {
this.orders.pageNum=val
this.listreclaim()
},
orderslist(){
this.$router.push({path:"/market/orders"})
},
//
findShop(){
this.listreclaim()
}
},
// - 访this",
created() {
this.listreclaim()
},
// - 访DOM",
mounted() {
},
beforeCreate() {
}, // - ",
beforeMount() {
}, // - ",
beforeUpdate() {
}, // - ",
updated() {
}, // - ",
beforeDestroy() {
}, // - ",
destroyed() {
}, // - ",
activated() {
} //keep-alive",
};
</script>
<style scoped>
</style>

View File

@ -0,0 +1,107 @@
<template>
<div>
{{orders}}
<br><br><br>
<center>
<el-form :model="orders" status-icon :rules="rules" ref="ruleForm" label-width="100px" class="demo-ruleForm">
<el-form-item label="订单编号" prop="ordersNum" style="width: 70% " >
{{orders.ordersNum}}
</el-form-item>
<el-form-item label="订单产品" prop="productName" style="width: 70%">
<el-select v-model="orders.productName" placeholder="请选择产品">
<el-option v-model="orders.productName" :value="orders.productId"></el-option>
<el-option v-for="item in product" :label="item.productName" :key="item.productId" :value="item.productId" ></el-option>
</el-select>
</el-form-item>
<el-form-item label="订单所属人" prop="userName" style="width: 70%">
{{orders.userName}}
</el-form-item>
<el-form-item label="订单金额" prop="ordersPrice" style="width: 70%">
<el-input type="text" v-model="orders.ordersPrice" autocomplete="off" style="width: 100px"></el-input>
</el-form-item>
<el-form-item label="订单规格" prop="ordersSpecification" style="width: 70%">
<el-input type="text" v-model="orders.ordersSpecification" autocomplete="off" style="width: 250px"></el-input>
</el-form-item>
<el-form-item label="订单款项状态" prop="ordersState" style="width: 70%">
<el-select v-model="orders.ordersState" placeholder="订单款项状态" >
<el-option label="待支付-0" value="0"></el-option>
<el-option label="已支付-1" value="1"></el-option>
<el-option label="未支付-2" value="2"></el-option>
<el-option label="售后(审核退款)-3" value="3"></el-option>
<el-option label="退款成功-4" value="4"></el-option>
</el-select>
</el-form-item>
<el-form-item label="订单日期" prop="ordersLaunchdate" style="width: 70%">
{{orders.ordersLaunchdate}}
</el-form-item>
<el-form-item>
<el-button type="primary" @click="submitForm('ruleForm')"></el-button>
<el-button type="primary" @click="update(row)"></el-button>
</el-form-item>
</el-form>
</center>
</div>
</template>
<script>
//jsjsjson,
//import from ',
import { updateOrders } from '@/api/market/orders'
export default {
//import使"
components: {},
props: {},
data() {
//"
return {
orders:{},
product:[]
};
},
// data",
computed: {},
//data",
watch: {},
//",
methods: {
submitForm(){
this.$router.push("/market/orders")
},
update(row){
updateOrders(this.orders).then(
res =>{
this.$message.success(res.msg)
}
)
}
},
// - 访this",
created() {
},
// - 访DOM",
mounted() {
this.orders = this.$route.query.orders
},
beforeCreate() {
}, // - ",
beforeMount() {
}, // - ",
beforeUpdate() {
}, // - ",
updated() {
}, // - ",
beforeDestroy() {
}, // - ",
destroyed() {
}, // - ",
activated() {
} //keep-alive",
};
</script>
<style scoped>
</style>

View File

@ -3,11 +3,11 @@
<el-row :gutter="20"> <el-row :gutter="20">
<el-col :span="16"> <el-col :span="16">
<div class="grid-content bg-purple" style="border: 2px solid #ebeef5;"> <div class="grid-content bg-purple" style="border: 2px solid #ebeef5;">
<span>HI上海八维宏烨集团<br> <span>HI{{companymessage.companyName}}<br>
<el-row :gutter="20"> <el-row :gutter="20">
<el-col :span="6"><div class="grid-content bg-purple">上海市 上海市</div></el-col> <el-col :span="6"><div class="grid-content bg-purple">{{companymessage.companyAddress}}</div></el-col>
<el-col :span="6"><div class="grid-content bg-purple">IP114.85.72.211</div></el-col> <el-col :span="6"><div class="grid-content bg-purple">企业法人{{companymessage.companyLeader}}</div></el-col>
<el-col :span="6"><div class="grid-content bg-purple">时间2021-1-12</div></el-col> <el-col :span="6"><div class="grid-content bg-purple">时间{{companymessage.registrantDate}}</div></el-col>
<el-col :span="6"><div class="grid-content bg-purple"> <el-col :span="6"><div class="grid-content bg-purple">
<el-row> <el-row>
<el-col :span="12"><div class="grid-content bg-purple"><el-button type="primary">登录日志</el-button></div></el-col> <el-col :span="12"><div class="grid-content bg-purple"><el-button type="primary">登录日志</el-button></div></el-col>
@ -21,8 +21,8 @@
<div class="grid-content bg-purple" style="border: 1px solid #ebeef5;"> <div class="grid-content bg-purple" style="border: 1px solid #ebeef5;">
<span>账户余额<br> <span>账户余额<br>
<el-row> <el-row>
<el-col :span="12"><div class="grid-content bg-purple">8544344.00</div></el-col> <el-col :span="12"><div class="grid-content bg-purple">{{companymessage.companyMoney}}</div></el-col>
<el-col :span="12"><div class="grid-content bg-purple-light"><el-button type="primary">充值</el-button></div></el-col> <el-col :span="12"><div class="grid-content bg-purple-light"><el-button type="primary" @click="addmoney()"></el-button></div></el-col>
</el-row> </el-row>
</span> </span>
</div> </div>
@ -33,7 +33,7 @@
<div class="grid-content bg-purple-dark" style="border: 2px solid #ebeef5;"> <div class="grid-content bg-purple-dark" style="border: 2px solid #ebeef5;">
<el-row> <el-row>
<el-col :span="20"><div class="grid-content bg-purple"><span>热点接口</span></div></el-col> <el-col :span="20"><div class="grid-content bg-purple"><span>热点接口</span></div></el-col>
<el-col :span="4"><div class="grid-content bg-purple-light"><el-button type="primary">申请新的接口</el-button></div></el-col> <el-col :span="4"><div class="grid-content bg-purple-light"><el-button type="primary" @click="otherapi"></el-button></div></el-col>
</el-row><br> </el-row><br>
<el-row> <el-row>
<el-col :span="24"><div class="grid-content bg-purple-dark flex-container"> <el-col :span="24"><div class="grid-content bg-purple-dark flex-container">
@ -41,7 +41,7 @@
<el-form ref="form" :model="form" label-width="80px"> <el-form ref="form" :model="form" label-width="80px">
<el-form-item > <el-form-item >
<span>{{form.productName}}</span> <span>{{form.productName}}</span>
<el-button @click="tovalidation()"></el-button> <el-button @click="tovalidation(form)"></el-button>
</el-form-item> </el-form-item>
</el-form> </el-form>
</div> </div>
@ -52,54 +52,90 @@
</el-row> </el-row>
<!--提示需要验证---> <!-- &lt;!&ndash;提示需要验证-&ndash;&gt;-->
<el-dialog <!-- <el-dialog-->
title="提示" <!-- title="提示"-->
:visible.sync="dialogVisible" <!-- :visible.sync="dialogVisible"-->
width="30%" <!-- width="30%"-->
:before-close="handleClose" <!-- :before-close="handleClose"-->
:close-on-click-modal="false"> <!-- :close-on-click-modal="false">-->
<span>需要认证才能使用哦</span> <!-- <span>需要认证才能使用哦</span>-->
<span slot="footer" class="dialog-footer"> <!-- <span slot="footer" class="dialog-footer">-->
<el-button @click="dialogVisible = false"> </el-button> <!-- <el-button @click="dialogVisible = false"> </el-button>-->
<el-button type="primary" @click="validationYes()"></el-button> <!-- <el-button type="primary" @click="validationYes()"></el-button>-->
</span> <!-- </span>-->
</el-dialog> <!-- </el-dialog>-->
<!---企业验证页面--> <!-- &lt;!&ndash;-企业验证页面&ndash;&gt;-->
<!-- <el-dialog-->
<!-- title="提示"-->
<!-- :visible.sync="dialogVisible1"-->
<!-- width="30%"-->
<!-- :before-close="handleClose1"-->
<!-- :close-on-click-modal="false">-->
<!-- <span>企业信息</span>-->
<!-- <el-divider></el-divider>-->
<!-- <el-form :model="ruleForm" status-icon :rules="rules" ref="ruleForm" label-width="100px" class="demo-ruleForm">-->
<!-- <el-form-item label="企业名称" prop="pass">-->
<!-- <el-input type="text" v-model="ruleForm.pass" autocomplete="off"></el-input>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="用户姓名" prop="pass">-->
<!-- <el-input type="text" v-model="ruleForm.pass" autocomplete="off"></el-input>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="用户职位" prop="pass">-->
<!-- <el-input type="text" v-model="ruleForm.pass" autocomplete="off"></el-input>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="公司所在省市区" prop="pass">-->
<!-- <el-input type="text" v-model="ruleForm.pass" autocomplete="off"></el-input>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="公司详细地址" prop="pass">-->
<!-- <el-input type="text" v-model="ruleForm.pass" autocomplete="off"></el-input>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="统一社会信用代码" prop="pass">-->
<!-- <el-input type="text" v-model="ruleForm.pass" autocomplete="off"></el-input>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="营业执照" prop="pass">-->
<!-- <el-input type="text" v-model="ruleForm.pass" autocomplete="off"></el-input>-->
<!-- </el-form-item>-->
<!-- </el-form>-->
<!-- <span slot="footer" class="dialog-footer">-->
<!-- <el-button type="primary" @click="push()"></el-button>-->
<!-- </span>-->
<!-- </el-dialog>-->
<!--充值页面-->
<el-dialog <el-dialog
title="提示" title="充值"
:visible.sync="dialogVisible1" :visible.sync="dialogVisible2"
width="30%" width="30%"
:before-close="handleClose1" :before-close="handleClose2"
:close-on-click-modal="false"> :close-on-click-modal="false">
<span>企业信息</span> <h2 style="color: #1ab394">请选择充值金额</h2>
<el-divider></el-divider> <el-divider></el-divider>
<el-form :model="ruleForm" status-icon :rules="rules" ref="ruleForm" label-width="100px" class="demo-ruleForm"> <el-form :model="moneyForm" status-icon :rules="rules" ref="ruleForm" label-width="100px" class="demo-ruleForm">
<el-form-item label="企业名称" prop="pass"> <el-form-item label="请选择">
<el-input type="text" v-model="ruleForm.pass" autocomplete="off"></el-input> <el-radio-group v-model="moneyForm.resource">
<el-radio label="5">5</el-radio>
<el-radio label="20">20</el-radio>
<el-radio label="50">50</el-radio>
<el-radio label="100">100</el-radio>
<el-radio label="">自定义</el-radio>
</el-radio-group>
</el-form-item> </el-form-item>
<el-form-item label="用户姓名" prop="pass"> <el-form-item v-if="moneyForm.resource === ''" label="自定义充值" prop="pass" style="width: 50%">
<el-input type="text" v-model="ruleForm.pass" autocomplete="off"></el-input> <el-input type="text" v-model="moneyForm.resource1" autocomplete="off"></el-input>
</el-form-item> </el-form-item>
<el-form-item label="用户职位" prop="pass"> <el-divider></el-divider>
<el-input type="text" v-model="ruleForm.pass" autocomplete="off"></el-input> <el-form-item label="选择支付方式">
</el-form-item> <el-radio-group v-model="moneyForm.pay">
<el-form-item label="公司所在省市区" prop="pass"> <el-radio label="1">支付宝</el-radio>
<el-input type="text" v-model="ruleForm.pass" autocomplete="off"></el-input> <el-radio label="2">微信</el-radio>
</el-form-item> <el-radio label="3">银行卡</el-radio>
<el-form-item label="公司详细地址" prop="pass"> </el-radio-group>
<el-input type="text" v-model="ruleForm.pass" autocomplete="off"></el-input>
</el-form-item>
<el-form-item label="统一社会信用代码" prop="pass">
<el-input type="text" v-model="ruleForm.pass" autocomplete="off"></el-input>
</el-form-item>
<el-form-item label="营业执照" prop="pass">
<el-input type="text" v-model="ruleForm.pass" autocomplete="off"></el-input>
</el-form-item> </el-form-item>
</el-form> </el-form>
<span slot="footer" class="dialog-footer"> <span slot="footer" class="dialog-footer">
<el-button type="primary" @click="push()"></el-button> <el-button type="primary" @click="insertmoney(moneyForm)"></el-button>
</span> </span>
</el-dialog> </el-dialog>
@ -111,7 +147,8 @@
//import from ', //import from ',
import {gethostportList} from "@/api/market/workbench"; import {getcompany, gethostportList} from "@/api/market/workbench";
import {ifbuy} from "@/api/market/product";
export default { export default {
name: 'Workbench', name: 'Workbench',
@ -126,8 +163,11 @@ export default {
hostportList:[], hostportList:[],
dialogVisible: false, dialogVisible: false,
dialogVisible1:false, dialogVisible1:false,
dialogVisible2:false,
// //
ruleForm:{} ruleForm:{},
companymessage:{},
moneyForm:{}
}; };
}, },
// data", // data",
@ -136,6 +176,35 @@ export default {
watch: {}, watch: {},
//", //",
methods: { methods: {
//
getcompany(){
getcompany().then(response=>{
this.companymessage=response.data
})
},
//
addmoney(){
this.dialogVisible2=true
},
//
insertmoney(moneyForm){
if (moneyForm.pay==1){
if (moneyForm.resource!=''){
window.open("http://localhost:9701/alipay/pay?ordersPrice="+moneyForm.resource)
this.$message.success('付款成功')
}else {
window.open("http://localhost:9701/alipay/pay?ordersPrice="+moneyForm.resource)
this.$message.success('付款成功')
}
}
// this.dialogVisible2=false
},
//
otherapi(){
this.$router.push("/product/index")
},
// //
gethostportList(){ gethostportList(){
gethostportList().then(response=>{ gethostportList().then(response=>{
@ -156,8 +225,15 @@ export default {
}) })
.catch(_ => {}); .catch(_ => {});
}, },
tovalidation(){ tovalidation(form){
this.dialogVisible=true // this.dialogVisible=true
//
ifbuy(form).then(response=>{
if (response.code!=200) {
alert(response.msg)
}
})
this.$router.push({path:"/apitest/index",query:{myapi:JSON.stringify(form)}})
}, },
validationYes(){ validationYes(){
this.dialogVisible1=true this.dialogVisible1=true
@ -170,6 +246,7 @@ export default {
// - 访this", // - 访this",
created() { created() {
this.gethostportList() this.gethostportList()
this.getcompany()
}, },
// - 访DOM", // - 访DOM",
mounted() { mounted() {

View File

@ -1,62 +1,170 @@
<template> <template>
<div> <div>
<h1>测试4()- 资产展示</h1>
<el-container> <el-container>
<el-aside width="200px">Aside</el-aside> <el-aside width="400px">
<el-container>
<el-header>Header</el-header> <el-tree :data="data" :props="defaultProps" @node-click="handleNodeClick"></el-tree>
<el-main>Main</el-main>
<el-footer>Footer</el-footer> </el-aside>
</el-container>
<el-main>
<el-card class="box-card">
<div slot="header" class="clearfix">
<span style="font-size: xx-large"></span>
<!-- <table>-->
<!-- a <tr><td>表名称:</td><td>{{ tableBasic.tableName }}</td></tr>-->
<!-- <tr><td>表备注:</td><td>{{ tableBasic.tableRemark }}</td></tr>-->
<!-- <tr><td>数据量:</td><td>{{ tableBasic.dataNum }}</td></tr>-->
<!-- <tr><td>是否核心:</td><td><dict-tag :options="dict.type.sys_yes_no" :value="tableBasic.isCenter"/></td></tr>-->
<!-- </table>-->
<template>
<el-descriptions class="margin-top" title="资产模型基本信息" :column="2" border>
<el-descriptions-item>
<template slot="label">表名称</template>
{{ tableBasic.tableName }}
</el-descriptions-item>
<el-descriptions-item>
<template slot="label">表备注</template>
{{ tableBasic.tableRemark }}
</el-descriptions-item>
<el-descriptions-item>
<template slot="label">数据量</template>
{{ tableBasic.dataNum }}
</el-descriptions-item>
<el-descriptions-item>
<template slot="label">是否核心</template>
<dict-tag :options="dict.type.sys_no" :value="tableBasic.isCenter"/>
</el-descriptions-item>
</el-descriptions>
</template>
</div>
</el-card>
<!-- v-if="dataType === 'dataTable'-->
<el-card class="box-card" style="margin-top: 20px">
<div slot="header" class="clearfix">
<span>模型数据</span>
</div>
<el-row :gutter="20">
<!-- -->
<el-col :span="6" v-for="DataValue in assetShowList" style="margin-top: 20px">
<el-descriptions :title="tableBasic.tableRemark+'.'+tableBasic.tableName+'.'+DataValue.key" direction="vertical"
border :column="1">
<el-descriptions-item label="Type">
<el-tag size="small">{{ DataValue.type }}</el-tag>
</el-descriptions-item>
<el-descriptions-item label="Value">{{ DataValue.value }}</el-descriptions-item>
</el-descriptions>
</el-col>
</el-row>
</el-card>
<el-table
:data="DataValue"
style="width: 100%">
<el-table-column
prop="key"
label="key"
width="180">
</el-table-column>
<el-table-column
prop="label"
label="label"
width="180">
</el-table-column>
<el-table-column
prop="type"
label="type">
</el-table-column>
<el-table-column
prop="value"
label="value">
</el-table-column>
</el-table>
</el-main>
</el-container> </el-container>
</div> </div>
</template> </template>
<style>
.el-header, .el-footer {
background-color: #a1a1a1;
color: #a1a1a1;
text-align: center;
line-height: 680px;
}
.el-aside {
background-color: #ffffff;
color: #606060;
text-align: center;
line-height: 500px;
}
.el-main {
background-color: #a1a1a1;
color: #a1a1a1;
text-align: center;
line-height: 680px;
}
</style>
<script> <script>
//jsjsjson, //jsjsjson,
//import from ', //import from ',
import { findTableValue, getExtractDataTableNameList, selectBasicList } from '@/api/property/asDisplay'
export default { export default {
//import使" //import使"
components: {}, components: {},
dicts: ['sys_no'],
props: {}, props: {},
data() { data() {
//" //"
return {} return {
data:[],
defaultProps: {
children: 'children',
label: 'tableName'
},
tableBasic:{},
tableStructure:[],
assetShowList: [
// {key: ".sys_user.id", type: "String", value: 1},
// {key: ".sys_user.name", type: "String", value: ""},
// {key: ".sys_user.age", type: "Integer", value: 18},
// {key: ".sys_user.email", type: "String", value: "123@136.com"},
// {key: ".sys_user.sex", type: "String", value: "Y"},
],
kvtList: [],
DataValue:[],
};
}, },
// data", // data",
computed: {}, computed: {},
//data", //data",
watch: {}, watch: {},
//", //",
methods: {}, methods: {
getSelectList(){
getExtractDataTableNameList().then((res)=>{
this.data = res.data
})
},
handleNodeClick(data){
console.log("...."+data)
this.tableBasic=data
// findStructureByTableId(data.id).then((res)=>{
// this.tableStructure=res.data
// })
if (data.children==null){
findTableValueList(data.basicId,data.tableName).then(res=>{
this.assetShowList=res.data;
this.DataValue=res.data;
})
}
console.log("-----"+this.DataValue);
console.log("...."+data.basicId)
}
},
// - 访this", // - 访this",
created() { created() {
this.getSelectList();
}, },
// - 访DOM", // - 访DOM",
mounted() { mounted() {
@ -75,8 +183,10 @@ export default {
}, // - ", }, // - ",
activated() { activated() {
} //keep-alive", } //keep-alive",
} };
</script> </script>
<style scoped> <style scoped>
</style> </style>

View File

@ -1,62 +1,376 @@
<template> <template>
<div> <div>
<h1>资产授权</h1>
<el-container> <el-container>
<el-aside width="200px">Aside</el-aside> <el-aside width="400px">
<el-container> <el-tree :data="data" :props="defaultProps" @node-click="handleNodeClick"></el-tree>
<el-header>Header</el-header> </el-aside>
<el-main>Main</el-main>
<el-footer>Footer</el-footer> <el-main>
</el-container>
<el-form :inline="true" :model="tableBasic" class="demo-form-inline">
<el-form-item label="数据库名称">
<el-input v-model="tableBasic.name" placeholder="数据库/表名称" disabled></el-input>
</el-form-item>
<el-form-item label="中文名称">
<el-input v-model="text" placeholder="中文名称" disabled></el-input>
</el-form-item>
<el-form-item label="数据量">
<el-input v-model="dataNum" placeholder="数据量" disabled></el-input>
</el-form-item>
</el-form>
<el-card class="box-card">
<div slot="header" class="clearfix">
<span>卡片名称</span>
</div>
<template>
<el-tabs v-model="activeName" type="card" @tab-click="handleClick">
<el-tab-pane label="部门授权" name="first">
<el-table
v-if="refreshTable"
v-loading="loading"
:data="deptList"
:default-expand-all="isExpandAll"
:tree-props="{children: 'children', hasChildren: 'hasChildren'}"
row-key="deptId">
<el-table-column label="部门名称" prop="deptName" width="260"></el-table-column>
<el-table-column label="部门负责人" prop="leader" width="260"></el-table-column>
<el-table-column label="邮箱" prop="email" width="260"></el-table-column>
<el-table-column align="center" label="创建时间" prop="createTime" width="200">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.createTime) }}</span>
</template>
</el-table-column>
<el-table-column align="center" class-name="small-padding fixed-width" label="操作(授权)">
<template slot-scope="scope">
<el-switch
:value="isDeptAccredited(scope.row.deptId)"
@change="handleDeptAccreditChange(scope.row.deptId,$event)"
active-color="#13ce66"
inactive-color="#ff4949">
</el-switch>
</template>
</el-table-column>
</el-table>
</el-tab-pane>
<el-tab-pane label="用户授权" name="second">
<el-table v-loading="loading" :data="userList">
<el-table-column v-if="columns[0].visible" key="userId" align="center" label="用户编号" prop="userId"/>
<el-table-column v-if="columns[1].visible" key="userName" :show-overflow-tooltip="true" align="center" label="用户名称"
prop="userName"/>
<el-table-column v-if="columns[2].visible" key="nickName" :show-overflow-tooltip="true" align="center" label="用户昵称"
prop="nickName"/>
<el-table-column v-if="columns[3].visible" key="deptName" :show-overflow-tooltip="true" align="center" label="部门"
prop="dept.deptName"/>
<el-table-column v-if="columns[4].visible" key="phonenumber" align="center" label="手机号码"
prop="phonenumber" width="120"/>
<el-table-column v-if="columns[7].visible" key="email" align="center" label="邮箱"
prop="email" width="120"/>
<el-table-column v-if="columns[6].visible" align="center" label="创建时间" prop="createTime" width="160">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.createTime) }}</span>
</template>
</el-table-column>
<el-table-column align="center" class-name="small-padding fixed-width" label="操作(授权)" width="160">
<template slot-scope="scope">
<el-switch
:value="isAccredited(scope.row.userId)"
@change="handleAccreditChange(scope.row.userId,$event)"
active-color="#13ce66"
inactive-color="#ff4949">
</el-switch>
</template>
</el-table-column>
</el-table>
</el-tab-pane>
</el-tabs>
</template>
</el-card>
</el-main>
</el-container> </el-container>
</div> </div>
</template> </template>
<style>
.el-header, .el-footer {
background-color: #a1a1a1;
color: #a1a1a1;
text-align: center;
line-height: 680px;
}
.el-aside {
background-color: #ffffff;
color: #606060;
text-align: center;
line-height: 500px;
}
.el-main {
background-color: #a1a1a1;
color: #a1a1a1;
text-align: center;
line-height: 680px;
}
</style>
<script> <script>
//jsjsjson, //jsjsjson,
//import from ', //import from ',
import {
addDeptAssetAuthorization,
addUserAssetAuthorization,
delDeptAssetAuthorization,
delUserAssetAuthorization,
getExtractDataTableNameList,
findDeptIdList,
findUserIdList
} from '@/api/property/asauth'
import { listUser } from '@/api/system/user'
import { listDept } from '@/api/system/dept'
import { parseTime } from '@/utils/muyu'
export default { export default {
//import使" //import使"
components: {}, components: {},
dicts: ['sys_yes_no','sys_normal_disable'],
props: {}, props: {},
data() { data() {
//" //"
return {} return {
//
AccreditValue:false,
//
userList:[],
//
columns: [
{key: 0, label: `用户编号`, visible: false},
{key: 1, label: `用户名称`, visible: true},
{key: 2, label: `用户昵称`, visible: true},
{key: 3, label: `部门`, visible: true},
{key: 4, label: `手机号码`, visible: true},
{key: 5, label: `状态`, visible: false},
{key: 6, label: `创建时间`, visible: true},
{key: 7, label: `邮箱`, visible: true}
],
dataNum:0,
//
loading: true,
//
showSearch: true,
//
deptList: [],
//
deptOptions: [],
//
title: "",
//
open: false,
//
isExpandAll: true,
//
refreshTable: true,
//
queryParams: {
deptName: undefined,
status: undefined
},
data:[],
defaultProps: {
children: 'tableNames',
label: 'name'
},
tableBasic:{},
tableStructure:[],
valueList:[],
activeName: 'first',
AssetImPowerListReq:{
basicId:null,
tableId:null,
deptId:null,
userId:null
},
userIdList:[],
deptIdList:[],
};
}, },
// data", // data",
computed: {}, computed: {},
//data", //data",
watch: {}, watch: {},
//", //",
methods: {}, methods: {
parseTime,
//switch
handleDeptAccreditChange(deptId, value) {
this.AssetImPowerListReq.basicId = this.tableBasic.basicId
this.AssetImPowerListReq.tableId = this.tableBasic.id
this.AssetImPowerListReq.deptId = deptId
if (this.tableBasic.children != null) {
this.AssetImPowerListReq.tableId = null;
} else {
this.AssetImPowerListReq.basicId = null;
}
if (value === true) {
//
addDeptAssetAuthorization(this.AssetImPowerListReq).then((res) => {
if (res.code === 200) {
this.$modal.msgSuccess("权限赋予成功");
} else {
this.$modal.msgError("权限赋予失败");
}
this.findDeptIdList();
this.isDeptAccredited()
})
} else {
//
delDeptAssetAuthorization(this.AssetImPowerListReq).then((res) => {
if (res.code === 200) {
this.$modal.msgSuccess("权限删除成功");
} else {
this.$modal.msgError("权限删除失败");
}
this.findDeptIdList();
this.isDeptAccredited()
})
}
},
//switch,
handleAccreditChange(userId, value) {
console.log("userId的值:" + userId);
console.log("value的值" + value)
this.AssetImPowerListReq.basicId = this.tableBasic.basicId
this.AssetImPowerListReq.tableId = this.tableBasic.id
this.AssetImPowerListReq.userId = userId
if (this.tableBasic.children != null) {
this.AssetImPowerListReq.tableId = null;
} else {
this.AssetImPowerListReq.basicId = null;
}
if (value === true) {
//
addUserAssetAuthorization(this.AssetImPowerListReq).then((res) => {
if (res.code === 200) {
this.$modal.msgSuccess("权限赋予成功");
} else {
this.$modal.msgError("权限赋予失败");
}
this.findUserIdList()
this.isAccredited()
})
} else {
//
delUserAssetAuthorization(this.AssetImPowerListReq).then((res) => {
if (res.code === 200) {
this.$modal.msgSuccess("权限删除成功");
} else {
this.$modal.msgError("权限删除失败");
}
this.findUserIdList()
this.isAccredited()
})
}
},
// ID
isAccredited(userId) {
return this.userIdList.includes(userId);
},
//ID
isDeptAccredited(deptId) {
return this.deptIdList.includes(deptId);
},
/**
* 查询用户列表
*/
getUserList() {
this.loading = true;
listUser(this.addDateRange(this.queryParams, this.dateRange)).then(response => {
this.userList = response.data.rows;
this.total = response.data.total;
this.loading = false;
console.log(response.data.rows)
}
);
},
/**
* 查询部门列表
*/
getList() {
this.loading = true;
listDept(this.queryParams).then(response => {
this.deptList = this.handleTree(response.data, "deptId");
this.loading = false;
});
},
/**
* 查询数据库和相关联表
*
* @returns {AxiosPromise} 返回集合
*/
findByTableName() {
getExtractDataTableNameList().then((res) => {
this.data = res.data
})
},
/**
* 查询资产赋权用户信息
* @param data 参数信息
* @returns {*} 响应结果
*/
findUserIdList(){
findUserIdList(this.AssetImPowerListReq).then((res) => {
this.userIdList = res.data
})
},
/**
* 查询资产赋权部门信息
* @param data 参数信息
* @returns {*} 响应结果
*/
findDeptIdList(){
findDeptIdList(this.AssetImPowerListReq).then((res) => {
this.deptIdList = res.data
})
},
/**\
* 树形结构
* @param data
*/
handleNodeClick(data) {
this.tableBasic = data
this.AssetImPowerListReq.tableId = this.tableBasic.id
this.AssetImPowerListReq.basicId = this.tableBasic.basicId
this.AssetImPowerListReq.deptId = this.tableBasic.deptId
if (this.tableBasic.children != null) {
this.AssetImPowerListReq.tableId = null;
} else {
this.AssetImPowerListReq.basicId = null;
}
/**
* 查询资产赋权用户信息
* @param data 参数信息
* @returns {*} 响应结果
*/
findUserIdList(this.AssetImPowerListReq).then((res) => {
this.userIdList = res.data
})
/**
* 查询资产赋权部门信息
* @param data 参数信息
* @returns {*} 响应结果
*/
findDeptIdList(this.AssetImPowerListReq).then((res) => {
this.deptIdList = res.data
})
},
},
// - 访this", // - 访this",
created() { created() {
//
this.findByTableName()
//
this.getList()
//
this.getUserList()
}, },
// - 访DOM", // - 访DOM",
mounted() { mounted() {
@ -75,8 +389,10 @@ export default {
}, // - ", }, // - ",
activated() { activated() {
} //keep-alive", } //keep-alive",
} };
</script> </script>
<style scoped> <style scoped>
</style> </style>

View File

@ -1,82 +1,165 @@
<template> <template>
<div> <div>
<h1>数据资产结构</h1>
<el-container> <el-container>
<el-aside width="300px"> <el-aside width="400px">
<el-tree :data="dataName" :props="defaultProps" @node-click="handleNodeClick"></el-tree>
<el-tree :data="data" :props="defaultProps" @node-click="handleNodeClick"></el-tree>
</el-aside> </el-aside>
<el-container>
<el-header>Header</el-header> <el-main>
<el-main>Main</el-main>
<el-footer>Footer</el-footer> <el-card class="box-card">
</el-container> <div slot="header" class="clearfix">
</el-container> <span style="font-size: xx-large"></span>
<template>
<el-descriptions class="margin-top" title="资产模型基本信息" :column="2" border>
<el-descriptions-item>
<template slot="label">表名称</template>
{{ tableBasic.name }}
</el-descriptions-item>
<el-descriptions-item>
<template slot="label">表备注</template>
{{ tableBasic.tableRemark }}
</el-descriptions-item>
<el-descriptions-item>
<template slot="label">数据量</template>
{{ dataNum }}
</el-descriptions-item>
<el-descriptions-item>
<template slot="label">是否核心</template>
<dict-tag :options="dict.type.sys_no" :value="tableBasic.isCenter"/>
</el-descriptions-item>
</el-descriptions>
</template>
</div>
</el-card>
<el-card class="box-card" title="资产模型基本信息" :column="2" >
<div slot="header" class="clearfix">
<span>资产模型详细信息</span>
</div>
<el-table
:data="tableStructure" style="width: 100%">
<el-table-column label="名称" prop="field"></el-table-column>
<el-table-column label="注释" prop="annotation"></el-table-column>
<el-table-column label="是否主键" prop="primarys">
<template slot-scope="scope">
<span v-if="scope.row.primarys==='PRI'">
<el-tag type="success">{{scope.row.primarys }}</el-tag>
</span>
<span v-if="scope.row.primarys===''">
<el-tag type="danger">NO</el-tag>
</span>
</template>
</el-table-column>
<el-table-column label="类型" prop="type"></el-table-column>
<el-table-column label="映射类型" prop="types"></el-table-column>
<el-table-column label="是否为空" prop="nullable"></el-table-column>
<el-table-column label="是否字典" prop="isDictionary"></el-table-column>
<el-table-column label="映射字典" prop="dictionaryTable"></el-table-column>
</el-table>
</el-card>
</el-main>
</el-container>
</div> </div>
</template> </template>
<style> <style>
.el-header, .el-footer {
background-color: #a1a1a1;
color: #a1a1a1;
text-align: center;
line-height: 680px;
}
.el-aside {
background-color: #ffffff;
color: #606060;
text-align: center;
line-height: 500px;
}
.el-main { .el-main {
background-color: #a1a1a1; background-color: #ececec;
color: #a1a1a1; color: #000000;
text-align: center; line-height: 147px;
line-height: 680px;
} }
</style> </style>
<script> <script>
//jsjsjson, //jsjsjson,
//import from ', //import from ',
import { getExtractDataTableNameList } from '@/api/property/astr'
import { findTableValue, getExtractDataTableNameList } from '@/api/property/astr'
export default { export default {
//import使" //import使"
components: {}, components: {},
dicts: ['sys_no'],
props: {}, props: {},
data() { data() {
//" //"
return { return {
dataName:[], tableMapping:[],
data:[],
defaultProps: { defaultProps: {
children: 'children', children: 'tableNames',
label: 'label' label: 'name'
} },
} dataNum:0,
tableBasic:{
},
tableStructure:[],
javaType:[],
};
}, },
// data", // data",
computed: {}, computed: {},
//data", //data",
watch: { watch: {},
},
//", //",
methods: { methods: {
getSelectList(){ getSelectList(){
getExtractDataTableNameList().then(res=>{ getExtractDataTableNameList().then((res)=>{
console.log(res.data) this.data = res.data
this.dataName=res.data
}) })
}, },
handleNodeClick(data){
// console.log(data)
this.tableBasic=data
this.dataNum=data.tableFie.length
this.tableStructure=data.tableFie
// console.log(this.tableStructure)
findTableValue(data.dataId,data.name).then(res=>{
let tableMapping=res.data
// console.log(res.data)
for (const index in tableMapping) {
for (const i in this.tableStructure) {
if (tableMapping[index].key === this.tableStructure[i].field) {
this.tableStructure[i].types.push(tableMapping[index].type)
console.log(this.tableStructure[i].types)
if (i!== 0&& this.tableStructure[i].types==this.tableStructure[0].types){
alert("dawdwadad")
return
}
}
}
}
})
},
}, },
// - 访this", // - 访this",
created() { created() {
this.getSelectList() this.getSelectList();
}, },
// - 访DOM", // - 访DOM",
mounted() { mounted() {
@ -95,8 +178,10 @@ export default {
}, // - ", }, // - ",
activated() { activated() {
} //keep-alive", } //keep-alive",
} };
</script> </script>
<style scoped> <style scoped>
</style> </style>