Commit 8df5c7fb authored by xuke's avatar xuke

完善-能源消耗

parent 8ea21256
......@@ -7,6 +7,7 @@ import {
postEnergyManage,
postEnergyDel,
postEnergyUpdate,
getOrganizationStructureInterface
} from "@/api/scheduling";
import http from "../../api/http";
import loading from "element-plus";
......@@ -14,6 +15,7 @@ import store from "../../store";
import { vFloatNumber } from "@/utils/directives.js";
const { proxy } = getCurrentInstance();
const tableData = ref([{}]);
// 获取渲染
const formEnergy = ref({
"updateNullFields": "",
"supplyId": "",
......@@ -22,19 +24,32 @@ const formEnergy = ref({
"recordDate": "",
"energyName": ''
})
// 获取 energyId
const reset = () => {
formEnergy.value = {
"updateNullFields": "",
"supplyId": "",
"energyType": "",
"record": "",
"recordDate": "",
"energyName": ''
}
}
const energyForm = ref()
const dialogVisible = ref(false)
const getEnergyData = async () => {
await http
.post("/api/energy/getData", config.supplyType)
.then((res) => {
// console.log("res:", res);
const getEnergyData = () => {
http.post("/api/energy/getData", config.supplyType).then((res) => {
if (res.success) {
tableData.value = res.data;
ElMessage.success(res.message);
} else {
ElMessage.error("系统繁忙, 请稍后再试")
}
})
.catch((err) => {
console.log(error);
});
ElMessage.success("获取数据成功");
};
const tableLabel = reactive([
......@@ -97,89 +112,91 @@ const rules = reactive({
energyType: [
{ required: true, message: "能源类型是必填项", trigger: "blur" },
],
record: [{ required: true, message: "能源用度是必选项", trigger: "change" }],
record: [{ required: true, message: "能源用度是必选项", trigger: "blur" }],
recordDate: [{ required: true, message: "日期是必选项" }],
});
// 删除
const handleDelete = async (row) => {
const handleDelete = (row) => {
console.log(row.energyId);
console.log('"' + row.energyId + '"');
let EnergyId = row.energyId;
await ElMessageBox.confirm("你确定要删除吗?", {
ElMessageBox.confirm("你确定要删除吗?", {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning',
confirmButtonClass: 'ExitConfirmButton'
})
const res = await http.post("api/energy/Delete", { id: row.energyId }, false)
http.post("api/energy/Delete", { id: row.energyId }, false).then(res => {
if (res.success) {
ElMessage.success("删除成功");
ElMessage.success(res.message)
getEnergyData();
} else {
ElMessage.error("删除失败");
}
})
};
// 新增
const action = ref('add')
const handleClose = () => {
dialogVisible.value = false
proxy.$ref['energyForm'].resetFields()
reset()
}
const handleCancel = () => {
dialogVisible.value = false
proxy.$ref['energyForm'].resetFields()
}
const handleAdd = () => {
action.value = "add",
dialogVisible.value = true;
proxy.$refs['energyForm'].resetFields()
formEnergy.supplyType = '',
formEnergy.energyType = ''
reset()
}
const handleEdit = (val) => {
// console.log("supplyData===>", supplyData.value);
supplyData.value.forEach((item) => {
if (item.supplyName === val.supplyName) {
val.supplyId = item.supplyId
}
})
console.log("一行的数据val===>", val);
action.value = "edit";
dialogVisible.value = true;
nextTick(() => {
Object.assign(formEnergy.value, { ...val });
console.log("val:", val);
});
// nextTick(() => {
// Object.assign(formEnergy.value, { ...val });
// console.log("val:", val);
// });
formEnergy.value = { ...val }
};
const onSubmit = (formEl) => {
energyForm.value.validate(async (valid) => {
const onSubmit = () => {
loading.value = true
energyForm.value.validate((valid) => {
if (valid) {
let res = null;
formEnergy.recordDate = /^\d{4}-\d{2}-\d{2}$/.test(formEnergy.recordDate)
? formEnergy.recordDate
: timeFormat(formEnergy.recordDate);
if (action.value === "add") {
await http
.post("api/energy/Save", { ...formEnergy.value }, false)
.then((res) => { })
.then((res) => {
ElMessage({
type: "success",
message: "新增成功",
});
getEnergyData();
});
if (res) {
dialogVisible.value = false;
http.post("api/energy/Save", { ...formEnergy.value }, false).then(res => {
if (res.success) {
dialogVisible.value = false
// ElMessage.success(res.message)
getEnergyData();
if (!formEl) return;
formEl.resetFields();
loading.value = false
}
})
} else {
res = postEnergyUpdate(formEnergy.value);
if (!formEl) return;
formEl.resetFields();
dialogVisible.value = false;
formEnergy.value.supplyId = "";
formEnergy.energyType = "";
delete formEnergy.value.supplyName;
formEnergy.value.updateNullFields = "";
http.post("api/energy/Save", { ...formEnergy.value }, false).then((res => {
if (res.success) {
dialogVisible.value = false
// ElMessage.success(res.message)
getEnergyData();
loading.value = false
}
}))
}
} else {
ElMessage({
......@@ -192,7 +209,6 @@ const onSubmit = (formEl) => {
};
const props = { multiple: false, emitPath: false, checkStrictly: true };
const enterpriseId = ref();
let supplyIdOptions = reactive([]);
getEnterprise();
function getEnterprise() {
var result = store.getters.getEnterprise();
......@@ -208,49 +224,32 @@ const PatrolInfo = reactive({
count: 30,
sort: "",
});
const options = reactive([]);
const getSupplys = () => {
loading.value = true;
options.length = 0;
PatrolInfo.Id.length = 0;
var result = store.getters.getEnterprise();
if (result) {
result.forEach((element) => {
if (element.enterpriseId === enterpriseId.value) {
if (
element.enterpriseId ===
"9BCA54BC-8F27-4849-8D7D-50C5099E1949".toLowerCase()
) {
element.serviceCenterList.forEach((center) => {
let c = [];
center.supplyList.forEach((supply) => {
let chi = [];
supply.transferList.forEach(unit => {
});
c.push({
children: chi,
label: supply.supplyName,
value: supply.supplyId,
});
});
options.push({ children: c, label: center.serviceCenterName });
});
} else {
element.supplyList.forEach((element) => {
let chi = [];
element.transferList.forEach((unit) => {
chi.push({ value: unit.unitId, label: unit.unitName });
});
options.push({ children: chi, label: element.supplyName });
});
}
}
});
}
const organizationStructure = ref([]) // 组织结构数据
const supplyData = ref([]) // 供热站数据
function getSupply() {
organizationStructure.value[0].serviceCenterList.forEach(fir_item => {
fir_item.supplyList.forEach(sec_item => {
supplyData.value.push({
supplyId: sec_item.supplyId,
supplyName: sec_item.supplyName
})
})
})
}
// 根据组织结构获取供热站数据
function getOrganizationStructure() {
getOrganizationStructureInterface().then(res => {
organizationStructure.value = res.data
getSupply()
// getAllTransfer()
}).catch(err => {
ElMessage.error('接口异常,获取数据失败.')
})
}
onMounted(() => {
getOrganizationStructure()
getEnergyData()
getSupplys()
})
</script>
......@@ -318,13 +317,12 @@ onMounted(() => {
<table cellpadding="0" cellspacing="0">
<tr>
<td style="text-align: left">
<!-- <el-select v-model="formEnergy.supplyId" placeholder="请选择">
<el-option label="东部供热站" value="DFA20074-8731-457F-B63F-4E1858CFE266" />
<el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value" />
</el-select> -->
<el-form-item prop="supplyName" style="margin: 0; padding: 0; width: 100%">
<el-cascader :options="options" v-model="formEnergy.supplyId" :props="props" collapse-tags clearable
:show-all-levels="false" placeholder="请选择" class="el-cascader-menu" />
<el-select v-model="formEnergy.supplyId" placeholder="" style="width: 210px;" class="custom-select"
size="small">
<el-option v-for="item in supplyData" :key="item.supplyId" :label="item.supplyName"
:value="item.supplyId" />
</el-select>
</el-form-item>
</td>
</tr>
......@@ -383,7 +381,7 @@ onMounted(() => {
</table>
<div class="dialog-footer">
<el-button type="primary" @click="handleCancel(energyForm)">关闭</el-button>
<el-button type="primary" @click="onSubmit(energyForm)">保存</el-button>
<el-button type="primary" @click="onSubmit()">保存</el-button>
</div>
</el-form>
</el-dialog>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment