Merge branch 'dev'

pull/7/head^2
Aaaaaaaa 2024-09-02 20:31:09 +08:00
commit b5b9ce86bc
7 changed files with 640 additions and 61 deletions

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,62 @@ 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
})}

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

@ -152,6 +152,30 @@ export const constantRoutes = [
} }
] ]
}, },
{
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

@ -34,7 +34,7 @@
<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>
</div> </div>
<el-table :data="arr" style="width: 100%" @selection-change="handleSelectionChange"> <el-table :data="arr" style="width: 100%" @selection-change="handleSelectionChange">
@ -86,17 +86,21 @@
<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="ordersDelete(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"
@ -106,14 +110,50 @@
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 { selectList, updateOrders, addordersup, ordersDelete ,pay} from '@/api/market/orders'
import {handleDelete} from "@/api/market/product";
import { diGui } from "@/api/market/orders"; import { diGui } from "@/api/market/orders";
//jsjsjson, //jsjsjson,
//import from ', //import from ',
export default { export default {
@ -123,7 +163,6 @@ export default {
props: {}, props: {},
data() { data() {
//" //"
return { return {
orders:{ orders:{
pageNum:1, pageNum:1,
@ -139,6 +178,11 @@ export default {
startDate: null, startDate: null,
endDate: null, endDate: null,
index:'',
addtitle:'',
addordersoff:false,
ordersForm:{},
options: [{ options: [{
value: ' ', value: ' ',
label: '全选' label: '全选'
@ -166,58 +210,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 +223,73 @@ export default {
this.orders.total = res.data.total this.orders.total = res.data.total
} }
) )
},
//
ordersDelete(row){
ordersDelete(row.ordersId).then(
res => {
this.$message.success(res.msg)
this.selectList()
} }
)
},
//
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){
window.open("http://localhost:9701/alipay/pay?subject=" + row.name
+ "&amp; traceNo=" + row.no + "&amp; totalAmount=" + row.ordersPrice)
this.$message.success('付款成功')
this.load();
}
}, },
// - 访this", // - 访this",
created() { created() {

View File

@ -0,0 +1,339 @@
<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: 180px;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>
<br/> <br/>
选择时间:
<el-date-picker v-model="orders.startDate" type="date" placeholder="开始时间" />
-----
<el-date-picker v-model="orders.endDate" type="date" placeholder="结束时间"/>
</el-form-item>
</el-form>
</div>
</el-card>
<br>
<el-card class="box-card" style="width: 94%;transform: translateX(3%);margin-top: 10px">
<div slot="header" class="clearfix">
<span>回收站列表</span>
<button @click="add(1)" style="float: right; padding: 3px 10px" type="text">添加</button>
</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="120" 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="150" 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="110" 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>
<el-button
type="primary"
size="small"
@click="pay(scope.row)" >支付</el-button>
<!-- v-if="scope.row.status === '待支付'"-->
</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="[2, 4, 6, 8]"
:page-size="orders.pageSize"
layout="total, sizes, prev, pager, next, jumper"
:total="orders.total">
</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>
</template>
<script>
import { selectList, update, addordersup, ordersDelete ,pay} from '@/api/market/orders'
import { diGui } from "@/api/market/orders";
//jsjsjson,
//import from ',
export default {
dicts:['product_name','orders_num','orders_state','orders_launchdate'],
//import使"
components: {},
props: {},
data() {
//"
return {
orders:{
pageNum:1,
pageSize:10,
total:1,
typeId:0
},
arr:[],
type:[],
Cascader:{ expandTrigger:'hover',value:'id',label:'typeName',children:'parentPOS' },
typeId:[],
startDate: null,
endDate: null,
index:'',
addtitle:'',
addordersoff:false,
ordersForm:{},
options: [{
value: ' ',
label: '全选'
}, {
value: '0',
label: '待支付'
}, {
value: '1',
label: '已付款'
}, {
value: '2',
label: '未付款'
}, {
value: '3',
label: '售后中(申请退款) '
} ,{
value: '4',
label: '已退款 '
}]
};
},
// data",
computed: {},
//data",
watch: {},
//",
methods: {
//
ordersDelete(row){
ordersDelete(row.ordersId).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()
},
handleClose(done) {
this.$confirm('确认关闭?')
.then(_ => {
done();
})
.catch(_ => {});
},
pay(row){
window.open("http://localhost:9701/alipay/pay?subject=" + row.name
+ "&amp; traceNo=" + row.no + "&amp; totalAmount=" + row.ordersPrice)
this.$message.success('付款成功')
this.load();
}
,
//
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}})
},
addorders(ordersForm){
addordersup(ordersForm).then(response=>{
alert(response.msg)
if (response.code==200){}
this.addordersoff=false
})
location.reload();
},
//
findShop(){
this.selectList()
},
//
add(index){
this.index=index
if (this.index === 1) {
this.addtitle= '添加订单';
}
// else if (this.index === 2) {
// this.dialogtitle= '';
// }
this.addordersoff=true
},
//
handleSelectionChange(val) {
this.multipleSelection = val;
},
//
selectList() {
selectList(this.orders).then(
res => {
console.log(res)
this.arr = res.data.list
this.orders.total = res.data.total
}
)
}
},
// - 访this",
created() {
// this.diGui()
this.selectList()
},
// - 访DOM",
mounted() {
},
beforeCreate() {
}, // - ",
beforeMount() {
}, // - ",
beforeUpdate() {
}, // - ",
updated() {
}, // - ",
beforeDestroy() {
}, // - ",
destroyed() {
}, // - ",
activated() {
} //keep-alive",
};
</script>
<style scoped>
</style>

View File

@ -0,0 +1,97 @@
<template>
<div>
{{orders}}
<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%">
{{orders.productId}}
</el-form-item>
<el-form-item label="接口名称" prop="productName" style="width: 70%">
{{orders.productName}}
</el-form-item>
<el-form-item label="接口类型" prop="productType" style="width: 70%">
{{orders.productType}}
</el-form-item>
<el-form-item label="接口描述" prop="productContent" style="width: 70%">
{{orders.productContent}}
</el-form-item>
<el-form-item label="接口销量" prop="productSales" style="width: 70%">
{{orders.productSales}}
</el-form-item>
<el-form-item label="接口价格" prop="productPrice" style="width: 70%">
{{orders.productPrice}}
</el-form-item>
<el-form-item label="接口来源" prop="productFrom" style="width: 70%">
{{orders.productFrom}}
</el-form-item>
<el-form-item label="重要路由" prop="apiRouter" style="width: 70%">
{{orders.apiRouter}}
</el-form-item>
<el-form-item label="接口地址" prop="apiAddress" style="width: 70%">
{{orders.apiAddress}}
</el-form-item>
<el-form-item label="返回格式" prop="returnFormat" style="width: 70%">
{{orders.returnFormat}}
</el-form-item>
<el-form-item label="请求方式" prop="requestMethod" style="width: 70%">
{{orders.requestMethod}}
</el-form-item>
<el-form-item>
<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 {
orders:{}
};
},
// 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>