diff --git a/src/api/machine/addEquipmentAccountApi.js b/src/api/machine/addEquipmentAccountApi.js new file mode 100644 index 0000000..a3c92df --- /dev/null +++ b/src/api/machine/addEquipmentAccountApi.js @@ -0,0 +1,36 @@ +import request from '@/utils/request' + +// 保存设备账户信息 +export function saveEquipmentAccount(data) { + return new Promise((resolve, reject) => { + request({ + url: '/equipmentAccount.saveEquipmentAccount', + method: 'post', + data + }).then(response => { + const res = response.data + resolve(res) + }).catch(error => { + reject(error) + }) + }) +} + +// 获取设备类型字典 +export function getEquipmentDict(dictType, dictName) { + return new Promise((resolve, reject) => { + request({ + url: '/dict.getDict', + method: 'get', + params: { + dictType, + dictName + } + }).then(response => { + const res = response.data + resolve(res) + }).catch(error => { + reject(error) + }) + }) +} \ No newline at end of file diff --git a/src/api/machine/editEquipmentAccountApi.js b/src/api/machine/editEquipmentAccountApi.js new file mode 100644 index 0000000..500a567 --- /dev/null +++ b/src/api/machine/editEquipmentAccountApi.js @@ -0,0 +1,33 @@ +import request from '@/utils/request' + +// 更新设备信息 +export function updateEquipmentAccount(data) { + return new Promise((resolve, reject) => { + request({ + url: '/equipmentAccount.updateEquipmentAccount', + method: 'post', + data + }).then(response => { + const res = response.data + resolve(res) + }).catch(error => { + reject(error) + }) + }) +} + +// 获取设备列表 +export function listEquipmentAccount(params) { + return new Promise((resolve, reject) => { + request({ + url: '/equipmentAccount.listEquipmentAccount', + method: 'get', + params + }).then(response => { + const res = response.data + resolve(res) + }).catch(error => { + reject(error) + }) + }) +} \ No newline at end of file diff --git a/src/api/machine/equipmentAccountApi.js b/src/api/machine/equipmentAccountApi.js new file mode 100644 index 0000000..c46b8d6 --- /dev/null +++ b/src/api/machine/equipmentAccountApi.js @@ -0,0 +1,202 @@ +import request from '@/utils/request' + +// 获取设备台账列表 +export function listEquipmentAccount(params) { + return new Promise((resolve, reject) => { + request({ + url: '/equipmentAccount.listEquipmentAccount', + method: 'get', + params + }).then(response => { + const res = response.data + resolve({ + data: res.data, + total: res.total, + records: res.records + }) + }).catch(error => { + reject(error) + }) + }) +} + +// 获取设备类型列表 +export function listMachineType(params) { + return new Promise((resolve, reject) => { + request({ + url: '/machineType.listMachineType', + method: 'get', + params + }).then(response => { + const res = response.data + resolve(res.data) + }).catch(error => { + reject(error) + }) + }) +} + +// 获取组织树 +export function listOrgTree(params) { + return new Promise((resolve, reject) => { + request({ + url: '/org.listOrgTree', + method: 'get', + params + }).then(response => { + const res = response.data + resolve(res.data) + }).catch(error => { + reject(error) + }) + }) +} + +// 查询员工信息 +export function queryStaffInfos(params) { + return new Promise((resolve, reject) => { + request({ + url: '/query.staff.infos', + method: 'get', + params + }).then(response => { + const res = response.data + resolve({ + staffs: res.staffs + }) + }).catch(error => { + reject(error) + }) + }) +} + +// 修改设备状态 +export function changeStateEquipment(data) { + return new Promise((resolve, reject) => { + request({ + url: '/equipmentAccount.changeStateEquipment', + method: 'post', + data + }).then(response => { + const res = response.data + resolve(res) + }).catch(error => { + reject(error) + }) + }) +} + +// 移动设备 +export function moveEquipment(data) { + return new Promise((resolve, reject) => { + request({ + url: '/equipmentAccount.moveEquipment', + method: 'post', + data + }).then(response => { + const res = response.data + resolve(res) + }).catch(error => { + reject(error) + }) + }) +} + +// 删除设备台账 +export function deleteEquipmentAccount(data) { + return new Promise((resolve, reject) => { + request({ + url: '/equipmentAccount.deleteEquipmentAccount', + method: 'post', + data + }).then(response => { + const res = response.data + resolve(res) + }).catch(error => { + reject(error) + }) + }) +} + +// 获取设备详情 +export function getEquipmentAccountDetail(params) { + return new Promise((resolve, reject) => { + request({ + url: '/equipmentAccount.getEquipmentAccountDetail', + method: 'get', + params + }).then(response => { + const res = response.data + resolve(res.data) + }).catch(error => { + reject(error) + }) + }) +} + +// 导入设备数据 +export function importEquipmentData(data) { + return new Promise((resolve, reject) => { + request({ + url: '/importExportEquipment.importData', + method: 'post', + data, + headers: { + 'Content-Type': 'multipart/form-data' + } + }).then(response => { + const res = response.data + resolve(res) + }).catch(error => { + reject(error) + }) + }) +} + +// 导出导入模板 +export function exportImportTemplate(params) { + return new Promise((resolve, reject) => { + request({ + url: '/importExportEquipment.exportImportDataTemp', + method: 'get', + params, + responseType: 'blob' + }).then(response => { + // 创建下载链接 + const url = window.URL.createObjectURL(new Blob([response.data])) + const link = document.createElement('a') + link.href = url + link.setAttribute('download', 'equipment_import_template.xlsx') + document.body.appendChild(link) + link.click() + document.body.removeChild(link) + resolve() + }).catch(error => { + reject(error) + }) + }) +} + +// 导出设备数据 +export function exportEquipmentData(params) { + return new Promise((resolve, reject) => { + request({ + url: '/importExportEquipment.exportData', + method: 'get', + params, + responseType: 'blob' + }).then(response => { + // 创建下载链接 + const url = window.URL.createObjectURL(new Blob([response.data])) + const link = document.createElement('a') + link.href = url + link.setAttribute('download', 'equipment_export_data.xlsx') + document.body.appendChild(link) + link.click() + document.body.removeChild(link) + resolve() + }).catch(error => { + reject(error) + }) + }) +} \ No newline at end of file diff --git a/src/api/machine/equipmentAccountDetailApi.js b/src/api/machine/equipmentAccountDetailApi.js new file mode 100644 index 0000000..bb9a4b9 --- /dev/null +++ b/src/api/machine/equipmentAccountDetailApi.js @@ -0,0 +1,40 @@ +import request from '@/utils/request' +import { getCommunityId } from '@/api/community/communityApi' + +// 获取设备详情 +export function getEquipmentAccountDetail(params) { + return new Promise((resolve, reject) => { + request({ + url: '/equipmentAccount.listEquipmentAccount', + method: 'get', + params: { + ...params, + communityId: getCommunityId() + } + }).then(response => { + const res = response.data + resolve(res) + }).catch(error => { + reject(error) + }) + }) +} + +// 获取设备操作日志 +export function getEquipmentLogs(params) { + return new Promise((resolve, reject) => { + request({ + url: '/equipmentOperatingLog.listEquipmentOperatingLog', + method: 'get', + params: { + ...params, + communityId: getCommunityId() + } + }).then(response => { + const res = response.data + resolve(res) + }).catch(error => { + reject(error) + }) + }) +} \ No newline at end of file diff --git a/src/api/resource/printEquipmentAccountLabelApi.js b/src/api/resource/printEquipmentAccountLabelApi.js new file mode 100644 index 0000000..c8f7d12 --- /dev/null +++ b/src/api/resource/printEquipmentAccountLabelApi.js @@ -0,0 +1,17 @@ +import request from '@/utils/request' + +// 获取设备账户标签列表 +export function getEquipmentAccountList(params) { + return new Promise((resolve, reject) => { + request({ + url: '/equipmentAccount.listEquipmentAccount', + method: 'get', + params + }).then(response => { + const res = response.data + resolve(res) + }).catch(error => { + reject(error) + }) + }) +} \ No newline at end of file diff --git a/src/components/machine/changeStateEquipment.vue b/src/components/machine/changeStateEquipment.vue new file mode 100644 index 0000000..6ca679f --- /dev/null +++ b/src/components/machine/changeStateEquipment.vue @@ -0,0 +1,84 @@ + + + \ No newline at end of file diff --git a/src/components/machine/deleteEquipmentAccount.vue b/src/components/machine/deleteEquipmentAccount.vue new file mode 100644 index 0000000..a64b64e --- /dev/null +++ b/src/components/machine/deleteEquipmentAccount.vue @@ -0,0 +1,74 @@ + + + + + \ No newline at end of file diff --git a/src/components/machine/editMachineType.vue b/src/components/machine/editMachineType.vue index bbeab66..98a7926 100644 --- a/src/components/machine/editMachineType.vue +++ b/src/components/machine/editMachineType.vue @@ -1,22 +1,13 @@ + + \ No newline at end of file diff --git a/src/components/machine/moveEquipment.vue b/src/components/machine/moveEquipment.vue new file mode 100644 index 0000000..b68558b --- /dev/null +++ b/src/components/machine/moveEquipment.vue @@ -0,0 +1,93 @@ + + + \ No newline at end of file diff --git a/src/components/machine/printEquipmentAccount.vue b/src/components/machine/printEquipmentAccount.vue new file mode 100644 index 0000000..c57d48e --- /dev/null +++ b/src/components/machine/printEquipmentAccount.vue @@ -0,0 +1,137 @@ + + + + + \ No newline at end of file diff --git a/src/components/machine/viewEquipmentAccount.vue b/src/components/machine/viewEquipmentAccount.vue new file mode 100644 index 0000000..c8c2c26 --- /dev/null +++ b/src/components/machine/viewEquipmentAccount.vue @@ -0,0 +1,167 @@ + + + + + \ No newline at end of file diff --git a/src/i18n/commonLang.js b/src/i18n/commonLang.js index ba830c0..53abe63 100644 --- a/src/i18n/commonLang.js +++ b/src/i18n/commonLang.js @@ -45,7 +45,8 @@ export const messages = { more:'More', tip:'Tip', selectFile:'Select File', - change:'Change' + change:'Change', + print:'Print', } }, zh: { @@ -94,7 +95,8 @@ export const messages = { more:'更多', tip:'提示', selectFile:'选择文件', - change:'变更' + change:'变更', + print:'打印', } } } \ No newline at end of file diff --git a/src/i18n/index.js b/src/i18n/index.js index 4140dfc..b2c8799 100644 --- a/src/i18n/index.js +++ b/src/i18n/index.js @@ -199,6 +199,12 @@ import { messages as allocationUserStorehouseManageMessages } from '../views/res import { messages as resourceStoreUseRecordManageMessages } from '../views/resource/resourceStoreUseRecordManageLang' import { messages as locationManageMessages } from '../views/community/locationManageLang' import { messages as machineTypeTreeManageMessages } from '../views/machine/machineTypeTreeManageLang' +import { messages as equipmentAccountMessages } from '../views/machine/equipmentAccountLang' +import { messages as addEquipmentAccountMessages } from '../views/machine/addEquipmentAccountLang' +import { messages as editEquipmentAccountMessages } from '../views/machine/editEquipmentAccountLang' +import { messages as equipmentAccountDetailMessages } from '../views/machine/equipmentAccountDetailLang' +import { messages as printEquipmentAccountLabelMessages } from '../views/resource/printEquipmentAccountLabelLang' + Vue.use(VueI18n) // 合并所有语言配置 @@ -401,6 +407,11 @@ const messages = { ...resourceStoreUseRecordManageMessages.en, ...locationManageMessages.en, ...machineTypeTreeManageMessages.en, + ...equipmentAccountMessages.en, + ...addEquipmentAccountMessages.en, + ...editEquipmentAccountMessages.en, + ...equipmentAccountDetailMessages.en, + ...printEquipmentAccountLabelMessages.en, }, zh: { ...loginMessages.zh, @@ -600,6 +611,11 @@ const messages = { ...resourceStoreUseRecordManageMessages.zh, ...locationManageMessages.zh, ...machineTypeTreeManageMessages.zh, + ...equipmentAccountMessages.zh, + ...addEquipmentAccountMessages.zh, + ...editEquipmentAccountMessages.zh, + ...equipmentAccountDetailMessages.zh, + ...printEquipmentAccountLabelMessages.zh, } } diff --git a/src/router/index.js b/src/router/index.js index 9d7c3e0..5d8289f 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -2,6 +2,7 @@ import Vue from 'vue' import VueRouter from 'vue-router' import Layout from '@/views/layout/layout.vue' import Login from '@/views/user/login/Login.vue' +import printEquipmentAccountLabel from '@/views/resource/printEquipmentAccountLabelList.vue' Vue.use(VueRouter) @@ -977,15 +978,36 @@ const routes = [ component: () => import('@/views/resource/resourceStoreUseRecordManageList.vue') }, { - path:'/pages/property/locationManage', - name:'/pages/property/locationManage', + path: '/pages/property/locationManage', + name: '/pages/property/locationManage', component: () => import('@/views/community/locationManageList.vue') - }, - { - path:'/pages/property/machineTypeTreeManage', - name:'/pages/property/machineTypeTreeManage', - component: () => import('@/views/machine/machineTypeTreeManageList.vue') - }, + }, + { + path: '/pages/property/machineTypeTreeManage', + name: '/pages/property/machineTypeTreeManage', + component: () => import('@/views/machine/machineTypeTreeManageList.vue') + }, + { + path: '/pages/property/equipmentAccount', + name: '/pages/property/equipmentAccount', + component: () => import('@/views/machine/equipmentAccountList.vue') + }, + { + path: '/views/machine/addEquipmentAccount', + name: '/views/machine/addEquipmentAccount', + component: () => import('@/views/machine/addEquipmentAccountList.vue') + }, + { + path: '/views/machine/editEquipmentAccount', + name: '/views/machine/editEquipmentAccount', + component: () => import('@/views/machine/editEquipmentAccountList.vue') + }, + { + path: '/views/machine/equipmentAccountDetail', + name: '/views/machine/equipmentAccountDetail', + component: () => import('@/views/machine/equipmentAccountDetailList.vue') + }, + // 其他子路由可以在这里添加 ] }, @@ -997,7 +1019,12 @@ const routes = [ title: '登陆页面', icon: 'el-icon-s-home' } - } + }, + { + path: '/views/resource/printEquipmentAccountLabel', + name: '/views/resource/printEquipmentAccountLabel', + component: printEquipmentAccountLabel + }, ] const router = new VueRouter({ diff --git a/src/views/machine/addEquipmentAccountLang.js b/src/views/machine/addEquipmentAccountLang.js new file mode 100644 index 0000000..34d7bfe --- /dev/null +++ b/src/views/machine/addEquipmentAccountLang.js @@ -0,0 +1,92 @@ +export const messages = { + en: { + addEquipmentAccount: { + title: 'Add Equipment', + machineName: 'Equipment Name', + machineNamePlaceholder: 'Required, please enter equipment name', + machineCode: 'Equipment Code', + machineCodePlaceholder: 'Required, please enter equipment code', + importanceLevel: 'Importance Level', + importanceLevelPlaceholder: 'Required, please select importance level', + state: 'Usage Status', + statePlaceholder: 'Required, please select usage status', + brand: 'Brand', + brandPlaceholder: 'Optional, please enter brand', + model: 'Model', + modelPlaceholder: 'Optional, please enter model', + netWorth: 'Net Worth', + netWorthPlaceholder: 'Optional, please enter net worth', + locationDetail: 'Location Detail', + locationDetailPlaceholder: 'Optional, please enter location detail', + firstEnableTime: 'First Enable Time', + firstEnableTimePlaceholder: 'Optional, please select first enable time', + warrantyDeadline: 'Warranty Deadline', + warrantyDeadlinePlaceholder: 'Optional, please select warranty deadline', + usefulLife: 'Useful Life (Years)', + usefulLifePlaceholder: 'Optional, please enter useful life', + purchasePrice: 'Purchase Price', + purchasePricePlaceholder: 'Optional, please enter purchase price', + useUserName: 'User', + useUserNamePlaceholder: 'Required, please select user', + chargeUseName: 'Responsible Person', + chargeUseNamePlaceholder: 'Required, please select responsible person', + remark: 'Remark', + remarkPlaceholder: 'Optional, please enter remark', + validate: { + machineNameRequired: 'Equipment name is required', + machineCodeRequired: 'Equipment code is required', + importanceLevelRequired: 'Importance level is required', + stateRequired: 'Usage status is required', + useUserNameRequired: 'User is required', + chargeUseNameRequired: 'Responsible person is required' + }, + saveSuccess: 'Add successfully', + saveFailed: 'Add failed' + } + }, + zh: { + addEquipmentAccount: { + title: '添加设备', + machineName: '设备名称', + machineNamePlaceholder: '必填,请填写设备名称', + machineCode: '设备编码', + machineCodePlaceholder: '必填,请填写设备编码', + importanceLevel: '重要等级', + importanceLevelPlaceholder: '必填,请选择重要等级', + state: '使用状态', + statePlaceholder: '必填,请选择使用状态', + brand: '设备品牌', + brandPlaceholder: '选填,请填写设备品牌', + model: '设备型号', + modelPlaceholder: '选填,请填写设备型号', + netWorth: '资产净值', + netWorthPlaceholder: '选填,请填写资产净值', + locationDetail: '位置详情', + locationDetailPlaceholder: '选填,请填写位置详情', + firstEnableTime: '首次启用时间', + firstEnableTimePlaceholder: '选填,请填写首次启用时间', + warrantyDeadline: '保修截止日期', + warrantyDeadlinePlaceholder: '选填,请填写保修截止日期', + usefulLife: '使用年限(年)', + usefulLifePlaceholder: '选填,请填写使用年限', + purchasePrice: '采购价格', + purchasePricePlaceholder: '选填,请填写采购价格', + useUserName: '使用人', + useUserNamePlaceholder: '必填,请选择使用人', + chargeUseName: '责任人', + chargeUseNamePlaceholder: '必填,请选择责任人', + remark: '备注', + remarkPlaceholder: '选填,请填写备注', + validate: { + machineNameRequired: '设备名称不能为空', + machineCodeRequired: '设备编码不能为空', + importanceLevelRequired: '重要等级不能为空', + stateRequired: '使用状态不能为空', + useUserNameRequired: '使用人不能为空', + chargeUseNameRequired: '责任人不能为空' + }, + saveSuccess: '添加成功', + saveFailed: '添加失败' + } + } +} \ No newline at end of file diff --git a/src/views/machine/addEquipmentAccountList.vue b/src/views/machine/addEquipmentAccountList.vue new file mode 100644 index 0000000..d887e45 --- /dev/null +++ b/src/views/machine/addEquipmentAccountList.vue @@ -0,0 +1,266 @@ + + + + + \ No newline at end of file diff --git a/src/views/machine/editEquipmentAccountLang.js b/src/views/machine/editEquipmentAccountLang.js new file mode 100644 index 0000000..95a8736 --- /dev/null +++ b/src/views/machine/editEquipmentAccountLang.js @@ -0,0 +1,72 @@ +export const messages = { + en: { + editEquipmentAccount: { + title: 'Edit Equipment', + machineName: 'Equipment Name', + machineNamePlaceholder: 'Required, please enter equipment name', + machineCode: 'Equipment Code', + machineCodePlaceholder: 'Required, please enter equipment code', + importanceLevel: 'Importance Level', + importanceLevelPlaceholder: 'Required, please select importance level', + state: 'Status', + statePlaceholder: 'Required, please select status', + brand: 'Brand', + brandPlaceholder: 'Optional, please enter brand', + model: 'Model', + modelPlaceholder: 'Optional, please enter model', + netWorth: 'Net Worth', + netWorthPlaceholder: 'Optional, please enter net worth', + locationDetail: 'Location Detail', + locationDetailPlaceholder: 'Optional, please enter location detail', + firstEnableTime: 'First Enable Time', + firstEnableTimePlaceholder: 'Optional, please select first enable time', + warrantyDeadline: 'Warranty Deadline', + warrantyDeadlinePlaceholder: 'Optional, please select warranty deadline', + usefulLife: 'Useful Life (Years)', + usefulLifePlaceholder: 'Optional, please enter useful life', + purchasePrice: 'Purchase Price', + purchasePricePlaceholder: 'Optional, please enter purchase price', + useUserName: 'User', + useUserNamePlaceholder: 'Required, please select user', + chargeUseName: 'Responsible Person', + chargeUseNamePlaceholder: 'Required, please select responsible person', + remark: 'Remark', + remarkPlaceholder: 'Optional, please enter remark' + } + }, + zh: { + editEquipmentAccount: { + title: '修改设备', + machineName: '设备名称', + machineNamePlaceholder: '必填,请填写设备名称', + machineCode: '设备编码', + machineCodePlaceholder: '必填,请填写设备编码', + importanceLevel: '重要等级', + importanceLevelPlaceholder: '必填,请选择重要等级', + state: '使用状态', + statePlaceholder: '必填,请选择使用状态', + brand: '设备品牌', + brandPlaceholder: '选填,请填写设备品牌', + model: '设备型号', + modelPlaceholder: '选填,请填写设备型号', + netWorth: '资产净值', + netWorthPlaceholder: '选填,请填写资产净值', + locationDetail: '位置详情', + locationDetailPlaceholder: '选填,请填写位置详情', + firstEnableTime: '首次启用时间', + firstEnableTimePlaceholder: '选填,请填写首次启用时间', + warrantyDeadline: '保修截止日期', + warrantyDeadlinePlaceholder: '选填,请填写保修截止日期', + usefulLife: '使用年限(年)', + usefulLifePlaceholder: '选填,请填写使用年限', + purchasePrice: '采购价格', + purchasePricePlaceholder: '选填,请填写采购价格', + useUserName: '使用人', + useUserNamePlaceholder: '必填,请选择使用人', + chargeUseName: '责任人', + chargeUseNamePlaceholder: '必填,请选择责任人', + remark: '备注', + remarkPlaceholder: '选填,请填写备注' + } + } +} \ No newline at end of file diff --git a/src/views/machine/editEquipmentAccountList.vue b/src/views/machine/editEquipmentAccountList.vue new file mode 100644 index 0000000..c9cbb17 --- /dev/null +++ b/src/views/machine/editEquipmentAccountList.vue @@ -0,0 +1,263 @@ + + + + + \ No newline at end of file diff --git a/src/views/machine/equipmentAccountDetailLang.js b/src/views/machine/equipmentAccountDetailLang.js new file mode 100644 index 0000000..3c5dadc --- /dev/null +++ b/src/views/machine/equipmentAccountDetailLang.js @@ -0,0 +1,62 @@ +export const messages = { + en: { + equipmentAccountDetail: { + title: 'Equipment Details', + back: 'Back', + print: 'Print', + machineName: 'Equipment Name', + machineCode: 'Equipment Code', + levelName: 'Importance Level', + stateName: 'Usage Status', + brand: 'Equipment Brand', + model: 'Equipment Model', + locationDetail: 'Location Details', + firstEnableTime: 'First Enable Time', + warrantyDeadline: 'Warranty Deadline', + usefulLife: 'Useful Life (Years)', + purchasePrice: 'Purchase Price', + netWorth: 'Net Worth', + useUserName: 'User', + chargeUseName: 'Responsible Person', + remark: 'Remark', + logTitle: 'Equipment Logs', + serialNumber: 'No.', + operatingCode: 'Operation Code', + operatingDescriptor: 'Operation Description', + createTime: 'Operation Time', + yuan: 'Yuan', + illegalOperation: 'Illegal operation', + dataError: 'Data error' + } + }, + zh: { + equipmentAccountDetail: { + title: '设备详情', + back: '返回', + print: '打印', + machineName: '设备名称', + machineCode: '设备编码', + levelName: '重要等级', + stateName: '使用状态', + brand: '设备品牌', + model: '设备型号', + locationDetail: '位置详情', + firstEnableTime: '首次启用时间', + warrantyDeadline: '保修截止日期', + usefulLife: '使用年限(年)', + purchasePrice: '采购价格', + netWorth: '资产净值', + useUserName: '使用人', + chargeUseName: '责任人', + remark: '备注', + logTitle: '设备日志', + serialNumber: '序号', + operatingCode: '操作编码', + operatingDescriptor: '操作描述', + createTime: '操作时间', + yuan: '元', + illegalOperation: '非法操作', + dataError: '数据异常' + } + } +} \ No newline at end of file diff --git a/src/views/machine/equipmentAccountDetailList.vue b/src/views/machine/equipmentAccountDetailList.vue new file mode 100644 index 0000000..c8b4f77 --- /dev/null +++ b/src/views/machine/equipmentAccountDetailList.vue @@ -0,0 +1,283 @@ + + + + + \ No newline at end of file diff --git a/src/views/machine/equipmentAccountLang.js b/src/views/machine/equipmentAccountLang.js new file mode 100644 index 0000000..860dffe --- /dev/null +++ b/src/views/machine/equipmentAccountLang.js @@ -0,0 +1,106 @@ +export const messages = { + en: { + equipmentAccount: { + addEquipment: 'Add Equipment', + batchPrint: 'Batch Print', + searchCondition: 'Search Condition', + hide: 'Hide', + more: 'More', + machineName: 'Equipment Name', + machineNamePlaceholder: 'Please enter equipment name', + machineCode: 'Equipment Code', + machineCodePlaceholder: 'Please enter equipment code', + state: 'Status', + selectState: 'Please select status', + importanceLevel: 'Importance Level', + selectImportanceLevel: 'Please select importance level', + newLocation: 'New Location', + selectLocation: 'Please select location', + selectLocationFirst: 'Please select location first', + moveEquipment: 'Move Equipment', + confirmOperation: 'Confirm Operation', + confirmDelete: 'Are you sure to delete this equipment?', + viewEquipment: 'View Equipment', + printLabel: 'Print Label', + printQty: 'Print Quantity', + printPreview: 'Print Preview', + importEquipment: 'Import Equipment', + selectFile: 'Select File', + fileTip: 'Only .xls, .xlsx files can be uploaded, and no more than 2MB', + downloadTemplate: 'Download Template', + downloadTip1: 'Please download', + downloadTip2: 'to prepare data before uploading', + selectFileFirst: 'Please select file first', + invalidFileType: 'Invalid file type, only .xls, .xlsx files are allowed', + fileSizeExceed: 'File size cannot exceed 2MB', + selectTypeFirst: 'Please select equipment type first', + importSuccess: 'Import successfully', + stateDescription: 'Equipment status: in use, out of service, etc.', + brand: 'Brand', + model: 'Model', + locationDetail: 'Location Detail', + firstEnableTime: 'First Enable Time', + warrantyDeadline: 'Warranty Deadline', + usefulLife: 'Useful Life', + purchasePrice: 'Purchase Price', + netWorth: 'Net Worth', + useOrgName: 'Use Department', + useUserName: 'User', + chargeOrgName: 'Responsible Department', + chargeUseName: 'Responsible Person', + remark: 'Remark' + } + }, + zh: { + equipmentAccount: { + addEquipment: '添加设备', + batchPrint: '批量打印', + searchCondition: '查询条件', + hide: '隐藏', + more: '更多', + machineName: '设备名称', + machineNamePlaceholder: '请输入设备名称', + machineCode: '设备编码', + machineCodePlaceholder: '请输入设备编码', + state: '状态', + selectState: '请选择状态', + importanceLevel: '重要等级', + selectImportanceLevel: '请选择重要等级', + newLocation: '新位置', + selectLocation: '请选择位置', + selectLocationFirst: '请先选择位置', + moveEquipment: '移动设备', + confirmOperation: '确认操作', + confirmDelete: '确定删除该设备吗?', + viewEquipment: '查看设备', + printLabel: '打印标签', + printQty: '打印数量', + printPreview: '打印预览', + importEquipment: '导入设备', + selectFile: '选择文件', + fileTip: '只能上传.xls, .xlsx文件,且不超过2MB', + downloadTemplate: '下载模板', + downloadTip1: '请先下载', + downloadTip2: '准备数据后上传导入', + selectFileFirst: '请先选择文件', + invalidFileType: '文件类型不正确,只能上传.xls, .xlsx文件', + fileSizeExceed: '文件大小不能超过2MB', + selectTypeFirst: '请先选择设备分类', + importSuccess: '导入成功', + stateDescription: '设备状态分为:使用中、停用中等状态', + brand: '品牌', + model: '型号', + locationDetail: '位置详情', + firstEnableTime: '首次启用时间', + warrantyDeadline: '保修截止日期', + usefulLife: '使用年限', + purchasePrice: '采购价格', + netWorth: '资产净值', + useOrgName: '使用部门', + useUserName: '使用人', + chargeOrgName: '责任部门', + chargeUseName: '责任人', + remark: '备注' + } + } +} \ No newline at end of file diff --git a/src/views/machine/equipmentAccountList.vue b/src/views/machine/equipmentAccountList.vue new file mode 100644 index 0000000..a0aeadc --- /dev/null +++ b/src/views/machine/equipmentAccountList.vue @@ -0,0 +1,281 @@ + + + + + \ No newline at end of file diff --git a/src/views/machine/machineTypeTreeManageList.vue b/src/views/machine/machineTypeTreeManageList.vue index 42a4886..27108de 100644 --- a/src/views/machine/machineTypeTreeManageList.vue +++ b/src/views/machine/machineTypeTreeManageList.vue @@ -82,6 +82,7 @@ import MachineTypeTree from '@/components/machine/machineTypeTree' import AddMachineType from '@/components/machine/addMachineType' import EditMachineType from '@/components/machine/editMachineType' import DeleteMachineType from '@/components/machine/deleteMachineType' +import {listMachineType} from '@/api/machine/machineTypeTreeManageApi' export default { name: 'MachineTypeTreeManageList', @@ -115,9 +116,9 @@ export default { handleSwitchType(data) { this.currentTypeId = data.typeId this.machineTypeInfo = { - ...this.machineTypeInfo, ...data } + this._loadMachienType() }, openAddParentMachineTypeModal() { this.$refs.addMachineType.open({}) @@ -143,6 +144,10 @@ export default { } this.$refs.deleteMachineType.open(this.machineTypeInfo) }, + async _loadMachienType() { + const res = await listMachineType({ communityId: getCommunityId(), typeId: this.machineTypeInfo.typeId,page:1,row:1 }); + this.machineTypeInfo = {...res.data[0]} + }, handleSuccess() { this.$refs.machineTypeTree.refreshTree() } diff --git a/src/views/resource/printEquipmentAccountLabelLang.js b/src/views/resource/printEquipmentAccountLabelLang.js new file mode 100644 index 0000000..f51c4fe --- /dev/null +++ b/src/views/resource/printEquipmentAccountLabelLang.js @@ -0,0 +1,36 @@ +export const messages = { + en: { + printEquipmentAccount: { + machineId: 'Equipment ID', + printTime: 'Print Time', + equipmentLabel: 'Equipment Label', + project: 'Project', + locationName: 'Location Name', + machineName: 'Machine Name', + importanceLevel: 'Importance Level', + systemName: 'System Name', + enableDate: 'Enable Date', + machineBrand: 'Machine Brand', + specificationModel: 'Specification Model', + code: 'Code', + responsiblePerson: 'Responsible Person' + } + }, + zh: { + printEquipmentAccount: { + machineId: '设备ID', + printTime: '打印时间', + equipmentLabel: '设备标签', + project: '项目', + locationName: '位置名称', + machineName: '设备名称', + importanceLevel: '重要等级', + systemName: '系统名称', + enableDate: '启用日期', + machineBrand: '设备品牌', + specificationModel: '规格型号', + code: '编码', + responsiblePerson: '责任人' + } + } +} \ No newline at end of file diff --git a/src/views/resource/printEquipmentAccountLabelList.vue b/src/views/resource/printEquipmentAccountLabelList.vue new file mode 100644 index 0000000..27f2998 --- /dev/null +++ b/src/views/resource/printEquipmentAccountLabelList.vue @@ -0,0 +1,195 @@ + + + + + \ No newline at end of file