# Conflicts:
#	src/main/resources/views/platform/zhgh/staffbenefit/dsznfmtx/apply/index.html
This commit is contained in:
=
2025-09-19 09:39:00 +08:00
183 changed files with 4782 additions and 2271 deletions
@@ -617,11 +617,11 @@ const ACTIVITY_CULTURE_APPLY_ACTIVITY = {
if (res.code === 0) {
this.$message.success("保存成功")
if (this.activity_type === 40002) {
window.location.href = "/platform/activity/culture/infoManage/union"
commonUtil.pjaxPush("/platform/activity/culture/infoManage/union")
} else if (this.activity_type === 40003) {
window.location.href = "/platform/activity/culture/infoManage/club"
commonUtil.pjaxPush("/platform/activity/culture/infoManage/club")
} else {
window.location.href = "/platform/activity/culture/infoManage/school"
commonUtil.pjaxPush("/platform/activity/culture/infoManage/school")
}
}
})
@@ -658,11 +658,11 @@ const ACTIVITY_CULTURE_APPLY_ACTIVITY = {
if (res.code === 0) {
this.$message.success("提交成功")
if (this.activity_type === 40002) {
window.location.href = "/platform/activity/culture/infoManage/union"
commonUtil.pjaxPush("/platform/activity/culture/infoManage/union")
} else if (this.activity_type === 40003) {
window.location.href = "/platform/activity/culture/infoManage/club"
commonUtil.pjaxPush("/platform/activity/culture/infoManage/club")
} else {
window.location.href = "/platform/activity/culture/infoManage/school"
commonUtil.pjaxPush("/platform/activity/culture/infoManage/school")
}
}
})
@@ -700,11 +700,11 @@ const ACTIVITY_CULTURE_APPLY_ACTIVITY = {
if (res.code === 0) {
this.$message.success("提交成功")
if (this.activity_type === 40002) {
window.location.href = "/platform/activity/culture/infoManage/union"
commonUtil.pjaxPush("/platform/activity/culture/infoManage/union")
} else if (this.activity_type === 40003) {
window.location.href = "/platform/activity/culture/infoManage/club"
commonUtil.pjaxPush("/platform/activity/culture/infoManage/club")
} else {
window.location.href = "/platform/activity/culture/infoManage/school"
commonUtil.pjaxPush("/platform/activity/culture/infoManage/school")
}
}
})
@@ -203,7 +203,7 @@ const ACTIVITY_CULTURE_INFO_MANAGE = {
this.url = location.origin + "/platform/h5/activity/culture/applyUser"
this.codeDialogVisible = true
} else if (type === "export") {
location.href = "/platform/activity/info/mange/export?id=" + row.id
commonUtil.pjaxPush("/platform/activity/info/mange/export?id=" + row.id)
}
},
goBack() {
@@ -5,7 +5,7 @@ layout("/layouts/platform.html"){
.el-descriptions-item__label.is-bordered-label {
width: 15% !important;
}
.el-descriptions-item__label {
width: 15% !important;
}
@@ -34,13 +34,13 @@ layout("/layouts/platform.html"){
</el-select>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item label="申请人姓名">
<el-form-item prop="userName">
<el-input disabled type="text" v-model="formData.userName"></el-input>
</el-form-item>
</el-descriptions-item>
<template v-if="formData.activityType == 'CLUB'">
<el-descriptions-item label="申请协会">
<el-form-item prop="clubId" label="申请协会">
@@ -63,7 +63,7 @@ layout("/layouts/platform.html"){
</el-form-item>
</el-descriptions-item>
</template>
<el-descriptions-item label="联系方式">
<el-form-item prop="mobile">
<el-input type="text" v-model="formData.mobile" placeholder="请输入联系方式" maxlength="11"></el-input>
@@ -74,8 +74,8 @@ layout("/layouts/platform.html"){
<el-input disabled type="text" v-model="formData.applyTime"></el-input>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item label="活动计划时间">
<el-form-item prop="planDate">
<el-date-picker
@@ -94,14 +94,14 @@ layout("/layouts/platform.html"){
<el-input-number v-model="formData.activityNumber" placeholder="请输入活动人数"></el-input-number>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item label="活动地址" :span="2">
<el-form-item prop="activityAddress">
<el-input maxlength="150" placeholder="请填写活动地址" type="text"
v-model="formData.activityAddress"></el-input>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item label="活动预算费用" :span="2">
<el-form-item prop="budgets">
<el-table :data="formData.budgets" border max-height="500" size="mini" style="width: 95%">
@@ -143,13 +143,13 @@ layout("/layouts/platform.html"){
</el-table>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item label="活动方案及简介" :span="2">
<el-form-item prop="activityContent">
<text-editor v-model="formData.activityContent"></text-editor>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item label="附件" :span="2">
<el-form-item prop="files">
<file-upload :value.sync="formData.files"
@@ -159,7 +159,7 @@ layout("/layouts/platform.html"){
complete_result></file-upload>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item label="签字" :span="2">
<el-form-item prop="sign">
<pc-signature v-model="formData.sign"></pc-signature>
@@ -167,7 +167,7 @@ layout("/layouts/platform.html"){
</el-descriptions-item>
</el-descriptions>
</el-form>
<el-row type="flex" justify="end" class="mt20">
<el-button type="primary" plain @click="onSave">保存</el-button>
<el-button type="primary" @click="onSubmit" v-if="!taskId">提交</el-button>
@@ -219,12 +219,12 @@ layout("/layouts/platform.html"){
this.$axios.post('/platform/activityDeclare/apply/save', {data: JSON.stringify(this.formData)}).then(res => {
if (res.code === 0) {
this.$message.success("保存成功")
window.location.href = '/platform/activityDeclare/mine'
commonUtil.pjaxPush('/platform/activityDeclare/mine')
}
})
})
},
// 提交
onSubmit() {
this.$confirm("您确定要提交吗?", "提示", {
@@ -241,12 +241,12 @@ layout("/layouts/platform.html"){
}).then(res => {
if (res.code === 0) {
this.$message.success("提交成功")
window.location.href = '/platform/activityDeclare/mine'
commonUtil.pjaxPush('/platform/activityDeclare/mine')
}
})
})
},
onFinishTask() {
this.$confirm("您确定要提交吗?", "提示", {
confirmButtonText: "确定",
@@ -263,12 +263,12 @@ layout("/layouts/platform.html"){
}).then(res => {
if (res.code === 0) {
this.$message.success("提交成功")
window.location.href = '/platform/activityDeclare/mine'
commonUtil.pjaxPush('/platform/activityDeclare/mine')
}
})
})
},
// 设置申报主体名称
setDeclareUnitName(val){
const club = this.clubList.find(v => v.id === val)
@@ -291,7 +291,7 @@ layout("/layouts/platform.html"){
if (res.data.clubId) {
this.setDeclareUnitName(res.data.clubId)
}
if (res.data.planStartTime && res.data.planEndTime) {
this.$set(this.formData, "planDate", [res.data.planStartTime, res.data.planEndTime])
}
@@ -147,7 +147,7 @@ layout("/layouts/platform.html"){
this.$downLoad('/platform/activityDeclare/mine/doExportDeclare?id=' + row.id)
},
onApply() {
window.location.href = '/platform/activityDeclare/apply'
commonUtil.pjaxPush('/platform/activityDeclare/apply')
},
openView(row) {
this.$refs.guava.view(() => {
@@ -155,8 +155,8 @@ layout("/layouts/platform.html"){
})
},
onEdit(row) {
window.location.href = '/platform/activityDeclare/apply?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id
},
commonUtil.pjaxPush('/platform/activityDeclare/apply?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id)
},
onRevoke(row) {
this.$confirm("您确定要撤回吗?", "提示", {
confirmButtonText: "确定",
@@ -27,7 +27,7 @@ layout("/layouts/platform.html"){
</el-select>
</el-form-item>
</el-descriptions-item>
<template v-if="formData.declareId">
<el-descriptions-item label="相关数据">
<el-button size="small" type="primary" @click="viewDeclare">查看申报信息</el-button>
@@ -36,7 +36,7 @@ layout("/layouts/platform.html"){
<template v-else>
<el-descriptions-item></el-descriptions-item>
</template>
<el-descriptions-item label="实际活动时间">
<el-form-item prop="activityTime">
<el-date-picker
@@ -50,8 +50,8 @@ layout("/layouts/platform.html"){
</el-date-picker>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item label="活动计划时间">
<el-form-item prop="planDate">
<el-date-picker
@@ -66,8 +66,8 @@ layout("/layouts/platform.html"){
</el-date-picker>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item label="活动预算费用" :span="2">
<el-form-item prop="budgets">
<el-table :data="formData.budgets" border max-height="500" size="mini" style="width: 100%">
@@ -156,7 +156,7 @@ layout("/layouts/platform.html"){
</el-table>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item label="发票" :span="2">
<el-form-item prop="billFiles">
<file-upload :value.sync="formData.billFiles"
@@ -175,7 +175,7 @@ layout("/layouts/platform.html"){
complete_result></file-upload>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item label="奖品/纪念品/服装/道具等活动人员名单" :span="2">
<el-form-item prop="otherFiles">
<file-upload :value.sync="formData.otherFiles"
@@ -185,7 +185,7 @@ layout("/layouts/platform.html"){
complete_result></file-upload>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item label="签字" :span="2">
<el-form-item prop="sign">
<pc-signature v-model="formData.sign"></pc-signature>
@@ -193,15 +193,15 @@ layout("/layouts/platform.html"){
</el-descriptions-item>
</el-descriptions>
</el-form>
<el-row type="flex" justify="end" class="mt20">
<el-button type="primary" plain @click="onSave">保存</el-button>
<el-button type="primary" @click="onSubmit" v-if="!taskId">提交</el-button>
<el-button type="primary" @click="onFinishTask" v-else>提交1</el-button>
</el-row>
</el-card>
<el-dialog title="申报数据" :visible.sync="declareDialogVisible" width="60%">
<div style="max-height: 68vh;overflow-y: auto">
<info ref="infoRef"></info>
@@ -210,13 +210,13 @@ layout("/layouts/platform.html"){
<el-button @click="declareDialogVisible = false">关闭</el-button>
</div>
</el-dialog>
</div>
</div>
<script>
<!--#include("../../declare/common/info.js"){}#-->
new Vue({
el: "#app",
mixins: [initTableMixins],
@@ -225,7 +225,7 @@ layout("/layouts/platform.html"){
return {
bizId: GetQueryString("bizId"),
taskId: GetQueryString("taskId"),
formData: {
id: GetQueryString("businessId"),
activityTime: [],
@@ -235,9 +235,9 @@ layout("/layouts/platform.html"){
formRules: {
id: [{required: true, message: "必填", trigger: ['change', 'blur']}]
},
activityOptions: [],
declareDialogVisible: false
}
},
@@ -259,12 +259,12 @@ layout("/layouts/platform.html"){
this.$axios.post('/platform/activityReimbursement/apply/save', {data: JSON.stringify(this.formData)}).then(res => {
if (res.code === 0) {
this.$message.success("保存成功")
window.location.href = '/platform/activityReimbursement/mine'
commonUtil.pjaxPush('/platform/activityReimbursement/mine')
}
})
})
},
// 提交
onSubmit() {
this.$confirm("您确定要提交吗?", "提示", {
@@ -281,12 +281,12 @@ layout("/layouts/platform.html"){
}).then(res => {
if (res.code === 0) {
this.$message.success("提交成功")
window.location.href = '/platform/activityReimbursement/mine'
commonUtil.pjaxPush('/platform/activityReimbursement/mine')
}
})
})
},
onFinishTask() {
this.$confirm("您确定要提交吗?", "提示", {
confirmButtonText: "确定",
@@ -303,12 +303,12 @@ layout("/layouts/platform.html"){
}).then(res => {
if (res.code === 0) {
this.$message.success("提交成功")
window.location.href = '/platform/activityReimbursement/mine'
commonUtil.pjaxPush('/platform/activityReimbursement/mine')
}
})
})
},
// 查看申报数据
viewDeclare() {
this.declareDialogVisible = true
@@ -316,7 +316,7 @@ layout("/layouts/platform.html"){
this.$refs.infoRef.onOpen({id: this.formData.declareId})
})
},
async getCardNumberByPayeeId(row) {
const resp = await this.$axios.post('/platform/activityReimbursement/apply/getCardNumberByPayeeId', {username:row.username})
if (resp.code === 0) {
@@ -333,9 +333,9 @@ layout("/layouts/platform.html"){
...this.formData,
...data
}
this.formData.id = this.bizId ? this.bizId : null
if (data.planStartTime && data.planEndTime) {
this.formData.planDate = [data.planStartTime, data.planEndTime]
}
@@ -152,7 +152,7 @@ layout("/layouts/platform.html"){
this.$downLoad('/platform/activityReimbursement/mine/doExportReimbursement?id=' + row.id)
},
onApply() {
window.location.href = '/platform/activityReimbursement/apply'
commonUtil.pjaxPush('/platform/activityReimbursement/apply')
},
openView(row) {
this.$refs.guava.view(() => {
@@ -160,8 +160,8 @@ layout("/layouts/platform.html"){
})
},
onEdit(row) {
window.location.href = '/platform/activityReimbursement/apply?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id
},
commonUtil.pjaxPush('/platform/activityReimbursement/apply?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id)
},
onRevoke(row) {
this.$confirm("您确定要撤回吗?", "提示", {
confirmButtonText: "确定",
@@ -59,13 +59,13 @@ const signForm = {
<div class="left-span-label"
style="display: flex; justify-content: space-between; align-items: center">
<div>家属信息</div>
<div>{{activity.keyWord}}信息</div>
<div>
<el-button type="danger" size="mini" @click="delFamily">
删除家属
删除{{activity.keyWord}}
</el-button>
<el-button type="primary" size="mini" @click="addFamily">
添加家属
添加{{activity.keyWord}}
</el-button>
</div>
</div>
@@ -74,7 +74,7 @@ const signForm = {
<el-tabs v-model="active" type="card">
<el-tab-pane v-for="(item, index) in formData.mobileColumnsValue"
:name="index + ''"
:label="'家属' + (index + 1)"
:label="activity.keyWord + (index + 1)"
:key="index">
<el-row class="mt20">
<el-col :span="24">
@@ -130,7 +130,7 @@ const signForm = {
</el-tabs>
</div>
<div v-if="formData.mobileColumnsValue.length === 0" style="text-align: center">
<span style="font-size: 15px;color: grey">如有家属,请添加家属</span>
<span style="font-size: 15px;color: grey">如有{{activity.keyWord}},请添加{{activity.keyWord}}</span>
</div>
</el-form>
@@ -414,7 +414,7 @@ const signForm = {
},
},
style: /*language=CSS*/ `
::v-deep .el-tabs__header {
/deep/ .el-tabs__header {
margin: 0 0 15px !important;
}
`
@@ -107,7 +107,7 @@ const info = {
},
},
style: /*language=CSS*/ `
::v-deep .el-button--text {
/deep/ .el-button--text {
padding: 0;
}
`
@@ -3,7 +3,7 @@ const info = {
<div>
<el-tabs>
<el-tab-pane label="报名人员">
<el-table :data="registerUserTableData" class="mt20">
<el-table :data="registerUserTableData" class="mt20" max-height="600">
<el-table-column
:label="column.label"
:prop="column.prop"
@@ -213,10 +213,10 @@ const userInfo = {
this.unitList = await this.$businessTool.listUnit(this.registerForm.unionId)
},
style: /*language=CSS*/ `
::v-deep .adjustDialog .el-radio__label {
/deep/ .adjustDialog .el-radio__label {
display: none;
}
::v-deep .adjustDialog .el-dialog__body {
/deep/ .adjustDialog .el-dialog__body {
max-height: 600px;
overflow-y: auto;
}
@@ -291,43 +291,43 @@ const courseList = {
},
style: /*language=CSS*/ `
::v-deep .glow-box {
/deep/ .glow-box {
min-height: calc(100vh - 56px - 40px - 50px - 80px);
max-height: calc(100vh - 56px - 40px - 50px - 80px);
overflow-y: auto;
background: #F0F2F5;
}
::v-deep img {
/deep/ img {
width: 100%;
height: 180px;
}
::v-deep .title {
/deep/ .title {
background: white;
height: 20px;
}
::v-deep .query-row {
/deep/ .query-row {
display: flex;
align-items: center;
padding: 6px 0;
}
::v-deep .query-row:not(:last-child) {
/deep/ .query-row:not(:last-child) {
border-bottom: 1px dashed rgb(230, 230, 230);
}
::v-deep .query-row > .query-title {
/deep/ .query-row > .query-title {
width: 100px;
max-width: 100px;
min-width: 100px;
overflow: hidden;
}
::v-deep .query-row > .query-content {
/deep/ .query-row > .query-content {
min-width: 200px;
overflow: hidden;
}
::v-deep .query-row > .query-content > .el-tag {
/deep/ .query-row > .query-content > .el-tag {
margin-bottom: 5px;
margin-top: 5px;
}
::v-deep @media screen and (max-width: 992px) {
/deep/ @media screen and (max-width: 992px) {
.query-row:nth-child(4) .query-content .el-col:not(:last-child) {
margin-bottom: 5px;
}
@@ -3,7 +3,7 @@ const info = {
<div>
<el-tabs>
<el-tab-pane label="报名人员">
<el-table :data="registerUserTableData" class="mt20">
<el-table :data="registerUserTableData" class="mt20" max-height="600">
<el-table-column
:label="column.label"
:prop="column.prop"
@@ -67,6 +67,7 @@ layout("/layouts/platform.html"){
<span>{{$moment(scope.row.createdAt).format( 'YYYY-MM-DD')}}</span>
</template>
</el-table-column>
<el-table-column label="点赞数量" prop="num"></el-table-column>
<el-table-column label="操作" width="200">
<template slot-scope="scope">
<el-button size="mini" type="primary" @click="$refs.auInfoRef.onOpen(scope.row.id)">查看</el-button>
@@ -39,7 +39,6 @@ layout("/layouts/platform.html"){
<el-table :data="tableData" @sort-change="pageOrder" style="width: 100%" row-key="id">
<el-table-column label="序号" type="index" width="60px" :index="indexMethod"></el-table-column>
<el-table-column label="活动主题" prop="name" show-overflow-tooltip></el-table-column>
<el-table-column label="作品名称" prop="name" show-overflow-tooltip></el-table-column>
<el-table-column label="主题类型" prop="subjectName" show-overflow-tooltip></el-table-column>
<el-table-column label="作品类型" prop="worksName" show-overflow-tooltip></el-table-column>
@@ -127,7 +127,7 @@ layout("/layouts/platform.html"){
this.$axios.post("/platform/club/evaluate/apply/save", { data: JSON.stringify(this.formData) }).then((res) => {
if (res.code === 0) {
this.$message.success(res.msg)
location.href = '/platform/club/evaluate/mine'
commonUtil.pjaxPush('/platform/club/evaluate/mine')
}
})
},
@@ -149,7 +149,7 @@ layout("/layouts/platform.html"){
})
if (resp.code === 0) {
this.$message.success(resp.msg)
location.href = '/platform/club/evaluate/mine'
commonUtil.pjaxPush('/platform/club/evaluate/mine')
} else {
this.$message.warning(resp.msg)
}
@@ -170,7 +170,7 @@ layout("/layouts/platform.html"){
}).then(res => {
if (res.code === 0) {
this.$message.success(res.msg)
window.location.href = '/platform/club/evaluate/mine'
commonUtil.pjaxPush('/platform/club/evaluate/mine')
}
})
})
@@ -114,7 +114,7 @@ layout("/layouts/platform.html"){
})
},
onEdit(row) {
window.location.href = '/platform/club/evaluate/apply?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id
commonUtil.pjaxPush('/platform/club/evaluate/apply?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id)
},
async onDelete(id) {
const confirm = await this.$confirm("此操作将永久删除, 是否继续?", "提示", {
@@ -376,7 +376,7 @@ layout("/layouts/platform.html"){
}).then((res) => {
if (res.code === 0) {
this.$message.success(res.msg)
location.href = '/platform/club/examine/mine'
commonUtil.pjaxPush('/platform/club/examine/mine')
}
})
},
@@ -394,7 +394,7 @@ layout("/layouts/platform.html"){
})
if (resp.code === 0) {
this.$message.success(resp.msg)
location.href = '/platform/club/examine/mine'
commonUtil.pjaxPush('/platform/club/examine/mine')
} else {
this.$message.warning(resp.msg)
}
@@ -414,7 +414,7 @@ layout("/layouts/platform.html"){
}).then(res => {
if (res.code === 0) {
this.$message.success(res.msg)
window.location.href = '/platform/club/examine/mine'
commonUtil.pjaxPush('/platform/club/examine/mine')
}
})
})
@@ -106,7 +106,7 @@ layout("/layouts/platform.html"){
})
},
onEdit(row) {
window.location.href = '/platform/club/examine/apply?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id
commonUtil.pjaxPush('/platform/club/examine/apply?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id)
},
async onDelete(id) {
const confirm = await this.$confirm("此操作将永久删除, 是否继续?", "提示", {
@@ -165,7 +165,7 @@ layout("/layouts/platform.html"){
this.$axios.post('/platform/club/join/apply/save', {data: JSON.stringify(this.formData)}).then(res => {
if (res.code === 0) {
this.$message.success(res.msg)
location.href = '/platform/club/join/mine'
commonUtil.pjaxPush('/platform/club/join/mine')
}
})
})
@@ -180,7 +180,7 @@ layout("/layouts/platform.html"){
this.$confirm("您确定要提交申请吗?", "提示", { type: "warning" }).then(() => {
this.$axios.post("/platform/club/join/apply/submit", this.formData).then((res) => {
if (res.code === 0) {
location.href = '/platform/club/join/mine'
commonUtil.pjaxPush('/platform/club/join/mine')
this.$message.success(res.msg)
}
})
@@ -202,7 +202,7 @@ layout("/layouts/platform.html"){
}).then(res => {
if (res.code === 0) {
this.$message.success(res.msg)
location.href = '/platform/club/join/mine'
commonUtil.pjaxPush('/platform/club/join/mine')
}
})
})
@@ -114,7 +114,7 @@ layout("/layouts/platform.html"){
async doSubmit(row) {
this.$axios.post("/platform/club/join/apply/checkApplyClub", { clubId: row.id }).then((res) => {
if (res.code === 0) {
location.href = '/platform/club/join/apply?clubId=' + row.id
commonUtil.pjaxPush('/platform/club/join/apply?clubId=' + row.id)
}
})
},
@@ -92,7 +92,7 @@ layout("/layouts/platform.html"){
})
},
onEdit(row) {
location.href = '/platform/club/join/apply?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id
commonUtil.pjaxPush('/platform/club/join/apply?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id)
},
onDelete(id) {
this.$confirm("确定要删除此申请吗?", "提示", {
@@ -157,7 +157,7 @@ layout("/layouts/platform.html"){
})
if (resp.code === 0) {
this.$message.success(resp.msg)
location.href = '/platform/club/register/clubMyApply'
commonUtil.pjaxPush('/platform/club/register/clubMyApply')
}
} catch (e) {
console.log(e)
@@ -102,7 +102,7 @@ layout("/layouts/platform.html"){
})
},
openAdd() {
location.href = '/platform/club/register/clubRegisterApply'
commonUtil.pjaxPush('/platform/club/register/clubRegisterApply')
},
openView(row) {
this.$refs.guava.view(() => {
@@ -110,7 +110,7 @@ layout("/layouts/platform.html"){
})
},
onEdit(row) {
window.location.href = '/platform/club/register/clubRegisterApply?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id
commonUtil.pjaxPush('/platform/club/register/clubRegisterApply?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id)
},
async onDelete(id) {
const confirm = await this.$confirm("此操作将永久删除, 是否继续?", "提示", {
@@ -78,7 +78,7 @@ layout("/layouts/platform.html"){
},
// 编辑
onEdit(row) {
window.location.href = '/platform/article/write?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id
commonUtil.pjaxPush('/platform/article/write?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id)
},
// 撤回
onRevoke(row) {
@@ -113,7 +113,7 @@ layout("/layouts/platform.html"){
if (res.code === 0) {
this.$message.success("保存成功")
//this.$store.dispatch("pjaxRoute", "/platform/article/mine")
window.location.href = "/platform/article/mine"
commonUtil.pjaxPush("/platform/article/mine")
}
})
})
@@ -130,7 +130,7 @@ layout("/layouts/platform.html"){
}).then((res) => {
if (res.code === 0) {
this.$message.success("提交成功")
window.location.href = "/platform/article/mine"
commonUtil.pjaxPush("/platform/article/mine")
}
})
}
@@ -150,7 +150,7 @@ layout("/layouts/platform.html"){
}).then(res => {
if (res.code === 0) {
this.$message.success("提交成功")
window.location.href = '/platform/article/mine'
commonUtil.pjaxPush('/platform/article/mine')
}
})
})
@@ -113,7 +113,7 @@ layout("/layouts/platform.html"){
})
},
openAdd() {
location.href = '/platform/clothing/apply'
commonUtil.pjaxPush('/platform/clothing/apply')
},
onDelete(row) {
this.$confirm('此操作将永久删除, 是否继续?', '提示', {
@@ -350,12 +350,12 @@ const contentForm = {
},
style: /*language=CSS*/ `
::v-deep .edu_content_dialog .el-dialog__body {
/deep/ .edu_content_dialog .el-dialog__body {
height: calc(100vh - 155px);
overflow-y: auto;
}
::v-deep .section-header {
/deep/ .section-header {
display: flex;
justify-content: space-between;
align-items: center;
@@ -363,7 +363,7 @@ const contentForm = {
padding: 20px 20px 0;
}
::v-deep .video-item {
/deep/ .video-item {
background: #f8f9fa;
border: 1px solid #e9ecef;
border-radius: 8px;
@@ -372,19 +372,19 @@ const contentForm = {
transition: all 0.3s;
}
::v-deep .video-item:hover {
/deep/ .video-item:hover {
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
transform: translateY(-2px);
}
::v-deep .chapter-card {
/deep/ .chapter-card {
border: 1px solid #e4e7ed;
border-radius: 8px;
margin-bottom: 20px;
overflow: hidden;
}
::v-deep .chapter-header {
/deep/ .chapter-header {
background: #f5f7fa;
padding: 15px 20px;
border-bottom: 1px solid #e4e7ed;
@@ -393,11 +393,11 @@ const contentForm = {
align-items: center;
}
::v-deep .chapter-content {
/deep/ .chapter-content {
padding: 20px;
}
::v-deep .stats-card {
/deep/ .stats-card {
color: white;
padding: 20px;
border-radius: 8px;
@@ -405,14 +405,14 @@ const contentForm = {
margin-bottom: 20px;
}
::v-deep .course-cover {
/deep/ .course-cover {
width: 100px;
height: 60px;
object-fit: cover;
border-radius: 4px;
}
::v-deep .duration-display {
/deep/ .duration-display {
color: #909399;
font-size: 12px;
}
@@ -239,7 +239,7 @@ layout("/layouts/platform.html"){
this.$axios.post('/platform/enrollmentRegistration/apply/save', {data: JSON.stringify(this.formData)}).then(res => {
if (res.code === 0) {
this.$message.success("保存成功")
window.location.href = '/platform/enrollmentRegistration/applyList/index'
commonUtil.pjaxPush('/platform/enrollmentRegistration/applyList/index')
}
})
})
@@ -270,7 +270,7 @@ layout("/layouts/platform.html"){
}).then(res => {
if (res.code === 0) {
this.$message.success("提交成功")
window.location.href = '/platform/enrollmentRegistration/applyList/index'
commonUtil.pjaxPush('/platform/enrollmentRegistration/applyList/index')
}
})
})
@@ -303,7 +303,7 @@ layout("/layouts/platform.html"){
}).then(res => {
if (res.code === 0) {
this.$message.success("提交成功")
window.location.href = '/platform/enrollmentRegistration/applyList/index'
commonUtil.pjaxPush('/platform/enrollmentRegistration/applyList/index')
}
})
})
@@ -94,7 +94,7 @@ layout("/layouts/platform.html"){
})
},
openEdit(row) {
window.location.href = '/platform/enrollmentRegistration/apply/index?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id
commonUtil.pjaxPush('/platform/enrollmentRegistration/apply/index?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id)
},
onRevoke(row) {
this.$confirm("您确定要撤回吗?", "提示", {
@@ -222,7 +222,7 @@ const apply_component = {
if (this.formData.id) {
this.$emit('refresh')
} else {
window.location.href = '/platform/evaluate/mine'
commonUtil.pjaxPush('/platform/evaluate/mine')
}
}
})
@@ -243,7 +243,7 @@ const apply_component = {
if (this.formData.id) {
this.$emit('refresh')
} else {
window.location.href = '/platform/evaluate/mine'
commonUtil.pjaxPush('/platform/evaluate/mine')
}
}
})
@@ -264,7 +264,7 @@ const apply_component = {
if (this.formData.id) {
this.$emit('refresh')
} else {
window.location.href = '/platform/evaluate/mine'
commonUtil.pjaxPush('/platform/evaluate/mine')
}
}
})
@@ -283,7 +283,7 @@ layout("/layouts/platform.html"){
this.$axios.post('/platform/activity/budget/apply/save', {data: JSON.stringify(this.formData)}).then(res => {
if (res.code === 0) {
this.$message.success("保存成功")
window.location.href = '/platform/activity/budget/applyList'
commonUtil.pjaxPush('/platform/activity/budget/applyList')
}
})
})
@@ -301,7 +301,7 @@ layout("/layouts/platform.html"){
}).then(res => {
if (res.code === 0) {
this.$message.success("提交成功")
window.location.href = '/platform/activity/budget/applyList'
commonUtil.pjaxPush('/platform/activity/budget/applyList')
}
})
})
@@ -318,7 +318,7 @@ layout("/layouts/platform.html"){
}).then(res => {
if (res.code === 0) {
this.$message.success("提交成功")
window.location.href = '/platform/activity/budget/applyList'
commonUtil.pjaxPush('/platform/activity/budget/applyList')
}
})
})
@@ -143,7 +143,7 @@ layout("/layouts/platform.html"){
},
methods: {
openAdd() {
window.location.href = '/platform/activity/budget/apply'
commonUtil.pjaxPush('/platform/activity/budget/apply')
},
doExport() {
},
@@ -232,7 +232,7 @@ layout("/layouts/platform.html"){
})
},
openEdit(row) {
window.location.href = '/platform/activity/budget/apply?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id
commonUtil.pjaxPush('/platform/activity/budget/apply?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id)
},
doDelete(id) {
this.$confirm('确定删除该条数据?', '提示', {
@@ -160,7 +160,7 @@ layout("/layouts/platform.html"){
this.$axios.post('/platform/outlay/reimburse/apply/save', {data: JSON.stringify(this.formData)}).then(res => {
if (res.code === 0) {
this.$message.success("保存成功")
window.location.href = '/platform/outlay/reimburse/applyList/index'
commonUtil.pjaxPush('/platform/outlay/reimburse/applyList/index')
}
})
}
@@ -182,7 +182,7 @@ layout("/layouts/platform.html"){
}).then(res => {
if (res.code === 0) {
this.$message.success("提交成功")
window.location.href = '/platform/outlay/reimburse/applyList/index'
commonUtil.pjaxPush('/platform/outlay/reimburse/applyList/index')
}
})
}
@@ -203,7 +203,7 @@ layout("/layouts/platform.html"){
}).then(res => {
if (res.code === 0) {
this.$message.success("提交成功")
window.location.href = '/platform/outlay/reimburse/applyList/index'
commonUtil.pjaxPush('/platform/outlay/reimburse/applyList/index')
}
})
}
@@ -103,7 +103,7 @@ layout("/layouts/platform.html"){
})
},
openEdit(row) {
window.location.href = '/platform/outlay/reimburse/apply/index?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id
commonUtil.pjaxPush('/platform/outlay/reimburse/apply/index?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id)
},
onRevoke(row) {
this.$confirm("您确定要撤回吗?", "提示", {
@@ -414,13 +414,13 @@ const subjectForm = {
/* background: rgb(248, 249, 250);*/
/*}*/
::v-deep .questionnaire-editor {
/deep/ .questionnaire-editor {
max-width: 1200px;
margin: 0 auto;
padding: 20px;
}
::v-deep .editor-header {
/deep/ .editor-header {
background: white;
padding: 20px;
border-radius: 8px;
@@ -428,7 +428,7 @@ const subjectForm = {
margin-bottom: 20px;
}
::v-deep .subject-item {
/deep/ .subject-item {
background: white;
border-radius: 8px;
padding: 25px;
@@ -438,18 +438,18 @@ const subjectForm = {
border: 1px dashed #d9d9d9;
}
::v-deep .subject-item:hover {
/deep/ .subject-item:hover {
box-shadow: 0 4px 20px 0 rgba(0, 0, 0, 0.1);
/*transform: translateY(-1px);*/
}
::v-deep .subject-header {
/deep/ .subject-header {
border-bottom: 1px solid #eee;
padding-bottom: 15px;
margin-bottom: 15px;
}
::v-deep .subject-toolbar {
/deep/ .subject-toolbar {
display: flex;
justify-content: space-between;
align-items: center;
@@ -458,7 +458,7 @@ const subjectForm = {
border-top: 1px solid #eee;
}
::v-deep .toolbar {
/deep/ .toolbar {
background: white;
padding: 15px;
border-radius: 8px;
@@ -466,12 +466,12 @@ const subjectForm = {
z-index: 1000;
}
::v-deep .toolbar-btn {
/deep/ .toolbar-btn {
margin: 5px 0;
width: 100%;
}
::v-deep .option-item {
/deep/ .option-item {
background: #f8f9fa;
border-radius: 4px;
padding: 10px;
@@ -480,33 +480,33 @@ const subjectForm = {
align-items: center;
}
::v-deep .option-drag-handle {
/deep/ .option-drag-handle {
cursor: move;
margin-right: 10px;
color: #909399;
}
::v-deep .option-content {
/deep/ .option-content {
flex-grow: 1;
margin-right: 10px;
}
::v-deep .option-tools {
/deep/ .option-tools {
display: flex;
align-items: center;
gap: 10px;
}
::v-deep .preview-dialog {
/deep/ .preview-dialog {
max-width: 800px;
margin: 0 auto;
}
::v-deep .date-visible {
/deep/ .date-visible {
margin-left: 20px;
}
::v-deep .subject-meta {
/deep/ .subject-meta {
display: flex;
flex-wrap: wrap;
gap: 15px;
@@ -516,7 +516,7 @@ const subjectForm = {
border-radius: 4px;
}
::v-deep .image-preview {
/deep/ .image-preview {
max-width: 200px;
max-height: 200px;
margin-top: 10px;
@@ -524,24 +524,24 @@ const subjectForm = {
border: 1px solid #dcdfe6;
}
::v-deep .drag-handler {
/deep/ .drag-handler {
cursor: move;
color: #909399;
margin-right: 10px;
}
::v-deep .meta-info {
/deep/ .meta-info {
color: #909399;
font-size: 12px;
margin-top: 5px;
}
::v-deep .subject-type-icon {
/deep/ .subject-type-icon {
margin-right: 5px;
}
::v-deep .option-img-box {
/deep/ .option-img-box {
position: relative;
width: 40px;
height: 40px;
@@ -549,16 +549,16 @@ const subjectForm = {
flex-shrink: 0
}
::v-deep .option-img-box:hover .el-icon-remove {
/deep/ .option-img-box:hover .el-icon-remove {
display: block;
}
::v-deep .option-img-box img {
/deep/ .option-img-box img {
width: 100%;
height: 100%;
}
::v-deep .option-img-box .el-icon-remove {
/deep/ .option-img-box .el-icon-remove {
position: absolute;
top: -7px;
right: -7px;
@@ -566,7 +566,7 @@ const subjectForm = {
display: none;
}
::v-deep .option-img-box .el-icon-remove:hover {
/deep/ .option-img-box .el-icon-remove:hover {
transform: scale(1.1);
}
@@ -314,11 +314,11 @@ E.先进性"
}
},
style: /*language=CSS*/ `
::v-deep .txt-import-dialog .el-dialog__body {
/deep/ .txt-import-dialog .el-dialog__body {
padding: 10px 20px;
}
::v-deep .txt-import-container {
/deep/ .txt-import-container {
display: flex;
height: 80vh;
border-radius: 4px;
@@ -327,7 +327,7 @@ E.先进性"
background-color: #fff;
}
::v-deep .txt-import-panel-header {
/deep/ .txt-import-panel-header {
display: flex;
justify-content: space-between;
align-items: center;
@@ -337,7 +337,7 @@ E.先进性"
height: 32px; /* 统一高度 */
}
::v-deep .txt-import-left-panel {
/deep/ .txt-import-left-panel {
width: 50%;
padding: 20px;
border-right: 1px solid #ebeef5;
@@ -345,7 +345,7 @@ E.先进性"
flex-direction: column;
}
::v-deep .txt-import-right-panel {
/deep/ .txt-import-right-panel {
width: 50%;
padding: 20px;
background-color: #fff; /* 改为白色背景 */
@@ -354,22 +354,22 @@ E.先进性"
flex-direction: column;
}
::v-deep .txt-import-title {
/deep/ .txt-import-title {
font-size: 16px;
font-weight: bold;
color: #303133;
}
::v-deep .txt-import-format-tip {
/deep/ .txt-import-format-tip {
display: flex;
align-items: center;
}
::v-deep .txt-import-format-tooltip {
/deep/ .txt-import-format-tooltip {
margin-left: 10px;
}
::v-deep .txt-import-input-area {
/deep/ .txt-import-input-area {
flex: 1;
position: relative;
margin-bottom: 15px;
@@ -379,7 +379,7 @@ E.先进性"
padding: 2px;
}
::v-deep .txt-import-textarea {
/deep/ .txt-import-textarea {
width: 100%;
height: 100%;
padding: 15px;
@@ -394,25 +394,25 @@ E.先进性"
background-color: transparent;
}
::v-deep .txt-import-textarea:focus {
/deep/ .txt-import-textarea:focus {
box-shadow: 0 0 0 2px rgba(24,103,176,0.2);
}
::v-deep .txt-import-action-buttons {
/deep/ .txt-import-action-buttons {
display: flex;
justify-content: flex-end;
margin-top: 10px;
gap: 10px;
}
::v-deep .txt-import-stats {
/deep/ .txt-import-stats {
color: #1867b0;
font-size: 13px;
display: flex;
align-items: center;
}
::v-deep .txt-import-result-display {
/deep/ .txt-import-result-display {
flex: 1;
overflow-y: auto;
background-color: #f9fafc; /* 只在结果显示区域使用浅灰色背景 */
@@ -421,7 +421,7 @@ E.先进性"
border: 1px solid #ebeef5;
}
::v-deep .txt-import-no-questions {
/deep/ .txt-import-no-questions {
height: 100%;
display: flex;
align-items: center;
@@ -431,7 +431,7 @@ E.先进性"
padding: 20px;
}
::v-deep .txt-import-question-item {
/deep/ .txt-import-question-item {
background-color: #fff;
margin-bottom: 15px;
padding: 15px;
@@ -441,12 +441,12 @@ E.先进性"
border-left: 3px solid #67c23a;
}
::v-deep .txt-import-question-item:hover {
/deep/ .txt-import-question-item:hover {
box-shadow: 0 4px 12px 0 rgba(0,0,0,0.1);
transform: translateY(-2px);
}
::v-deep .txt-import-question-title {
/deep/ .txt-import-question-title {
font-size: 15px;
font-weight: bold;
margin-bottom: 12px;
@@ -454,7 +454,7 @@ E.先进性"
line-height: 1.5;
}
::v-deep .txt-import-question-number {
/deep/ .txt-import-question-number {
display: inline-block;
width: 25px;
height: 25px;
@@ -467,11 +467,11 @@ E.先进性"
font-size: 13px;
}
::v-deep .txt-import-options {
/deep/ .txt-import-options {
margin-bottom: 12px;
}
::v-deep .txt-import-option-item {
/deep/ .txt-import-option-item {
margin-bottom: 8px;
padding: 8px 12px;
background-color: #f5f7fa;
@@ -483,27 +483,27 @@ E.先进性"
transition: all 0.2s;
}
::v-deep .txt-import-option-item:hover {
/deep/ .txt-import-option-item:hover {
background-color: #ebeef5;
}
::v-deep .txt-import-option-item.txt-import-correct {
/deep/ .txt-import-option-item.txt-import-correct {
background-color: #f0f9eb;
color: #67c23a;
border-left: 3px solid #67c23a;
}
::v-deep .txt-import-option-text {
/deep/ .txt-import-option-text {
flex: 1;
}
::v-deep .txt-import-correct-mark {
/deep/ .txt-import-correct-mark {
color: #67c23a;
font-weight: bold;
font-size: 16px;
}
::v-deep .txt-import-question-meta {
/deep/ .txt-import-question-meta {
margin-top: 12px;
padding-top: 12px;
border-top: 1px dashed #ebeef5;
@@ -511,12 +511,12 @@ E.先进性"
color: #909399;
}
::v-deep .txt-import-dialog-footer {
/deep/ .txt-import-dialog-footer {
display: flex;
justify-content: flex-end;
}
::v-deep .txt-import-no-options {
/deep/ .txt-import-no-options {
padding: 10px;
color: #f56c6c;
font-style: italic;
@@ -391,13 +391,13 @@ const subjectForm = {
/* background: rgb(248, 249, 250);*/
/*}*/
::v-deep .questionnaire-editor {
/deep/ .questionnaire-editor {
max-width: 1200px;
margin: 0 auto;
padding: 20px;
}
::v-deep .editor-header {
/deep/ .editor-header {
background: white;
padding: 20px;
border-radius: 8px;
@@ -405,7 +405,7 @@ const subjectForm = {
margin-bottom: 20px;
}
::v-deep .subject-item {
/deep/ .subject-item {
background: white;
border-radius: 8px;
padding: 25px;
@@ -415,18 +415,18 @@ const subjectForm = {
border: 1px dashed #d9d9d9;
}
::v-deep .subject-item:hover {
/deep/ .subject-item:hover {
box-shadow: 0 4px 20px 0 rgba(0, 0, 0, 0.1);
/*transform: translateY(-1px);*/
}
::v-deep .subject-header {
/deep/ .subject-header {
border-bottom: 1px solid #eee;
padding-bottom: 15px;
margin-bottom: 15px;
}
::v-deep .subject-toolbar {
/deep/ .subject-toolbar {
display: flex;
justify-content: space-between;
align-items: center;
@@ -435,7 +435,7 @@ const subjectForm = {
border-top: 1px solid #eee;
}
::v-deep .toolbar {
/deep/ .toolbar {
background: white;
padding: 15px;
border-radius: 8px;
@@ -443,12 +443,12 @@ const subjectForm = {
z-index: 1000;
}
::v-deep .toolbar-btn {
/deep/ .toolbar-btn {
margin: 5px 0;
width: 100%;
}
::v-deep .option-item {
/deep/ .option-item {
background: #f8f9fa;
border-radius: 4px;
padding: 10px;
@@ -457,33 +457,33 @@ const subjectForm = {
align-items: center;
}
::v-deep .option-drag-handle {
/deep/ .option-drag-handle {
cursor: move;
margin-right: 10px;
color: #909399;
}
::v-deep .option-content {
/deep/ .option-content {
flex-grow: 1;
margin-right: 10px;
}
::v-deep .option-tools {
/deep/ .option-tools {
display: flex;
align-items: center;
gap: 10px;
}
::v-deep .preview-dialog {
/deep/ .preview-dialog {
max-width: 800px;
margin: 0 auto;
}
::v-deep .date-visible {
/deep/ .date-visible {
margin-left: 20px;
}
::v-deep .subject-meta {
/deep/ .subject-meta {
display: flex;
flex-wrap: wrap;
gap: 15px;
@@ -493,7 +493,7 @@ const subjectForm = {
border-radius: 4px;
}
::v-deep .image-preview {
/deep/ .image-preview {
max-width: 200px;
max-height: 200px;
margin-top: 10px;
@@ -501,24 +501,24 @@ const subjectForm = {
border: 1px solid #dcdfe6;
}
::v-deep .drag-handler {
/deep/ .drag-handler {
cursor: move;
color: #909399;
margin-right: 10px;
}
::v-deep .meta-info {
/deep/ .meta-info {
color: #909399;
font-size: 12px;
margin-top: 5px;
}
::v-deep .subject-type-icon {
/deep/ .subject-type-icon {
margin-right: 5px;
}
::v-deep .option-img-box {
/deep/ .option-img-box {
position: relative;
width: 40px;
height: 40px;
@@ -526,16 +526,16 @@ const subjectForm = {
flex-shrink: 0
}
::v-deep .option-img-box:hover .el-icon-remove {
/deep/ .option-img-box:hover .el-icon-remove {
display: block;
}
::v-deep .option-img-box img {
/deep/ .option-img-box img {
width: 100%;
height: 100%;
}
::v-deep .option-img-box .el-icon-remove {
/deep/ .option-img-box .el-icon-remove {
position: absolute;
top: -7px;
right: -7px;
@@ -543,7 +543,7 @@ const subjectForm = {
display: none;
}
::v-deep .option-img-box .el-icon-remove:hover {
/deep/ .option-img-box .el-icon-remove:hover {
transform: scale(1.1);
}
@@ -129,7 +129,7 @@ const apply = {
if (resp.code === 0) {
this.$message.success(resp.msg)
this.dialogVisible = false
location.href = '/platform/site/mine'
commonUtil.pjaxPush('/platform/site/mine')
} else {
this.$message.warning(resp.msg)
}
@@ -249,17 +249,17 @@ const apply = {
},
},
style: /*language=CSS*/ `
::v-deep .div-Calendar {
/deep/ .div-Calendar {
box-sizing: border-box;
height: 100%;
}
::v-deep .div-Calendar p {
/deep/ .div-Calendar p {
margin: 0;
}
::v-deep .el-calendar-day:has(.not-allow-day) {
/deep/ .el-calendar-day:has(.not-allow-day) {
background-color: #F5F5F5;
}
::v-deep .el-dialog__body {
/deep/ .el-dialog__body {
padding-top: 0;
}
`
@@ -348,7 +348,7 @@ layout("/layouts/platform.html"){
this.$axios.post('/platform/unionReimburse/apply/save', {data: JSON.stringify(this.formData)}).then(res => {
if (res.code === 0) {
this.$message.success(res.msg)
window.location.href = '/platform/unionReimburse/mine/index'
commonUtil.pjaxPush('/platform/unionReimburse/mine/index')
}
})
})
@@ -391,7 +391,7 @@ layout("/layouts/platform.html"){
}).then(res => {
if (res.code === 0) {
this.$message.success("提交成功")
window.location.href = '/platform/unionReimburse/mine/index'
commonUtil.pjaxPush('/platform/unionReimburse/mine/index')
}
})
})
@@ -422,7 +422,7 @@ layout("/layouts/platform.html"){
}).then(res => {
if (res.code === 0) {
this.$message.success("提交成功")
window.location.href = '/platform/unionReimburse/mine/index'
commonUtil.pjaxPush('/platform/unionReimburse/mine/index')
}
})
})
@@ -162,7 +162,7 @@ layout("/layouts/platform.html"){
})
},
onEdit(row) {
window.location.href = '/platform/unionReimburse/apply/index?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id
commonUtil.pjaxPush('/platform/unionReimburse/apply/index?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id)
},
onRevoke(row) {
this.$confirm("您确定要撤回吗?", "提示", {
@@ -18,7 +18,7 @@ layout("/layouts/platform.html"){
value-format="yyyy">
</el-date-picker>
</search-item>
<search-item label="所属工会">
<el-select @change="doSearch" clearable="true"
filterable="true"
@@ -148,7 +148,7 @@ layout("/layouts/platform.html"){
})
},
openEdit(row) {
window.location.href = '/platform/workershome/declaration/apply?id=' + row.id;
commonUtil.pjaxPush('/platform/workershome/declaration/apply?id=' + row.id;)
},
async flushUnits() {
this.$set(this.pageForm, "unitId", null)
@@ -71,7 +71,7 @@ layout("/layouts/platform.html"){
</el-form-item>
</el-col>
</el-row>
<div class="process-title">教工小家详细信息</div>
<el-row :gutter="20">
<el-col :lg="8" :sm="24">
@@ -105,7 +105,7 @@ layout("/layouts/platform.html"){
</el-form-item>
</el-col>
</el-row>
<div class="process-title">教工小家荣誉信息</div>
<el-row :gutter="20">
<el-col :lg="24" :sm="24">
@@ -175,7 +175,7 @@ layout("/layouts/platform.html"){
</el-form-item>
</el-col>
</el-row>
<div class="process-title">教工小家材料上传</div>
<el-row gutter="20">
<el-col :lg="24" :sm="24">
@@ -244,7 +244,7 @@ layout("/layouts/platform.html"){
if (resp.code === 0) {
this.notifySuccess(resp.msg)
setTimeout(() => {
location.href = '/platform/workershome/info/mine'
commonUtil.pjaxPush('/platform/workershome/info/mine')
}, 500)
} else {
this.notifyWarning(resp.msg)
@@ -266,7 +266,7 @@ layout("/layouts/platform.html"){
if (resp.code === 0) {
this.notifySuccess(resp.msg)
setTimeout(() => {
location.href = '/platform/workershome/info/mine'
commonUtil.pjaxPush('/platform/workershome/info/mine')
}, 500)
} else {
this.notifyWarning(resp.msg)
@@ -319,7 +319,7 @@ layout("/layouts/platform.html"){
type: 'warning'
}).then(() => {
setTimeout(() => {
location.href = '/platform/workershome/declaration/apply'
commonUtil.pjaxPush('/platform/workershome/declaration/apply')
}, 500)
})
}
@@ -18,7 +18,7 @@ layout("/layouts/platform.html"){
value-format="yyyy">
</el-date-picker>
</search-item>
<search-item label="所属工会">
<el-select @change="doSearch" clearable="true"
filterable="true"
@@ -134,7 +134,7 @@ layout("/layouts/platform.html"){
},
openEdit(row) {
location.href = '/platform/workershome/info/apply?id=' + row.id
commonUtil.pjaxPush('/platform/workershome/info/apply?id=' + row.id)
},
async flushUnits() {
this.$set(this.pageForm, "unitId", null)
@@ -76,7 +76,7 @@ layout("/layouts/platform.html"){
},
onEdit(row) {
window.location.href = '/platform/grassrootsCongress/material/write?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id
commonUtil.pjaxPush('/platform/grassrootsCongress/material/write?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id)
},
onRevoke(row) {
@@ -79,7 +79,7 @@ layout("/layouts/platform.html"){
this.$axios.post('/platform/grassrootsCongress/material/write/save', {data: JSON.stringify(this.formData)}).then(res => {
if (res.code === 0) {
this.$message.success("保存成功")
window.location.href = '/platform/grassrootsCongress/material/mine'
commonUtil.pjaxPush('/platform/grassrootsCongress/material/mine')
}
})
})
@@ -99,7 +99,7 @@ layout("/layouts/platform.html"){
}).then(res => {
if (res.code === 0) {
this.$message.success("提交成功")
window.location.href = '/platform/grassrootsCongress/material/mine'
commonUtil.pjaxPush('/platform/grassrootsCongress/material/mine')
}
})
})
@@ -121,7 +121,7 @@ layout("/layouts/platform.html"){
}).then(res => {
if (res.code === 0) {
this.$message.success("提交成功")
window.location.href = '/platform/grassrootsCongress/material/mine'
commonUtil.pjaxPush('/platform/grassrootsCongress/material/mine')
}
})
})
@@ -79,7 +79,7 @@ layout("/layouts/platform.html"){
},
onEdit(row) {
window.location.href = '/platform/grassrootsCongress/meeting/write?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id
commonUtil.pjaxPush('/platform/grassrootsCongress/meeting/write?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id)
},
onRevoke(row) {
@@ -150,7 +150,7 @@ layout("/layouts/platform.html"){
this.$axios.post('/platform/grassrootsCongress/meeting/write/save', {data: JSON.stringify(this.formData)}).then(res => {
if (res.code === 0) {
this.$message.success("保存成功")
window.location.href = '/platform/grassrootsCongress/meeting/mine'
commonUtil.pjaxPush('/platform/grassrootsCongress/meeting/mine')
}
})
})
@@ -170,7 +170,7 @@ layout("/layouts/platform.html"){
}).then(res => {
if (res.code === 0) {
this.$message.success("提交成功")
window.location.href = '/platform/grassrootsCongress/meeting/mine'
commonUtil.pjaxPush('/platform/grassrootsCongress/meeting/mine')
}
})
})
@@ -192,7 +192,7 @@ layout("/layouts/platform.html"){
}).then(res => {
if (res.code === 0) {
this.$message.success("提交成功")
window.location.href = '/platform/grassrootsCongress/meeting/mine'
commonUtil.pjaxPush('/platform/grassrootsCongress/meeting/mine')
}
})
})
@@ -168,7 +168,7 @@
window.GlobalBroadcastChannel.postMessage({
type: "task-complete"
})
window.location.href = "/platform/proposal/apply/index"
commonUtil.pjaxPush("/platform/proposal/apply/index")
}
})
},
@@ -208,7 +208,7 @@
.then((res) => {
if (res.code === 0) {
this.$message.success(res.msg)
window.location.href = "/platform/proposal/apply/index"
commonUtil.pjaxPush("/platform/proposal/apply/index")
}
})
})
@@ -95,7 +95,7 @@ layout("/layouts/platform.html"){
})
},
openEdit(row) {
window.location.href = '/platform/proposal/write?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id
commonUtil.pjaxPush('/platform/proposal/write?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id)
},
openRevoke(row) {
this.$confirm("您确定要撤销申请吗?", "提示", {
@@ -218,7 +218,7 @@ layout("/layouts/platform.html"){
if (res.code === 0) {
this.$message.success(res.msg)
this.formData = res.data
window.location.href = '/platform/proposal/mine'
commonUtil.pjaxPush('/platform/proposal/mine')
}
})
}
@@ -246,7 +246,7 @@ layout("/layouts/platform.html"){
this.$axios.post('/platform/proposal/write/submit', {info: JSON.stringify(this.formData)}).then(res => {
if (res.code === 0) {
this.$message.success("提交成功")
window.location.href = '/platform/proposal/mine'
commonUtil.pjaxPush('/platform/proposal/mine')
}
})
})
@@ -277,7 +277,7 @@ layout("/layouts/platform.html"){
}).then(res => {
if (res.code === 0) {
this.$message.success("提交成功")
window.location.href = '/platform/proposal/mine'
commonUtil.pjaxPush('/platform/proposal/mine')
}
})
})
@@ -71,7 +71,7 @@ layout("/layouts/platform.html"){
})
},
onEdit(row) {
window.location.href = '/platform/suggestionBox/write?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id
commonUtil.pjaxPush('/platform/suggestionBox/write?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id)
},
onRevoke(row) {
this.$confirm("您确定要撤回吗?", "提示", {
@@ -67,7 +67,7 @@ layout("/layouts/platform.html"){
})
},
onEdit(row) {
window.location.href = '/platform/suggestionBox/write?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id
commonUtil.pjaxPush('/platform/suggestionBox/write?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id)
},
onRevoke(row) {
this.$confirm("您确定要撤回吗?", "提示", {
@@ -77,7 +77,7 @@ layout("/layouts/platform.html"){
this.$axios.post('/platform/suggestionBox/write/save', {data: JSON.stringify(this.formData)}).then(res => {
if (res.code === 0) {
this.$message.success("保存成功")
window.location.href = '/platform/suggestionBox/mine'
commonUtil.pjaxPush('/platform/suggestionBox/mine')
}
})
})
@@ -95,7 +95,7 @@ layout("/layouts/platform.html"){
}).then(res => {
if (res.code === 0) {
this.$message.success("提交成功")
window.location.href = '/platform/suggestionBox/mine'
commonUtil.pjaxPush('/platform/suggestionBox/mine')
}
})
})
@@ -113,7 +113,7 @@ layout("/layouts/platform.html"){
}).then(res => {
if (res.code === 0) {
this.$message.success("提交成功")
window.location.href = '/platform/suggestionBox/mine'
commonUtil.pjaxPush('/platform/suggestionBox/mine')
}
})
})
@@ -280,7 +280,7 @@ layout("/layouts/platform.html"){
this.$axios.post("/platform/condolence/apply/save", { data: JSON.stringify(this.formData) }).then(res => {
if (res.code === 0) {
this.$message.success(res.msg)
window.location.href = "/platform/condolence/mine"
commonUtil.pjaxPush("/platform/condolence/mine")
}
})
})
@@ -298,7 +298,7 @@ layout("/layouts/platform.html"){
}).then(res => {
if (res.code === 0) {
this.$message.success(res.msg)
window.location.href = "/platform/condolence/mine"
commonUtil.pjaxPush("/platform/condolence/mine")
}
})
})
@@ -319,7 +319,7 @@ layout("/layouts/platform.html"){
}).then(res => {
if (res.code === 0) {
this.$message.success(res.msg)
window.location.href = "/platform/condolence/mine"
commonUtil.pjaxPush("/platform/condolence/mine")
}
})
})
@@ -103,7 +103,7 @@ layout("/layouts/platform.html"){
},
methods: {
onAdd() {
window.location.href = '/platform/condolence/apply'
commonUtil.pjaxPush('/platform/condolence/apply')
},
onView(row) {
this.$refs.guava.view(()=>{
@@ -111,7 +111,7 @@ layout("/layouts/platform.html"){
})
},
onEdit(row) {
window.location.href = '/platform/condolence/apply?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id
commonUtil.pjaxPush('/platform/condolence/apply?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id)
},
onRevoke(row) {
this.$confirm("您确定要撤回吗?", "提示", {
@@ -42,8 +42,8 @@ layout("/layouts/platform.html"){
<el-option :key="item.id" :label="item.name" :value="item.id" v-for="item in unitList"></el-option>
</el-select>
</search-item>
<search-item label="捐方式:">
<el-select placeholder="请选择捐方式" v-model="pageForm.payMode" style="width: 100%;"
<search-item label="捐方式:">
<el-select placeholder="请选择捐方式" v-model="pageForm.payMode" style="width: 100%;"
clearable @change="doSearch"
filterable>
<el-option label="微信" value="WeChat"></el-option>
@@ -54,7 +54,7 @@ layout("/layouts/platform.html"){
</el-card>
<el-card shadow="never" class="mt20">
<table-tool label="捐列表">
<table-tool label="捐列表">
<el-button type="primary" size="small" @click="onExport">
<i class="el-icon-download"></i>
导出
@@ -90,10 +90,10 @@ layout("/layouts/platform.html"){
<template #view>
<el-descriptions :column="2" border class="table_fixed">
<el-descriptions-item label="捐项目">
<el-descriptions-item label="捐项目">
{{ viewData.contributionName }}
</el-descriptions-item>
<el-descriptions-item label="捐人工号">
<el-descriptions-item label="捐人工号">
{{ viewData.loginName }}
</el-descriptions-item>
<el-descriptions-item label="姓名">
@@ -111,13 +111,13 @@ layout("/layouts/platform.html"){
<el-descriptions-item label="善款金额">
{{ viewData.money || 0}}元
</el-descriptions-item>
<el-descriptions-item label="捐方式">
<el-descriptions-item label="捐方式">
{{ viewData.payMode === 'WeChat' ? '微信' : '支付宝' }}
</el-descriptions-item>
<el-descriptions-item label="捐时间" :span="2">
<el-descriptions-item label="捐时间" :span="2">
{{ viewData.contributionTime }}
</el-descriptions-item>
<el-descriptions-item label="捐凭证" :span="2">
<el-descriptions-item label="捐凭证" :span="2">
<file-preview v-if="viewData.contributionFiles" complete_result :files="viewData.contributionFiles"></file-preview>
<span v-else>暂无</span>
</el-descriptions-item>
@@ -136,15 +136,15 @@ layout("/layouts/platform.html"){
data() {
return {
tableColumns: [
{prop: 'contributionName', label: '捐项目'},
{prop: 'loginName', label: '捐人工号'},
{prop: 'contributionName', label: '捐项目'},
{prop: 'loginName', label: '捐人工号'},
{prop: 'userName', label: '姓名'},
{prop: 'mobile', label: '联系方式'},
{prop: 'unionName', label: '所属工会'},
{prop: 'unitName', label: '所属单位'},
{prop: 'money', label: '善款金额'},
{prop: 'payMode', label: '捐方式'},
{prop: 'contributionTime', label: '捐时间'},
{prop: 'payMode', label: '捐方式'},
{prop: 'contributionTime', label: '捐时间'},
],
contributionOptions: [],
unionList: [],
@@ -6,8 +6,8 @@ const basicForm = {
<el-input type="text" v-model="formData.contributionName" maxlength="50"
placeholder="请填写项目名称"></el-input>
</el-form-item>
<el-form-item label="所属捐专题" prop="contributionTypeCode">
<el-select placeholder="所属捐专题" v-model="formData.contributionTypeCode"
<el-form-item label="所属捐专题" prop="contributionTypeCode">
<el-select placeholder="所属捐专题" v-model="formData.contributionTypeCode"
style="width: 100%;"
clearable
filterable>
@@ -16,7 +16,7 @@ const basicForm = {
:value="item.typeCode"></el-option>
</el-select>
</el-form-item>
<el-form-item label="捐时间" prop="contributionTime">
<el-form-item label="捐时间" prop="contributionTime">
<el-date-picker
style="width: 100%;"
v-model="formData.contributionTime"
@@ -27,16 +27,16 @@ const basicForm = {
end-placeholder="请选择结束日期">
</el-date-picker>
</el-form-item>
<el-form-item label="捐模式" prop="contributionMode">
<el-form-item label="捐模式" prop="contributionMode">
<el-radio-group v-model="formData.contributionMode">
<el-radio-button :label="1">水滴筹</el-radio-button>
<el-radio-button :label="2">一日捐</el-radio-button>
</el-radio-group>
</el-form-item>
<el-form-item label="捐链接" prop="contributionUrl"
<el-form-item label="捐链接" prop="contributionUrl"
v-if="formData.contributionMode === 1">
<el-input type="text" v-model="formData.contributionUrl" maxlength="50"
placeholder="请填写捐链接"></el-input>
placeholder="请填写捐链接"></el-input>
</el-form-item>
<el-form-item label="是否开启" prop="isContributionEnable">
<el-switch v-model="formData.isContributionEnable" active-color="#13ce66"
@@ -5,16 +5,16 @@ const info = {
<el-descriptions-item label="项目名称">
{{ viewData.contributionName }}
</el-descriptions-item>
<el-descriptions-item label="所属捐专题">
<el-descriptions-item label="所属捐专题">
{{ viewData.typeName }}
</el-descriptions-item>
<el-descriptions-item label="捐时间">
<el-descriptions-item label="捐时间">
{{ viewData.contributionStartTime + ' 至 ' + viewData.contributionEndTime }}
</el-descriptions-item>
<el-descriptions-item label="捐模式">
<el-descriptions-item label="捐模式">
{{ viewData.contributionMode === 1 ? '水滴筹' : '一日捐' }}
</el-descriptions-item>
<el-descriptions-item label="捐链接" :span="2">
<el-descriptions-item label="捐链接" :span="2">
{{ viewData.contributionUrl || '暂无' }}
</el-descriptions-item>
<el-descriptions-item label="项目介绍" :span="2">
@@ -38,7 +38,7 @@ layout("/layouts/platform.html"){
</el-card>
<el-card shadow="never" class="mt20">
<table-tool label="捐列表"></table-tool>
<table-tool label="捐列表"></table-tool>
<el-table :data="tableData" @sort-change="pageOrder" :size="tableSize"
row-key="id" show-summary :summary-method="getSummaries"
max-height="600">
@@ -73,9 +73,9 @@ layout("/layouts/platform.html"){
tableColumns: [
{prop: 'unionCode', label: '工会编码'},
{prop: 'name', label: '工会名称'},
{prop: 'contributionUserNum', label: '捐人数'},
{prop: 'contributionNum', label: '捐多少笔'},
{prop: 'money', label: '捐总额(元)'},
{prop: 'contributionUserNum', label: '捐人数'},
{prop: 'contributionNum', label: '捐多少笔'},
{prop: 'money', label: '捐总额(元)'},
],
contributionOptions: [],
unionList: [],
@@ -26,7 +26,7 @@ layout("/layouts/platform.html"){
</el-select>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item label="受补助人">
<template v-if="formData.mode == 2">
<el-select :remote-method="queryRecipients"
@@ -64,8 +64,8 @@ layout("/layouts/platform.html"){
</el-date-picker>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item label="所属单位">
<el-form-item prop="unitName">
<el-input maxlength="50" clearable placeholder="所在单位"
@@ -84,8 +84,8 @@ layout("/layouts/platform.html"){
v-model="formData.officialCapacity"></el-input>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item label="手机号码">
<el-form-item prop="mobile">
<el-input maxlength="11" clearable placeholder="请填写手机号码"
@@ -98,8 +98,8 @@ layout("/layouts/platform.html"){
v-model="formData.idCard" maxlength="18"></el-input>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item label="本人月收入">
<el-form-item prop="monthlyIncome">
<el-input-number clearable
@@ -117,8 +117,8 @@ layout("/layouts/platform.html"){
v-model="formData.bankCardNum"></el-input>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item label="困难类型" :span="3">
<el-form-item prop="subsidyStandards">
<el-select v-model="formData.subsidyStandards" style="width: 100%">
@@ -128,8 +128,8 @@ layout("/layouts/platform.html"){
</el-select>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item label="申请原因" :span="3">
<el-form-item prop="reason">
<el-input maxlength="500" :autosize="{ minRows: 5, maxRows: 10}"
@@ -140,8 +140,8 @@ layout("/layouts/platform.html"){
type="textarea"></el-input>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item label="家庭成员经济收入" :span="3">
<el-form-item prop="familyList">
<el-table :data="formData.familyList" border max-height="500" size="mini" style="width: 100%">
@@ -200,8 +200,8 @@ layout("/layouts/platform.html"){
</el-table>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item label="附件" :span="3">
<el-form-item prop="files">
<file-upload :value.sync="formData.files"
@@ -210,8 +210,8 @@ layout("/layouts/platform.html"){
complete_result></file-upload>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item label="签字" :span="3">
<el-form-item prop="sign">
<pc-signature v-model="formData.sign"></pc-signature>
@@ -219,7 +219,7 @@ layout("/layouts/platform.html"){
</el-descriptions-item>
</el-descriptions>
</el-form>
<el-row type="flex" justify="end" class="mt20">
<el-button type="primary" plain @click="onSave">保存</el-button>
<el-button type="primary" @click="onSubmit" v-if="!taskId">提交</el-button>
@@ -263,7 +263,7 @@ layout("/layouts/platform.html"){
reason: [{required: true, message: '必填', trigger: ['blur', 'change']}],
sign: [{required: true, message: '必填', trigger: ['blur', 'change']}]
},
// 替他人申请相关
subsidizedList: []
}
@@ -279,12 +279,12 @@ layout("/layouts/platform.html"){
this.$axios.post('/platform/difficultHelp/apply/save', {data: JSON.stringify(this.formData)}).then(res => {
if (res.code === 0) {
this.$message.success("保存成功")
window.location.href = '/platform/difficultHelp/mine'
commonUtil.pjaxPush('/platform/difficultHelp/mine')
}
})
})
},
// 提交
onSubmit() {
this.$confirm("您确定要提交吗?", "提示", {
@@ -297,12 +297,12 @@ layout("/layouts/platform.html"){
}).then(res => {
if (res.code === 0) {
this.$message.success("提交成功")
window.location.href = '/platform/difficultHelp/mine'
commonUtil.pjaxPush('/platform/difficultHelp/mine')
}
})
})
},
onFinishTask() {
this.$confirm("您确定要提交吗?", "提示", {
confirmButtonText: "确定",
@@ -315,12 +315,12 @@ layout("/layouts/platform.html"){
}).then(res => {
if (res.code === 0) {
this.$message.success("提交成功")
window.location.href = '/platform/difficultHelp/mine'
commonUtil.pjaxPush('/platform/difficultHelp/mine')
}
})
})
},
// 查询受助人
queryRecipients(key) {
this.$axios.get("/platform/difficultHelp/apply/queryRecipients", {
@@ -412,12 +412,12 @@ layout("/layouts/platform.html"){
const format15 = /^\d{15}$/;
// 校验外国人永久居留身份证号
const format15Foreign = /^[a-zA-Z]{3}[0-9]{4}[0-9]{2}((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|3[0-1])|(04|06|09|11)(0[1-9]|[1-2][0-9]|30)|02(0[1-9]|[1-2][0-9]))[0-9]{2}$/;
// 校验格式
if (!(format18.test(idCard) || format15.test(idCard) || format15Foreign.test(idCard))) {
return { status: 0, msg: '身份证号码格式不正确' };
}
// 校验出生日期
let year, month, day;
if (idCard.length === 18) {
@@ -431,12 +431,12 @@ layout("/layouts/platform.html"){
} else {
return { status: 0, msg: '身份证号码格式不正确' };
}
const date = new Date(year, month - 1, day);
if (date.getFullYear() !== parseInt(year, 10) || date.getMonth() + 1 !== parseInt(month, 10) || date.getDate() !== parseInt(day, 10)) {
return { status: 0, msg: '身份证出生日期不正确' };
}
// 校验18位身份证号的校验码
if (idCard.length === 18) {
const coefficients = [7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2];
@@ -450,7 +450,7 @@ layout("/layouts/platform.html"){
return { status: 0, msg: '身份证校验码不正确' };
}
}
return { status: 1, msg: '校验通过' };
},
/**
@@ -14,11 +14,11 @@ layout("/layouts/platform.html"){
value-format="yyyy">
</el-date-picker>
</search-item>
<search-item label="受助人">
<el-input placeholder="请输入受助人工号或姓名" clearable v-model="pageForm.searchKeyword"></el-input>
</search-item>
<search-item label="所属工会">
<el-select @change="flushUnits" @clear="flushUnits" clearable
filterable
@@ -29,7 +29,7 @@ layout("/layouts/platform.html"){
v-for="item in unions"></el-option>
</el-select>
</search-item>
<search-item label="所属单位">
<el-select clearable filterable placeholder="所属单位"
style="width: 100%;" v-model="pageForm.unitId">
@@ -39,12 +39,12 @@ layout("/layouts/platform.html"){
</search-item>
</search>
</el-card>
<el-card shadow="never" class="mt10">
<table-tool label="申请记录">
<el-button size="small" type="primary" @click="onApply">帮扶申请</el-button>
</table-tool>
<el-table :data="tableData" :size="tableSize" @sort-change="pageOrder"
ref="table" row-key="id" style="width: 100%">
<el-table-column :index="indexMethod" header-align="center" label="序号"
@@ -78,7 +78,7 @@ layout("/layouts/platform.html"){
</el-table>
<!--#include("/layouts/pagination.html"){}#-->
</el-card>
<template #view>
<info ref="infoRef"></info>
</template>
@@ -88,7 +88,7 @@ layout("/layouts/platform.html"){
<script>
<!--#include("../common/info.js"){}#-->
new Vue({
el: "#app",
mixins: [initTableMixins],
@@ -117,7 +117,7 @@ layout("/layouts/platform.html"){
},
methods: {
onApply(){
window.location.href = '/platform/difficultHelp/apply'
commonUtil.pjaxPush('/platform/difficultHelp/apply')
},
openView(row) {
this.$refs.guava.view(() => {
@@ -125,8 +125,8 @@ layout("/layouts/platform.html"){
})
},
onEdit(row) {
window.location.href = '/platform/difficultHelp/apply?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id
},
commonUtil.pjaxPush('/platform/difficultHelp/apply?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id)
},
onRevoke(row) {
this.$confirm("您确定要撤回吗?", "提示", {
confirmButtonText: "确定",
@@ -14,11 +14,11 @@ layout("/layouts/platform.html"){
value-format="yyyy">
</el-date-picker>
</search-item>
<search-item label="受助人">
<el-input placeholder="请输入受助人工号或姓名" clearable v-model="pageForm.searchKeyword"></el-input>
</search-item>
<search-item label="所属工会">
<el-select @change="flushUnits" @clear="flushUnits" clearable
filterable
@@ -29,7 +29,7 @@ layout("/layouts/platform.html"){
v-for="item in unions"></el-option>
</el-select>
</search-item>
<search-item label="所属单位">
<el-select clearable filterable placeholder="所属单位"
style="width: 100%;" v-model="pageForm.unitId">
@@ -39,11 +39,11 @@ layout("/layouts/platform.html"){
</search-item>
</search>
</el-card>
<el-card shadow="never" class="mt10">
<table-tool label="数据列表">
</table-tool>
<el-table :data="tableData" :size="tableSize" @sort-change="pageOrder"
ref="table" row-key="id" style="width: 100%">
<el-table-column :index="indexMethod" header-align="center" label="序号"
@@ -72,7 +72,7 @@ layout("/layouts/platform.html"){
</el-table>
<!--#include("/layouts/pagination.html"){}#-->
</el-card>
<template #view>
<info ref="infoRef"></info>
</template>
@@ -82,7 +82,7 @@ layout("/layouts/platform.html"){
<script>
<!--#include("../common/info.js"){}#-->
new Vue({
el: "#app",
mixins: [initTableMixins],
@@ -116,8 +116,8 @@ layout("/layouts/platform.html"){
})
},
onEdit(row) {
window.location.href = '/platform/difficultHelp/apply?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id
},
commonUtil.pjaxPush('/platform/difficultHelp/apply?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id)
},
onRevoke(row) {
this.$confirm("您确定要撤回吗?", "提示", {
confirmButtonText: "确定",
@@ -120,8 +120,16 @@ layout("/layouts/platform.html"){
placeholder="请输入办证机关"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="奖励金额" prop="bonus">
<el-input type="text" v-model="formData.bonus"
placeholder="请输入奖励金额"></el-input>
</el-form-item>
</el-col>
</el-row>
<!-- 以下项目保持单独一行 -->
<el-form-item prop="honorFiles" label="独生子女父母光荣证">
<file-upload :upload_number="5" :value.sync="formData.honorFiles"
@@ -168,23 +176,9 @@ layout("/layouts/platform.html"){
taskId: GetQueryString("taskId"),
formData: {},
formRules: {
userName: [{ required: true, message: '职工姓名不能为空', trigger: 'blur' }],
sex: [{ required: true, message: '性别不能为空', trigger: 'blur' }],
birthday: [{ required: true, message: '出生年月不能为空', trigger: 'blur' }],
unitName: [{ required: true, message: '原工作单位不能为空', trigger: 'blur' }],
retireTime: [{ required: true, message: '请选择退休时间', trigger: 'change' }],
loverName: [{ required: true, message: '请输入爱人姓名', trigger: 'blur' }],
loverSex: [{ required: true, message: '请选择爱人性别', trigger: 'change' }],
loverUnitName: [{ required: true, message: '请输入爱人工作单位', trigger: 'blur' }],
marryTime: [{ required: true, message: '请选择结婚日期', trigger: 'change' }],
childrenBirthday: [{ required: true, message: '请选择子女出生日', trigger: 'change' }],
getCertificateTime: [{ required: true, message: '请选择领独生子女证日', trigger: 'change' }],
childrenGraceNumber: [{ required: true, message: '请输入独生子女光荣证号', trigger: 'blur' }],
office: [{ required: true, message: '请输入办证机关', trigger: 'blur' }],
honorFiles: [{ required: true, message: '请上传独生子女父母光荣证', trigger: 'change' }],
retireFiles: [{ required: true, message: '请上传退休证', trigger: 'change' }],
sign: [{ required: true, message: '请签字', trigger: 'change' }],
declarationAgreed: [{ required: true, message: '请勾选申报理由', trigger: 'change', type: 'enum', enum: [true] }]
declarationAgreed: [
{ required: true, message: '请勾选申报理由', trigger: 'change' }
]
},
}
},
@@ -200,106 +194,59 @@ layout("/layouts/platform.html"){
this.$axios.post('/platform/dsznfmtx/apply/save', {data: JSON.stringify(this.formData)}).then(res => {
if (res.code === 0) {
this.$message.success(res.msg)
window.location.href = '/platform/dsznfmtx/mine/index'
commonUtil.pjaxPush('/platform/dsznfmtx/mine/index')
}
})
})
},
// 提交验证
validateBeforeSubmit() {
return new Promise((resolve) => {
this.$refs.formRef.validate((valid) => {
if (valid) {
resolve(true);
} else {
this.$message.error('请完善表单信息并勾选申报理由');
resolve(false);
}
});
});
},
// 添加检查是否为退休人员的方法
async checkRetirementStatus() {
try {
const resp = await this.$axios.post('/platform/dsznfmtx/apply/checkRetirementStatus');
// 如果返回code为0且data为true,表示用户是退休人员
if (resp.code === 0 && resp.data === true) {
return true;
}
return false;
} catch (error) {
console.error('检查退休状态失败:', error);
return false;
}
},
// 检查用户是否已申请过
async checkUserApplication() {
try {
const resp = await this.$axios.post('/platform/dsznfmtx/apply/checkUserApplied');
// 如果返回code为0且data为true,表示用户已申请过
if (resp.code === 0 && resp.data === true) {
return true;
}
return false;
} catch (error) {
console.error('检查用户申请状态失败:', error);
return false;
}
},
// 提交
async onSubmit() {
// 检查是否为退休人员
const isRetired = await this.checkRetirementStatus();
if (!isRetired) {
this.$message.warning('您不是退休人员,无法申请此项福利');
return;
}
if (!this.bizId) {
const isApplied = await this.checkUserApplication();
if (isApplied) {
this.$message.warning('您已经提交过申请,不能重复申请');
return;
onSubmit() {
this.$refs.formRef.validate((valid) => {
if (valid) {
this.$confirm("您确定要提交吗?", "提示", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning"
}).then(() => {
this.$axios.post('/platform/dsznfmtx/apply/submit', {
data: JSON.stringify(this.formData)
}).then(res => {
if (res.code === 0) {
this.$message.success("提交成功")
commonUtil.pjaxPush('/platform/dsznfmtx/mine/index')
}
})
})
} else {
this.$message.error('请完善表单信息并勾选申报理由');
return false;
}
}
const isValid = await this.validateBeforeSubmit();
if (!isValid) return;
this.$confirm("您确定要提交吗?", "提示", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning"
}).then(() => {
this.$axios.post('/platform/dsznfmtx/apply/submit', {
data: JSON.stringify(this.formData)
}).then(res => {
if (res.code === 0) {
this.$message.success("提交成功")
window.location.href = '/platform/dsznfmtx/mine/index'
}
})
})
});
},
// 再次提交
async onFinishTask() {
const isValid = await this.validateBeforeSubmit();
if (!isValid) return;
this.$confirm("您确定要提交吗?", "提示", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning"
}).then(() => {
this.$axios.post('/platform/dsznfmtx/apply/submitAgain', {
data: JSON.stringify(this.formData),
taskId: GetQueryString("taskId")
}).then(res => {
if (res.code === 0) {
this.$message.success("提交成功")
window.location.href = '/platform/dsznfmtx/mine/index'
}
})
})
onFinishTask() {
this.$refs.formRef.validate((valid) => {
if (valid) {
this.$confirm("您确定要提交吗?", "提示", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning"
}).then(() => {
this.$axios.post('/platform/dsznfmtx/apply/submitAgain', {
data: JSON.stringify(this.formData),
taskId: GetQueryString("taskId")
}).then(res => {
if (res.code === 0) {
this.$message.success("提交成功")
commonUtil.pjaxPush('/platform/dsznfmtx/mine/index')
}
})
})
} else {
this.$message.error('请完善表单信息并勾选申报理由');
return false;
}
});
},
async findOne(id) {
const resp = await $.get('/platform/dsznfmtx/apply/findOne', {id})
@@ -325,7 +272,9 @@ layout("/layouts/platform.html"){
sex: sex,
birthday: birthday,
}
}
}
},
created() {
@@ -335,7 +284,6 @@ layout("/layouts/platform.html"){
</script>
<!--#
}
#-->
@@ -75,8 +75,7 @@ layout("/layouts/platform.html"){
})
},
onEdit(row) {
//commonUtil.pjaxPush('/platform/dsznfmtx/apply/index', {taskId: (row.startTaskId || ''), bizId: row.id})
window.location.href = '/platform/dsznfmtx/apply/index?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id
commonUtil.pjaxPush('/platform/dsznfmtx/apply/index', {taskId: (row.startTaskId || ''), bizId: row.id})
},
onRevoke(row) {
this.$confirm("您确定要撤回吗?", "提示", {
@@ -102,7 +102,7 @@ const basicForm = {
cancelButtonText: "取消",
type: "warning"
}).then(async () => {
const resp = await this.$axios.post("/platform/legal/apply/onSubmit", this.formData)
const resp = await this.$axios.post("/platform/legal/apply/submit", this.formData)
if (resp.code === 0) {
this.$message.success(resp.msg)
this.$emit('refresh')
@@ -1,10 +1,6 @@
<!--#
layout("/layouts/platform.html"){
#-->
<link rel="stylesheet" href="${base!}/assets/platform/plugins/fullcalendar/fullcalendar.css">
<script src="${base!}/assets/platform/plugins/fullcalendar/fullcalendar.min.js"></script>
<style>
#calendar {
max-width: 1200px;
@@ -1,10 +1,6 @@
<!--#
layout("/layouts/platform.html"){
#-->
<link rel="stylesheet" href="${base!}/assets/platform/plugins/fullcalendar/fullcalendar.css">
<script src="${base!}/assets/platform/plugins/fullcalendar/fullcalendar.min.js"></script>
<style>
#calendar {
max-width: 1200px;
@@ -77,7 +77,7 @@ layout("/layouts/platform.html"){
{prop: 'appointmentUserName', label: '姓名'},
{prop: 'appointmentLoginName', label: '工号'},
{prop: 'appointmentUnitName', label: '单位'},
{prop: 'doctorUserName', label: '心理咨询师'},
{prop: 'doctorUserName', label: '咨询师'},
],
}
},
@@ -88,13 +88,13 @@ layout("/layouts/platform.html"){
})
},
onDelete(row) {
this.$confirm("您确定要删除吗, 是否继续?", "提示", {
this.$confirm("您确定要删除吗", "提示", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning"
})
.then(() => {
this.$axios.post("/platform/legal/list/onDelete", { id: row.id }).then((res) => {
this.$axios.post("/platform/legal/list/delete", { id: row.id }).then((res) => {
if (res.code === 0) {
this.$message.success(res.msg)
this.pageData()
@@ -18,7 +18,7 @@ const basicForm = {
<el-form-item>
<div class="text-primary">
<i class="el-icon-warning"></i>
提示不会发布您的个人隐私信息您咨询的内容只有心理咨询师可查看并回复
提示不会发布您的个人隐私信息您咨询的内容只有咨询师可查看并回复
</div>
</el-form-item>
</el-form>
@@ -52,7 +52,7 @@ const basicForm = {
cancelButtonText: "取消",
type: "warning"
}).then(async () => {
const resp = await this.$axios.post("/platform/legal/onlinePost/onSubmit", this.formData)
const resp = await this.$axios.post("/platform/legal/onlinePost/submit", this.formData)
if (resp.code === 0) {
this.$message.success(resp.msg)
this.$emit('refresh')
@@ -126,13 +126,13 @@ layout("/layouts/platform.html"){
})
},
onDelete(row) {
this.$confirm("您确定要删除吗, 是否继续?", "提示", {
this.$confirm("您确定要删除吗", "提示", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning"
})
.then(() => {
this.$axios.post("/platform/legal/onlinePost/onDelete", { id: row.id }).then((res) => {
this.$axios.post("/platform/legal/onlinePost/delete", { id: row.id }).then((res) => {
if (res.code === 0) {
this.$message.success(res.msg)
this.pageData()
@@ -56,17 +56,17 @@ const info = {
},
},
style: /*language=CSS*/ `
.el-timeline-item {
/deep/ .el-timeline-item {
padding-bottom: 20px;
}
.el-timeline-item__wrapper {
/deep/ .el-timeline-item__wrapper {
padding-left: 28px;
top: -3px;
}
.el-timeline-item__tail {
/deep/ .el-timeline-item__tail {
left: 4px;
}
.user-face{
/deep/ .user-face{
display: flex;
}
`
@@ -51,7 +51,7 @@ const basicForm = {
cancelButtonText: "取消",
type: "warning"
}).then(async () => {
const resp = await this.$axios.post("/platform/legal/onlineReply/onSubmit", this.formData)
const resp = await this.$axios.post("/platform/legal/onlineReply/submit", this.formData)
if (resp.code === 0) {
this.$message.success(resp.msg)
this.$emit('refresh')
@@ -220,7 +220,7 @@ layout("/layouts/platform.html"){
this.$axios.post('/platform/maternityLeave/apply/save', {data: JSON.stringify(this.formData)}).then(res => {
if (res.code === 0) {
this.$message.success(res.msg)
window.location.href = '/platform/maternityLeave/mine/index'
commonUtil.pjaxPush('/platform/maternityLeave/mine/index')
}
})
})
@@ -253,7 +253,7 @@ layout("/layouts/platform.html"){
}).then(res => {
if (res.code === 0) {
this.$message.success("提交成功")
window.location.href = '/platform/maternityLeave/mine/index'
commonUtil.pjaxPush('/platform/maternityLeave/mine/index')
}
})
})
@@ -274,7 +274,7 @@ layout("/layouts/platform.html"){
}).then(res => {
if (res.code === 0) {
this.$message.success("提交成功")
window.location.href = '/platform/maternityLeave/mine/index'
commonUtil.pjaxPush('/platform/maternityLeave/mine/index')
}
})
})
@@ -75,7 +75,7 @@ layout("/layouts/platform.html"){
})
},
onEdit(row) {
window.location.href = '/platform/maternityLeave/apply/index?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id
commonUtil.pjaxPush('/platform/maternityLeave/apply/index?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id)
},
onRevoke(row) {
this.$confirm("您确定要撤回吗?", "提示", {
@@ -102,7 +102,7 @@ const basicForm = {
cancelButtonText: "取消",
type: "warning"
}).then(async () => {
const resp = await this.$axios.post("/platform/psychology/apply/onSubmit", this.formData)
const resp = await this.$axios.post("/platform/psychology/apply/submit", this.formData)
if (resp.code === 0) {
this.$message.success(resp.msg)
this.$emit('refresh')
@@ -1,10 +1,6 @@
<!--#
layout("/layouts/platform.html"){
#-->
<link rel="stylesheet" href="${base!}/assets/platform/plugins/fullcalendar/fullcalendar.css">
<script src="${base!}/assets/platform/plugins/fullcalendar/fullcalendar.min.js"></script>
<style>
#calendar {
max-width: 1200px;
@@ -1,10 +1,6 @@
<!--#
layout("/layouts/platform.html"){
#-->
<link rel="stylesheet" href="${base!}/assets/platform/plugins/fullcalendar/fullcalendar.css">
<script src="${base!}/assets/platform/plugins/fullcalendar/fullcalendar.min.js"></script>
<style>
#calendar {
max-width: 1200px;
@@ -77,7 +77,7 @@ layout("/layouts/platform.html"){
{prop: 'appointmentUserName', label: '姓名'},
{prop: 'appointmentLoginName', label: '工号'},
{prop: 'appointmentUnitName', label: '单位'},
{prop: 'doctorUserName', label: '心理咨询师'},
{prop: 'doctorUserName', label: '咨询师'},
],
}
},
@@ -88,13 +88,13 @@ layout("/layouts/platform.html"){
})
},
onDelete(row) {
this.$confirm("您确定要删除吗, 是否继续?", "提示", {
this.$confirm("您确定要删除吗", "提示", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning"
})
.then(() => {
this.$axios.post("/platform/psychology/list/onDelete", { id: row.id }).then((res) => {
this.$axios.post("/platform/psychology/list/delete", { id: row.id }).then((res) => {
if (res.code === 0) {
this.$message.success(res.msg)
this.pageData()
@@ -18,7 +18,7 @@ const basicForm = {
<el-form-item>
<div class="text-primary">
<i class="el-icon-warning"></i>
提示不会发布您的个人隐私信息您咨询的内容只有心理咨询师可查看并回复
提示不会发布您的个人隐私信息您咨询的内容只有咨询师可查看并回复
</div>
</el-form-item>
</el-form>
@@ -52,7 +52,7 @@ const basicForm = {
cancelButtonText: "取消",
type: "warning"
}).then(async () => {
const resp = await this.$axios.post("/platform/psychology/onlinePost/onSubmit", this.formData)
const resp = await this.$axios.post("/platform/psychology/onlinePost/submit", this.formData)
if (resp.code === 0) {
this.$message.success(resp.msg)
this.$emit('refresh')
@@ -126,13 +126,13 @@ layout("/layouts/platform.html"){
})
},
onDelete(row) {
this.$confirm("您确定要删除吗, 是否继续?", "提示", {
this.$confirm("您确定要删除吗", "提示", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning"
})
.then(() => {
this.$axios.post("/platform/psychology/onlinePost/onDelete", { id: row.id }).then((res) => {
this.$axios.post("/platform/psychology/onlinePost/delete", { id: row.id }).then((res) => {
if (res.code === 0) {
this.$message.success(res.msg)
this.pageData()
@@ -56,17 +56,17 @@ const info = {
},
},
style: /*language=CSS*/ `
.el-timeline-item {
/deep/ .el-timeline-item {
padding-bottom: 20px;
}
.el-timeline-item__wrapper {
/deep/ .el-timeline-item__wrapper {
padding-left: 28px;
top: -3px;
}
.el-timeline-item__tail {
/deep/ .el-timeline-item__tail {
left: 4px;
}
.user-face{
/deep/ .user-face{
display: flex;
}
`
@@ -51,7 +51,7 @@ const basicForm = {
cancelButtonText: "取消",
type: "warning"
}).then(async () => {
const resp = await this.$axios.post("/platform/psychology/onlineReply/onSubmit", this.formData)
const resp = await this.$axios.post("/platform/psychology/onlineReply/submit", this.formData)
if (resp.code === 0) {
this.$message.success(resp.msg)
this.$emit('refresh')
@@ -172,7 +172,7 @@ layout("/layouts/platform.html"){
return age >= 0 ? age : '未出生';
},
openEdit(row) {
window.location.href = '/platform/childManage/write/index?bizId=' + row.id + '&manage=1'
commonUtil.pjaxPush('/platform/childManage/write/index?bizId=' + row.id + '&manage=1')
},
doDelete(id) {
this.$confirm("您确定要删除吗?", "提示", {
@@ -119,7 +119,7 @@ layout("/layouts/platform.html"){
return age >= 0 ? age : '未出生';
},
openEdit(row) {
window.location.href = '/platform/childManage/write/index?bizId=' + row.id
commonUtil.pjaxPush('/platform/childManage/write/index?bizId=' + row.id)
},
doDelete(id) {
this.$confirm("您确定要删除吗?", "提示", {
@@ -309,9 +309,9 @@ layout("/layouts/platform.html"){
if (res.code === 0) {
this.$message.success(res.msg)
if (GetQueryString('manage') === '1') {
window.location.href = '/platform/childManage/manage/index'
commonUtil.pjaxPush('/platform/childManage/manage/index')
}else {
window.location.href = '/platform/childManage/mine/index'
commonUtil.pjaxPush('/platform/childManage/mine/index')
}
}
})
@@ -6,7 +6,7 @@ layout("/layouts/platform.html"){
<el-card shadow="never">
<common-query ref="commonQueryRef" @search="search"></common-query>
</el-card>
<el-card shadow="never" class="mt10">
<table-tool label="申请列表">
<el-button size="small" type="primary" @click="onApply">申请入会</el-button>
@@ -37,7 +37,7 @@ layout("/layouts/platform.html"){
<el-image v-if="row.sign" :src="row.sign" style="height: 60px"></el-image>
<el-tag type="warning" v-else>暂无</el-tag>
</template>
<template scope="{row}" v-else-if="column.prop=='instanceState'">
<enum-tag :value="row.instanceState" name="ProcessInstanceStateEnum" label_key="message"
size="small"></enum-tag>
@@ -64,7 +64,7 @@ layout("/layouts/platform.html"){
</el-table>
<!--#include("/layouts/pagination.html"){}#-->
</el-card>
<template #view>
<info ref="info"></info>
</template>
@@ -74,7 +74,7 @@ layout("/layouts/platform.html"){
<script>
<!--#include("../common/info.js"){}#-->
<!--#include("../common/commonQuery.js"){}#-->
new Vue({
el: "#app",
store,
@@ -103,7 +103,7 @@ layout("/layouts/platform.html"){
},
methods: {
onApply() {
window.location.href = '/platform/member/apply/submit'
commonUtil.pjaxPush('/platform/member/apply/submit')
},
openView(row) {
this.$refs.guava.view(() => {
@@ -111,8 +111,8 @@ layout("/layouts/platform.html"){
})
},
onEdit(row) {
window.location.href = '/platform/member/apply/submit?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id
},
commonUtil.pjaxPush('/platform/member/apply/submit?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id)
},
onRevoke(row) {
this.$confirm("您确定要撤回吗?", "提示", {
confirmButtonText: "确定",
@@ -24,7 +24,7 @@ layout("/layouts/platform.html"){
</el-radio-group>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item label="民族">
<el-form-item prop="nation">
<dict-select style="width: 100%" placeholder="请选择民族" v-model="formData.nation"
@@ -45,8 +45,8 @@ layout("/layouts/platform.html"){
code="USER_POLITICAL"></dict-select>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item label="学历">
<el-form-item prop="education">
<dict-select style="width: 100%" placeholder="请选择学历" v-model="formData.education"
@@ -65,7 +65,7 @@ layout("/layouts/platform.html"){
maxlength="50"></el-input>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item label="工作单位">
<el-form-item prop="unitId">
<el-select clearable filterable placeholder="请选择工作单位" style="width: 100%"
@@ -87,8 +87,8 @@ layout("/layouts/platform.html"){
code="USER_CAMPUS"></dict-select>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item label="在职状态">
<el-form-item prop="userState">
<dict-select v-model="formData.userState" code="USER_STATE"
@@ -102,7 +102,7 @@ layout("/layouts/platform.html"){
</el-form-item>
</el-descriptions-item>
<el-descriptions-item></el-descriptions-item>
<el-descriptions-item label="身份证号码">
<el-form-item prop="idCard">
<el-input v-model="formData.idCard" disabled placeholder="请输入身份证号码" maxlength="18"></el-input>
@@ -118,8 +118,8 @@ layout("/layouts/platform.html"){
<el-input v-model="formData.email" placeholder="请输入电子邮箱" maxlength="50"></el-input>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item label="家庭主要成员" :span="3">
<el-form-item prop="families">
<el-table :data="formData.families" border size="small">
@@ -164,13 +164,13 @@ layout("/layouts/platform.html"){
</el-table>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item label="个人简况" :span="3">
<el-form-item prop="personalData">
<text-editor v-model="formData.personalData"></text-editor>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item label="入会意愿" :span="3">
<el-form-item prop="isVoluntary">
<el-checkbox
@@ -190,7 +190,7 @@ layout("/layouts/platform.html"){
</el-checkbox>
</el-form-item>
</el-descriptions-item>
<!-- <el-descriptions-item label="签字" :span="3">-->
<!-- <el-form-item prop="sign">-->
<!-- <pc-signature v-model="formData.sign"></pc-signature>-->
@@ -297,7 +297,7 @@ layout("/layouts/platform.html"){
this.$axios.post('/platform/member/apply/submit/save', {data: JSON.stringify(this.formData)}).then(res => {
if (res.code === 0) {
this.$message.success(res.msg)
window.location.href = '/platform/member/apply/mine'
commonUtil.pjaxPush('/platform/member/apply/mine')
}
})
})
@@ -315,7 +315,7 @@ layout("/layouts/platform.html"){
}).then(res => {
if (res.code === 0) {
this.$message.success(res.msg)
window.location.href = '/platform/member/apply/mine'
commonUtil.pjaxPush('/platform/member/apply/mine')
}
})
})
@@ -334,7 +334,7 @@ layout("/layouts/platform.html"){
}).then(res => {
if (res.code === 0) {
this.$message.success(res.msg)
window.location.href = '/platform/member/apply/mine'
commonUtil.pjaxPush('/platform/member/apply/mine')
}
})
})
@@ -351,7 +351,7 @@ layout("/layouts/platform.html"){
} else {
user = this.$store.state.user
}
if (this.id) {
const res = await this.$axios.post("/platform/member/apply/submit/findApplyById", { id: this.id })
debugger
@@ -385,7 +385,7 @@ layout("/layouts/platform.html"){
families,
personalData
} = user
this.$set(this.formData, "userId", id)
this.$set(this.formData, "username", username)
this.$set(this.formData, "loginname", loginname)
@@ -404,7 +404,7 @@ layout("/layouts/platform.html"){
this.$set(this.formData, "unitId", unit ? unit.id : unitId)
this.$set(this.formData, "unionName", union ? union.name : unionName)
this.$set(this.formData, "unionId", union ? union.id : unionId)
this.$set(this.formData, "mobile", mobile)
this.$set(this.formData, "email", email)
this.$set(this.formData, "families", families ? families : [])
@@ -90,8 +90,8 @@ layout("/layouts/platform.html"){
})
},
onEdit(row) {
window.location.href = '/platform/member/change/apply?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id
},
commonUtil.pjaxPush('/platform/member/change/apply?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id)
},
onRevoke(row) {
this.$confirm("您确定要撤回吗?", "提示", {
confirmButtonText: "确定",
@@ -24,7 +24,7 @@ layout("/layouts/platform.html"){
</el-radio-group>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item label="民族">
<el-form-item prop="nation">
<dict-select style="width: 100%" placeholder="请选择民族" v-model="formData.nation"
@@ -48,8 +48,8 @@ layout("/layouts/platform.html"){
:disabled="allowFields('political')" code="USER_POLITICAL"></dict-select>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item label="学历">
<el-form-item prop="education">
<dict-select style="width: 100%" placeholder="请选择学历" v-model="formData.education"
@@ -68,7 +68,7 @@ layout("/layouts/platform.html"){
:disabled="allowFields('position')" maxlength="50"></el-input>
</el-form-item>
</el-descriptions-item>
<template v-if="$auth.hasRoleOr('SYSADMIN, SCHOOL_UNION_ADMIN, SCHOOL_UNION_MEMBER_ADMIN')">
<el-descriptions-item label="工作单位">
<el-form-item prop="unitId">
@@ -112,7 +112,7 @@ layout("/layouts/platform.html"){
:disabled="allowFields('campus')" code="USER_CAMPUS"></dict-select>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item label="身份证号码">
<el-form-item prop="idCard">
<el-input v-model="formData.idCard" :disabled="allowFields('idCard')" placeholder="请输入身份证号码" maxlength="18"></el-input>
@@ -128,8 +128,8 @@ layout("/layouts/platform.html"){
<el-input v-model="formData.email" :disabled="allowFields('email')" placeholder="请输入电子邮箱" maxlength="50"></el-input>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item label="在职状态">
<el-form-item prop="userState">
<dict-select v-model="formData.userState" code="USER_STATE"
@@ -143,7 +143,7 @@ layout("/layouts/platform.html"){
</el-form-item>
</el-descriptions-item>
<el-descriptions-item></el-descriptions-item>
<template v-if="formData.userState == '退休'">
<el-descriptions-item label="退休日期">
<el-form-item prop="retireDate">
@@ -168,7 +168,7 @@ layout("/layouts/platform.html"){
</el-descriptions-item>
<el-descriptions-item></el-descriptions-item>
</template>
<el-descriptions-item label="会员状态" :span="1.5">
<el-form-item prop="member">
<el-radio-group v-model="formData.member" size="small">
@@ -177,7 +177,7 @@ layout("/layouts/platform.html"){
</el-radio-group>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item label="福利会员状态" :span="1.5">
<el-form-item prop="welfareMember">
<el-radio-group v-model="formData.welfareMember" size="small">
@@ -186,7 +186,7 @@ layout("/layouts/platform.html"){
</el-radio-group>
</el-form-item>
</el-descriptions-item>
<!--<template v-if="formData.member == 1">
<el-descriptions-item label="是否加入会员组别">
<el-form-item prop="member">
@@ -207,12 +207,12 @@ layout("/layouts/platform.html"){
</el-form-item>
</el-descriptions-item>
</template>
<template v-if="formData.member != null && !formData.welfareMember">
<el-descriptions-item></el-descriptions-item>
<el-descriptions-item></el-descriptions-item>
</template>
<template v-if="formData.welfareMember == true">
<el-descriptions-item label="是否加入福利项目">
<el-form-item prop="isJoinWelfareProject">
@@ -222,7 +222,7 @@ layout("/layouts/platform.html"){
</el-radio-group>
</el-form-item>
</el-descriptions-item>
<template v-if="formData.isJoinWelfareProject">
<el-descriptions-item label="选择福利项目">
<el-form-item prop="welfareProjectId">
@@ -238,7 +238,7 @@ layout("/layouts/platform.html"){
<el-descriptions-item></el-descriptions-item>
</template>
</template>-->
<template v-if="formData.loginname == $store.state.user.loginname">
<el-descriptions-item label="家庭主要成员" :span="3">
<el-form-item prop="families">
@@ -284,7 +284,7 @@ layout("/layouts/platform.html"){
</el-table>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item label="个人简历" :span="3">
<el-form-item prop="personalData">
<text-editor v-model="formData.personalData"></text-editor>
@@ -293,7 +293,7 @@ layout("/layouts/platform.html"){
</template>
</el-descriptions>
</el-form>
<el-row type="flex" justify="end" class="mt20">
<el-button type="primary" plain @click="onSave">保存</el-button>
<el-button type="primary" @click="onSubmit" v-if="!taskId">提交</el-button>
@@ -393,12 +393,12 @@ layout("/layouts/platform.html"){
this.$axios.post('/platform/member/change/apply/save', {data: JSON.stringify(this.formData)}).then(res => {
if (res.code === 0) {
this.$message.success("保存成功")
window.location.href = '/platform/member/change/mine'
commonUtil.pjaxPush('/platform/member/change/mine')
}
})
})
},
// 提交
onSubmit() {
this.$confirm("您确定要提交吗?", "提示", {
@@ -411,12 +411,12 @@ layout("/layouts/platform.html"){
}).then(res => {
if (res.code === 0) {
this.$message.success("提交成功")
window.location.href = '/platform/member/change/mine'
commonUtil.pjaxPush('/platform/member/change/mine')
}
})
})
},
onFinishTask() {
this.$confirm("您确定要提交吗?", "提示", {
confirmButtonText: "确定",
@@ -429,12 +429,12 @@ layout("/layouts/platform.html"){
}).then(res => {
if (res.code === 0) {
this.$message.success("提交成功")
window.location.href = '/platform/member/change/mine'
commonUtil.pjaxPush('/platform/member/change/mine')
}
})
})
},
// 获取表单工会名称
getUnionName(val){
const data = this.units.find(v => v.id === val)
@@ -508,7 +508,7 @@ layout("/layouts/platform.html"){
families,
personalData
} = this.user
this.$set(this.formData, "userId", id)
this.$set(this.formData, "username", username)
this.$set(this.formData, "loginname", loginname)
@@ -530,7 +530,7 @@ layout("/layouts/platform.html"){
this.$set(this.formData, "unitId", unit ? unit.id : null)
this.$set(this.formData, "unionName", union ? union.name : null)
this.$set(this.formData, "unionId", union ? union.id : null)
this.$set(this.formData, "mobile", mobile)
this.$set(this.formData, "email", email)
this.$set(this.formData, "families", families ? families : [])
@@ -8,8 +8,8 @@ layout("/layouts/platform_h5.html"){
}
.list-card-body {
/* width: calc(100% - 140px);
display: flex;*/
width: calc(100% - 140px);
display: flex;
flex-direction: column;
justify-content: space-between;
}
@@ -35,9 +35,6 @@ layout("/layouts/platform_h5.html"){
padding: 5px;
border-radius: 5px;
}
.list-card-img img{
width: 100%;
}
</style>
<div id="app" v-cloak>
@@ -47,7 +44,6 @@ layout("/layouts/platform_h5.html"){
<year-van-dropdown-item :num="5" @change="doSearch" v-model="pageForm.year"></year-van-dropdown-item>
<van-dropdown-item :options="stateList" @change="doSearch" v-model="pageForm.state"></van-dropdown-item>
<van-dropdown-item :options="isEnrolledOptions" @change="doSearch" v-model="pageForm.isEnrolledText"></van-dropdown-item>
<van-dropdown-item :options="activityTypeOptions" @change="doSearch" v-model="pageForm.activity_type"></van-dropdown-item>
</van-dropdown-menu>
</van-sticky>
@@ -119,13 +115,12 @@ layout("/layouts/platform_h5.html"){
loading: false,
refreshing: false,
pageForm: {
state: 1,
state: 2,
isEnrolledText: 0,
year: new Date().getFullYear(),
pageNumber: 1,
pageSize: 5,
totalCount: 0,
activity_type: 40001
totalCount: 0
},
yearList: [],
isEnrolledOptions: [
@@ -139,12 +134,7 @@ layout("/layouts/platform_h5.html"){
],
subLoading: false,
viewShow: false,
viewData: {},
activityTypeOptions: [
{ value: 40001, text: "校文化活动" },
{ value: 40002, text: "分工会文化活动" },
{ value: 40003, text: "协会文化活动" },
]
viewData: {}
}
},
components: {
@@ -279,7 +279,7 @@ layout("/layouts/platform_h5.html"){
<!-- 分工会报名-->
<div v-else-if="viewData.signUpMethod===3" class="block">
<div class="notice-title left-tag-title">选择报名人员
<div class="notice-title left-tag-title">选择报名人员
<span v-if="viewData.userNumberLimit===2">
,报名人数 <span style="color: red">
{{viewData.unionTeamNum}}</span>
@@ -328,13 +328,13 @@ const applyForm = {
},
},
style: /*language=CSS*/ `
::v-deep .companionList_empty_text {
/deep/ .companionList_empty_text {
text-align: center;
padding: 10px 0;
font-size: 14px;
color: grey;
}
::v-deep .button {
/deep/ .button {
position: fixed;
bottom: 0;
width: 100%;
@@ -1,7 +0,0 @@
<!--#
layout("/layouts/platform_h5.html"){
#-->
<!--#
}
#-->
@@ -0,0 +1,112 @@
<!--#
layout("/layouts/platform_h5.html"){
#-->
<div id="app">
<!-- 导航栏 -->
<van-nav-bar title="作品上传" left-text="返回" left-arrow placeholder
@click-left="historyBack" fixed></van-nav-bar>
<van-sticky offset-top="46px">
<van-dropdown-menu :close-on-click-outside="false" :close-on-click-overlay="false">
<year-van-dropdown-item :num="5" @change="doSearch" v-model="pageForm.year"></year-van-dropdown-item>
</van-dropdown-menu>
</van-sticky>
<table-list api="/platform/activity/worksCollection/upload/pageData"
:page_form.sync="pageForm"
ref="tableListRef"
title="name"
@ready="onReady"
>
<template v-slot="{index,row}">
<table-column label="主题类型">{{row.subjectName}}</table-column>
<table-column label="作品类型">{{row.worksName}}</table-column>
<table-column label="姓名">{{row.userName}}</table-column>
<table-column label="上传时间">{{$moment(row.createdAt).format('YYYY-MM-DD')}}</table-column>
</template>
<template #actions="{index,row}">
<div class="action-btn" @click="onView(row)">
<i class="fa fa-eye"></i>
<span>查看</span>
</div>
<div class="action-btn" @click="onEdit(row)">
<i class="fa fa-edit"></i>
<span>编辑</span>
</div>
<div class="action-btn delete" @click="onDelete(row)">
<i class="fa fa-trash"></i>
<span>删除</span>
</div>
</template>
</table-list>
<apply-form ref="applyFormRef"></apply-form>
<info ref="infoRef"></info>
</div>
<script>
<!--#include('../upload/applyForm.js'){}#-->
<!--#include('info.js'){}#-->
new Vue({
el: "#app",
store,
data() {
return {
pageForm: {
pageNumber: 1,
pageSize: 10,
totalCount: 0,
searchKeyword: '',
year: new Date().getFullYear(),
},
}
},
components: {
'apply-form': applyForm,
'info': INFO,
},
methods: {
onView(row) {
this.$refs.infoRef.onOpen(row)
},
onEdit(row) {
if (this.$moment().isAfter(this.$moment(row.activityEndDateTime))) {
this.$toast.fail("活动已结束,无法修改!")
return
}
this.$refs.applyFormRef.onOpenEdit(row)
},
onDelete(row) {
this.$dialog.confirm({
title: '温馨提示',
message: '您确定要删除吗?',
}).then(() => {
this.$axios.post("/platform/activity/worksCollection/upload/delete", {id:row.id}).then((res) => {
if (res.code === 0) {
this.$toast.success(res.msg)
this.doSearch()
}
})
}).catch(() => {
// on cancel
});
},
onReady() {
this.doSearch()
},
doSearch() {
this.$nextTick(() => {
this.pageForm.pageNumber = 1
this.pageForm.totalCount = 0
this.$refs.tableListRef.doSearch()
})
},
}
})
</script>
<!--#
}
#-->
@@ -0,0 +1,67 @@
const INFO = {
template: /*language=HTML*/
`
<div>
<van-action-sheet v-model="visible" :style="{ 'background-color': '#F7F8FA' }" title="报名信息">
<div class="detail-container">
<van-cell-group>
<van-cell title="姓名">
{{ viewData.userName }}
</van-cell>
<van-cell title="工号">
{{ viewData.loginName }}
</van-cell>
<van-cell title="单位">
{{ viewData.unitName }}
</van-cell>
<van-cell title="分工会">
{{ viewData.unionName }}
</van-cell>
<van-cell title="分工会">
{{ viewData.unionName }}
</van-cell>
<van-cell title="作品名称">
{{ viewData.name }}
</van-cell>
<van-cell title="活动主题">
{{ viewData.activityName }}
</van-cell>
<van-cell title="主题类型">
{{ viewData.subjectName }}
</van-cell>
<van-cell title="作品类型">
{{ viewData.worksName }}
</van-cell>
<van-cell title="作品描述" class="direction-column-cell">
{{ viewData.description }}
</van-cell>
<van-cell title="作品附件" class="direction-column-cell">
<file-preview :files="viewData.files" complete_result></file-preview>
</van-cell>
</van-cell-group>
</div>
</van-action-sheet>
</div>
`,
data() {
return {
viewData: {},
visible: false,
}
},
methods: {
onOpen(row) {
this.$axios.post("/platform/activity/worksCollection/common/findOne", {id: row.id}).then((res) => {
if (res.code === 0) {
this.viewData = res.data
try {
this.viewData.files = JSON.parse(this.viewData.files)
} catch (err) {
}
}
})
this.visible = true
},
}
}
@@ -0,0 +1,159 @@
<!--#
layout("/layouts/platform_h5.html"){
#-->
<div id="app">
<!-- 导航栏 -->
<van-nav-bar title="作品阅览" left-text="返回" left-arrow placeholder
@click-left="historyBack" fixed></van-nav-bar>
<van-sticky offset-top="46px">
<van-search
:reverse-color="false"
:show-action="false"
@search="doSearch"
input-align="left"
placeholder="请输入姓名/工号搜索"
v-model="pageForm.searchKeyword"
></van-search>
<van-dropdown-menu :close-on-click-outside="false" :close-on-click-overlay="false">
<van-dropdown-item v-model="pageForm.activityId" :options="activityOptions"
@change="doSearch"></van-dropdown-item>
</van-dropdown-menu>
<van-tabs v-model="pageForm.pageOrderName"
@change="doSearch">
<van-tab title="按上传时间正序排序" name="createdAt"></van-tab>
<van-tab title="按点赞多少倒序排序" name="num"></van-tab>
</van-tabs>
</van-sticky>
<table-list api="/platform/activity/worksCollection/read/h5/pageData"
:page_form.sync="pageForm"
ref="tableListRef"
title="name"
@ready="onReady"
>
<template v-slot="{index,row}">
<table-column label="主题类型">{{row.subjectName}}</table-column>
<table-column label="作品类型">{{row.worksName}}</table-column>
<table-column label="姓名">{{row.userName}}</table-column>
<table-column label="上传时间">{{$moment(row.createdAt).format('YYYY-MM-DD')}}</table-column>
<table-column label="点赞数">{{row.num}}</table-column>
<table-column label="附件">
<template v-if="row.files">
<file-preview :files="JSON.parse(row.files)" complete_result></file-preview>
</template>
</table-column>
</template>
<template #actions="{index,row}">
<div class="action-btn" @click="onView(row)">
<i class="fa fa-eye"></i>
<span>查看</span>
</div>
<template v-if="row.nbCount>0">
<div class="action-btn" @click="onLike(row)" v-if="!row.isThisLike">
<i class="fa fa-thumbs-o-up"></i>
<span>点赞</span>
</div>
<div class="action-btn" @click="onDeleteLike(row)" v-if="row.isThisLike">
<i class="fa fa-thumbs-up"></i>
<span>取消点赞</span>
</div>
</template>
</template>
</table-list>
<info ref="infoRef"></info>
</div>
<script>
<!--#include('../mine/info.js'){}#-->
new Vue({
el: "#app",
store,
data() {
return {
pageForm: {
pageNumber: 1,
pageSize: 10,
totalCount: 0,
searchKeyword: '',
pageOrderName: 'createdAt',
pageOrderNameText: '',
activityId: '',
year: new Date().getFullYear(),
},
activityOptions: []
}
},
components: {
'info': INFO,
},
methods: {
onLike(row) {
this.$dialog.confirm({
title: '温馨提示',
message: '您确定要点赞吗?',
}).then(() => {
this.$axios.post("/platform/activity/worksCollection/read/h5/doLike", {uploadId: row.id}).then((res) => {
if (res.code === 0) {
row.num = row.num + 1
row.isThisLike = true
this.$toast.success(res.msg)
}
})
}).catch(() => {
// on cancel
});
},
onDeleteLike(row) {
this.$dialog.confirm({
title: '温馨提示',
message: '您确定要取消点赞吗?',
}).then(() => {
this.$axios.post("/platform/activity/worksCollection/read/h5/doDeleteLike", {uploadId: row.id}).then((res) => {
if (res.code === 0) {
row.num = row.num - 1
row.isThisLike = false
this.$toast.success(res.msg)
}
})
}).catch(() => {
// on cancel
});
},
onView(row) {
this.$refs.infoRef.onOpen(row)
},
async listActivity() {
const res = await this.$axios.post("/platform/activity/worksCollection/common/listActivity")
if (res.code === 0) {
res.data.forEach(v => {
v.text = v.name
v.value = v.id
})
this.activityOptions = res.data
if (this.activityOptions.length > 0) {
this.pageForm.activityId = this.activityOptions[0].id
}
}
},
async onReady() {
await this.listActivity()
this.doSearch()
},
doSearch() {
this.$nextTick(() => {
this.pageForm.pageNumber = 1
this.pageForm.totalCount = 0
this.$refs.tableListRef.doSearch()
})
},
},
created() {
}
})
</script>
<!--#
}
#-->
@@ -0,0 +1,191 @@
const applyForm = {
template:
/*language=HTML*/
`
<div>
<van-action-sheet v-model="visible" :style="{ 'background-color': '#F7F8FA' }" title="报名信息">
<van-form ref="formRef" class="form-container">
<van-cell-group title="基础信息" class="form-section">
<van-field label="姓名" readonly v-model="formData.username"></van-field>
<van-field label="工号" readonly v-model="formData.loginname"></van-field>
<van-field label="所在单位" readonly v-model="formData.unitName"></van-field>
<van-field label="所属工会" readonly v-model="formData.unionName"></van-field>
<van-field label="性别" readonly v-model="formData.sex"></van-field>
</van-cell-group>
<van-cell-group title="报名信息" class="form-section">
<van-field label="主题类型"
required
:rules="[{ required: true, message: '请选择主题类型' }]"
readonly
is-link
@click="showSubjectPicker = true"
placeholder="请选择主题类型"
name="subjectName"
v-model="formData.subjectName">
</van-field>
<van-popup v-model="showSubjectPicker" position="bottom">
<van-picker
show-toolbar
:columns="subjectTypesOptions.map(v=>v.typeName)"
@confirm="onSubjectConfirm"
@cancel="showSubjectPicker=false"
></van-picker>
</van-popup>
<van-field label="作品类型"
required
:rules="[{ required: true, message: '请选择作品类型' }]"
readonly
is-link
@click="showWorksPicker = true"
placeholder="请选择作品类型"
name="worksName"
v-model="formData.worksName">
</van-field>
<van-popup v-model="showWorksPicker" position="bottom">
<van-picker
show-toolbar
:columns="worksTypeOptions.map(v=>v.worksTypeName)"
@confirm="onWorksConfirm"
@cancel="showWorksPicker=false"
></van-picker>
</van-popup>
<van-field label="作品名称"
required
v-model="formData.name"
name="name"
placeholder="请填写作品名称"
:rules="[{ required: true, message: '请填写作品名称' }]"></van-field>
<van-field label="作品描述"
v-model="formData.description"
type="textarea"
name="description"
rows="4"
autosize
maxlength="150"
:rules="[{ required: true, message: '请填写作品描述' }]"
class="more-text"
placeholder="请填写作品描述"></van-field>
</van-cell-group>
<van-cell-group title="附件">
<van-field class="more-text"
name="files"
:rules="[{ required: true,message:'请上传附件' }]"
label=""
required>
<template #input>
<h5-file-upload
slot="input"
:value.sync="formData.files"
:upload_number="chooseWorksType && chooseWorksType.allowFileNum"
upload_mode="file"
upload_result_category="array"
upload_result_type="url"
complete_result
:accept="fileAccept"
></h5-file-upload>
</template>
</van-field>
</van-cell-group>
<div class="form-actions">
<van-button @click="onSubmit" round type="info">提交</van-button>
</div>
</van-form>
</van-action-sheet>
</div>
`,
data() {
return {
row: {},
visible: false,
formData: {},
subjectTypesOptions: [],
showSubjectPicker: false,
worksTypeOptions: [],
showWorksPicker: false,
fileAccept: null,
chooseWorksType: {}
}
},
methods: {
async onOpen(row) {
this.$set(this.formData, 'username', this.$store.state.user.username)
this.$set(this.formData, 'loginname', this.$store.state.user.loginname)
this.$set(this.formData, 'unionName', this.$store.state.user.union.name)
this.$set(this.formData, 'unitName', this.$store.state.user.unit.name)
this.$set(this.formData, 'sex', this.$store.state.user.sex)
this.$set(this.formData, 'activityId', row.id)
await this.activityChange(row.id)
this.row = row
this.visible = true
},
async onOpenEdit(row) {
const formData = clone(row)
formData.files = JSON.parse(formData.files)
await this.activityChange(formData.activityId)
await this.subjectChange(formData.subjectId)
this.row = formData
this.formData = formData
this.$set(this.formData, 'username', this.$store.state.user.username)
this.$set(this.formData, 'loginname', this.$store.state.user.loginname)
this.$set(this.formData, 'sex', this.$store.state.user.sex)
this.chooseWorksType = this.worksTypeOptions.find((o) => o.id === formData.worksId)
if (this.chooseWorksType.allowFileTypes && this.chooseWorksType.allowFileTypes.length > 0) {
this.fileAccept = this.chooseWorksType.allowFileTypes.map((item) => "." + item).join(",")
}
this.visible = true
},
onWorksConfirm(value, index) {
this.$set(this.formData, 'worksName', value)
this.$set(this.formData, 'worksId', this.worksTypeOptions[index].id)
this.showWorksPicker = false
this.chooseWorksType = this.worksTypeOptions.find((o) => o.id === this.worksTypeOptions[index].id)
if (this.chooseWorksType.allowFileTypes && this.chooseWorksType.allowFileTypes.length > 0) {
this.fileAccept = this.chooseWorksType.allowFileTypes.map((item) => "." + item).join(",")
}
},
async onSubjectConfirm(value, index) {
this.$set(this.formData, 'subjectName', value)
this.$set(this.formData, 'subjectId', this.subjectTypesOptions[index].id)
await this.subjectChange(this.subjectTypesOptions[index].id)
this.showSubjectPicker = false
},
onSubmit() {
this.$refs.formRef.validate().then(() => {
this.$dialog.confirm({
title: "提示",
message: "您确定要提交吗?"
}).then(() => {
this.$toast.loading({
message: '提交中...',
forbidClick: true,
});
this.$axios.post("/platform/activity/worksCollection/upload" + (this.formData.id ? "/update" : "/insert"), {data: JSON.stringify(this.formData)}).then((res) => {
if (res.code === 0) {
this.$toast.clear();
this.$toast.success("提交成功")
pjaxReplace("/platform/activity/worksCollection/mine/h5")
}
})
})
}).catch();
},
async activityChange(value) {
const resp = await this.$axios.post("/platform/activity/worksCollection/common/getSubjectTypes", {activityId: value})
if (resp.code === 0) {
this.subjectTypesOptions = resp.data
}
},
async subjectChange(value) {
const resp = await this.$axios.post("/platform/activity/worksCollection/common/getWorksTypes", {subjectId: value})
if (resp.code === 0) {
this.worksTypeOptions = resp.data
}
}
}
}
@@ -1,7 +1,166 @@
<!--#
layout("/layouts/platform_h5.html"){
#-->
22222222222
<style scoped>
.info-title {
font-weight: bold;
background-color: white;
padding: 13px;
box-shadow: 0 8px 12px #ebedf0;
text-align: center !important;
}
.info-container {
height: calc(100vh - 46px - 44px);
min-height: calc(100vh - 46px - 44px);
overflow-y: auto;
}
.info-img {
display: block;
}
.van-count-down {
color: #fff;
}
</style>
<div id="app">
<!-- 导航栏 -->
<van-nav-bar title="作品上传" left-text="返回" left-arrow placeholder
@click-left="historyBack" fixed></van-nav-bar>
<van-sticky offset-top="46px">
<van-dropdown-menu :close-on-click-outside="false" :close-on-click-overlay="false">
<year-van-dropdown-item :num="5" @change="doSearch" v-model="pageForm.year"></year-van-dropdown-item>
<van-dropdown-item v-model="pageForm.activityType" :options="typeOptions" :multiple="false"
@change="doSearch"></van-dropdown-item>
</van-dropdown-menu>
</van-sticky>
<table-list api="/platform/activity/worksCollection/upload/h5/activityPageData"
:page_form.sync="pageForm"
ref="tableListRef"
title="name"
img="cover"
@ready="onReady"
>
<template v-slot="{index,row}">
<table-column label="面向对象">{{row.activityGroupName}}</table-column>
<table-column label="报名时间">
{{$moment(row.startDateTime).format('MM/DD HH:mm')
+ '~' + $moment(row.endDateTime).format('MM/DD HH:mm')}}
</table-column>
</template>
<template #actions="{index,row}">
<div class="action-btn" @click="onView(row)">
<i class="fa fa-eye"></i>
<span>查看介绍</span>
</div>
<div class="action-btn" @click="onApply(row)">
<i class="fa fa-edit"></i>
<span>去报名</span>
</div>
</template>
</table-list>
<van-action-sheet v-model="infoVisible" title="详细信息">
<div class="info-container">
<van-image class="info-img" height="186" width="100%" :src="infoRow.cover"></van-image>
<div class="info-title">{{infoRow.name}}</div>
<pdf-preview style="height: calc(100vh - 46px - 44px - 186px - 57px)"
:content="infoRow.content"></pdf-preview>
</div>
<div class="form-container">
<div class="form-actions">
<van-button @click="onApply(infoRow)" type="primary" block>
<span v-if="time >= 0">
去报名
</span>
<template v-else>
距离开始
<van-count-down :time="Math.abs(time)" class="count-down" format="DD 天 HH 时 mm 分 ss 秒"
@finish="time = 0"></van-count-down>
</template>
</van-button>
</div>
</div>
</van-action-sheet>
<apply-form ref="applyFormRef"></apply-form>
</div>
<script>
<!--#include('applyForm.js'){}#-->
new Vue({
el: "#app",
store,
data() {
return {
time: 0,
pageForm: {
pageNumber: 1,
pageSize: 10,
totalCount: 0,
searchKeyword: '',
year: new Date().getFullYear(),
activityType: 2,
},
typeOptions: [
{text: '全部', value: 1},
{text: '即将开始', value: 4},
{text: '报名中', value: 2},
{text: '已结束', value: 3},
],
infoVisible: false,
infoRow: {},
}
},
components: {
'apply-form': applyForm,
"pdf-preview": httpVueLoader("/components/plugins/sysFilePreview/PdfIndex.vue?v=" + new Date().getTime())
},
methods: {
onApply(row) {
if (this.$moment().isBefore(this.$moment(row.startDateTime))) {
this.onView(row)
return
}
if (this.$moment().isAfter(this.$moment(row.endDateTime))) {
this.$toast.fail("活动已结束")
return
}
this.$refs.applyFormRef.onOpen(row)
},
onView(row) {
this.infoRow = row
this.time = this.$moment().diff(this.$moment(row.startDateTime), 'milliseconds')
this.infoVisible = true
},
onReady() {
this.doSearch()
},
doSearch() {
this.$nextTick(() => {
this.pageForm.pageNumber = 1
this.pageForm.totalCount = 0
this.$refs.tableListRef.doSearch()
})
},
},
created() {
},
})
</script>
<!--#
}
#-->
@@ -1,8 +0,0 @@
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<title>Title</title>
</head>
<body></body>
</html>
@@ -84,7 +84,7 @@ const H5_ASSET_INFO = {
<div style="white-space: pre">{{item.oldAssetNotes}}</div>
</van-cell>
<van-cell title="旧资产图片" class="direction-column-cell">
{{item.oldAssetFiles}}
<file-preview :files="item.oldAssetFiles" complete_result></file-preview>
</van-cell>
</van-cell-group>
</template>

Some files were not shown because too many files have changed in this diff Show More