From 00f7a66620aeef62dec2e1c53952c07a3e733d7f Mon Sep 17 00:00:00 2001 From: TianyangZhang Date: Tue, 16 Dec 2025 09:23:09 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20pum=20=E4=BA=BA=E5=91=98=E9=9C=80?= =?UTF-8?q?=E6=B1=82=E9=A1=B5=E9=9D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/model/asm.js | 40 +++++++ src/api/model/hrm.js | 37 ++++++- src/views/hrm/enpneed.vue | 56 ++++++++++ src/views/hrm/enpneed_form.vue | 61 ++++++++++- src/views/pum/asset.vue | 53 +++++++++ src/views/pum/asset_form.vue | 195 +++++++++++++++++++++++++++++++++ 6 files changed, 437 insertions(+), 5 deletions(-) create mode 100644 src/api/model/asm.js create mode 100644 src/views/hrm/enpneed.vue create mode 100644 src/views/pum/asset.vue create mode 100644 src/views/pum/asset_form.vue diff --git a/src/api/model/asm.js b/src/api/model/asm.js new file mode 100644 index 00000000..e034267d --- /dev/null +++ b/src/api/model/asm.js @@ -0,0 +1,40 @@ +import config from "@/config" +import http from "@/utils/request" + +export default { + // 固定资产 + asset: { + list: { + name: "供应商审核", + req: async function(data){ + return await http.get( + `${config.API_URL}/asm/asset/`, + data + ); + } + }, + item: { + req: async function(id){ + return await http.get( + `${config.API_URL}asm/asset/${id}/`, + ); + } + }, + create: { + name: "新增", + req: async function(data){ + return await http.post( + `${config.API_URL}/asm/asset/`, + data); + } + }, + delete: { + name: "删除", + req: async function(id){ + return await http.delete( + `${config.API_URL}/asm/asset/${id}/` + ); + } + }, + }, +} diff --git a/src/api/model/hrm.js b/src/api/model/hrm.js index 6acccebf..9d34f8d8 100644 --- a/src/api/model/hrm.js +++ b/src/api/model/hrm.js @@ -195,5 +195,40 @@ export default { ); } }, - } + }, + empneed: { + list: { + name: "人员需求", + req: async function(data){ + return await http.get( + `${config.API_URL}/hrm/empneed/`, + data + ); + } + }, + item: { + name: "人员需求申请", + req: async function(id){ + return await http.get( + `${config.API_URL}/hrm/empneed/${id}/`, + ); + } + }, + create: { + name: "人员需求新增", + req: async function(data){ + return await http.post( + `${config.API_URL}/hrm/empneed/`, + data); + } + }, + delete: { + name: "人员需求删除", + req: async function(id){ + return await http.delete( + `${config.API_URL}/hrm/empneed/${id}/` + ); + } + }, + }, } diff --git a/src/views/hrm/enpneed.vue b/src/views/hrm/enpneed.vue new file mode 100644 index 00000000..8f4f61dc --- /dev/null +++ b/src/views/hrm/enpneed.vue @@ -0,0 +1,56 @@ + + \ No newline at end of file diff --git a/src/views/hrm/enpneed_form.vue b/src/views/hrm/enpneed_form.vue index e9c3ff12..69eefa33 100644 --- a/src/views/hrm/enpneed_form.vue +++ b/src/views/hrm/enpneed_form.vue @@ -2,6 +2,16 @@ + + + {{ formData.employee_name }}({{ formData.belong_dept_name }} - {{ formData.post_name }}) @@ -14,6 +24,27 @@ + + + + + 不限 + + + + + + + + + + + + + + + + + + + + import ticketd_b from "@/views/wf/ticketd_b.vue"; import ticketd from '@/views/wf/ticketd.vue' +import { genTree } from "@/utils/verificate"; export default { name: 'EnpNeedForm', @@ -78,10 +119,17 @@ export default { formData: { }, localMode: this.mode, - saveLoading: false + saveLoading: false, + group:[], + groupsProps: { + multiple: false, + emitPath: false, + checkStrictly: true, + }, } }, mounted() { + this.getGroup(); if (this.t_id) { this.getTid(); } else { @@ -103,7 +151,7 @@ export default { }, async getTid() { try { - let res = await this.$API.hrm.resignation.item.req(this.t_id); + let res = await this.$API.hrm.empneed.item.req(this.t_id); this.formData = res; if (res.ticket_ && res.ticket_.state_.type == 1 && res.create_by == this.$TOOL.data.get("USER_INFO").id) { this.localMode = "edit"; @@ -117,16 +165,21 @@ export default { type: "warning", }) .then(()=>{ - this.$API.hrm.resignation.delete.req(this.formData.id).then(res=>{ + this.$API.hrm.empneed.delete.req(this.formData.id).then(res=>{ this.$message.success("删除成功"); this.$emit('success'); }) }) + }, + //加载树数据 + async getGroup() { + let res = await this.$API.system.dept.list.req({ page: 0 }); + this.group = genTree(res); }, async handleSave() { if (this.localMode == "add") { try { - let res = await this.$API.hrm.resignation.create.req(this.formData); + let res = await this.$API.hrm.empneed.create.req(this.formData); this.$message.success("提交成功"); this.$emit('success', this.localMode); } catch (error) { diff --git a/src/views/pum/asset.vue b/src/views/pum/asset.vue new file mode 100644 index 00000000..c9a86e77 --- /dev/null +++ b/src/views/pum/asset.vue @@ -0,0 +1,53 @@ + + \ No newline at end of file diff --git a/src/views/pum/asset_form.vue b/src/views/pum/asset_form.vue new file mode 100644 index 00000000..d903511f --- /dev/null +++ b/src/views/pum/asset_form.vue @@ -0,0 +1,195 @@ + + + \ No newline at end of file