|
@@ -2,7 +2,7 @@
|
|
|
defineOptions({ name: 'StaffDetail' })
|
|
|
|
|
|
import { useQuery, useMutation } from '@tanstack/vue-query'
|
|
|
-import { getRecordsDetail, editRecordsDetail } from '@/api/oa/staffRecords'
|
|
|
+import { getRecordsDetail, editRecordsDetail, generateStaffNum } from '@/api/oa/staffRecords'
|
|
|
import { formConfigList } from './index'
|
|
|
import { ElRow, FormInstance } from 'element-plus'
|
|
|
import TechCertificate from './TechCertificate.vue'
|
|
@@ -47,6 +47,22 @@ const { mutate: addUserMutate } = useMutation({
|
|
|
}
|
|
|
})
|
|
|
|
|
|
+/**生成工号 */
|
|
|
+const { mutate: generateStaffNumber } = useMutation({
|
|
|
+ mutationFn: async () => {
|
|
|
+ return await generateStaffNum()
|
|
|
+ },
|
|
|
+ onSuccess(res) {
|
|
|
+ formData.value['loginName'] = res
|
|
|
+ },
|
|
|
+ onError() {
|
|
|
+ ElMessage({
|
|
|
+ message: '工号生成失败!',
|
|
|
+ type: 'error'
|
|
|
+ })
|
|
|
+ }
|
|
|
+})
|
|
|
+
|
|
|
/**表单保存 */
|
|
|
const submitForm = (formEl: FormInstance | undefined) => {
|
|
|
if (!formEl) return
|
|
@@ -114,6 +130,16 @@ const isEdit = computed(() => {
|
|
|
v-model="formData[child?.name]"
|
|
|
placeholder=""
|
|
|
/>
|
|
|
+ <div v-if="child?.type === 'button'" class="generate-num">
|
|
|
+ <el-input v-model="formData[child?.name]" placeholder="" />
|
|
|
+ <ElButton
|
|
|
+ v-if="isEdit"
|
|
|
+ type="primary"
|
|
|
+ style="width: 70px; height: 30px; margin-left: 10px"
|
|
|
+ @click="generateStaffNumber()"
|
|
|
+ >生成工号</ElButton
|
|
|
+ >
|
|
|
+ </div>
|
|
|
</el-form-item>
|
|
|
</li>
|
|
|
<li></li>
|
|
@@ -254,4 +280,9 @@ const isEdit = computed(() => {
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
+.generate-num {
|
|
|
+ display: flex;
|
|
|
+ width: 100%;
|
|
|
+}
|
|
|
</style>
|