Browse Source

feat: 修复第二轮bug,计划添加搜索条件

sy-water-data-board-ui
hejunjie 9 months ago
parent
commit
400c116e00
  1. 2
      src/api/dike/index.js
  2. 4
      src/views/dike/runManage/maintenance/maintenancePlan/components/PlanDetail.vue
  3. 67
      src/views/dike/runManage/maintenance/maintenancePlan/index.vue
  4. 15
      src/views/dike/runManage/maintenance/maintenancePlanAccept/index.vue
  5. 15
      src/views/dike/runManage/maintenance/maintenancePlanAudit/index.vue
  6. 51
      src/views/dike/runManage/maintenance/maintenanceRecords/CreateMaintenanceRecord.vue
  7. 21
      src/views/dike/runManage/maintenance/maintenanceRecords/components/RecordDetail.vue
  8. 15
      src/views/dike/runManage/maintenance/maintenanceRecords/index.vue
  9. 29
      src/views/mobilePage/index.vue
  10. 7
      src/views/sluice/runManage/maintenance/maintenancePlan/components/PlanDetail.vue
  11. 64
      src/views/sluice/runManage/maintenance/maintenancePlan/index.vue
  12. 15
      src/views/sluice/runManage/maintenance/maintenancePlanAccept/index.vue
  13. 16
      src/views/sluice/runManage/maintenance/maintenancePlanAudit/index.vue
  14. 50
      src/views/sluice/runManage/maintenance/maintenanceRecords/CreateMaintenanceRecord.vue
  15. 22
      src/views/sluice/runManage/maintenance/maintenanceRecords/components/RecordDetail.vue
  16. 15
      src/views/sluice/runManage/maintenance/maintenanceRecords/index.vue

2
src/api/dike/index.js

@ -290,7 +290,7 @@ export function postYhRecordaApproval(data) {
export function delRunDzYhPlan(data) { export function delRunDzYhPlan(data) {
return request({ return request({
url: `/run/df/yh/plan/${data.id}`, url: `/run/df/yh/plan/${data.id}`,
method: 'del' method: 'delete'
}) })
} }

4
src/views/dike/runManage/maintenance/maintenancePlan/components/PlanDetail.vue

@ -257,6 +257,10 @@
v-for="(activity, index) in activities" v-for="(activity, index) in activities"
:key="index" :key="index"
:timestamp="activity.approvalTime"> :timestamp="activity.approvalTime">
<el-tag v-if="activity.status == 0" style="position: absolute; left: 200px;top: -5px;" size="small" type="danger">待提交</el-tag>
<el-tag v-if="activity.status == 1" style="position: absolute; left: 200px;top: -5px;" size="small" type="success">审批中</el-tag>
<el-tag v-if="activity.status == 2" style="position: absolute; left: 200px;top: -5px;" size="small" type="success">已通过</el-tag>
<el-tag v-if="activity.status == 3" style="position: absolute; left: 200px;top: -5px;" size="small" type="danger">已驳回</el-tag>
<div>审批意见: {{activity.comment}}</div> <div>审批意见: {{activity.comment}}</div>
<div>审批附件: {{ <div>审批附件: {{
activity.docs && activity.docs &&

67
src/views/dike/runManage/maintenance/maintenancePlan/index.vue

@ -25,7 +25,9 @@ export default {
adcd: "", adcd: "",
dikeName: "", dikeName: "",
dikeType: "", dikeType: "",
engScal: "",
name: "", name: "",
status: "",
planDateArr: [], planDateArr: [],
}, },
choiceDate: '', choiceDate: '',
@ -37,11 +39,10 @@ export default {
} }
}, },
disabledDate: (time) => {//5 disabledDate: (time) => {//5
let curDate = (new Date()).getTime();
let three = 5 * 12 * 30 * 24 * 3600 * 1000;
let min = curDate + three;
let max = curDate - three;
if (this.choiceDate) { if (this.choiceDate) {
let three = 5 * 12 * 30 * 24 * 3600 * 1000;
let min = this.choiceDate + three;
let max = this.choiceDate - three;
return time.getTime() < max || time.getTime() > min; return time.getTime() < max || time.getTime() > min;
} else { } else {
return false; return false;
@ -52,6 +53,7 @@ export default {
dialogVisible: false, dialogVisible: false,
areasOptions: [], // areasOptions: [], //
embankmentTypeOptions: [], // embankmentTypeOptions: [], //
scaleOptions: [], //
supplementOptions: [], // supplementOptions: [], //
tableData: [], // tableData: [], //
tableCheckData: [], // tableCheckData: [], //
@ -148,6 +150,8 @@ export default {
: null, : null,
dikeName: this.paramsData.dikeName, dikeName: this.paramsData.dikeName,
dikeType: this.paramsData.dikeType, dikeType: this.paramsData.dikeType,
engScal: this.paramsData.engScal,
status: this.paramsData.status,
}, },
pageSize: this.pageData.pageSize, pageSize: this.pageData.pageSize,
pageNum: this.pageData.pageNum, pageNum: this.pageData.pageNum,
@ -208,6 +212,8 @@ export default {
this.paramsData.planDateArr = []; this.paramsData.planDateArr = [];
this.paramsData.dikeName = ""; this.paramsData.dikeName = "";
this.paramsData.dikeType = ""; this.paramsData.dikeType = "";
this.paramsData.engScal = "";
this.paramsData.status = "";
this.reqCountCalc(); this.reqCountCalc();
this.pageData.pageNum = 1; this.pageData.pageNum = 1;
@ -235,12 +241,21 @@ export default {
}) })
return name; return name;
}, },
//
formatDate(dateStr) {
const date = new Date(dateStr);
console.log(date)
return date.toISOString().split('T')[0];
}
}, },
created() { created() {
this.getTreeData(); this.getTreeData();
this.getDicts("embankment_type").then((response) => { this.getDicts("embankment_type").then((response) => {
this.embankmentTypeOptions = response.data; this.embankmentTypeOptions = response.data;
}); });
this.getDicts("df-scale").then((response) => {
this.scaleOptions = response.data;
});
this.getDicts("xs_yh_supplement").then((response) => { this.getDicts("xs_yh_supplement").then((response) => {
this.supplementOptions = response.data; this.supplementOptions = response.data;
@ -317,6 +332,26 @@ export default {
placeholder="请输入名称" placeholder="请输入名称"
/> />
</div> </div>
<div class="search-item flex items-center">
<span class="search-label">工程规模</span>
<el-select
clearable
size="small"
class="w-202 ml-10"
v-model="paramsData.engScal"
:popper-append-to-body="false"
filterable
placeholder="请选择"
>
<el-option label="全部" value=""> </el-option>
<el-option
:label="item.dictLabel"
:value="item.dictValue"
v-for="(item, index) in scaleOptions"
:key="index"
></el-option>
</el-select>
</div>
<div class="search-item flex items-center"> <div class="search-item flex items-center">
<span class="search-label">维养计划日期</span> <span class="search-label">维养计划日期</span>
<el-date-picker <el-date-picker
@ -330,6 +365,24 @@ export default {
value-format="yyyy-MM-dd" value-format="yyyy-MM-dd"
></el-date-picker> ></el-date-picker>
</div> </div>
<div class="search-item flex items-center">
<span class="search-label">计划状态</span>
<el-select
clearable
size="small"
class="w-202 ml-10"
v-model="paramsData.status"
:popper-append-to-body="false"
filterable
placeholder="请选择"
>
<el-option label="全部" value=""> </el-option>
<el-option label="待提交" value="0"> </el-option>
<el-option label="审批中" value="1"> </el-option>
<el-option label="已通过" value="2"> </el-option>
<el-option label="已驳回" value="3"> </el-option>
</el-select>
</div>
<div class="flex-1 flex justify-end search-item"> <div class="flex-1 flex justify-end search-item">
<el-button <el-button
size="small" size="small"
@ -381,8 +434,14 @@ export default {
</el-table-column> </el-table-column>
<el-table-column prop="name" align="center" label="维养计划名称" /> <el-table-column prop="name" align="center" label="维养计划名称" />
<el-table-column prop="startDate" align="center" label="计划开始时间"> <el-table-column prop="startDate" align="center" label="计划开始时间">
<template slot-scope="scope">
<span>{{ formatDate(scope.row.startDate) }}</span>
</template>
</el-table-column> </el-table-column>
<el-table-column prop="endDate" align="center" label="计划结束时间"> <el-table-column prop="endDate" align="center" label="计划结束时间">
<template slot-scope="scope">
<span>{{ formatDate(scope.row.endDate) }}</span>
</template>
</el-table-column> </el-table-column>
<el-table-column prop="supplements" align="center" label="资金来源/万元" > <el-table-column prop="supplements" align="center" label="资金来源/万元" >
<template slot-scope="scope"> <template slot-scope="scope">

15
src/views/dike/runManage/maintenance/maintenancePlanAccept/index.vue

@ -43,11 +43,10 @@ export default {
} }
}, },
disabledDate: (time) => {//5 disabledDate: (time) => {//5
let curDate = (new Date()).getTime();
let three = 5 * 12 * 30 * 24 * 3600 * 1000;
let min = curDate + three;
let max = curDate - three;
if (this.choiceDate) { if (this.choiceDate) {
let three = 5 * 12 * 30 * 24 * 3600 * 1000;
let min = this.choiceDate + three;
let max = this.choiceDate - three;
return time.getTime() < max || time.getTime() > min; return time.getTime() < max || time.getTime() > min;
} else { } else {
return false; return false;
@ -253,6 +252,12 @@ export default {
this.dialog.visible = true this.dialog.visible = true
this.preViewFile = file this.preViewFile = file
}, },
//
formatDate(dateStr) {
const date = new Date(dateStr);
console.log(date)
return date.toISOString().split('T')[0];
}
}, },
created() { created() {
this.getTreeData(); this.getTreeData();
@ -416,7 +421,7 @@ export default {
</el-table-column> </el-table-column>
<el-table-column prop="name" align="center" label="完成维养时间" > <el-table-column prop="name" align="center" label="完成维养时间" >
<template slot-scope="scope"> <template slot-scope="scope">
<span>{{ scope.row.detail.finishedTime }}</span> <span>{{ formatDate(scope.row.detail.finishedTime) }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="unit" align="center" label="维养单位"> <el-table-column prop="unit" align="center" label="维养单位">

15
src/views/dike/runManage/maintenance/maintenancePlanAudit/index.vue

@ -47,11 +47,10 @@ export default {
} }
}, },
disabledDate: (time) => {//5 disabledDate: (time) => {//5
let curDate = (new Date()).getTime();
let three = 5 * 12 * 30 * 24 * 3600 * 1000;
let min = curDate + three;
let max = curDate - three;
if (this.choiceDate) { if (this.choiceDate) {
let three = 5 * 12 * 30 * 24 * 3600 * 1000;
let min = this.choiceDate + three;
let max = this.choiceDate - three;
return time.getTime() < max || time.getTime() > min; return time.getTime() < max || time.getTime() > min;
} else { } else {
return false; return false;
@ -247,6 +246,12 @@ export default {
this.dialog.visible = true this.dialog.visible = true
this.preViewFile = file this.preViewFile = file
}, },
//
formatDate(dateStr) {
const date = new Date(dateStr);
console.log(date)
return date.toISOString().split('T')[0];
}
}, },
created() { created() {
this.getTreeData(); this.getTreeData();
@ -400,7 +405,7 @@ export default {
label="计划开始/结束时间" label="计划开始/结束时间"
> >
<template slot-scope="scope"> <template slot-scope="scope">
<span>{{ scope.row.detail.startDate }}/{{scope.row.detail.endDate}}</span> <span>{{ formatDate(scope.row.detail.startDate) }}/{{formatDate(scope.row.detail.endDate)}}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="unit" align="center" label="维养单位"> <el-table-column prop="unit" align="center" label="维养单位">

51
src/views/dike/runManage/maintenance/maintenanceRecords/CreateMaintenanceRecord.vue

@ -52,29 +52,34 @@ export default {
handleSave(reset) { handleSave(reset) {
const formRef = this.$refs.formRef const formRef = this.$refs.formRef
formRef.submit(async (res) => { formRef.submit(async (res) => {
console.log(res) this.$confirm("确认提交吗?", "提示", {
const data = {...res} confirmButtonText: "确定",
data.plan = undefined cancelButtonText: "取消",
data.doc = {} type: "warning",
data.ledgerDoc = {} }).then(async () => {
data.doc.docs = formRef.filesList.map((v) => v.url) || []; const data = {...res}
data.ledgerDoc.images = formRef.ledgerList.map((v) => v.url) || []; data.plan = undefined
console.log(data); data.doc = {}
try { data.ledgerDoc = {}
if (this.id) { data.doc.docs = formRef.filesList.map((v) => v.url) || [];
await putYhRecord({id: this.id, ...data}); data.ledgerDoc.images = formRef.ledgerList.map((v) => v.url) || [];
} else { console.log(data);
await postYhRecord(data) try {
} if (this.id) {
this.$message.success("提交成功"); await putYhRecord({id: this.id, ...data});
if (!reset) { } else {
this.$router.go(-1) await postYhRecord(data)
} else { }
formRef.reset() this.$message.success("提交成功");
} if (!reset) {
} catch (error) { this.$router.go(-1)
console.log(error) } else {
} formRef.reset()
}
} catch (error) {
console.log(error)
}
});
}) })
}, },
handlePassed() { handlePassed() {

21
src/views/dike/runManage/maintenance/maintenanceRecords/components/RecordDetail.vue

@ -263,6 +263,10 @@
v-for="(activity, index) in activities" v-for="(activity, index) in activities"
:key="index" :key="index"
:timestamp="activity.approvalTime"> :timestamp="activity.approvalTime">
<el-tag v-if="activity.status == 0" style="position: absolute; left: 200px;top: -5px;" size="small" type="danger">待提交</el-tag>
<el-tag v-if="activity.status == 1" style="position: absolute; left: 200px;top: -5px;" size="small" type="success">审批中</el-tag>
<el-tag v-if="activity.status == 2" style="position: absolute; left: 200px;top: -5px;" size="small" type="success">已通过</el-tag>
<el-tag v-if="activity.status == 3" style="position: absolute; left: 200px;top: -5px;" size="small" type="danger">已驳回</el-tag>
<div>审批意见: {{activity.comment}}</div> <div>审批意见: {{activity.comment}}</div>
<div>审批附件: {{ <div>审批附件: {{
activity.docs && activity.docs &&
@ -587,15 +591,7 @@ export default {
searchPlan(value) { searchPlan(value) {
postDFMaintenancePlanList({ postDFMaintenancePlanList({
data: { data: {
timeView: { dikeName: value,
timeField: "create_time",
},
dikeCode: this.$route.query.dikeCode,
},
cv: {
name: "name",
type: "like",
value,
}, },
pageSize: 100, pageSize: 100,
pageNum: 1, pageNum: 1,
@ -709,5 +705,12 @@ export default {
</script> </script>
<style scoped lang="scss"> <style scoped lang="scss">
.record-detail { .record-detail {
.form-row-title {
font-size: 16px;
font-weight: bold;
margin-bottom: 10px;
border-left: 4px solid #36b29e;
padding-left: 8px;
}
} }
</style> </style>

15
src/views/dike/runManage/maintenance/maintenanceRecords/index.vue

@ -41,11 +41,10 @@ export default {
} }
}, },
disabledDate: (time) => {//5 disabledDate: (time) => {//5
let curDate = (new Date()).getTime();
let three = 5 * 12 * 30 * 24 * 3600 * 1000;
let min = curDate + three;
let max = curDate - three;
if (this.choiceDate) { if (this.choiceDate) {
let three = 5 * 12 * 30 * 24 * 3600 * 1000;
let min = this.choiceDate + three;
let max = this.choiceDate - three;
return time.getTime() < max || time.getTime() > min; return time.getTime() < max || time.getTime() > min;
} else { } else {
return false; return false;
@ -262,6 +261,12 @@ export default {
}); });
return name || type; return name || type;
}, },
//
formatDate(dateStr) {
const date = new Date(dateStr);
console.log(date)
return date.toISOString().split('T')[0];
}
}, },
created() { created() {
this.getTreeData() this.getTreeData()
@ -426,7 +431,7 @@ export default {
</el-table-column> </el-table-column>
<el-table-column align="center" label="完成维养时间"> <el-table-column align="center" label="完成维养时间">
<template slot-scope="scope"> <template slot-scope="scope">
<span>{{ scope.row.plan ? scope.row.plan.endDate : '' }}</span> <span>{{ scope.row.plan ? formatDate(scope.row.plan.endDate) : '' }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column align="center" label="维养单位"> <el-table-column align="center" label="维养单位">

29
src/views/mobilePage/index.vue

@ -5,21 +5,30 @@
</template> </template>
<script> <script>
import { getToken } from "@/utils/auth"; import { getToken } from "@/utils/auth";
const isProDuction = process.env.NODE_ENV === "production";
// h5
const devSrc = "http://172.16.34.83:8002/";
// prod
// const proSrc = 'http://shuili-h5.product.dev.com:30115/'
//
const currentUrl = window.location.origin + '/mobileH5';
console.log("currentUrl:", currentUrl);
const h5Src = `${isProDuction ? currentUrl : devSrc}?t=${getToken()}`;
export default { export default {
data() { data() {
return { return {
h5Src, h5Src: '',
}; };
}, },
created() {
const isProDuction = process.env.NODE_ENV === "production";
const topTab = sessionStorage.getItem("topTab");
console.log(topTab)
// h5
const devSrc = topTab === 'sluice'
? "http://172.16.35.166:8002/mobileH5/SZengineeringInspectionList"
: 'http://172.16.35.166:8002/mobileH5/engineeringInspectionList';
// prod
// const proSrc = 'http://shuili-h5.product.dev.com:30115/'
//
const currentUrl = topTab === 'sluice'
? window.location.origin + "/mobileH5/SZengineeringInspectionList"
: window.location.origin + '/mobileH5/engineeringInspectionList';
console.log("currentUrl:", currentUrl);
this.h5Src = `${isProDuction ? currentUrl : devSrc}?t=${getToken()}`;
console.log(123123)
},
}; };
</script> </script>
<style lang="scss"> <style lang="scss">

7
src/views/sluice/runManage/maintenance/maintenancePlan/components/PlanDetail.vue

@ -257,6 +257,10 @@
v-for="(activity, index) in activities" v-for="(activity, index) in activities"
:key="index" :key="index"
:timestamp="activity.approvalTime"> :timestamp="activity.approvalTime">
<el-tag v-if="activity.status == 0" style="position: absolute; left: 200px;top: -5px;" size="small" type="danger">待提交</el-tag>
<el-tag v-if="activity.status == 1" style="position: absolute; left: 200px;top: -5px;" size="small" type="success">审批中</el-tag>
<el-tag v-if="activity.status == 2" style="position: absolute; left: 200px;top: -5px;" size="small" type="success">已通过</el-tag>
<el-tag v-if="activity.status == 3" style="position: absolute; left: 200px;top: -5px;" size="small" type="danger">已驳回</el-tag>
<div>审批意见: {{activity.comment}}</div> <div>审批意见: {{activity.comment}}</div>
<div>审批附件: {{ <div>审批附件: {{
activity.docs && activity.docs &&
@ -663,9 +667,6 @@ export default {
} else { } else {
this.$message.success("驳回成功"); this.$message.success("驳回成功");
} }
if (reset) {
this.reset();
}
r(); r();
}) })
.catch(() => { .catch(() => {

64
src/views/sluice/runManage/maintenance/maintenancePlan/index.vue

@ -29,6 +29,7 @@ export default {
wagaName: "", wagaName: "",
wagaType: "", wagaType: "",
name: "", name: "",
status: "",
planDateArr: [], planDateArr: [],
}, },
choiceDate: '', choiceDate: '',
@ -40,11 +41,10 @@ export default {
} }
}, },
disabledDate: (time) => {//5 disabledDate: (time) => {//5
let curDate = (new Date()).getTime();
let three = 5 * 12 * 30 * 24 * 3600 * 1000;
let min = curDate + three;
let max = curDate - three;
if (this.choiceDate) { if (this.choiceDate) {
let three = 5 * 12 * 30 * 24 * 3600 * 1000;
let min = this.choiceDate + three;
let max = this.choiceDate - three;
return time.getTime() < max || time.getTime() > min; return time.getTime() < max || time.getTime() > min;
} else { } else {
return false; return false;
@ -55,6 +55,7 @@ export default {
dialogVisible: false, dialogVisible: false,
areasOptions: [], // areasOptions: [], //
embankmentTypeOptions: [], // embankmentTypeOptions: [], //
scaleOptions: [], //
supplementOptions: [], // supplementOptions: [], //
tableData: [], // tableData: [], //
tableCheckData: [], // tableCheckData: [], //
@ -151,6 +152,7 @@ export default {
: null, : null,
wagaName: this.paramsData.wagaName, wagaName: this.paramsData.wagaName,
wagaType: this.paramsData.wagaType, wagaType: this.paramsData.wagaType,
status: this.paramsData.status,
}, },
pageSize: this.pageData.pageSize, pageSize: this.pageData.pageSize,
pageNum: this.pageData.pageNum, pageNum: this.pageData.pageNum,
@ -212,6 +214,7 @@ export default {
this.paramsData.planDateArr = []; this.paramsData.planDateArr = [];
this.paramsData.wagaName = ""; this.paramsData.wagaName = "";
this.paramsData.wagaType = ""; this.paramsData.wagaType = "";
this.paramsData.status = "";
this.reqCountCalc(); this.reqCountCalc();
this.pageData.pageNum = 1; this.pageData.pageNum = 1;
@ -239,6 +242,12 @@ export default {
}) })
return name; return name;
}, },
//
formatDate(dateStr) {
const date = new Date(dateStr);
console.log(date)
return date.toISOString().split('T')[0];
}
}, },
created() { created() {
this.getTreeData(); this.getTreeData();
@ -246,6 +255,9 @@ export default {
this.embankmentTypeOptions = response.data; this.embankmentTypeOptions = response.data;
}); });
this.getDicts("sz-scale").then((response) => {
this.scaleOptions = response.data;
});
this.getDicts("xs_yh_supplement").then((response) => { this.getDicts("xs_yh_supplement").then((response) => {
this.supplementOptions = response.data; this.supplementOptions = response.data;
}); });
@ -320,6 +332,26 @@ export default {
placeholder="请输入名称" placeholder="请输入名称"
/> />
</div> </div>
<div class="search-item flex items-center">
<span class="search-label">工程规模</span>
<el-select
clearable
size="small"
class="w-202 ml-10"
v-model="paramsData.engScal"
:popper-append-to-body="false"
filterable
placeholder="请选择"
>
<el-option label="全部" value=""> </el-option>
<el-option
:label="item.dictLabel"
:value="item.dictValue"
v-for="(item, index) in scaleOptions"
:key="index"
></el-option>
</el-select>
</div>
<div class="search-item flex items-center"> <div class="search-item flex items-center">
<span class="search-label">维养计划日期</span> <span class="search-label">维养计划日期</span>
<el-date-picker <el-date-picker
@ -333,6 +365,24 @@ export default {
value-format="yyyy-MM-dd" value-format="yyyy-MM-dd"
></el-date-picker> ></el-date-picker>
</div> </div>
<div class="search-item flex items-center">
<span class="search-label">计划状态</span>
<el-select
clearable
size="small"
class="w-202 ml-10"
v-model="paramsData.status"
:popper-append-to-body="false"
filterable
placeholder="请选择"
>
<el-option label="全部" value=""> </el-option>
<el-option label="待提交" value="0"> </el-option>
<el-option label="审批中" value="1"> </el-option>
<el-option label="已通过" value="2"> </el-option>
<el-option label="已驳回" value="3"> </el-option>
</el-select>
</div>
<div class="flex-1 flex justify-end search-item"> <div class="flex-1 flex justify-end search-item">
<el-button <el-button
size="small" size="small"
@ -381,8 +431,14 @@ export default {
</el-table-column> </el-table-column>
<el-table-column prop="name" align="center" label="维养计划名称" /> <el-table-column prop="name" align="center" label="维养计划名称" />
<el-table-column prop="startDate" align="center" label="计划开始时间"> <el-table-column prop="startDate" align="center" label="计划开始时间">
<template slot-scope="scope">
<span>{{ formatDate(scope.row.startDate) }}</span>
</template>
</el-table-column> </el-table-column>
<el-table-column prop="endDate" align="center" label="计划结束时间"> <el-table-column prop="endDate" align="center" label="计划结束时间">
<template slot-scope="scope">
<span>{{ formatDate(scope.row.endDate) }}</span>
</template>
</el-table-column> </el-table-column>
<el-table-column prop="supplements" align="center" label="资金来源/万元" > <el-table-column prop="supplements" align="center" label="资金来源/万元" >
<template slot-scope="scope"> <template slot-scope="scope">

15
src/views/sluice/runManage/maintenance/maintenancePlanAccept/index.vue

@ -41,11 +41,10 @@ export default {
} }
}, },
disabledDate: (time) => {//5 disabledDate: (time) => {//5
let curDate = (new Date()).getTime();
let three = 5 * 12 * 30 * 24 * 3600 * 1000;
let min = curDate + three;
let max = curDate - three;
if (this.choiceDate) { if (this.choiceDate) {
let three = 5 * 12 * 30 * 24 * 3600 * 1000;
let min = this.choiceDate + three;
let max = this.choiceDate - three;
return time.getTime() < max || time.getTime() > min; return time.getTime() < max || time.getTime() > min;
} else { } else {
return false; return false;
@ -249,6 +248,12 @@ export default {
this.dialog.visible = true this.dialog.visible = true
this.preViewFile = file this.preViewFile = file
}, },
//
formatDate(dateStr) {
const date = new Date(dateStr);
console.log(date)
return date.toISOString().split('T')[0];
}
}, },
created() { created() {
this.getTreeData(); this.getTreeData();
@ -409,7 +414,7 @@ export default {
</el-table-column> </el-table-column>
<el-table-column prop="name" align="center" label="完成维养时间" > <el-table-column prop="name" align="center" label="完成维养时间" >
<template slot-scope="scope"> <template slot-scope="scope">
<span>{{ scope.row.detail.finishedTime }}</span> <span>{{ formatDate(scope.row.detail.finishedTime) }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="unit" align="center" label="维养单位"> <el-table-column prop="unit" align="center" label="维养单位">

16
src/views/sluice/runManage/maintenance/maintenancePlanAudit/index.vue

@ -38,11 +38,10 @@ export default {
} }
}, },
disabledDate: (time) => {//5 disabledDate: (time) => {//5
let curDate = (new Date()).getTime();
let three = 5 * 12 * 30 * 24 * 3600 * 1000;
let min = curDate + three;
let max = curDate - three;
if (this.choiceDate) { if (this.choiceDate) {
let three = 5 * 12 * 30 * 24 * 3600 * 1000;
let min = this.choiceDate + three;
let max = this.choiceDate - three;
return time.getTime() < max || time.getTime() > min; return time.getTime() < max || time.getTime() > min;
} else { } else {
return false; return false;
@ -238,6 +237,12 @@ export default {
this.dialog.visible = true this.dialog.visible = true
this.preViewFile = file this.preViewFile = file
}, },
//
formatDate(dateStr) {
const date = new Date(dateStr);
console.log(date)
return date.toISOString().split('T')[0];
}
}, },
created() { created() {
this.getTreeData(); this.getTreeData();
@ -391,7 +396,8 @@ export default {
label="计划开始/结束时间" label="计划开始/结束时间"
> >
<template slot-scope="scope"> <template slot-scope="scope">
<span>{{ scope.row.detail.startDate }}/{{scope.row.detail.endDate}}</span> <span>{{ formatDate(scope.row.detail.startDate) }}
/{{formatDate(scope.row.detail.endDate)}}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="unit" align="center" label="维养单位"> <el-table-column prop="unit" align="center" label="维养单位">

50
src/views/sluice/runManage/maintenance/maintenanceRecords/CreateMaintenanceRecord.vue

@ -51,30 +51,36 @@ export default {
methods: { methods: {
handleSave(reset) { handleSave(reset) {
const formRef = this.$refs.formRef const formRef = this.$refs.formRef
formRef.submit(async (res) => { formRef.submit((res) => {
console.log(res) console.log(res)
const data = {...res} this.$confirm("确认提交吗?", "提示", {
data.plan = undefined confirmButtonText: "确定",
data.doc = {} cancelButtonText: "取消",
data.ledgerDoc = {} type: "warning",
data.doc.docs = formRef.filesList.map((v) => v.url) || []; }).then(async () => {
data.ledgerDoc.images = formRef.ledgerList.map((v) => v.url) || []; const data = {...res}
console.log(data); data.plan = undefined
try { data.doc = {}
if (this.id) { data.ledgerDoc = {}
await putRunSzYhRecord({id: this.id, ...data}); data.doc.docs = formRef.filesList.map((v) => v.url) || [];
} else { data.ledgerDoc.images = formRef.ledgerList.map((v) => v.url) || [];
await postRunSzYhRecord(data) console.log(data);
try {
if (this.id) {
await putRunSzYhRecord({id: this.id, ...data});
} else {
await postRunSzYhRecord(data)
}
this.$message.success("提交成功");
if (!reset) {
this.$router.go(-1)
} else {
formRef.reset()
}
} catch (error) {
console.log(error)
} }
this.$message.success("提交成功"); })
if (!reset) {
this.$router.go(-1)
} else {
formRef.reset()
}
} catch (error) {
console.log(error)
}
}) })
}, },
handlePassed() { handlePassed() {

22
src/views/sluice/runManage/maintenance/maintenanceRecords/components/RecordDetail.vue

@ -265,6 +265,10 @@
v-for="(activity, index) in activities" v-for="(activity, index) in activities"
:key="index" :key="index"
:timestamp="activity.approvalTime"> :timestamp="activity.approvalTime">
<el-tag v-if="activity.status == 0" style="position: absolute; left: 200px;top: -5px;" size="small" type="danger">待提交</el-tag>
<el-tag v-if="activity.status == 1" style="position: absolute; left: 200px;top: -5px;" size="small" type="success">审批中</el-tag>
<el-tag v-if="activity.status == 2" style="position: absolute; left: 200px;top: -5px;" size="small" type="success">已通过</el-tag>
<el-tag v-if="activity.status == 3" style="position: absolute; left: 200px;top: -5px;" size="small" type="danger">已驳回</el-tag>
<div>审批意见: {{activity.comment}}</div> <div>审批意见: {{activity.comment}}</div>
<div>审批附件: {{ <div>审批附件: {{
activity.docs && activity.docs &&
@ -583,17 +587,10 @@ export default {
}, },
// //
searchPlan(value) { searchPlan(value) {
console.log(value)
postRunSzYhPlanList({ postRunSzYhPlanList({
data: { data: {
timeView: { wagaName: value,
timeField: "create_time",
},
wagaCode: this.$route.query.wagaCode,
},
cv: {
name: "name",
type: "like",
value,
}, },
pageSize: 100, pageSize: 100,
pageNum: 1, pageNum: 1,
@ -708,5 +705,12 @@ export default {
</script> </script>
<style scoped lang="scss"> <style scoped lang="scss">
.record-detail { .record-detail {
.form-row-title {
font-size: 16px;
font-weight: bold;
margin-bottom: 10px;
border-left: 4px solid #36b29e;
padding-left: 8px;
}
} }
</style> </style>

15
src/views/sluice/runManage/maintenance/maintenanceRecords/index.vue

@ -40,11 +40,10 @@ export default {
} }
}, },
disabledDate: (time) => {//5 disabledDate: (time) => {//5
let curDate = (new Date()).getTime();
let three = 5 * 12 * 30 * 24 * 3600 * 1000;
let min = curDate + three;
let max = curDate - three;
if (this.choiceDate) { if (this.choiceDate) {
let three = 5 * 12 * 30 * 24 * 3600 * 1000;
let min = this.choiceDate + three;
let max = this.choiceDate - three;
return time.getTime() < max || time.getTime() > min; return time.getTime() < max || time.getTime() > min;
} else { } else {
return false; return false;
@ -261,6 +260,12 @@ export default {
}); });
return name || type; return name || type;
}, },
//
formatDate(dateStr) {
const date = new Date(dateStr);
console.log(date)
return date.toISOString().split('T')[0];
}
}, },
created() { created() {
this.getTreeData() this.getTreeData()
@ -421,7 +426,7 @@ export default {
</el-table-column> </el-table-column>
<el-table-column align="center" label="完成维养时间"> <el-table-column align="center" label="完成维养时间">
<template slot-scope="scope"> <template slot-scope="scope">
<span>{{ scope.row.plan ? scope.row.plan.endDate : '' }}</span> <span>{{ scope.row.plan ? formatDate(scope.row.plan.endDate) : '' }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column align="center" label="维养单位"> <el-table-column align="center" label="维养单位">

Loading…
Cancel
Save