dev_review V2.5.3
yujialong 6 months ago
parent c11eb9ca6b
commit 6c2437e6f3
  1. 8
      src/views/match/add/step3.vue
  2. 4
      src/views/match/manage/abnormalTeam.vue
  3. 15
      src/views/match/manage/matchSignup.vue
  4. 356
      src/views/user/AddUser.vue

@ -99,8 +99,10 @@
<el-dialog title="提示" :visible.sync="tipsVisible" width="500px" :close-on-click-modal="false"
custom-class="tips-dia">
<p style="margin-bottom: 15px;line-height: 1.6">
团队赛发布成功若有修改报名时间赛程与规则修改不会影响已经分配的阶段参赛人员但后面加入报名的将不再自动分配如需将已分配的重新分配和新加入报名的进行分配请前往报名人员列表设置全部重新分配</p>
<p style="font-size: 17px;text-align: center;color: #9076ff;">编辑发布成功</p>
<p style="margin: 5px 0px 10px;line-height: 1.6">
温馨提示报名结束后更改报名时间或赛程规则不影响已分配的阶段参赛人员且后续添加的人员不会自动分配如需重新自动分配所有团队请到报名列表执行全员重新分配操作
</p>
<el-checkbox v-model="closeStatus">不再提示</el-checkbox>
<span slot="footer" class="dialog-footer">
@ -346,7 +348,7 @@ export default {
const now = await Util.getNow()
//
if (new Date(this.$parent.$refs.step1.form.signUpEndTime) > now) {
this.$confirm('<p>团队赛发布成功,是否要自动分配阶段参赛人员?</p><p style="margin-top: 10px;color: #a9a9a9;">(点击“是”将会在报名结束后给报名的团队自动分配阶段参赛人员</p>', '提示', {
this.$confirm('<p>团队赛发布成功,是否要启用自动分配阶段参赛人员功能?</p><p style="margin-top: 10px;color: #a9a9a9;">(点击“是”将会在报名截止时清空已有分配,并为所有团队重新自动分配。)</p>', '提示', {
confirmButtonText: '是',
cancelButtonText: '否',
type: 'success',

@ -157,7 +157,9 @@ export default {
token: sessionStorage.getItem('token'),
id: +this.$route.query.id,
info: {
completeCompetitionSetup: {}
completeCompetitionSetup: {
competitionType: 1,
}
},
isDisable: this.$route.query.isDisable ? +this.$route.query.isDisable : '',
statusList: [

@ -17,10 +17,9 @@
</li>
</ul>
<div>
<el-button v-if="loaded && info.completeCompetitionSetup.competitionType" type="primary" round
<el-button v-show="loaded && info.completeCompetitionSetup.competitionType" type="primary" round
:disabled="hasReport" :loading="allocating" @click="autoAllocationConfirm">{{ !notBeginSign && allocated ?
'取消' : ''
}}重新自动分配阶段成员</el-button>
'取消' : '' }}自动分配阶段成员</el-button>
<el-button type="primary" round @click="batchImport">导入</el-button>
<el-button type="primary" round @click="add" v-auth="'/match:管理:报名人员:新增'">新增</el-button>
<el-button type="primary" round :loading="exporting" @click="exportAll"
@ -195,7 +194,9 @@ export default {
token: sessionStorage.getItem('token'),
id: +this.$route.query.id,
info: {
completeCompetitionSetup: {}
completeCompetitionSetup: {
competitionType: 1,
}
},
isDisable: this.$route.query.isDisable ? +this.$route.query.isDisable : '',
statusList: [
@ -386,14 +387,14 @@ export default {
async autoAllocationConfirm () {
//
if (this.notBeginSign) {
this.$confirm('确定立即给所有报名的团队重新自动分配阶段成员?', '提示', {
type: 'success',
this.$confirm('<p>您确定要立即为所有已报名团队自动分配阶段参赛人员吗?</p><p style="font-size: 13px;color: #f00;">此操作将清除现有分配,并为所有团队重新分配。</p>', '提示', {
closeOnClickModal: false,
dangerouslyUseHTMLString: true,
}).then(async () => {
await this.$post(`${this.api.automaticAllocation}?competitionId=${this.id}`) //
}).catch(() => { })
} else {
this.$confirm(this.allocated ? '确定取消重新自动分配阶段成员?' : '<p style="margin-bottom: 5px;font-size: 16px;color: #f00;">确定开启重新自动分配阶段成员?</p><p>开启后,将在报名结束后给所有报名的团队重新自动分配阶段参赛人员</p>', {
this.$confirm(this.allocated ? '您确定取消自动分配阶段参赛人员功能吗?<p style="margin-top: 5px;font-size: 13px;color: #f00;">取消后,报名截止时将不再自动分配。</p>' : '<p>您确定启用自动分配阶段参赛人员功能吗?</p><p style="margin-top: 5px;font-size: 13px;color: #f00;line-height: 1.6;">启用后,报名截止时系统将清空已有分配,并为所有团队重新自动分配。</p>', {
type: 'success',
closeOnClickModal: false,
dangerouslyUseHTMLString: true,

@ -2,11 +2,9 @@
<div>
<el-row :gutter="20">
<el-col :span="24">
<el-card shadow="hover"
class="mgb20">
<el-card shadow="hover" class="mgb20">
<div class="flex-between">
<div class="per_title"
@click="goback">
<div class="per_title" @click="goback">
<i class="el-icon-arrow-left"></i>
<span class="per_back">返回</span>
<span class="per_school">{{ isDetail ? '查看' : '编辑' }}用户信息</span>
@ -15,8 +13,7 @@
</el-card>
<!-- 账号信息 -->
<el-card shadow="hover"
class="mgb20">
<el-card shadow="hover" class="mgb20">
<div>
<div class="flex-between mgb20 user_header">
<div class="flex-center">
@ -26,33 +23,20 @@
</div>
<div>
<el-form ref="form"
:model="form"
:rules="rules"
label-width="120px"
:disabled="isDetail">
<el-form ref="form" :model="form" :rules="rules" label-width="120px" :disabled="isDetail">
<el-col :span="24">
<el-col :span="6"
:offset="5">
<el-form-item prop="phone"
label="个人手机">
<el-input v-model="form.phone"
placeholder="请输入手机号"
maxlength="11"></el-input>
<el-col :span="6" :offset="5">
<el-form-item prop="phone" label="个人手机">
<el-input v-model="form.phone" placeholder="请输入手机号" maxlength="11"></el-input>
</el-form-item>
<el-form-item prop="email"
label="邮箱">
<el-input v-model="form.email"
placeholder="请输入邮箱"
maxlength="11"></el-input>
<el-form-item prop="email" label="邮箱">
<el-input v-model="form.email" placeholder="请输入邮箱" maxlength="11"></el-input>
</el-form-item>
</el-col>
<el-col :span="6"
:offset="2">
<el-col :span="6" :offset="2">
<el-form-item label="唯一识别码">
<el-input v-model="form.uniqueIdentification"
disabled></el-input>
<el-input v-model="form.uniqueIdentification" disabled></el-input>
</el-form-item>
</el-col>
</el-col>
@ -62,8 +46,7 @@
</el-card>
<!-- 个人信息 -->
<el-card shadow="hover"
class="mgb20">
<el-card shadow="hover" class="mgb20">
<div>
<div class="flex-between mgb20 user_header">
<div class="flex-center">
@ -73,45 +56,26 @@
</div>
<div>
<el-form ref="form"
:model="form"
:rules="rules"
label-width="120px"
:disabled="isDetail">
<el-col :span="6"
:offset="5">
<el-form-item prop="userName"
label="用户姓名">
<el-input v-model="form.userName"
placeholder="请输入"></el-input>
<el-form ref="form" :model="form" :rules="rules" label-width="120px" :disabled="isDetail">
<el-col :span="6" :offset="5">
<el-form-item prop="userName" label="用户姓名">
<el-input v-model="form.userName" placeholder="请输入"></el-input>
</el-form-item>
<el-form-item label="证件类型"
prop="documentType">
<el-select value="1"
clearable
placeholder="请选择证件类型"
style="width: 100%">
<el-option label="身份证"
value="1"></el-option>
<el-form-item label="证件类型" prop="documentType">
<el-select value="1" clearable placeholder="请选择证件类型" style="width: 100%">
<el-option label="身份证" value="1"></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="6"
:offset="2">
<el-form-item prop="phone"
label="手机号">
<el-input v-model="form.phone"
placeholder="请输入手机号"
maxlength="11"></el-input>
<el-col :span="6" :offset="2">
<el-form-item prop="phone" label="手机号">
<el-input v-model="form.phone" placeholder="请输入手机号" maxlength="11"></el-input>
</el-form-item>
<el-form-item prop="idNumber"
label="证件号码">
<el-input v-model="form.idNumber"
placeholder="请输入证件号码"
maxlength="18"></el-input>
<el-form-item prop="idNumber" label="证件号码">
<el-input v-model="form.idNumber" placeholder="请输入证件号码" maxlength="18"></el-input>
</el-form-item>
</el-col>
</el-form>
@ -120,8 +84,7 @@
</el-card>
<!-- 已绑定系统 -->
<el-card shadow="hover"
class="mgb20">
<el-card shadow="hover" class="mgb20">
<div class="flex-between mgb20">
<div class="flex-center">
<p class="addhr_tag"></p>
@ -129,54 +92,23 @@
</div>
</div>
<el-table :data="platformList"
class="table"
stripe
header-align="center"
row-key="accountId">
<el-table-column type="index"
width="100"
label="序号"
align="center"></el-table-column>
<el-table-column prop="platformName"
label="平台名称"
align="center"></el-table-column>
<el-table-column prop="schoolName"
label="绑定组织名称"
align="center"></el-table-column>
<el-table-column prop="userName"
label="姓名"
align="center"></el-table-column>
<el-table-column prop="workNumber"
label="工号/学号"
align="center"></el-table-column>
<el-table-column prop="roleName"
label="角色"
align="center"></el-table-column>
<el-table-column prop="phoneBindingTime"
label="绑定时间"
align="center"></el-table-column>
<el-table-column prop="logInNumber"
label="登录次数"
align="center"></el-table-column>
<el-table-column prop="lastLoginTime"
label="上一次的登录时间"
align="center"></el-table-column>
<el-table-column label="操作"
align="center">
<el-table :data="platformList" class="table" stripe header-align="center" row-key="accountId">
<el-table-column type="index" width="100" label="序号" align="center"></el-table-column>
<el-table-column prop="platformName" label="平台名称" align="center"></el-table-column>
<el-table-column prop="schoolName" label="绑定组织名称" align="center"></el-table-column>
<el-table-column prop="userName" label="姓名" align="center"></el-table-column>
<el-table-column prop="workNumber" label="工号/学号" align="center"></el-table-column>
<el-table-column prop="roleName" label="角色" align="center"></el-table-column>
<el-table-column prop="phoneBindingTime" label="绑定时间" align="center"></el-table-column>
<el-table-column prop="logInNumber" label="登录次数" align="center"></el-table-column>
<el-table-column prop="lastLoginTime" label="上一次的登录时间" align="center"></el-table-column>
<el-table-column label="操作" align="center">
<template slot-scope="scope">
<el-button type="text"
@click="show(scope.row)">查看</el-button>
<el-button type="text"
@click="del(scope.row)">删除</el-button>
<el-switch v-if="scope.row.userId!==1"
v-model="scope.row.isEnable"
:active-value="1"
:inactive-value="0"
style="margin: 0 10px 0 5px"
:active-text="scope.row.isEnable ? '启用' : '禁用'"
@change="switchUser($event,scope.row,scope.$index)"
v-auth="'/user:启用'"></el-switch>
<el-button type="text" @click="show(scope.row)">查看</el-button>
<el-button type="text" @click="del(scope.row)">删除</el-button>
<el-switch v-if="scope.row.userId !== 1" v-model="scope.row.isEnable" :active-value="1"
:inactive-value="0" style="margin: 0 10px 0 5px" :active-text="scope.row.isEnable ? '启用' : '禁用'"
@change="switchUser($event, scope.row, scope.$index)" v-auth="'/user:启用'"></el-switch>
</template>
</el-table-column>
</el-table>
@ -215,8 +147,8 @@ export default {
methods: {
getdata () {
this.$get(this.api.viewUserDetailsforNakadai, { userId: this.userId }).then(({ result }) => {
const info = result.hrUserInfo
info.phone = result.userAccount.phone
const info = result.hrUserInfo || {}
if (result.userAccount) info.phone = result.userAccount.phone
// MD51313
if (info.phone) info.uniqueIdentification = md5(info.phone).slice(0, 13)
this.form = info
@ -245,9 +177,9 @@ export default {
this.$confirm('确定要删除吗?', '提示', {
type: 'warning'
}).then(() => {
this.$post(this.api.delUserAccounts, [row.userId]).then(res => {
this.$post(this.api.delUserAccountsByNakadai, [row.accountId]).then(res => {
this.$message.success('删除成功')
this.getData()
this.getdata()
}).catch(res => { })
}).catch(() => { })
},
@ -258,150 +190,184 @@ export default {
<style lang="scss" scoped>
.fold {
margin-top: 20px;
text-align: center;
img {
cursor: pointer;
&:hover {
opacity: 0.8;
}
margin-top: 20px;
text-align: center;
img {
cursor: pointer;
&:hover {
opacity: 0.8;
}
}
}
.arrowTransform {
transition: 0.5s;
transform-origin: center;
transform: rotateZ(180deg);
transition: 0.5s;
transform-origin: center;
transform: rotateZ(180deg);
}
.arrowTransformReturn {
transition: 0.5s;
transform-origin: center;
transform: rotateZ(0deg);
transition: 0.5s;
transform-origin: center;
transform: rotateZ(0deg);
}
//
.card ::v-deep .el-card {
border-radius: 15px;
border-radius: 15px;
}
.card_m {
margin: 10px 0 20px 0;
margin: 10px 0 20px 0;
}
::v-deep .el-dialog__title {
font-weight: 600;
font-weight: 600;
}
.region ::v-deep .el-form-item__label {
font-weight: 600;
font-weight: 600;
}
.region ::v-deep .el-input {
width: 30%;
width: 30%;
}
.numberInput {
display: inline-flex;
align-items: center;
span {
white-space: nowrap;
}
display: inline-flex;
align-items: center;
span {
white-space: nowrap;
}
}
.numberInput ::v-deep .el-input {
width: 80%;
width: 80%;
}
.stu_input ::v-deep .el-input {
width: 80%;
width: 80%;
}
.radio {
margin: 0 15px 0 30px;
font-weight: 600;
margin: 0 15px 0 30px;
font-weight: 600;
}
.jobNumber {
margin: 10px 0;
margin: 10px 0;
}
.jobNumber ::v-deep .el-input {
margin-left: 20px;
margin-left: 20px;
}
.icon_btn {
margin: 5px 5px 15px 0;
margin: 5px 5px 15px 0;
}
.flex_start {
display: flex;
justify-content: flex-start;
align-items: center;
display: flex;
justify-content: flex-start;
align-items: center;
}
.flex_end {
display: flex;
justify-content: flex-end;
align-items: center;
display: flex;
justify-content: flex-end;
align-items: center;
}
.flex {
display: flex;
align-items: center;
display: flex;
align-items: center;
}
.from_card {
margin-bottom: 20px;
margin-bottom: 20px;
}
.mgb20_top {
margin-top: 400px;
margin-top: 400px;
}
.mag {
margin-right: 20px;
margin-right: 20px;
}
.magr50 {
margin-left: 50px;
margin-left: 50px;
}
.font_same {
margin-left: 40px;
color: rgb(155, 179, 245);
font-size: 14px;
margin-left: 40px;
color: rgb(155, 179, 245);
font-size: 14px;
}
.school-item {
margin-bottom: 20px;
.school-name {
font-size: 16px;
font-weight: bold;
margin-bottom: 20px;
.school-name {
font-size: 16px;
font-weight: bold;
}
.port {
.port-name {
margin: 10px 0;
font-size: 15px;
color: #9076ff;
}
.port {
.port-name {
margin: 10px 0;
font-size: 15px;
color: #9076ff;
}
.fields {
.line {
display: flex;
margin-bottom: 10px;
li {
display: flex;
align-items: center;
margin-right: 80px;
.name {
font-size: 14px;
}
.val {
font-size: 14px;
font-weight: bold;
}
}
}
.fields {
.line {
display: flex;
margin-bottom: 10px;
li {
display: flex;
align-items: center;
margin-right: 80px;
.name {
font-size: 14px;
}
.val {
font-size: 14px;
font-weight: bold;
}
}
}
}
}
}
//
.scrollbar ::-webkit-scrollbar {
width: 2px; //
height: 6px; //
width: 2px; //
height: 6px; //
}
//
.scrollbar ::-webkit-scrollbar-thumb {
background-color: #9278ff;
border-radius: 3px;
box-shadow: inset 0 0 5px #dddddd;
background-color: #9278ff;
border-radius: 3px;
box-shadow: inset 0 0 5px #dddddd;
}
.scrollbar ::-webkit-scrollbar-track {
/*滚动条里面轨道*/
box-shadow: inset 0 0 5px #dddddd;
border-radius: 0;
background: #dddddd;
/*滚动条里面轨道*/
box-shadow: inset 0 0 5px #dddddd;
border-radius: 0;
background: #dddddd;
}
/deep/.el-input__inner {
height: 40px !important;
height: 40px !important;
}
</style>
Loading…
Cancel
Save