Commit 430a7547adea9f6e293592e55a14cc364651d928
1 parent
8ab6a817
和志哥来个同步
Showing
1 changed file
with
91 additions
and
5 deletions
src/views/user/InterviewSchedule.vue
| @@ -41,6 +41,16 @@ | @@ -41,6 +41,16 @@ | ||
| 41 | </div> | 41 | </div> |
| 42 | 42 | ||
| 43 | </div> | 43 | </div> |
| 44 | + <div > | ||
| 45 | + <el-calendar v-model="query.date"> | ||
| 46 | + <!-- 这里使用的是 2.5 slot 语法,对于新项目请使用 2.6 slot 语法--> | ||
| 47 | + <template slot="dateCell" slot-scope="{date, data}"> | ||
| 48 | + <p :class="data.isSelected ? 'is-selected' : ''" v-html="getContent(data,date)"> | ||
| 49 | + | ||
| 50 | + </p> | ||
| 51 | + </template> | ||
| 52 | + </el-calendar> | ||
| 53 | + </div> | ||
| 44 | <el-table :data="userList" id="QuestionTable" border | 54 | <el-table :data="userList" id="QuestionTable" border |
| 45 | style="width: 100%;border-radius: 5px;box-shadow: 0 0 10px #efefef;margin-top: 10px;" :stripe='true'> | 55 | style="width: 100%;border-radius: 5px;box-shadow: 0 0 10px #efefef;margin-top: 10px;" :stripe='true'> |
| 46 | <el-table-column type="index" prop="date" width="50" align="center"></el-table-column> | 56 | <el-table-column type="index" prop="date" width="50" align="center"></el-table-column> |
| @@ -56,8 +66,8 @@ | @@ -56,8 +66,8 @@ | ||
| 56 | <el-table-column prop="date" label="姓名"> | 66 | <el-table-column prop="date" label="姓名"> |
| 57 | <template slot-scope="scope"> | 67 | <template slot-scope="scope"> |
| 58 | <span>{{ scope.row.fullName }}</span> | 68 | <span>{{ scope.row.fullName }}</span> |
| 59 | - <el-tag v-for="item in scope.row.taglist" size="mini" style="margin-right:5px" | ||
| 60 | - :disable-transitions="false" >{{item}}</el-tag> | 69 | + <el-tag v-for="item in scope.row.taglist" size="mini" style="margin-right:5px" :disable-transitions="false"> |
| 70 | + {{item}}</el-tag> | ||
| 61 | 71 | ||
| 62 | </template> | 72 | </template> |
| 63 | </el-table-column> | 73 | </el-table-column> |
| @@ -149,6 +159,7 @@ | @@ -149,6 +159,7 @@ | ||
| 149 | } | 159 | } |
| 150 | }; | 160 | }; |
| 151 | return { | 161 | return { |
| 162 | + | ||
| 152 | title: '添加管理员', | 163 | title: '添加管理员', |
| 153 | buttonText: '立即创建', | 164 | buttonText: '立即创建', |
| 154 | userList: [], | 165 | userList: [], |
| @@ -173,18 +184,92 @@ | @@ -173,18 +184,92 @@ | ||
| 173 | Password: '', | 184 | Password: '', |
| 174 | checkPass: '', | 185 | checkPass: '', |
| 175 | }, | 186 | }, |
| 187 | + accountlist:[], | ||
| 176 | Count: 0, | 188 | Count: 0, |
| 177 | query: { | 189 | query: { |
| 178 | PageIndex: 1, | 190 | PageIndex: 1, |
| 179 | PageSize: 1000, | 191 | PageSize: 1000, |
| 180 | - | 192 | + date: '', |
| 193 | + month:0, | ||
| 194 | + day:1 | ||
| 181 | }, | 195 | }, |
| 182 | } | 196 | } |
| 183 | }, | 197 | }, |
| 184 | created() { | 198 | created() { |
| 185 | - this.GetUser() | 199 | + this.GetUser(); |
| 200 | + | ||
| 201 | + this.$nextTick(() => { | ||
| 202 | + // 点击前一个月 | ||
| 203 | + let prevBtn = document.querySelector( | ||
| 204 | + ".el-calendar__button-group .el-button-group>button:nth-child(1)" | ||
| 205 | + ); | ||
| 206 | + prevBtn.addEventListener("click", e => { | ||
| 207 | + console.log(this.query.date); | ||
| 208 | + this.handlemonth(1); | ||
| 209 | + }); | ||
| 210 | + | ||
| 211 | + //点击下一个月 | ||
| 212 | + let nextBtn = document.querySelector( | ||
| 213 | + ".el-calendar__button-group .el-button-group>button:nth-child(3)" | ||
| 214 | + ); | ||
| 215 | + nextBtn.addEventListener("click", () => { | ||
| 216 | + console.log(this.query.date); | ||
| 217 | + this.handlemonth(-1); | ||
| 218 | + }); | ||
| 219 | + | ||
| 220 | + //点击今天 | ||
| 221 | + let todayBtn = document.querySelector( | ||
| 222 | + ".el-calendar__button-group .el-button-group>button:nth-child(2)" | ||
| 223 | + ); | ||
| 224 | + todayBtn.addEventListener("click", () => { | ||
| 225 | + this.handlemonth(0); | ||
| 226 | + }); | ||
| 227 | + }); | ||
| 186 | }, | 228 | }, |
| 187 | methods: { | 229 | methods: { |
| 230 | + getContent(data,date){ | ||
| 231 | + // {{ data.day.split('-').slice(1).join('-') }} {{ data.isSelected ? '✔️' : ''}} | ||
| 232 | + var html = []; | ||
| 233 | + html.push( data.day.split('-').slice(1).join('-')); | ||
| 234 | + try { | ||
| 235 | + var d = this.accountlist.filter(o=>o.startTime == data.day); | ||
| 236 | + if(d){ | ||
| 237 | + d.forEach((item)=>{ | ||
| 238 | + html.push(`<el-tag type="success" style=" background-color: #ecf5ff; | ||
| 239 | + display: inline-block; | ||
| 240 | + height: 32px; | ||
| 241 | + padding: 0 10px; | ||
| 242 | + line-height: 30px; | ||
| 243 | + font-size: 12px; | ||
| 244 | + color: #409eff; | ||
| 245 | + border: 1px solid #d9ecff; | ||
| 246 | + border-radius: 4px; | ||
| 247 | + box-sizing: border-box; | ||
| 248 | + white-space: nowrap;">${item.qujian+':'+item.count}</el-tag>`); | ||
| 249 | + }); | ||
| 250 | + } | ||
| 251 | + } catch (error) { | ||
| 252 | + | ||
| 253 | + } | ||
| 254 | + return html.join(' '); | ||
| 255 | + }, | ||
| 256 | + handlemonth(val) { | ||
| 257 | + switch (val) { | ||
| 258 | + case -1: | ||
| 259 | + this.query.day=0; | ||
| 260 | + this.query.month--; | ||
| 261 | + break; | ||
| 262 | + case 0: | ||
| 263 | + this.query.month = 0; | ||
| 264 | + this.query.day =1; | ||
| 265 | + break; | ||
| 266 | + case 1: | ||
| 267 | + this.query.month++; | ||
| 268 | + this.query.day =0; | ||
| 269 | + break; | ||
| 270 | + } | ||
| 271 | + this.GetUser(); | ||
| 272 | + }, | ||
| 188 | search() { | 273 | search() { |
| 189 | this.GetUser(); | 274 | this.GetUser(); |
| 190 | }, | 275 | }, |
| @@ -229,7 +314,8 @@ | @@ -229,7 +314,8 @@ | ||
| 229 | 314 | ||
| 230 | GetUser() { | 315 | GetUser() { |
| 231 | GetCompanyInvitation(this.query).then(res => { | 316 | GetCompanyInvitation(this.query).then(res => { |
| 232 | - this.userList = res.data.data | 317 | + this.userList = res.data.data.list || []; |
| 318 | + this.accountlist = res.data.data.account || [] | ||
| 233 | this.Count = res.data.records | 319 | this.Count = res.data.records |
| 234 | }) | 320 | }) |
| 235 | }, | 321 | }, |