Browse Source

行政区划

dev_kxc
xzt 1 year ago
parent
commit
0f8daf2ed3
  1. 30
      jwtech-admin-page/src/main.js
  2. 879
      jwtech-admin-page/src/views/building/projectInfo/projectProcess/baseMsg.vue
  3. 911
      jwtech-admin-page/src/views/building/projectInfo/projectProcess/firmInfo.vue
  4. 68
      jwtech-admin-page/src/views/building/projectInfo/projectProcess/index.vue
  5. 54
      jwtech-admin-page/src/views/project/plan/index.vue
  6. 6
      jwtech-admin-page/src/views/project/plan/options/planBasePage.vue
  7. 61
      jwtech-admin-page/src/views/project/preDesign/index.vue
  8. 133
      jwtech-admin-page/src/views/project/proposal/index.vue
  9. 64
      jwtech-admin-page/src/views/project/report/index.vue
  10. 14
      jwtech-admin-page/src/views/project/special/index.vue
  11. 17
      jwtech-admin-page/src/views/project/special/options/basePage.vue
  12. 331
      jwtech-admin-page/src/views/system/dept/index.vue

30
jwtech-admin-page/src/main.js

@ -55,7 +55,35 @@ import 'viewerjs/dist/viewer.css'
import echarts from 'echarts'
Vue.prototype.$echarts = echarts
// import { getAreasData } from "@/api/areas/index";
// (async function () {
// await getAreasData().then((items) => {
// // console.log("getAreasData", items.data);
// let res = [];
// let getChildren = (res, pid) => {
// for (const i of items.data) {
// if (i.parentid === pid) {
// const newItem = {
// label: i.name,
// value: i.id,
// };
// if (i.layer != 3) newItem.children = [];
// res.push(newItem);
// getChildren(newItem.children, newItem.value);
// }
// }
// };
// getChildren(res, items.data[0].parentid);
// console.log("areasOptions666", res);
// Vue.prototype.$areasOptions = res
// // this.areasOptions = res;
// // 当不是admin时,默认行政区域
// // if (this.$userProfile.createUid != "admin") {
// // this.queryParams.data.adcd = this.areasOptions[0].value;
// // }
// // return res;
// });
// })()
// 全局方法挂载
Vue.prototype.getDicts = getDicts

879
jwtech-admin-page/src/views/building/projectInfo/projectProcess/baseMsg.vue

@ -1,3 +1,880 @@
<template>
<div>666</div>
<el-form ref="form" :model="form" :rules="rules" label-width="180px">
<el-col :span="24">
<el-form-item label="项目名称" prop="projectName">
<!-- <el-input
v-model="form.projectName"
placeholder="请输入项目名称"
/> -->
<el-select
v-model="form.projectName"
placeholder="请输入项目名称"
filterable
clearable
size="small"
style="width: 100%"
>
<el-option
v-for="dict in projectNameOptions"
:key="dict.projectName + dict.id"
:label="dict.projectName + '[' + dict.projectCode + ']'"
:value="dict.projectName + '[' + dict.projectCode + ']'"
@click.native="getId(dict)"
/>
</el-select>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="项目法人" prop="unitLeader">
<el-input v-model="form.unitLeader" placeholder="请输入项目法人" />
</el-form-item>
</el-col>
<!-- <el-col :span="24">
<el-form-item label="项目法人" prop="projectLegalPerson">
<el-input
v-model="form.projectLegalPerson"
placeholder="请输入项目法人"
/>
</el-form-item>
</el-col> -->
<el-col :span="24">
<el-form-item label="项目法人单位" prop="projectLegalUnit">
<el-input
v-model="form.projectLegalUnit"
placeholder="请输入项目法人单位"
/>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="项目类型" prop="projectType">
<div style="margin-bottom: 10px">
<el-radio v-model="radio" label="zd" @input="changeisMajor()"
>重大项目</el-radio
>
<el-radio v-model="radio" label="ms" @input="changeisMajor()"
>面上项目</el-radio
>
</div>
<div>
<el-radio
v-model="form.projectType"
v-for="dict in radio == 'zd'
? zd_projectTypeOptions
: ms_projectTypeOptions"
:label="dict.dictValue"
:key="dict.dictLabel + dict.id"
>
{{ dict.dictLabel }}
</el-radio>
</div>
<!-- <el-select
v-model="form.projectType"
placeholder="请选择项目类型"
style="width: 100%"
>
<div style="margin-bottom: 10px">
<el-radio v-model="radio" label="zd">重大项目</el-radio>
<el-radio v-model="radio" label="ms">面上项目</el-radio>
</div>
重大项目选项
<template v-if="radio == 'zd'">
<el-option
v-for="dict in zd_projectTypeOptions"
:key="dict.dictLabel + dict.id"
:label="dict.dictLabel"
:value="dict.dictValue"
/>
</template>
面上项目选项
<template v-if="radio == 'ms'">
<el-option
v-for="dict in ms_projectTypeOptions"
:key="dict.dictLabel + dict.id"
:label="dict.dictLabel"
:value="dict.dictValue"
/>
</template>
</el-select> -->
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="单位负责人电话" prop="projectLegalPhone">
<el-input
v-model="form.projectLegalPhone"
placeholder="请输入单位负责人电话"
/>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="工程等别" prop="engineeringGrade">
<!-- <el-input
v-model="form.engineeringGrade"
placeholder="请输入工程等别"
/> -->
<el-select
v-model="form.engineeringGrade"
placeholder="请输入工程等别"
filterable
clearable
size="small"
style="width: 100%"
>
<el-option
v-for="dict in engineeringGradeOptions"
:key="dict.dictLabel + dict.id"
:label="dict.dictLabel"
:value="dict.dictValue"
/>
</el-select>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="工程用途" prop="engineeringPurposes">
<!-- <el-input
v-model="form.engineeringPurposes"
placeholder="请输入工程用途"
/> -->
<el-select
v-model="form.engineeringPurposes"
placeholder="请输入工程用途"
filterable
clearable
size="small"
style="width: 100%"
>
<el-option
v-for="dict in engineeringPurposesOptions"
:key="dict.dictLabel + dict.id"
:label="dict.dictLabel"
:value="dict.dictValue"
/>
</el-select>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="工程类别" prop="workCategory">
<!-- <el-input
v-model="form.workCategory"
placeholder="请输入工程类别"
/> -->
<el-select
v-model="form.workCategory"
placeholder="请输入工程用途"
filterable
clearable
size="small"
style="width: 100%"
>
<el-option
v-for="dict in workCategoryOptions"
:key="dict.dictLabel + dict.id"
:label="dict.dictLabel"
:value="dict.dictValue"
/>
</el-select>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="项目建设地址" prop="constructionAddress">
<el-input
v-model="form.constructionAddress"
placeholder="请输入项目建设地址"
/>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="建设模式" prop="constructionMode">
<!-- <el-input
v-model="form.constructionMode"
placeholder="请输入建设模式"
/> -->
<el-select
v-model="form.constructionMode"
placeholder="请输入建设模式"
filterable
clearable
size="small"
style="width: 100%"
>
<el-option
v-for="dict in constructionModeOptions"
:key="dict.dictLabel + dict.id"
:label="dict.dictLabel"
:value="dict.dictValue"
/>
</el-select>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="建设性质" prop="constructionNature">
<!-- <el-input
v-model="form.constructionNature"
placeholder="请输入建设性质"
/> -->
<el-select
v-model="form.constructionNature"
placeholder="请输入建设模式"
filterable
clearable
size="small"
style="width: 100%"
>
<el-option
v-for="dict in constructionNatureOptions"
:key="dict.dictLabel + dict.id"
:label="dict.dictLabel"
:value="dict.dictValue"
/>
</el-select>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="建设内容" prop="constructionContent">
<el-input
v-model="form.constructionContent"
placeholder="请输入建设内容"
/>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="行政区划" prop="adcd">
<el-input v-model="form.adcd" placeholder="请输入行政区划" />
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="所属流域" prop="basin">
<el-input v-model="form.basin" placeholder="请输入所属流域" />
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="中央资金" prop="centralArrangedFunds">
<el-input
v-model="form.centralArrangedFunds"
placeholder="请输入中央资金"
/>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="中央资金比例" prop="centralArrangedFundsRate">
<el-input
v-model="form.centralArrangedFundsRate"
placeholder="请输入中央资金比例"
/>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="省级资金" prop="provincialFunding">
<el-input
v-model="form.provincialFunding"
placeholder="请输入省级资金"
/>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="省级资金比例" prop="provincialFundingRate">
<el-input
v-model="form.provincialFundingRate"
placeholder="请输入省级资金比例"
/>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="地市资金" prop="cityLevelFunds">
<el-input v-model="form.cityLevelFunds" placeholder="请输入地市资金" />
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="地市资金比例" prop="cityLevelFundsRate">
<el-input
v-model="form.cityLevelFundsRate"
placeholder="请输入地市资金比例"
/>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="区县资金" prop="countyLevelFunds">
<el-input
v-model="form.countyLevelFunds"
placeholder="请输入区县资金"
/>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="区县资金比例" prop="cityLevelFundsRate">
<el-input
v-model="form.countyLevelFundsRate"
placeholder="请输入区县资金比例"
/>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="乡镇及群众自筹和其他投资" prop="countyLevelFunds">
<el-input
v-model="form.townshipInvestments"
placeholder="请输入乡镇及群众自筹和其他投资"
/>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item
label="乡镇及群众自筹和其他投资比例"
prop="cityLevelFundsRate"
>
<el-input
v-model="form.townshipInvestmentsRate"
placeholder="请输入乡镇及群众自筹和其他投资比例"
/>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="是否172项重大水利工程" prop="isMajorProject">
<!-- <el-input
v-model="form.isMajorProject"
placeholder="请输入是否172项重大水利工程"
/> -->
<el-select
v-model="form.isMajorProject"
placeholder="是否172项重大水利工程"
clearable
size="small"
style="width: 100%"
>
<el-option
v-for="dict in isMajorProjectOptions"
:key="dict.dictValue"
:label="dict.dictLabel"
:value="dict.dictValue"
/>
</el-select>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="项目投资主体" prop="investmentSubject">
<el-input
v-model="form.investmentSubject"
placeholder="请输入项目投资主体"
/>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="建设阶段" prop="constructionPhase">
<el-input
v-model="form.constructionPhase"
placeholder="请输入建设阶段"
/>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="资金下达文号" prop="fundingNumber">
<el-input
v-model="form.fundingNumber"
placeholder="请输入资金下达文号"
/>
</el-form-item>
</el-col>
</el-form>
</template>
<script>
import {
listInfo,
getInfo,
delInfo,
addInfo,
updateInfo,
exportInfo,
} from "@/api/build/projectInfo";
import {
listProposal,
getProposal,
delProposal,
addProposal,
updateProposal,
exportProposal,
getProjectCode,
} from "@/api/earlyStage/proposal";
export default {
name: "Info",
data() {
return {
//
loading: true,
//
ids: [],
//
single: true,
//
multiple: true,
//
showSearch: true,
//
total: 0,
//
infoList: [],
//
title: "",
viewTitle: "",
//
open: false,
viewOpen: false,
//
queryParams: {
pageNum: 1,
pageSize: 10,
ids: null,
data: {
isMajor: null,
projectName: null,
unitLeader: null,
projectLegalPerson: null,
projectLegalUnit: null,
projectLegalPhone: null,
engineeringGrade: null,
engineeringPurposes: null,
workCategory: null,
constructionAddress: null,
constructionMode: null,
constructionNature: null,
constructionContent: null,
adcd: null,
basin: null,
projectType: null,
// fundingSource: null,
centralArrangedFunds: null,
centralArrangedFundsRate: null,
provincialFunding: null,
provincialFundingRate: null,
cityLevelFunds: null,
cityLevelFundsRate: null,
countyLevelFunds: null,
countyLevelFundsRate: null,
townshipInvestments: null,
townshipInvestmentsRate: null,
isMajorProject: null,
investmentSubject: null,
constructionPhase: null,
fundingNumber: null,
proCode: null,
proNo: null,
createUid: null,
createTime: null,
updateUid: null,
updateTime: null,
owerDept: null,
},
//
params: {
//
orderBy: "create_time",
// descasc
sort: "desc",
},
},
//
form: {},
copyForm: {},
//
rules: {
projectLegalPerson: [
// { required: true, message: "", trigger: "blur" },
],
},
//
projectNameOptions: [],
proNo: "",
proCode: "",
// 172
isMajorProjectOptions: [],
radio: "zd",
//
zd_projectTypeOptions: [],
//
ms_projectTypeOptions: [],
//
engineeringGradeOptions: [],
//
engineeringPurposesOptions: [],
//
workCategoryOptions: [],
//
constructionModeOptions: [],
//
constructionNatureOptions: [],
proMsg: {},
//
routeList: [
{
path: "/building/projectInfo",
routeName: "项目基本信息管理",
},
],
};
},
created() {
this.getList();
this.getDicts("whether").then((response) => {
this.isMajorProjectOptions = response.data;
});
this.getDicts("major_project").then((response) => {
// console.log("4444444444444444", response.data);
this.zd_projectTypeOptions = response.data;
});
this.getDicts("general_project").then((response) => {
// console.log("5555555555555", response.data);
this.ms_projectTypeOptions = response.data;
});
this.getDicts("engineering_grade").then((response) => {
this.engineeringGradeOptions = response.data;
});
this.getDicts("project_purposes").then((response) => {
this.engineeringPurposesOptions = response.data;
});
this.getDicts("project_category").then((response) => {
this.workCategoryOptions = response.data;
});
this.getDicts("Construction_mode").then((response) => {
this.constructionModeOptions = response.data;
});
this.getDicts("CONSTRUCTION_NATURE").then((response) => {
this.constructionNatureOptions = response.data;
});
},
methods: {
//
changeisMajor() {
if (this.radio == this.copyForm.isMajor) {
this.form.projectType = this.copyForm.projectType;
} else {
this.form.projectType = "";
}
},
//
engineeringGradeFormat(row, column) {
return this.selectDictLabel(
this.engineeringGradeOptions,
row.engineeringGrade
);
},
//
engineeringPurposesFormat(row, column) {
return this.selectDictLabel(
this.engineeringPurposesOptions,
row.engineeringPurposes
);
},
//
workCategoryFormat(row, column) {
return this.selectDictLabel(this.workCategoryOptions, row.workCategory);
},
//
constructionModeFormat(row, column) {
return this.selectDictLabel(
this.constructionModeOptions,
row.constructionMode
);
},
//
constructionNatureFormat(row, column) {
return this.selectDictLabel(
this.constructionNatureOptions,
row.constructionNature
);
},
//
projectTypeFormat(row, column) {
if (row.isMajor == "zd") {
return this.selectDictLabel(
this.zd_projectTypeOptions,
row.projectType
);
} else if (row.isMajor == "ms") {
return this.selectDictLabel(
this.ms_projectTypeOptions,
row.projectType
);
}
},
// 172
isBelongPlanningFormat(row, column) {
return this.selectDictLabel(
this.isMajorProjectOptions,
row.isMajorProject
);
},
projectNameFormat(row) {
if (row.projectName)
return row.projectName.slice(0, row.projectName.indexOf("["));
},
getId(res) {
// console.log(res)
getProposal(res.id).then((response) => {
// console.log(response.data)
this.proNo = response.data.proNo;
this.proCode = response.data.projectCode;
});
},
/** 查询项目基本信息管理列表 */
getList() {
this.loading = true;
listInfo(this.queryParams).then((response) => {
this.infoList = response.records;
this.total = response.total;
this.loading = false;
});
},
//
cancel() {
this.open = false;
this.reset();
},
//
reset() {
this.form = {
id: null,
isMajor: null,
projectName: null,
unitLeader: null,
projectLegalPerson: null,
projectLegalUnit: null,
projectLegalPhone: null,
engineeringGrade: null,
engineeringPurposes: null,
workCategory: null,
constructionAddress: null,
constructionMode: null,
constructionNature: null,
constructionContent: null,
adcd: null,
basin: null,
projectType: null,
// fundingSource: null,
centralArrangedFunds: null,
centralArrangedFundsRate: null,
provincialFunding: null,
provincialFundingRate: null,
cityLevelFunds: null,
cityLevelFundsRate: null,
countyLevelFunds: null,
countyLevelFundsRate: null,
townshipInvestments: null,
townshipInvestmentsRate: null,
isMajorProject: null,
investmentSubject: null,
constructionPhase: null,
fundingNumber: null,
proCode: null,
proNo: null,
createUid: null,
createTime: null,
updateUid: null,
updateTime: null,
owerDept: null,
};
this.resetForm("form");
},
//
resetQueryForm() {
this.queryParams = {
pageNum: 1,
pageSize: 10,
data: {
id: null,
isMajor: null,
projectName: null,
unitLeader: null,
projectLegalPerson: null,
projectLegalUnit: null,
projectLegalPhone: null,
engineeringGrade: null,
engineeringPurposes: null,
workCategory: null,
constructionAddress: null,
constructionMode: null,
constructionNature: null,
constructionContent: null,
adcd: null,
basin: null,
projectType: null,
// fundingSource: null,
centralArrangedFunds: null,
centralArrangedFundsRate: null,
provincialFunding: null,
provincialFundingRate: null,
cityLevelFunds: null,
cityLevelFundsRate: null,
countyLevelFunds: null,
countyLevelFundsRate: null,
townshipInvestments: null,
townshipInvestmentsRate: null,
isMajorProject: null,
investmentSubject: null,
constructionPhase: null,
fundingNumber: null,
proCode: null,
proNo: null,
createUid: null,
createTime: null,
updateUid: null,
updateTime: null,
owerDept: null,
},
};
this.resetForm("form");
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.resetQueryForm();
this.handleQuery();
},
//
handleSelectionChange(selection) {
this.ids = selection.map((item) => item.id);
this.single = selection.length !== 1;
this.multiple = !selection.length;
},
//
viewInfo(row) {
this.viewTitle = row.projectName.slice(0, row.projectName.indexOf("["));
this.proMsg = row;
console.log("proMsg", row);
this.viewOpen = true;
},
//
closeView() {
this.proMsg = {};
},
/** 新增按钮操作 */
handleAdd() {
this.reset();
listProposal(this.queryParams).then((response) => {
this.projectNameOptions = response.records;
});
this.radio = "zd";
this.open = true;
this.title = "添加项目基本信息管理";
},
/** 修改按钮操作 */
handleUpdate(row) {
this.reset();
const id = row.id || this.ids;
getInfo(id).then((response) => {
this.form = response.data;
if (this.form)
listProposal(this.queryParams).then((response) => {
this.projectNameOptions = response.records;
});
//
this.radio = this.form.isMajor;
this.form.projectName =
this.form.projectName + "[" + this.form.proCode + "]";
this.copyForm = { ...this.form };
this.open = true;
this.title = "修改项目基本信息管理";
});
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate((valid) => {
if (valid) {
this.form.isMajor = this.radio;
if (this.proNo) {
this.form.proNo = this.proNo;
}
if (this.proCode) {
this.form.proCode = this.proCode;
}
if (
this.form.projectName &&
this.form.projectName.indexOf("[") != -1
) {
this.form.projectName = this.form.projectName.slice(
0,
this.form.projectName.indexOf("[")
);
}
console.log(this.form);
// console.log("this.form.isMajor", this.form.isMajor);
if (this.form.id != null) {
updateInfo(this.form).then((response) => {
if (response.code === 200) {
this.msgSuccess("修改成功");
this.open = false;
this.getList();
}
});
} else {
addInfo(this.form).then((response) => {
if (response.code === 200) {
this.msgSuccess("新增成功");
this.open = false;
this.getList();
}
});
}
}
});
},
/** 删除按钮操作 */
handleDelete(row) {
const ids = row.id || this.ids;
if (ids) {
this.$confirm("是否删除选中的数据?", "警告", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning",
})
.then(function () {
return delInfo(ids);
})
.then(() => {
this.getList();
this.msgSuccess("删除成功");
})
.catch(function () {});
} else {
this.$message.warning("请选择要删除的数据!!");
}
},
/** 导出按钮操作 */
handleExport() {
const queryParams = this.queryParams;
let message = "是否确认导出所有的数据项?";
if (this.ids) {
message = "是否确认导出选中的数据项?";
queryParams.ids = this.ids;
}
this.$confirm(message, "警告", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning",
})
.then(function () {
return exportInfo(queryParams);
})
.then((response) => {
this.downloadFile(response, true, response.msg);
// this.download(response.msg);
})
.catch(function () {});
},
},
};
</script>

911
jwtech-admin-page/src/views/building/projectInfo/projectProcess/firmInfo.vue

@ -0,0 +1,911 @@
<template>
<div class="app-container">
<!-- 面包屑 -->
<!-- <el-breadcrumb separator="/" style="margin-bottom: 20px">
<el-breadcrumb-item
v-for="(item, index) in routeList"
:key="item + index"
:to="{ path: item.path }"
>{{ item.routeName }}</el-breadcrumb-item
>
</el-breadcrumb> -->
<el-form
:model="queryParams"
ref="queryForm"
:inline="true"
v-show="showSearch"
label-width="68px"
>
<el-form-item label="项目法人" prop="projectLegalPerson">
<el-input
v-model="queryParams.data.projectLegalPerson"
placeholder="请输入项目法人"
clearable
size="small"
@keyup.enter.native="handleQuery"
><el-button
type="primary"
slot="append"
icon="el-icon-search"
size="small"
@click="handleQuery"
></el-button>
</el-input>
</el-form-item>
<el-form-item
label="项目法人单位"
prop="projectLegalUnit"
label-width="96px"
>
<el-input
v-model="queryParams.data.projectLegalUnit"
placeholder="请输入项目法人单位"
clearable
size="small"
@keyup.enter.native="handleQuery"
><el-button
type="primary"
slot="append"
icon="el-icon-search"
size="small"
@click="handleQuery"
></el-button>
</el-input>
</el-form-item>
<el-form-item>
<!-- <el-button
type="cyan"
icon="el-icon-search"
size="mini"
@click="handleQuery"
>搜索</el-button
> -->
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery"
>重置</el-button
>
</el-form-item>
</el-form>
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button
type="primary"
icon="el-icon-plus"
size="mini"
@click="handleAdd"
v-hasPermi="['build:info:add']"
>新增</el-button
>
</el-col>
<el-col :span="1.5">
<el-button
type="success"
icon="el-icon-edit"
size="mini"
:disabled="single"
@click="handleUpdate"
v-hasPermi="['build:info:edit']"
>修改</el-button
>
</el-col>
<el-col :span="1.5">
<el-button
type="danger"
icon="el-icon-delete"
size="mini"
:disabled="multiple"
@click="handleDelete"
v-hasPermi="['build:info:remove']"
>删除</el-button
>
</el-col>
<right-toolbar
:showSearch.sync="showSearch"
@queryTable="getList"
></right-toolbar>
</el-row>
<el-table
v-loading="loading"
:data="infoList"
@selection-change="handleSelectionChange"
>
<el-table-column type="selection" width="55" align="center" fixed />
<el-table-column
label="序号"
type="index"
width="50"
align="center"
fixed
/>
<el-table-column
label="项目法人"
align="center"
prop="projectLegalPerson"
min-width="120"
/>
<el-table-column
label="项目法人单位"
align="center"
prop="projectLegalUnit"
min-width="120"
/>
<el-table-column
label="项目法人联系方式"
align="center"
prop="projectLegalPhone"
min-width="150"
/>
<el-table-column
label="设计单位"
align="center"
prop="dsun"
min-width="120"
/>
<el-table-column
label="设计单位联系人"
align="center"
prop="dsunPerson"
min-width="120"
/>
<el-table-column
label="设计单位联系人职务"
align="center"
prop="dsunTitle"
min-width="150"
/>
<el-table-column
label="设计单位联系电话"
align="center"
prop="dsunPhone"
min-width="150"
/>
<el-table-column
label="承建单位"
align="center"
prop="constructionUnit"
min-width="120"
/>
<el-table-column
label="承建单位联系人"
align="center"
prop="constructionUnitPerson"
min-width="120"
/>
<el-table-column
label="承建单位联系人职务"
align="center"
prop="constructionUnitTitle"
min-width="150"
/>
<el-table-column
label="承建单位联系人电话"
align="center"
prop="constructionUnitPhone"
min-width="150"
/>
<el-table-column
label="监理单位"
align="center"
prop="supervisionUnit"
min-width="120"
/>
<el-table-column
label="监理单位联系人"
align="center"
prop="supervisionUnitPerson"
min-width="120"
/>
<el-table-column
label="监理单位联系人职务"
align="center"
prop="supervisionUnitTitle"
min-width="150"
/>
<el-table-column
label="监理单位联系人电话"
align="center"
prop="supervisionUnitPhone"
min-width="150"
/>
<el-table-column
label="其他单位"
align="center"
prop="otherUnit"
min-width="120"
/>
<el-table-column
label="其他单位类别"
align="center"
prop="otherUnitType"
min-width="120"
/>
<el-table-column
label="其他单位联系人"
align="center"
prop="otherUnitPerson"
min-width="120"
/>
<el-table-column
label="其他单位联系人职务"
align="center"
prop="otherUnitTitle"
min-width="150"
/>
<el-table-column
label="其他单位联系人电话"
align="center"
prop="otherUnitPhone"
min-width="150"
/>
<el-table-column
label="行政区划"
align="center"
prop="adcd"
min-width="120"
/>
<el-table-column
label="操作"
align="center"
class-name="small-padding fixed-width"
min-width="180"
fixed="right"
>
<template slot-scope="scope">
<el-button
size="mini"
type="text"
icon="el-icon-view"
@click="viewInfo(scope.row)"
>查看</el-button
>
<el-button
size="mini"
type="text"
icon="el-icon-edit"
@click="handleUpdate(scope.row)"
v-hasPermi="['build:info:edit']"
>修改</el-button
>
<el-button
size="mini"
type="text"
icon="el-icon-delete"
@click="handleDelete(scope.row)"
v-hasPermi="['build:info:remove']"
>删除</el-button
>
</template>
</el-table-column>
</el-table>
<pagination
v-show="total > 0"
:total="total"
:page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
<!-- 添加或修改企业信息管理对话框 -->
<el-dialog
:title="title"
:visible.sync="open"
width="1200px"
append-to-body
>
<el-row :gutter="15">
<el-form ref="form" :model="form" :rules="rules" label-width="150px">
<el-col :span="12">
<el-form-item label="项目法人" prop="projectLegalPerson">
<el-input
v-model="form.projectLegalPerson"
placeholder="请输入项目法人"
/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="项目法人单位" prop="projectLegalUnit">
<el-input
v-model="form.projectLegalUnit"
placeholder="请输入项目法人单位"
/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="项目法人联系方式" prop="projectLegalPhone">
<el-input
v-model="form.projectLegalPhone"
placeholder="请输入项目法人联系方式"
/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="设计单位" prop="dsun">
<el-input v-model="form.dsun" placeholder="请输入设计单位" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="设计单位联系人" prop="dsunPerson">
<el-input
v-model="form.dsunPerson"
placeholder="请输入设计单位联系人"
/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="设计单位联系人职务" prop="dsunTitle">
<el-input
v-model="form.dsunTitle"
placeholder="请输入设计单位联系人职务"
/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="设计单位联系电话" prop="dsunPhone">
<el-input
v-model="form.dsunPhone"
placeholder="请输入设计单位联系电话"
/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="承建单位" prop="constructionUnit">
<el-input
v-model="form.constructionUnit"
placeholder="请输入承建单位"
/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="承建单位联系人" prop="constructionUnitPerson">
<el-input
v-model="form.constructionUnitPerson"
placeholder="请输入承建单位联系人"
/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item
label="承建单位联系人职务"
prop="constructionUnitTitle"
>
<el-input
v-model="form.constructionUnitTitle"
placeholder="请输入承建单位联系人职务"
/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item
label="承建单位联系人电话"
prop="constructionUnitPhone"
>
<el-input
v-model="form.constructionUnitPhone"
placeholder="请输入承建单位联系人电话"
/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="监理单位" prop="supervisionUnit">
<el-input
v-model="form.supervisionUnit"
placeholder="请输入监理单位"
/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="监理单位联系人" prop="supervisionUnitPerson">
<el-input
v-model="form.supervisionUnitPerson"
placeholder="请输入监理单位联系人"
/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item
label="监理单位联系人职务"
prop="supervisionUnitTitle"
>
<el-input
v-model="form.supervisionUnitTitle"
placeholder="请输入监理单位联系人职务"
/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item
label="监理单位联系人电话"
prop="supervisionUnitPhone"
>
<el-input
v-model="form.supervisionUnitPhone"
placeholder="请输入监理单位联系人电话"
/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="其他单位" prop="otherUnit">
<el-input v-model="form.otherUnit" placeholder="请输入其他单位" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="其他单位类别" prop="otherUnitType">
<el-select
v-model="form.otherUnitType"
placeholder="请选择其他单位类别"
style="width: 100%"
>
<el-option label="请选择字典生成" value="" />
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="其他单位联系人" prop="otherUnitPerson">
<el-input
v-model="form.otherUnitPerson"
placeholder="请输入其他单位联系人"
/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="其他单位联系人职务" prop="otherUnitTitle">
<el-input
v-model="form.otherUnitTitle"
placeholder="请输入其他单位联系人职务"
/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="其他单位联系人电话" prop="otherUnitPhone">
<el-input
v-model="form.otherUnitPhone"
placeholder="请输入其他单位联系人电话"
/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="行政区划" prop="adcd">
<el-input v-model="form.adcd" placeholder="请输入行政区划" />
</el-form-item>
</el-col>
</el-form>
</el-row>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
<!--查看 -->
<el-dialog
:title="viewTitle"
:visible.sync="viewOpen"
width="1200px"
append-to-body
@close="closeView"
>
<!-- 查看企业信息 -->
<div class="infoTitle">参建企业信息</div>
<div class="draLine"></div>
<div class="content">
<el-descriptions
class="margin-top"
:column="2"
border
:labelStyle="{
'text-align': 'left',
width: '180px',
height: '50px',
}"
:contentStyle="{}"
>
<el-descriptions-item>
<template slot="label"> 项目法人 </template>
{{ this.firmMsg.projectLegalPerson }}
</el-descriptions-item>
<el-descriptions-item>
<template slot="label"> 项目法人单位 </template>
{{ this.firmMsg.projectLegalPhone }}
</el-descriptions-item>
<el-descriptions-item>
<template slot="label"> 项目法人联系方式 </template>
{{ this.firmMsg.projectLegalPerson }}
</el-descriptions-item>
<el-descriptions-item>
<template slot="label"> 设计单位 </template>
{{ this.firmMsg.dsun }}
</el-descriptions-item>
<el-descriptions-item>
<template slot="label"> 设计单位联系人 </template>
{{ this.firmMsg.dsunPerson }}
</el-descriptions-item>
<el-descriptions-item>
<template slot="label"> 设计单位联系人职务 </template>
{{ this.firmMsg.dsunTitle }}
</el-descriptions-item>
<el-descriptions-item>
<template slot="label"> 设计单位联系电话 </template>
{{ this.firmMsg.dsunPhone }}
</el-descriptions-item>
<el-descriptions-item>
<template slot="label"> 承建单位 </template>
{{ this.firmMsg.constructionUnit }}
</el-descriptions-item>
<el-descriptions-item>
<template slot="label"> 承建单位联系人 </template>
{{ this.firmMsg.constructionUnitPerson }}
</el-descriptions-item>
<el-descriptions-item>
<template slot="label"> 承建单位联系人职务 </template>
{{ this.firmMsg.constructionUnitTitle }}
</el-descriptions-item>
<el-descriptions-item>
<template slot="label"> 承建单位联系人电话 </template>
{{ this.firmMsg.constructionUnitPhone }}
</el-descriptions-item>
<el-descriptions-item>
<template slot="label"> 监理单位 </template>
{{ this.firmMsg.supervisionUnit }}
</el-descriptions-item>
<el-descriptions-item>
<template slot="label"> 监理单位联系人 </template>
{{ this.firmMsg.supervisionUnitPerson }}
</el-descriptions-item>
<el-descriptions-item>
<template slot="label"> 监理单位联系人职务 </template>
{{ this.firmMsg.supervisionUnitTitle }}
</el-descriptions-item>
<el-descriptions-item>
<template slot="label"> 请输入监理单位联系人电话 </template>
{{ this.firmMsg.supervisionUnitPhone }}
</el-descriptions-item>
<el-descriptions-item>
<template slot="label"> 其他单位 </template>
{{ this.firmMsg.otherUnit }}
</el-descriptions-item>
<el-descriptions-item>
<template slot="label"> 其他单位类别 </template>
{{ this.firmMsg.otherUnitType }}
</el-descriptions-item>
<el-descriptions-item>
<template slot="label"> 其他单位联系人 </template>
{{ this.firmMsg.otherUnitPerson }}
</el-descriptions-item>
<el-descriptions-item>
<template slot="label"> 其他单位联系人职务 </template>
{{ this.firmMsg.请输入其他单位联系人职务 }}
</el-descriptions-item>
<el-descriptions-item>
<template slot="label"> 其他单位联系人电话 </template>
{{ this.firmMsg.otherUnitPhone }}
</el-descriptions-item>
<el-descriptions-item>
<template slot="label"> 行政区划 </template>
{{ this.firmMsg.adcd }}
</el-descriptions-item>
</el-descriptions>
</div>
</el-dialog>
</div>
</template>
<script>
import {
listInfo,
getInfo,
delInfo,
addInfo,
updateInfo,
exportInfo,
} from "@/api/build/enteInfo";
export default {
name: "Info",
data() {
return {
//
loading: true,
//
ids: [],
//
single: true,
//
multiple: true,
//
showSearch: true,
//
total: 0,
//
infoList: [],
//
title: "",
viewTitle: "",
//
open: false,
viewOpen: false,
//
queryParams: {
pageNum: 1,
pageSize: 10,
ids: null,
data: {
projectLegalPerson: null,
projectLegalUnit: null,
projectLegalPhone: null,
dsun: null,
dsunPerson: null,
dsunTitle: null,
dsunPhone: null,
constructionUnit: null,
constructionUnitPerson: null,
constructionUnitTitle: null,
constructionUnitPhone: null,
supervisionUnit: null,
supervisionUnitPerson: null,
supervisionUnitTitle: null,
supervisionUnitPhone: null,
otherUnit: null,
otherUnitType: null,
otherUnitPerson: null,
otherUnitTitle: null,
otherUnitPhone: null,
adcd: null,
proCode: null,
proNo: null,
createUid: null,
createTime: null,
updateUid: null,
updateTime: null,
owerDept: null,
},
//
params: {
//
orderBy: "create_time",
// descasc
sort: "desc",
},
},
//
form: {},
//
rules: {},
firmMsg: {},
//
routeList: [
{
path: "/building/firmInfo",
routeName: "参建企业信息管理",
},
],
};
},
created() {
this.getList();
},
methods: {
/** 查询企业信息管理列表 */
getList() {
this.loading = true;
listInfo(this.queryParams).then((response) => {
this.infoList = response.records;
this.total = response.total;
this.loading = false;
});
},
//
cancel() {
this.open = false;
this.reset();
},
//
reset() {
this.form = {
id: null,
projectLegalPerson: null,
projectLegalUnit: null,
projectLegalPhone: null,
dsun: null,
dsunPerson: null,
dsunTitle: null,
dsunPhone: null,
constructionUnit: null,
constructionUnitPerson: null,
constructionUnitTitle: null,
constructionUnitPhone: null,
supervisionUnit: null,
supervisionUnitPerson: null,
supervisionUnitTitle: null,
supervisionUnitPhone: null,
otherUnit: null,
otherUnitType: null,
otherUnitPerson: null,
otherUnitTitle: null,
otherUnitPhone: null,
adcd: null,
proCode: null,
proNo: null,
createUid: null,
createTime: null,
updateUid: null,
updateTime: null,
owerDept: null,
};
this.resetForm("form");
},
//
resetQueryForm() {
this.queryParams = {
pageNum: 1,
pageSize: 10,
data: {
id: null,
projectLegalPerson: null,
projectLegalUnit: null,
projectLegalPhone: null,
dsun: null,
dsunPerson: null,
dsunTitle: null,
dsunPhone: null,
constructionUnit: null,
constructionUnitPerson: null,
constructionUnitTitle: null,
constructionUnitPhone: null,
supervisionUnit: null,
supervisionUnitPerson: null,
supervisionUnitTitle: null,
supervisionUnitPhone: null,
otherUnit: null,
otherUnitType: null,
otherUnitPerson: null,
otherUnitTitle: null,
otherUnitPhone: null,
adcd: null,
proCode: null,
proNo: null,
createUid: null,
createTime: null,
updateUid: null,
updateTime: null,
owerDept: null,
},
};
this.resetForm("form");
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.resetQueryForm();
this.handleQuery();
},
//
handleSelectionChange(selection) {
this.ids = selection.map((item) => item.id);
this.single = selection.length !== 1;
this.multiple = !selection.length;
},
/** 新增按钮操作 */
handleAdd() {
this.reset();
this.open = true;
this.title = "添加参建企业信息管理";
},
/** 修改按钮操作 */
handleUpdate(row) {
this.reset();
const id = row.id || this.ids;
getInfo(id).then((response) => {
this.form = response.data;
this.open = true;
this.title = "修改参建企业信息管理";
});
},
//
viewInfo(row) {
this.viewTitle = "查看参建企业信息";
this.firmMsg = row;
console.log("firmMsg", row);
this.viewOpen = true;
},
//
closeView() {
this.firmMsg = {};
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate((valid) => {
if (valid) {
if (this.form.id != null) {
updateInfo(this.form).then((response) => {
if (response.code === 200) {
this.msgSuccess("修改成功");
this.open = false;
this.getList();
}
});
} else {
addInfo(this.form).then((response) => {
if (response.code === 200) {
this.msgSuccess("新增成功");
this.open = false;
this.getList();
}
});
}
}
});
},
/** 删除按钮操作 */
handleDelete(row) {
const ids = row.id || this.ids;
if (ids) {
this.$confirm("是否删除选中的数据?", "警告", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning",
})
.then(function () {
return delInfo(ids);
})
.then(() => {
this.getList();
this.msgSuccess("删除成功");
})
.catch(function () {});
} else {
this.$message.warning("请选择要删除的数据!!");
}
},
},
};
</script>
<style scoped lang="scss">
::v-deep {
.el-dialog {
margin-top: 2vh !important;
height: 95%;
overflow-y: auto;
.content {
display: flex;
flex-direction: column;
align-items: center;
.margin-top {
width: 95%;
border-left: 1px solid #f0f0f0;
border-right: 1px solid #f0f0f0;
}
}
}
.el-dialog__title {
font-weight: 700;
font-size: 28px;
// font-size: 24px;
// line-height: 32px;
}
.draLine {
width: 100%;
border: 2px solid #000;
margin: 10px 0 20px 0;
}
.infoTitle {
color: #000;
font-size: 20px;
font-weight: 700;
}
}
</style>

68
jwtech-admin-page/src/views/building/projectInfo/projectProcess/index.vue

@ -23,11 +23,12 @@
>
</el-page-header>
<el-tabs
<!-- <el-tabs
v-model="activeName"
@tab-click="handleClick"
style="height: 750px; margin-bottom: 20px"
>
> -->
<el-tabs v-model="activeName" style="margin-bottom: 20px">
<el-tab-pane label="项目基本信息" name="bidBasePage">
<baseMsg
:proNo="formData.proNo"
@ -36,45 +37,85 @@
/>
</el-tab-pane>
<el-tab-pane
label="资格预审公告"
name="PreQualificationPage"
label="参建企业信息"
name="firmInfo"
:disabled="!routeList[1].isEdit"
>
111
<!-- <PreQualificationPage :proNo="formData.proNo" /> -->
<firmInfo :proNo="formData.proNo" />
</el-tab-pane>
<el-tab-pane
label="招标公告"
name="TenderAnnouncementPage"
label="合同信息"
name="contract"
:disabled="!routeList[1].isEdit"
>
22
222
<!-- <TenderAnnouncementPage
:proNo="formData.proNo"
:projectName="formData.projectName"
/> -->
</el-tab-pane>
<el-tab-pane
label="中标候选人公示"
name="candidatePage"
label="施工准备"
name="preparationForConstruction"
:disabled="!routeList[1].isEdit"
>
333
<!-- <candidatePage :proNo="formData.proNo" /> -->
</el-tab-pane>
<el-tab-pane
label="中标结果"
name="winningResultPage"
label="质量管理"
name="qualityControl"
:disabled="!routeList[1].isEdit"
>
<!-- <winningResultPage :proNo="formData.proNo" /> -->
444
</el-tab-pane>
<el-tab-pane
label="设计变更信息"
name="designChangeInformation"
:disabled="!routeList[1].isEdit"
>
<!-- <winningResultPage :proNo="formData.proNo" /> -->
555
</el-tab-pane>
<el-tab-pane
label="进度管理"
name="scheduleManagement"
:disabled="!routeList[1].isEdit"
>
<!-- <winningResultPage :proNo="formData.proNo" /> -->
666
</el-tab-pane>
<el-tab-pane
label="监理管理"
name="supervisionAndManagement"
:disabled="!routeList[1].isEdit"
>
<!-- <winningResultPage :proNo="formData.proNo" /> -->
888
</el-tab-pane>
<el-tab-pane
label="项目法人评价"
name="projectLegalPersonEvaluation"
:disabled="!routeList[1].isEdit"
>
<!-- <winningResultPage :proNo="formData.proNo" /> -->
999
</el-tab-pane>
<el-tab-pane
label="投资落实"
name="investment"
:disabled="!routeList[1].isEdit"
>
<!-- <winningResultPage :proNo="formData.proNo" /> -->
10
</el-tab-pane>
</el-tabs>
</div>
</template>
<script>
import baseMsg from "./baseMsg.vue";
import firmInfo from "./firmInfo.vue";
import {
listInfo,
getInfo,
@ -88,6 +129,7 @@ import { getProjectinfo } from "@/api/earlyStage/projectinfo";
export default {
components: {
baseMsg,
firmInfo,
},
data() {
return {

54
jwtech-admin-page/src/views/project/plan/index.vue

@ -19,7 +19,7 @@
>
<el-form-item label="计划名称" prop="planName">
<el-input
v-model="queryParams.cv.value"
v-model="queryParams.data.planName"
placeholder="请输入计划名称"
clearable
size="small"
@ -50,6 +50,19 @@
/>
</el-select>
</el-form-item>
<el-form-item label="行政区划" prop="adcd">
<el-cascader
:options="areasOptions"
v-model="queryParams.data.adcd"
:props="areasOptionProps"
placeholder="请选择行政区划"
clearable
size="small"
style="width: 100%"
@change="handleQuery"
>
</el-cascader>
</el-form-item>
<el-form-item>
<!-- <el-button
type="cyan"
@ -237,11 +250,22 @@ import {
exportPlanInfo,
} from "@/api/earlyStage/PlanInfo";
import { listProjectinfo } from "@/api/earlyStage/projectinfo";
import { getAreasData } from "@/api/areas/index";
export default {
name: "PlanInfo",
data() {
return {
areasOptionProps: {
emitPath: false,
checkStrictly: true, //
// lazy: true,
// lazyLoad: function qylazyLoad(node) {
// // node.level = 5;
// console.log("node", node.level);
// },
},
areasOptions: [],
//
loading: true,
//
@ -295,6 +319,7 @@ export default {
};
},
created() {
this.getTreeData();
this.getList();
this.getDicts("project_plan_type").then((response) => {
this.planTypeOptions = response.data;
@ -304,6 +329,33 @@ export default {
});
},
methods: {
getTreeData() {
getAreasData().then((items) => {
// console.log("getAreasData", items.data);
let res = [];
let getChildren = (res, pid) => {
for (const i of items.data) {
if (i.parentid === pid) {
const newItem = {
label: i.name,
value: i.id,
};
if (i.layer != 3) newItem.children = [];
res.push(newItem);
getChildren(newItem.children, newItem.value);
}
}
};
getChildren(res, items.data[0].parentid);
console.log("areasOptions", res);
this.areasOptions = res;
// admin
// if (this.$userProfile.createUid != "admin") {
// this.queryParams.data.adcd = this.areasOptions[0].value;
// }
// return res;
});
},
//
isMajorFormat(row, column) {
return this.selectDictLabel(this.isMajorOptions, row.isMajor);

6
jwtech-admin-page/src/views/project/plan/options/planBasePage.vue

@ -34,7 +34,7 @@
:key="item.value"
:label="item.label"
:value="item.value"
@click.native="linkProject(item.proNo)"
@click.native="linkProject(item.proNo, item.adcd)"
>
</el-option>
</el-select>
@ -205,6 +205,7 @@ export default {
value: item.projectName,
label: item.projectName,
proNo: item.proNo,
adcd: item.adcd,
};
});
// console.log("this.list", this.list);
@ -246,8 +247,9 @@ export default {
// // console.log("value", value);
// this.baseMsg.proNo = value;
// },
linkProject(proNo) {
linkProject(proNo, adcd) {
this.baseMsg.proNo = proNo;
this.baseMsg.adcd = adcd;
},
//
cancel() {

61
jwtech-admin-page/src/views/project/preDesign/index.vue

@ -20,7 +20,7 @@
>
<el-form-item label="项目名称" prop="projectName">
<el-input
v-model="queryParams.cv.value"
v-model="queryParams.data.projectName"
placeholder="请输入项目名称"
clearable
size="small"
@ -35,6 +35,19 @@
></el-button>
</el-input>
</el-form-item>
<el-form-item label="行政区划" prop="adcd">
<el-cascader
:options="areasOptions"
v-model="queryParams.data.adcd"
:props="areasOptionProps"
placeholder="请选择行政区划"
clearable
size="small"
style="width: 100%"
@change="handleQuery"
>
</el-cascader>
</el-form-item>
<el-form-item>
<!-- <el-button
@ -490,11 +503,22 @@ import {
} from "@/api/earlyStage/proposal";
import { getToken } from "@/utils/auth";
import { getFileStream } from "@/api/system/upload";
import { getAreasData } from "@/api/areas/index";
export default {
name: "PreDesign",
data() {
return {
areasOptionProps: {
emitPath: false,
checkStrictly: true, //
// lazy: true,
// lazyLoad: function qylazyLoad(node) {
// // node.level = 5;
// console.log("node", node.level);
// },
},
areasOptions: [],
//
routeList: [
{
@ -584,6 +608,7 @@ export default {
};
},
created() {
this.getTreeData();
this.getList();
this.getDicts("CONSTRUCTION_NATURE").then((response) => {
//
@ -591,6 +616,39 @@ export default {
});
},
methods: {
getTreeData() {
getAreasData().then((items) => {
// console.log("getAreasData", items.data);
let res = [];
let getChildren = (res, pid) => {
for (const i of items.data) {
if (i.parentid === pid) {
const newItem = {
label: i.name,
value: i.id,
};
if (i.layer != 3) newItem.children = [];
res.push(newItem);
getChildren(newItem.children, newItem.value);
}
}
};
getChildren(res, items.data[0].parentid);
console.log("areasOptions", res);
this.areasOptions = res;
// admin
// if (this.$userProfile.createUid != "admin") {
// this.queryParams.data.adcd = this.areasOptions[0].value;
// }
// return res;
});
},
handleChange(value) {
//valuecode
if (value) {
console.log("value", value);
}
},
getId(res) {
// console.log(res)
getProposal(res.id).then((response) => {
@ -598,6 +656,7 @@ export default {
this.projectType = response.data.projectType;
this.proNo = response.data.proNo;
this.projectCode = response.data.projectCode;
this.form.adcd = response.data.adcd;
});
},
/** 查询初步设计管理列表 */

133
jwtech-admin-page/src/views/project/proposal/index.vue

@ -47,7 +47,19 @@
/>
</el-select>
</el-form-item>
<el-form-item label="行政区划" prop="adcd">
<el-cascader
:options="areasOptions"
v-model="queryParams.data.adcd"
:props="areasOptionProps"
placeholder="请选择行政区划"
clearable
size="small"
style="width: 100%"
@change="handleQuery"
>
</el-cascader>
</el-form-item>
<el-form-item>
<!-- <el-button
type="cyan"
@ -132,7 +144,7 @@
min-width="180"
/>
<el-table-column
label="项目类型"
label="规划类型"
align="center"
prop="projectType"
:formatter="projectTypeFormat"
@ -293,6 +305,7 @@
</el-form-item>
</el-col>
<el-col :span="12">
<!-- 不在规划内 -->
<el-form-item
label="项目名称"
prop="projectName"
@ -304,6 +317,7 @@
size="small"
></el-input>
</el-form-item>
<!-- 在规划内 -->
<el-form-item label="项目名称" prop="projectName" v-else>
<el-select
v-model="form.projectName"
@ -323,6 +337,40 @@
</el-select>
</el-form-item>
</el-col>
<!-- 不在规划内时 -->
<el-col :span="12" v-if="form.isBelongPlanning == '0'">
<el-form-item label="规划类型" prop="projectType">
<el-select
v-model="form.projectType"
placeholder="请选择活动区域"
style="width: 100%"
clearable
>
<el-option
v-for="dict in projectTypeOptions"
:key="dict.dictValue"
:label="dict.dictLabel"
:value="dict.dictValue"
></el-option>
</el-select>
</el-form-item>
</el-col>
<!-- 不在规划内时选择行政区划 -->
<el-col :span="12" v-if="form.isBelongPlanning == '0'">
<el-form-item label="行政区划" prop="adcd">
<el-cascader
:options="areasOptions"
v-model="form.adcd"
:props="areasOptionProps"
placeholder="请选择行政区划"
clearable
size="small"
style="width: 100%"
@change="handleChange"
>
</el-cascader>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="编制单位" prop="compilingUnit">
<el-input
@ -581,10 +629,21 @@ import {
import { getFileStream } from "@/api/system/upload";
import { getToken } from "@/utils/auth";
import { v4 as uuidv4 } from "uuid";
import { getAreasData } from "@/api/areas/index";
export default {
data() {
return {
areasOptionProps: {
emitPath: false,
checkStrictly: true, //
// lazy: true,
// lazyLoad: function qylazyLoad(node) {
// // node.level = 5;
// console.log("node", node.level);
// },
},
areasOptions: [],
//
multiple: true,
//
@ -592,11 +651,9 @@ export default {
//
single: true,
//id
proNo: "",
//
title: "",
viewTitle: "",
//
open: false,
viewOpen: false,
@ -633,6 +690,10 @@ export default {
approvalOpinion: [
{ required: true, message: "请输入批复意见", trigger: "blur" },
],
projectType: [
{ required: true, message: "请选择规划类型", trigger: "blur" },
],
adcd: [{ required: true, message: "请选择行政区划", trigger: "blur" }],
},
//
routeList: [
@ -682,13 +743,16 @@ export default {
],
//
opinionFileList: [],
//
projectType: "",
viewTitle: "",
// //
// projectType: "",
// //id
// proNo: "",
// adcd:"",
proposalMsg: {},
};
},
created() {
this.getTreeData();
this.getList();
this.getDicts("plan_type").then((response) => {
this.projectTypeOptions = response.data;
@ -698,6 +762,39 @@ export default {
});
},
methods: {
getTreeData() {
getAreasData().then((items) => {
// console.log("getAreasData", items.data);
let res = [];
let getChildren = (res, pid) => {
for (const i of items.data) {
if (i.parentid === pid) {
const newItem = {
label: i.name,
value: i.id,
};
if (i.layer != 3) newItem.children = [];
res.push(newItem);
getChildren(newItem.children, newItem.value);
}
}
};
getChildren(res, items.data[0].parentid);
console.log("areasOptions", res);
this.areasOptions = res;
// admin
// if (this.$userProfile.createUid != "admin") {
// this.queryParams.data.adcd = this.areasOptions[0].value;
// }
// return res;
});
},
handleChange(value) {
//valuecode
if (value) {
console.log("value", value);
}
},
clear() {
this.projectFileList = [];
this.opinionFileList = [];
@ -707,8 +804,9 @@ export default {
// console.log(res)
getProjectinfo(res.id).then((response) => {
// console.log(response.data)
this.projectType = response.data.projectType;
this.proNo = response.data.proNo;
this.form.projectType = response.data.projectType;
this.form.proNo = response.data.proNo;
this.form.adcd = response.data.adcd;
});
},
@ -861,10 +959,17 @@ export default {
this.form.approvalOpinionAttachment = JSON.stringify(
this.opinionFileList
);
// if (this.form.isBelongPlanning == "0") {
// this.form.adcd = this.form.adcd[this.form.adcd.length - 1];
// console.log(
// "this.form.adcd[this.form.adcd.length-1]",
// this.form.adcd
// );
// }
if (valid) {
if (this.form.id != null) {
this.form.proNo = this.proNo;
this.form.projectType = this.projectType;
// this.form.proNo = this.proNo;
// this.form.projectType = this.projectType;
updateProposal(this.form).then((response) => {
if (response.code === 200) {
this.msgSuccess("修改成功");
@ -873,8 +978,8 @@ export default {
}
});
} else {
this.form.proNo = this.proNo;
this.form.projectType = this.projectType;
// this.form.proNo = this.proNo;
// this.form.projectType = this.projectType;
if (this.form.isBelongPlanning == "0") {
// console.log("uuidv4()", uuidv4());
this.form.proNo = uuidv4();

64
jwtech-admin-page/src/views/project/report/index.vue

@ -16,7 +16,7 @@
<el-form :model="queryParams" :inline="true" label-width="68px">
<el-form-item label="项目名称" prop="projectName">
<el-input
v-model="queryParams.cv.value"
v-model="queryParams.data.projectName"
placeholder="请输入项目名称"
clearable
size="small"
@ -47,7 +47,19 @@
/>
</el-select>
</el-form-item>
<el-form-item label="行政区划" prop="adcd">
<el-cascader
:options="areasOptions"
v-model="queryParams.data.adcd"
:props="areasOptionProps"
placeholder="请选择行政区划"
clearable
size="small"
style="width: 100%"
@change="handleQuery"
>
</el-cascader>
</el-form-item>
<el-form-item>
<!-- <el-button
type="cyan"
@ -592,11 +604,22 @@ import {
import { getProjectinfo, listProjectinfo } from "@/api/earlyStage/projectinfo";
import { getFileStream } from "@/api/system/upload";
import { getToken } from "@/utils/auth";
import { getAreasData } from "@/api/areas/index";
export default {
name: "Feasibility",
data() {
return {
areasOptionProps: {
emitPath: false,
checkStrictly: true, //
// lazy: true,
// lazyLoad: function qylazyLoad(node) {
// // node.level = 5;
// console.log("node", node.level);
// },
},
areasOptions: [],
//
attachmentList: [],
//
@ -702,6 +725,7 @@ export default {
};
},
created() {
this.getTreeData();
this.getList();
this.getDicts("plan_type").then((response) => {
this.projectTypeOptions = response.data;
@ -711,6 +735,39 @@ export default {
});
},
methods: {
getTreeData() {
getAreasData().then((items) => {
// console.log("getAreasData", items.data);
let res = [];
let getChildren = (res, pid) => {
for (const i of items.data) {
if (i.parentid === pid) {
const newItem = {
label: i.name,
value: i.id,
};
if (i.layer != 3) newItem.children = [];
res.push(newItem);
getChildren(newItem.children, newItem.value);
}
}
};
getChildren(res, items.data[0].parentid);
console.log("areasOptions", res);
this.areasOptions = res;
// admin
// if (this.$userProfile.createUid != "admin") {
// this.queryParams.data.adcd = this.areasOptions[0].value;
// }
// return res;
});
},
handleChange(value) {
//valuecode
if (value) {
console.log("value", value);
}
},
getId(res) {
// console.log(res)
getProposal(res.id).then((response) => {
@ -719,6 +776,8 @@ export default {
this.proNo = response.data.proNo;
// console.log("this.proNo ", this.proNo);
this.projectCode = response.data.projectCode;
this.form.adcd = response.data.adcd;
// console.log(55555555, this.form.adcd);
});
},
clear() {
@ -859,6 +918,7 @@ export default {
const id = row.id || this.ids;
getFeasibility(id).then((response) => {
this.form = response.data;
console.log(99999, this.form);
//
if (response.data.feasibilityReportFile) {
this.fileList = JSON.parse(response.data.feasibilityReportFile);

14
jwtech-admin-page/src/views/project/special/index.vue

@ -21,7 +21,7 @@
>
<el-form-item label="项目名称" prop="projectName">
<el-input
v-model="queryParams.cv.value"
v-model="queryParams.data.projectName"
placeholder="请输入专题项目名称"
clearable
size="small"
@ -52,13 +52,12 @@
/>
</el-select>
</el-form-item>
<el-form-item label="规划所属区域" prop="adcd" label-width="120px">
<el-form-item label="行政区划" prop="adcd">
<el-cascader
ref="qyCascader"
:options="areasOptions"
v-model="queryParams.data.adcd"
:props="areasOptionProps"
placeholder="请输入规划所属区域"
placeholder="请选择行政区划"
clearable
size="small"
style="width: 100%"
@ -250,7 +249,7 @@ export default {
data() {
return {
areasOptionProps: {
emitPath: false,
emitPath: false, //value
checkStrictly: true, //
// lazy: true,
// lazyLoad: function qylazyLoad(node) {
@ -320,7 +319,6 @@ export default {
const newItem = {
label: i.name,
value: i.id,
layer: i.layer,
};
if (i.layer != 3) newItem.children = [];
res.push(newItem);
@ -331,6 +329,10 @@ export default {
getChildren(res, items.data[0].parentid);
console.log("areasOptions", res);
this.areasOptions = res;
// admin
// if (this.$userProfile.createUid != "admin") {
// this.queryParams.data.adcd = this.areasOptions[0].value;
// }
// return res;
});
},

17
jwtech-admin-page/src/views/project/special/options/basePage.vue

@ -35,12 +35,12 @@
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="规划所属区域" prop="adcd" label-width="120px">
<el-form-item label="行政区划" prop="adcd" label-width="120px">
<el-cascader
:options="areasOptions"
v-model="baseMsg.adcd"
:props="areasOptionProps"
placeholder="请输入规划所属区域"
placeholder="请选择行政区划"
clearable
size="small"
style="width: 100%"
@ -180,7 +180,7 @@ export default {
data() {
return {
areasOptionProps: {
emitPath: false,
// emitPath: false,
checkStrictly: true, //
},
//
@ -324,11 +324,7 @@ export default {
this.areasOptions,
this.baseMsg.adcd
);
// console.log(
// "this.baseMsg.adcd ",
// this.areasOptions,
// this.baseMsg.adcd
// );
console.log("this.baseMsg.adcd ", this.baseMsg.adcd);
}
console.log("formData in basePage", this.baseMsg);
@ -342,7 +338,8 @@ export default {
//
this.$refs.form.validate((valid) => {
if (valid) {
// this.baseMsg.adcd = this.baseMsg.adcd[this.baseMsg.adcd.length - 1];
this.baseMsg.adcd = this.baseMsg.adcd[this.baseMsg.adcd.length - 1];
console.log("表单提交时", this.baseMsg.adcd);
if (this.baseMsg.id != null) {
updateProjectinfo(this.baseMsg).then((response) => {
if (response.code === 200) {
@ -360,8 +357,8 @@ export default {
// this.getList();
}
});
this.$router.push("/project/special");
}
this.$router.push("/project/special");
}
});
},

331
jwtech-admin-page/src/views/system/dept/index.vue

@ -117,7 +117,7 @@
v-hasPermi="['system:dept:add']"
>新增</el-button
>
<!-- v-if="scope.row.parentId != 0 && scope.row.id != 'jwtech_youke_id'"-->
<!-- v-if="scope.row.parentId != 0 && scope.row.id != 'jwtech_youke_id'"-->
<el-button
size="mini"
type="text"
@ -200,7 +200,7 @@
<el-input v-model="form.deptName" placeholder="请输入单位名称" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-col :span="12">
<el-form-item label="显示排序" prop="orderNum">
<el-input-number
v-model="form.orderNum"
@ -209,8 +209,8 @@
/>
</el-form-item>
</el-col>
</el-row>
<el-row>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="前端名称" prop="name">
<el-input v-model="form.name" placeholder="请输入前端系统名称" />
@ -248,8 +248,21 @@
/>
</el-form-item>
</el-col>-->
<el-col :span="12">
<el-form-item label="行政区划" prop="xzqhId">
<el-cascader
:options="areasOptions"
v-model="form.xzqhId"
:props="areasOptionProps"
placeholder="请选择行政区划"
clearable
size="small"
style="width: 100%"
@change="handleChange"
>
</el-cascader>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="SLOGAN">
<el-input v-model="form.pcLogo" placeholder="请输入SLOGAN" />
@ -308,118 +321,118 @@
</el-col>
</el-row> -->
<!-- <el-row>-->
<!-- <el-col :span="12">-->
<!-- <el-form-item label="前端logo" prop="pcLogo">-->
<!-- <el-upload-->
<!-- v-model="form.pcLogo"-->
<!-- class="upload-demo"-->
<!-- ref="upload"-->
<!-- action="this.url"-->
<!-- :show-file-list="false"-->
<!-- :file-list="fileList"-->
<!-- :http-request="uploadPcLogo"-->
<!-- :before-upload="beforeUpload"-->
<!-- >-->
<!-- <el-button slot="trigger" size="small" type="primary"-->
<!-- >选取图片</el-button-->
<!-- >-->
<!-- <el-button-->
<!-- style="margin-left: 30px"-->
<!-- class="el-button el-button&#45;&#45;primary el-button&#45;&#45;small"-->
<!-- type="primary"-->
<!-- @click="deletePcLogo"-->
<!-- v-if="img.pcLogoUrl != undefined"-->
<!-- >删除图片</el-button-->
<!-- >-->
<!-- <div slot="tip" class="el-upload__tip">-->
<!-- 只能上传图片JPGPNG且不超过5MB-->
<!-- </div>-->
<!-- </el-upload>-->
<!-- <img-->
<!-- v-if="img.pcLogoUrl"-->
<!-- :src="img.pcLogoUrl"-->
<!-- class="avatar"-->
<!-- style="width: 200px; height: 124px"-->
<!-- />-->
<!-- <i v-else class="el-icon-plus avatar-uploader-icon"></i>-->
<!-- </el-form-item>-->
<!-- </el-col>-->
<!-- <el-row>-->
<!-- <el-col :span="12">-->
<!-- <el-form-item label="前端logo" prop="pcLogo">-->
<!-- <el-upload-->
<!-- v-model="form.pcLogo"-->
<!-- class="upload-demo"-->
<!-- ref="upload"-->
<!-- action="this.url"-->
<!-- :show-file-list="false"-->
<!-- :file-list="fileList"-->
<!-- :http-request="uploadPcLogo"-->
<!-- :before-upload="beforeUpload"-->
<!-- >-->
<!-- <el-button slot="trigger" size="small" type="primary"-->
<!-- >选取图片</el-button-->
<!-- >-->
<!-- <el-button-->
<!-- style="margin-left: 30px"-->
<!-- class="el-button el-button&#45;&#45;primary el-button&#45;&#45;small"-->
<!-- type="primary"-->
<!-- @click="deletePcLogo"-->
<!-- v-if="img.pcLogoUrl != undefined"-->
<!-- >删除图片</el-button-->
<!-- >-->
<!-- <div slot="tip" class="el-upload__tip">-->
<!-- 只能上传图片JPGPNG且不超过5MB-->
<!-- </div>-->
<!-- </el-upload>-->
<!-- <img-->
<!-- v-if="img.pcLogoUrl"-->
<!-- :src="img.pcLogoUrl"-->
<!-- class="avatar"-->
<!-- style="width: 200px; height: 124px"-->
<!-- />-->
<!-- <i v-else class="el-icon-plus avatar-uploader-icon"></i>-->
<!-- </el-form-item>-->
<!-- </el-col>-->
<!-- &lt;!&ndash; <el-col :span="8">-->
<!-- <el-form-item label="首页背景" prop="pcBackground">-->
<!-- <el-upload-->
<!-- v-model="form.pcBackground"-->
<!-- class="upload-demo"-->
<!-- ref="upload"-->
<!-- action="this.url"-->
<!-- :show-file-list="false"-->
<!-- :file-list="fileList"-->
<!-- :http-request="uploadPcBackground"-->
<!-- :before-upload="beforeUpload"-->
<!-- >-->
<!-- <el-button slot="trigger" size="small" type="primary"-->
<!-- >选取图片</el-button-->
<!-- >-->
<!-- <el-button-->
<!-- style="margin-left: 30px"-->
<!-- class="el-button el-button&#45;&#45;primary el-button&#45;&#45;small"-->
<!-- type="primary"-->
<!-- @click="deletePcBackground"-->
<!-- v-if="img.pcBackgroundUrl != undefined"-->
<!-- >删除图片</el-button-->
<!-- >-->
<!-- <div slot="tip" class="el-upload__tip">-->
<!-- 只能上传图片JPGPNG且不超过5MB-->
<!-- &lt;!&ndash; <el-col :span="8">-->
<!-- <el-form-item label="首页背景" prop="pcBackground">-->
<!-- <el-upload-->
<!-- v-model="form.pcBackground"-->
<!-- class="upload-demo"-->
<!-- ref="upload"-->
<!-- action="this.url"-->
<!-- :show-file-list="false"-->
<!-- :file-list="fileList"-->
<!-- :http-request="uploadPcBackground"-->
<!-- :before-upload="beforeUpload"-->
<!-- >-->
<!-- <el-button slot="trigger" size="small" type="primary"-->
<!-- >选取图片</el-button-->
<!-- >-->
<!-- <el-button-->
<!-- style="margin-left: 30px"-->
<!-- class="el-button el-button&#45;&#45;primary el-button&#45;&#45;small"-->
<!-- type="primary"-->
<!-- @click="deletePcBackground"-->
<!-- v-if="img.pcBackgroundUrl != undefined"-->
<!-- >删除图片</el-button-->
<!-- >-->
<!-- <div slot="tip" class="el-upload__tip">-->
<!-- 只能上传图片JPGPNG且不超过5MB-->
<!-- </el-upload>-->
<!-- <img-->
<!-- v-if="img.pcBackgroundUrl"-->
<!-- :src="img.pcBackgroundUrl"-->
<!-- class="avatar"-->
<!-- style="width: 200px; height: 124px"-->
<!-- />-->
<!-- <i v-else class="el-icon-plus avatar-uploader-icon"></i>-->
<!-- </el-form-item> &ndash;&gt;-->
<!-- </el-col>-->
<!-- </el-upload>-->
<!-- <img-->
<!-- v-if="img.pcBackgroundUrl"-->
<!-- :src="img.pcBackgroundUrl"-->
<!-- class="avatar"-->
<!-- style="width: 200px; height: 124px"-->
<!-- />-->
<!-- <i v-else class="el-icon-plus avatar-uploader-icon"></i>-->
<!-- </el-form-item> &ndash;&gt;-->
<!-- </el-col>-->
<!-- <el-col :span="12">-->
<!-- <el-form-item label="后端logo" prop="adminLogo">-->
<!-- <el-upload-->
<!-- v-model="form.adminLogo"-->
<!-- class="upload-demo"-->
<!-- ref="upload"-->
<!-- action="this.url"-->
<!-- :show-file-list="false"-->
<!-- :file-list="fileList"-->
<!-- :http-request="uploadAdminLogo"-->
<!-- :before-upload="beforeUpload"-->
<!-- >-->
<!-- <el-button slot="trigger" size="small" type="primary"-->
<!-- >选取图片</el-button-->
<!-- >-->
<!-- <el-button-->
<!-- style="margin-left: 30px"-->
<!-- class="el-button el-button&#45;&#45;primary el-button&#45;&#45;small"-->
<!-- type="primary"-->
<!-- @click="deleteAdminLogo"-->
<!-- v-if="img.adminLogoUrl != undefined"-->
<!-- >删除图片</el-button-->
<!-- >-->
<!-- <div slot="tip" class="el-upload__tip">-->
<!-- 只能上传图片JPGPNG且不超过5MB-->
<!-- </div>-->
<!-- </el-upload>-->
<!-- <img-->
<!-- v-if="img.adminLogoUrl"-->
<!-- :src="img.adminLogoUrl"-->
<!-- class="avatar"-->
<!-- style="width: 200px; height: 124px"-->
<!-- />-->
<!-- <i v-else class="el-icon-plus avatar-uploader-icon"></i>-->
<!-- </el-form-item>-->
<!-- </el-col>-->
<!-- </el-row>-->
<!-- <el-col :span="12">-->
<!-- <el-form-item label="后端logo" prop="adminLogo">-->
<!-- <el-upload-->
<!-- v-model="form.adminLogo"-->
<!-- class="upload-demo"-->
<!-- ref="upload"-->
<!-- action="this.url"-->
<!-- :show-file-list="false"-->
<!-- :file-list="fileList"-->
<!-- :http-request="uploadAdminLogo"-->
<!-- :before-upload="beforeUpload"-->
<!-- >-->
<!-- <el-button slot="trigger" size="small" type="primary"-->
<!-- >选取图片</el-button-->
<!-- >-->
<!-- <el-button-->
<!-- style="margin-left: 30px"-->
<!-- class="el-button el-button&#45;&#45;primary el-button&#45;&#45;small"-->
<!-- type="primary"-->
<!-- @click="deleteAdminLogo"-->
<!-- v-if="img.adminLogoUrl != undefined"-->
<!-- >删除图片</el-button-->
<!-- >-->
<!-- <div slot="tip" class="el-upload__tip">-->
<!-- 只能上传图片JPGPNG且不超过5MB-->
<!-- </div>-->
<!-- </el-upload>-->
<!-- <img-->
<!-- v-if="img.adminLogoUrl"-->
<!-- :src="img.adminLogoUrl"-->
<!-- class="avatar"-->
<!-- style="width: 200px; height: 124px"-->
<!-- />-->
<!-- <i v-else class="el-icon-plus avatar-uploader-icon"></i>-->
<!-- </el-form-item>-->
<!-- </el-col>-->
<!-- </el-row>-->
<!-- <el-row>
<el-col :span="8">
@ -539,7 +552,7 @@ import Treeselect from "@riophae/vue-treeselect";
import "@riophae/vue-treeselect/dist/vue-treeselect.css";
import { getFile } from "@/api/common";
import { getAreasData } from "@/api/areas/index";
import myaxios from "axios";
@ -553,11 +566,21 @@ export default {
components: { Treeselect },
data() {
return {
areasOptionProps: {
emitPath: false,
checkStrictly: true, //
// lazy: true,
// lazyLoad: function qylazyLoad(node) {
// // node.level = 5;
// console.log("node", node.level);
// },
},
areasOptions: [],
uploadForm: new FormData(),
fileList: [],
list: [],
dataTypes:[],
dataType:[],
dataTypes: [],
dataType: [],
pcLogoUrl: "", // Logo
pcBackgroundUrl: "", //
adminLogoUrl: "", // Logo
@ -637,6 +660,9 @@ export default {
trigger: "blur",
},
],
xzqhId: [
{ required: true, message: "行政区划不能为空", trigger: "blur" },
],
},
//
checkTags: false,
@ -645,11 +671,12 @@ export default {
};
},
created() {
this.getTreeData();
this.getList();
this.getDicts("sys_normal_disable").then((response) => {
this.statusOptions = response.data;
});
this.getDicts('characteristic_type').then((response) => {
this.getDicts("characteristic_type").then((response) => {
this.dataTypes = response.data;
});
this.getDicts("sys_notice_status").then((response) => {
@ -669,12 +696,45 @@ export default {
// });
},
methods: {
handleRouter(path,row) {
getTreeData() {
getAreasData().then((items) => {
// console.log("getAreasData", items.data);
let res = [];
let getChildren = (res, pid) => {
for (const i of items.data) {
if (i.parentid === pid) {
const newItem = {
label: i.name,
value: i.id,
};
if (i.layer != 3) newItem.children = [];
res.push(newItem);
getChildren(newItem.children, newItem.value);
}
}
};
getChildren(res, items.data[0].parentid);
console.log("areasOptions", res);
this.areasOptions = res;
// admin
// if (this.$userProfile.createUid != "admin") {
// this.queryParams.data.adcd = this.areasOptions[0].value;
// }
// return res;
});
},
handleChange(value) {
//valuecode
if (value) {
console.log("value", value);
}
},
handleRouter(path, row) {
this.$router.push({
path: path,
query: {
deptId: row.id,
name:row.deptName
name: row.deptName,
},
});
},
@ -815,10 +875,16 @@ export default {
this.loading = true;
listDept(this.queryParams).then((response) => {
// id, parentId, children, rootId
if(this.queryParams.deptName || this.queryParams.status){
if (this.queryParams.deptName || this.queryParams.status) {
this.deptList = response.data;
}else{
this.deptList = this.handleTree(response.data, "id","parentId","children","0");
} else {
this.deptList = this.handleTree(
response.data,
"id",
"parentId",
"children",
"0"
);
}
this.loading = false;
});
@ -876,9 +942,9 @@ export default {
menuIds: [],
tags: [],
dataSources: [],
dataType:null,
beginDate:null,
endDate:null,
dataType: null,
beginDate: null,
endDate: null,
status: "0",
};
this.resetForm("form");
@ -965,6 +1031,7 @@ export default {
const pcMenu = this.getDeptList(row.id);
getDept(row.id).then((response) => {
this.form = response.data;
console.log("this.form ", this.form);
var pcLogo = response.data.pcLogo;
var pcBackground = response.data.pcBackground;
var adminLogo = response.data.adminLogo;
@ -982,8 +1049,8 @@ export default {
if (adminLogo != null && adminLogo != "" && adminLogo != undefined) {
getFile(adminLogo, this.img, "adminLogoUrl"); // Logo
}
if(this.form.dataType){
this.dataType = this.form.dataType.split(",");
if (this.form.dataType) {
this.dataType = this.form.dataType.split(",");
}
this.open = true;
this.title = "修改单位";
@ -1006,11 +1073,13 @@ export default {
},
/** 提交按钮 */
submitForm: function () {
return this.$refs["queryForm"].validate((valid) => {
return this.$refs["form"].validate((valid) => {
if (valid) {
if(this.dataType){
if (this.dataType) {
this.form.dataType = this.dataType.join(",");
}
// console.log("this.form.xzqhId", this.form.xzqhId);
// this.form.xzqhId = this.form.xzqhId[this.form.xzqhId.length - 1];
if (this.form.id != undefined) {
if (this.form.parentId != 0) {
// this.form.menuIds = this.getPcMenuAllCheckedKeys();

Loading…
Cancel
Save