123
This commit is contained in:
		
							parent
							
								
									0865d6a84c
								
							
						
					
					
						commit
						698d792782
					
				| @ -55,23 +55,27 @@ | |||||||
|         <lay-tab v-model="tab_id" type="brief" @change="openTab"> |         <lay-tab v-model="tab_id" type="brief" @change="openTab"> | ||||||
|           <lay-tab-item v-for="item in tabList" :title="item.title" :id="item.id"> |           <lay-tab-item v-for="item in tabList" :title="item.title" :id="item.id"> | ||||||
|             <lay-table :page="page" height="600px" :columns="columns" :loading="loading" :data-source="dataSource" |             <lay-table :page="page" height="600px" :columns="columns" :loading="loading" :data-source="dataSource" | ||||||
|               v-model:selected-keys="selectedKeys" @change="change"> |               @change="change"> | ||||||
|               <template v-slot:scoringrecord_status="{ row }"> |               <template v-slot:scoringrecord_status="{ row }"> | ||||||
|                 <lay-tag v-if="row.scoringrecord_status == 1" type="primary">已自评</lay-tag> |                 <lay-tag v-if="row.scoringrecord_status == 1" type="primary">已自评</lay-tag> | ||||||
|                 <lay-tag v-if="row.scoringrecord_status == 2">未自评</lay-tag> |                 <lay-tag v-if="row.scoringrecord_status == 2">未自评</lay-tag> | ||||||
|  |                 <lay-tag v-if="row.scoringrecord_status == 3" type="warm">科室已评</lay-tag> | ||||||
|  |                 <lay-tag v-if="row.scoringrecord_status == 4" type="danger">医院已评</lay-tag> | ||||||
|               </template> |               </template> | ||||||
|               <template v-slot:nickname="{ row }"> |               <template v-slot:nickname="{ row }"> | ||||||
|                 <div style="color: #00A394;cursor: pointer" @click="openUserListShow(row)">{{ row.nickname }}</div> |                 <div style="color: #00A394;cursor: pointer" @click="openUserListShow(row)">{{ row.nickname }}</div> | ||||||
|               </template> |               </template> | ||||||
|               <template v-slot:operator="{ row }"> |               <template v-slot:operator="{ row }"> | ||||||
|                 <span style="color: #00A394;cursor: pointer" |                 <lay-space> | ||||||
|                   v-if="row.department_score_scoringrecord == 0 && row.scoringrecord_status == 1" |                   <span style="color: #00A394;cursor: pointer" | ||||||
|                   @click="getInfo(row, 1)">科室评分</span> |                     v-if="row.scoringrecord_status == 3 && userStore.userInfo.level == 3" | ||||||
|                 <span style="color: #00A394;cursor: pointer" |                     @click="getInfo(row, 3)">医院评分</span> | ||||||
|                   v-if="row.department_score_scoringrecord != 0 && row.scoringrecord_status == 1" |                   <span style="color: #00A394;cursor: pointer" v-if="row.scoringrecord_status == 1" | ||||||
|                   @click="getInfo(row, 2)">考评详情</span> |                     @click="getInfo(row, 2)">科室评分</span> | ||||||
|                 <span style="color: #999999;cursor: not-allowed" |                   <span style="color: #00A394;cursor: pointer" v-if="row.scoringrecord_status != 2" | ||||||
|                   v-if="row.department_score_scoringrecord == 0 && row.scoringrecord_status == 2">未自评</span> |                     @click="getInfo(row, 1)">考评详情</span> | ||||||
|  |                   <span style="color: #999999;cursor: not-allowed" v-if="row.scoringrecord_status == 2">未自评</span> | ||||||
|  |                 </lay-space> | ||||||
|               </template> |               </template> | ||||||
|             </lay-table> |             </lay-table> | ||||||
|           </lay-tab-item> |           </lay-tab-item> | ||||||
| @ -80,22 +84,30 @@ | |||||||
|       </div> |       </div> | ||||||
|     </div> |     </div> | ||||||
|     <lay-layer v-model="infoShow" title="自评详情" :type="4" :shade="true" :area="['950px', '100%']" |     <lay-layer v-model="infoShow" title="自评详情" :type="4" :shade="true" :area="['950px', '100%']" | ||||||
|       :btn="addIsInfo == 1 ? addButton : ''"> |       :btn="addIsInfo != 1 ? addButton : ''"> | ||||||
|       <lay-container fluid="true" style="padding: 20px"> |       <lay-container fluid="true" style="padding: 20px"> | ||||||
|         <lay-table :default-expand-all="true" ref="tableRef6" children-column-name="children" :columns="columns6" |         <lay-table :default-expand-all="true" ref="tableRef6" children-column-name="children" :columns="columns6" | ||||||
|           :data-source="dataSource6"> |           :data-source="dataSource6"> | ||||||
|           <template v-slot:input="{ data, rowIndex }"> |           <template v-slot:input="{ data, rowIndex }"> | ||||||
|             <lay-input-number v-if="data.pid == 0" :disabled="true" :min="0" :max="data.base_score" |             <lay-input-number v-if="data.pid == 0" :disabled="true" :min="0" :max="data.base_score" | ||||||
|               v-model="data.base_score" position="right"></lay-input-number> |               v-model="data.base_score" position="right"></lay-input-number> | ||||||
|             <lay-input-number v-if="data.pid != 0" :disabled="addIsInfo == 2" :min="0" :max="data.base_score" |             <lay-input-number v-if="data.pid != 0" :disabled="true" :min="0" :max="data.base_score" | ||||||
|               v-model="data.content_score" position="right"></lay-input-number> |               v-model="data.content_score" position="right"></lay-input-number> | ||||||
|           </template> |           </template> | ||||||
|           <template v-slot:ksinput="{ data, rowIndex }"> |           <template v-slot:ksinput="{ data, rowIndex }"> | ||||||
|             <lay-input-number v-if="data.pid == 0" :disabled="true" :min="0" :max="data.base_score" |             <lay-input-number v-if="data.pid == 0" :disabled="true" :min="0" :max="data.base_score" | ||||||
|               v-model="data.base_score" position="right"></lay-input-number> |               v-model="data.base_score" position="right"></lay-input-number> | ||||||
|             <lay-input-number v-if="data.pid != 0" :disabled="addIsInfo == 2" :min="0" :max="data.base_score" |             <lay-input-number v-if="data.pid != 0" :disabled="addIsInfo != 2" :min="0" :max="data.base_score" | ||||||
|               v-model="data.department_score" position="right"></lay-input-number> |               v-model="data.department_score" position="right"></lay-input-number> | ||||||
|           </template> |           </template> | ||||||
|  |           <template v-slot:yyinput="{ data, rowIndex }"> | ||||||
|  |             <template v-if="userStore.userInfo.level == 3 || thisInfo.scoringrecord_status == 4"> | ||||||
|  |               <lay-input-number v-if="data.pid == 0" :disabled="true" :min="0" :max="data.base_score" | ||||||
|  |                 v-model="data.base_score" position="right"></lay-input-number> | ||||||
|  |               <lay-input-number v-if="data.pid != 0" :disabled="addIsInfo != 3" :min="0" :max="data.base_score" | ||||||
|  |                 v-model="data.hospital_score" position="right"></lay-input-number> | ||||||
|  |             </template> | ||||||
|  |           </template> | ||||||
|         </lay-table> |         </lay-table> | ||||||
|       </lay-container> |       </lay-container> | ||||||
|     </lay-layer> |     </lay-layer> | ||||||
| @ -123,15 +135,19 @@ | |||||||
|             </lay-card> |             </lay-card> | ||||||
|           </lay-col> |           </lay-col> | ||||||
|           <lay-col :md="24"> |           <lay-col :md="24"> | ||||||
|             <lay-tab v-model="userTabId" type="brief" @change="openUserTab"> |             <lay-tab v-model="userTabId" @change="openUserTab"> | ||||||
|               <lay-tab-item v-for="item in tabList" :title="item.title" :id="item.id"> |               <lay-tab-item v-for="item in tabList" :title="item.title" :id="item.id"> | ||||||
|                 <lay-table  :default-expand-all="true" :columns="userColumns" |                 <lay-table :default-expand-all="true" :columns="userColumns" :data-source="userDataSource"> | ||||||
|                   :data-source="userDataSource"> |                   <template v-slot:scoringrecord_status="{ row }"> | ||||||
|  |                     <lay-tag v-if="row.scoringrecord_status == 1" type="primary">已自评</lay-tag> | ||||||
|  |                     <lay-tag v-if="row.scoringrecord_status == 2">未自评</lay-tag> | ||||||
|  |                     <lay-tag v-if="row.scoringrecord_status == 3" type="warm">科室已评</lay-tag> | ||||||
|  |                     <lay-tag v-if="row.scoringrecord_status == 4" type="danger">医院已评</lay-tag> | ||||||
|  |                   </template> | ||||||
|                   <template v-slot:operator="{ row }"> |                   <template v-slot:operator="{ row }"> | ||||||
|                     <span  v-if="row.if ==2" style="color: #00A394;cursor: pointer" |                     <span v-if="row.if == 2" style="color: #00A394;cursor: pointer" | ||||||
|                       @click="getMonthlyInfo(row)">考评详情</span> |                       @click="getMonthlyInfo(row, 1)">考评详情</span> | ||||||
|                       <span style="color: #999999;cursor: not-allowed" |                     <span style="color: #999999;cursor: not-allowed" v-if="row.if == 1">未自评</span> | ||||||
|                       v-if="row.if ==1">未自评</span> |  | ||||||
|                   </template> |                   </template> | ||||||
|                 </lay-table> |                 </lay-table> | ||||||
|               </lay-tab-item> |               </lay-tab-item> | ||||||
| @ -155,7 +171,8 @@ import { | |||||||
|   MonthlyInfo |   MonthlyInfo | ||||||
| } from "@/api/module/home"; | } from "@/api/module/home"; | ||||||
| import dayjs from "dayjs"; | import dayjs from "dayjs"; | ||||||
| 
 | import { useUserStore } from '@/store/user'; | ||||||
|  | const userStore = useUserStore() | ||||||
| onMounted(() => { | onMounted(() => { | ||||||
|   getLeftList(); |   getLeftList(); | ||||||
| }) | }) | ||||||
| @ -185,9 +202,9 @@ const getUserListInfo = () => { | |||||||
|     'time': searchAccountUser.value |     'time': searchAccountUser.value | ||||||
|   }).then((res) => { |   }).then((res) => { | ||||||
|     console.log(res) |     console.log(res) | ||||||
|     if(res.code==1){ |     if (res.code == 1) { | ||||||
|       userDataSource.value = res.data; |       userDataSource.value = res.data; | ||||||
|     }else{ |     } else { | ||||||
|       userDataSource.value = []; |       userDataSource.value = []; | ||||||
|     } |     } | ||||||
|   }) |   }) | ||||||
| @ -198,11 +215,11 @@ const openUserTab = (d) => { | |||||||
|   userDataSource.value = []; |   userDataSource.value = []; | ||||||
|   getUserListInfo(); |   getUserListInfo(); | ||||||
| } | } | ||||||
| const getMonthlyInfo = (item) => { | const getMonthlyInfo = (item, type) => { | ||||||
|   addIsInfo.value=2; |   addIsInfo.value = type; | ||||||
|   infoShow.value = true; |   infoShow.value = true; | ||||||
|   console.log(item); |   console.log(item); | ||||||
|   item.time=item.month; |   item.time = item.month; | ||||||
|   getInfoMode(item); |   getInfoMode(item); | ||||||
| } | } | ||||||
| const toUserSearch = () => { | const toUserSearch = () => { | ||||||
| @ -249,6 +266,18 @@ const getInfo = (row, type) => { | |||||||
|   console.log(row); |   console.log(row); | ||||||
|   thisInfo.value = row; |   thisInfo.value = row; | ||||||
|   getInfoMode(row); |   getInfoMode(row); | ||||||
|  | 
 | ||||||
|  |   if (row.scoringrecord_status == 4) { | ||||||
|  |     columns6.push({ | ||||||
|  |       title: "医院评分", | ||||||
|  |       width: "100px", | ||||||
|  |       align: 'center', | ||||||
|  |       customSlot: 'yyinput', | ||||||
|  |       key: "yyinput" | ||||||
|  |     }); | ||||||
|  |   } | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
| } | } | ||||||
| const getInfoMode = (row) => { | const getInfoMode = (row) => { | ||||||
|   getMonthlyListFind({ |   getMonthlyListFind({ | ||||||
| @ -308,13 +337,6 @@ function toReset() { | |||||||
|   } |   } | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| function handleClick(node: any) { |  | ||||||
|   // selectedNode.value = JSON.parse(JSON.stringify(node)) |  | ||||||
|   page.current = 1; |  | ||||||
|   getList(); |  | ||||||
|   // change(page) |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| function toSearch() { | function toSearch() { | ||||||
|   page.current = 1; |   page.current = 1; | ||||||
|   getList(); |   getList(); | ||||||
| @ -323,13 +345,12 @@ function toSearch() { | |||||||
| const loading = ref(false) | const loading = ref(false) | ||||||
| const selectedKeys = ref() | const selectedKeys = ref() | ||||||
| const columns = ref([ | const columns = ref([ | ||||||
|   { title: '选项', width: '55px', type: 'checkbox', align: 'center' }, |  | ||||||
|   { title: '序号', width: '60px', key: 'id', align: 'center' }, |   { title: '序号', width: '60px', key: 'id', align: 'center' }, | ||||||
|   { title: '月度', width: '80px', key: 'time', align: 'center' }, |   { title: '月度', width: '80px', key: 'time', align: 'center' }, | ||||||
|   { title: '考评对象', width: '100px', key: 'nickname', customSlot: 'nickname', align: 'center' }, |   { title: '考评对象', width: '100px', key: 'nickname', customSlot: 'nickname', align: 'center' }, | ||||||
|   { title: '工号', width: '100px', key: 'work_number', align: 'center' }, |   { title: '工号', width: '100px', key: 'code', align: 'center' }, | ||||||
|   { title: '部门', width: '120px', key: 'group_name', align: 'center' }, |   { title: '部门', width: '120px', key: 'group_name', align: 'center' }, | ||||||
|   { title: '医院评分', width: '100px', key: 'hospital_score', align: 'center' }, |   { title: '医院评分', width: '100px', key: 'hospital_score_scoringrecord', align: 'center' }, | ||||||
|   { title: '科室评分', width: '100px', key: 'department_score_scoringrecord', align: 'center' }, |   { title: '科室评分', width: '100px', key: 'department_score_scoringrecord', align: 'center' }, | ||||||
|   { title: '自评总分', width: '100px', key: 'user_scoringrecord', align: 'center' }, |   { title: '自评总分', width: '100px', key: 'user_scoringrecord', align: 'center' }, | ||||||
|   { title: '自评状态', width: '100px', key: 'scoringrecord_status', customSlot: 'scoringrecord_status', align: 'center' }, |   { title: '自评状态', width: '100px', key: 'scoringrecord_status', customSlot: 'scoringrecord_status', align: 'center' }, | ||||||
| @ -379,7 +400,7 @@ const columns6 = [ | |||||||
|   }, |   }, | ||||||
|   { |   { | ||||||
|     title: "分值", |     title: "分值", | ||||||
|     width: "100px", |     width: "50px", | ||||||
|     align: 'center', |     align: 'center', | ||||||
|     key: "base_score" |     key: "base_score" | ||||||
|   }, |   }, | ||||||
| @ -398,6 +419,17 @@ const columns6 = [ | |||||||
|     key: "ksinput" |     key: "ksinput" | ||||||
|   } |   } | ||||||
| ] | ] | ||||||
|  | 
 | ||||||
|  | // 根据用户级别动态添加医院评分列 | ||||||
|  | if (userStore.userInfo.level == 3) { | ||||||
|  |   columns6.push({ | ||||||
|  |     title: "医院评分", | ||||||
|  |     width: "100px", | ||||||
|  |     align: 'center', | ||||||
|  |     customSlot: 'yyinput', | ||||||
|  |     key: "yyinput" | ||||||
|  |   }); | ||||||
|  | } | ||||||
| const dataSource6 = ref([]) | const dataSource6 = ref([]) | ||||||
| </script> | </script> | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -61,25 +61,6 @@ | |||||||
|   </lay-container> |   </lay-container> | ||||||
|   <lay-layer v-model="visible11" title="季度自评" :type="4" :shade="true" :area="['950px','100%']" :btn="addIsInfo==1?addButton:''"> |   <lay-layer v-model="visible11" title="季度自评" :type="4" :shade="true" :area="['950px','100%']" :btn="addIsInfo==1?addButton:''"> | ||||||
|     <lay-container fluid="true" style="padding: 20px"> |     <lay-container fluid="true" style="padding: 20px"> | ||||||
|       <lay-card shadow="always"> |  | ||||||
|         <div style="height: 70px;width: 100%;"> |  | ||||||
|           <lay-step current-status="primary" style="margin: 0 auto" direction="horizontal" :active="active" space="100%" |  | ||||||
|                     :center="true"> |  | ||||||
|             <lay-step-item> |  | ||||||
|               <template v-slot:default> |  | ||||||
|                 <div style="font-size: 18px;font-weight: bold;color: #009688">个人自评</div> |  | ||||||
|                 <!--                <div style="color: #999999">2025-01-01 14:35:33</div>--> |  | ||||||
|               </template> |  | ||||||
|             </lay-step-item> |  | ||||||
|             <lay-step-item> |  | ||||||
|               <template v-slot:default> |  | ||||||
|                 <div style="font-size: 18px;font-weight: bold;color: #009688">科室考评</div> |  | ||||||
|                 <div style="color: #999999"></div> |  | ||||||
|               </template> |  | ||||||
|             </lay-step-item> |  | ||||||
|           </lay-step> |  | ||||||
|         </div> |  | ||||||
|       </lay-card> |  | ||||||
|       <lay-table :default-expand-all="true" ref="tableRef6" children-column-name="children" :columns="columns6" |       <lay-table :default-expand-all="true" ref="tableRef6" children-column-name="children" :columns="columns6" | ||||||
|                  :data-source="dataSource6"> |                  :data-source="dataSource6"> | ||||||
|         <template v-slot:input="{ data,rowIndex}"> |         <template v-slot:input="{ data,rowIndex}"> | ||||||
|  | |||||||
| @ -84,7 +84,7 @@ | |||||||
|     </div> |     </div> | ||||||
|     <lay-layer v-model="addShow" :title="title" :area="['750px', '100%']" :type="4" :shade="true" :btn="addButton"> |     <lay-layer v-model="addShow" :title="title" :area="['750px', '100%']" :type="4" :shade="true" :btn="addButton"> | ||||||
|       <div style="padding: 20px"> |       <div style="padding: 20px"> | ||||||
|         <lay-form :model="model11" ref="layFormRef11" required mode="inline"> |         <lay-form :model="model11" ref="layFormRef11" mode="inline"> | ||||||
| <!--          <lay-form-item label="头像" prop="username">--> | <!--          <lay-form-item label="头像" prop="username">--> | ||||||
| <!--            <lay-upload ref="uploadRef" :number="1" field="file" :size="1000" :headers="{ token: userStore.token }"--> | <!--            <lay-upload ref="uploadRef" :number="1" field="file" :size="1000" :headers="{ token: userStore.token }"--> | ||||||
| <!--                        url="/api/common/upload" @cutdone="getCutDone" v-model="file1" :auto="true" acceptMime="images"--> | <!--                        url="/api/common/upload" @cutdone="getCutDone" v-model="file1" :auto="true" acceptMime="images"--> | ||||||
| @ -96,57 +96,71 @@ | |||||||
| <!--              </template>--> | <!--              </template>--> | ||||||
| <!--            </lay-upload>--> | <!--            </lay-upload>--> | ||||||
| <!--          </lay-form-item>--> | <!--          </lay-form-item>--> | ||||||
|           <lay-form-item label="登陆账户" prop="username"> |           <lay-form-item label="工号" prop="code" required> | ||||||
|             <lay-input v-model="model11.username" size="lg" placeholder="请输入登陆账户"></lay-input> |             <lay-input v-model="model11.code" size="lg" placeholder="请输入工号"></lay-input> | ||||||
|           </lay-form-item> |           </lay-form-item> | ||||||
|           <lay-form-item label="密码" prop="password"> |           <lay-form-item label="密码" prop="password" required> | ||||||
|             <lay-input v-model="model11.password" size="lg" placeholder="请输入密码"></lay-input> |             <lay-input v-model="model11.password" size="lg" placeholder="请输入密码"></lay-input> | ||||||
|           </lay-form-item> |           </lay-form-item> | ||||||
|           <lay-form-item label="姓名" prop="nickname"> |           <lay-form-item label="姓名" prop="nickname" required> | ||||||
|             <lay-input v-model="model11.nickname" size="lg" placeholder="请输入姓名"></lay-input> |             <lay-input v-model="model11.nickname" size="lg" placeholder="请输入姓名"></lay-input> | ||||||
|           </lay-form-item> |           </lay-form-item> | ||||||
|           <lay-form-item label="手机号" prop="mobile"> |           <lay-form-item label="手机号" prop="mobile" required> | ||||||
|             <lay-input v-model="model11.mobile" size="lg" placeholder="请输入手机号"></lay-input> |             <lay-input v-model="model11.mobile" size="lg" placeholder="请输入手机号"></lay-input> | ||||||
|           </lay-form-item> |           </lay-form-item> | ||||||
|           <lay-form-item label="身份证号" prop="member_code"> |           <lay-form-item label="身份证号" prop="member_code" required> | ||||||
|             <lay-input v-model="model11.member_code" size="lg" placeholder="请输入身份证号"></lay-input> |             <lay-input v-model="model11.member_code" size="lg" placeholder="请输入身份证号"></lay-input> | ||||||
|           </lay-form-item> |           </lay-form-item> | ||||||
|           <lay-form-item label="生日" prop="birthday"> |           <lay-form-item label="生日" prop="birthday" > | ||||||
|             <lay-date-picker v-model="model11.birthday" placeholder="请选择生日" allow-clear |             <lay-date-picker v-model="model11.birthday" placeholder="请选择生日" allow-clear | ||||||
|                              style="width:180px;"></lay-date-picker> |                              style="width:180px;"></lay-date-picker> | ||||||
|           </lay-form-item> |           </lay-form-item> | ||||||
|           <lay-form-item label="邮箱" prop="email"> |           <lay-form-item label="邮箱" prop="email"> | ||||||
|             <lay-input v-model="model11.email" size="lg" placeholder="请输入邮箱"></lay-input> |             <lay-input v-model="model11.email" size="lg" placeholder="请输入邮箱"></lay-input> | ||||||
|           </lay-form-item> |           </lay-form-item> | ||||||
|           <lay-form-item label="工号" prop="work_number"> |           <lay-form-item label="性别" prop="gender" required> | ||||||
|             <lay-input v-model="model11.work_number" size="lg" placeholder="请输入工号"></lay-input> |  | ||||||
|           </lay-form-item> |  | ||||||
|           <lay-form-item label="性别" prop="gender"> |  | ||||||
|             <lay-select v-model="model11.gender" style="width:180px;"> |             <lay-select v-model="model11.gender" style="width:180px;"> | ||||||
|               <lay-select-option :value="0" label="未选择"></lay-select-option> |               <lay-select-option :value="0" label="未选择"></lay-select-option> | ||||||
|               <lay-select-option :value="1" label="男"></lay-select-option> |               <lay-select-option :value="1" label="男"></lay-select-option> | ||||||
|               <lay-select-option :value="2" label="女"></lay-select-option> |               <lay-select-option :value="2" label="女"></lay-select-option> | ||||||
|             </lay-select> |             </lay-select> | ||||||
|           </lay-form-item> |           </lay-form-item> | ||||||
|           <lay-form-item label="科室" prop="group_id"> |           <!-- 新增字段 --> | ||||||
|  |           <lay-form-item label="岗位名称" prop="position"> | ||||||
|  |             <lay-input v-model="model11.position" size="lg" placeholder="请输入岗位名称"></lay-input> | ||||||
|  |           </lay-form-item> | ||||||
|  |           <lay-form-item label="业务性质" prop="business_nature"> | ||||||
|  |             <lay-input v-model="model11.business_nature" size="lg" placeholder="请输入业务性质"></lay-input> | ||||||
|  |           </lay-form-item> | ||||||
|  |           <lay-form-item label="资格证编码" prop="certificate_code"> | ||||||
|  |             <lay-input v-model="model11.certificate_code" size="lg" placeholder="请输入资格证编码"></lay-input> | ||||||
|  |           </lay-form-item> | ||||||
|  |           <lay-form-item label="执业证编码" prop="license_code"> | ||||||
|  |             <lay-input v-model="model11.license_code" size="lg" placeholder="请输入执业证编码"></lay-input> | ||||||
|  |           </lay-form-item> | ||||||
|  |           <lay-form-item label="行政职务" prop="administrative_position"> | ||||||
|  |             <lay-input v-model="model11.administrative_position" size="lg" placeholder="请输入行政职务名称"></lay-input> | ||||||
|  |           </lay-form-item> | ||||||
|  |           <!-- 新增字段结束 --> | ||||||
|  |           <lay-form-item label="科室" prop="group_id" required> | ||||||
|             <lay-cascader :checkStrictly="false" size="lg" style="width:180px;" :options="data" search |             <lay-cascader :checkStrictly="false" size="lg" style="width:180px;" :options="data" search | ||||||
|                           :replaceFields="replaceFields" |                           :replaceFields="replaceFields" | ||||||
|                           v-model="model11.group_id" |                           v-model="model11.group_id" | ||||||
|                           placeholder="选择科室" allow-clear></lay-cascader> |                           placeholder="选择科室" allow-clear></lay-cascader> | ||||||
|           </lay-form-item> |           </lay-form-item> | ||||||
|           <lay-form-item label="党支部" prop="party_id"> |           <!-- <lay-form-item label="党支部" prop="party_id"> | ||||||
|             <lay-cascader size="lg" style="width:180px;" :options="partyList" search |             <lay-cascader size="lg" style="width:180px;" :options="partyList" search | ||||||
|                           :replaceFields="replaceFields" |                           :replaceFields="replaceFields" | ||||||
|                           v-model="model11.party_id" |                           v-model="model11.party_id" | ||||||
|                           placeholder="选择党支部" allow-clear></lay-cascader> |                           placeholder="选择党支部" allow-clear></lay-cascader> | ||||||
|           </lay-form-item> |           </lay-form-item> --> | ||||||
|           <lay-form-item label="角色组" prop="auth_group_id"> |           <lay-form-item label="角色组" prop="auth_group_id" required> | ||||||
|             <lay-select v-model="model11.auth_group_id" style="width:180px;" placeholder="选择角色组"> |             <lay-select v-model="model11.auth_group_id" style="width:180px;" placeholder="选择角色组"> | ||||||
|               <lay-select-option size="lg" v-for="item in authList" :value="item.id" |               <lay-select-option size="lg" v-for="item in authList" :value="item.id" | ||||||
|                                  :label="item.name"></lay-select-option> |                                  :label="item.name"></lay-select-option> | ||||||
|             </lay-select> |             </lay-select> | ||||||
|           </lay-form-item> |           </lay-form-item> | ||||||
|           <lay-form-item label="状态" prop="status"> |           <lay-form-item label="状态" prop="status" required> | ||||||
|             <lay-select v-model="model11.status" placeholder="请选择" size="lg" style="width:180px;"> |             <lay-select v-model="model11.status" placeholder="请选择" size="lg" style="width:180px;"> | ||||||
|               <lay-select-option :value="0" label="禁用"></lay-select-option> |               <lay-select-option :value="0" label="禁用"></lay-select-option> | ||||||
|               <lay-select-option :value="1" label="启用"></lay-select-option> |               <lay-select-option :value="1" label="启用"></lay-select-option> | ||||||
| @ -289,10 +303,9 @@ const loading = ref(false) | |||||||
| const page = reactive({current: 1, limit: 10, total: 1}) | const page = reactive({current: 1, limit: 10, total: 1}) | ||||||
| const columns = ref([ | const columns = ref([ | ||||||
|   {title: '编号', width: '80px', key: 'id',align: 'center'}, |   {title: '编号', width: '80px', key: 'id',align: 'center'}, | ||||||
|   {title: '帐号', width: '100px', key: 'username',align: 'center'}, |   {title: '工号/帐号', width: '150px', key: 'code',align: 'center'}, | ||||||
|   {title: '姓名', width: '100px', key: 'nickname',align: 'center'}, |   {title: '姓名', width: '100px', key: 'nickname',align: 'center'}, | ||||||
|   {title: '手机号', width: '120px', key: 'mobile',align: 'center'}, |   {title: '手机号', width: '120px', key: 'mobile',align: 'center'}, | ||||||
|   {title: '工号', width: '150px', key: 'work_number',align: 'center'}, |  | ||||||
|   {title: '性别', width: '80px', key: 'gender', customSlot: 'gender',align: 'center'}, |   {title: '性别', width: '80px', key: 'gender', customSlot: 'gender',align: 'center'}, | ||||||
|   {title: '身份证号', width: '180px', key: 'member_code',align: 'center'}, |   {title: '身份证号', width: '180px', key: 'member_code',align: 'center'}, | ||||||
|   {title: '状态', width: '100px', key: 'status', customSlot: 'status',align: 'center'}, |   {title: '状态', width: '100px', key: 'status', customSlot: 'status',align: 'center'}, | ||||||
| @ -308,7 +321,7 @@ const model11 = reactive({ | |||||||
|   mobile: '', |   mobile: '', | ||||||
|   email: '', |   email: '', | ||||||
|   member_code: '', |   member_code: '', | ||||||
|   work_number: '', |   code: '', | ||||||
|   gender: 0, |   gender: 0, | ||||||
|   password: '', |   password: '', | ||||||
|   status: 1, |   status: 1, | ||||||
| @ -319,6 +332,12 @@ const model11 = reactive({ | |||||||
|   birthday: '', |   birthday: '', | ||||||
|   group_level: '', |   group_level: '', | ||||||
|   party_level: '', |   party_level: '', | ||||||
|  |   // 新增字段 | ||||||
|  |   position: '', | ||||||
|  |   business_nature: '', | ||||||
|  |   certificate_code: '', | ||||||
|  |   license_code: '', | ||||||
|  |   administrative_position: '', | ||||||
| }) | }) | ||||||
| const layFormRef11 = ref() | const layFormRef11 = ref() | ||||||
| const addShow = ref(false) | const addShow = ref(false) | ||||||
| @ -332,8 +351,9 @@ const changeAddShow = () => { | |||||||
|     mobile: '', |     mobile: '', | ||||||
|     email: '', |     email: '', | ||||||
|     member_code: '', |     member_code: '', | ||||||
|     work_number: '', |     code: '', | ||||||
|     gender: 0, |     gender: 0, | ||||||
|  |     id:0, | ||||||
|     password: '', |     password: '', | ||||||
|     status: 1, |     status: 1, | ||||||
|     auth_group_id: '', |     auth_group_id: '', | ||||||
| @ -343,6 +363,12 @@ const changeAddShow = () => { | |||||||
|     birthday: '', |     birthday: '', | ||||||
|     group_level: '', |     group_level: '', | ||||||
|     party_level: '', |     party_level: '', | ||||||
|  |     // 新增字段 | ||||||
|  |     position: '', | ||||||
|  |     business_nature: '', | ||||||
|  |     certificate_code: '', | ||||||
|  |     license_code: '', | ||||||
|  |     administrative_position: '', | ||||||
|   }); |   }); | ||||||
|   addShow.value = true; |   addShow.value = true; | ||||||
| } | } | ||||||
| @ -355,10 +381,6 @@ const addButton = ref([ | |||||||
|       console.log(model11); |       console.log(model11); | ||||||
|       //return; |       //return; | ||||||
|       // 字段空值判断 |       // 字段空值判断 | ||||||
|       if (!model11.username) { |  | ||||||
|         layer.msg('用户名不能为空!', {icon: 2}); |  | ||||||
|         return; |  | ||||||
|       } |  | ||||||
|       if (!model11.nickname) { |       if (!model11.nickname) { | ||||||
|         layer.msg('姓名不能为空!', {icon: 2}); |         layer.msg('姓名不能为空!', {icon: 2}); | ||||||
|         return; |         return; | ||||||
| @ -367,19 +389,19 @@ const addButton = ref([ | |||||||
|         layer.msg('手机号不能为空!', {icon: 2}); |         layer.msg('手机号不能为空!', {icon: 2}); | ||||||
|         return; |         return; | ||||||
|       } |       } | ||||||
|       if (!model11.email) { |       // if (!model11.email) { | ||||||
|         layer.msg('邮箱不能为空!', {icon: 2}); |       //   layer.msg('邮箱不能为空!', {icon: 2}); | ||||||
|         return; |       //   return; | ||||||
|       } |       // } | ||||||
|       if (!model11.member_code) { |       if (!model11.member_code) { | ||||||
|         layer.msg('身份证号不能为空!', {icon: 2}); |         layer.msg('身份证号不能为空!', {icon: 2}); | ||||||
|         return; |         return; | ||||||
|       } |       } | ||||||
|       if (!model11.birthday) { |       // if (!model11.birthday) { | ||||||
|         layer.msg('请选择生日!', {icon: 2}); |       //   layer.msg('请选择生日!', {icon: 2}); | ||||||
|         return; |       //   return; | ||||||
|       } |       // } | ||||||
|       if (!model11.work_number) { |       if (!model11.code) { | ||||||
|         layer.msg('工号不能为空!', {icon: 2}); |         layer.msg('工号不能为空!', {icon: 2}); | ||||||
|         return; |         return; | ||||||
|       } |       } | ||||||
| @ -399,10 +421,11 @@ const addButton = ref([ | |||||||
|         layer.msg('科室不能为空!', {icon: 2}); |         layer.msg('科室不能为空!', {icon: 2}); | ||||||
|         return; |         return; | ||||||
|       } |       } | ||||||
|       if (!model11.party_id) { |       // if (!model11.party_id) { | ||||||
|         layer.msg('党支部不能为空!', {icon: 2}); |       //   layer.msg('党支部不能为空!', {icon: 2}); | ||||||
|         return; |       //   return; | ||||||
|       } |       // } | ||||||
|  |       model11.username=model11.code; | ||||||
|       model11.group_level = JSON.stringify(model11.group_id); |       model11.group_level = JSON.stringify(model11.group_id); | ||||||
|       model11.group_id = model11.group_id[model11.group_id.length - 1]; |       model11.group_id = model11.group_id[model11.group_id.length - 1]; | ||||||
|       console.log(model11.group_id) |       console.log(model11.group_id) | ||||||
| @ -427,7 +450,7 @@ const addButton = ref([ | |||||||
|   { |   { | ||||||
|     text: "取消", |     text: "取消", | ||||||
|     callback: () => { |     callback: () => { | ||||||
|       //addShow.value = false; |       addShow.value = false; | ||||||
|     } |     } | ||||||
|   } |   } | ||||||
| ]) | ]) | ||||||
| @ -458,8 +481,8 @@ const edit = (row: any) => { | |||||||
| 
 | 
 | ||||||
|   model11.group_id = JSON.parse(row.group_level); |   model11.group_id = JSON.parse(row.group_level); | ||||||
|   model11.party_id = JSON.parse(row.party_level); |   model11.party_id = JSON.parse(row.party_level); | ||||||
| 
 |   model11.code = row.code; | ||||||
|   model11.username = row.username; |   model11.username = row.code; | ||||||
|   model11.nickname = row.nickname; |   model11.nickname = row.nickname; | ||||||
|   model11.mobile = row.mobile; |   model11.mobile = row.mobile; | ||||||
|   model11.email = row.email; |   model11.email = row.email; | ||||||
| @ -469,6 +492,14 @@ const edit = (row: any) => { | |||||||
| 
 | 
 | ||||||
|   model11.avatar = row.avatar; |   model11.avatar = row.avatar; | ||||||
|   model11.id = row.id; |   model11.id = row.id; | ||||||
|  |    | ||||||
|  |   // 新增字段赋值 | ||||||
|  |   model11.position = row.position; | ||||||
|  |   model11.business_nature = row.business_nature; | ||||||
|  |   model11.certificate_code = row.certificate_code; | ||||||
|  |   model11.license_code = row.license_code; | ||||||
|  |   model11.administrative_position = row.administrative_position; | ||||||
|  |    | ||||||
|   console.log(model11) |   console.log(model11) | ||||||
|   addShow.value = true; |   addShow.value = true; | ||||||
| } | } | ||||||
|  | |||||||
| @ -48,8 +48,14 @@ | |||||||
|               {{ data.password }} |               {{ data.password }} | ||||||
|             </template> |             </template> | ||||||
|             <template v-slot:level="{ data }"> |             <template v-slot:level="{ data }"> | ||||||
|               <span :style="{ color: data.level == 1 ? '#1E9FFF' : '#FF5722' }"> |               <span v-if="data.level == 1" style="color: #FF9933"> | ||||||
|                 {{ data.level == 1 ? '有审核权限' : '没有审核权限' }} |                 科级审核 | ||||||
|  |               </span> | ||||||
|  |               <span v-if="data.level == 2" style="color: #00A394"> | ||||||
|  |                 普通员工 | ||||||
|  |               </span> | ||||||
|  |               <span v-if="data.level == 3" style="color: #FF0033"> | ||||||
|  |                 院级审核 | ||||||
|               </span> |               </span> | ||||||
|             </template> |             </template> | ||||||
|             <template v-slot:operator="{ data }"> |             <template v-slot:operator="{ data }"> | ||||||
| @ -78,8 +84,9 @@ | |||||||
|         </lay-form-item> |         </lay-form-item> | ||||||
|         <lay-form-item label="审核权限" prop="level"> |         <lay-form-item label="审核权限" prop="level"> | ||||||
|           <lay-radio-group v-model="addData.level"> |           <lay-radio-group v-model="addData.level"> | ||||||
|             <lay-radio value="1">有审核权限</lay-radio> |             <lay-radio value="2">普通员工</lay-radio> | ||||||
|             <lay-radio value="2">没有审核权限</lay-radio> |             <lay-radio value="1">科级审核</lay-radio> | ||||||
|  |             <lay-radio value="3">院级审核</lay-radio> | ||||||
|           </lay-radio-group> |           </lay-radio-group> | ||||||
|         </lay-form-item> |         </lay-form-item> | ||||||
|         <lay-form-item label="角色权限" prop="desc"> |         <lay-form-item label="角色权限" prop="desc"> | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user