diff --git a/hb_client/src/api/equipment.js b/hb_client/src/api/equipment.js new file mode 100644 index 0000000..6b67c5b --- /dev/null +++ b/hb_client/src/api/equipment.js @@ -0,0 +1,30 @@ +import request from '@/utils/request' + +export function getpEquipmentList(query) { + return request({ + url: '/em/equipment/', + method: 'get', + params: query + }) +} +export function createEquipment(data) { + return request({ + url: '/em/equipment/', + method: 'post', + data + }) +} +export function updateEquipment(id, data) { + return request({ + url: `/em/equipment/${id}/`, + method: 'put', + data + }) +} +export function deleteEquipment(id, data) { + return request({ + url: `/em/equipment/${id}/`, + method: 'delete', + data + }) +} diff --git a/hb_client/src/api/vendor.js b/hb_client/src/api/vendor.js new file mode 100644 index 0000000..c27d04b --- /dev/null +++ b/hb_client/src/api/vendor.js @@ -0,0 +1,30 @@ +import request from '@/utils/request' + +export function getpVendorList(query) { + return request({ + url: '/pum/vendor/', + method: 'get', + params: query + }) +} +export function createVendor(data) { + return request({ + url: '/pum/vendor/', + method: 'post', + data + }) +} +export function updateVendor(id, data) { + return request({ + url: `/pum/vendor/${id}/`, + method: 'put', + data + }) +} +export function deleteVendor(id, data) { + return request({ + url: `/pum/vendor/${id}/`, + method: 'delete', + data + }) +} diff --git a/hb_client/src/router/index.js b/hb_client/src/router/index.js index feee85e..3991778 100644 --- a/hb_client/src/router/index.js +++ b/hb_client/src/router/index.js @@ -73,11 +73,44 @@ export const constantRoutes = [ ] + + /** * asyncRoutes * the routes that need to be dynamically loaded based on user perms */ export const asyncRoutes = [ + { + path: '/equipment', + component: Layout, + redirect: '/equipment/index', + name: 'equipment', + meta: { title: '设备管理', icon: 'example', perms: ['equipment_set'] }, + children: [ + { + path: 'index', + name: 'index', + component: () => import('@/views/equipment/index'), + meta: { title: '设备台账', icon: 'example', perms: ['index_manage'] } + } + ] + }, + + { + path: '/procurement', + component: Layout, + redirect: '/procurement/index', + name: 'procurement', + meta: { title: '采购管理', icon: 'example', perms: ['procurement_set'] }, + children: [ + { + path: 'vendor', + name: 'vendor', + component: () => import('@/views/procurement/vendor'), + meta: { title: '供应商', icon: 'example', perms: ['vendor_manage'] } + } + ] + }, { path: '/system', component: Layout, diff --git a/hb_client/src/views/equipment/index.vue b/hb_client/src/views/equipment/index.vue new file mode 100644 index 0000000..7e73b94 --- /dev/null +++ b/hb_client/src/views/equipment/index.vue @@ -0,0 +1,333 @@ + + diff --git a/hb_client/src/views/procurement/vendor.vue b/hb_client/src/views/procurement/vendor.vue new file mode 100644 index 0000000..7ce21e2 --- /dev/null +++ b/hb_client/src/views/procurement/vendor.vue @@ -0,0 +1,268 @@ + + diff --git a/hb_server/apps/em/models.py b/hb_server/apps/em/models.py index 30ece81..70c558a 100644 --- a/hb_server/apps/em/models.py +++ b/hb_server/apps/em/models.py @@ -20,7 +20,7 @@ class Equipment(CommonBModel): ) name = models.CharField('设备名称', max_length=50) number = models.CharField('设备编号', max_length=50, unique=True) - model = models.CharField('规格型号', max_length=10, null=True, blank=True) + model = models.CharField('规格型号', max_length=60, null=True, blank=True) factory = models.CharField('生产厂', max_length=50, null=True, blank=True) production_date = models.DateField('生产日期', null=True, blank=True) buy_date = models.DateField('购置日期', null=True, blank=True)