src/components/do/b3-personnel-evaluation/employee-mutual-evaluation.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/components/do/b3-personnel-evaluation/evaluation.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/components/do/b3-personnel-evaluation/leader-rate.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/components/do/b3-personnel-evaluation/supervisor-rate.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/components/view/b3-personnel-evaluation.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/components/view/role-manage.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/components/do/b3-personnel-evaluation/employee-mutual-evaluation.vue
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,205 @@ <template> <div class="table-item"> <p style="text-align: center;margin-bottom: 10px;">{{ laboratory.label }} {{ Number(month.split('-')[1]) }} æä»½åå·¥äºè¯æå表</p> <el-table :data="tableData" style="width: 100%" height="calc(100% - 20px)"> <el-table-column type="index" label="åºå·" width="55"> </el-table-column> <el-table-column label="å§å"> </el-table-column> <el-table-column label="æ£æµåæ¶æ§"> <el-table-column label="忶宿"> <el-table-column label="20" width="90px"> <template slot-scope="scope"> <el-radio :label="20" v-model="scope.row.radio0">{{ '' }}</el-radio> </template> </el-table-column> </el-table-column> <el-table-column label="å¬ä¿å®æ"> <el-table-column label="15" width="90px"> <template slot-scope="scope"> <el-radio :label="15" v-model="scope.row.radio0">{{ '' }}</el-radio> </template> </el-table-column> </el-table-column> <el-table-column label="å»¶æè¾é¿"> <el-table-column label="10" width="90px"> <template slot-scope="scope"> <el-radio :label="10" v-model="scope.row.radio0">{{ '' }}</el-radio> </template> </el-table-column> </el-table-column> </el-table-column> <el-table-column label="æ£æµåç¡®æ§"> <el-table-column label="å ¨ææ é"> <el-table-column label="20" width="90px"> <template slot-scope="scope"> <el-radio :label="20" v-model="scope.row.radio1">{{ '' }}</el-radio> </template> </el-table-column> </el-table-column> <el-table-column label="å¶æå¤±è¯¯"> <el-table-column label="15" width="90px"> <template slot-scope="scope"> <el-radio :label="15" v-model="scope.row.radio1">{{ '' }}</el-radio> </template> </el-table-column> </el-table-column> <el-table-column label="é¢ç¹é误"> <el-table-column label="10" width="90px"> <template slot-scope="scope"> <el-radio :label="10" v-model="scope.row.radio1">{{ '' }}</el-radio> </template> </el-table-column> </el-table-column> </el-table-column> <el-table-column label="æä½æè½"> <el-table-column label="æä½çç»"> <el-table-column label="20" width="90px"> <template slot-scope="scope"> <el-radio :label="20" v-model="scope.row.radio2">{{ '' }}</el-radio> </template> </el-table-column> </el-table-column> <el-table-column label="æä½åºæ¬çç»"> <el-table-column label="15" width="120px"> <template slot-scope="scope"> <el-radio :label="15" v-model="scope.row.radio2">{{ '' }}</el-radio> </template> </el-table-column> </el-table-column> <el-table-column label="éè¦æå¯¼"> <el-table-column label="12" width="90px"> <template slot-scope="scope"> <el-radio :label="12" v-model="scope.row.radio2">{{ '' }}</el-radio> </template> </el-table-column> </el-table-column> </el-table-column> <el-table-column label="设å¤ç»´æ¤"> <el-table-column label="èªè§ç»´æ¤"> <el-table-column label="10" width="90px""> <template slot-scope="scope"> <el-radio :label="10" v-model="scope.row.radio3">{{ '' }}</el-radio> </template> </el-table-column> </el-table-column> <el-table-column label="è½ç»´æ¤"> <el-table-column label="5" width="80px""> <template slot-scope="scope"> <el-radio :label="5" v-model="scope.row.radio3">{{ '' }}</el-radio> </template> </el-table-column> </el-table-column> <el-table-column label="æ æè¯"> <el-table-column label="2" width="80px""> <template slot-scope="scope"> <el-radio :label="2" v-model="scope.row.radio3">{{ '' }}</el-radio> </template> </el-table-column> </el-table-column> </el-table-column> <el-table-column label="éµç« å®çºª"> <el-table-column label="èªè§éµå®" > <el-table-column label="10" width="90px""> <template slot-scope="scope"> <el-radio :label="10" v-model="scope.row.radio4">{{ '' }}</el-radio> </template> </el-table-column> </el-table-column> <el-table-column label="被å¨éµå®"> <el-table-column label="7" width="90px""> <template slot-scope="scope"> <el-radio :label="7" v-model="scope.row.radio4">{{ '' }}</el-radio> </template> </el-table-column> </el-table-column> <el-table-column label="ç»å¸¸è¿çºª"> <el-table-column label="5" width="90px""> <template slot-scope="scope"> <el-radio :label="5" v-model="scope.row.radio4">{{ '' }}</el-radio> </template> </el-table-column> </el-table-column> </el-table-column> <el-table-column label="å¢ç»åä½"> <el-table-column label="å¢ç»åä½"> <el-table-column label="10" width="90px""> <template slot-scope="scope"> <el-radio :label="10" v-model="scope.row.radio5">{{ '' }}</el-radio> </template> </el-table-column> </el-table-column> <el-table-column label="åºæ¬èæ´½"> <el-table-column label="8" width="90px""> <template slot-scope="scope"> <el-radio :label="8" v-model="scope.row.radio5">{{ '' }}</el-radio> </template> </el-table-column> </el-table-column> </el-table-column> <el-table-column label="5S-3å®"> <el-table-column label="å å¹²åºæ´æ´"> <el-table-column label="10" width="110px""> <template slot-scope="scope"> <el-radio :label="10" v-model="scope.row.radio6">{{ '' }}</el-radio> </template> </el-table-column> </el-table-column> <el-table-column label="åå¨ä¸æ¸ æ´ç¹"> <el-table-column label="7" width="130px""> <template slot-scope="scope"> <el-radio :label="7" v-model="scope.row.radio6">{{ '' }}</el-radio> </template> </el-table-column> </el-table-column> </el-table-column> <el-table-column label="å¾å"> <el-table-column label="100" width="70px""> </el-table-column> </el-table-column> </el-table> </div> </template> <script> export default { props:{ month:String, laboratory:Object }, data(){ return{ tableData:[ { radio0:0, radio1:0, radio2:0, radio3:0, radio4:0, radio5:0, radio6:0, } ], radio:20 } } } </script> <style scoped> .table-item{ width: 100%; height: 100%; } >>>.el-table--border th.el-table__cell, .el-table__fixed-right-patch{ border-color: rgb(225, 223, 223); } >>>.el-table .cell, .el-table--border .el-table__cell .cell{ text-align: center; } </style> src/components/do/b3-personnel-evaluation/evaluation.vue
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,50 @@ <template> <div class="table-item"> <ValueTable ref="ValueTable" :url="$api.deviceScope.selectDeviceParameter" :componentData="componentData" :key="upIndex" /> </div> </template> <script> import ValueTable from '../../tool/value-table.vue' export default { components: { ValueTable }, props:{ month:String, laboratory:Object }, data(){ return{ componentData: { entity: { deviceName: null, orderBy: { field: 'id', order: 'desc' } }, isPage:false, isIndex: true, showSelect: false, select: false, do: [], tagField: {}, linkEvent: {}, selectField: {}, requiredAdd: [], requiredUp: [], }, upIndex:0 } } } </script> <style scoped> .table-item{ width: 100%; height: 100%; } </style> src/components/do/b3-personnel-evaluation/leader-rate.vue
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,115 @@ <template> <div class="table-item"> <p style="text-align: center;margin-bottom: 10px;">{{ laboratory.label }} {{ Number(month.split('-')[1]) }} æä»½ç»é¿æå表</p> <el-table :data="tableData" style="width: 100%" height="calc(100% - 20px)"> <el-table-column type="index" label="åºå·" width="55"> </el-table-column> <el-table-column label="å§å" prop="name"> </el-table-column> <el-table-column label="å·¥ä½è´£ä»»å¿"> <el-table-column label="25"> <template slot-scope="scope"> <el-input-number size="small" v-model="scope.row.num0" @change="handleChange" :min="0" :max="25"></el-input-number> </template> </el-table-column> </el-table-column> <el-table-column label="æä»åå·¥"> <el-table-column label="25"> <template slot-scope="scope"> <el-input-number size="small" v-model="scope.row.num1" @change="handleChange" :min="0" :max="25"></el-input-number> </template> </el-table-column> </el-table-column> <el-table-column label="ç§¯ææ§"> <el-table-column label="20"> <template slot-scope="scope"> <el-input-number size="small" v-model="scope.row.num2" @change="handleChange" :min="0" :max="20"></el-input-number> </template> </el-table-column> </el-table-column> <el-table-column label="å¢ç»åäº"> <el-table-column label="10"> <template slot-scope="scope"> <el-input-number size="small" v-model="scope.row.num3" @change="handleChange" :min="0" :max="10"></el-input-number> </template> </el-table-column> </el-table-column> <el-table-column label="è¯éªåæ¶æ§"> <el-table-column label="10"> <template slot-scope="scope"> <el-input-number size="small" v-model="scope.row.num4" @change="handleChange" :min="0" :max="10"></el-input-number> </template> </el-table-column> </el-table-column> <el-table-column label="ç»æåç¡®æ§"> <el-table-column label="10"> <template slot-scope="scope"> <el-input-number size="small" v-model="scope.row.num5" @change="handleChange" :min="0" :max="10"></el-input-number> </template> </el-table-column> </el-table-column> <el-table-column label="å¾å"> </el-table-column> </el-table> </div> </template> <script> export default { props:{ month:String, laboratory:Object }, data () { return{ tableData:[ { num0:null, num1:null, num2:null, num3:null, num4:null, num5:null, num6:null, } ] } }, methods:{ handleChange(){} } } </script> <style scoped> .table-item{ width: 100%; height: 100%; } >>>.el-table--border th.el-table__cell, .el-table__fixed-right-patch{ border-color: rgb(225, 223, 223); } >>>.el-table .cell, .el-table--border .el-table__cell .cell{ text-align: center; } .el-input-number{ width: 110px; } </style> src/components/do/b3-personnel-evaluation/supervisor-rate.vue
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,124 @@ <template> <div class="table-item"> <p style="text-align: center;margin-bottom: 10px;">{{ laboratory.label }} {{ Number(month.split('-')[1]) }} æä»½ä¸»ç®¡æå表</p> <el-table :data="tableData" style="width: 100%" height="calc(100% - 20px)"> <el-table-column type="index" label="åºå·" width="55"> </el-table-column> <el-table-column label="å§å" prop="name"> </el-table-column> <el-table-column label="æè½æ°´å¹³"> <el-table-column label="20"> <template slot-scope="scope"> <el-input-number size="small" v-model="scope.row.num0" @change="handleChange" :min="0" :max="20"></el-input-number> </template> </el-table-column> </el-table-column> <el-table-column label="æä»åå·¥"> <el-table-column label="20"> <template slot-scope="scope"> <el-input-number size="small" v-model="scope.row.num1" @change="handleChange" :min="0" :max="20"></el-input-number> </template> </el-table-column> </el-table-column> <el-table-column label="ç§¯ææ§"> <el-table-column label="20"> <template slot-scope="scope"> <el-input-number size="small" v-model="scope.row.num2" @change="handleChange" :min="0" :max="20"></el-input-number> </template> </el-table-column> </el-table-column> <el-table-column label="5S-3å®"> <el-table-column label="10"> <template slot-scope="scope"> <el-input-number size="small" v-model="scope.row.num3" @change="handleChange" :min="0" :max="10"></el-input-number> </template> </el-table-column> </el-table-column> <el-table-column label="è§ç« å¶åº¦"> <el-table-column label="10"> <template slot-scope="scope"> <el-input-number size="small" v-model="scope.row.num4" @change="handleChange" :min="0" :max="10"></el-input-number> </template> </el-table-column> </el-table-column> <el-table-column label="å¢ç»åä½"> <el-table-column label="10"> <template slot-scope="scope"> <el-input-number size="small" v-model="scope.row.num5" @change="handleChange" :min="0" :max="10"></el-input-number> </template> </el-table-column> </el-table-column> <el-table-column label="ææ¡ç§¯å"> <el-table-column label="10"> <template slot-scope="scope"> <el-input-number size="small" v-model="scope.row.num6" @change="handleChange" :min="0" :max="10"></el-input-number> </template> </el-table-column> </el-table-column> <el-table-column label="å¾å"> </el-table-column> </el-table> </div> </template> <script> export default { props:{ month:String, laboratory:Object }, data () { return{ tableData:[ { num0:null, num1:null, num2:null, num3:null, num4:null, num5:null, num6:null, } ] } }, methods:{ handleChange(){} } } </script> <style scoped> .table-item{ width: 100%; height: 100%; } >>>.el-table--border th.el-table__cell, .el-table__fixed-right-patch{ border-color: rgb(225, 223, 223); } >>>.el-table .cell, .el-table--border .el-table__cell .cell{ text-align: center; } .el-input-number{ width: 110px; } </style> src/components/view/b3-personnel-evaluation.vue
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,149 @@ <template> <div class="personnel-evaluation"> <!-- <el-row class="title"> <el-col :span="12" style="padding-left: 20px;">人åèè¯ </el-col> </el-row> --> <div class="search"> <div class="search_thing"> <div class="search_label">æä»½ï¼</div> <div class="search_input"> <el-date-picker size="small" v-model="entity.month" type="month" placeholder="éæ©æ" format="yyyy-MM" value-format="yyyy-MM" @change="refreshTable()"> </el-date-picker> </div> </div> <div class="search_thing"> <div class="search_label">å®éªå®¤ï¼</div> <div class="search_input"> <el-select v-model="entity.laboratory" placeholder="å ¨é¨" size="small" @change="refreshTable()"> <el-option v-for="item in laboratoryList" :key="item.value" :label="item.label" :value="item.value"> </el-option> </el-select> </div> </div> <div class="search_thing"> <div class="search_label">人ååç§°ï¼</div> <div class="search_input"><el-input size="small" placeholder="请è¾å ¥" clearable v-model="entity.deviceName" @keyup.enter.native="refreshTable()"></el-input></div> </div> <div class="search_thing" style="padding-left: 30px;"> <el-button size="small" @click="refresh()">é ç½®</el-button> <el-button size="small" type="primary" @click="refreshTable()">æ¥ è¯¢</el-button> </div> </div> <div class="tabs" style="margin-top: 10px;"> <el-radio-group v-model="tabValue" size="small" > <el-radio-button label="evaluation">èè¯</el-radio-button> <el-radio-button label="employeeMutualEvaluation">åå·¥äºè¯</el-radio-button> <el-radio-button label="leaderRate">ç»é¿è¯å</el-radio-button> <el-radio-button label="supervisorRate">主管æå</el-radio-button> </el-radio-group> <el-button type="primary" size="small">导 åº</el-button> </div> <div class="table"> <component :is="tabValue" :month="entity.month" :laboratory="getLaboratory()"></component> </div> </div> </template> <script> import evaluation from '../do/b3-personnel-evaluation/evaluation.vue' import employeeMutualEvaluation from '../do/b3-personnel-evaluation/employee-mutual-evaluation.vue' import leaderRate from '../do/b3-personnel-evaluation/leader-rate.vue' import supervisorRate from '../do/b3-personnel-evaluation/supervisor-rate.vue' export default { components: { evaluation, employeeMutualEvaluation, leaderRate, supervisorRate }, data(){ return{ entity:{ month:new Date().getFullYear()+'-'+(new Date().getMonth() + 1), laboratory:'' }, tabValue:'evaluation', laboratoryList:[] } }, mounted(){ this.obtainItemParameterList() }, methods: { refreshTable(){}, refresh(){}, obtainItemParameterList() { this.$axios.get(this.$api.laboratoryScope.obtainItemParameterList).then(res => { let data = [] res.data.forEach(a => { data.push({ label: a.laboratoryName, value: a.id }) }) this.laboratoryList = data this.entity.laboratory = data[0].value }) }, getLaboratory(){ return this.laboratoryList.find(a=>a.value==this.entity.laboratory) } } } </script> <style scoped> .personnel-evaluation { height: 100%; overflow-y: auto; } .title { height: 60px; line-height: 60px; } .search { background-color: #fff; height: 80px; display: flex; align-items: center; margin-top: 20px; } .search_thing { width: 350px; display: flex; align-items: center; } .search_label { width: 110px; font-size: 14px; text-align: right; } .search_input { width: calc(100% - 110px); } .tabs{ display: flex; align-items: center; justify-content: space-between; } .table { margin-top: 10px; background-color: #fff; width: calc(100% - 40px); height: calc(100% - 60px - 80px - 10px - 42px); padding: 20px; } </style> src/components/view/role-manage.vue
@@ -202,13 +202,15 @@ upRole(row) { this.type = 'ä¿®æ¹' this.addData.roleName = row.name this.addData.category = row.category this.$set(this.addData, 'category', row.category) // this.addData.category = row.category this.selectPowerByRoleId(row.id) }, selectRole(row) { this.type = 'æ¥ç' this.addData.roleName = row.name this.addData.category = row.category this.$set(this.addData, 'category', row.category) // this.addData.category = row.category this.selectPowerByRoleId(row.id) }, openAdd() {