| | |
| | | top="0" |
| | | class="dialog-center" |
| | | > |
| | | <div class="padding16161616"> |
| | | <div class="padding16161616 white-bg"> |
| | | <el-button |
| | | :disabled="!isCanEdit" |
| | | @click="dHandleClick()" |
| | |
| | | size="mini" |
| | | v-if="changeIp" |
| | | >远程IP修改</el-button |
| | | > |
| | | <el-button |
| | | :disabled="!isCanEdit" |
| | | @click="dAutographClick()" |
| | | type="primary" |
| | | size="mini" |
| | | v-if="autograph" |
| | | >签名编辑</el-button |
| | | > |
| | | </div> |
| | | </el-dialog> |
| | |
| | | @success="editSuccess" |
| | | ></edit-group-mager> |
| | | </el-dialog> |
| | | <!-- 签名修改 --> |
| | | <el-dialog |
| | | title="签名修改" |
| | | width="600px" |
| | | :visible.sync="autographDialog" |
| | | :close-on-click-modal="false" |
| | | top="0" |
| | | class="dialog-center" |
| | | :modal-append-to-body="false" |
| | | > |
| | | <edit-autograph |
| | | :batt="batt" |
| | | :visible.sync="autographDialog" |
| | | v-if="autographDialog" |
| | | ></edit-autograph> |
| | | </el-dialog> |
| | | <!-- 远程修改ip --> |
| | | <el-dialog |
| | | title="远程修改IP" |
| | |
| | | searchCounty, |
| | | getExistStations, |
| | | } from "@/assets/js/api.js"; |
| | | import { search, add, del, edit } from "./js/battGroupMager"; |
| | | import { search, del } from "./js/battGroupMager"; |
| | | // 引入导出表格 |
| | | import { ExportFile } from "@/assets/js/tools/exportFile"; |
| | | import { isHasPermit } from "@/assets/js/tools"; |
| | |
| | | let isCanEdit = isHasPermit("batttest_data_edit_permit", permits); |
| | | let config = this.$CFG; |
| | | return { |
| | | isCanEdit: isCanEdit, |
| | | isCanEdit: isCanEdit || !0, |
| | | autograph: config.autograph.value, |
| | | selectEdit: false, |
| | | autographDialog: false, |
| | | changeIp: config.changeIp.value, |
| | | changeIpDialog: false, |
| | | batt: {}, |
| | |
| | | let list = []; |
| | | if (res.code) { |
| | | let data = res.data; |
| | | console.log(data, 'data========='); |
| | | // console.log(data, 'data========='); |
| | | data.list.forEach((item) => { |
| | | item.batteryType = const_battery_type.getLabel( |
| | | item.battGroupNum, |
| | |
| | | confirmDelHome(batt) { |
| | | var self = this; |
| | | this.$layer.confirm( |
| | | "确定删除" + batt.StationName3, |
| | | "确定删除" + batt.stationName3, |
| | | { icon: 3 }, |
| | | function (index) { |
| | | // 关闭询问框 |
| | |
| | | delHome(batt) { |
| | | let loading = this.$layer.loading(1); |
| | | // 请求后台 |
| | | this.$apis.dataMager.battGroupMager |
| | | .del([batt]) |
| | | del({battgroupId: batt.battGroupId}) |
| | | .then((res) => { |
| | | let rs = JSON.parse(res.data.result); |
| | | if (rs.code == 1) { |
| | | res = res.data; |
| | | if (res.code) { |
| | | this.$message({ |
| | | type: "success", |
| | | message: "删除" + batt.StationName3 + "成功!", |
| | | message: "删除" + batt.stationName3 + "成功!", |
| | | }); |
| | | this.searchData(); |
| | | } else { |
| | | this.$message({ |
| | | type: "error", |
| | | message: "删除" + batt.StationName3 + "失败!", |
| | | message: "删除" + batt.stationName3 + "失败!", |
| | | }); |
| | | } |
| | | // 关闭等待框 |
| | |
| | | this.selectEdit = false; |
| | | this.editDialog = true; |
| | | }, |
| | | dAutographClick() { |
| | | this.selectEdit = false; |
| | | this.autographDialog = true; |
| | | }, |
| | | dChangeIpClick() { |
| | | this.selectEdit = false; |
| | | this.changeIpDialog = true; |
| | |
| | | let batt = this.batt; |
| | | return ( |
| | | "编辑" + |
| | | batt.StationName1 + |
| | | batt.stationName1 + |
| | | "-" + |
| | | batt.StationName2 + |
| | | batt.stationName2 + |
| | | "-" + |
| | | batt.StationName5 + |
| | | batt.stationName5 + |
| | | "-" + |
| | | batt.StationName3 + |
| | | batt.stationName3 + |
| | | "-" + |
| | | batt.StationName4 |
| | | batt.stationName4 |
| | | ); |
| | | }, |
| | | editMore() { |
| | | return this.autograph || this.changeIp ? true : false; |
| | | return this.changeIp ? true : false; |
| | | }, |
| | | }, |
| | | mounted() { |
| | |
| | | > |
| | | <el-row :gutter="layout.gutter"> |
| | | <el-col :span="layout.span"> |
| | | <el-form-item label="省" prop="StationName1"> |
| | | <el-form-item label="省" prop="stationName1"> |
| | | <el-select |
| | | v-model="params.StationName1" |
| | | v-model="params.stationName1" |
| | | placeholder="请选择省" |
| | | @change="provinceChange" |
| | | :filterable="true" |
| | |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="layout.span"> |
| | | <el-form-item label="市" prop="StationName2"> |
| | | <el-form-item label="市" prop="stationName2"> |
| | | <el-select |
| | | v-model="params.StationName2" |
| | | v-model="params.stationName2" |
| | | placeholder="请选择市" |
| | | @change="cityChange" |
| | | :filterable="true" |
| | |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="layout.span"> |
| | | <el-form-item label="区/县/班组" prop="StationName5"> |
| | | <el-form-item label="区/县/班组" prop="stationName5"> |
| | | <el-select |
| | | v-model="params.StationName5" |
| | | v-model="params.stationName5" |
| | | placeholder="请选择区县" |
| | | @change="countyChange" |
| | | allow-create |
| | |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="layout.span"> |
| | | <el-form-item label="机房名称" prop="StationName3"> |
| | | <el-form-item label="机房名称" prop="stationName3"> |
| | | <el-select |
| | | v-model="params.StationName3" |
| | | v-model="params.stationName3" |
| | | placeholder="请选择站点" |
| | | @change="siteChange" |
| | | :filterable="true" |
| | |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="layout.span"> |
| | | <el-form-item label="设备名称" prop="StationName4"> |
| | | <el-input v-model="params.StationName4"></el-input> |
| | | <el-form-item label="设备名称" prop="stationName4"> |
| | | <el-input v-model="params.stationName4"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="layout.span"> |
| | | <el-form-item label="设备IP" prop="FbsDeviceIp"> |
| | | <el-input v-model="params.FbsDeviceIp"></el-input> |
| | | <el-form-item label="设备IP" prop="fbsdeviceIp"> |
| | | <el-input v-model="params.fbsdeviceIp"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="layout.span"> |
| | | <el-form-item label="子网掩码" prop="FbsDeviceIp_YM"> |
| | | <el-input v-model="params.FbsDeviceIp_YM"></el-input> |
| | | <el-form-item label="子网掩码" prop="fbsdeviceipYm"> |
| | | <el-input v-model="params.fbsdeviceipYm"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="layout.span"> |
| | | <el-form-item label="网关" prop="FbsDeviceIp_WG"> |
| | | <el-input v-model="params.FbsDeviceIp_WG"></el-input> |
| | | <el-form-item label="网关" prop="fbsdeviceipWg"> |
| | | <el-input v-model="params.fbsdeviceipWg"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="layout.span"> |
| | | <el-form-item label="协议名称" prop="FBSDeviceName"> |
| | | <el-input v-model="params.FBSDeviceName"></el-input> |
| | | <el-form-item label="协议名称" prop="fbsdeviceName"> |
| | | <el-input v-model="params.fbsdeviceName"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="layout.span"> |
| | | <el-form-item label="设备类型" prop="FBSDeviceId"> |
| | | <el-form-item label="设备类型" prop="fbsdeviceId"> |
| | | <el-select |
| | | v-model="params.FBSDeviceId" |
| | | v-model="params.fbsdeviceId" |
| | | placeholder="请选择设备类型" |
| | | > |
| | | <el-option |
| | |
| | | <el-col :span="layout.span" v-if="isInversion"> |
| | | <el-form-item label="母联状态"> |
| | | <el-select |
| | | v-model="params.buscoupleState" |
| | | v-model="params.buscouplestate" |
| | | placeholder="请选择母联状态" |
| | | > |
| | | <el-option |
| | | v-for="item in buscoupleStates" |
| | | v-for="item in buscouplestates" |
| | | :key="item.value" |
| | | :label="item.label" |
| | | :value="item.value" |
| | |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="layout.span"> |
| | | <el-form-item label="电池组类型" prop="BattGroupNum"> |
| | | <el-form-item label="电池组类型" prop="battGroupNum"> |
| | | <el-select |
| | | v-model="params.BattGroupNum" |
| | | v-model="params.battGroupNum" |
| | | placeholder="请选择电池类型" |
| | | > |
| | | <el-option |
| | |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="layout.span"> |
| | | <el-form-item label="电池组名称" prop="BattGroupName"> |
| | | <el-input v-model="params.BattGroupName"></el-input> |
| | | <el-form-item label="电池组名称" prop="battGroupName"> |
| | | <el-input v-model="params.battGroupName"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="layout.span"> |
| | | <el-form-item label="浮充电压阀值(V)" prop="FloatVolLevel"> |
| | | <el-input v-model="params.FloatVolLevel"></el-input> |
| | | <el-form-item label="浮充电压阀值(V)" prop="floatVolLevel"> |
| | | <el-input v-model="params.floatVolLevel"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="layout.span"> |
| | | <el-form-item label="离线电压阀值(V)" prop="OfflineVolLevel"> |
| | | <el-input v-model="params.OfflineVolLevel"></el-input> |
| | | <el-form-item label="离线电压阀值(V)" prop="offlineVolLevel"> |
| | | <el-input v-model="params.offlineVolLevel"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="layout.span"> |
| | | <el-form-item label="浮充电流阀值(A)" prop="BattFloatCurrent"> |
| | | <el-input v-model="params.BattFloatCurrent"></el-input> |
| | | <el-form-item label="浮充电流阀值(A)" prop="battFloatCurrent"> |
| | | <el-input v-model="params.battFloatCurrent"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="layout.span"> |
| | | <el-form-item label="单体数量" prop="MonCount"> |
| | | <el-form-item label="单体数量" prop="monCount"> |
| | | <!-- <el-select v-model="params.MonCount" placeholder="请选择单体数量">--> |
| | | <!-- <el-option label="4" value="4"></el-option>--> |
| | | <!-- <el-option label="24" value="24"></el-option>--> |
| | | <!-- </el-select>--> |
| | | <el-input v-model="params.MonCount"></el-input> |
| | | <el-input v-model="params.monCount"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="layout.span"> |
| | | <el-form-item label="标称容量(AH)" prop="MonCapStd"> |
| | | <el-input v-model="params.MonCapStd"></el-input> |
| | | <el-form-item label="标称容量(AH)" prop="monCapStd"> |
| | | <el-input v-model="params.monCapStd"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="layout.span"> |
| | | <el-form-item label="标称单体电压(V)" prop="MonVolStd"> |
| | | <el-input v-model="params.MonVolStd"></el-input> |
| | | <el-form-item label="标称单体电压(V)" prop="monVolStd"> |
| | | <el-input v-model="params.monVolStd"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="layout.span"> |
| | | <el-form-item label="标称单体内阻(mΩ)" prop="MonResStd"> |
| | | <el-input v-model="params.MonResStd"></el-input> |
| | | <el-form-item label="标称单体内阻(mΩ)" prop="monResStd"> |
| | | <el-input v-model="params.monResStd"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="layout.span"> |
| | | <el-form-item label="标称单体电导" prop="MonSerStd"> |
| | | <el-input v-model="params.MonSerStd"></el-input> |
| | | <el-form-item label="标称单体电导" prop="monSerStd"> |
| | | <el-input v-model="params.monSerStd"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="layout.span"> |
| | | <el-form-item label="FBS设备索引" prop="GroupIndexInFBSDevice"> |
| | | <el-input v-model="params.GroupIndexInFBSDevice"></el-input> |
| | | <el-form-item label="FBS设备索引" prop="groupIndexInFBSDevice"> |
| | | <el-input v-model="params.groupIndexInFBSDevice"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <!-- <el-col :span="layout.span">--> |
| | |
| | | <!-- </el-form-item>--> |
| | | <!-- </el-col>--> |
| | | <el-col :span="layout.span"> |
| | | <el-form-item label="负载电流(A)" prop="Load_curr"> |
| | | <el-form-item label="负载电流(A)" prop="loadCurr"> |
| | | <el-input v-model="params.Load_curr"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="layout.span"> |
| | | <el-form-item label="最大核容电流(A)" prop="DisCurrMax"> |
| | | <el-input v-model="params.DisCurrMax"></el-input> |
| | | <el-form-item label="最大核容电流(A)" prop="disCurrMax"> |
| | | <el-input v-model="params.disCurrMax"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="layout.span"> |
| | | <el-form-item label="电池品牌" prop="BattProducer"> |
| | | <el-form-item label="电池品牌" prop="battProducer"> |
| | | <el-select |
| | | v-model="params.BattProducer" |
| | | v-model="params.battProducer" |
| | | placeholder="请选择" |
| | | @change="battProducerChange" |
| | | :filterable="true" |
| | |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="layout.span"> |
| | | <el-form-item label="电池型号" prop="BattModel"> |
| | | <el-input v-model="params.BattModel"></el-input> |
| | | <el-form-item label="电池型号" prop="battModel"> |
| | | <el-input v-model="params.battModel"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="layout.span"> |
| | | <el-form-item label="电池生产日期" prop="BattProductDate"> |
| | | <el-form-item label="电池生产日期" prop="battProductDate"> |
| | | <el-date-picker |
| | | v-model="params.BattProductDate" |
| | | v-model="params.battProductDate" |
| | | size="small" |
| | | type="date" |
| | | placeholder="选择日期" |
| | |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="layout.span"> |
| | | <el-form-item label="投入使用日期" prop="BattInUseDate"> |
| | | <el-form-item label="投入使用日期" prop="battInUseDate"> |
| | | <el-date-picker |
| | | v-model="params.BattInUseDate" |
| | | v-model="params.battInUseDate" |
| | | size="small" |
| | | type="date" |
| | | placeholder="选择日期" |
| | |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="layout.span" v-if="isLithium"> |
| | | <el-form-item label="电价分布模板" prop="tmp_id"> |
| | | <el-select v-model="params.tmp_id" placeholder="请选择电价分布模板"> |
| | | <el-form-item label="电价分布模板" prop="tmpId"> |
| | | <el-select v-model="params.tmpId" placeholder="请选择电价分布模板"> |
| | | <el-option |
| | | v-for="item in tmpList" |
| | | :key="item.value" |
| | |
| | | |
| | | <script> |
| | | import { LinkagePlus, regEquipType, testVal } from "@/assets/js/tools"; |
| | | |
| | | import { |
| | | searchProvince, |
| | | searchCity, |
| | | searchCounty, |
| | | getExistStations, |
| | | } from "@/assets/js/api.js"; |
| | | import { searchTplAll } from "../js/eletmp"; |
| | | import { searchBattProducer, add } from "../js/battGroupMager"; |
| | | import { |
| | | const_province_city_county, |
| | | const_battGroup, |
| | |
| | | gutter: 16, |
| | | }, |
| | | params: { |
| | | StationId: 42000142, // 机房编号(后台自动生成最大) |
| | | StationName: "", // 机房名称(全称) |
| | | StationName1: "", // 省* |
| | | StationName2: "", // 市* |
| | | StationName5: "", // 区县* |
| | | StationName3: "", // 机房名称* |
| | | StationName4: "", // 设备名称* |
| | | StationIp: "192.168.0.5", // 机房ip |
| | | FBSDeviceId: 61850, // 设备ID (后台自动生成最大) |
| | | FbsDeviceIp: "192.168.7.155", // 设备IP(重要)* |
| | | FbsDeviceIp_YM: "255.255.255.0", // 设备子网掩码(重要)* |
| | | FbsDeviceIp_WG: "192.168.7.1", // 设备网关(重要)* |
| | | FBSDeviceName: "ZJDYBTSE", // 协议名称(重要)* |
| | | GroupIndexInFBSDevice: 0, // FBS设备索引 |
| | | BattGroupId: 1000547, // 电池组ID (后台自动生成最大) |
| | | BattGroupNum: 0, // 机房内电池组编号* |
| | | BattGroupName: "", // 电池组名称 |
| | | FloatVolLevel: "53.6", // 浮充电压阀值(V)(自动计算) |
| | | OfflineVolLevel: "51.5", // 离线电压阀值(V)(自动计算) |
| | | BattFloatCurrent: "5", // 浮充电流阀值(A) |
| | | MonCount: 24, // 单体数量 |
| | | MonCapStd: 150, // 标称容量(AH) |
| | | MonVolStd: 2, // 标称单体电压(V) |
| | | MonResStd: "0.2", // 标称单体内阻(mΩ) |
| | | MonSerStd: "3000", // 标称单体电导 |
| | | MonVolLowToAvg: "0.05", // 单体电压次低偏移量(V) |
| | | Load_curr: "15", // 负载电流(A) |
| | | DisCurrMax: "0", // 最大核容电流(A) |
| | | station_phone: "123456", // 基站号码 |
| | | BattProducer: "", // 电池品牌 |
| | | BattModel: "", // 电池型号 |
| | | BattProductDate: "2000-01-01", // 电池生产日期 |
| | | BattInUseDate: new Date().format("yyyy-MM-dd"), // 投入使用日期 |
| | | stationId: 42000142, // 机房编号(后台自动生成最大) |
| | | stationName: "", // 机房名称(全称) |
| | | stationName1: "", // 省* |
| | | stationName2: "", // 市* |
| | | stationName5: "", // 区县* |
| | | stationName3: "", // 机房名称* |
| | | stationName4: "", // 设备名称* |
| | | stationIp: "192.168.0.5", // 机房ip |
| | | fbsdeviceId: 618500152, // 设备ID (后台自动生成最大) |
| | | fbsdeviceIp: "192.168.7.155", // 设备IP(重要)* |
| | | fbsdeviceipYm: "255.255.255.0", // 设备子网掩码(重要)* |
| | | fbsdeviceipWg: "192.168.7.1", // 设备网关(重要)* |
| | | fbsdeviceName: "ZJDYBTSE", // 协议名称(重要)* |
| | | groupIndexInFBSDevice: 0, // FBS设备索引 |
| | | battGroupId: 1000547, // 电池组ID (后台自动生成最大) |
| | | battGroupNum: 0, // 机房内电池组编号* |
| | | battGroupName: "", // 电池组名称 |
| | | floatVolLevel: "53.6", // 浮充电压阀值(V)(自动计算) |
| | | offlineVolLevel: "51.5", // 离线电压阀值(V)(自动计算) |
| | | battFloatCurrent: "5", // 浮充电流阀值(A) |
| | | monCount: 4, // 单体数量 |
| | | monCapStd: 150, // 标称容量(AH) |
| | | monVolStd: "2", // 标称单体电压(V) |
| | | monResStd: "0.2", // 标称单体内阻(mΩ) |
| | | monSerStd: "3000", // 标称单体电导 |
| | | monVolLowToAvg: "0.05", // 单体电压次低偏移量(V) |
| | | loadCurr: "15", // 负载电流(A) |
| | | disCurrMax: "0", // 最大核容电流(A) |
| | | stationPhone: "123456", // 基站号码 |
| | | battProducer: "", // 电池品牌 |
| | | battModel: "", // 电池型号 |
| | | battProductDate: "2000-01-01", // 电池生产日期 |
| | | battInUseDate: new Date().format("yyyy-MM-dd"), // 投入使用日期 |
| | | videoUrl: "", // 萤石云视频监控序列号 |
| | | chargeType: 1, // 充电类型 |
| | | buscoupleState: 0, // 母联状态 |
| | | tmp_id: 0, // 电价模板id |
| | | buscouplestate: 0, // 母联状态 |
| | | tmpId: 0, // 电价模板id |
| | | |
| | | Vol_grade: 0, // 电压等级(kV) |
| | | Manufacturers: "", // 生产厂家 |
| | | Assetequipment: "", // 是否资产级设备 |
| | | Deviceclasspath: "", // 设备分类全路径 |
| | | Deviceoperationdepartment: "", // 设备运维部门 |
| | | PropertyRightUnit: "", // 产权单位 |
| | | PropertyAttribute: "", // 产权属性 |
| | | FactoryNumber: "", // 出厂编号 |
| | | OperationTeam: "", // 运维(保管)班组 |
| | | DeviceIdentityCode: "", // 设备身份编码 |
| | | ProjectType: "", // 项目类型 |
| | | BatteryApplicationType: "", // 蓄电池应用类型 |
| | | SingleRatedVoltage: 0, // 单电压额定电压 |
| | | RemoteMonitor: "", // 是否实现远程监控 |
| | | BatttIndependentPlaced: "", // 是否独立蓄电池室放置 |
| | | JunChargeVoltageValue: 0, // 均充电压设定值 |
| | | volGrade: 0, // 电压等级(kV) |
| | | manufacturers: "", // 生产厂家 |
| | | assetequipment: "", // 是否资产级设备 |
| | | deviceclasspath: "", // 设备分类全路径 |
| | | deviceOperationDepartment: "", // 设备运维部门 |
| | | propertyRightUnit: "", // 产权单位 |
| | | propertyAttribute: "", // 产权属性 |
| | | factoryNumber: "", // 出厂编号 |
| | | operationTeam: "", // 运维(保管)班组 |
| | | deviceIdentityCode: "", // 设备身份编码 |
| | | projectType: "", // 项目类型 |
| | | batteryApplicationType: "", // 蓄电池应用类型 |
| | | singleRatedVoltage: 0, // 单电压额定电压 |
| | | remotemonitor: "", // 是否实现远程监控 |
| | | batttIndependentPlaced: "", // 是否独立蓄电池室放置 |
| | | junChargeVoltageValue: 0, // 均充电压设定值 |
| | | }, |
| | | tmpList: [], |
| | | rules: { |
| | | StationName1: [ |
| | | stationName1: [ |
| | | { |
| | | required: true, |
| | | message: "不能为空", |
| | | trigger: "change", |
| | | }, |
| | | ], |
| | | StationName2: [ |
| | | stationName2: [ |
| | | { |
| | | required: true, |
| | | message: "不能为空", |
| | | trigger: "change", |
| | | }, |
| | | ], |
| | | StationName5: [ |
| | | stationName5: [ |
| | | { |
| | | required: true, |
| | | message: "不能为空", |
| | | trigger: "change", |
| | | }, |
| | | ], |
| | | StationName3: [ |
| | | stationName3: [ |
| | | { |
| | | required: true, |
| | | message: "不能为空", |
| | | trigger: "change", |
| | | }, |
| | | ], |
| | | StationName4: [ |
| | | stationName4: [ |
| | | { |
| | | required: true, |
| | | message: "不能为空", |
| | | trigger: "change", |
| | | }, |
| | | ], |
| | | FBSDeviceName: [ |
| | | fbsdeviceName: [ |
| | | { |
| | | required: true, |
| | | message: "不能为空", |
| | | trigger: "change", |
| | | }, |
| | | ], |
| | | FbsDeviceIp: [ |
| | | fbsdeviceIp: [ |
| | | { |
| | | required: true, |
| | | validator(rule, value, callback) { |
| | |
| | | trigger: "change", |
| | | }, |
| | | ], |
| | | FbsDeviceIp_YM: [ |
| | | fbsdeviceipYm: [ |
| | | { |
| | | required: true, |
| | | validator(rule, value, callback) { |
| | |
| | | trigger: "change", |
| | | }, |
| | | ], |
| | | FbsDeviceIp_WG: [ |
| | | fbsdeviceipWg: [ |
| | | { |
| | | required: true, |
| | | validator(rule, value, callback) { |
| | |
| | | trigger: "change", |
| | | }, |
| | | ], |
| | | GroupIndexInFBSDevice: [ |
| | | groupIndexInFBSDevice: [ |
| | | { |
| | | required: true, |
| | | message: "不能为空", |
| | | trigger: "change", |
| | | }, |
| | | ], |
| | | tmp_id: [ |
| | | tmpId: [ |
| | | { |
| | | required: true, |
| | | message: "请先录入电价分布模板", |
| | | trigger: "change", |
| | | }, |
| | | ], |
| | | BattGroupNum: [ |
| | | battGroupNum: [ |
| | | { |
| | | required: true, |
| | | message: "不能为空", |
| | | trigger: "change", |
| | | }, |
| | | ], |
| | | FloatVolLevel: [ |
| | | floatVolLevel: [ |
| | | { |
| | | required: true, |
| | | message: "不能为空", |
| | | trigger: "change", |
| | | }, |
| | | ], |
| | | OfflineVolLevel: [ |
| | | offlineVolLevel: [ |
| | | { |
| | | required: true, |
| | | message: "不能为空", |
| | | trigger: "change", |
| | | }, |
| | | ], |
| | | BattFloatCurrent: [ |
| | | battFloatCurrent: [ |
| | | { |
| | | required: true, |
| | | message: "不能为空", |
| | | trigger: "change", |
| | | }, |
| | | ], |
| | | MonResStd: [ |
| | | monResStd: [ |
| | | { |
| | | required: true, |
| | | message: "不能为空", |
| | | trigger: "change", |
| | | }, |
| | | ], |
| | | MonSerStd: [ |
| | | monSerStd: [ |
| | | { |
| | | required: true, |
| | | message: "不能为空", |
| | | trigger: "change", |
| | | }, |
| | | ], |
| | | MonVolLowToAvg: [ |
| | | monVolLowToAvg: [ |
| | | { |
| | | required: true, |
| | | message: "不能为空", |
| | | trigger: "change", |
| | | }, |
| | | ], |
| | | DisCurrMax: [ |
| | | disCurrMax: [ |
| | | { |
| | | required: true, |
| | | message: "不能为空", |
| | | trigger: "change", |
| | | }, |
| | | ], |
| | | BattGroupName: [ |
| | | battGroupName: [ |
| | | { |
| | | required: true, |
| | | message: "不能为空", |
| | | trigger: "change", |
| | | }, |
| | | ], |
| | | MonVolStd: [ |
| | | monVolStd: [ |
| | | { |
| | | required: true, |
| | | message: "不能为空", |
| | | trigger: "change", |
| | | }, |
| | | ], |
| | | MonCapStd: [ |
| | | monCapStd: [ |
| | | { |
| | | required: true, |
| | | message: "不能为空", |
| | | trigger: "change", |
| | | }, |
| | | ], |
| | | Load_curr: [ |
| | | loadCurr: [ |
| | | { |
| | | required: true, |
| | | message: "不能为空", |
| | | trigger: "change", |
| | | }, |
| | | ], |
| | | BattProducer: [ |
| | | battProducer: [ |
| | | { |
| | | required: true, |
| | | message: "不能为空", |
| | | trigger: "change", |
| | | }, |
| | | ], |
| | | BattModel: [ |
| | | battModel: [ |
| | | { |
| | | required: true, |
| | | message: "不能为空", |
| | | trigger: "change", |
| | | }, |
| | | ], |
| | | BattProductDate: [ |
| | | battProductDate: [ |
| | | { |
| | | required: true, |
| | | message: "不能为空", |
| | | trigger: "change", |
| | | }, |
| | | ], |
| | | BattInUseDate: [ |
| | | battInUseDate: [ |
| | | { |
| | | required: true, |
| | | message: "不能为空", |
| | | trigger: "change", |
| | | }, |
| | | ], |
| | | MonCount: [ |
| | | monCount: [ |
| | | { |
| | | required: true, |
| | | message: "不能为空", |
| | |
| | | site: "", |
| | | sites: [], |
| | | }, |
| | | BattProducer: [], |
| | | battProducer: [], |
| | | linkagePlus: new LinkagePlus(), |
| | | province: { |
| | | dialogVisible: false, |
| | |
| | | value: 2, |
| | | }, |
| | | ], |
| | | buscoupleStates: [ |
| | | buscouplestates: [ |
| | | { |
| | | label: "无母联", |
| | | value: 0, |
| | |
| | | searchProvince() { |
| | | // 省 |
| | | // 查询后台 |
| | | this.$apis.address.province().then((res) => { |
| | | var rs = JSON.parse(res.data.result); |
| | | searchProvince().then((res) => { |
| | | res = res.data; |
| | | var data = []; |
| | | if (rs.code == 1) { |
| | | if (rs.data) { |
| | | var rsData = rs.data; |
| | | // 遍历结果集 |
| | | for (var i = 0; i < rsData.length; i++) { |
| | | var _rsData = rsData[i]; |
| | | var tmp = _rsData.stationName1; |
| | | data.push(tmp); |
| | | } |
| | | } |
| | | if (res.code) { |
| | | data = res.data; |
| | | } |
| | | // 设置省 |
| | | this.linkage.provinces = data; |
| | |
| | | }, |
| | | searchCity() { |
| | | // 构造查询条件 |
| | | var searchParams = { |
| | | stationName1: this.linkage.province, |
| | | }; |
| | | let stationName1 = this.linkage.province; |
| | | // 查询后台 |
| | | this.$apis.address.city(searchParams).then((res) => { |
| | | var rs = JSON.parse(res.data.result); |
| | | searchCity(stationName1).then((res) => { |
| | | res = res.data; |
| | | var data = []; |
| | | if (rs.code == 1) { |
| | | if (rs.data) { |
| | | var rsData = rs.data; |
| | | // 遍历结果集 |
| | | for (var i = 0; i < rsData.length; i++) { |
| | | var _rsData = rsData[i]; |
| | | var tmp = _rsData.stationName2; |
| | | data.push(tmp); |
| | | } |
| | | } |
| | | if (res.code) { |
| | | data = res.data; |
| | | } |
| | | // 设置市 |
| | | this.linkage.cities = data; |
| | |
| | | }, |
| | | searchCounty() { |
| | | // 构造查询条件 |
| | | var searchParams = { |
| | | stationName1: this.linkage.province, |
| | | stationName2: this.linkage.city, |
| | | }; |
| | | let stationName1 = this.linkage.province, |
| | | stationName2 = this.linkage.city; |
| | | // 查询后台 |
| | | this.$apis.address.county(searchParams).then((res) => { |
| | | var rs = JSON.parse(res.data.result); |
| | | searchCounty(stationName1, stationName2).then((res) => { |
| | | res = res.data; |
| | | var data = []; |
| | | if (rs.code == 1) { |
| | | if (rs.data) { |
| | | var rsData = rs.data; |
| | | // 遍历结果集 |
| | | for (var i = 0; i < rsData.length; i++) { |
| | | var _rsData = rsData[i]; |
| | | var tmp = _rsData.stationName5; |
| | | data.push(tmp); |
| | | } |
| | | } |
| | | if (res.code) { |
| | | data = res.data; |
| | | } |
| | | // 设置区县 |
| | | this.linkage.counties = data; |
| | |
| | | stationName5: this.linkage.county, |
| | | }; |
| | | // 查询后台 |
| | | this.$apis.dataMager.powerMager |
| | | .getExistStations(searchParams) |
| | | .then((res) => { |
| | | var rs = JSON.parse(res.data.result); |
| | | var data = []; |
| | | if (rs.code == 1) { |
| | | if (rs.data) { |
| | | var rsData = rs.data; |
| | | // 遍历结果集 |
| | | for (var i = 0; i < rsData.length; i++) { |
| | | var _rsData = rsData[i]; |
| | | var tmp = { |
| | | label: _rsData.stationName3, |
| | | value: _rsData.stationName3, |
| | | stationId: _rsData.stationId, |
| | | }; |
| | | data.push(tmp); |
| | | } |
| | | var hash = {}; |
| | | this.siteFilterArr = data.reduce((item, next) => { |
| | | hash[next.label] |
| | | ? "" |
| | | : (hash[next.label] = true && item.push(next)); |
| | | return item; |
| | | }, []); |
| | | } |
| | | } |
| | | // 设置站带你 |
| | | this.linkage.sites = this.siteFilterArr; |
| | | }); |
| | | getExistStations(searchParams).then((res) => { |
| | | res = res.data; |
| | | console.log(res, 'res======99'); |
| | | var data = []; |
| | | if (res.code) { |
| | | data = res.data.map((v) => { |
| | | return { |
| | | label: v.stationName3, |
| | | value: v.stationName3, |
| | | }; |
| | | }); |
| | | } |
| | | // 设置站带你 |
| | | this.linkage.sites = data; |
| | | }); |
| | | }, |
| | | |
| | | searchBattProducer() { |
| | | // 查询后台 |
| | | this.$apis.dataMager.battGroupMager |
| | | .searchBattProducer() |
| | | searchBattProducer() |
| | | .then((res) => { |
| | | let rs = JSON.parse(res.data.result); |
| | | res = res.data; |
| | | let data = []; |
| | | if (rs.code == 1) { |
| | | data = rs.data.map((item) => { |
| | | return item.BattProducer; |
| | | }); |
| | | if (res.code) { |
| | | data = res.data; |
| | | } |
| | | this.linkage.battProducers = data; |
| | | }) |
| | |
| | | }, |
| | | provinceChange(value) { |
| | | // 初始化市 |
| | | this.params.StationName2 = ""; |
| | | this.params.stationName2 = ""; |
| | | this.linkage.city = ""; |
| | | this.linkage.cities = []; |
| | | |
| | | // 初始化区县 |
| | | this.params.StationName5 = ""; |
| | | this.params.stationName5 = ""; |
| | | this.linkage.county = ""; |
| | | this.linkage.counties = []; |
| | | |
| | | // 初始化站点 |
| | | this.params.StationName3 = ""; |
| | | this.params.stationName3 = ""; |
| | | this.linkage.cite = ""; |
| | | this.linkage.cites = []; |
| | | |
| | |
| | | this.province.value = provinces[0].name; |
| | | this.province.list = provinces; |
| | | // 恢复上一次选择的内容 |
| | | this.params.StationName1 = this.linkage.province; |
| | | this.params.stationName1 = this.linkage.province; |
| | | } else { |
| | | this.linkage.province = value; |
| | | } |
| | |
| | | provinceOk: function () { |
| | | var value = this.province.value; |
| | | // 获取选择的值 |
| | | this.params.StationName1 = value; |
| | | this.params.stationName1 = value; |
| | | // 记录选择的内容 |
| | | this.linkage.province = value; |
| | | if (this.linkage.provinces.indexOf(value) == -1) { |
| | |
| | | }, |
| | | cityChange(value) { |
| | | // 初始化区县 |
| | | this.params.StationName5 = ""; |
| | | this.params.stationName5 = ""; |
| | | this.linkage.county = ""; |
| | | this.linkage.counties = []; |
| | | // 获取省 |
| | | var stationName1 = this.params.StationName1; |
| | | var stationName1 = this.params.stationName1; |
| | | // 点击其他 |
| | | if (value == "其他") { |
| | | // 恢复上一次选择的内容 |
| | | this.params.StationName2 = this.linkage.city; |
| | | this.params.stationName2 = this.linkage.city; |
| | | // 未选择省 |
| | | if (stationName1 == "") { |
| | | // 提出告警 |
| | |
| | | cityOk() { |
| | | var value = this.city.value; |
| | | // 获取选择的值 |
| | | this.params.StationName2 = value; |
| | | this.params.stationName2 = value; |
| | | // 记录选择的内容 |
| | | this.linkage.city = value; |
| | | if (this.linkage.cities.indexOf(value) == -1) { |
| | |
| | | }, |
| | | countyChange(value) { |
| | | // 获取省 |
| | | var stationName1 = this.params.StationName1; |
| | | var stationName1 = this.params.stationName1; |
| | | // 获取市 |
| | | var stationName2 = this.params.StationName2; |
| | | var stationName2 = this.params.stationName2; |
| | | // 点击其他 |
| | | if (value == "其他") { |
| | | // 恢复上一次选择的内容 |
| | | this.params.StationName5 = this.linkage.county; |
| | | this.params.stationName5 = this.linkage.county; |
| | | // 未选择省 |
| | | if (stationName1 == "") { |
| | | // 提出告警 |
| | |
| | | countyOk() { |
| | | var value = this.county.value; |
| | | // 获取选择的值 |
| | | this.params.StationName5 = value; |
| | | this.params.stationName5 = value; |
| | | // 记录选择的内容 |
| | | this.linkage.county = value; |
| | | if (this.linkage.counties.indexOf(value) == -1) { |
| | |
| | | }, |
| | | siteChange(value) { |
| | | // 获取省 |
| | | var stationName1 = this.params.StationName1; |
| | | var stationName1 = this.params.stationName1; |
| | | // 获取市 |
| | | var stationName2 = this.params.StationName2; |
| | | var stationName2 = this.params.stationName2; |
| | | // 获取区 |
| | | var stationName5 = this.params.StationName5; |
| | | var stationName5 = this.params.stationName5; |
| | | // 点击其他 |
| | | if (value == "其他") { |
| | | // 恢复上一次选择的内容 |
| | | this.params.StationName3 = this.linkage.site; |
| | | this.params.stationName3 = this.linkage.site; |
| | | // 未选择省 |
| | | if (stationName1 == "") { |
| | | // 提出告警 |
| | |
| | | this.linkage.site = this.site.value; |
| | | } else { |
| | | this.linkage.site = value; |
| | | this.siteFilterArr.map((item, index) => { |
| | | if (item.label == value) { |
| | | this.params.StationId = item.stationId; |
| | | } |
| | | }); |
| | | } |
| | | }, |
| | | siteOk() { |
| | | var value = this.site.value; |
| | | // 获取选择的值 |
| | | this.params.StationName3 = value; |
| | | this.params.stationName3 = value; |
| | | // 记录选择的内容 |
| | | this.linkage.site = value; |
| | | if (!this.inArray(this.linkage.sites, value, "label")) { |
| | |
| | | // 点击其他 |
| | | if (value == -999) { |
| | | // 恢复上一次选择的内容 |
| | | this.params.BattProducer = this.linkage.battProducer; |
| | | this.params.battProducer = this.linkage.battProducer; |
| | | this.battProducer.dialogVisible = true; |
| | | this.battProducer.value = ""; |
| | | } else { |
| | |
| | | battProducerOk() { |
| | | var value = this.battProducer.value; |
| | | // 获取选择的值 |
| | | this.params.BattProducer = value; |
| | | this.params.battProducer = value; |
| | | // 记录选择的内容 |
| | | this.linkage.battProducer = value; |
| | | if (this.linkage.battProducers.indexOf(value) == -1) { |
| | |
| | | Object.keys(this.params).forEach((key, value) => { |
| | | tmp[key] = this.params[key]; |
| | | }); |
| | | tmp.StationName = |
| | | tmp.StationName1 + |
| | | tmp.stationName = |
| | | tmp.stationName1 + |
| | | "-" + |
| | | tmp.StationName2 + |
| | | tmp.stationName2 + |
| | | "-" + |
| | | tmp.StationName5 + |
| | | tmp.stationName5 + |
| | | "-" + |
| | | tmp.StationName3 + |
| | | tmp.stationName3 + |
| | | "-" + |
| | | tmp.StationName4; |
| | | tmp.stationName4; |
| | | // 添加机房 |
| | | this.addHome(tmp); |
| | | } else { |
| | |
| | | addHome(batt) { |
| | | let loading = this.$layer.loading(1); |
| | | // 请求后台 |
| | | this.$apis.dataMager.battGroupMager |
| | | .add([batt]) |
| | | add(batt) |
| | | .then((res) => { |
| | | let rs = JSON.parse(res.data.result); |
| | | if (rs.code == 1) { |
| | | res = res.data; |
| | | if (res.code) { |
| | | this.$message({ |
| | | type: "success", |
| | | message: "添加" + batt.StationName + "成功!", |
| | | message: "添加" + batt.stationName + "成功!", |
| | | }); |
| | | // 触发事件 |
| | | this.$emit("success"); |
| | | } else { |
| | | this.$message({ |
| | | type: "error", |
| | | message: "添加" + batt.StationName + "失败!", |
| | | message: "添加" + batt.stationName + "失败!", |
| | | }); |
| | | } |
| | | // 关闭加载框 |
| | |
| | | }, |
| | | initParams() { |
| | | let batt = this.batt; |
| | | // 存在StationName1 |
| | | if (batt.StationName1) { |
| | | this.params.StationName1 = batt.StationName1; |
| | | this.params.StationName2 = batt.StationName2; |
| | | this.params.StationName5 = batt.StationName5; |
| | | this.params.StationName3 = batt.StationName3; |
| | | this.params.StationName4 = batt.StationName4; |
| | | this.params.FbsDeviceIp = batt.FbsDeviceIp; |
| | | let dev_id = batt.FBSDeviceId; |
| | | this.devTypes.forEach((item) => { |
| | | let pattern = new RegExp(item.value); |
| | | if (pattern.test(dev_id)) { |
| | | this.params.FBSDeviceId = item.value; |
| | | } |
| | | }); |
| | | // 存在stationName1 |
| | | if (batt.stationName1) { |
| | | this.params.stationName1 = batt.stationName1; |
| | | this.params.stationName2 = batt.stationName2; |
| | | this.params.stationName5 = batt.stationName5; |
| | | this.params.stationName3 = batt.stationName3; |
| | | this.params.stationName4 = batt.stationName4; |
| | | this.params.fbsdeviceIp = batt.fbsdeviceIp; |
| | | this.params.fbsdeviceId = batt.fbsdeviceId; |
| | | } |
| | | let dev_id = this.params.fbsdeviceId; |
| | | this.devTypes.forEach((item) => { |
| | | let pattern = new RegExp(item.value); |
| | | if (pattern.test(dev_id)) { |
| | | this.params.fbsdeviceId = item.value; |
| | | } |
| | | }); |
| | | }, |
| | | searchTplAll() { |
| | | this.$apis.dcdc |
| | | .searchTplAll() |
| | | searchTplAll() |
| | | .then((res) => { |
| | | let rs = JSON.parse(res.data.result); |
| | | res = res.data; |
| | | let data = []; |
| | | if (rs.code == 1) { |
| | | data = rs.data; |
| | | if (res.code) { |
| | | data = res.data.map((v) => { |
| | | return { |
| | | key: v.tmpId, |
| | | value: v.tmpId, |
| | | label: v.tmpName, |
| | | }; |
| | | }); |
| | | } |
| | | |
| | | // 更新模板列表 |
| | | this.tmpList = data.map((item) => { |
| | | item.key = item.tmp_id; |
| | | item.value = item.tmp_id; |
| | | item.label = item.tmp_name; |
| | | return item; |
| | | }); |
| | | this.tmpList = data; |
| | | |
| | | // 初始化模板id |
| | | this.initTpl(); |
| | |
| | | let tplList = this.tmpList; |
| | | let isLithium = this.isLithium; |
| | | if (tplList.length != 0 && isLithium) { |
| | | this.params.tmp_id = tplList[0].value; |
| | | this.params.tmpId = tplList[0].value; |
| | | } else if (tplList.length == 0 && isLithium) { |
| | | this.params.tmp_id = ""; |
| | | this.params.tmpId = ""; |
| | | } else { |
| | | this.params.tmp_id = 0; |
| | | this.params.tmpId = 0; |
| | | } |
| | | }, |
| | | }, |
| | |
| | | mounted() { |
| | | // 设置省市区县的数据 |
| | | this.linkagePlus.setData(const_province_city_county); |
| | | |
| | | // 初始化值 |
| | | this.initParams(); |
| | | |
| | |
| | | .form-footer .three-btn { |
| | | margin-left: 12px; |
| | | } |
| | | >>> ::-webkit-input-placeholder { |
| | | color: #666 !important; |
| | | } |
| | | </style> |
| | |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="layout.span"> |
| | | <el-form-item label="设备IP" prop="FbsDeviceIp"> |
| | | <el-input placeholder="设备IP" v-model="params.FbsDeviceIp"> |
| | | <el-form-item label="设备IP" prop="fbsdeviceIp"> |
| | | <el-input placeholder="设备IP" v-model="params.fbsdeviceIp"> |
| | | </el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="layout.span"> |
| | | <el-form-item label="子网掩码" prop="FbsDeviceIp_YM"> |
| | | <el-input placeholder="子网掩码" v-model="params.FbsDeviceIp_YM"> |
| | | <el-form-item label="子网掩码" prop="fbsdeviceipYm"> |
| | | <el-input placeholder="子网掩码" v-model="params.fbsdeviceipYm"> |
| | | </el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="layout.span"> |
| | | <el-form-item label="网关" prop="FbsDeviceIp_WG"> |
| | | <el-input placeholder="网关" v-model="params.FbsDeviceIp_WG"> |
| | | <el-form-item label="网关" prop="fbsdeviceipWg"> |
| | | <el-input placeholder="网关" v-model="params.fbsdeviceipWg"> |
| | | </el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | |
| | | <script> |
| | | import { const_changeIp } from "@/assets/js/const"; |
| | | import { testVal } from "@/assets/js/tools"; |
| | | import { |
| | | updateIp |
| | | } from '../js/battGroupMager'; |
| | | |
| | | export default { |
| | | name: "ChangeIpParams", |
| | |
| | | }, |
| | | ], |
| | | params: { |
| | | FbsDeviceIp_old: "", // 旧的设备ip |
| | | FbsDeviceIp_YM_old: "", // 旧的子网掩码 |
| | | FbsDeviceIp_WG_old: "", // 旧的网关 |
| | | FBSDeviceId: "", // 设备id |
| | | FbsDeviceIp: "", // 新的ip |
| | | FbsDeviceIp_YM: "", // 新的子网掩码 |
| | | FbsDeviceIp_WG: "", // 新的网关 |
| | | fbsdeviceId: "", // 设备id |
| | | fbsdeviceIp: "", // 新的ip |
| | | fbsdeviceipYm: "", // 新的子网掩码 |
| | | fbsdeviceipWg: "", // 新的网关 |
| | | num: 88, // 修改ip的命令 88:永久 90:暂时 89:ack |
| | | }, |
| | | rules: { |
| | | FbsDeviceIp: [ |
| | | fbsdeviceIp: [ |
| | | { |
| | | validator(rule, value, callback) { |
| | | testVal(rule, value, callback, rules.ipReg); |
| | |
| | | trigger: "change", |
| | | }, |
| | | ], |
| | | FbsDeviceIp_YM: [ |
| | | fbsdeviceipYm: [ |
| | | { |
| | | validator(rule, value, callback) { |
| | | testVal(rule, value, callback, rules.ipReg); |
| | |
| | | trigger: "change", |
| | | }, |
| | | ], |
| | | FbsDeviceIp_WG: [ |
| | | fbsdeviceipWg: [ |
| | | { |
| | | validator(rule, value, callback) { |
| | | testVal(rule, value, callback, rules.ipReg); |
| | |
| | | methods: { |
| | | init() { |
| | | // 设置之前的值 |
| | | this.params.FbsDeviceIp_old = this.batt.FbsDeviceIp; // 旧的设备ip |
| | | this.params.FbsDeviceIp_YM_old = this.batt.FbsDeviceIp_YM; // 旧的子网掩码 |
| | | this.params.FbsDeviceIp_WG_old = this.batt.FbsDeviceIp_WG; // 旧的网关 |
| | | this.params.FBSDeviceId = this.batt.FBSDeviceId; // 设备id |
| | | this.params.FbsDeviceIp = ""; // 新的ip |
| | | this.params.FbsDeviceIp_YM = ""; // 新的子网掩码 |
| | | this.params.FbsDeviceIp_WG = ""; // 新的网关 |
| | | this.params.fbsdeviceId = this.batt.fbsdeviceId; |
| | | this.params.fbsdeviceIp = this.batt.fbsdeviceIp; |
| | | this.params.fbsdeviceipYm = this.batt.fbsdeviceipYm; |
| | | this.params.fbsdeviceipWg = this.batt.fbsdeviceipWg; |
| | | }, |
| | | submitFrom() { |
| | | this.$refs.ruleForm.validate((valid) => { |
| | |
| | | }) |
| | | .then(() => { |
| | | let loading = this.$layer.loading(); |
| | | this.$apis.dataMager.battGroupMager |
| | | .updateIp(this.params) |
| | | updateIp(this.params) |
| | | .then((res) => { |
| | | let rs = JSON.parse(res.data.result); |
| | | if (rs.code == 1) { |
| | |
| | | this.batt.MonCapStd; |
| | | return { |
| | | groupName: |
| | | batt.StationName1 + |
| | | batt.stationName1 + |
| | | "-" + |
| | | batt.StationName2 + |
| | | batt.stationName2 + |
| | | "-" + |
| | | batt.StationName5 + |
| | | batt.stationName5 + |
| | | "-" + |
| | | batt.StationName3 + |
| | | batt.stationName3 + |
| | | "-" + |
| | | batt.StationName4 + |
| | | batt.stationName4 + |
| | | "-" + |
| | | batt.BattGroupName, |
| | | FBSDeviceId: batt.FBSDeviceId, |
| | | batt.battGroupName, |
| | | fbsdeviceId: batt.fbsdeviceId, |
| | | groupInfo: groupInfo, |
| | | GroupIndexInFBSDevice: this.batt.GroupIndexInFBSDevice + 1, |
| | | GroupIndexInFBSDevice: this.batt.groupIndexInFBSDevice + 1, |
| | | }; |
| | | }, |
| | | }, |
| | |
| | | </template> |
| | | |
| | | <script> |
| | | import { |
| | | edit |
| | | } from '../js/battGroupMager'; |
| | | |
| | | export default { |
| | | name: "EditAutograph", |
| | | props: { |
| | |
| | | }; |
| | | let loading = this.$layer.loading(); |
| | | // 请求后台 |
| | | this.$apis.dataMager.battGroupMager.updataKey(searchParams).then(res=>{ |
| | | edit(searchParams).then(res=>{ |
| | | let rs = JSON.parse(res.data.result); |
| | | if(rs.code == 1) { |
| | | this.$layer.msg("修改成功"); |
| | |
| | | }); |
| | | }, |
| | | close() { |
| | | console.log(123); |
| | | // console.log(123); |
| | | this.$emit('update:visible', false) |
| | | } |
| | | } |
| | |
| | | > |
| | | <el-row :gutter="layout.gutter"> |
| | | <el-col :span="layout.span"> |
| | | <el-form-item label="省" prop="StationName1"> |
| | | <el-form-item label="省" prop="stationName1"> |
| | | <el-select |
| | | v-model="params.StationName1" |
| | | v-model="params.stationName1" |
| | | placeholder="请选择省" |
| | | @change="provinceChange" |
| | | :filterable="true" |
| | |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="layout.span"> |
| | | <el-form-item label="市" prop="StationName2"> |
| | | <el-form-item label="市" prop="stationName2"> |
| | | <el-select |
| | | v-model="params.StationName2" |
| | | v-model="params.stationName2" |
| | | placeholder="请选择市" |
| | | @change="cityChange" |
| | | :filterable="true" |
| | |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="layout.span"> |
| | | <el-form-item label="区/县" prop="StationName5"> |
| | | <el-form-item label="区/县" prop="stationName5"> |
| | | <el-select |
| | | v-model="params.StationName5" |
| | | v-model="params.stationName5" |
| | | placeholder="请选择区县" |
| | | @change="countyChange" |
| | | :filterable="true" |
| | |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="layout.span"> |
| | | <el-form-item label="机房名称" prop="StationName3"> |
| | | <el-input v-model="params.StationName3" disabled></el-input> |
| | | <el-form-item label="机房名称" prop="stationName3"> |
| | | <el-input v-model="params.stationName3" disabled></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="layout.span"> |
| | | <el-form-item label="设备ID" prop="FBSDeviceId"> |
| | | <el-input v-model="params.FBSDeviceId"></el-input> |
| | | <el-form-item label="设备ID" prop="fbsdeviceId"> |
| | | <el-input v-model="params.fbsdeviceId"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | |
| | | <el-col :span="layout.span"> |
| | | <el-form-item label="设备名称" prop="StationName4"> |
| | | <el-input v-model="params.StationName4"></el-input> |
| | | <el-form-item label="设备名称" prop="stationName4"> |
| | | <el-input v-model="params.stationName4"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="layout.span"> |
| | | <el-form-item label="设备IP" prop="FbsDeviceIp"> |
| | | <el-input v-model="params.FbsDeviceIp"></el-input> |
| | | <el-form-item label="设备IP" prop="fbsdeviceIp"> |
| | | <el-input v-model="params.fbsdeviceIp"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="layout.span"> |
| | | <el-form-item label="子网掩码" prop="FbsDeviceIp_YM"> |
| | | <el-input v-model="params.FbsDeviceIp_YM"></el-input> |
| | | <el-form-item label="子网掩码" prop="fbsdeviceipYm"> |
| | | <el-input v-model="params.fbsdeviceipYm"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="layout.span"> |
| | | <el-form-item label="网关" prop="FbsDeviceIp_WG"> |
| | | <el-input v-model="params.FbsDeviceIp_WG"></el-input> |
| | | <el-form-item label="网关" prop="fbsdeviceipWg"> |
| | | <el-input v-model="params.fbsdeviceipWg"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="layout.span"> |
| | | <el-form-item label="协议名称" prop="FBSDeviceName"> |
| | | <el-input v-model="params.FBSDeviceName"></el-input> |
| | | <el-form-item label="协议名称" prop="fbsdeviceName"> |
| | | <el-input v-model="params.fbsdeviceName"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="layout.span"> |
| | | <el-form-item label="FBS设备索引" prop="GroupIndexInFBSDevice"> |
| | | <el-input v-model="params.GroupIndexInFBSDevice"></el-input> |
| | | <el-form-item label="FBS设备索引" prop="groupIndexInFBSDevice"> |
| | | <el-input v-model="params.groupIndexInFBSDevice"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="layout.span"> |
| | | <el-form-item label="电池组类型" prop="BattGroupNum"> |
| | | <el-form-item label="电池组类型" prop="battGroupNum"> |
| | | <el-select |
| | | v-model="params.BattGroupNum" |
| | | v-model="params.battGroupNum" |
| | | placeholder="请选择电池类型" |
| | | > |
| | | <el-option |
| | |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="layout.span"> |
| | | <el-form-item label="电池组名称" prop="BattGroupName"> |
| | | <el-input v-model="params.BattGroupName"></el-input> |
| | | <el-form-item label="电池组名称" prop="battGroupName"> |
| | | <el-input v-model="params.battGroupName"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="layout.span"> |
| | | <el-form-item label="浮充电压阀值(V)" prop="FloatVolLevel"> |
| | | <el-input v-model="params.FloatVolLevel"></el-input> |
| | | <el-form-item label="浮充电压阀值(V)" prop="floatVolLevel"> |
| | | <el-input v-model="params.floatVolLevel"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="layout.span"> |
| | | <el-form-item label="离线电压阀值(V)" prop="OfflineVolLevel"> |
| | | <el-input v-model="params.OfflineVolLevel"></el-input> |
| | | <el-form-item label="离线电压阀值(V)" prop="offlineVolLevel"> |
| | | <el-input v-model="params.offlineVolLevel"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="layout.span"> |
| | | <el-form-item label="浮充电流阀值(A)" prop="BattFloatCurrent"> |
| | | <el-input v-model="params.BattFloatCurrent"></el-input> |
| | | <el-form-item label="浮充电流阀值(A)" prop="battFloatCurrent"> |
| | | <el-input v-model="params.battFloatCurrent"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="layout.span"> |
| | | <el-form-item label="单体数量" prop="MonCount"> |
| | | <!-- <el-select v-model="params.MonCount" placeholder="请选择单体数量">--> |
| | | <el-form-item label="单体数量" prop="monCount"> |
| | | <!-- <el-select v-model="params.monCount" placeholder="请选择单体数量">--> |
| | | <!-- <el-option label="4" value="4"></el-option>--> |
| | | <!-- <el-option label="24" value="24"></el-option>--> |
| | | <!-- </el-select>--> |
| | | <el-input v-model="params.MonCount"></el-input> |
| | | <el-input v-model="params.monCount"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="layout.span"> |
| | | <el-form-item label="标称容量(AH)" prop="MonCapStd"> |
| | | <el-input v-model="params.MonCapStd"></el-input> |
| | | <el-form-item label="标称容量(AH)" prop="monCapStd"> |
| | | <el-input v-model="params.monCapStd"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="layout.span"> |
| | | <el-form-item label="标称单体电压(V)" prop="MonVolStd"> |
| | | <el-input v-model="params.MonVolStd"></el-input> |
| | | <el-form-item label="标称单体电压(V)" prop="monVolStd"> |
| | | <el-input v-model="params.monVolStd"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="layout.span"> |
| | | <el-form-item label="标称单体内阻(mΩ)" prop="MonResStd"> |
| | | <el-input v-model="params.MonResStd"></el-input> |
| | | <el-form-item label="标称单体内阻(mΩ)" prop="monResStd"> |
| | | <el-input v-model="params.monResStd"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="layout.span"> |
| | | <el-form-item label="标称单体电导" prop="MonSerStd"> |
| | | <el-input v-model="params.MonSerStd"></el-input> |
| | | <el-form-item label="标称单体电导" prop="monSerStd"> |
| | | <el-input v-model="params.monSerStd"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <!-- <el-col :span="layout.span">--> |
| | | <!-- <el-form-item label="单体电压次低偏移量(V)" prop="MonVolLowToAvg">--> |
| | | <!-- <el-input v-model="params.MonVolLowToAvg"></el-input>--> |
| | | <!-- <el-form-item label="单体电压次低偏移量(V)" prop="monVolLowToAvg">--> |
| | | <!-- <el-input v-model="params.monVolLowToAvg"></el-input>--> |
| | | <!-- </el-form-item>--> |
| | | <!-- </el-col>--> |
| | | <el-col :span="layout.span"> |
| | | <el-form-item label="负载电流(A)" prop="Load_curr"> |
| | | <el-input v-model="params.Load_curr"></el-input> |
| | | <el-form-item label="负载电流(A)" prop="loadCurr"> |
| | | <el-input v-model="params.loadCurr"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="layout.span"> |
| | | <el-form-item label="最大核容电流(A)" prop="DisCurrMax"> |
| | | <el-input v-model="params.DisCurrMax"></el-input> |
| | | <el-form-item label="最大核容电流(A)" prop="disCurrMax"> |
| | | <el-input v-model="params.disCurrMax"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="layout.span"> |
| | | <el-form-item label="电池品牌" prop="BattProducer"> |
| | | <el-form-item label="电池品牌" prop="battProducer"> |
| | | <el-select |
| | | v-model="params.BattProducer" |
| | | v-model="params.battProducer" |
| | | placeholder="请选择" |
| | | @change="battProducerChange" |
| | | :filterable="true" |
| | |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="layout.span"> |
| | | <el-form-item label="电池型号" prop="BattModel"> |
| | | <el-input v-model="params.BattModel"></el-input> |
| | | <el-form-item label="电池型号" prop="battModel"> |
| | | <el-input v-model="params.battModel"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="layout.span"> |
| | | <el-form-item label="电池生产日期" prop="BattProductDate"> |
| | | <el-form-item label="电池生产日期" prop="battProductDate"> |
| | | <el-date-picker |
| | | v-model="params.BattProductDate" |
| | | v-model="params.battProductDate" |
| | | size="small" |
| | | type="date" |
| | | placeholder="选择日期" |
| | |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="layout.span"> |
| | | <el-form-item label="投入使用日期" prop="BattInUseDate"> |
| | | <el-form-item label="投入使用日期" prop="battInUseDate"> |
| | | <el-date-picker |
| | | v-model="params.BattInUseDate" |
| | | v-model="params.battInUseDate" |
| | | size="small" |
| | | type="date" |
| | | placeholder="选择日期" |
| | |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="layout.span" v-if="isLithium"> |
| | | <el-form-item label="电价分布模板" prop="tmp_id"> |
| | | <el-select v-model="params.tmp_id" placeholder="请选择电价分布模板"> |
| | | <el-form-item label="电价分布模板" prop="tmpId"> |
| | | <el-select v-model="params.tmpId" placeholder="请选择电价分布模板"> |
| | | <el-option |
| | | v-for="item in tmpList" |
| | | :key="item.value" |
| | |
| | | searchCounty, |
| | | } from "@/assets/js/api.js"; |
| | | |
| | | import { |
| | | searchBattProducer, |
| | | edit |
| | | } from '../js/battGroupMager'; |
| | | |
| | | export default { |
| | | props: { |
| | | batt: { |
| | |
| | | gutter: 16, |
| | | }, |
| | | params: { |
| | | StationId: 42000142, // 机房编号(后台自动生成最大) |
| | | StationName: "", // 机房名称(全称) |
| | | StationName1: "", // 省* |
| | | StationName2: "", // 市* |
| | | StationName5: "", // 区县* |
| | | StationName3: "", // 机房名称* |
| | | StationName4: "61850设备", // 设备名称* |
| | | StationIp: "192.168.0.5", // 机房ip |
| | | FBSDeviceId: 618500152, // 设备ID (后台自动生成最大) |
| | | FbsDeviceIp: "192.168.7.155", // 设备IP(重要)* |
| | | FbsDeviceIp_YM: "255.255.255.0", // 设备子网掩码(重要)* |
| | | FbsDeviceIp_WG: "192.168.7.1", // 设备网关(重要)* |
| | | FBSDeviceName: "ZJDYBTSE", // 协议名称(重要)* |
| | | GroupIndexInFBSDevice: 0, // FBS设备索引 |
| | | BattGroupId: 1000547, // 电池组ID (后台自动生成最大) |
| | | BattGroupNum: 0, // 机房内电池组编号* |
| | | BattGroupName: "", // 电池组名称 |
| | | FloatVolLevel: "53.6", // 浮充电压阀值(V)(自动计算) |
| | | OfflineVolLevel: "51.5", // 离线电压阀值(V)(自动计算) |
| | | BattFloatCurrent: "5", // 浮充电流阀值(A) |
| | | MonCount: 4, // 单体数量 |
| | | MonCapStd: 150, // 标称容量(AH) |
| | | MonVolStd: "4", // 标称单体电压(V) |
| | | MonResStd: "0.2", // 标称单体内阻(mΩ) |
| | | MonSerStd: "3000", // 标称单体电导 |
| | | MonVolLowToAvg: "0.05", // 单体电压次低偏移量(V) |
| | | Load_curr: "15", // 负载电流(A) |
| | | DisCurrMax: "0", // 最大核容电流(A) |
| | | station_phone: "123456", // 基站号码 |
| | | BattProducer: "", // 电池品牌 |
| | | BattModel: "", // 电池型号 |
| | | BattProductDate: "2000-01-01", // 电池生产日期 |
| | | BattInUseDate: new Date().format("yyyy-MM-dd"), // 投入使用日期 |
| | | stationId: 42000142, // 机房编号(后台自动生成最大) |
| | | stationName: "", // 机房名称(全称) |
| | | stationName1: "", // 省* |
| | | stationName2: "", // 市* |
| | | stationName5: "", // 区县* |
| | | stationName3: "", // 机房名称* |
| | | stationName4: "61850设备", // 设备名称* |
| | | stationIp: "192.168.0.5", // 机房ip |
| | | fbsdeviceId: 618500152, // 设备ID (后台自动生成最大) |
| | | fbsdeviceIp: "192.168.7.155", // 设备IP(重要)* |
| | | fbsdeviceipYm: "255.255.255.0", // 设备子网掩码(重要)* |
| | | fbsdeviceipWg: "192.168.7.1", // 设备网关(重要)* |
| | | fbsdeviceName: "ZJDYBTSE", // 协议名称(重要)* |
| | | groupIndexInFBSDevice: 0, // FBS设备索引 |
| | | battGroupId: 1000547, // 电池组ID (后台自动生成最大) |
| | | battGroupNum: 0, // 机房内电池组编号* |
| | | battGroupName: "", // 电池组名称 |
| | | floatVolLevel: "53.6", // 浮充电压阀值(V)(自动计算) |
| | | offlineVolLevel: "51.5", // 离线电压阀值(V)(自动计算) |
| | | battFloatCurrent: "5", // 浮充电流阀值(A) |
| | | monCount: 4, // 单体数量 |
| | | monCapStd: 150, // 标称容量(AH) |
| | | monVolStd: "4", // 标称单体电压(V) |
| | | monResStd: "0.2", // 标称单体内阻(mΩ) |
| | | monSerStd: "3000", // 标称单体电导 |
| | | monVolLowToAvg: "0.05", // 单体电压次低偏移量(V) |
| | | loadCurr: "15", // 负载电流(A) |
| | | disCurrMax: "0", // 最大核容电流(A) |
| | | stationPhone: "123456", // 基站号码 |
| | | battProducer: "", // 电池品牌 |
| | | battModel: "", // 电池型号 |
| | | battProductDate: "2000-01-01", // 电池生产日期 |
| | | battInUseDate: new Date().format("yyyy-MM-dd"), // 投入使用日期 |
| | | videoUrl: "", // 萤石云视频监控序列号 |
| | | chargeType: 1, // 充电类型 |
| | | buscoupleState: 0, // 母联状态 |
| | | tmp_id: 0, // 电价模板id |
| | | tmpId: 0, // 电价模板id |
| | | |
| | | Vol_grade: 0, // 电压等级(kV) |
| | | Manufacturers: "", // 生产厂家 |
| | | Assetequipment: "", // 是否资产级设备 |
| | | Deviceclasspath: "", // 设备分类全路径 |
| | | Deviceoperationdepartment: "", // 设备运维部门 |
| | | PropertyRightUnit: "", // 产权单位 |
| | | PropertyAttribute: "", // 产权属性 |
| | | FactoryNumber: "", // 出厂编号 |
| | | OperationTeam: "", // 运维(保管)班组 |
| | | DeviceIdentityCode: "", // 设备身份编码 |
| | | ProjectType: "", // 项目类型 |
| | | BatteryApplicationType: "", // 蓄电池应用类型 |
| | | SingleRatedVoltage: 0, // 单电压额定电压 |
| | | RemoteMonitor: "", // 是否实现远程监控 |
| | | BatttIndependentPlaced: "", // 是否独立蓄电池室放置 |
| | | JunChargeVoltageValue: 0, // 均充电压设定值 |
| | | volGrade: 0, // 电压等级(kV) |
| | | manufacturers: "", // 生产厂家 |
| | | assetequipment: "", // 是否资产级设备 |
| | | deviceclasspath: "", // 设备分类全路径 |
| | | deviceOperationDepartment: "", // 设备运维部门 |
| | | propertyRightUnit: "", // 产权单位 |
| | | propertyAttribute: "", // 产权属性 |
| | | factoryNumber: "", // 出厂编号 |
| | | operationTeam: "", // 运维(保管)班组 |
| | | deviceIdentityCode: "", // 设备身份编码 |
| | | projectType: "", // 项目类型 |
| | | batteryApplicationType: "", // 蓄电池应用类型 |
| | | singleRatedVoltage: 0, // 单电压额定电压 |
| | | remotemonitor: "", // 是否实现远程监控 |
| | | batttIndependentPlaced: "", // 是否独立蓄电池室放置 |
| | | junChargeVoltageValue: 0, // 均充电压设定值 |
| | | }, |
| | | rules: { |
| | | StationName1: [ |
| | | stationName1: [ |
| | | { |
| | | required: true, |
| | | message: "不能为空", |
| | | trigger: "change", |
| | | }, |
| | | ], |
| | | StationName2: [ |
| | | stationName2: [ |
| | | { |
| | | required: true, |
| | | message: "不能为空", |
| | | trigger: "change", |
| | | }, |
| | | ], |
| | | StationName5: [ |
| | | stationName5: [ |
| | | { |
| | | required: true, |
| | | message: "不能为空", |
| | | trigger: "change", |
| | | }, |
| | | ], |
| | | StationName3: [ |
| | | stationName3: [ |
| | | { |
| | | required: true, |
| | | message: "不能为空", |
| | | trigger: "change", |
| | | }, |
| | | ], |
| | | StationName4: [ |
| | | stationName4: [ |
| | | { |
| | | required: true, |
| | | message: "不能为空", |
| | | trigger: "change", |
| | | }, |
| | | ], |
| | | FBSDeviceId: [ |
| | | fbsdeviceId: [ |
| | | { |
| | | required: true, |
| | | message: "不能为空", |
| | | trigger: "change", |
| | | }, |
| | | ], |
| | | FBSDeviceName: [ |
| | | fbsdeviceName: [ |
| | | { |
| | | required: true, |
| | | message: "不能为空", |
| | | trigger: "change", |
| | | }, |
| | | ], |
| | | FbsDeviceIp: [ |
| | | fbsdeviceIp: [ |
| | | { |
| | | required: true, |
| | | validator(rule, value, callback) { |
| | |
| | | trigger: "change", |
| | | }, |
| | | ], |
| | | FbsDeviceIp_YM: [ |
| | | fbsdeviceipYm: [ |
| | | { |
| | | required: true, |
| | | validator(rule, value, callback) { |
| | |
| | | trigger: "change", |
| | | }, |
| | | ], |
| | | FbsDeviceIp_WG: [ |
| | | fbsdeviceipWg: [ |
| | | { |
| | | required: true, |
| | | validator(rule, value, callback) { |
| | |
| | | trigger: "change", |
| | | }, |
| | | ], |
| | | GroupIndexInFBSDevice: [ |
| | | groupIndexInFBSDevice: [ |
| | | { |
| | | required: true, |
| | | message: "不能为空", |
| | | trigger: "change", |
| | | }, |
| | | ], |
| | | tmp_id: [ |
| | | tmpId: [ |
| | | { |
| | | required: true, |
| | | message: "请先录入电价分布模板", |
| | | trigger: "change", |
| | | }, |
| | | ], |
| | | BattGroupNum: [ |
| | | battGroupNum: [ |
| | | { |
| | | required: true, |
| | | message: "不能为空", |
| | | trigger: "change", |
| | | }, |
| | | ], |
| | | FloatVolLevel: [ |
| | | floatVolLevel: [ |
| | | { |
| | | required: true, |
| | | message: "不能为空", |
| | | trigger: "change", |
| | | }, |
| | | ], |
| | | OfflineVolLevel: [ |
| | | offlineVolLevel: [ |
| | | { |
| | | required: true, |
| | | message: "不能为空", |
| | | trigger: "change", |
| | | }, |
| | | ], |
| | | BattFloatCurrent: [ |
| | | battFloatCurrent: [ |
| | | { |
| | | required: true, |
| | | message: "不能为空", |
| | | trigger: "change", |
| | | }, |
| | | ], |
| | | MonResStd: [ |
| | | monResStd: [ |
| | | { |
| | | required: true, |
| | | message: "不能为空", |
| | | trigger: "change", |
| | | }, |
| | | ], |
| | | MonSerStd: [ |
| | | monSerStd: [ |
| | | { |
| | | required: true, |
| | | message: "不能为空", |
| | | trigger: "change", |
| | | }, |
| | | ], |
| | | MonVolLowToAvg: [ |
| | | monVolLowToAvg: [ |
| | | { |
| | | required: true, |
| | | message: "不能为空", |
| | | trigger: "change", |
| | | }, |
| | | ], |
| | | DisCurrMax: [ |
| | | disCurrMax: [ |
| | | { |
| | | required: true, |
| | | message: "不能为空", |
| | | trigger: "change", |
| | | }, |
| | | ], |
| | | BattGroupName: [ |
| | | battGroupName: [ |
| | | { |
| | | required: true, |
| | | message: "不能为空", |
| | | trigger: "change", |
| | | }, |
| | | ], |
| | | MonVolStd: [ |
| | | monVolStd: [ |
| | | { |
| | | required: true, |
| | | message: "不能为空", |
| | | trigger: "change", |
| | | }, |
| | | ], |
| | | MonCapStd: [ |
| | | monCapStd: [ |
| | | { |
| | | required: true, |
| | | message: "不能为空", |
| | | trigger: "change", |
| | | }, |
| | | ], |
| | | Load_curr: [ |
| | | loadCurr: [ |
| | | { |
| | | required: true, |
| | | message: "不能为空", |
| | | trigger: "change", |
| | | }, |
| | | ], |
| | | BattProducer: [ |
| | | battProducer: [ |
| | | { |
| | | required: true, |
| | | message: "不能为空", |
| | | trigger: "change", |
| | | }, |
| | | ], |
| | | BattModel: [ |
| | | battModel: [ |
| | | { |
| | | required: true, |
| | | message: "不能为空", |
| | | trigger: "change", |
| | | }, |
| | | ], |
| | | BattProductDate: [ |
| | | battProductDate: [ |
| | | { |
| | | required: true, |
| | | message: "不能为空", |
| | | trigger: "change", |
| | | }, |
| | | ], |
| | | BattInUseDate: [ |
| | | battInUseDate: [ |
| | | { |
| | | required: true, |
| | | message: "不能为空", |
| | | trigger: "change", |
| | | }, |
| | | ], |
| | | MonCount: [ |
| | | monCount: [ |
| | | { |
| | | required: true, |
| | | message: "不能为空", |
| | |
| | | // 省 |
| | | // 查询后台 |
| | | searchProvince().then((res) => { |
| | | var rs = JSON.parse(res.data.result); |
| | | res = res.data; |
| | | var data = []; |
| | | if (rs.code == 1) { |
| | | var data = rs.data; |
| | | if (res.code) { |
| | | data = res.data; |
| | | } |
| | | |
| | | // 设置省 |
| | | this.linkage.provinces = data; |
| | | }); |
| | | }, |
| | | searchBattProducer() { |
| | | searchbattProducer() { |
| | | // 查询后台 |
| | | this.$apis.dataMager.battGroupMager |
| | | .searchBattProducer() |
| | | searchBattProducer() |
| | | .then((res) => { |
| | | let rs = JSON.parse(res.data.result); |
| | | res = res.data; |
| | | let data = []; |
| | | if (rs.code == 1) { |
| | | data = rs.data.map((item) => { |
| | | return item.BattProducer; |
| | | }); |
| | | if (res.code) { |
| | | data = res.data; |
| | | } |
| | | this.linkage.battProducers = data; |
| | | }) |
| | |
| | | // 点击其他 |
| | | if (value == -999) { |
| | | // 恢复上一次选择的内容 |
| | | this.params.BattProducer = this.linkage.battProducer; |
| | | this.params.battProducer = this.linkage.battProducer; |
| | | this.battProducer.dialogVisible = true; |
| | | this.battProducer.value = ""; |
| | | } else { |
| | |
| | | battProducerOk() { |
| | | var value = this.battProducer.value; |
| | | // 获取选择的值 |
| | | this.params.BattProducer = value; |
| | | this.params.battProducer = value; |
| | | // 记录选择的内容 |
| | | this.linkage.battProducer = value; |
| | | if (this.linkage.battProducers.indexOf(value) == -1) { |
| | |
| | | Object.keys(this.params).forEach((key, value) => { |
| | | tmp[key] = this.params[key]; |
| | | }); |
| | | tmp.StationName = |
| | | tmp.StationName1 + |
| | | tmp.stationName = |
| | | tmp.stationName1 + |
| | | "-" + |
| | | tmp.StationName2 + |
| | | tmp.stationName2 + |
| | | "-" + |
| | | tmp.StationName5 + |
| | | tmp.stationName5 + |
| | | "-" + |
| | | tmp.StationName3 + |
| | | tmp.stationName3 + |
| | | "-" + |
| | | tmp.StationName4; |
| | | tmp.stationName4; |
| | | // 编辑机房 |
| | | this.editHome(tmp); |
| | | } else { |
| | |
| | | editHome(batt) { |
| | | let loading = this.$layer.loading(1); |
| | | // 请求后台 |
| | | this.$apis.dataMager.battGroupMager |
| | | .edit([batt]) |
| | | edit(batt) |
| | | .then((res) => { |
| | | let rs = JSON.parse(res.data.result); |
| | | if (rs.code == 1) { |
| | | res = res.data; |
| | | if (res.code) { |
| | | this.$message({ |
| | | type: "success", |
| | | message: "修改" + batt.StationName + "成功!", |
| | | message: "修改" + batt.stationName + "成功!", |
| | | }); |
| | | // 触发事件 |
| | | this.$emit("success"); |
| | | } else { |
| | | this.$message({ |
| | | type: "error", |
| | | message: "修改" + batt.StationName + "失败!", |
| | | message: "修改" + batt.stationName + "失败!", |
| | | }); |
| | | } |
| | | // 关闭加载框 |
| | |
| | | }, |
| | | provinceChange(value) { |
| | | // 初始化市 |
| | | this.params.StationName2 = ""; |
| | | this.params.stationName2 = ""; |
| | | this.linkage.city = ""; |
| | | this.linkage.cities = []; |
| | | |
| | | // 初始化区县 |
| | | this.params.StationName5 = ""; |
| | | this.params.stationName5 = ""; |
| | | this.linkage.county = ""; |
| | | this.linkage.counties = []; |
| | | // 点击其他 |
| | |
| | | this.province.value = provinces[0].name; |
| | | this.province.list = provinces; |
| | | // 恢复上一次选择的内容 |
| | | this.params.StationName1 = this.linkage.province; |
| | | this.params.stationName1 = this.linkage.province; |
| | | } else { |
| | | this.linkage.province = value; |
| | | } |
| | |
| | | }, |
| | | searchCity() { |
| | | // 构造查询条件 |
| | | var searchParams = { |
| | | StationName1: this.linkage.province, |
| | | }; |
| | | let stationName1 = this.linkage.province; |
| | | // 查询后台 |
| | | searchCity(searchParams).then((res) => { |
| | | var rs = JSON.parse(res.data.result); |
| | | searchCity(stationName1).then((res) => { |
| | | res = res.data; |
| | | var data = []; |
| | | if (rs.code == 1) { |
| | | data = rs.data; |
| | | if (res.code) { |
| | | data = res.data; |
| | | } |
| | | // 设置市 |
| | | this.linkage.cities = data; |
| | |
| | | }, |
| | | searchCounty() { |
| | | // 构造查询条件 |
| | | var searchParams = { |
| | | StationName1: this.linkage.province, |
| | | StationName2: this.linkage.city, |
| | | }; |
| | | let stationName1 = this.linkage.province, |
| | | stationName2 = this.linkage.city; |
| | | // 查询后台 |
| | | searchCounty(searchParams).then((res) => { |
| | | var rs = JSON.parse(res.data.result); |
| | | searchCounty(stationName1, stationName2).then((res) => { |
| | | res = res.data; |
| | | var data = []; |
| | | if (rs.code == 1) { |
| | | data = rs.data; |
| | | if (res.code) { |
| | | data = res.data; |
| | | } |
| | | // 设置区县 |
| | | this.linkage.counties = data; |
| | |
| | | }, |
| | | cityChange(value) { |
| | | // 初始化区县 |
| | | this.params.StationName5 = ""; |
| | | this.params.stationName5 = ""; |
| | | this.linkage.county = ""; |
| | | this.linkage.counties = []; |
| | | // 获取省 |
| | | var StationName1 = this.params.StationName1; |
| | | var stationName1 = this.params.stationName1; |
| | | // 点击其他 |
| | | if (value == "其他") { |
| | | // 恢复上一次选择的内容 |
| | | this.params.StationName2 = this.linkage.city; |
| | | this.params.stationName2 = this.linkage.city; |
| | | // 未选择省 |
| | | if (StationName1 == "") { |
| | | if (stationName1 == "") { |
| | | // 提出告警 |
| | | this.$message({ |
| | | type: "warning", |
| | |
| | | }); |
| | | return; |
| | | } |
| | | var result = this.linkagePlus.getCity(StationName1); |
| | | var result = this.linkagePlus.getCity(stationName1); |
| | | if (result.code == 1) { |
| | | var cities = result.data; |
| | | this.city.dialogVisible = true; |
| | |
| | | }, |
| | | countyChange(value) { |
| | | // 获取省 |
| | | var StationName1 = this.params.StationName1; |
| | | var stationName1 = this.params.StationName1; |
| | | // 获取市 |
| | | var StationName2 = this.params.StationName2; |
| | | var stationName2 = this.params.StationName2; |
| | | // 点击其他 |
| | | if (value == "其他") { |
| | | // 恢复上一次选择的内容 |
| | | this.params.StationName5 = this.linkage.county; |
| | | this.params.stationName5 = this.linkage.county; |
| | | // 未选择省 |
| | | if (StationName1 == "") { |
| | | if (stationName1 == "") { |
| | | // 提出告警 |
| | | this.$message({ |
| | | type: "warning", |
| | |
| | | } |
| | | |
| | | // 未选择市 |
| | | if (StationName2 == "") { |
| | | if (stationName2 == "") { |
| | | // 提出告警 |
| | | this.$message({ |
| | | type: "warning", |
| | |
| | | }); |
| | | return; |
| | | } |
| | | var result = this.linkagePlus.getCounty(StationName1, StationName2); |
| | | var result = this.linkagePlus.getCounty(stationName1, StationName2); |
| | | if (result.code == 1) { |
| | | var counties = result.data; |
| | | this.county.dialogVisible = true; |
| | |
| | | provinceOk: function () { |
| | | var value = this.province.value; |
| | | // 获取选择的值 |
| | | this.params.StationName1 = value; |
| | | this.params.stationName1 = value; |
| | | // 记录选择的内容 |
| | | this.linkage.province = value; |
| | | if (this.linkage.provinces.indexOf(value) == -1) { |
| | |
| | | cityOk() { |
| | | var value = this.city.value; |
| | | // 获取选择的值 |
| | | this.params.StationName2 = value; |
| | | this.params.stationName2 = value; |
| | | // 记录选择的内容 |
| | | this.linkage.city = value; |
| | | if (this.linkage.cities.indexOf(value) == -1) { |
| | |
| | | countyOk() { |
| | | var value = this.county.value; |
| | | // 获取选择的值 |
| | | this.params.StationName5 = value; |
| | | this.params.stationName5 = value; |
| | | // 记录选择的内容 |
| | | this.linkage.county = value; |
| | | if (this.linkage.counties.indexOf(value) == -1) { |
| | |
| | | |
| | | // 更新模板列表 |
| | | this.tmpList = data.map((item) => { |
| | | item.key = item.tmp_id; |
| | | item.value = item.tmp_id; |
| | | item.key = item.tmpId; |
| | | item.value = item.tmpId; |
| | | item.label = item.tmp_name; |
| | | return item; |
| | | }); |
| | |
| | | let tplList = this.tmpList; |
| | | let isLithium = this.isLithium; |
| | | if (tplList.length != 0 && isLithium) { |
| | | this.params.tmp_id = this.params.tmp_id |
| | | ? this.params.tmp_id |
| | | this.params.tmpId = this.params.tmp_id |
| | | ? this.params.tmpId |
| | | : tplList[0].value; |
| | | } else if (tplList.length == 0 && isLithium) { |
| | | this.params.tmp_id = ""; |
| | | this.params.tmpId = ""; |
| | | } else { |
| | | this.params.tmp_id = 0; |
| | | this.params.tmpId = 0; |
| | | } |
| | | }, |
| | | }, |
| | | computed: { |
| | | isInversion() { |
| | | let dev_id = this.params.FBSDeviceId; |
| | | let dev_id = this.params.fbsdeviceId; |
| | | return regEquipType(dev_id, "BTS9120"); |
| | | }, |
| | | isLithium() { |
| | | // 锂电BTS |
| | | let dev_id = this.params.FBSDeviceId; |
| | | let dev_id = this.params.fbsdeviceId; |
| | | return regEquipType(dev_id, ["lithium"]); |
| | | }, |
| | | }, |
| | |
| | | this.searchProvince(); |
| | | |
| | | // 查询已存在的电池品牌 |
| | | this.searchBattProducer(); |
| | | this.searchbattProducer(); |
| | | |
| | | this.params = extend({}, this.batt); |
| | | |
| | |
| | | } |
| | | /** |
| | | * 查询电池品牌 |
| | | * BattInfAction_serchByBattProducer // 旧 |
| | | * 无参 |
| | | */ |
| | | export const searchBattProducer = () => { |
| | | return axios({ |
| | | method: 'post', |
| | | url: 'BattInfAction_serchByBattProducer', |
| | | data: null, |
| | | method: 'GET', |
| | | url: 'battInf/searchByBattProducer' |
| | | }); |
| | | } |
| | | /** |
| | | * 添加电池组 |
| | | * |
| | | * battInf/add |
| | | * @param {[Array]} data 需要添加的电池组信息列表 |
| | | * |
| | | */ |
| | | export const add = (data) => { |
| | | return axios({ |
| | | method: 'post', |
| | | url: 'BattInfAction_add', |
| | | data: 'json=' + JSON.stringify(data), |
| | | method: 'POST', |
| | | url: 'battInf/add', |
| | | data |
| | | }); |
| | | } |
| | | /** |
| | | * 删除电池组 |
| | | * |
| | | * battgroupId |
| | | * BattInfAction!delete // 旧 |
| | | * @param {[Array]} data 需要删除的电池组信息列表 |
| | | * |
| | | */ |
| | | export const del = (data) => { |
| | | export const del = (params) => { |
| | | return axios({ |
| | | method: 'post', |
| | | url: 'BattInfAction!delete', |
| | | data: 'json=' + JSON.stringify(data), |
| | | method: 'DELETE', |
| | | url: 'battInf', |
| | | params |
| | | }); |
| | | } |
| | | /** |
| | | * 编辑电池组 |
| | | * |
| | | * battInf |
| | | * BattInfAction!update // 旧 |
| | | * 传什么字段就更新什么 主键num必传 |
| | | * @param {[Array]} data 需要编辑的电池组信息列表 |
| | | * |
| | | */ |
| | | export const edit = (data) => { |
| | | return axios({ |
| | | method: 'post', |
| | | url: 'BattInfAction!update', |
| | | data: 'json=' + JSON.stringify(data), |
| | | method: 'PUT', |
| | | url: 'battInf', |
| | | data |
| | | }); |
| | | } |
| | | /** |
| | | * 远程修改ip |
| | | * BattInfAction!updateIp // 旧 |
| | | * @param data |
| | | * @returns {AxiosPromise} |
| | | */ |
| | | export const updateIp = (data) => { |
| | | return axios({ |
| | | method: 'PUT', |
| | | url: 'battInf/updateIP', |
| | | data |
| | | }); |
| | | } |
| | | /** |
| | |
| | | data: 'bif.BattGroupId=' + BattGroupId, |
| | | }); |
| | | |
| | | } |
| | | /** |
| | | * 更新设备签名 |
| | | * @param data |
| | | * @returns {AxiosPromise} |
| | | */ |
| | | export const updataKey = (data) => { |
| | | return axios({ |
| | | method: 'post', |
| | | url: 'BattInfAction!updatePubByDevId', |
| | | data: 'json=' + JSON.stringify(data), |
| | | }); |
| | | } |
| | | /** |
| | | * 远程修改ip |
| | | * @param data |
| | | * @returns {AxiosPromise} |
| | | */ |
| | | export const updateIp = (data) => { |
| | | return axios({ |
| | | method: 'post', |
| | | url: 'BattInfAction!updateIp', |
| | | data: 'json=' + JSON.stringify(data) |
| | | }); |
| | | } |
New file |
| | |
| | | import axios from 'axios'; |
| | | import const_dcdc from '@/assets/js/const/const_dcdc'; |
| | | |
| | | // 查询所有模板 |
| | | // EleTmpAction!searchAll // 旧 |
| | | export const searchTplAll = () => { |
| | | // 请求后台查询内容 |
| | | return axios({ |
| | | method: 'GET', |
| | | url: 'eleTmp/getAllEleTmpList' |
| | | }); |
| | | } |
| | | |
| | | // ======================================== |
| | | |
| | | |
| | | |
| | | |
| | | /** |
| | | * 读取DCDC工作参数 |
| | | * |
| | | * @param {[type]} data 参数 |
| | | * |
| | | * @return {[type]} [return description] |
| | | */ |
| | | export const getDcDcWorkParams = (data) => { |
| | | // 设置命令 |
| | | data.opCmd = const_dcdc.cmd.get; |
| | | |
| | | // 请求后台查询内容 |
| | | return axios({ |
| | | method: 'post', |
| | | url: 'Li9130DCDCParamAction!searchParam', |
| | | data: 'json=' + JSON.stringify(data), |
| | | }); |
| | | } |
| | | /** |
| | | * 设置DCDC工作参数 |
| | | * |
| | | * @param {[type]} data 参数 |
| | | * |
| | | * @return {[type]} [return description] |
| | | */ |
| | | export const setDcDcWorkParams = (data) => { |
| | | // 设置命令 |
| | | data.opCmd = const_dcdc.cmd.set; |
| | | |
| | | // 请求后台查询内容 |
| | | return axios({ |
| | | method: 'post', |
| | | url: 'Li9130DCDCParamAction!updateParam', |
| | | data: 'json=' + JSON.stringify(data), |
| | | }); |
| | | } |
| | | /** |
| | | * 读取DCDC内部数据 |
| | | * |
| | | * @param {[type]} data [data description] |
| | | * |
| | | * @return {[type]} [return description] |
| | | */ |
| | | export const getDcDcInsideParams = (data) => { |
| | | // 设置命令 |
| | | data.opCmd = const_dcdc.cmd.inside; |
| | | |
| | | // 请求后台查询内容 |
| | | return axios({ |
| | | method: 'post', |
| | | url: 'Li9130DCDCDataAction!searchParam', |
| | | data: 'json=' + JSON.stringify(data), |
| | | }); |
| | | } |
| | | /** |
| | | * 读取模拟量 |
| | | * |
| | | * @param {Object} data 参数 |
| | | * |
| | | * @return {[type]} [return description] |
| | | */ |
| | | export const getDcDcAnalogParams = (data) => { |
| | | // 请求后台查询内容 |
| | | return axios({ |
| | | method: 'post', |
| | | url: 'Li9130BmsStateAction!searchParam', |
| | | data: 'json=' + JSON.stringify(data), |
| | | }); |
| | | } |
| | | /** |
| | | * 读取告警量 |
| | | * |
| | | * @param {[type]} data 参数 |
| | | * |
| | | * @return {[type]} [return description] |
| | | */ |
| | | export const getDcDcWarnParams = (data) => { |
| | | // 设置命令 |
| | | data.opCmd = const_dcdc.cmd.warn; |
| | | |
| | | // 请求后台查询内容 |
| | | return axios({ |
| | | method: 'post', |
| | | url: 'Li9130BmsAlmAction!searchParam', |
| | | data: 'json=' + JSON.stringify(data), |
| | | }); |
| | | } |
| | | |
| | | // 查询所有的放电计划 |
| | | export const searchDcDcPlanAll = (id) => { |
| | | // 请求后台查询内容 |
| | | return axios({ |
| | | method: 'post', |
| | | url: 'Li9130_setparam_planAction_action_serchByCondition', |
| | | data: 'json=' + JSON.stringify({ |
| | | dev_id: id, |
| | | }), |
| | | }); |
| | | } |
| | | // 添加充放电计划 |
| | | export const addDcDcPlan = (data) => { |
| | | // 请求后台查询内容 |
| | | return axios({ |
| | | method: 'post', |
| | | url: 'Li9130_setparam_planAction_action_add', |
| | | data: 'json=' + JSON.stringify([data]), |
| | | }); |
| | | } |
| | | |
| | | // 添加充放电计划 |
| | | export const editDcDcPlan = (data) => { |
| | | // 请求后台查询内容 |
| | | return axios({ |
| | | method: 'post', |
| | | url: 'Li9130_setparam_planAction_action_update', |
| | | data: 'json=' + JSON.stringify(data), |
| | | }); |
| | | } |
| | | |
| | | // 删除充放电计划 |
| | | export const delDcDcPlan = (data) => { |
| | | // 请求后台查询内容 |
| | | return axios({ |
| | | method: 'post', |
| | | url: 'Li9130_setparam_planAction_action_del', |
| | | data: 'json=' + JSON.stringify(data), |
| | | }); |
| | | } |
| | | |
| | | // 添加模板 |
| | | export const addTpl = (tmp_name) => { |
| | | // 请求后台查询内容 |
| | | return axios({ |
| | | method: 'post', |
| | | url: 'EleTmpAction!add', |
| | | data: "json=" + JSON.stringify({ |
| | | tmp_name, |
| | | }), |
| | | }); |
| | | } |
| | | // 编辑模板 |
| | | export const editTpl = (tmp_id, tmp_name) => { |
| | | // 请求后台查询内容 |
| | | return axios({ |
| | | method: 'post', |
| | | url: 'EleTmpAction!update', |
| | | data: "json=" + JSON.stringify({ |
| | | tmp_id, |
| | | tmp_name, |
| | | }), |
| | | }); |
| | | } |
| | | // 删除模板 |
| | | export const delTpl = (tmp_id) => { |
| | | // 请求后台查询内容 |
| | | return axios({ |
| | | method: 'post', |
| | | url: 'EleTmpAction!del', |
| | | data: "json=" + JSON.stringify({ |
| | | tmp_id, |
| | | }), |
| | | }); |
| | | } |
| | | // 查询电价 |
| | | export const searchElePrices = (id) => { |
| | | // 请求后台查询内容 |
| | | return axios({ |
| | | method: 'post', |
| | | url: 'ElePriceAction!serchByCondition', |
| | | data: "json=" + JSON.stringify({ |
| | | tmp_id: id |
| | | }), |
| | | }); |
| | | } |
| | | // 更新电压 |
| | | export const updatedElePrice = (data) => { |
| | | // 请求后台查询内容 |
| | | return axios({ |
| | | method: 'post', |
| | | url: 'ElePriceAction!update', |
| | | data: "json=" + JSON.stringify(data), |
| | | }); |
| | | } |
| | | /** |
| | | * 统计削峰填谷价格 |
| | | * @param data |
| | | * @returns {AxiosPromise} |
| | | */ |
| | | export const getPeakPrice = (data) => { |
| | | // 请求后台查询内容 |
| | | return axios({ |
| | | method: 'post', |
| | | url: 'Peak_statisticsAction!serchByCondition', |
| | | data: "json=" + JSON.stringify(data), |
| | | }) |
| | | } |