flx:修改项目基本信息

This commit is contained in:
Rain_ 2025-11-17 14:32:32 +08:00
parent b378583fc8
commit d6cd8d2ed5
5 changed files with 5748 additions and 418 deletions

View File

@ -365,7 +365,7 @@ export default {
//
client.on("message", (topic, message) => {
// console.log(message);
console.log("收到来自", topic, "的消息", message.toString());
console.log("收到来自", topic, "的消息", JSON.parse(message));
message = JSON.parse(message);
// if(message.content){
// if(message.content.indexOf("") > -1 || message.content.indexOf("") > -1){

View File

@ -634,7 +634,7 @@
:model="addProjectForm"
ref="addProjectForm"
:rules="addProjectFormRules"
label-width="120px"
label-width="130px"
class="dialogFormBox big"
:inline="true"
>
@ -676,7 +676,7 @@
:placeholder="$t('message.companyDiagram.PleaseEnter')"
></el-input>
</el-form-item>
<el-form-item
<!-- <el-form-item
:label="
$t('message.companyDiagram.dialog_ProjectPop_up.projectManage')
"
@ -686,6 +686,12 @@
v-model="addProjectForm.projectManage"
:placeholder="$t('message.companyDiagram.PleaseEnter')"
></el-input>
</el-form-item> -->
<el-form-item label="项目/场站负责人" prop="projectSiteManager">
<el-input
v-model="addProjectForm.projectSiteManager"
:placeholder="$t('message.companyDiagram.PleaseEnter')"
></el-input>
</el-form-item>
<el-form-item
:label="
@ -720,7 +726,7 @@
>
<el-input v-model="addProjectForm.latitude" disabled></el-input>
</el-form-item>
<el-form-item
<!-- <el-form-item
:label="
$t('message.companyDiagram.dialog_ProjectPop_up.projectNumber')
"
@ -846,7 +852,7 @@
:value="Number(item.data)"
></el-option>
</el-select>
</el-form-item>
</el-form-item> -->
<!-- <el-form-item
:label="
$t(
@ -867,7 +873,7 @@
></el-option>
</el-select>
</el-form-item> -->
<el-form-item
<!-- <el-form-item
:label="
$t('message.companyDiagram.dialog_ProjectPop_up.saleAcreage')
"
@ -904,7 +910,7 @@
$t('message.companyDiagram.dialog_ProjectPop_up.placeholder')
"
></el-input>
</el-form-item>
</el-form-item> -->
<!-- 云联万物项目新增字段 -->
<el-form-item
v-if="COMPANY == 'yunlian'"
@ -950,7 +956,7 @@
></el-input>
</el-form-item>
<el-form-item :label="'是否重点工程'" prop="majorProjectType">
<!-- <el-form-item :label="'是否重点工程'" prop="majorProjectType">
<div style="width: 280px">
<el-radio v-model="addProjectForm.majorProjectType" :label="1"
></el-radio
@ -959,8 +965,36 @@
></el-radio
>
</div>
</el-form-item>
</el-form-item> -->
<el-form-item label="新能源类型" prop="renewableEnergyType">
<el-input
v-model="addProjectForm.renewableEnergyType"
:placeholder="$t('message.companyDiagram.PleaseEnter')"
></el-input>
</el-form-item>
<el-form-item label="装机容量(万kW)" prop="installedCapacity">
<el-input
v-model="addProjectForm.installedCapacity"
:placeholder="$t('message.companyDiagram.PleaseEnter')"
></el-input>
</el-form-item>
<el-form-item :label="'是否配储'" prop="storageRequired">
<div style="width: 280px">
<el-radio v-model="addProjectForm.storageRequired" :label="1"
></el-radio
>
<el-radio v-model="addProjectForm.storageRequired" :label="0"
></el-radio
>
</div>
</el-form-item>
<el-form-item label="配储容量" prop="capacity">
<el-input
v-model="addProjectForm.capacity"
:placeholder="$t('message.companyDiagram.PleaseEnter')"
></el-input>
</el-form-item>
<el-form-item
v-if="projectType2 == 'hengqin'"
:label="'id'"
@ -971,12 +1005,7 @@
:placeholder="$t('message.companyDiagram.PleaseEnter')"
></el-input>
</el-form-item>
<el-form-item
:label="
$t('message.companyDiagram.dialog_ProjectPop_up.layoutImage')
"
prop="layoutImage"
>
<el-form-item label="项目配图" prop="layoutImage">
<el-upload
class="avatar-uploader"
:action="$store.state.UPLOADURL"
@ -995,7 +1024,7 @@
<i v-else class="el-icon-plus avatar-uploader-icon"></i>
</el-upload>
</el-form-item>
<el-form-item
<!-- <el-form-item
label="项目图标"
prop="projectIcon"
>
@ -1016,7 +1045,7 @@
</div>
<i v-else class="el-icon-plus avatar-uploader-icon"></i>
</el-upload>
</el-form-item>
</el-form-item> -->
<div class="dialog-footer">
<el-button
class="cancleBtn"
@ -1609,6 +1638,11 @@ export default {
constructionPermit: "",
streetTownshipTownCode: "",
streetTownshipTown: "",
projectSiteManager: "",
renewableEnergyType: "",
installedCapacity: "",
storageRequired: 0,
capacity: "",
},
addProjectFormRules: {
streetTownshipTown: [
@ -1653,6 +1687,27 @@ export default {
trigger: "blur",
},
],
projectSiteManager: [
{
required: true,
message: this.$t("message.companyDiagram.required"),
trigger: "blur",
},
],
renewableEnergyType: [
{
required: true,
message: this.$t("message.companyDiagram.required"),
trigger: "blur",
},
],
installedCapacity: [
{
required: true,
message: this.$t("message.companyDiagram.required"),
trigger: "blur",
},
],
projectManage: [
{
required: true,
@ -3412,7 +3467,10 @@ export default {
}
this.$refs["addAccountForm"].validate((valid) => {
const showPassword = isMaskedData(this.addAccountForm.showPassword) && this.addAccountForm.showPassword === this.oldAddAccountForm.showPassword
const showPassword =
isMaskedData(this.addAccountForm.showPassword) &&
this.addAccountForm.showPassword ===
this.oldAddAccountForm.showPassword;
if (showPassword || valid) {
//
const sensitiveFields = ["userTel", "showPassword"];
@ -3421,7 +3479,7 @@ export default {
this.oldAddAccountForm,
sensitiveFields
);
console.log(processedData)
console.log(processedData);
if (this.isAdd) {
addSystemUserApi(this.addAccountForm).then((res) => {
this.addAccountDialog = false;
@ -3594,20 +3652,26 @@ export default {
console.log("编辑页有值吗", item);
this.projectDialogTitle = this.$t("message.companyDiagram.editProject"); //
this.isAdd = false;
this.addProjectForm = JSON.parse(JSON.stringify({
this.addProjectForm = JSON.parse(
JSON.stringify({
...item,
projectIcon: item.projectIcon ? item.projectIcon : "",
}));
})
);
this.addProjectDialog = true;
this.$nextTick(() => {
setTimeout(() => {
this.$refs["addProjectForm"].clearValidate();
this.$refs.cascader.$refs.panel.activePath = [];
if (item.areaCode) {
this.provincesCityArr = [
item.provincesCode,
item.cityCode,
item.areaCode,
];
} else {
this.provincesCityArr = [item.provincesCode, item.cityCode];
}
}, 200);
});
},
@ -3674,7 +3738,7 @@ export default {
console.log(val);
this.addProjectForm.provincesCode = val[0];
this.addProjectForm.cityCode = val[1];
this.addProjectForm.areaCode = val[2];
this.addProjectForm.areaCode = val[2] || "";
},
// handleRemove(){
// this.addProjectForm.layoutImage=''
@ -3968,7 +4032,7 @@ export default {
}
/deep/ .projectDialog .el-dialog {
margin-top: 20px !important;
// margin-top: 20px !important;
margin-bottom: 0;
.el-input--medium .el-input__inner {
// height: 65px;

File diff suppressed because it is too large Load Diff

View File

@ -22,22 +22,25 @@
</el-button>
<!-- 编辑 -->
<el-button
v-permission="{key: 'xmjbxx_edit', menuPath: '/project/summary/baseInfo'}"
v-permission="{
key: 'xmjbxx_edit',
menuPath: '/project/summary/baseInfo',
}"
type="primary"
size="medium"
@click="addProjectDialog = true"
>{{ $t('message.companyDiagram.Table.edit') }}</el-button
>{{ $t("message.companyDiagram.Table.edit") }}</el-button
>
<!-- <el-button type="primary" size="medium">{{$t('message.companyDiagram.projectSchedule')}}</el-button> -->
</div>
<div>
<div class="custom_tab">
<div class="title">{{ $t('message.companyDiagram.sheet') }}</div>
<div class="title">{{ $t("message.companyDiagram.sheet") }}</div>
<div class="flex4">
<div class="type_content" style="z-index: 2">
<div class="flex3">
<span class="width_35">{{
$t('message.companyDiagram.entryName1')
$t("message.companyDiagram.entryName1")
}}</span>
<span class="width_65" style="white-space: nowrap">{{
projectDetail.projectName
@ -45,7 +48,7 @@
</div>
<div class="flex3">
<span class="width_35">{{
$t('message.companyDiagram.Table.projectAddress')
$t("message.companyDiagram.Table.projectAddress")
}}</span>
<span class="width_65 bg_color" style="white-space: nowrap">{{
projectDetail.projectAddress
@ -54,15 +57,15 @@
<div class="flex3">
<span class="width_35">{{
$t(
'message.companyDiagram.dialog_ProjectPop_up.provincesCode'
"message.companyDiagram.dialog_ProjectPop_up.provincesCode"
)
}}</span>
<span class="width_65"
>{{ projectDetail.provinceName
}}{{projectDetail.cityName}}{{ projectDetail.areaName }}</span
>{{ projectDetail.provinceName }}{{ projectDetail.cityName
}}{{ projectDetail.areaName }}</span
>
</div>
<div class="flex3">
<!-- <div class="flex3">
<span class="width_35">{{
$t(
'message.companyDiagram.dialog_ProjectPop_up.projectManage'
@ -71,67 +74,33 @@
<span class="width_65 bg_color">{{
projectDetail.projectManage
}}</span>
</div> -->
<div class="flex3">
<span class="width_35">项目/场站负责人</span>
<span class="width_65 bg_color">{{
projectDetail.projectSiteManager
}}</span>
</div>
<div class="flex3">
<span class="width_35">{{
$t('message.companyDiagram.dialog_ProjectPop_up.longitude')
$t("message.companyDiagram.dialog_ProjectPop_up.longitude")
}}</span>
<span class="width_65">{{ projectDetail.longitude }}</span>
</div>
<div class="flex3">
<span class="width_35">{{
$t(
'message.companyDiagram.dialog_ProjectPop_up.projectNumber'
)
}}</span>
<span class="width_65 bg_color">{{
projectDetail.projectNumber
<span class="width_35">装机容量(万kW)</span>
<span class="width_65">{{
projectDetail.installedCapacity
}}</span>
</div>
<div class="flex3">
<span class="width_35">{{
$t(
'message.companyDiagram.dialog_ProjectPop_up.projectAcreage'
)
}}</span>
<span class="width_65"
>{{ projectDetail.projectAcreage }}()</span
>
</div>
<div class="flex3">
<span class="width_35">{{
$t(
'message.companyDiagram.dialog_ProjectPop_up.startWorkDate'
)
}}</span>
<span class="width_65 bg_color">{{
projectDetail.startWorkDate
}}</span>
</div>
<div class="flex3">
<span class="width_35">{{
$t('message.companyDiagram.dialog_ProjectPop_up.saleAcreage')
}}</span>
<span class="width_65">{{ projectDetail.saleAcreage }}</span>
</div>
<div class="flex3">
<span class="width_35">{{
$t('message.companyDiagram.dialog_ProjectPop_up.buildingNum')
}}</span>
<span class="width_65 bg_color">{{
projectDetail.buildingNum
}}</span>
</div>
<div class="flex3">
<span class="width_35">{{
$t('message.companyDiagram.dialog_ProjectPop_up.projectTel')
}}</span>
<span class="width_65">{{ projectDetail.projectTel }}</span>
<span class="width_35">配储容量</span>
<span class="width_65">{{ projectDetail.capacity }}()</span>
</div>
<div class="flex3">
<span class="width_35">
<!-- 项目唯一标识(SN) -->
{{ $t('message.projectInfo.projectOnlyMark') }}
{{ $t("message.projectInfo.projectOnlyMark") }}
</span>
<span class="width_65 bg_color" style="white-space: nowrap">{{
projectDetail.projectSn
@ -156,85 +125,26 @@
</div>
<div class="flex3">
<span class="width_35 border_l">{{
$t('message.companyDiagram.dialog_ProjectPop_up.latitude')
$t("message.companyDiagram.dialog_ProjectPop_up.latitude")
}}</span>
<span class="width_65 bg_color">{{
projectDetail.latitude
}}</span>
</div>
<div class="flex3">
<span class="width_35 border_l">{{
$t('message.companyDiagram.dialog_ProjectPop_up.projectType')
<span class="width_35 border_l">新能源类型</span>
<span class="width_65">{{
projectDetail.renewableEnergyType
}}</span>
<span
class="width_65"
v-for="(item, index) in projectTypeList"
:key="index"
v-if="projectDetail.projectType == item.data"
>{{ item.name }}</span
>
</div>
<div class="flex3">
<span class="width_35 border_l">{{
$t(
'message.companyDiagram.dialog_ProjectPop_up.structureType'
)
<span class="width_35 border_l">是否配储</span>
<span class="width_65">{{
projectDetail.storageRequired == 1 ? "是" : "否"
}}</span>
<span
class="width_65 bg_color"
v-for="(item, index) in structureTypeList"
:key="index"
v-if="projectDetail.structureType == item.data"
>{{ item.name }}</span
>
</div>
<div class="flex3">
<span class="width_35 border_l">{{
$t('message.companyDiagram.dialog_ProjectPop_up.bulidStatus')
}}</span>
<span
class="width_65"
v-for="(item, index) in $t(
'message.companyDiagram.BUILDSTATUS'
)"
:key="index"
v-if="projectDetail.bulidStatus == item.id"
>{{ item.name }}</span
>
</div>
<div class="flex3">
<span class="width_35 border_l">{{
$t(
'message.companyDiagram.dialog_ProjectPop_up.constructionStage'
)
}}</span>
<span
class="width_65 bg_color"
v-for="(item, index) in constructionStageList"
:key="item.data"
v-if="projectDetail.constructionStage == item.data"
>{{ item.name }}</span
>
<!-- <span
class="width_65 bg_color"
v-for="(item, index) in $t(
'message.companyDiagram.CONSTRUCTIONSTAGE'
)"
:key="index"
v-if="projectDetail.constructionStage == item.id"
>{{ item.name }}</span
> -->
</div>
<div class="flex3">
<span class="width_35 border_l">{{
$t('message.companyDiagram.dialog_ProjectPop_up.households')
}}</span>
<span class="width_65">{{ projectDetail.households }}</span>
</div>
<div class="flex3">
<span class="width_35 border_l">{{
$t('message.companyDiagram.dialog_ProjectPop_up.layoutImage')
}}</span>
<span class="width_35 border_l">项目配图</span>
<span class="width_65 bg_color">
<img
:src="projectDetail.layoutImage"
@ -245,13 +155,13 @@
cursor: pointer;
"
@click="
bigImageDialog = true
bigImageUrl = projectDetail.layoutImage
bigImageDialog = true;
bigImageUrl = projectDetail.layoutImage;
"
/>
</span>
</div>
<div class="flex3">
<!-- <div class="flex3">
<span class="width_35 border_l" style="height: 44px">{{
$t('message.companyDiagram.dialog_ProjectPop_up.shopDrawing')
}}</span>
@ -270,7 +180,7 @@
"
/>
</span>
</div>
</div> -->
<div class="flex3" style="background: rgba(235, 234, 234, 0.5)">
<span class="width_35"> </span>
<span class="width_65" style="white-space: nowrap"></span>
@ -296,7 +206,7 @@
:model="addProjectForm"
ref="addProjectForm"
:rules="addProjectFormRules"
label-width="120px"
label-width="130px"
class="dialogFormBox big"
:inline="true"
>
@ -338,14 +248,9 @@
:placeholder="$t('message.companyDiagram.PleaseEnter')"
></el-input>
</el-form-item>
<el-form-item
:label="
$t('message.companyDiagram.dialog_ProjectPop_up.projectManage')
"
prop="projectManage"
>
<el-form-item label="项目/场站负责人" prop="projectSiteManager">
<el-input
v-model="addProjectForm.projectManage"
v-model="addProjectForm.projectSiteManager"
:placeholder="$t('message.companyDiagram.PleaseEnter')"
></el-input>
</el-form-item>
@ -372,7 +277,7 @@
<template slot="append">
<el-link type="primary" @click="toGetLocalFn">{{
$t(
'message.companyDiagram.dialog_ProjectPop_up.coordinatePicking'
"message.companyDiagram.dialog_ProjectPop_up.coordinatePicking"
)
}}</el-link>
</template>
@ -388,208 +293,36 @@
:disabled="true"
></el-input>
</el-form-item>
<el-form-item
:label="
$t('message.companyDiagram.dialog_ProjectPop_up.projectNumber')
"
prop="projectNumber"
>
<el-form-item label="新能源类型" prop="renewableEnergyType">
<el-input
v-model="addProjectForm.projectNumber"
v-model="addProjectForm.renewableEnergyType"
:placeholder="$t('message.companyDiagram.PleaseEnter')"
></el-input>
</el-form-item>
<el-form-item
:label="
$t('message.companyDiagram.dialog_ProjectPop_up.projectType')
"
prop="projectType"
>
<el-select
v-model="addProjectForm.projectType"
:placeholder="$t('message.companyDiagram.PleaseSelect')"
>
<el-option
v-for="item in projectTypeList"
:key="item.data"
:label="item.name"
:value="Number(item.data)"
></el-option>
</el-select>
</el-form-item>
<el-form-item
:label="
$t(
'message.companyDiagram.dialog_ProjectPop_up.engineeringPurpose'
)
"
prop="engineeringPurpose"
>
<el-select
v-model="addProjectForm.engineeringPurpose"
:placeholder="$t('message.companyDiagram.PleaseSelect')"
>
<el-option
v-for="item in $t('message.companyDiagram.ENGINEERINGPRUPOSE')"
:key="item.id"
:label="item.name"
:value="item.id"
></el-option>
</el-select>
</el-form-item>
<el-form-item
:label="
$t('message.companyDiagram.dialog_ProjectPop_up.structureType')
"
prop="structureType"
>
<el-select
v-model="addProjectForm.structureType"
:placeholder="$t('message.companyDiagram.PleaseSelect')"
>
<el-option
v-for="item in structureTypeList"
:key="item.data"
:label="item.name"
:value="Number(item.data)"
></el-option>
</el-select>
</el-form-item>
<el-form-item
:label="
$t('message.companyDiagram.dialog_ProjectPop_up.projectAcreage')
"
prop="projectAcreage"
>
<el-form-item label="装机容量(万kW)" prop="installedCapacity">
<el-input
v-model="addProjectForm.projectAcreage"
v-model="addProjectForm.installedCapacity"
:placeholder="$t('message.companyDiagram.PleaseEnter')"
type="number"
></el-input>
</el-form-item>
<el-form-item
:label="
$t('message.companyDiagram.dialog_ProjectPop_up.bulidStatus')
"
prop="bulidStatus"
>
<el-select
v-model="addProjectForm.bulidStatus"
:placeholder="$t('message.companyDiagram.PleaseSelect')"
>
<el-option
v-for="item in $t('message.companyDiagram.BUILDSTATUS')"
:key="item.id"
:label="item.name"
:value="item.id"
></el-option>
</el-select>
</el-form-item>
<el-form-item
:label="
$t('message.companyDiagram.dialog_ProjectPop_up.startWorkDate')
"
prop="startWorkDate"
>
<el-date-picker
v-model="addProjectForm.startWorkDate"
type="date"
:placeholder="
$t(
'message.companyDiagram.dialog_ProjectPop_up.date_placeholder'
)
"
value-format="yyyy-MM-dd"
></el-date-picker>
</el-form-item>
<el-form-item
:label="
$t(
'message.companyDiagram.dialog_ProjectPop_up.constructionStage'
)
"
prop="constructionStage"
>
<el-select
v-model="addProjectForm.constructionStage"
:placeholder="$t('message.companyDiagram.PleaseSelect')"
>
<el-option
v-for="item in constructionStageList"
:key="item.data"
:label="item.name"
:value="Number(item.data)"
></el-option>
<!-- <el-option
v-for="item in $t('message.companyDiagram.CONSTRUCTIONSTAGE')"
:key="item.id"
:label="item.name"
:value="item.id"
></el-option> -->
</el-select>
</el-form-item>
<el-form-item
:label="
$t('message.companyDiagram.dialog_ProjectPop_up.saleAcreage')
"
prop="saleAcreage"
>
<el-input
v-model="addProjectForm.saleAcreage"
:placeholder="$t('message.companyDiagram.PleaseEnter')"
type="number"
></el-input>
</el-form-item>
<el-form-item
:label="
$t('message.companyDiagram.dialog_ProjectPop_up.households')
"
prop="households"
>
<el-input
v-model.number="addProjectForm.households"
:placeholder="
$t('message.companyDiagram.dialog_ProjectPop_up.placeholder')
"
></el-input>
</el-form-item>
<el-form-item
:label="
$t('message.companyDiagram.dialog_ProjectPop_up.buildingNum')
"
prop="buildingNum"
>
<el-input
v-model.number="addProjectForm.buildingNum"
:placeholder="
$t('message.companyDiagram.dialog_ProjectPop_up.placeholder')
"
></el-input>
</el-form-item>
<!-- 是否重点工程 -->
<el-form-item
:label="$t('message.projectInfo.isImportanceProject')"
prop="majorProjectType"
>
<el-form-item :label="'是否配储'" prop="storageRequired">
<div style="width: 280px">
<el-radio v-model="addProjectForm.majorProjectType" :label="1">
<!-- -->
{{ $t('message.projectInfo.is') }}
</el-radio>
<el-radio v-model="addProjectForm.majorProjectType" :label="0">
{{ $t('message.projectInfo.isNot') }}
<!-- -->
</el-radio>
<el-radio v-model="addProjectForm.storageRequired" :label="1"
></el-radio
>
<el-radio v-model="addProjectForm.storageRequired" :label="0"
></el-radio
>
</div>
</el-form-item>
<el-form-item label="配储容量" prop="capacity">
<el-input
v-model="addProjectForm.capacity"
:placeholder="$t('message.companyDiagram.PleaseEnter')"
></el-input>
</el-form-item>
<br />
<el-form-item
:label="
$t('message.companyDiagram.dialog_ProjectPop_up.layoutImage')
"
prop="layoutImage"
>
<el-form-item label="项目配图" prop="layoutImage">
<div style="width: 280px">
<el-upload
class="avatar-uploader"
@ -610,7 +343,7 @@
</el-upload>
</div>
</el-form-item>
<el-form-item
<!-- <el-form-item
:label="
$t('message.companyDiagram.dialog_ProjectPop_up.shopDrawing')
"
@ -633,21 +366,21 @@
</div>
<i v-else class="el-icon-plus avatar-uploader-icon"></i>
</el-upload>
</el-form-item>
</el-form-item> -->
<div class="dialog-footer">
<el-button
class="cancleBtn"
@click="addProjectDialog = false"
icon="el-icon-circle-close"
size="medium"
>{{ $t('message.companyDiagram.cancel') }}</el-button
>{{ $t("message.companyDiagram.cancel") }}</el-button
>
<el-button
type="primary"
icon="el-icon-circle-check"
@click="saveProjectFn"
size="medium"
>{{ $t('message.companyDiagram.determine') }}</el-button
>{{ $t("message.companyDiagram.determine") }}</el-button
>
</div>
</el-form>
@ -671,14 +404,17 @@
</div>
</template>
<script>
import {
checkPhone
} from '@/assets/js/util.js'
import { checkPhone } from "@/assets/js/util.js";
import {
sendSafetyHatProjectDataApi,
getDictionaryItemApi
getDictionaryItemApi,
} from "@/assets/js/api/companyDiagram.js";
import { getProjectDetail, editProjectInfo, sendProjectInfo, getProjectConfigListApi } from "@/assets/js/api/baseInfo.js";
import {
getProjectDetail,
editProjectInfo,
sendProjectInfo,
getProjectConfigListApi,
} from "@/assets/js/api/baseInfo.js";
import { selectProvincesCityListApi } from "@/assets/js/api/project.js";
import scroll from "vue-seamless-scroll";
import gdMap from "../../../components/map/gd-map";
@ -701,7 +437,9 @@ export default {
}
};
return {
projectDialogTitle: /* "编辑项目", */ this.$t('message.projectInfo.editProject'),
projectDialogTitle: /* "编辑项目", */ this.$t(
"message.projectInfo.editProject"
),
addProjectDialog: false,
addProjectForm: {
areaCode: "",
@ -714,7 +452,7 @@ export default {
households: "",
latitude: "",
layoutImage: "",
constructionMapUrl: '',
constructionMapUrl: "",
longitude: "",
projectAcreage: "",
projectAddress: "",
@ -727,7 +465,12 @@ export default {
structureType: "",
projectManage: "",
projectTel: "",
majorProjectType: 0
majorProjectType: 0,
projectSiteManager: "",
renewableEnergyType: "",
installedCapacity: "",
storageRequired: 0,
capacity: "",
},
projectDetail: {
areaCode: "",
@ -740,7 +483,7 @@ export default {
households: "",
latitude: "",
layoutImage: "",
constructionMapUrl: '',
constructionMapUrl: "",
longitude: "",
projectAcreage: "",
projectAddress: "",
@ -776,6 +519,27 @@ export default {
trigger: "blur",
},
],
projectSiteManager: [
{
required: true,
message: this.$t("message.companyDiagram.required"),
trigger: "blur",
},
],
renewableEnergyType: [
{
required: true,
message: this.$t("message.companyDiagram.required"),
trigger: "blur",
},
],
installedCapacity: [
{
required: true,
message: this.$t("message.companyDiagram.required"),
trigger: "blur",
},
],
projectManage: [
{
required: true,
@ -867,8 +631,8 @@ export default {
value: "code",
},
showMap: false,
projectAuditStatus: '',//
company: '',
projectAuditStatus: "", //
company: "",
constructionStageList: [],
structureTypeList: [],
projectTypeList: [],
@ -877,78 +641,77 @@ export default {
},
created() {
this.projectSn = this.$store.state.projectSn;
this.company = COMPANY
this.company = COMPANY;
this.getDataDateils();
this.loadProvincesCityList();
this.getProjectConfigList();
this.getDictionaryList();
this.getDictionaryByStructure();
this.getDicProjectTypeList();
},
mounted() {
console.log('编辑表示:',this.$store.state.userInfo);
console.log("编辑表示:", this.$store.state.userInfo);
},
methods: {
//
//
getDicProjectTypeList(){
getDicProjectTypeList() {
getDictionaryItemApi({
dictionaryEncoding: 'project_type',
projectSn: this.projectSn
}).then(res => {
dictionaryEncoding: "project_type",
projectSn: this.projectSn,
}).then((res) => {
if (res.result.length > 0) {
this.projectTypeList = res.result
this.projectTypeList = res.result;
}
})
});
},
//
getDictionaryList() {
getDictionaryItemApi({
dictionaryEncoding: 'project_construction_stage',
projectSn: this.projectSn
}).then(res => {
dictionaryEncoding: "project_construction_stage",
projectSn: this.projectSn,
}).then((res) => {
if (res.result.length > 0) {
this.constructionStageList = res.result
this.constructionStageList = res.result;
}
})
});
},
//
getDictionaryByStructure() {
getDictionaryItemApi({
dictionaryEncoding: 'project_structure_type',
projectSn: this.projectSn
}).then(res => {
dictionaryEncoding: "project_structure_type",
projectSn: this.projectSn,
}).then((res) => {
if (res.result.length > 0) {
this.structureTypeList = res.result
this.structureTypeList = res.result;
}
})
});
},
sendSafetyHatProject() {
sendSafetyHatProjectDataApi({ projectSn: this.projectSn }).then(res => {
sendSafetyHatProjectDataApi({ projectSn: this.projectSn }).then((res) => {
if (res.code == 200) {
this.$message.success('上传成功!')
this.$message.success("上传成功!");
}
})
});
},
getProjectConfigList() {
getProjectConfigListApi({ projectSn: this.projectSn }).then(res => {
getProjectConfigListApi({ projectSn: this.projectSn }).then((res) => {
if (res.code == 200) {
this.projectAuditStatus = res.result[0].projectAuditStatus
this.projectAuditStatus = res.result[0].projectAuditStatus;
console.log(res.result[0].projectAuditStatus);
}
})
});
},
uploadThirdParty() {
sendProjectInfo({ projectSn: this.projectSn }).then(res => {
sendProjectInfo({ projectSn: this.projectSn }).then((res) => {
if (res.code == 200) {
this.$message.success(this.$t('message.projectInfo.updateSuccess') + '!')
this.getProjectConfigList()
this.$message.success(
this.$t("message.projectInfo.updateSuccess") + "!"
);
this.getProjectConfigList();
}
})
});
},
closeMap(val) {
this.showMap = val;
@ -965,14 +728,23 @@ export default {
};
getProjectDetail(data).then((res) => {
if (res.code == 200) {
this.projectDetail = res.result != null ? res.result : this.projectDetail;
this.projectDetail =
res.result != null ? res.result : this.projectDetail;
if (res.result.areaCode) {
this.provincesCityArr = [
res.result.provincesCode,
res.result.cityCode,
res.result.areaCode,
];
} else {
this.provincesCityArr = [
res.result.provincesCode,
res.result.cityCode,
];
}
this.addProjectForm = JSON.parse(JSON.stringify(res.result));
this.$store.commit('setProDetail', res.result)
this.$store.commit("setProDetail", res.result);
}
});
},
@ -993,12 +765,13 @@ export default {
},
//
handleUploadSuccess(res, type) {
console.log(res)
console.log(res);
if (type == 1) {
this.addProjectForm.layoutImage =
this.$store.state.FILEURL + res.data[0].imageUrl;
} else {
this.addProjectForm.constructionMapUrl = this.$store.state.FILEURL + res.data[0].imageUrl;
this.addProjectForm.constructionMapUrl =
this.$store.state.FILEURL + res.data[0].imageUrl;
}
},
@ -1012,9 +785,12 @@ export default {
saveProjectFn() {
if (this.addProjectForm.projectTel) {
if (!checkPhone(this.addProjectForm.projectTel)) {
console.log('this.addProjectForm.projectTel', this.addProjectForm.projectTel);
this.$message.error('请输入正确的联系电话')
return
console.log(
"this.addProjectForm.projectTel",
this.addProjectForm.projectTel
);
this.$message.error("请输入正确的联系电话");
return;
}
}
this.$refs["addProjectForm"].validate((valid) => {
@ -1042,11 +818,11 @@ export default {
changeProvincesCity(val) {
this.addProjectForm.provincesCode = val[0];
this.addProjectForm.cityCode = val[1];
this.addProjectForm.areaCode = val[2];
this.addProjectForm.areaCode = val[2] || "";
},
},
};
</script>
</script>
<style lang="less" scoped>
.flex {
display: flex;

File diff suppressed because it is too large Load Diff