Browse Source

Merge branch 'release-sy-v1.0.0' into 'dev'

fix: 联调接口

See merge request project/water/shuili-vue!14
master_tdsql
潘裕艺 1 year ago
parent
commit
d5d50fad2c
  1. 10
      src/api/dike/index.js
  2. 61
      src/views/dike/runManage/enginerring/components/Drawer.vue
  3. 4
      src/views/dike/runManage/enginerring/components/GaoDeMap.vue
  4. 53
      src/views/dike/runManage/enginerring/inspectionPlan/index.vue
  5. 4
      src/views/dike/runManage/enginerring/inspectionRecords/index.vue
  6. 3
      src/views/dike/runManage/enginerring/patrolRouteSettings/index.vue
  7. 59
      src/views/sluice/runManage/enginerring/inspectionPlan/index.vue

10
src/api/dike/index.js

@ -0,0 +1,10 @@
// 堤防相关接口
import request from '@/utils/request'
// 巡查记录-巡查记录详情
export function getDikePatrolDetails(id) {
return request({
url: `/run/df/record/${id}`,
method: 'get',
})
}

61
src/views/dike/runManage/enginerring/components/Drawer.vue

@ -1,5 +1,7 @@
<!-- 巡查记录抽屉 -->
<script>
import {getDikePatrolDetails} from '@/api/dike'
export default {
name: '',
props: {
@ -11,26 +13,26 @@ export default {
data() {
return {
tableData: [
{ content: '张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三', photos: '编辑', delete: '删除' },
{ content: '张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三张三', photos: '编辑', delete: '删除' },
{ content: '张三', photos: '编辑', delete: '删除' },
{ content: '张三', photos: '编辑', delete: '删除' },
{ content: '张三', photos: '编辑', delete: '删除' },
{ content: '张三', photos: '编辑', delete: '删除' },
{ content: '张三', photos: '编辑', delete: '删除' },
{ content: '张三', photos: '编辑', delete: '删除' },
{ content: '张三', photos: '编辑', delete: '删除' },
{ content: '张三', photos: '编辑', delete: '删除' },
{ content: '张三', photos: '编辑', delete: '删除' },
{ content: '张三', photos: '编辑', delete: '删除' },
{ content: '张三', photos: '编辑', delete: '删除' },
{ content: '张三', photos: '编辑', delete: '删除' },
{ content: '张三', photos: '编辑', delete: '删除' },
{ content: '张三', photos: '编辑', delete: '删除' },
{ content: '张三', photos: '编辑', delete: '删除' },
{ content: '张三', photos: '编辑', delete: '删除' },
{ content: '张三', photos: '编辑', delete: '删除' },
{ content: '张三', photos: '编辑', delete: '删除' },
{ content: '', photos: '', isNormal:'', problems: '' }, // 1
{ content: '', photos: '', isNormal:'', problems: '' },
{ content: '', photos: '', isNormal:'', problems: '' },
{ content: '', photos: '', isNormal:'', problems: '' },
{ content: '', photos: '', isNormal:'', problems: '' },
{ content: '', photos: '', isNormal:'', problems: '' },
{ content: '', photos: '', isNormal:'', problems: '' },
{ content: '', photos: '', isNormal:'', problems: '' },
{ content: '', photos: '', isNormal:'', problems: '' },
{ content: '', photos: '', isNormal:'', problems: '' },
{ content: '', photos: '', isNormal:'', problems: '' },
{ content: '', photos: '', isNormal:'', problems: '' },
{ content: '', photos: '', isNormal:'', problems: '' },
{ content: '', photos: '', isNormal:'', problems: '' },
{ content: '', photos: '', isNormal:'', problems: '' },
{ content: '', photos: '', isNormal:'', problems: '' },
{ content: '', photos: '', isNormal:'', problems: '' },
{ content: '', photos: '', isNormal:'', problems: '' },
{ content: '', photos: '', isNormal:'', problems: '' },
{ content: '', photos: '', isNormal:'', problems: '' },
]
}
},
@ -52,6 +54,21 @@ export default {
}
}
},
getDetailsData(){
getDikePatrolDetails(this.$route.query.id).then(res=>{
console.log('getDikePatrolDetails >>>>> ', res)
if(res.data?.items){
this.tableData[0].photos = res.data.items[0]?.imgs || '无'
this.tableData[0].content = res.data.items[0]?.content || ''
this.tableData[0].problems = res.data.items[0]?.problem || '无'
this.tableData[0].isNormal = res.data.items[0]?.status?'是':'否'
}
})
}
},
created(){
this.getDetailsData()
}
}
</script>
@ -121,9 +138,9 @@ export default {
</template>
</el-table-column>
<el-table-column prop="content" align="center" class-name="column-item" label="检查内容" min-width="200" />
<el-table-column v-if="!this.$route.query.editor" prop="photos" align="center" class-name="column-item"
<el-table-column prop="photos" align="center" class-name="column-item"
label="打卡图片" width="150" />
<el-table-column v-if="!this.$route.query.editor" align="center" class-name="column-item" label="检查记录">
<el-table-column align="center" class-name="column-item" label="检查记录">
<el-table-column prop="isNormal" align="center" class-name="column-item" label="是否正常" width="150" />
<el-table-column prop="problems" align="center" class-name="column-item" label="存在问题" width="150" />
</el-table-column>

4
src/views/dike/runManage/enginerring/components/GaoDeMap.vue

@ -193,12 +193,12 @@ export default {
this.map = new AMap.Map("container", {
// id
viewMode: "3D", // 3D
zoom: 18, //
zoom: 15, //
doubleClickZoom: false, //
layers: [
satellite,
],
center: [113.43094, 23.10346], //
center: [112.90,23.36], //
});
//

53
src/views/dike/runManage/enginerring/inspectionPlan/index.vue

@ -6,6 +6,7 @@ import { postDFInspectionPlanlist,
deleteDFInspectionPlan, listUser } from '@/api/management'
import { uploadFileData } from '@/api/system/upload'
export default {
name: 'InspectionItems',
data() {
@ -32,6 +33,7 @@ export default {
isReminder: false,
reminderTime: '',
operators: [],
files: [],//
otherConfig: {
week: '',
time: '',
@ -55,6 +57,9 @@ export default {
isReminder: [
{ required: true, message: '请选择消息提醒', trigger: 'change' }
],
'otherConfig.time': [
{ required: true, message: '请选择检查时间', trigger: 'change' }
],
reminderTime: [
{ required: true, message: '请选择提醒时间', trigger: 'change' }
],
@ -64,6 +69,11 @@ export default {
}
}
},
computed: {
disabledUpload(){
return this.ruleForm?.files?.length >= 9
}
},
methods: {
//
editTableItem(row) {
@ -115,6 +125,7 @@ export default {
},
//
submitForm(formName) {
console.log('保存 >>> ', this.ruleForm)
this.$refs[formName].validate((valid) => {
if (valid) {
let user = []
@ -233,24 +244,24 @@ export default {
//
beforeUpload(e){
console.log('beforeUpload >>>>> ', e)
if(this.ruleForm.files?.length>=9){
return false
}
return true
},
handleUpload(e){
console.log('e >>>>> ', e)
const {file} = e
let formData = new FormData()
formData.append('file',file)
uploadFileData(formData).then(res=>{
console.log('res >>>>> ', res)
console.log('上传结果 >>>>> ', res)
this.ruleForm.files.push(res.url)
}).catch(err=>{
console.log('err >>>>> ', err)
})
},
//
handleChange(e){
console.log('handleChange >>>>> ', e)
handleDelFile(_url,index){
this.ruleForm.files.splice(index,1)
},
//
resetSearch() {
@ -350,7 +361,7 @@ export default {
:key="item.id"></el-option>
</el-select> /
</el-form-item>
<el-form-item v-else label-width="120px" label="检查日期" prop="reminderTime">
<el-form-item v-else label-width="120px" label="检查日期" prop="otherConfig.time">
<el-date-picker v-model="ruleForm.otherConfig.time" type="date" value-format="yyyy-MM-dd" placeholder="选择日期">
</el-date-picker>
</el-form-item>
@ -380,24 +391,28 @@ export default {
</el-option>
</el-select>
</el-form-item>
<el-form-item v-if="ruleForm.type == 2" label-width="120px" label="检查依据" prop="checkList">
<el-form-item v-if="ruleForm.type == 2" label-width="120px" label="检查依据" prop="files">
<div >
<div class="myflex" v-for="(item,index) in ruleForm.files" :key="item">
<div>{{ item && item.split('/').slice(-1)[0] || ''}}</div>
<img src="../../../../../assets/common/icon-delete.png"
style="width: 14px; flex-shrink: 0; margin-left: 4px; margin-right: 18px; cursor: pointer;"
@click="handleDelFile(item,index)" alt="">
</div>
</div>
<el-upload
v-if="!disabledUpload"
action="#"
class="avatar-uploader"
:http-request="handleUpload"
:auto-upload="true"
:before-upload="beforeUpload"
v-model:file-list="ruleForm.checkList"
v-model:file-list="ruleForm.files"
:showFileList="false"
accept=".PDF,.docx,.doc,.excel,.ppt,.jpg,.png,.txt"
:on-change="handleChange"
:maxLength="9"
>
<el-button type="primary">上传</el-button>
<template #tip>
<div class="el-upload__tip">
支持pdf,doc,docx,excel,ppt,jpg,png,txt等,500M以内
</div>
</template>
</el-upload>
</el-form-item>
</el-form>
@ -452,4 +467,10 @@ export default {
}
}
.myflex{
display: flex;
align-items: center;
justify-content: space-between;
}
</style>

4
src/views/dike/runManage/enginerring/inspectionRecords/index.vue

@ -30,6 +30,10 @@ export default {
timeField: "create_time"
}
},
params: {
sort:'desc',
orderBy: 'create_time'
},
cv: {
name: "name",
type: "like",

3
src/views/dike/runManage/enginerring/patrolRouteSettings/index.vue

@ -13,6 +13,9 @@ export default {
},
methods: {
},
created(){
}
}
</script>

59
src/views/sluice/runManage/enginerring/inspectionPlan/index.vue

@ -29,6 +29,7 @@ export default {
isReminder: false,
reminderTime: '',
operators: [],
files: [],//
otherConfig: {
week: '',
time: '',
@ -52,6 +53,9 @@ export default {
isReminder: [
{ required: true, message: '请选择消息提醒', trigger: 'change' }
],
'otherConfig.time': [
{ required: true, message: '请选择检查时间', trigger: 'change' }
],
reminderTime: [
{ required: true, message: '请选择提醒时间', trigger: 'change' }
],
@ -61,6 +65,11 @@ export default {
}
}
},
computed: {
disabledUpload(){
return this.ruleForm?.files?.length >= 9
}
},
methods: {
//
editTableItem(row) {
@ -229,6 +238,28 @@ export default {
}
})
},
//
beforeUpload(e){
console.log('beforeUpload >>>>> ', e)
if(this.ruleForm.files?.length>=9){
return false
}
return true
},
handleUpload(e){
const {file} = e
let formData = new FormData()
formData.append('file',file)
uploadFileData(formData).then(res=>{
console.log('上传结果 >>>>> ', res)
this.ruleForm.files.push(res.url)
}).catch(err=>{
console.log('err >>>>> ', err)
})
},
handleDelFile(_url,index){
this.ruleForm.files.splice(index,1)
},
//
resetSearch() {
this.searchInput = ''
@ -371,22 +402,28 @@ export default {
</el-option>
</el-select>
</el-form-item>
<el-form-item v-if="ruleForm.type == 2" label-width="120px" label="检查依据" prop="checkList">
<el-form-item v-if="ruleForm.type == 2" label-width="120px" label="检查依据" prop="files">
<div >
<div class="myflex" v-for="(item,index) in ruleForm.files" :key="item">
<div>{{ item && item.split('/').slice(-1)[0] || ''}}</div>
<img src="../../../../../assets/common/icon-delete.png"
style="width: 14px; flex-shrink: 0; margin-left: 4px; margin-right: 18px; cursor: pointer;"
@click="handleDelFile(item,index)" alt="">
</div>
</div>
<el-upload
class="avatar-uploader"
v-if="!disabledUpload"
action="#"
:auto-upload="false"
:before-upload="beforeAvatarUpload"
v-model:file-list="ruleForm.checkList"
class="avatar-uploader"
:http-request="handleUpload"
:auto-upload="true"
:before-upload="beforeUpload"
v-model:file-list="ruleForm.files"
:showFileList="false"
accept=".PDF,.docx,.doc,.excel,.ppt,.jpg,.png,.txt"
:on-change="handleChange"
:maxLength="9"
>
<el-button type="primary">上传</el-button>
<template #tip>
<div class="el-upload__tip">
支持pdf,doc,docx,excel,ppt,jpg,png,txt等,500M以内
</div>
</template>
</el-upload>
</el-form-item>
</el-form>

Loading…
Cancel
Save