Browse Source

公司制度

duy 2 years ago
parent
commit
c134ccd4d0
2 changed files with 58 additions and 52 deletions
  1. 2 2
      src/views/people/company-rule.vue
  2. 56 50
      src/views/people/entry.vue

+ 2 - 2
src/views/people/company-rule.vue

@@ -1,7 +1,7 @@
 <template>
     <HcCard title="公司制度数据">
         <template #extra>
-            <el-button hc-btn type="primary" @click="addUploadFile">
+            <el-button v-auth-btn="['com_add_btn']" hc-btn type="primary" @click="addUploadFile">
                 上传新制度
             </el-button>
         </template>
@@ -12,7 +12,7 @@
                 </div>
             </template>
             <template #action="{ row, index }">
-                <el-button type="primary" size="small" @click="replaceUploadFile(row)">
+                <el-button v-auth-btn="['com_up_btn']" type="primary" size="small" @click="replaceUploadFile(row)">
                     重新上传
                 </el-button>
             </template>

+ 56 - 50
src/views/people/entry.vue

@@ -7,40 +7,47 @@
                 </el-select>
             </div>
             <div class="ml-4">
-                <el-button type="primary" @click="searchClick" size="large">
-                    <HcIcon name="search-2"/>
+                <el-button type="primary" size="large" @click="searchClick">
+                    <HcIcon name="search-2" />
                     <span>搜索</span>
                 </el-button>
             </div>
             <div class="ml-2">
                 <el-button size="large" @click="resetClick">
-                    <HcIcon name="close-circle"/>
+                    <HcIcon name="close-circle" />
                     <span>重置</span>
                 </el-button>
             </div>
         </template>
         <template #extra>
-            <el-button type="primary" @click="addRowClick" size="large">
-                <HcIcon name="add"/>
+            <el-button type="primary" size="large" @click="addRowClick">
+                <HcIcon name="add" />
                 <span>新增</span>
             </el-button>
         </template>
         <HcTable :loading="tableLoading" :column="tableColumn" :datas="tableData">
-            <template #conFileName="{row}">
-                <div class="text-link text-blue" @click="viewPdf(row)">{{ row?.conFileName }}</div>
+            <template #conFileName="{ row }">
+                <div class="text-link text-blue" @click="viewPdf(row)">
+                    {{ row?.conFileName }}
+                </div>
             </template>
-            <template #action="{row, index}">
-                <el-button type="primary" size="small" @click="editRowClick(row)">编辑</el-button>
-                <el-button type="danger" size="small" @click="delRowClick(row)">删除</el-button>
+            <template #action="{ row, index }">
+                <el-button type="primary" size="small" @click="editRowClick(row)">
+                    编辑
+                </el-button>
+                <el-button type="danger" size="small" @click="delRowClick(row)">
+                    删除
+                </el-button>
             </template>
         </HcTable>
         <template #action>
-            <HcPages :pages="searchForm" @change="pageChange"/>
+            <HcPages :pages="searchForm" @change="pageChange" />
         </template>
 
-        <!--入职登记弹窗-->
-        <HcDialog bgColor="#ffffff" isToBody widths="42rem" :show="formModal" title="入职登记"
-                  :loading="formModalLoading" loadingText="保存中,请稍等" @close="formModalClose" @save="formModalSave"
+        <!-- 入职登记弹窗 -->
+        <HcDialog
+            bg-color="#ffffff" is-to-body widths="42rem" :show="formModal" title="入职登记"
+            :loading="formModalLoading" loading-text="保存中,请稍等" @close="formModalClose" @save="formModalSave"
         >
             <el-form ref="formRef" :model="formModel" :rules="formRules" label-position="left" label-width="auto" size="large">
                 <el-form-item label="员工姓名:" prop="userId">
@@ -49,30 +56,29 @@
                     </el-select>
                 </el-form-item>
                 <el-form-item label="入职时间" prop="startDate">
-                    <el-date-picker v-model="formModel.startDate" type="date" class="block" format="YYYY-MM-DD" value-format="YYYY-MM-DD"/>
+                    <el-date-picker v-model="formModel.startDate" type="date" class="block" format="YYYY-MM-DD" value-format="YYYY-MM-DD" />
                 </el-form-item>
-                <el-form-item label="入职登记表:" v-show="false" >
-                    <HcFormUpload :src="formModel.fileUrl" @upload="formItemUpload"/>
+                <el-form-item v-show="false" label="入职登记表:">
+                    <HcFormUpload :src="formModel.fileUrl" @upload="formItemUpload" />
                 </el-form-item>
-                <el-form-item label="入职登记表:" v-if="formModel.fileUrl" >
-                    <HcFormUpload :src="formModel.conFileName" @upload="formItemUpload"/>
+                <el-form-item v-if="formModel.fileUrl" label="入职登记表:">
+                    <HcFormUpload :src="formModel.conFileName" @upload="formItemUpload" />
                 </el-form-item>
-                <el-form-item label="入职登记表:" v-show="!formModel.fileUrl">
-                    <HcUploadFile ref="uploadFileRef" drop :options="uploadOptions" @success="uploadFileSuccess" class="w-full"/>
+                <el-form-item v-show="!formModel.fileUrl" label="入职登记表:">
+                    <HcUploadFile ref="uploadFileRef" drop :options="uploadOptions" class="w-full" @success="uploadFileSuccess" />
                 </el-form-item>
             </el-form>
         </HcDialog>
-
     </HcCard>
 </template>
 
 <script setup>
-import {ref, onActivated} from 'vue'
-import mainApi from "~api/people/contract";
-import {getTokenHeader} from "~src/api/request/header";
-import {getuserList} from "~api/other";
-import {getObjValue, getArrValue, formValidate} from "js-fast-way"
-import {delMessage} from "~uti/tools";
+import { onActivated, ref } from 'vue'
+import mainApi from '~api/people/contract'
+import { getTokenHeader } from '~src/api/request/header'
+import { getuserList } from '~api/other'
+import { formValidate, getArrValue, getObjValue } from 'js-fast-way'
+import { delMessage } from '~uti/tools'
 
 onActivated(() => {
     getuserListApi()
@@ -82,28 +88,28 @@ onActivated(() => {
 //获取用户下拉数据
 const userList = ref([])
 const getuserListApi = async () => {
-    const {data} = await getuserList()
+    const { data } = await getuserList()
     userList.value = getArrValue(data)
 }
 
 const searchForm = ref({
     type: 2, userId: null,
-    current: 1, size: 20, total: 0
+    current: 1, size: 20, total: 0,
 })
 
 //搜索
 const searchClick = () => {
-    searchForm.value.current = 1;
+    searchForm.value.current = 1
     getTableData()
 }
 
 //重置搜索表单
 const resetClick = () => {
-    searchForm.value = {current: 1, size: 20, total: 0}
+    searchForm.value = { current: 1, size: 20, total: 0 }
 }
 
 //分页被点击
-const pageChange = ({current, size}) => {
+const pageChange = ({ current, size }) => {
     searchForm.value.current = current
     searchForm.value.size = size
     getTableData()
@@ -112,17 +118,17 @@ const pageChange = ({current, size}) => {
 //表格参数
 const tableLoading = ref(false)
 const tableColumn = [
-    {key: 'userName', name: '姓名'},
-    {key: 'conFileName', name: '职位入职登记表'},
-    {key: 'startDate', name: '入职时间'},
-    {key: 'action', name: '操作', width: '150'}
+    { key: 'userName', name: '姓名' },
+    { key: 'conFileName', name: '职位入职登记表' },
+    { key: 'startDate', name: '入职时间' },
+    { key: 'action', name: '操作', width: '150' },
 ]
 
 //获取表格数据
 const tableData = ref([])
 const getTableData = async () => {
     tableLoading.value = true
-    const {data} = await mainApi.page(searchForm.value)
+    const { data } = await mainApi.page(searchForm.value)
     tableData.value = getArrValue(data['records'])
     searchForm.value.total = data['total'] || 0
     tableLoading.value = false
@@ -131,7 +137,7 @@ const getTableData = async () => {
 //删除
 const delRowClick = (row) => {
     delMessage(async () => {
-        const {error, code, msg} = await mainApi.remove({ids: row.id})
+        const { error, code, msg } = await mainApi.remove({ ids: row.id })
         if (!error && code === 200) {
             window.$message?.success(msg)
             getTableData().then()
@@ -149,14 +155,14 @@ const formModalLoading = ref(false)
 const formRef = ref(null)
 const formModel = ref({})
 const formRules = {
-    userId: [{required: true, message: '请选择员工', trigger: 'change'}],
-    startDate: [{required: true, message: '请选择入职时间', trigger: 'change'}],
+    userId: [{ required: true, message: '请选择员工', trigger: 'change' }],
+    startDate: [{ required: true, message: '请选择入职时间', trigger: 'change' }],
 }
 
 //新增
 const addRowClick = () => {
     formModalLoading.value = false
-    formModel.value = {type: 2}
+    formModel.value = { type: 2 }
     formModal.value = true
 }
 
@@ -172,20 +178,20 @@ const uploadFileRef = ref(null)
 const uploadOptions = {
     headers: getTokenHeader(),
     multiple: false,
-    size: 50
+    size: 50,
 }
 
 //上传文件
 const formItemUpload = () => {
-    uploadFileRef.value?.selectFile();
+    uploadFileRef.value?.selectFile()
 }
 
 // 文件上传成功的回调
-const uploadFileSuccess = ({resData}) => {
+const uploadFileSuccess = ({ resData }) => {
     const { pdfUrl, originalName } = getObjValue(resData)
     formModel.value.fileUrl = pdfUrl
     formModel.value.conFileName = originalName
-    uploadFileRef.value?.setModalShow(false);
+    uploadFileRef.value?.setModalShow(false)
 }
 
 
@@ -198,14 +204,14 @@ const formModalSave = async () => {
         return false
     }
     //发起请求
-    const {error, code, msg} = await mainApi.submit({
+    const { error, code, msg } = await mainApi.submit({
         ...formModel.value,
-        type: 2 //合同类型
+        type: 2, //合同类型
     })
     //判断状态
     formModalLoading.value = false
     if (!error && code === 200) {
-        window.$message?.success('提交成功')
+        window.$message?.success(msg)
         formModalClose()
         getTableData().then()
     } else {
@@ -220,7 +226,7 @@ const formModalClose = () => {
 }
 
 //查看pdf
-const viewPdf = ({fileUrl}) => {
+const viewPdf = ({ fileUrl }) => {
     if (fileUrl) {
         window.open(fileUrl, '_blank')
     } else {