Commit a10f7321 authored by lixy's avatar lixy

Merge branch 'dev' of http://113.105.137.151:22280/zhoujw/rs-cloud-platform-ui into dev

# Conflicts:
#	src/views/orderManagement/orderList/index.vue
parents 2b67b404 4a12ab1d
import fetch from 'utils/fetch';
// 卫星列表
export function getSatelliteData(obj) {
return fetch({
url: '/api/datacenter/bg/imagePrice/pages',
method: 'get',
params: obj
});
}
// 已入库数据列表
export function getDateList(obj) {
return fetch({
url: '/api/datacenter/bg/imageData/pages',
method: 'get',
params: obj
});
}
// 分辨率列表
export function getResolutionData(obj) {
return fetch({
url: '/api/datacenter/bg/resolution/pages',
method: 'get',
params: obj
});
}
// 全部分辨率列表
export function getResolutionAll(obj) {
return fetch({
url: '/api/datacenter/web/resolution/app/unauth/all',
method: 'get',
params: obj
});
}
// 全部卫星列表
export function getimagePriceAll(obj) {
return fetch({
url: '/api/datacenter/web/imagePrice/app/unauth/all',
method: 'get',
params: obj
});
}
// 删除分辨率
export function delResolution(obj) {
return fetch({
url: '/api/datacenter/bg/resolution/del?id=' + obj.id,
method: 'DELETE'
// data: obj
});
}
// 删除卫星传感器
export function delimagePrice(obj) {
return fetch({
url: '/api/datacenter/bg/imagePrice/del?id=' + obj.id,
method: 'DELETE'
// data: obj
});
}
// 添加分辨率
export function addResolution(obj) {
return fetch({
url: '/api/datacenter/bg/resolution',
method: 'post',
data: obj
});
}
// 修改分辨率
export function updateResolution(obj) {
return fetch({
url: '/api/datacenter/bg/resolution/' + obj.id,
method: 'PUT',
data: obj
});
}
// 添加卫星传感器
export function addimagePrice(obj) {
return fetch({
url: '/api/datacenter/bg/imagePrice',
method: 'post',
data: obj
});
}
// 修改卫星传感器
export function updateimagePrice(obj) {
return fetch({
url: '/api/datacenter/bg/imagePrice/' + obj.id,
method: 'PUT',
data: obj
});
}
...@@ -160,6 +160,29 @@ export const asyncRouterMap = [{ ...@@ -160,6 +160,29 @@ export const asyncRouterMap = [{
authority: 'demandList' authority: 'demandList'
}] }]
}, },
{
path: '/archiveDataManagement',
component: Layout,
name: '存档数据管理',
icon: 'setting',
authority: 'archiveDataManagement',
children: [{
path: 'satelliteManagement',
component: _import('archiveDataManagement/satelliteManagement/index'),
name: '卫星传感器价格管理',
authority: 'satelliteManagement'
}, {
path: 'dataList',
component: _import('archiveDataManagement/dataList/index'),
name: '已入库卫星数据管理',
authority: 'dataList'
}, {
path: 'resolutionManger',
component: _import('archiveDataManagement/resolutionManger/index'),
name: '分辨率管理',
authority: 'resolutionManger'
}]
},
{ {
path: '/webSiteManagement', path: '/webSiteManagement',
component: Layout, component: Layout,
......
<template>
<div class="main">
<el-form>
<el-row>
<el-col :span="6">
<el-form-item label="名称">
<el-input
v-model="listQuery.name"
style="width: 70%"
placeholder="请输入名称"
></el-input>
</el-form-item>
</el-col>
<el-col :span="5">
<el-form-item label="卫星">
<el-select
v-model="listQuery.imageSatelliteType"
placeholder="请选择卫星"
>
<el-option label="全部" :value="undefined"></el-option>
<el-option
v-for="(item, idx) in imgPrices"
:key="idx"
:label="item.satelliteName"
:value="item.imageSatelliteType"
></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="5">
<el-form-item label="分辨率">
<el-select
v-model="listQuery.imageResolution"
placeholder="请选择分辨率"
>
<el-option label="全部" :value="undefined"></el-option>
<el-option
v-for="(item, idx) in resolutions"
:key="idx"
:label="item.resolutionName"
:value="item.resolution"
></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="6">
<el-button type="primary" @click="search">搜索</el-button>
<el-button type="info" @click="clear">清除搜索</el-button>
</el-col>
</el-row>
</el-form>
<el-table border :data="list" style="margin-top: 20px; width: 100%">
<el-table-column prop="name" label="名称" align="center">
</el-table-column>
<el-table-column prop="imageSatelliteType" label="卫星" align="center">
</el-table-column>
<el-table-column
prop="imageSatelliteTypeDisplay"
label="卫星描述"
align="center"
>
</el-table-column>
<el-table-column prop="imageResolution" label="分辨率" align="center">
</el-table-column>
<el-table-column prop="imageTakeTimeStr" label="拍摄时间" align="center">
</el-table-column>
<el-table-column prop="imageCloudage" label="云量" align="center">
</el-table-column>
<el-table-column prop="imageSensorId" label="传感器id" align="center">
</el-table-column>
<el-table-column prop="imageSensorType" label="传感器标识" align="center">
</el-table-column>
<el-table-column prop="dataId" label="数据id" align="center">
</el-table-column>
</el-table>
<el-pagination
style="margin-top: 20px"
@size-change="handleSizeChange"
@current-change="handleCurrentChange"
:current-page="listQuery.page"
:page-sizes="[10, 20, 30, 40]"
:page-size="listQuery.limit"
layout="total, sizes, prev, pager, next, jumper"
:total="total"
>
</el-pagination>
</div>
</template>
<script>
import {
getDateList,
getResolutionAll,
getimagePriceAll,
} from "api/website/archiveDataManagement";
import { timestamp2DateAuto } from "../../../utils/dateUtils";
export default {
data() {
return {
list: [{}],
total: 0,
resolutions: [],
imgPrices: [],
listQuery: {
page: 1,
limit: 10,
},
};
},
created() {
this.getList();
this.getResolutions();
this.getImgPrices();
},
methods: {
getResolutions() {
getResolutionAll().then((res) => {
if (res.status == 200) {
this.resolutions = res.data;
}
});
},
getImgPrices() {
getimagePriceAll().then((res) => {
if (res.status == 200) {
this.imgPrices = res.data;
}
});
},
search() {
this.listQuery.page = 1;
this.getList();
},
clear() {
this.listQuery = {
page: 1,
limit: 10,
};
this.getList();
},
getList() {
getDateList(this.listQuery).then((res) => {
if (res.status == 200) {
this.total = res.data.totalCount;
this.list = res.data.data;
this.list.map((item) => {
item.imageTakeTimeStr = timestamp2DateAuto(
item.imageTakeTime,
"yyyy-MM-dd hh:mm:ss"
);
});
}
});
},
handleSizeChange(val) {
this.listQuery.page = 1;
this.listQuery.limit = val;
this.getList();
},
handleCurrentChange(val) {
this.listQuery.page = val;
this.getList();
},
},
};
</script>
<style lang="scss" scoped>
.main {
box-sizing: border-box;
padding: 36px;
}
</style>
<template>
<div class="main">
<el-row>
<el-button type="primary" @click="addItem">添加分辨率</el-button>
</el-row>
<el-table border :data="list" style="margin-top: 20px; width: 100%">
<el-table-column prop="resolutionName" label="分辨率名称" align="center">
</el-table-column>
<el-table-column prop="resolution" label="分辨率标识" align="center">
</el-table-column>
<el-table-column prop="sort" label="排序" align="center">
</el-table-column>
<el-table-column label="状态" align="center">
<template slot-scope="{ row }">
<span v-if="row.status == 1">上架</span>
<span v-if="row.status == 2">下架</span>
</template>
</el-table-column>
<el-table-column label="操作" align="center">
<template slot-scope="{ row }">
<el-row>
<el-button type="text" @click="edit(row)">编辑</el-button>
<el-button
v-if="row.status == 1"
type="text"
@click="changeSate(row, 2)"
>下架</el-button
>
<el-button
v-if="row.status == 2"
type="text"
@click="changeSate(row, 1)"
>上架</el-button
>
<el-button type="text" @click="delItem(row)">删除</el-button>
</el-row>
</template>
</el-table-column>
</el-table>
<el-pagination
style="margin-top: 20px"
@size-change="handleSizeChange"
@current-change="handleCurrentChange"
:current-page="listQuery.page"
:page-sizes="[10, 20, 30, 40]"
:page-size="listQuery.limit"
layout="total, sizes, prev, pager, next, jumper"
:total="total"
>
</el-pagination>
<el-dialog
:title="titleText"
:visible.sync="showAddOrUpd"
width="30%"
@close="showAddOrUpd = false"
>
<el-form ref="form" :model="form" :rules="rules" label-width="100px">
<el-form-item label="分辨率名称" prop="resolutionName">
<el-input v-model="form.resolutionName" style="width: 80%"></el-input>
</el-form-item>
<el-form-item label="分辨率标识" prop="resolution">
<el-input v-model="form.resolution" style="width: 80%"></el-input>
</el-form-item>
<el-form-item label="排序" prop="sort">
<el-input-number
:min="0"
:step="1"
:precision="0"
v-model="form.sort"
></el-input-number>
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button @click="showAddOrUpd = false">取 消</el-button>
<el-button type="primary" @click="addOrUpdOk('form')">确 定</el-button>
</span>
</el-dialog>
</div>
</template>
<script>
import {
getResolutionData,
delResolution,
addResolution,
updateResolution,
} from "api/website/archiveDataManagement";
export default {
data() {
return {
list: [{}],
total: 0,
listQuery: {
page: 1,
limit: 10,
},
form: {
resolutionName: undefined,
resolution: undefined,
sort: 0,
status: 2,
},
rules: {
resolutionName: [
{ required: true, message: "请输入分辨率名称", trigger: "blur" },
],
resolution: [
{ required: true, message: "请输入分辨率标识", trigger: "blur" },
],
sort: [{ required: true, message: "请输入排序", trigger: "blur" }],
},
showAddOrUpd: false,
titleText: "",
};
},
created() {
this.getList();
},
methods: {
addItem() {
this.showAddOrUpd = true;
this.titleText = "添加分辨率";
this.form = {
resolutionName: undefined,
resolution: undefined,
sort: 0,
status: 2,
};
},
edit(row) {
this.showAddOrUpd = true;
this.titleText = "修改分辨率";
this.form = row;
},
changeSate(row, state) {
let data = {
id: row.id,
status: state,
};
updateResolution(data).then((res) => {
if (res.status == 200) {
this.$message.success("修改成功");
this.getList();
} else {
this.$message.warning(res.message);
}
});
},
addOrUpdOk(formname) {
this.$refs[formname].validate((valid) => {
if (valid) {
if (this.form.id) {
//编辑
updateResolution(this.form).then((res) => {
if (res.status == 200) {
this.$message.success("修改成功");
this.getList();
this.showAddOrUpd = false;
} else {
this.$message.warning(res.message);
}
});
} else {
//添加
addResolution(this.form).then((res) => {
if (res.status == 200) {
this.$message.success("添加成功");
this.listQuery.page = 1;
this.getList();
this.showAddOrUpd = false;
} else {
this.$message.warning(res.message);
}
});
}
} else {
return false;
}
});
},
delItem(row) {
this.$confirm("是否删除", "提示", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning",
})
.then(() => {
delResolution({ id: Number(row.id) }).then((res) => {
if (res.status == 200) {
this.$message.success("删除成功");
this.getList();
} else {
this.$message.warning(res.message);
}
});
})
.catch(() => {
this.$message({
type: "info",
message: "已取消",
});
});
},
getList() {
getResolutionData(this.listQuery).then((res) => {
if (res.status == 200) {
this.total = res.data.totalCount;
this.list = res.data.data;
}
});
},
handleSizeChange(val) {
this.listQuery.page = 1;
this.listQuery.limit = val;
this.getList();
},
handleCurrentChange(val) {
this.listQuery.page = val;
this.getList();
},
},
};
</script>
<style lang="scss" scoped>
.main {
box-sizing: border-box;
padding: 36px;
}
</style>
<template>
<div class="main">
<el-row>
<el-button type="primary" @click="addItem">添加卫星传感器</el-button>
</el-row>
<el-table border :data="list" style="margin-top: 20px; width: 100%">
<el-table-column prop="satelliteName" label="卫星名称" align="center">
</el-table-column>
<el-table-column
prop="imageSatelliteType"
label="卫星标识"
align="center"
>
</el-table-column>
<el-table-column prop="imageResolution" label="分辨率标识" align="center">
</el-table-column>
<el-table-column prop="imageSensorType" label="传感器" align="center">
</el-table-column>
<el-table-column prop="sensorName" label="传感器名称" align="center">
</el-table-column>
<el-table-column prop="price" label="价格" align="center">
</el-table-column>
<el-table-column label="状态" align="center">
<template slot-scope="{ row }">
<span v-if="row.status == 0">不可用</span>
<span v-if="row.status == 1">可用</span>
</template>
</el-table-column>
<el-table-column label="操作" align="center">
<template slot-scope="{ row }">
<el-row>
<el-button type="text" @click="edit(row)">编辑</el-button>
<el-button
v-if="row.status == 1"
type="text"
@click="changeSate(row, 0)"
>设为不可用</el-button
>
<el-button
v-if="row.status == 0"
type="text"
@click="changeSate(row, 1)"
>设为可用</el-button
>
<el-button type="text" @click="delItem(row)">删除</el-button>
</el-row>
</template>
</el-table-column>
</el-table>
<el-pagination
style="margin-top: 20px"
@size-change="handleSizeChange"
@current-change="handleCurrentChange"
:current-page="listQuery.page"
:page-sizes="[10, 20, 30, 40]"
:page-size="listQuery.limit"
layout="total, sizes, prev, pager, next, jumper"
:total="total"
>
</el-pagination>
<el-dialog
:title="titleText"
:visible.sync="showAddOrUpd"
width="30%"
@close="showAddOrUpd = false"
>
<el-form ref="form" :model="form" :rules="rules" label-width="100px">
<el-form-item label="卫星名称" prop="satelliteName">
<el-input v-model="form.satelliteName" style="width: 80%"></el-input>
</el-form-item>
<el-form-item label="卫星标识" prop="imageSatelliteType">
<el-input
v-model="form.imageSatelliteType"
style="width: 80%"
></el-input>
</el-form-item>
<el-form-item label="分辨率标识" prop="imageResolution">
<el-input
v-model="form.imageResolution"
style="width: 80%"
></el-input>
</el-form-item>
<el-form-item label="传感器" prop="imageSensorType">
<el-input
v-model="form.imageSensorType"
style="width: 80%"
></el-input>
</el-form-item>
<el-form-item label="传感器名称" prop="sensorName">
<el-input v-model="form.sensorName" style="width: 80%"></el-input>
</el-form-item>
<el-form-item label="价格" prop="price">
<el-input-number
:min="0"
:step="1"
:precision="0"
v-model="form.price"
></el-input-number>
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button @click="showAddOrUpd = false">取 消</el-button>
<el-button type="primary" @click="addOrUpdOk('form')">确 定</el-button>
</span>
</el-dialog>
</div>
</template>
<script>
import {
getSatelliteData,
delimagePrice,
addimagePrice,
updateimagePrice,
} from "api/website/archiveDataManagement";
export default {
data() {
return {
list: [{}],
total: 0,
listQuery: {
page: 1,
limit: 10,
},
form: {
satelliteName: undefined,
imageSatelliteType: undefined,
imageResolution: undefined,
imageSensorType: undefined,
sensorName: undefined,
price: 0,
status: 0,
},
rules: {
satelliteName: [
{ required: true, message: "请输入卫星名称", trigger: "blur" },
],
imageSatelliteType: [
{ required: true, message: "请输入卫星标识", trigger: "blur" },
],
imageResolution: [
{ required: true, message: "请输入分辨率标识", trigger: "blur" },
],
imageSensorType: [
{ required: true, message: "请输入传感器", trigger: "blur" },
],
sensorName: [
{ required: true, message: "请输入传感器名称", trigger: "blur" },
],
price: [{ required: true, message: "请输入价格", trigger: "blur" }],
},
showAddOrUpd: false,
titleText: "",
};
},
created() {
this.getList();
},
methods: {
getList() {
getSatelliteData(this.listQuery).then((res) => {
if (res.status == 200) {
this.total = res.data.totalCount;
this.list = res.data.data;
}
});
},
addItem() {
this.showAddOrUpd = true;
this.titleText = "添加卫星传感器";
this.form = {
satelliteName: undefined,
imageSatelliteType: undefined,
imageResolution: undefined,
imageSensorType: undefined,
sensorName: undefined,
price: 0,
status: 0,
};
},
edit(row) {
this.showAddOrUpd = true;
this.titleText = "修改卫星传感器";
this.form = row;
},
changeSate(row, state) {
let data = {
id: row.id,
status: state,
};
updateimagePrice(data).then((res) => {
if (res.status == 200) {
this.$message.success("修改成功");
this.getList();
} else {
this.$message.warning(res.message);
}
});
},
addOrUpdOk(formname) {
this.$refs[formname].validate((valid) => {
if (valid) {
if (this.form.id) {
//编辑
updateimagePrice(this.form).then((res) => {
if (res.status == 200) {
this.$message.success("修改成功");
this.getList();
this.showAddOrUpd = false;
} else {
this.$message.warning(res.message);
}
});
} else {
//添加
addimagePrice(this.form).then((res) => {
if (res.status == 200) {
this.$message.success("添加成功");
this.listQuery.page = 1;
this.getList();
this.showAddOrUpd = false;
} else {
this.$message.warning(res.message);
}
});
}
} else {
return false;
}
});
},
delItem(row) {
this.$confirm("是否删除", "提示", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning",
})
.then(() => {
delimagePrice({ id: Number(row.id) }).then((res) => {
if (res.status == 200) {
this.$message.success("删除成功");
this.getList();
} else {
this.$message.warning(res.message);
}
});
})
.catch(() => {
this.$message({
type: "info",
message: "已取消",
});
});
},
handleSizeChange(val) {
this.listQuery.page = 1;
this.listQuery.limit = val;
this.getList();
},
handleCurrentChange(val) {
this.listQuery.page = val;
this.getList();
},
},
};
</script>
<style lang="scss" scoped>
.main {
box-sizing: border-box;
padding: 36px;
}
</style>
...@@ -249,7 +249,10 @@ export default { ...@@ -249,7 +249,10 @@ export default {
}); });
}, },
toItemOrder(item) { toItemOrder(item) {
console.log(item); this.$router.push({
path: "/orderManagement/orderList",
query: { orderNo: item.orderNo },
});
}, },
delItemOrder(item) { delItemOrder(item) {
this.$confirm("确认删除", "提示", { this.$confirm("确认删除", "提示", {
......
...@@ -195,6 +195,7 @@ ...@@ -195,6 +195,7 @@
}; };
}, },
created() { created() {
this.listQuery.keywords = this.$route.query.orderNo;
this.getList() this.getList()
}, },
methods: { methods: {
......
...@@ -234,7 +234,9 @@ export default { ...@@ -234,7 +234,9 @@ export default {
filterParams(row) { filterParams(row) {
let a = {}; let a = {};
for (let i in this.formObject.formVal) { for (let i in this.formObject.formVal) {
a[i] = row[i] || null if (row[i] !== '') {
a[i] = row[i]
}
} }
return a return a
}, },
......
...@@ -290,7 +290,8 @@ export default { ...@@ -290,7 +290,8 @@ export default {
let data = JSON.parse(JSON.stringify(afterFormat)); let data = JSON.parse(JSON.stringify(afterFormat));
// data.paramJson = JSON.parse(data.paramJson); // data.paramJson = JSON.parse(data.paramJson);
data.imageInfoRelationList = data.imageInfoRelationList[0]; //注意:imageInfoRelationListParse为imageInfoRelationList参数的最后一项,赋值显示
data.imageInfoRelationList = data.imageInfoRelationListParse[0];
data.coverImg = data.coverImg || ''; data.coverImg = data.coverImg || '';
this.ruleForm = data; this.ruleForm = data;
this.images.selects = this.ruleForm.relatedIds.split(',')//相似图片转为数组格式 this.images.selects = this.ruleForm.relatedIds.split(',')//相似图片转为数组格式
......
...@@ -30,8 +30,8 @@ ...@@ -30,8 +30,8 @@
<el-table-column align="center" label="序号" prop="index" width="65"></el-table-column> <el-table-column align="center" label="序号" prop="index" width="65"></el-table-column>
<el-table-column align="center" label="产品名称" prop="name"></el-table-column> <el-table-column align="center" label="产品名称" prop="name"></el-table-column>
<el-table-column align="center" label="产品类型" prop="paramJson.productType"></el-table-column> <el-table-column align="center" label="产品类型" prop="paramJson.productType"></el-table-column>
<el-table-column align="center" label="尺寸" prop="imageInfoRelationList[0].fileWidth"></el-table-column> <el-table-column align="center" label="尺寸" prop="imageInfoRelationListParse[0].fileWidth"></el-table-column>
<el-table-column align="center" label="价格" prop="imageInfoRelationList[0].price"></el-table-column> <el-table-column align="center" label="价格" prop="imageInfoRelationListParse[0].price"></el-table-column>
<el-table-column align="center" label="状态"> <el-table-column align="center" label="状态">
<template slot-scope="scope"> <template slot-scope="scope">
{{ getStatus(scope.row.status) }} {{ getStatus(scope.row.status) }}
...@@ -231,6 +231,9 @@ export default { ...@@ -231,6 +231,9 @@ export default {
element.index = ((this.listQuery.page-1)*this.listQuery.limit)+(index+1) element.index = ((this.listQuery.page-1)*this.listQuery.limit)+(index+1)
}); });
this.list = this.list.map(v => { this.list = this.list.map(v => {
let len = v.imageInfoRelationList.length;
//注意:imageInfoRelationList参数后端返回的是数组,编辑后的源文件图片被放在最后一项。所以取数组的最后一项
v.imageInfoRelationListParse = len > 0 ? [v.imageInfoRelationList[v.imageInfoRelationList.length - 1]] : []
v.paramJson = JSON.parse(v.paramJson) v.paramJson = JSON.parse(v.paramJson)
return v return v
}) })
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment