diff --git a/hx-ai-intelligent/src/view/equipmentManage/group/config.ts b/hx-ai-intelligent/src/view/equipmentManage/group/config.ts
index aedce11..3c6d7f5 100644
--- a/hx-ai-intelligent/src/view/equipmentManage/group/config.ts
+++ b/hx-ai-intelligent/src/view/equipmentManage/group/config.ts
@@ -48,17 +48,18 @@ const tableCarbonKeyMap = [
// textEllipsis: true,
textNumber: 5,
},
- {
- title: '设备名称',
- textNumber: 10,
- dataIndex: 'deviceName',
- // textEllipsis: true,
- },
+
{
title: '设备id',
dataIndex: 'deviceInfoCode',
textNumber: 10,
},
+ {
+ title: '设备编号',
+ textNumber: 10,
+ dataIndex: 'deviceName',
+ // textEllipsis: true,
+ },
{
textNumber: 5,
title: '碳排因子值',
@@ -77,14 +78,22 @@ const tableCarbonKeyMap = [
{
title: '分组名称',
textNumber: 10,
- dataIndex: 'deviceNameType',
+ dataIndex: 'pointName',
},
{
textNumber: 5,
title: '设备状态',
dataIndex: 'status',
customRender: ({ value }) => {
- return value === '0' ? '启用' : '停用';
+ if (value) {
+ if (value === '0') {
+ return '启用';
+ } else if (value === '1') {
+ return '停用';
+ }
+ } else {
+ return '';
+ }
},
},
];
@@ -219,7 +228,7 @@ export const editCalTreeConfig = (orgId) => ({
],
},
});
-export const treeConfig = (orgId) => {
+export const treeConfig = (orgId, editCarbonEquipmentRef, tableRef) => {
return {
defaultExpandAll: true,
header: {
@@ -233,6 +242,8 @@ export const treeConfig = (orgId) => {
return [{ pointName: '全部', id: 'all', selectable: false, children: data }];
},
formConfig: {
+ callList: true, // 刷新列表
+ // defaultSelection: true, //树默认选择第一个
schemas: [
{
field: 'energyType',
@@ -248,6 +259,12 @@ export const treeConfig = (orgId) => {
valueField: 'dicKey',
placeholder: '请选择能耗种类',
autoSelectFirst: true,
+ onSelect: async (cur, record) => {
+ editCarbonEquipmentRef.value.changeEnergyType(cur);
+ tableRef.value?.nsTableRef.clearCheck();
+ tableRef.value?.nsTableRef.reload();
+ // value.value = cur;
+ },
},
},
{
@@ -402,12 +419,12 @@ export const tableConfigCal = (
label: '编辑',
name: 'GroupPointEdit',
type: 'primary',
- handle: (a, b) => {
- if (isCarbon) {
- editCarbonEquipmentRef.value.toggle();
- } else {
- el.value.toggle();
- }
+ handle: async (a, b) => {
+ // if (isCarbon) {
+ editCarbonEquipmentRef.value.toggle();
+ // } else {
+ // el.value.toggle();
+ // }
},
},
{
@@ -656,7 +673,7 @@ export const tableConfigCal = (
};
};
-export const editCarbonEquipmentConfig = (orgId) => {
+export const editCarbonEquipmentConfig = (orgId, props) => {
return ref({
title: '设备信息',
api: device.queryDevicePage,
@@ -673,22 +690,6 @@ export const editCarbonEquipmentConfig = (orgId) => {
fieldNames: { title: 'deviceType', key: 'code' },
formConfig: {
schemas: [
- {
- field: 'energyType',
- label: '',
- component: 'NsSelectApi',
- autoSubmit: true,
- componentProps: {
- api: () => dict({ params: { dicKey: 'ENERGY_TYPE' } }),
- // params: { dicKey: 'ENERGY_TYPE' },
- immediate: true,
- // resultField: 'data.ENERGY_TYPE',
- labelField: 'cnValue',
- valueField: 'dicKey',
- placeholder: '请选择能耗种类',
- autoSelectFirst: true,
- },
- },
{
field: 'deviceType',
label: '设备名称',
@@ -742,6 +743,26 @@ export const editCarbonEquipmentConfig = (orgId) => {
],
formConfig: {
schemas: [
+ {
+ field: 'energyType',
+ label: '',
+ component: 'NsSelectApi',
+ // autoSubmit: true,
+ defaultValue: props.params.energyType,
+ componentProps: {
+ api: () => dict({ params: { dicKey: 'ENERGY_TYPE' } }),
+ // params: { dicKey: 'ENERGY_TYPE' },
+ immediate: true,
+ // resultField: 'data.ENERGY_TYPE',
+ labelField: 'cnValue',
+ valueField: 'dicKey',
+ placeholder: '请选择能耗种类',
+ // autoSelectFirst: true,
+ },
+ dynamicDisabled: (data: any) => {
+ return props.params.energyType !== 'CARBON_EMISSIONS';
+ },
+ },
{
field: 'areas',
label: '设备区域',
diff --git a/hx-ai-intelligent/src/view/equipmentManage/group/editCarbonEquipment.vue b/hx-ai-intelligent/src/view/equipmentManage/group/editCarbonEquipment.vue
index e6db509..2ccf6db 100644
--- a/hx-ai-intelligent/src/view/equipmentManage/group/editCarbonEquipment.vue
+++ b/hx-ai-intelligent/src/view/equipmentManage/group/editCarbonEquipment.vue
@@ -28,6 +28,7 @@
@@ -44,33 +45,46 @@
import { http } from '/nerv-lib/util';
import { group, device } from '/@/api/deviceManage';
const orgId = ref('');
+
const key = ref(Date.now());
const result = JSON.parse(sessionStorage.getItem('ORGID')!);
orgId.value = result;
+ const linkOrgId = ref('');
+
// const selectOrgId = ref(orgId.value);
+ const props = defineProps({ params: Object });
const linkList = JSON.parse(sessionStorage.getItem('LINKLIST')!);
- let config = editCarbonEquipmentConfig(orgId.value);
+ linkOrgId.value = linkList[0].orgId;
+ let config = editCarbonEquipmentConfig(orgId.value, props);
const visible = ref(false);
const carbonEquipment = ref();
// defineOptions({
// name: 'LedgerIndex', // 与页面路由name一致缓存才可生效
// });
+ const changeEnergyType = (val) => {
+ props.params.energyType = val;
+ config = editCarbonEquipmentConfig(linkOrgId.value, props);
+ key.value = Date.now();
+ };
const handleChange = (value: string) => {
// selectOrgId.value = value;
- config = editCarbonEquipmentConfig(value);
- debugger;
+ config = editCarbonEquipmentConfig(value, props);
key.value = Date.now();
// carbonEquipment.value?.nsTableRef.reload();
// carbonEquipment.value?.nsTableRef.treeReload();
};
- const props = defineProps({ params: Object });
const emit = defineEmits(['sure']);
- const toggle = () => {
+ const toggle = (val) => {
+ if (val) {
+ config = editCarbonEquipmentConfig(linkOrgId.value, props);
+ key.value = Date.now();
+ }
+
visible.value = !visible.value;
// clearData();
// visible.value && getData(currentId.value);
@@ -93,14 +107,35 @@
deviceInfoCode: selectedRowKeys[i],
});
}
- http.post(group.addCarbonDevice, params).then(() => {
- emit('sure');
- NsMessage.success('操作成功');
- toggle();
- });
+ if (props.params.energyType && props.params.energyType == 'CARBON_EMISSIONS') {
+ http.post(group.addCarbonDevice, params).then(() => {
+ emit('sure');
+ NsMessage.success('操作成功');
+ toggle(null);
+ });
+ } else if (props.params.energyType && props.params.energyType != 'CARBON_EMISSIONS') {
+ // if (!currentId.value) {
+ // NsMessage.warn('请先选择公司');
+ // return;
+ // }
+ http
+ .post(group.saveComputeList, {
+ energyType: props.params.energyType,
+ orgId: props.params?.orgId,
+ hxDeviceGroupId: props.params?.hxDeviceGroupId,
+ saveOrgId: linkOrgId.value,
+ saveDeviceInfoCodes: selectedRowKeys,
+ })
+ .then(() => {
+ emit('sure');
+ NsMessage.success('操作成功');
+ toggle(null);
+ });
+ }
};
defineExpose({
toggle,
+ changeEnergyType,
});