Merge remote-tracking branch 'origin/liujun-2024-06-06-相关方新需求' into pet
						commit
						2ccd92f1c3
					
				|  | @ -121,7 +121,7 @@ | |||
|                   size="mini" | ||||
|                   @click="getUserInfo(row)">查看 | ||||
|                 </el-button> | ||||
|                 <el-button v-if="form.CLASS_STATUS === '1'" icon="el-icon-s-open" type="primary" @click="updatePhoto(row)">更换头像</el-button> | ||||
|                 <el-button icon="el-icon-s-open" type="primary" @click="updatePhoto(row)">更换头像</el-button> | ||||
|                 <el-button | ||||
|                   v-if="row.STATUS === '0' && form.CLASS_STATUS === '1'" | ||||
|                   type="primary" | ||||
|  |  | |||
|  | @ -1,7 +1,14 @@ | |||
| <template> | ||||
|   <el-dialog v-loading="loading" :visible.sync="visible" :title="title" :before-close="close" width="90%" top="50px"> | ||||
|   <el-dialog | ||||
|     v-loading="loading" | ||||
|     :visible.sync="visible" | ||||
|     :title="title" | ||||
|     :fullscreen="fullscreenFlag" | ||||
|     :before-close="close" | ||||
|     width="90%" | ||||
|     top="50px"> | ||||
|     <el-row> | ||||
|       <el-col :span="18"> | ||||
|       <el-col :span="12"> | ||||
|         <el-form ref="form" :rules="rules" :model="form" label-width="110px"> | ||||
|           <el-row :gutter="10"> | ||||
|             <el-col :span="8"> | ||||
|  | @ -52,7 +59,12 @@ | |||
|             </el-col> | ||||
|             <el-col :span="8"> | ||||
|               <el-form-item label="班级容量" prop="CLASS_SIZE"> | ||||
|                 <el-select v-model="form.CLASS_SIZE" :disabled="isShow" placeholder="请选择" style="width:  100%" @change="changePeopleList"> | ||||
|                 <el-select | ||||
|                   v-model="form.CLASS_SIZE" | ||||
|                   :disabled="isShow" | ||||
|                   placeholder="请选择" | ||||
|                   style="width:  100%" | ||||
|                   @change="changePeopleList"> | ||||
|                   <el-option | ||||
|                     v-for="item in warehouse.classSizeList" | ||||
|                     :key="item.DICTIONARIES_ID" | ||||
|  | @ -61,27 +73,21 @@ | |||
|                 </el-select> | ||||
|               </el-form-item> | ||||
|             </el-col> | ||||
|             <el-col v-if="false" :span="8"> | ||||
|               <el-form-item v-if="false" label="培训有效期" prop="VALIDITY_PERIOD"> | ||||
|                 <el-date-picker | ||||
|                   v-model="form.VALIDITY_PERIOD" | ||||
|                   :disabled="isShow" | ||||
|                   type="daterange" | ||||
|                   value-format="yyyy-MM-dd" | ||||
|                   range-separator="至" | ||||
|                   start-placeholder="开始日期" | ||||
|                   end-placeholder="结束日期" | ||||
|                   style="width:  100%"/> | ||||
|               </el-form-item> | ||||
|             </el-col> | ||||
|           </el-row> | ||||
|           <el-row> | ||||
|             <el-col :span="24"> | ||||
|               <div style="font-size: 10px; color: red">{{ '温馨提示:1、输入名称、电话、身份证号按回车或让输入框失去焦点即可搜索。2、双击人员列可直接添加' }}</div> | ||||
|               <el-divider content-position="center">搜索条件</el-divider> | ||||
|             </el-col> | ||||
|             <el-col :span="12"> | ||||
|               <el-form-item label="归属企业"> | ||||
|                 <el-select v-model="util.BELONG_TO_CORP" :disabled="isShow" filterable placeholder="请选择" style="width:  100%" @change="getPeopleList"> | ||||
|                 <el-select | ||||
|                   v-model="util.BELONG_TO_CORP" | ||||
|                   :disabled="isShow" | ||||
|                   filterable | ||||
|                   placeholder="请选择" | ||||
|                   style="width:  100%" | ||||
|                   @change="getPeopleList"> | ||||
|                   <el-option | ||||
|                     v-for="item in warehouse.companyList" | ||||
|                     :key="item.BELONG_TO_CORP" | ||||
|  | @ -90,6 +96,39 @@ | |||
|                 </el-select> | ||||
|               </el-form-item> | ||||
|             </el-col> | ||||
|             <el-col :span="12"> | ||||
|               <el-form-item label="姓名"> | ||||
|                 <el-input | ||||
|                   v-model="util.NAME" | ||||
|                   :disabled="isShow" | ||||
|                   style="width:  100%" | ||||
|                   maxlength="50" | ||||
|                   placeholder="这里输入..." | ||||
|                   @change="getPeopleList"/> | ||||
|               </el-form-item> | ||||
|             </el-col> | ||||
|             <el-col :span="12"> | ||||
|               <el-form-item label="联系电话"> | ||||
|                 <el-input | ||||
|                   v-model="util.PHONE" | ||||
|                   :disabled="isShow" | ||||
|                   style="width:  100%" | ||||
|                   maxlength="50" | ||||
|                   placeholder="这里输入..." | ||||
|                   @change="getPeopleList"/> | ||||
|               </el-form-item> | ||||
|             </el-col> | ||||
|             <el-col :span="12"> | ||||
|               <el-form-item label="身份证号"> | ||||
|                 <el-input | ||||
|                   v-model="util.CARD_ID" | ||||
|                   :disabled="isShow" | ||||
|                   style="width:  100%" | ||||
|                   maxlength="50" | ||||
|                   placeholder="这里输入..." | ||||
|                   @change="getPeopleList"/> | ||||
|               </el-form-item> | ||||
|             </el-col> | ||||
|           </el-row> | ||||
|           <el-row> | ||||
|             <el-col :span="24"> | ||||
|  | @ -102,59 +141,68 @@ | |||
|                 tooltip-effect="dark" | ||||
|                 height="450px" | ||||
|                 border | ||||
|                 fit | ||||
|                 highlight-current-row | ||||
|                 @row-dblclick="clickAddSelect" | ||||
|                 @selection-change="updateSelect" | ||||
| 
 | ||||
|               > | ||||
|                 <el-table-column :reserve-selection="true" type="selection" width="55" align="center"/> | ||||
|                 <el-table-column type="index" label="序号" width="50" align="center"/> | ||||
|                 <el-table-column prop="USERNAME" label="用户名"/> | ||||
|                 <el-table-column prop="NAME" label="姓名"/> | ||||
|                 <el-table-column :reserve-selection="true" fixed type="selection" width="55" align="center"/> | ||||
|                 <el-table-column fixed type="index" label="序号" width="50" align="center"/> | ||||
|                 <el-table-column prop="USERNAME" width="200px" label="用户名"/> | ||||
|                 <el-table-column prop="NAME" width="150px" label="姓名"/> | ||||
|                 <el-table-column prop="CARD_ID" label="身份证号" width="150px"/> | ||||
|                 <el-table-column prop="BELONG_TO_CORP_NAME" width="300px" label="所属企业"/> | ||||
|                 <el-table-column prop="DEPARTMENT_NAME" width="300px" label="部门"/> | ||||
|                 <el-table-column prop="SEX" width="50px" label="性别"> | ||||
|                   <template slot-scope="{row}"> | ||||
|                     {{ row.SEX === '0' ? '男' : '女' }} | ||||
|                   </template> | ||||
|                 </el-table-column> | ||||
|                 <el-table-column prop="CARD_ID" label="身份证号" width="150px"/> | ||||
|                 <el-table-column prop="BELONG_TO_CORP_NAME" label="所属企业"/> | ||||
|                 <el-table-column prop="DEPARTMENT_NAME" label="部门"/> | ||||
|                 <el-table-column prop="PHOTO" label="免冠照片" width="120px"> | ||||
|                   <template slot-scope="{row}"> | ||||
|                     <el-image v-if="getShowPicture(row)" :src="config.fileUrl+row.PHOTO" :preview-src-list="[config.fileUrl+row.PHOTO]" :z-index="9999" style="width: 100px; height: 100px"/> | ||||
|                     <img v-if="!getShowPicture(row)" src="../../../../assets/images/peopleHead.png" alt="" style="width: 100px; height: 100px"> | ||||
|                     <el-image | ||||
|                       v-if="getShowPicture(row)" | ||||
|                       :src="config.fileUrl+row.PHOTO" | ||||
|                       :preview-src-list="[config.fileUrl+row.PHOTO]" | ||||
|                       :z-index="9999" | ||||
|                       style="width: 100px; height: 100px"/> | ||||
|                     <img | ||||
|                       v-if="!getShowPicture(row)" | ||||
|                       src="../../../../assets/images/peopleHead.png" | ||||
|                       alt="" | ||||
|                       style="width: 100px; height: 100px"> | ||||
|                   </template> | ||||
|                 </el-table-column> | ||||
|                 <el-table-column prop="PHONE" label="联系电话"/> | ||||
|                 <el-table-column prop="STATUS" label="培训结果"> | ||||
|                 <el-table-column prop="PHONE" width="200px" label="联系电话"/> | ||||
|                 <el-table-column v-if="false" prop="STATUS" label="培训结果"> | ||||
|                   <template slot-scope="{row}"> | ||||
|                     <template v-if="row.STATUS === '0'">不合格</template> | ||||
|                     <template v-else-if="row.STATUS === '1'">合格</template> | ||||
|                   </template> | ||||
|                 </el-table-column> | ||||
|                 <el-table-column label="操作" align="center" width="200"> | ||||
|                 <el-table-column fixed="right" label="操作" align="center" width="100"> | ||||
|                   <template slot-scope="{row}"> | ||||
|                     <el-button | ||||
|                       v-if="form.CLASS_STATUS === '2' && row.STATUS === '1'" | ||||
|                       type="primary" | ||||
|                       icon="el-icon-edit" | ||||
|                       size="mini" | ||||
|                       @click="getUserInfo(row)">查看 | ||||
|                     </el-button> | ||||
|                     <el-button | ||||
|                       v-if="row.STATUS === '0' && form.CLASS_STATUS === '1'" | ||||
|                       type="primary" | ||||
|                       icon="el-icon-edit" | ||||
|                       size="mini" | ||||
|                       @click="changFlag(row,'1')">合格 | ||||
|                     </el-button> | ||||
|                     <el-button | ||||
|                       v-if="row.STATUS == '1' && form.CLASS_STATUS === '1'" | ||||
|                       type="danger" | ||||
|                       icon="el-icon-delete" | ||||
|                       size="mini" | ||||
|                       @click="changFlag(row,'0')">不合格 | ||||
|                     </el-button> | ||||
|                     <el-tooltip class="item" effect="dark" content="加入本次课程" placement="top-start"> | ||||
|                       <el-button | ||||
|                         v-if="!row.isSelect" | ||||
|                         type="warning" | ||||
|                         icon="el-icon-plus" | ||||
|                         circle | ||||
|                         @click="addSelect(row)"/> | ||||
|                     </el-tooltip> | ||||
|                     <el-tooltip class="item" effect="dark" content="已加入本次课程" placement="top-start"> | ||||
|                       <el-button | ||||
|                         v-if="row.isSelect" | ||||
|                         type="success" | ||||
|                         icon="el-icon-check" | ||||
|                         circle/> | ||||
|                     </el-tooltip> | ||||
|                     <el-tooltip class="item" effect="dark" content="详情" placement="top-start"> | ||||
|                       <el-button | ||||
|                         type="primary" | ||||
|                         icon="el-icon-info" | ||||
|                         circle | ||||
|                         @click="viewUserInfo(row)"/> | ||||
|                     </el-tooltip> | ||||
|                   </template> | ||||
|                 </el-table-column> | ||||
|               </el-table> | ||||
|  | @ -162,44 +210,56 @@ | |||
|           </el-row> | ||||
|         </el-form> | ||||
|       </el-col> | ||||
|       <el-col :span="6"> | ||||
|       <el-col :span="12"> | ||||
|         <div style="margin-left: 10px"> | ||||
|           <div>已选择人员数量:{{ ($refs.multipleTable && $refs.multipleTable.selection)?$refs.multipleTable.selection.length:0 }}</div> | ||||
|           <div>已选择人员数量:{{ | ||||
|             (selectPeopleList && selectPeopleList.length) ? selectPeopleList.length : 0 | ||||
|           }} | ||||
|           </div> | ||||
|           <div class="el-form-item__label">已选择人员名称:</div> | ||||
|           <el-table | ||||
|             :data="selectPeopleList" | ||||
|             border | ||||
|             height="600px" | ||||
|             height="642px" | ||||
|             style="width: 100%;margin-left: 10px"> | ||||
|             <el-table-column prop="NAME" fixed label="姓名" width="150px" style="width: 150px"/> | ||||
|             <el-table-column prop="NAME" fixed label="姓名" width="100px" style="width: 150px"/> | ||||
|             <el-table-column prop="USERNAME" label="用户名" width="150px" style="width: 150px"/> | ||||
|             <el-table-column prop="BELONG_TO_CORP_NAME" label="所属企业" width="150px" style="width: 150px"/> | ||||
|             <el-table-column prop="CARD_ID" label="身份证号" width="150px"/> | ||||
|             <el-table-column prop="BELONG_TO_CORP_NAME" label="所属企业" width="200px" style="width: 150px"/> | ||||
|             <el-table-column prop="CARD_ID" label="身份证号" width="200px"/> | ||||
|             <el-table-column fixed="right" label="操作" align="center"> | ||||
|               <template slot-scope="{row}"> | ||||
|                 <el-tooltip class="item" effect="dark" content="删除" placement="top-start"> | ||||
|                   <el-button type="danger" icon="el-icon-delete" circle @click="deleteSelect(row)"/> | ||||
|                 </el-tooltip> | ||||
|                 <el-tooltip class="item" effect="dark" content="详情" placement="top-start"> | ||||
|                   <el-button type="primary" icon="el-icon-info" circle @click="viewUserInfo(row)"/> | ||||
|                 </el-tooltip> | ||||
|               </template> | ||||
|             </el-table-column> | ||||
|           </el-table> | ||||
|         </div> | ||||
|       </el-col> | ||||
|     </el-row> | ||||
|     <div slot="footer" class="dialog-footer"> | ||||
|       <el-button @click="close">取 消</el-button> | ||||
|       <el-button v-if="!form.CLASS_STATUS || form.CLASS_STATUS === ''" type="primary" @click="confirm">确 定</el-button> | ||||
|       <el-button v-if="form.CLASS_STATUS === '0' || form.CLASS_STATUS === '1'" type="primary" @click="getExcel(form.CLASS_MESSAGE_ID)">导出excel</el-button> | ||||
|       <el-button v-if="form.CLASS_STATUS === '1'" type="primary" @click="graduation(form.CLASS_MESSAGE_ID)">班级结业</el-button> | ||||
|       <el-button v-if="form.CLASS_STATUS === '2'" type="primary" @click="getCertificate(form.CLASS_MESSAGE_ID)">导出结业证书</el-button> | ||||
|       <el-button @click="fullscreen">{{ fullscreenFlag ? '取消全屏' : '全 屏' }}</el-button> | ||||
|       <el-button type="primary" @click="confirm">确 定</el-button> | ||||
|     </div> | ||||
|     <user ref="userInfo" append-to-body/> | ||||
|     <user_pdf ref="userPdf" append-to-body/> | ||||
|     <user-info ref="userInfos" append-to-body/> | ||||
|   </el-dialog> | ||||
| </template> | ||||
| <script> | ||||
| import Pagination from '@/components/Pagination' // 通过 el-pagination二次打包 | ||||
| import { requestFN } from '@/utils/request' | ||||
| import waves from '@/directive/waves' // waves directive | ||||
| import axios from 'axios' | ||||
| import dayjs from 'dayjs' // waves directive | ||||
| import user from './user.vue' | ||||
| import User_pdf from './user_pdf.vue' | ||||
| import UserInfo from '../../../xgf/flow_audit/userInfo.vue' | ||||
| 
 | ||||
| export default { | ||||
|   components: { User_pdf, Pagination, user }, | ||||
|   components: { UserInfo, User_pdf, Pagination, user }, | ||||
|   directives: { waves }, | ||||
|   props: { | ||||
|     title: { | ||||
|  | @ -224,10 +284,16 @@ export default { | |||
|         CLASS_SIZE: '', // 班级容量 | ||||
|         CLASS_STATUS: '', // 班级状态(0-待开班、1-已开班、2-完成) | ||||
|         VALIDITY_PERIOD: [], | ||||
|         CLASS_MESSAGE_ID: '' | ||||
|         CLASS_MESSAGE_ID: '', | ||||
|         peopleList: [] | ||||
|       }, | ||||
|       util: { | ||||
|         BELONG_TO_CORP: '' | ||||
|         BELONG_TO_CORP: '', | ||||
|         NAME: '', | ||||
|         PHONE: '', | ||||
|         CARD_ID: '', | ||||
|         EDIT_FLAG: '', | ||||
|         CLASS_MESSAGE_ID: '' | ||||
|       }, | ||||
|       warehouse: { | ||||
|         placeList: [], | ||||
|  | @ -254,7 +320,9 @@ export default { | |||
|         VALIDITY_PERIOD: [{ trigger: 'blur', required: true, message: '请选择时间区间' }] | ||||
|       }, | ||||
|       peopleList: [], | ||||
|       selectPeopleList: [] | ||||
|       selectPeopleList: [], | ||||
|       fullscreenFlag: false, | ||||
|       lock: false | ||||
|     } | ||||
|   }, | ||||
|   created() { | ||||
|  | @ -264,6 +332,8 @@ export default { | |||
|       this.loading = true | ||||
|       this.visible = true | ||||
|       if (e && e.CLASS_MESSAGE_ID && e.CLASS_MESSAGE_ID !== '') { | ||||
|         this.util.EDIT_FLAG = '1' | ||||
|         this.util.CLASS_MESSAGE_ID = e.CLASS_MESSAGE_ID | ||||
|         this.getInformation(e) | ||||
|       } else { | ||||
|         this.getPeopleList() | ||||
|  | @ -282,10 +352,16 @@ export default { | |||
|           return | ||||
|         } | ||||
|         this.selectPeopleList = rows | ||||
|         for (let i = 0; i < this.selectPeopleList.length; i++) { | ||||
|           this.selectPeopleList[i].isSelect = true | ||||
|         } | ||||
|         if (!this.lock) { | ||||
|           this.getPeopleList() | ||||
|         } | ||||
|       } | ||||
|     }, | ||||
|     confirm() { | ||||
|       const list = this.$refs.multipleTable.selection | ||||
|       const list = this.selectPeopleList | ||||
|       if (!list || !list.length || list.length === 0) { | ||||
|         this.$message.error('没有人员数据') | ||||
|         return | ||||
|  | @ -317,6 +393,7 @@ export default { | |||
|       }) | ||||
|     }, | ||||
|     close() { | ||||
|       console.log('清理缓存') | ||||
|       this.visible = false | ||||
|       this.form = { | ||||
|         CLASS_NAME: '', // 班级名称 | ||||
|  | @ -327,7 +404,14 @@ export default { | |||
|         CLASS_STATUS: ''// 班级状态(0-待开班、1-已开班、2-完成) | ||||
|       } | ||||
|       this.selectPeopleList = [] | ||||
|       this.util.BELONG_TO_CORP = '' | ||||
|       this.util = { | ||||
|         BELONG_TO_CORP: '', | ||||
|         NAME: '', | ||||
|         PHONE: '', | ||||
|         CARD_ID: '', | ||||
|         EDIT_FLAG: '', | ||||
|         CLASS_MESSAGE_ID: '' | ||||
|       } | ||||
|       this.$refs.multipleTable.clearSelection() | ||||
|     }, | ||||
|     getDic() { | ||||
|  | @ -379,8 +463,17 @@ export default { | |||
|       } else { | ||||
|         pageSize = this.form.CLASS_SIZE | ||||
|       } | ||||
|       requestFN('/classMessage/getPeopleList?showCount=' + pageSize + '¤tPage=1', { BELONG_TO_CORP: this.util.BELONG_TO_CORP }).then((data) => { | ||||
|         this.peopleList = data.varList | ||||
|       requestFN('/classMessage/getPeopleList?showCount=' + pageSize + '¤tPage=1', this.util).then((data) => { | ||||
|         const _peopleList = data.varList | ||||
|         if (data.varList && data.varList.length > 0) { | ||||
|           _peopleList.forEach((item) => { | ||||
|             const list = this.selectPeopleList.filter(ver => ver.USER_ID === item.USER_ID) | ||||
|             if (list && list.length > 0) { | ||||
|               item.isSelect = true | ||||
|             } | ||||
|           }) | ||||
|         } | ||||
|         this.peopleList = _peopleList | ||||
|         this.loading = false | ||||
|       }).catch((e) => { | ||||
|         this.loading = false | ||||
|  | @ -392,7 +485,12 @@ export default { | |||
|           if (data.code === '0') { | ||||
|             this.form = data.pd | ||||
|             this.form.VALIDITY_PERIOD = [this.form.VALIDITY_PERIOD_START, this.form.VALIDITY_PERIOD_END] | ||||
|             this.peopleList = this.form.peopleList | ||||
|             this.selectPeopleList = this.form.peopleList | ||||
|             this.$refs.multipleTable.selection = this.form.peopleList | ||||
|             this.form.peopleList.forEach(row => { | ||||
|               this.$refs.multipleTable.toggleRowSelection(row) | ||||
|             }) | ||||
|             this.getPeopleList() | ||||
|           } else { | ||||
|             this.$message.error('数据异常') | ||||
|           } | ||||
|  | @ -401,82 +499,10 @@ export default { | |||
|           this.loading = false | ||||
|         }) | ||||
|     }, | ||||
|     getExcel(id) { | ||||
|       const loading = this.$loading({ | ||||
|         lock: true, | ||||
|         text: '加载中...', | ||||
|         spinner: 'el-icon-loading', | ||||
|         background: 'rgba(0, 0, 0, 0.7)' | ||||
|       }) | ||||
|       axios.get(config.httpurl + '/classMessage/excel?CLASS_MESSAGE_ID=' + id, { | ||||
|         responseType: 'blob' | ||||
|       }).then(res => { | ||||
|         setTimeout(() => { | ||||
|           const blob = new Blob([res.data], { type: 'application/vnd.ms-excel' }) | ||||
|           const downloadElement = document.createElement('a') | ||||
|           const href = window.URL.createObjectURL(blob) | ||||
|           downloadElement.style.display = 'none' | ||||
|           downloadElement.href = href | ||||
|           downloadElement.download = dayjs().format('YYYY-MM-DD HH:mm:ss') | ||||
|           document.body.appendChild(downloadElement) | ||||
|           downloadElement.click() | ||||
|           document.body.removeChild(downloadElement) | ||||
|           window.URL.revokeObjectURL(href) | ||||
|           this.$emit('getResult', '') | ||||
|           loading.close() | ||||
|           this.close() | ||||
|         }, 2000) | ||||
|       }).catch((e) => { | ||||
|         console.log(e) | ||||
|         loading.close() | ||||
|         this.$message.error('导出失败,或未查询到隐患') | ||||
|       }) | ||||
|     }, | ||||
|     changFlag(row, flag) { | ||||
|       row.STATUS = flag | ||||
|       requestFN('/classMessage/enterGrades', { CLASS_INFO_ID: row.CLASS_INFO_ID, STATUS: flag }) | ||||
|         .then((data) => { | ||||
|           this.$message({ | ||||
|             type: 'success', | ||||
|             message: '操作成功' | ||||
|           }) | ||||
|           this.$emit('getResult', '') | ||||
|         }).catch((e) => { | ||||
|         }) | ||||
|     }, | ||||
|     graduation(id) { | ||||
|       this.$confirm('确定要结业吗, 结业后成绩将无法更改', '提示', { | ||||
|         confirmButtonText: '确定', | ||||
|         cancelButtonText: '取消', | ||||
|         type: 'warning' | ||||
|       }).then(() => { | ||||
|         requestFN('/classMessage/graduation', { CLASS_MESSAGE_ID: id }) | ||||
|           .then((data) => { | ||||
|             this.$message({ | ||||
|               type: 'success', | ||||
|               message: '操作成功' | ||||
|             }) | ||||
|             this.visible = false | ||||
|             this.loading = false | ||||
|             this.close() | ||||
|             this.$emit('getResult', '') | ||||
|           }).catch((e) => { | ||||
|             this.loading = false | ||||
|           }) | ||||
|       }).catch(() => { | ||||
|         this.$message({ | ||||
|           type: 'info', | ||||
|           message: '已取操作' | ||||
|         }) | ||||
|       }) | ||||
|     }, | ||||
|     getUserInfo(row) { | ||||
|       console.log(row) | ||||
|       this.$refs.userInfo.init(row) | ||||
|     }, | ||||
|     getCertificate(CLASS_MESSAGE_ID) { | ||||
|       this.$refs.userPdf.init({ CLASS_MESSAGE_ID: CLASS_MESSAGE_ID }) | ||||
|     }, | ||||
|     changePeopleList() { | ||||
|       requestFN('/classMessage/getPeopleList?showCount=' + this.form.CLASS_SIZE + '¤tPage=1', | ||||
|         { BELONG_TO_CORP: this.util.BELONG_TO_CORP } | ||||
|  | @ -492,8 +518,52 @@ export default { | |||
|     }, | ||||
|     getShowPicture(row) { | ||||
|       return row.PHOTO && row.PHOTO !== '' | ||||
|     }, | ||||
|     fullscreen() { | ||||
|       this.fullscreenFlag = !this.fullscreenFlag | ||||
|     }, | ||||
|     addSelect(row) { | ||||
|       if (this.form.CLASS_SIZE === '' || !this.form.CLASS_SIZE) { | ||||
|         this.$message.error('请先选择班级容量') | ||||
|         this.$refs.multipleTable.clearSelection() | ||||
|         return | ||||
|       } | ||||
|       this.selectPeopleList.push(row) | ||||
|       this.$refs.multipleTable.toggleRowSelection(row) | ||||
|     }, | ||||
|     clickAddSelect(row, column, event) { | ||||
|       if (!row.isSelect) { | ||||
|         this.addSelect(row) | ||||
|       } | ||||
|     }, | ||||
|     deleteSelect(row) { | ||||
|       this.selectPeopleList = this.selectPeopleList.filter(ver => ver.USER_ID !== row.USER_ID) | ||||
|       this.form.peopleList = this.form.peopleList.filter(ver => ver.USER_ID !== row.USER_ID) | ||||
|       // 重新选择 | ||||
|       this.$refs.multipleTable.clearSelection() | ||||
|       this.lock = true | ||||
|       this.form.peopleList.forEach(row => { | ||||
|         this.$refs.multipleTable.toggleRowSelection(row) | ||||
|       }) | ||||
|       this.getPeopleList() | ||||
|       this.lock = false | ||||
|     }, | ||||
|     viewUserInfo(row) { | ||||
|       this.$refs.userInfos.init({ XGF_USER_ID: row.USER_ID }) | ||||
|     } | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| </script> | ||||
| 
 | ||||
| <style lang="scss" scoped> | ||||
| /* 设置默认高度-滚动条高度 */ | ||||
| .el-table__fixed { | ||||
|   height: calc(100% - 15px) !important; | ||||
| } | ||||
| 
 | ||||
| /* 用于消除固定列下方的伪元素边框线 */ | ||||
| .el-table__fixed:before { | ||||
|   height: 0px; | ||||
| } | ||||
| </style> | ||||
|  |  | |||
|  | @ -71,12 +71,19 @@ | |||
|           {{ row.CLASS_STATUS === '0'?'待开班':(row.CLASS_STATUS === '1'?'已开班':'完成') }} | ||||
|         </template> | ||||
|       </el-table-column> | ||||
|       <el-table-column label="操作" align="center" width="400" fixed="right"> | ||||
|       <el-table-column label="操作" align="center" width="360" fixed="right"> | ||||
|         <template slot-scope="{row}"> | ||||
|           <el-button type="primary" icon="el-icon-edit" size="mini" @click="handleEdit(row.CLASS_MESSAGE_ID)">查看</el-button> | ||||
|           <el-button v-show=" row.CLASS_STATUS === '0'" type="danger" icon="el-icon-delete" size="mini" @click="handleDelete(row.CLASS_MESSAGE_ID)">删除</el-button> | ||||
|           <el-button v-show=" row.CLASS_STATUS === '1'" type="primary" size="mini" @click="uploadExcel(row)">信息反馈</el-button> | ||||
|           <el-button v-show=" row.CLASS_STATUS === '0'" type="primary" icon="el-icon-edit" size="mini" @click="changeName(row)">修改班级名称</el-button> | ||||
|           <el-row> | ||||
|             <el-col :span="24" style="margin-bottom: 10px"> | ||||
|               <el-button type="primary" icon="el-icon-edit" size="mini" @click="handleEdit(row.CLASS_MESSAGE_ID)">查看</el-button> | ||||
|               <el-button v-if=" row.CLASS_STATUS === '0'" type="primary" icon="el-icon-edit" size="mini" @click="handleInit(row.CLASS_MESSAGE_ID)">编辑</el-button> | ||||
|               <el-button v-if=" row.CLASS_STATUS === '0'" type="danger" icon="el-icon-delete" size="mini" @click="handleDelete(row.CLASS_MESSAGE_ID)">删除</el-button> | ||||
|             </el-col> | ||||
|             <el-col :span="24"> | ||||
|               <el-button v-if=" row.CLASS_STATUS === '1'" type="primary" size="mini" @click="uploadExcel(row)">信息反馈</el-button> | ||||
|               <el-button v-if=" row.CLASS_STATUS === '0'" type="primary" icon="el-icon-edit" size="mini" @click="changeName(row)">修改班级名称</el-button> | ||||
|             </el-col> | ||||
|           </el-row> | ||||
|         </template> | ||||
|       </el-table-column> | ||||
|     </el-table> | ||||
|  | @ -193,6 +200,11 @@ export default { | |||
|       this.isShow = true | ||||
|       this.$refs.edit.init({ CLASS_MESSAGE_ID: ID }) | ||||
|     }, | ||||
|     handleInit(ID) { | ||||
|       this.title = '详情' | ||||
|       this.isShow = false | ||||
|       this.$refs.initClass.init({ CLASS_MESSAGE_ID: ID }) | ||||
|     }, | ||||
|     handleDelete(id) { | ||||
|       this.$confirm('确定要删除吗?', { | ||||
|         confirmButtonText: '确定', | ||||
|  |  | |||
|  | @ -75,6 +75,22 @@ | |||
|           <td class="bbg">动火作业实施时间</td> | ||||
|           <td colspan="3">{{ pd.WORK_START_DATE }}至{{ pd.WORK_END_DATE }}止</td> | ||||
|         </tr> | ||||
|         <tr v-if="pd.FIRE_COMPLETED === '1' && pd.SITE_CLEANED === '1'"> | ||||
|           <td class="bbg">动火是否完成</td> | ||||
|           <td> | ||||
|             <span>已完成</span> | ||||
|           </td> | ||||
|           <td class="bbg">动火是否完成</td> | ||||
|           <td> | ||||
|             <span>已清理</span> | ||||
|           </td> | ||||
|         </tr> | ||||
|         <tr v-if="pd.NO_REMAINING_EMBERS === '1'"> | ||||
|           <td class="bbg">是否存在遗留火种</td> | ||||
|           <td> | ||||
|             <span>无遗留火种</span> | ||||
|           </td> | ||||
|         </tr> | ||||
|         <tr> | ||||
|           <td colspan="4"> | ||||
|             <table class="table-ui"> | ||||
|  | @ -146,13 +162,25 @@ | |||
|         <tr> | ||||
|           <td class="bbg">接受交底人</td> | ||||
|           <td colspan="10"> | ||||
|             <div v-for="item in imgList" :key="item.ACCEPT_CONFESS_ID" style="text-align: right"> | ||||
|               <span>签字:</span> | ||||
|               <img v-viewer :src="config.fileUrl + item.ACCEPT_CONFESS_USER_SIGNER_PATH" alt="" width="100" height="100"> | ||||
|               <span>{{ item.ACCEPT_CONFESS_USER_SIGNER_TIME }}</span> | ||||
|             <div v-for="item in acceptConfessList" :key="item.USER_ID"> | ||||
|               <div v-for="(signature, index) in item.APPROVAL_SIGNATURE" :key="index" style="text-align: right"> | ||||
|                 <span>签字:</span> | ||||
|                 <img v-viewer :src="config.fileUrl + signature.trim()" alt="" width="100" height="100"> | ||||
|                 <span>{{ item.APPROVAL_SIGNATURE_TIME.split(',')[0] }}</span> | ||||
|               </div> | ||||
|             </div> | ||||
|           </td> | ||||
|         </tr> | ||||
| <!--        <tr>--> | ||||
| <!--          <td class="bbg">接受交底人</td>--> | ||||
| <!--          <td colspan="10">--> | ||||
| <!--            <div v-for="item in imgList" :key="item.ACCEPT_CONFESS_ID" style="text-align: right">--> | ||||
| <!--              <span>签字:</span>--> | ||||
| <!--              <img v-viewer :src="config.fileUrl + item.ACCEPT_CONFESS_USER_SIGNER_PATH" alt="" width="100" height="100">--> | ||||
| <!--              <span>{{ item.ACCEPT_CONFESS_USER_SIGNER_TIME }}</span>--> | ||||
| <!--            </div>--> | ||||
| <!--          </td>--> | ||||
| <!--        </tr>--> | ||||
|         <tr> | ||||
|           <td class="bbg">监护人</td> | ||||
|           <td colspan="3"> | ||||
|  | @ -175,7 +203,7 @@ | |||
|         </tr> | ||||
|         <tr v-if="pd.CONFIRM_USER_SIGNER_PATH"> | ||||
|           <td colspan="6"> | ||||
|             <div>作业负责人意见:{{ pd.CONFIRM_CONTENT }}</div> | ||||
|             <div>作业负责人意见:{{ pd.CONFIRM_CONTENT === '无' ? '同意' : pd.CONFIRM_CONTENT  }}</div> | ||||
|             <div style="text-align: right"> | ||||
|               <span>签字:</span> | ||||
|               <img v-viewer :src="config.fileUrl + pd.CONFIRM_USER_SIGNER_PATH" alt="" width="100" height="100"> | ||||
|  | @ -185,7 +213,7 @@ | |||
|         </tr> | ||||
|         <tr v-if="pd.BELONGING_SIGNATURE"> | ||||
|           <td colspan="6"> | ||||
|             <div>项目主管部门负责人意见:{{ pd.BELONGING_OPINIONS }}</div> | ||||
|             <div>项目主管部门负责人意见:{{ pd.BELONGING_OPINIONS === '' ? '同意' : pd.BELONGING_OPINIONS }}</div> | ||||
|             <div style="text-align: right"> | ||||
|               <span>签字:</span> | ||||
|               <img v-viewer :src="config.fileUrl + pd.BELONGING_SIGNATURE" alt="" width="100" height="100"> | ||||
|  | @ -195,7 +223,7 @@ | |||
|         </tr> | ||||
|         <tr v-if="pd.LEADER_USER_SIGNER_PATH"> | ||||
|           <td colspan="6"> | ||||
|             <div>所在单位意见:{{ pd.LEADER_CONTENT }}</div> | ||||
|             <div>属地监管单位意见:{{ pd.LEADER_CONTENT === '无' ? '同意' : pd.LEADER_CONTENT }}</div> | ||||
|             <div style="text-align: right"> | ||||
|               <span>签字:</span> | ||||
|               <img v-viewer :src="config.fileUrl + pd.LEADER_USER_SIGNER_PATH" alt="" width="100" height="100"> | ||||
|  | @ -205,7 +233,7 @@ | |||
|         </tr> | ||||
|         <tr v-if="pd.AUDIT_USER_SIGNER_PATH"> | ||||
|           <td colspan="6"> | ||||
|             <div>安全管理部门意见:{{ pd.AUDIT_CONTENT }}</div> | ||||
|             <div>安全管理部门意见:{{ pd.AUDIT_CONTENT === '无' ? '同意' : pd.AUDIT_CONTENT }}</div> | ||||
|             <div style="text-align: right"> | ||||
|               <span>签字:</span> | ||||
|               <img v-viewer :src="config.fileUrl + pd.AUDIT_USER_SIGNER_PATH" alt="" width="100" height="100"> | ||||
|  | @ -215,7 +243,7 @@ | |||
|         </tr> | ||||
|         <tr v-if="pd.APPROVE_USER_SIGNER_PATH"> | ||||
|           <td colspan="6"> | ||||
|             <div>动火审批人意见:{{ pd.APPROVE_CONTENT }}</div> | ||||
|             <div>动火审批人意见:{{ pd.APPROVE_CONTENT === '无' ? '同意' : pd.APPROVE_CONTENT }}</div> | ||||
|             <div style="text-align: right"> | ||||
|               <span>签字:</span> | ||||
|               <img v-viewer :src="config.fileUrl + pd.APPROVE_USER_SIGNER_PATH" alt="" width="100" height="100"> | ||||
|  | @ -225,7 +253,7 @@ | |||
|         </tr> | ||||
|         <tr v-if="pd.MONITOR_USER_SIGNER_PATH"> | ||||
|           <td colspan="6"> | ||||
|             <div>动火前验票负责人:{{ pd.MONITOR_CONTENT }}</div> | ||||
|             <div>动火前验票负责人:{{ pd.MONITOR_CONTENT === '无' ? '同意' : pd.MONITOR_CONTENT }}</div> | ||||
|             <div style="text-align: right"> | ||||
|               <span>签字:</span> | ||||
|               <img v-viewer :src="config.fileUrl + pd.MONITOR_USER_SIGNER_PATH" alt="" width="100" height="100"> | ||||
|  | @ -235,7 +263,7 @@ | |||
|         </tr> | ||||
|         <tr v-if="imgList1.length>0"> | ||||
|           <td colspan="10"> | ||||
|             <div>完工验收:{{ pd.ACCEPT_CONTENT }}</div> | ||||
|             <div>完工验收:{{ pd.ACCEPT_CONTENT === '无' ? '同意' : pd.ACCEPT_CONTENT }}</div> | ||||
|             <div v-for="item in imgList1" :key="item.ACCEPT_CONFESS_ID" style="text-align: right"> | ||||
|               <span>签字:</span> | ||||
|               <img v-viewer :src="config.fileUrl + item.ACCEPT_USER_SIGNER_PATH" alt="" width="100" height="100"> | ||||
|  | @ -267,6 +295,7 @@ export default { | |||
|       imgList: [], | ||||
|       imgList1: [], | ||||
|       otherProtectiveMeasures: [], | ||||
|       acceptConfessList: [], | ||||
|       confessList: [] | ||||
|     } | ||||
|   }, | ||||
|  | @ -312,23 +341,37 @@ export default { | |||
|             this.confessList.push(item) | ||||
|           } | ||||
|         }) | ||||
|         for (let i = 0; i < data.measuresList.length; i++) { | ||||
|           // 将字符串转成数组 | ||||
|           const PROTECTIVE_MEASURES = data.measuresList[i].PROTECTIVE_MEASURES.split('') | ||||
|           for (let j = 1; j <= 3; j++) { | ||||
|             // 判断字符串是否存在 | ||||
|             if (this.findCharIndex(PROTECTIVE_MEASURES, '(', j) !== -1) { | ||||
|               // 给字符串后面添加上需要的数据 | ||||
|               PROTECTIVE_MEASURES.splice( | ||||
|                 this.findCharIndex(PROTECTIVE_MEASURES, '(', j) + 1, | ||||
|                 0, | ||||
|                 data.measuresList[i]['ANSWER' + j] | ||||
|               ) | ||||
|             } | ||||
|         // data.pd.acceptConfessList.forEach(item => { | ||||
|         //   if (item.APPROVAL_SIGNATURE_TIME !== undefined && item.APPROVAL_SIGNATURE_TIME.trim() !== '') { | ||||
|         //     this.acceptConfessList.push(item) | ||||
|         //   } | ||||
|         // }) | ||||
|         data.pd.acceptConfessList.forEach(item => { | ||||
|           // 将 APPROVAL_SIGNATURE 转换为数组 | ||||
|           if (item.APPROVAL_SIGNATURE) { | ||||
|             item.APPROVAL_SIGNATURE = item.APPROVAL_SIGNATURE.split(';') | ||||
|           } | ||||
|           // 将数组转回字符串 | ||||
|           data.measuresList[i].PROTECTIVE_MEASURES = PROTECTIVE_MEASURES.join('') | ||||
|         } | ||||
|           if (item.APPROVAL_SIGNATURE_TIME !== undefined && item.APPROVAL_SIGNATURE_TIME.trim() !== '') { | ||||
|             this.acceptConfessList.push(item) | ||||
|           } | ||||
|         }) | ||||
|         // for (let i = 0; i < data.measuresList.length; i++) { | ||||
|         //   // 将字符串转成数组 | ||||
|         //   const PROTECTIVE_MEASURES = data.measuresList[i].PROTECTIVE_MEASURES.split('') | ||||
|         //   for (let j = 1; j <= 3; j++) { | ||||
|         //     // 判断字符串是否存在 | ||||
|         //     if (this.findCharIndex(PROTECTIVE_MEASURES, '(', j) !== -1) { | ||||
|         //       // 给字符串后面添加上需要的数据 | ||||
|         //       PROTECTIVE_MEASURES.splice( | ||||
|         //         this.findCharIndex(PROTECTIVE_MEASURES, '(', j) + 1, | ||||
|         //         0, | ||||
|         //         data.measuresList[i]['ANSWER' + j] | ||||
|         //       ) | ||||
|         //     } | ||||
|         //   } | ||||
|         //   // 将数组转回字符串 | ||||
|         //   data.measuresList[i].PROTECTIVE_MEASURES = PROTECTIVE_MEASURES.join('') | ||||
|         // } | ||||
|         this.measuresList = data.measuresList // 参数map | ||||
|         this.gasList = data.gasList // 参数map | ||||
|         if (this.pd.WORK_LEVEL === '二级') { | ||||
|  |  | |||
|  | @ -52,14 +52,14 @@ | |||
|         <template slot-scope="{row}"> | ||||
|           <span v-if="row.APPLY_STATUS==0">动火作业待提交</span> | ||||
|           <span v-else-if="row.APPLY_STATUS==1">作业负责人待审核</span> | ||||
|           <span v-else-if="row.APPLY_STATUS==1.5">项目负责人待审核</span> | ||||
|           <span v-else-if="row.APPLY_STATUS==1.5">项目主管部门待审核</span> | ||||
|           <span v-else-if="row.APPLY_STATUS==2">属地监管单位待审核</span> | ||||
|           <span v-else-if="row.APPLY_STATUS==4">安全管理部门待审核</span> | ||||
|           <span v-else-if="row.APPLY_STATUS==5">动火审批人待审核</span> | ||||
|           <span v-else-if="row.APPLY_STATUS==6">班长待验票</span> | ||||
|           <span v-else-if="row.APPLY_STATUS==7">待验收</span> | ||||
|           <span v-else-if="row.APPLY_STATUS==8">验收归档</span> | ||||
|           <span v-else-if="row.APPLY_STATUS==-1.5">项目负责人审核打回</span> | ||||
|           <span v-else-if="row.APPLY_STATUS==-1.5">项目主管部门审核打回</span> | ||||
|           <span v-else-if="row.APPLY_STATUS==-2">作业负责人审核打回</span> | ||||
|           <span v-else-if="row.APPLY_STATUS==-4">所在单位审核打回</span> | ||||
|           <span v-else-if="row.APPLY_STATUS==-5">安全管理部门审核打回</span> | ||||
|  |  | |||
|  | @ -73,27 +73,31 @@ | |||
|             <tr> | ||||
|               <td>序号</td> | ||||
|               <td>安全措施</td> | ||||
|               <td style="width: 80px; text-align: center">是否涉及</td> | ||||
|               <td style="width: 80px; text-align: center">确认人</td> | ||||
|               <td style="width: 80px; text-align: center;">是否涉及</td> | ||||
|               <td style="width: 80px; text-align: center;">确认人</td> | ||||
|             </tr> | ||||
|             <tr v-for="(item,index) in measuresList" :key="index"> | ||||
|               <td>{{ index + 1 }}</td> | ||||
|             <tr v-for="(item, index) in measuresList" :key="index"> | ||||
|               <td style="text-align: center;">{{ index + 1 }}</td> | ||||
|               <td> | ||||
|                 {{ item.PROTECTIVE_MEASURES }} | ||||
|                 <!--                  <template v-if="item.QUESTION1">--> | ||||
|                 <!--                    {{ item.QUESTION1 }}({{ item.ANSWER1 }})--> | ||||
|                 <!--                  </template>--> | ||||
|                 <!--                  <template v-if="item.QUESTION2">--> | ||||
|                 <!--                    、{{ item.QUESTION2 }}({{ item.ANSWER2 }}) 、{{ item.QUESTION3 }}({{ item.ANSWER3 }})--> | ||||
|                 <!--                  </template>--> | ||||
|                 <!-- | ||||
|                 <template v-if="item.QUESTION1"> | ||||
|                   {{ item.QUESTION1 }}({{ item.ANSWER1 }}) | ||||
|                 </template> | ||||
|                 <template v-if="item.QUESTION2"> | ||||
|                   、{{ item.QUESTION2 }}({{ item.ANSWER2 }}) 、{{ item.QUESTION3 }}({{ item.ANSWER3 }}) | ||||
|                 </template> | ||||
|                 --> | ||||
|               </td> | ||||
|               <td> | ||||
|                 <span v-if="item.STATUS=='1'"><input type="radio" disabled checked>涉   及</span> | ||||
|                 <span v-if="item.STATUS=='-1'"><input type="radio" disabled checked>不涉及</span> | ||||
|               </td> | ||||
|               <td> | ||||
|                 {{ item.CONFIRM_NAME }} | ||||
|               <td style="text-align: center;"> | ||||
|                 <span v-if="item.STATUS == '1'"> | ||||
|                   <input type="radio" disabled checked>涉   及 | ||||
|                 </span> | ||||
|                 <span v-if="item.STATUS == '-1'"> | ||||
|                   <input type="radio" disabled checked>不涉及 | ||||
|                 </span> | ||||
|               </td> | ||||
|               <td style="text-align: center;">{{ item.CONFIRM_NAME }}</td> | ||||
|             </tr> | ||||
|             <tr v-if="pd.SAFETY_USER_MEASURES || pd.CONFIRM_OTHER_CONTENT || pd.BELONGING_USER_MEASURES || pd.GUARDIAN_USER_MEASURES || pd.LEADER_USER_MEASURES | ||||
|             || pd.AUDIT_USER_MEASURES || pd.APPROVE_USER_MEASURES || pd.MONITOR_USER_MEASURES"> | ||||
|  | @ -141,13 +145,25 @@ | |||
|       <tr> | ||||
|         <td class="bbg-transparent">接受交底人</td> | ||||
|         <td colspan="10"> | ||||
|           <div v-for="item in imgList" :key="item.ACCEPT_CONFESS_ID" style="text-align: right"> | ||||
|             <span>签字:</span> | ||||
|             <img v-viewer :src="config.fileUrl + item.ACCEPT_CONFESS_USER_SIGNER_PATH" alt="" width="100" height="100"> | ||||
|             <span>{{ item.ACCEPT_CONFESS_USER_SIGNER_TIME }}</span> | ||||
|           <div v-for="item in acceptConfessList" :key="item.USER_ID"> | ||||
|             <div v-for="(signature, index) in item.APPROVAL_SIGNATURE" :key="index" style="text-align: right"> | ||||
|               <span>签字:</span> | ||||
|               <img v-viewer :src="config.fileUrl + signature.trim()" alt="" width="100" height="100"> | ||||
|               <span>{{ item.APPROVAL_SIGNATURE_TIME.split(',')[0] }}</span> | ||||
|             </div> | ||||
|           </div> | ||||
|         </td> | ||||
|       </tr> | ||||
| <!--      <tr>--> | ||||
| <!--        <td class="bbg-transparent">接受交底人</td>--> | ||||
| <!--        <td colspan="10">--> | ||||
| <!--          <div v-for="item in imgList" :key="item.ACCEPT_CONFESS_ID" style="text-align: right">--> | ||||
| <!--            <span>签字:</span>--> | ||||
| <!--            <img v-viewer :src="config.fileUrl + item.ACCEPT_CONFESS_USER_SIGNER_PATH" alt="" width="100" height="100">--> | ||||
| <!--            <span>{{ item.ACCEPT_CONFESS_USER_SIGNER_TIME }}</span>--> | ||||
| <!--          </div>--> | ||||
| <!--        </td>--> | ||||
| <!--      </tr>--> | ||||
|       <tr> | ||||
|         <td class="bbg-transparent">监护人</td> | ||||
|         <td colspan="3"> | ||||
|  | @ -170,7 +186,7 @@ | |||
|       </tr> | ||||
|       <tr v-if="pd.CONFIRM_USER_SIGNER_PATH"> | ||||
|         <td colspan="6"> | ||||
|           <div>作业负责人意见:{{ pd.CONFIRM_CONTENT }}</div> | ||||
|           <div>作业负责人意见:{{ pd.CONFIRM_CONTENT === '无' ? '同意' : pd.CONFIRM_CONTENT }}</div> | ||||
|           <div style="text-align: right"> | ||||
|             <span>签字:</span> | ||||
|             <img v-viewer :src="config.fileUrl + pd.CONFIRM_USER_SIGNER_PATH" alt="" width="100" height="100"> | ||||
|  | @ -180,7 +196,7 @@ | |||
|       </tr> | ||||
|       <tr v-if="pd.BELONGING_SIGNATURE"> | ||||
|         <td colspan="6"> | ||||
|           <div>项目主管部门负责人意见:{{ pd.BELONGING_OPINIONS }}</div> | ||||
|           <div>项目主管部门负责人意见:{{ pd.BELONGING_OPINIONS === '' ? '同意' : pd.BELONGING_OPINIONS }}</div> | ||||
|           <div style="text-align: right"> | ||||
|             <span>签字:</span> | ||||
|             <img v-viewer :src="config.fileUrl + pd.BELONGING_SIGNATURE" alt="" width="100" height="100"> | ||||
|  | @ -190,7 +206,7 @@ | |||
|       </tr> | ||||
|       <tr v-if="pd.LEADER_USER_SIGNER_PATH"> | ||||
|         <td colspan="6"> | ||||
|           <div>属地监管单位意见:{{ pd.LEADER_CONTENT }}</div> | ||||
|           <div>属地监管单位意见:{{ pd.LEADER_CONTENT === '无' ? '同意' : pd.LEADER_CONTENT }}</div> | ||||
|           <div style="text-align: right"> | ||||
|             <span>签字:</span> | ||||
|             <img v-viewer :src="config.fileUrl + pd.LEADER_USER_SIGNER_PATH" alt="" width="100" height="100"> | ||||
|  | @ -200,7 +216,7 @@ | |||
|       </tr> | ||||
|       <tr v-if="pd.AUDIT_USER_SIGNER_PATH"> | ||||
|         <td colspan="6"> | ||||
|           <div>安全管理部门意见:{{ pd.AUDIT_CONTENT }}</div> | ||||
|           <div>安全管理部门意见:{{ pd.AUDIT_CONTENT === '无' ? '同意' : pd.AUDIT_CONTENT}}</div> | ||||
|           <div style="text-align: right"> | ||||
|             <span>签字:</span> | ||||
|             <img v-viewer :src="config.fileUrl + pd.AUDIT_USER_SIGNER_PATH" alt="" width="100" height="100"> | ||||
|  | @ -210,7 +226,7 @@ | |||
|       </tr> | ||||
|       <tr v-if="pd.APPROVE_USER_SIGNER_PATH"> | ||||
|         <td colspan="6"> | ||||
|           <div>动火审批人意见:{{ pd.APPROVE_CONTENT }}</div> | ||||
|           <div>动火审批人意见:{{ pd.APPROVE_CONTENT === '无' ? '同意' : pd.APPROVE_CONTENT}}</div> | ||||
|           <div style="text-align: right"> | ||||
|             <span>签字:</span> | ||||
|             <img v-viewer :src="config.fileUrl + pd.APPROVE_USER_SIGNER_PATH" alt="" width="100" height="100"> | ||||
|  | @ -220,7 +236,7 @@ | |||
|       </tr> | ||||
|       <tr v-if="pd.MONITOR_USER_SIGNER_PATH"> | ||||
|         <td colspan="6"> | ||||
|           <div>动火前验票负责人:{{ pd.MONITOR_CONTENT }}</div> | ||||
|           <div>动火前验票负责人:{{ pd.MONITOR_CONTENT === '无' ? '同意' : pd.MONITOR_CONTENT}}</div> | ||||
|           <div style="text-align: right"> | ||||
|             <span>签字:</span> | ||||
|             <img v-viewer :src="config.fileUrl + pd.MONITOR_USER_SIGNER_PATH" alt="" width="100" height="100"> | ||||
|  | @ -230,7 +246,7 @@ | |||
|       </tr> | ||||
|       <tr v-if="imgList1.length>0"> | ||||
|         <td colspan="10"> | ||||
|           <div>完工验收:{{ pd.ACCEPT_CONTENT }}</div> | ||||
|           <div>完工验收:{{ pd.ACCEPT_CONTENT === '无' ? '同意' : pd.ACCEPT_CONTENT}}</div> | ||||
|           <div v-for="item in imgList1" :key="item.ACCEPT_CONFESS_ID" style="text-align: right"> | ||||
|             <span>签字:</span> | ||||
|             <img v-viewer :src="config.fileUrl + item.ACCEPT_USER_SIGNER_PATH" alt="" width="100" height="100"> | ||||
|  | @ -273,6 +289,7 @@ export default { | |||
|       imgList: [], | ||||
|       imgList1: [], | ||||
|       otherProtectiveMeasures: [], | ||||
|       acceptConfessList: [], | ||||
|       confessList: [] | ||||
|     } | ||||
|   }, | ||||
|  | @ -320,6 +337,20 @@ export default { | |||
|             this.confessList.push(item) | ||||
|           } | ||||
|         }) | ||||
|         // data.pd.acceptConfessList.forEach(item => { | ||||
|         //   if (item.APPROVAL_SIGNATURE_TIME !== undefined && item.APPROVAL_SIGNATURE_TIME.trim() !== '') { | ||||
|         //     this.acceptConfessList.push(item) | ||||
|         //   } | ||||
|         // }) | ||||
|         data.pd.acceptConfessList.forEach(item => { | ||||
|           // 将 APPROVAL_SIGNATURE 转换为数组 | ||||
|           if (item.APPROVAL_SIGNATURE) { | ||||
|             item.APPROVAL_SIGNATURE = item.APPROVAL_SIGNATURE.split(';') | ||||
|           } | ||||
|           if (item.APPROVAL_SIGNATURE_TIME !== undefined && item.APPROVAL_SIGNATURE_TIME.trim() !== '') { | ||||
|             this.acceptConfessList.push(item) | ||||
|           } | ||||
|         }) | ||||
|         for (let i = 0; i < data.measuresList.length; i++) { | ||||
|           // 将字符串转成数组 | ||||
|           const PROTECTIVE_MEASURES = data.measuresList[i].PROTECTIVE_MEASURES.split('') | ||||
|  |  | |||
|  | @ -0,0 +1,257 @@ | |||
| <template> | ||||
|   <div class="app-container"> | ||||
|     <el-form :model="ruleForm" :rules="rules" label-width="130px"> | ||||
|       <el-row> | ||||
|         <el-col :span="6"> | ||||
|           <el-form-item label="人员名称" prop="name" class="input-width"> | ||||
|             <el-input v-model="ruleForm.name" placeholder="请输入人员名称"/> | ||||
|           </el-form-item> | ||||
|         </el-col> | ||||
|         <el-col :span="6"> | ||||
|           <el-form-item label="身份证号" prop="cardId"> | ||||
|             <el-input v-model="ruleForm.cardId" placeholder="请输入身份证号"/> | ||||
|           </el-form-item> | ||||
|         </el-col> | ||||
|         <el-col :span="6"> | ||||
|           <el-form-item label-width="10px"> | ||||
|             <el-button v-waves class="filter-item" type="primary" icon="el-icon-search" @click="getQuery"> | ||||
|               搜索 | ||||
|             </el-button> | ||||
|             <el-button v-waves class="filter-item" type="success" icon="el-icon-refresh" @click="goKeyReset"> | ||||
|               重置 | ||||
|             </el-button> | ||||
|           </el-form-item> | ||||
|         </el-col> | ||||
|       </el-row> | ||||
| 
 | ||||
|     </el-form> | ||||
|     <el-table | ||||
|       ref="multipleTable" | ||||
|       :data="varList" | ||||
|       :header-cell-style="{'font-weight': 'bold','color': '#000'}" | ||||
|       tooltip-effect="dark" | ||||
|       border | ||||
|       fit | ||||
|       highlight-current-row> | ||||
|       <el-table-column :selectable="handleSelectWithDifferentStatus" type="selection" width="55" align="center"/> | ||||
|       <el-table-column type="index" label="序号" width="50" align="center"/> | ||||
|       <el-table-column prop="username" label="用户名" align="center"/> | ||||
|       <el-table-column prop="cardId" label="身份证号" align="center"/> | ||||
|       <el-table-column prop="name" label="人员名称" align="center"/> | ||||
|       <el-table-column prop="corpName" label="企业名称" align="center"/> | ||||
|       <el-table-column label="操作" align="center" width="250"> | ||||
|         <template slot-scope="{row}"> | ||||
|           <el-button type="primary" icon="el-icon-s-claim" size="mini" @click="dosubmit([row])">入住</el-button> | ||||
|         </template> | ||||
|       </el-table-column> | ||||
|     </el-table> | ||||
| 
 | ||||
|     <el-dialog | ||||
|       :visible.sync="dialogVisible" | ||||
|       title="请选择入住企业" | ||||
|       width="30%"> | ||||
|       <el-select | ||||
|         v-model="corpinfoId" | ||||
|         :remote-method="remoteMethod" | ||||
|         :loading="loading" | ||||
|         filterable | ||||
|         remote | ||||
|         reserve-keyword | ||||
|         placeholder="请选择入住企业"> | ||||
|         <el-option | ||||
|           v-for="item in options" | ||||
|           :key="item.value" | ||||
|           :label="item.label" | ||||
|           :value="item.value"/> | ||||
|       </el-select> | ||||
|       <span slot="footer" class="dialog-footer"> | ||||
|         <el-button @click="dialogVisible = false">取 消</el-button> | ||||
|         <el-button type="primary" @click="doCheckIn">确 定</el-button> | ||||
|       </span> | ||||
|     </el-dialog> | ||||
| 
 | ||||
|     <div class="page-btn-group"> | ||||
|       <div/> | ||||
|       <pagination :total="total" :page.sync="listQuery.page" :limit.sync="listQuery.limit" @pagination="getList"/> | ||||
|     </div> | ||||
| 
 | ||||
|   </div> | ||||
| </template> | ||||
| 
 | ||||
| <script> | ||||
| import Pagination from '@/components/Pagination' // 通过 el-pagination二次打包 | ||||
| import { requestFN } from '@/utils/request' | ||||
| import waves from '@/directive/waves' // waves directive | ||||
| 
 | ||||
| export default { | ||||
|   components: { Pagination }, | ||||
|   directives: { waves }, | ||||
|   data() { | ||||
|     return { | ||||
|       rules: { | ||||
|         name: [{ required: true, message: '姓名不能为空', trigger: 'blur' }], | ||||
|         cardId: [{ required: true, message: '身份证号不能为空', trigger: 'blur' }] | ||||
|       }, | ||||
|       ruleForm: { name: '', cardId: '' }, | ||||
|       config: config, | ||||
|       listQuery: { | ||||
|         page: 1, | ||||
|         limit: 10 | ||||
|       }, | ||||
|       total: 0, | ||||
|       varList: [], | ||||
|       dialogVisible: false, | ||||
|       rowuser: {}, | ||||
|       corpinfoId: '', | ||||
|       loading: false, | ||||
|       options: [] | ||||
| 
 | ||||
|     } | ||||
|   }, | ||||
|   created() { | ||||
|     // this.getDict() | ||||
|     // this.getList() | ||||
|     this.remoteMethod('河北') | ||||
|   }, | ||||
|   methods: { | ||||
|     handleSelectWithDifferentStatus(row, rowIndex) { | ||||
|       return true | ||||
|     }, | ||||
|     getQuery() { | ||||
|       if (this.ruleForm.name === '') { | ||||
|         this.$message.error('请填写人员名称') | ||||
|         return false | ||||
|       } | ||||
|       if (this.ruleForm.cardId === '') { | ||||
|         this.$message.error('请填写身份证号') | ||||
|         return false | ||||
|       } | ||||
|       if (this.$refs.multipleTable) { | ||||
|         this.$refs.multipleTable.clearSelection() | ||||
|       } | ||||
|       this.listQuery = { | ||||
|         page: 1, | ||||
|         limit: 10 | ||||
|       } | ||||
|       this.getList() | ||||
|     }, | ||||
|     goKeyReset() { | ||||
|       this.ruleForm.cardId = '' | ||||
|       this.ruleForm.name = '' | ||||
|       this.varList = [] | ||||
|     }, | ||||
|     getList() { | ||||
|       this.listLoading = true | ||||
|       requestFN( | ||||
|         '/xgf/coerce/getUserListByIdCardAndName?showCount=' + this.listQuery.limit + '¤tPage=' + this.listQuery.page, | ||||
|         { | ||||
|           cardId: this.ruleForm.cardId, | ||||
|           name: this.ruleForm.name, | ||||
|           UN_EMPLOY_FLAG: '0' | ||||
|         } | ||||
|       ).then((data) => { | ||||
|         this.listLoading = false | ||||
|         this.varList = data.varList | ||||
|         if (this.varList.length === 0) { | ||||
|           this.$message.error('没有相关人员信息') | ||||
|         } | ||||
|         this.total = data.page.totalResult | ||||
|       }) | ||||
|         .catch((e) => { | ||||
|           this.listLoading = false | ||||
|         }) | ||||
|     }, | ||||
|     remoteMethod(query) { | ||||
|       if (query !== '') { | ||||
|         // this.loading = true | ||||
|         /* setTimeout(() => { | ||||
|           this.loading = false | ||||
|           this.options = this.list.filter(item => { | ||||
|             return item.label.toLowerCase() | ||||
|               .indexOf(query.toLowerCase()) > -1 | ||||
|           }) | ||||
|         }, 200) */ | ||||
| 
 | ||||
|         requestFN( | ||||
|           '/xgf/coerce/findModuleList', | ||||
|           { | ||||
|             keyword: query | ||||
|           } | ||||
|         ).then((data) => { | ||||
|           // this.loading = false | ||||
|           this.options = [] | ||||
|           data.varList.forEach(v => { | ||||
|             const obj = { | ||||
|               value: v.CORPINFO_ID, | ||||
|               label: v.RELEVANT_UNIT_NAME | ||||
|             } | ||||
|             this.options.push(obj) | ||||
|           }) | ||||
|         }) | ||||
|           .catch((e) => { | ||||
|           //  this.loading = false | ||||
|           }) | ||||
|       } else { | ||||
|         this.options = [] | ||||
|         this.remoteMethod('河北') | ||||
|       } | ||||
|     }, | ||||
|     dosubmit(row) { | ||||
|       this.rowuser = { | ||||
|         name: row[0].name, | ||||
|         userId: row[0].userId | ||||
|       } | ||||
|       /*  if (this.corpinfoId === '') { | ||||
|         this.dialogVisible = true | ||||
|       } else { | ||||
|         this.doCheckIn() | ||||
|       } */ | ||||
|       this.dialogVisible = true | ||||
|     }, | ||||
| 
 | ||||
|     doCheckIn() { | ||||
|       if (this.corpinfoId === '') { | ||||
|         this.$message({ | ||||
|           message: '请选择入住企业', | ||||
|           type: 'warning' | ||||
|         }) | ||||
|         return | ||||
|       } | ||||
|       this.dialogVisible = false | ||||
|       this.$confirm('确定要将  ' + this.rowuser.name + '  拉入企业吗?', { | ||||
|         confirmButtonText: '确定', | ||||
|         cancelButtonText: '取消', | ||||
|         type: 'warning' | ||||
|       }).then(() => { | ||||
|         this.listLoading = true | ||||
|         requestFN( | ||||
|           '/xgf/coerce/doCoerceCheckIn', | ||||
|           { | ||||
|             userId: this.rowuser.userId, | ||||
|             corpinfoId: this.corpinfoId | ||||
|           } | ||||
|         ).then((e) => { | ||||
|           console.log(e) | ||||
|           if (e.msg === '1') { | ||||
|             this.$message({ | ||||
|               message: '当前人员已经在企业中', | ||||
|               type: 'warning' | ||||
|             }) | ||||
|           } else { | ||||
|             this.$message({ | ||||
|               message: '拉入成功', | ||||
|               type: 'success' | ||||
|             }) | ||||
|             this.getQuery() | ||||
|           } | ||||
|           this.listLoading = false | ||||
|         }).catch((e) => { | ||||
|           this.listLoading = false | ||||
|         }) | ||||
|       }).catch(() => {}) | ||||
|     } | ||||
| 
 | ||||
|   } | ||||
| } | ||||
| </script> | ||||
| 
 | ||||
|  | @ -0,0 +1,21 @@ | |||
| <template> | ||||
|   <component :is="activeName" /> | ||||
| </template> | ||||
| 
 | ||||
| <script> | ||||
| import List from './components/list' | ||||
| export default { | ||||
|   components: { | ||||
|     List: List | ||||
|   }, | ||||
|   data() { | ||||
|     return { | ||||
|       activeName: 'List', | ||||
|       SUPERVISE_CORPINFO_ID: '' | ||||
|     } | ||||
|   } | ||||
| } | ||||
| </script> | ||||
| 
 | ||||
| <style scoped> | ||||
| </style> | ||||
|  | @ -0,0 +1,102 @@ | |||
| <template> | ||||
|   <div class="app-container"> | ||||
|     <el-form label-width="130px"> | ||||
|       <el-row> | ||||
|         <el-col :span="6"> | ||||
|           <el-form-item label="用户名"> | ||||
|             <el-input v-model="NAME" placeholder="请输入用户名"/> | ||||
|           </el-form-item> | ||||
|         </el-col> | ||||
|         <el-col :span="6"> | ||||
|           <el-form-item label-width="10px"> | ||||
|             <el-button v-waves class="filter-item" type="primary" icon="el-icon-search" @click="getQuery"> | ||||
|               搜索 | ||||
|             </el-button> | ||||
|             <el-button v-waves class="filter-item" type="success" icon="el-icon-refresh" @click="goKeyReset"> | ||||
|               重置 | ||||
|             </el-button> | ||||
|           </el-form-item> | ||||
|         </el-col> | ||||
|       </el-row> | ||||
|     </el-form> | ||||
|     <el-table | ||||
|       ref="multipleTable" | ||||
|       :data="varList" | ||||
|       :header-cell-style="{'font-weight': 'bold','color': '#000'}" | ||||
|       tooltip-effect="dark" | ||||
|       border | ||||
|       fit | ||||
|       highlight-current-row> | ||||
|       <el-table-column type="index" label="序号" width="50" align="center"/> | ||||
|       <el-table-column prop="NAME" label="姓名" align="center"/> | ||||
|       <el-table-column prop="RELEVANT_UNIT_NAME_HIS" label="原企业" align="center"/> | ||||
|       <el-table-column prop="RELEVANT_UNIT_NAME_NOW" label="入住企业" align="center"/> | ||||
|       <el-table-column prop="OPERNAME" label="操作人" align="center"/> | ||||
| 
 | ||||
|       <el-table-column prop="CREATETIME" label="入住时间" align="center"/> | ||||
|     </el-table> | ||||
|     <div class="page-btn-group"> | ||||
|       <div/> | ||||
|       <pagination :total="total" :page.sync="listQuery.page" :limit.sync="listQuery.limit" @pagination="getList"/> | ||||
|     </div> | ||||
|   </div> | ||||
| </template> | ||||
| 
 | ||||
| <script> | ||||
| import Pagination from '@/components/Pagination' // 通过 el-pagination二次打包 | ||||
| import { requestFN } from '@/utils/request' | ||||
| import waves from '@/directive/waves' // waves directive | ||||
| 
 | ||||
| export default { | ||||
|   components: { Pagination }, | ||||
|   directives: { waves }, | ||||
|   data() { | ||||
|     return { | ||||
|       config: config, | ||||
|       listQuery: { | ||||
|         page: 1, | ||||
|         limit: 10 | ||||
|       }, | ||||
|       total: 0, | ||||
|       varList: [], | ||||
|       NAME: '' | ||||
|     } | ||||
|   }, | ||||
|   created() { | ||||
|     this.getList() | ||||
|   }, | ||||
|   methods: { | ||||
|     getQuery() { | ||||
|       if (this.$refs.multipleTable) { | ||||
|         this.$refs.multipleTable.clearSelection() | ||||
|       } | ||||
|       this.listQuery = { | ||||
|         page: 1, | ||||
|         limit: 10 | ||||
|       } | ||||
|       this.getList() | ||||
|     }, | ||||
|     goKeyReset() { | ||||
|       this.NAME = '' | ||||
|       this.getQuery() | ||||
|     }, | ||||
|     getList() { | ||||
|       this.listLoading = true | ||||
|       requestFN( | ||||
|         '/xgf/coerce/getCoerceIntakeLoglistPage?showCount=' + this.listQuery.limit + '¤tPage=' + this.listQuery.page, | ||||
|         { | ||||
|           NAME: this.NAME | ||||
|         } | ||||
|       ).then((data) => { | ||||
|         this.listLoading = false | ||||
|         this.varList = data.varList | ||||
|         this.total = data.page.totalResult | ||||
|       }) | ||||
|         .catch((e) => { | ||||
|           this.listLoading = false | ||||
|         }) | ||||
|     } | ||||
|   } | ||||
| } | ||||
| </script> | ||||
| 
 | ||||
|  | @ -0,0 +1,21 @@ | |||
| <template> | ||||
|   <component :is="activeName" /> | ||||
| </template> | ||||
| 
 | ||||
| <script> | ||||
| import List from './components/list' | ||||
| export default { | ||||
|   components: { | ||||
|     List: List | ||||
|   }, | ||||
|   data() { | ||||
|     return { | ||||
|       activeName: 'List', | ||||
|       SUPERVISE_CORPINFO_ID: '' | ||||
|     } | ||||
|   } | ||||
| } | ||||
| </script> | ||||
| 
 | ||||
| <style scoped> | ||||
| </style> | ||||
|  | @ -1,6 +1,13 @@ | |||
| <template> | ||||
|   <div> | ||||
|     <el-dialog v-loading = "loading" :visible.sync="visible" :append-to-body="appendToBody" :before-close="beforeClose" title="审批" width="1200px" destroy-on-close> | ||||
|     <el-dialog | ||||
|       v-loading="loading" | ||||
|       :visible.sync="visible" | ||||
|       :append-to-body="appendToBody" | ||||
|       :before-close="beforeClose" | ||||
|       title="审批" | ||||
|       width="1200px" | ||||
|       destroy-on-close> | ||||
|       <el-form ref="form" :model="form" :rules="rules" label-width="200px" label-position="right" type="flex"> | ||||
|         <el-row :gutter="12"> | ||||
|           <el-col :span="12"> | ||||
|  | @ -33,16 +40,86 @@ | |||
|               <el-input v-model="form.OPINION" :rows="2" type="textarea" placeholder="填写审批意见"/> | ||||
|             </el-form-item> | ||||
|           </el-col> | ||||
|           <el-col v-if="form.STATUS === '0' && showStepFlag" :span="24"> | ||||
|             <el-form-item v-if="form.STATUS === '0'" prop="BACK_NAME" label="打回至:"> | ||||
|               <div>{{ form.BACK_NAME }}</div> | ||||
|             </el-form-item> | ||||
|           </el-col> | ||||
|           <el-col v-if="form.STATUS === '0' && showStepFlag" :span="24"> | ||||
|             <el-steps :space="200" :active="+step" finish-status="success"> | ||||
|               <el-step> | ||||
|                 <template slot="description"> | ||||
|                   <el-card | ||||
|                     class="box-card" | ||||
|                     style="margin-top: 10px" | ||||
|                     @click.native="backPoint('-1',info.BELONG_TO_CORP_NAME)"> | ||||
|                     <div icon="el-icon-aim"/> | ||||
|                     <div slot="header" class="clearfix"> | ||||
|                       <span>相关方端</span> | ||||
|                     </div> | ||||
|                     <div> | ||||
|                       企业名称:{{ info.BELONG_TO_CORP_NAME }} | ||||
|                     </div> | ||||
|                   </el-card> | ||||
|                 </template> | ||||
|               </el-step> | ||||
|               <el-step v-for="item in list" :key="item.INDEX" :value="item.INDEX"> | ||||
|                 <template slot="description"> | ||||
|                   <el-card | ||||
|                     class="box-card" | ||||
|                     style="margin-top: 10px" | ||||
|                     @click.native="backPoint(item.INDEX, item.APPOINT_USER_NAME)"> | ||||
|                     <div slot="header" class="clearfix"> | ||||
|                       <span>审批节点</span> | ||||
|                     </div> | ||||
|                     <div> | ||||
|                       <el-row> | ||||
|                         <el-col> | ||||
|                           审批人:{{ item.APPOINT_USER_NAME }} | ||||
|                         </el-col> | ||||
|                         <el-col v-if="item.INDEX !== step"> | ||||
|                           审批人公司:{{ item.APPOINT_CORP_NAME }} | ||||
|                         </el-col> | ||||
|                         <el-col> | ||||
|                           审批人部门:{{ item.APPOINT_DEPARTMENT_NAME }} | ||||
|                         </el-col> | ||||
|                         <el-col v-if="item.INDEX !== step"> | ||||
|                           审批状态:{{ | ||||
|                             item.APPOINT_STATUS === '1' ? '同意' : item.APPOINT_STATUS === '0' ? '不同意' : '' | ||||
|                           }} | ||||
|                         </el-col> | ||||
|                         <el-col v-if="item.INDEX !== step"> | ||||
|                           审批时间:{{ item.APPOINT_TIME }} | ||||
|                         </el-col> | ||||
|                         <el-col v-if="item.APPOINT_OPINION && item.INDEX !== step"> | ||||
|                           审批意见:{{ item.APPOINT_OPINION }} | ||||
|                         </el-col> | ||||
|                       </el-row> | ||||
|                     </div> | ||||
|                   </el-card> | ||||
|                 </template> | ||||
|               </el-step> | ||||
|             </el-steps> | ||||
|           </el-col> | ||||
|           <el-col v-if="form.STATUS === '1' && !form.STEP " :span="12"> | ||||
|             <el-form-item v-if="form.STATUS === '1'" prop="APPOINT_USER_ID" label="指定监管部门审批人:"> | ||||
|               <el-select v-model="form.user" style="width: 300px" placeholder="请选择" @change="chooseUser"> | ||||
|                 <el-option v-for="item in peopleList" :key="item.USER_ID" :value="JSON.stringify(item)" :label="item.NAME"/> | ||||
|                 <el-option | ||||
|                   v-for="item in peopleList" | ||||
|                   :key="item.USER_ID" | ||||
|                   :value="JSON.stringify(item)" | ||||
|                   :label="item.NAME"/> | ||||
|               </el-select> | ||||
|             </el-form-item> | ||||
|           </el-col> | ||||
|           <el-col v-if="form.STATUS === '1' && !form.STEP " :span="12"> | ||||
|             <el-form-item v-if="form.STATUS === '1'" prop="LIMIT_END_TIME" label="指定培训有效截至时间:"> | ||||
|               <el-date-picker v-model="form.LIMIT_END_TIME" value-format="yyyy-MM-dd" type="date" placeholder="选择日期" style="width:300px "/> | ||||
|               <el-date-picker | ||||
|                 v-model="form.LIMIT_END_TIME" | ||||
|                 value-format="yyyy-MM-dd" | ||||
|                 type="date" | ||||
|                 placeholder="选择日期" | ||||
|                 style="width:300px "/> | ||||
|             </el-form-item> | ||||
|           </el-col> | ||||
|           <el-col v-if="form.STATUS === '1' && form.TYPE === '2'" :span="12"> | ||||
|  | @ -103,7 +180,9 @@ export default { | |||
|         list: [], | ||||
|         isShow: true, | ||||
|         info: {}, | ||||
|         TYPE: null | ||||
|         TYPE: null, | ||||
|         BACK_NAME: '', | ||||
|         BACK_STEP: '' | ||||
|       }, | ||||
|       rules: { | ||||
|         STATUS: [ | ||||
|  | @ -120,6 +199,9 @@ export default { | |||
|         ], | ||||
|         LIMIT_END_TIME: [ | ||||
|           { required: true, message: '请选择指定培训有效截至时间', trigger: 'change' } | ||||
|         ], | ||||
|         BACK_NAME: [ | ||||
|           { required: true, message: '请填选择回节点', trigger: 'change' } | ||||
|         ] | ||||
|       }, | ||||
|       heirloom: {}, | ||||
|  | @ -133,7 +215,15 @@ export default { | |||
|       }, | ||||
| 
 | ||||
|       departmentTree: [], | ||||
|       peopleList: [] | ||||
|       peopleList: [], | ||||
|       info: {}, | ||||
|       list: [ | ||||
|         { | ||||
|           INDEX: '-1' | ||||
|         } | ||||
|       ], | ||||
|       step: 0, | ||||
|       showStepFlag: false | ||||
|     } | ||||
|   }, | ||||
|   methods: { | ||||
|  | @ -142,6 +232,14 @@ export default { | |||
|       this.visible = true | ||||
|       this.heirloom = JSON.stringify(e) | ||||
|       this.form.list = JSON.stringify(e) | ||||
|       const list = JSON.parse(this.heirloom) | ||||
|       if (list.length === 1) { | ||||
|         this.info = JSON.parse(this.heirloom)[0] | ||||
|         this.form.BACK_NAME = this.info.BELONG_TO_CORP_NAME | ||||
|         this.form.BACK_STEP = '-1' | ||||
|         this.showStepFlag = true | ||||
|       } | ||||
| 
 | ||||
|       // 确定是不是最后一步,是:ture,否:false | ||||
|       this.form.STEP = (e[0].FLOWS_STEP === 2) || (e[0].FLOWS_STEP === 1 && e[0].FLOWS_TYPE === '2') | ||||
|       this.form.TYEP = e[0].FLOWS_TYPE | ||||
|  | @ -157,10 +255,15 @@ export default { | |||
|             this.loading = true | ||||
|             requestFN('/xgf/user/approveMax', this.form) | ||||
|               .then((data) => { | ||||
|                 this.$message.success('推送成功') | ||||
|                 this.visible = false | ||||
|                 this.$emit('refresh', '') | ||||
|                 this.handleClose() | ||||
|                 if (data.code === '0') { | ||||
|                   this.$message.success('推送成功') | ||||
|                   this.visible = false | ||||
|                   this.$emit('refresh', '') | ||||
|                   this.handleClose() | ||||
|                 } else { | ||||
|                   this.$message.error(data.errorMessage) | ||||
|                 } | ||||
| 
 | ||||
|                 this.loading = false | ||||
|               }) | ||||
|               .catch((e) => { | ||||
|  | @ -250,6 +353,7 @@ export default { | |||
|         tm: new Date().getTime() | ||||
|       } | ||||
|       this.visible = false | ||||
|       this.showStepFlag = false | ||||
|     }, | ||||
|     beforeClose() { | ||||
|       this.visible = false | ||||
|  | @ -272,6 +376,36 @@ export default { | |||
|       this.form.APPOINT_USER_NAME = '' | ||||
|       this.form.OPINION = '' | ||||
|       this.form.user = '' | ||||
|       if (this.form.STATUS === '0') { | ||||
|         this.getInfo() | ||||
|       } | ||||
|     }, | ||||
|     getInfo() { | ||||
|       const info = JSON.parse(this.heirloom)[0] | ||||
|       requestFN( | ||||
|         '/xgf/user/getApproveInfo', { XGF_USER_ID: info.XGF_USER_ID } | ||||
|       ).then((data) => { | ||||
|         this.list = data.flow.info | ||||
|         this.step = data.flow.STEP | ||||
|         if (data.flow.endFlag === '1') { | ||||
|           this.title = '审批中' | ||||
|         } | ||||
|         if (data.flow.endFlag === '2') { | ||||
|           this.title = '审批结束' | ||||
|         } | ||||
|         if (data.flow.endFlag === '-2') { | ||||
|           this.title = '审批驳回' | ||||
|         } | ||||
|         this.visible = true | ||||
|         this.loading = false | ||||
|       }).catch((e) => { | ||||
|         console.log(e) | ||||
|       }) | ||||
|     }, | ||||
|     backPoint(num, name) { | ||||
|       this.form.BACK_STEP = num | ||||
|       this.form.BACK_NAME = name | ||||
|       this.$forceUpdate() | ||||
|     } | ||||
|   } | ||||
| } | ||||
|  |  | |||
|  | @ -1,7 +1,7 @@ | |||
| // eslint-disable-next-line no-unused-vars
 | ||||
| const config = { | ||||
|   weburl: 'http://192.168.0.45:8082/', // 前台地址
 | ||||
|   httpurl: 'http://192.168.151.43:8092/', // 后台地址
 | ||||
|   weburl: 'http://192.168.0.49:8092/', // 前台地址
 | ||||
|   httpurl: 'http://192.168.0.49:8092/', // 后台地址
 | ||||
|   qyurl: 'http://192.168.0.45:8080/', // 企业前台
 | ||||
|   fileUrl: 'http://192.168.192.201:8991/file/', // 附件服务器地址
 | ||||
|   publicKey: 'MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC2zCyUYSD0pNrbtaYdvGfHfWoRV+fo/2N9O2PLLz/jZvMkigkq4eAq4JO+Ek0wDHI9WxP6iTSLYCHhIOs9CQTPvyldJFm8riZtQZlBTD8Plkb3rjrgwTqbBi3w3+HKYdkSvGFXJIdSOPbpXnj5BzN8vlVaybs24R/vpUzG9178lwIDAQAB', | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue