commit
This commit is contained in:
@@ -19,6 +19,9 @@ RoleConstant {
|
|||||||
SCHOOL_UNION_ADMIN("校工会管理员"),
|
SCHOOL_UNION_ADMIN("校工会管理员"),
|
||||||
SCHOOL_UNION_CHAIRMAN("校工会主席"),
|
SCHOOL_UNION_CHAIRMAN("校工会主席"),
|
||||||
SCHOOL_UNION_VICE_CHAIRMAN("校工会副主席"),
|
SCHOOL_UNION_VICE_CHAIRMAN("校工会副主席"),
|
||||||
|
SCHOOL_UNION_TREASURE("校工会财务委员"),
|
||||||
|
SCHOOL_UNION_CASHIER("校工会出纳"),
|
||||||
|
SCHOOL_UNION_ACCOUNTANT("校工会会计"),
|
||||||
SCHOOL_UNION_WELFARE_ADMIN("校工会福利管理员"),
|
SCHOOL_UNION_WELFARE_ADMIN("校工会福利管理员"),
|
||||||
SCHOOL_UNION_MEMBER_ADMIN("校工会会员管理员"),
|
SCHOOL_UNION_MEMBER_ADMIN("校工会会员管理员"),
|
||||||
SCHOOL_UNION_TC_ADMIN("校工会教代会管理员"),
|
SCHOOL_UNION_TC_ADMIN("校工会教代会管理员"),
|
||||||
|
|||||||
@@ -29,6 +29,6 @@ public class FlowAssignUserHandler implements AssignmentHandler {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public int getOrder() {
|
public int getOrder() {
|
||||||
return AssignmentHandler.super.getOrder();
|
return 100;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+1
-1
@@ -50,6 +50,6 @@ public class FlowClubPresidentByArgsAssignmentHandler implements AssignmentHandl
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public int getOrder() {
|
public int getOrder() {
|
||||||
return AssignmentHandler.super.getOrder();
|
return 510;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -42,7 +42,7 @@ public class FlowFghzxAssignmentHandler implements AssignmentHandler {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public int getOrder() {
|
public int getOrder() {
|
||||||
return 10;
|
return 400;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
+1
-1
@@ -62,6 +62,6 @@ public class FlowGeneralDelegationByArgsAssignmentHandler implements AssignmentH
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public int getOrder() {
|
public int getOrder() {
|
||||||
return AssignmentHandler.super.getOrder();
|
return 210;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+1
-1
@@ -56,6 +56,6 @@ public class FlowQualificationReviewGroupByArgsAssignmentHandler implements Assi
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public int getOrder() {
|
public int getOrder() {
|
||||||
return AssignmentHandler.super.getOrder();
|
return 200;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+1
-1
@@ -47,6 +47,6 @@ public class FlowSchoolUnionAdminByArgsAssignmentHandler implements AssignmentHa
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public int getOrder() {
|
public int getOrder() {
|
||||||
return AssignmentHandler.super.getOrder();
|
return 300;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,64 @@
|
|||||||
|
package com.budwk.app.flow.handler;
|
||||||
|
|
||||||
|
import com.budwk.app.base.constant.RoleConstant;
|
||||||
|
import com.budwk.app.flow.engine.AssignmentHandler;
|
||||||
|
import com.budwk.app.flow.engine.core.Execution;
|
||||||
|
import com.budwk.app.flow.engine.core.ServiceContext;
|
||||||
|
import com.budwk.app.flow.engine.model.TaskModel;
|
||||||
|
import org.nutz.dao.Dao;
|
||||||
|
import org.nutz.dao.Sqls;
|
||||||
|
import org.nutz.dao.sql.Sql;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取校工会财务委员角色下的用户,供流程设计器配置任务参与者。
|
||||||
|
*/
|
||||||
|
public class FlowSchoolUnionTreasureHandler implements AssignmentHandler {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据校工会财务委员角色查询流程任务参与者。
|
||||||
|
*
|
||||||
|
* @param model 流程任务模型
|
||||||
|
* @param execution 当前流程执行对象
|
||||||
|
* @return 校工会财务委员的用户 ID 列表
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public List<String> assign(TaskModel model, Execution execution) {
|
||||||
|
Dao dao = ServiceContext.find(Dao.class);
|
||||||
|
Sql sql = Sqls.create("""
|
||||||
|
SELECT
|
||||||
|
userRole.userId
|
||||||
|
FROM
|
||||||
|
`sys_user_role` userRole
|
||||||
|
LEFT JOIN sys_role role ON role.id = userRole.roleId
|
||||||
|
WHERE
|
||||||
|
role.`code` = @roleCode
|
||||||
|
GROUP BY
|
||||||
|
userRole.userId
|
||||||
|
""").setParam("roleCode", RoleConstant.SCHOOL_UNION_TREASURE.name());
|
||||||
|
sql.setCallback(Sqls.callback.strList());
|
||||||
|
dao.execute(sql);
|
||||||
|
return sql.getList(String.class);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 返回流程设计器参与者处理类下拉框的显示名称。
|
||||||
|
*
|
||||||
|
* @return 下拉框显示名称
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public String getMessage() {
|
||||||
|
return "获取校工会财务委员";
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 使用参与者处理类的默认排序值。
|
||||||
|
*
|
||||||
|
* @return 默认排序值
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public int getOrder() {
|
||||||
|
return 330;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -45,6 +45,6 @@ public class FlowSchoolUnionViceChairmanHandler implements AssignmentHandler {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public int getOrder() {
|
public int getOrder() {
|
||||||
return AssignmentHandler.super.getOrder();
|
return 320;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+1
-1
@@ -46,6 +46,6 @@ public class FlowUnionGroupLeadersByArgsAssignmentHandler implements AssignmentH
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public int getOrder() {
|
public int getOrder() {
|
||||||
return AssignmentHandler.super.getOrder();
|
return 410;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -64,6 +64,6 @@ public class FlowUnitPartySecretaryHandler implements AssignmentHandler {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public int getOrder() {
|
public int getOrder() {
|
||||||
return AssignmentHandler.super.getOrder();
|
return 220;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+19
@@ -34,7 +34,10 @@ import org.nutz.mvc.annotation.At;
|
|||||||
import org.nutz.mvc.annotation.Ok;
|
import org.nutz.mvc.annotation.Ok;
|
||||||
import org.nutz.mvc.annotation.Param;
|
import org.nutz.mvc.annotation.Param;
|
||||||
|
|
||||||
|
import javax.servlet.http.HttpServletRequest;
|
||||||
|
import javax.servlet.http.HttpServletResponse;
|
||||||
import javax.validation.Valid;
|
import javax.validation.Valid;
|
||||||
|
import java.io.IOException;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -187,4 +190,20 @@ public class ClubRegistApplyController {
|
|||||||
String s = String.format("%02d", count + 1);
|
String s = String.format("%02d", count + 1);
|
||||||
return Result.success().addData(Convert.toStr(DateUtil.thisYear()) + s);
|
return Result.success().addData(Convert.toStr(DateUtil.thisYear()) + s);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@At
|
||||||
|
@Ok("void")
|
||||||
|
@ApiOperation("下载协会申请成立报告模板")
|
||||||
|
@SaCheckPermission("club.register.apply")
|
||||||
|
public void downloadTemplate(HttpServletRequest request, HttpServletResponse response) throws IOException {
|
||||||
|
sysClubService.downloadApplyTemplate(request, response);
|
||||||
|
}
|
||||||
|
|
||||||
|
@At
|
||||||
|
@Ok("void")
|
||||||
|
@ApiOperation("下载协会章程草案模板")
|
||||||
|
@SaCheckPermission("club.register.apply")
|
||||||
|
public void downloadRulesTemplate(HttpServletRequest request, HttpServletResponse response) throws IOException {
|
||||||
|
sysClubService.downloadRulesTemplate(request, response);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -12,7 +12,10 @@ import io.swagger.models.auth.In;
|
|||||||
import org.nutz.dao.Cnd;
|
import org.nutz.dao.Cnd;
|
||||||
import org.nutz.lang.util.NutMap;
|
import org.nutz.lang.util.NutMap;
|
||||||
|
|
||||||
|
import javax.servlet.http.HttpServletRequest;
|
||||||
|
import javax.servlet.http.HttpServletResponse;
|
||||||
import javax.validation.Valid;
|
import javax.validation.Valid;
|
||||||
|
import java.io.IOException;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -35,6 +38,24 @@ public interface SysClubService extends BaseService<SysClub> {
|
|||||||
|
|
||||||
SysClub doEdit(SysClub club, List<String> deleteIds, List<NutMap> managePerson);
|
SysClub doEdit(SysClub club, List<String> deleteIds, List<NutMap> managePerson);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 下载协会申请成立报告模板。
|
||||||
|
*
|
||||||
|
* @param request HTTP 请求,用于复用系统文件下载处理
|
||||||
|
* @param response HTTP 响应,用于输出模板文件
|
||||||
|
* @throws IOException 模板文件读取或输出失败
|
||||||
|
*/
|
||||||
|
void downloadApplyTemplate(HttpServletRequest request, HttpServletResponse response) throws IOException;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 下载协会章程草案模板。
|
||||||
|
*
|
||||||
|
* @param request HTTP 请求,用于复用系统文件下载处理
|
||||||
|
* @param response HTTP 响应,用于输出模板文件
|
||||||
|
* @throws IOException 模板文件读取或输出失败
|
||||||
|
*/
|
||||||
|
void downloadRulesTemplate(HttpServletRequest request, HttpServletResponse response) throws IOException;
|
||||||
|
|
||||||
Pagination<ClubRegisterPageVo> minePageData(@Valid ClubUserPageForm pageForm);
|
Pagination<ClubRegisterPageVo> minePageData(@Valid ClubUserPageForm pageForm);
|
||||||
|
|
||||||
Pagination<ClubRegisterPageVo> schoolLeaderAuditPageData(@Valid ClubUserPageForm pageForm);
|
Pagination<ClubRegisterPageVo> schoolLeaderAuditPageData(@Valid ClubUserPageForm pageForm);
|
||||||
|
|||||||
@@ -5,6 +5,7 @@ import cn.hutool.core.util.ObjectUtil;
|
|||||||
import cn.hutool.core.util.StrUtil;
|
import cn.hutool.core.util.StrUtil;
|
||||||
import com.budwk.app.base.constant.BpmProcessConstant;
|
import com.budwk.app.base.constant.BpmProcessConstant;
|
||||||
import com.budwk.app.base.constant.RoleConstant;
|
import com.budwk.app.base.constant.RoleConstant;
|
||||||
|
import com.budwk.app.base.exception.BaseException;
|
||||||
import com.budwk.app.base.page.Pagination;
|
import com.budwk.app.base.page.Pagination;
|
||||||
import com.budwk.app.base.param.PageForm;
|
import com.budwk.app.base.param.PageForm;
|
||||||
import com.budwk.app.base.service.impl.BaseServiceImpl;
|
import com.budwk.app.base.service.impl.BaseServiceImpl;
|
||||||
@@ -18,6 +19,8 @@ import com.budwk.app.flow.enums.ProcessInstanceStateEnum;
|
|||||||
import com.budwk.app.flow.enums.ProcessTaskStateEnum;
|
import com.budwk.app.flow.enums.ProcessTaskStateEnum;
|
||||||
import com.budwk.app.sys.models.Sys_user;
|
import com.budwk.app.sys.models.Sys_user;
|
||||||
import com.budwk.app.sys.models.Sys_user_role;
|
import com.budwk.app.sys.models.Sys_user_role;
|
||||||
|
import com.budwk.app.sys.models.Sys_office_template;
|
||||||
|
import com.budwk.app.sys.services.SysFileService;
|
||||||
import com.budwk.app.web.commons.auth.utils.AuthUtil;
|
import com.budwk.app.web.commons.auth.utils.AuthUtil;
|
||||||
import com.budwk.app.web.commons.auth.utils.SecurityUtil;
|
import com.budwk.app.web.commons.auth.utils.SecurityUtil;
|
||||||
import com.budwk.app.web.controllers.open.commons.service.CommonService;
|
import com.budwk.app.web.controllers.open.commons.service.CommonService;
|
||||||
@@ -38,6 +41,9 @@ import org.nutz.ioc.loader.annotation.Inject;
|
|||||||
import org.nutz.ioc.loader.annotation.IocBean;
|
import org.nutz.ioc.loader.annotation.IocBean;
|
||||||
import org.nutz.lang.util.NutMap;
|
import org.nutz.lang.util.NutMap;
|
||||||
|
|
||||||
|
import javax.servlet.http.HttpServletRequest;
|
||||||
|
import javax.servlet.http.HttpServletResponse;
|
||||||
|
import java.io.IOException;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
@@ -61,6 +67,8 @@ public class SysClubServiceImpl extends BaseServiceImpl<SysClub> implements SysC
|
|||||||
private CommonService commonService;
|
private CommonService commonService;
|
||||||
@Inject
|
@Inject
|
||||||
private BpmService bpmService;
|
private BpmService bpmService;
|
||||||
|
@Inject
|
||||||
|
private SysFileService sysFileService;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Pagination<ClubCommonPageVo> getAllClubWithPage(PageForm pageForm, Cnd cnd) {
|
public Pagination<ClubCommonPageVo> getAllClubWithPage(PageForm pageForm, Cnd cnd) {
|
||||||
@@ -108,6 +116,44 @@ public class SysClubServiceImpl extends BaseServiceImpl<SysClub> implements SysC
|
|||||||
return clubRegisterVo;
|
return clubRegisterVo;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void downloadApplyTemplate(HttpServletRequest request, HttpServletResponse response) throws IOException {
|
||||||
|
downloadClubTemplate("club_apply", "协会申请成立报告模板", request, response);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void downloadRulesTemplate(HttpServletRequest request, HttpServletResponse response) throws IOException {
|
||||||
|
downloadClubTemplate("club_rules", "协会章程草案模板", request, response);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 按固定模板代码下载协会模板,模板代码仅由服务内部指定,避免下载其他业务模板。
|
||||||
|
*/
|
||||||
|
private void downloadClubTemplate(String templateCode, String templateName,
|
||||||
|
HttpServletRequest request, HttpServletResponse response) throws IOException {
|
||||||
|
Sys_office_template officeTemplate = dao().fetch(Sys_office_template.class,
|
||||||
|
Cnd.where(Sys_office_template::getTemplateCode, "=", templateCode));
|
||||||
|
if (ObjectUtil.isNull(officeTemplate) || StrUtil.isBlank(officeTemplate.getTemplatePath())) {
|
||||||
|
throw new BaseException("{}不存在", templateName);
|
||||||
|
}
|
||||||
|
|
||||||
|
// 模板路径由系统文件上传接口生成,从查询参数中提取文件 ID 后复用统一下载逻辑。
|
||||||
|
String templatePath = officeTemplate.getTemplatePath();
|
||||||
|
int idStartIndex = templatePath.indexOf("id=");
|
||||||
|
if (idStartIndex < 0) {
|
||||||
|
throw new BaseException("{}路径无效", templateName);
|
||||||
|
}
|
||||||
|
String fileId = templatePath.substring(idStartIndex + 3);
|
||||||
|
int nextParamIndex = fileId.indexOf('&');
|
||||||
|
if (nextParamIndex >= 0) {
|
||||||
|
fileId = fileId.substring(0, nextParamIndex);
|
||||||
|
}
|
||||||
|
if (StrUtil.isBlank(fileId)) {
|
||||||
|
throw new BaseException("{}文件无效", templateName);
|
||||||
|
}
|
||||||
|
sysFileService.download(fileId, request, response);
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public List<SysClub> getMyManageClub() {
|
public List<SysClub> getMyManageClub() {
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -247,7 +247,7 @@ public class CondolenceMineController {
|
|||||||
docData.put("fgh", approval);
|
docData.put("fgh", approval);
|
||||||
});
|
});
|
||||||
|
|
||||||
doneTaskVos.stream().filter(task -> "校工会会计审核".equals(task.getDisplayName()))
|
doneTaskVos.stream().filter(task -> "校工会财务审核".equals(task.getDisplayName()))
|
||||||
.max(Comparator.comparing(ProcessTaskVO::getCreatedAt))
|
.max(Comparator.comparing(ProcessTaskVO::getCreatedAt))
|
||||||
.ifPresent(v -> {
|
.ifPresent(v -> {
|
||||||
Dict taskFormData = v.getTaskFormData();
|
Dict taskFormData = v.getTaskFormData();
|
||||||
|
|||||||
+1
-1
@@ -33,7 +33,7 @@ import java.util.List;
|
|||||||
*/
|
*/
|
||||||
@IocBean
|
@IocBean
|
||||||
@At("/platform/condolence/schoolPrincipalApproval")
|
@At("/platform/condolence/schoolPrincipalApproval")
|
||||||
@Api("职工慰问校工会会计审核")
|
@Api("职工慰问校工会财务审核")
|
||||||
@Ok("json:full")
|
@Ok("json:full")
|
||||||
public class CondolenceSchoolPrincipalApprovalController {
|
public class CondolenceSchoolPrincipalApprovalController {
|
||||||
|
|
||||||
|
|||||||
@@ -1,3 +1,9 @@
|
|||||||
|
// 新建协会申请时使用的“协会介绍及宗旨”默认内容。
|
||||||
|
const CLUB_DEFAULT_INTRODUCE = '<p>扬州工业职业技术学院教职工<u> </u>社团是学校教职工根据共同的兴趣、爱好,以自愿参加、自愿组织、自我管理为原则成立的,具有固定章程的非盈利性校内群众性团体。</p>' +
|
||||||
|
'<p>社团必须坚持以习近平新时代中国特色社会主义思想为指导,坚持正确的政治方向,遵循社会主义核心价值观,不断增强政治性、先进性、群众性。严格遵守国家法律法规和学校各项规章制度。</p>' +
|
||||||
|
'<p>社团以建设文明校园、繁荣校园文化为宗旨,团结和引导广大教职工积极开展各种健康的文化、体育活动,丰富教职工业余生活,促进广大教职工思想道德素质、文化艺术素质和身体素质的协调发展。</p>' +
|
||||||
|
'<p>校工会负责社团的审批和管理,社团接受校工会的指导、管理和监督。</p>'
|
||||||
|
|
||||||
const CLUB_FORM_TEMPLATE = {
|
const CLUB_FORM_TEMPLATE = {
|
||||||
template: `
|
template: `
|
||||||
<div>
|
<div>
|
||||||
@@ -90,26 +96,32 @@ const CLUB_FORM_TEMPLATE = {
|
|||||||
<el-row :gutter="30">
|
<el-row :gutter="30">
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<el-form-item label="申请成立报告" prop="establishReport">
|
<el-form-item label="申请成立报告" prop="establishReport">
|
||||||
<file-upload
|
<div style="position: relative">
|
||||||
:value.sync="formData.establishReport"
|
<file-upload
|
||||||
:upload_number="5"
|
:value.sync="formData.establishReport"
|
||||||
upload_result_category="array"
|
:upload_number="5"
|
||||||
complete_result
|
upload_result_category="array"
|
||||||
upload_mode="file"
|
complete_result
|
||||||
accept=".doc,.docx,.xls,.xlsx,.pdf"
|
upload_mode="file"
|
||||||
></file-upload>
|
accept=".doc,.docx,.xls,.xlsx,.pdf"
|
||||||
|
></file-upload>
|
||||||
|
<el-button type="primary" plain size="small" style="position: absolute; left: 115px; top: 5px" @click="downloadApplyTemplate">下载模板</el-button>
|
||||||
|
</div>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<el-form-item label="章程草案" prop="rulesFile">
|
<el-form-item label="章程草案" prop="rulesFile">
|
||||||
<file-upload
|
<div style="position: relative">
|
||||||
:value.sync="formData.rulesFile"
|
<file-upload
|
||||||
:upload_number="5"
|
:value.sync="formData.rulesFile"
|
||||||
upload_result_category="array"
|
:upload_number="5"
|
||||||
complete_result
|
upload_result_category="array"
|
||||||
upload_mode="file"
|
complete_result
|
||||||
accept=".doc,.docx,.xls,.xlsx,.pdf"
|
upload_mode="file"
|
||||||
></file-upload>
|
accept=".doc,.docx,.xls,.xlsx,.pdf"
|
||||||
|
></file-upload>
|
||||||
|
<el-button type="primary" plain size="small" style="position: absolute; left: 115px; top: 5px" @click="downloadRulesTemplate">下载模板</el-button>
|
||||||
|
</div>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
@@ -156,14 +168,17 @@ const CLUB_FORM_TEMPLATE = {
|
|||||||
return {
|
return {
|
||||||
formData: {
|
formData: {
|
||||||
clubName: "",
|
clubName: "",
|
||||||
clubType: ""
|
clubType: "",
|
||||||
|
introduce: CLUB_DEFAULT_INTRODUCE
|
||||||
},
|
},
|
||||||
formRules: {
|
formRules: {
|
||||||
clubName: [{ required: true, message: "请填写协会名称", trigger: ["blur", "change"] }],
|
clubName: [{ required: true, message: "请填写协会名称", trigger: ["blur", "change"] }],
|
||||||
clubCode: [{ required: false, message: "请填写协会编码", trigger: ["blur", "change"] }],
|
clubCode: [{ required: false, message: "请填写协会编码", trigger: ["blur", "change"] }],
|
||||||
clubType: [{ required: true, message: "请选择协会类型", trigger: ["blur", "change"] }],
|
clubType: [{ required: true, message: "请选择协会类型", trigger: ["blur", "change"] }],
|
||||||
concatPerson: [{ required: true, message: "请选择协会联系人", trigger: ["blur", "change"] }],
|
concatPerson: [{ required: true, message: "请选择协会联系人", trigger: ["blur", "change"] }],
|
||||||
foundTime: [{ required: true, message: "请选择成立时间", trigger: ["blur", "change"] }]
|
foundTime: [{ required: true, message: "请选择成立时间", trigger: ["blur", "change"] }],
|
||||||
|
establishReport: [{ required: true, message: "请上传申请成立报告", trigger: ["blur", "change"] }],
|
||||||
|
rulesFile: [{ required: true, message: "请上传章程草案", trigger: ["blur", "change"] }]
|
||||||
// establishReport: [{ required: true, message: "请上传申请成立报告", trigger: ["blur", "change"] }]
|
// establishReport: [{ required: true, message: "请上传申请成立报告", trigger: ["blur", "change"] }]
|
||||||
//rulesFile: [{ required: true, message: "请上传章程草案", trigger: ["blur", "change"] }],
|
//rulesFile: [{ required: true, message: "请上传章程草案", trigger: ["blur", "change"] }],
|
||||||
//manageFile: [{ required: true, message: "请上传经费来源及管理办法", trigger: ["blur", "change"] }],
|
//manageFile: [{ required: true, message: "请上传经费来源及管理办法", trigger: ["blur", "change"] }],
|
||||||
@@ -173,6 +188,14 @@ const CLUB_FORM_TEMPLATE = {
|
|||||||
},
|
},
|
||||||
computed: {},
|
computed: {},
|
||||||
methods: {
|
methods: {
|
||||||
|
// 下载已上传的协会申请成立报告模板。
|
||||||
|
downloadApplyTemplate() {
|
||||||
|
window.open("/platform/club/register/clubRegisterApply/downloadTemplate")
|
||||||
|
},
|
||||||
|
// 下载已上传的协会章程草案模板。
|
||||||
|
downloadRulesTemplate() {
|
||||||
|
window.open("/platform/club/register/clubRegisterApply/downloadRulesTemplate")
|
||||||
|
},
|
||||||
/*concatPersonChange(id) {
|
/*concatPersonChange(id) {
|
||||||
const user = this.$refs.userSelectRef.options.find((user) => user.id === id)
|
const user = this.$refs.userSelectRef.options.find((user) => user.id === id)
|
||||||
this.$set(this.formData, "concatPersonUnitName", user.unitName)
|
this.$set(this.formData, "concatPersonUnitName", user.unitName)
|
||||||
|
|||||||
@@ -64,7 +64,7 @@ layout("/layouts/platform.html"){
|
|||||||
nextStep() {
|
nextStep() {
|
||||||
let valid = true
|
let valid = true
|
||||||
this.$refs.clubFormRef.$refs.form.validateField(
|
this.$refs.clubFormRef.$refs.form.validateField(
|
||||||
["clubName", "establishReport", "rulesFile", "manageFile", "yearPlanFile"],
|
["clubName", "establishReport", "rulesFile"],
|
||||||
(errMsg) => {
|
(errMsg) => {
|
||||||
if (!errMsg) {
|
if (!errMsg) {
|
||||||
valid = false
|
valid = false
|
||||||
|
|||||||
@@ -20,7 +20,6 @@ const basicForm = {
|
|||||||
<el-form-item label="慰问方式" prop="way">
|
<el-form-item label="慰问方式" prop="way">
|
||||||
<el-radio-group v-model="formData.way">
|
<el-radio-group v-model="formData.way">
|
||||||
<el-radio-button label="慰问金 (A)" border>慰问金 (A)</el-radio-button>
|
<el-radio-button label="慰问金 (A)" border>慰问金 (A)</el-radio-button>
|
||||||
<el-radio-button label="提货券 (B)" border>提货券 (B)</el-radio-button>
|
|
||||||
<el-radio-button label="慰问品 (C)" border>慰问品 (C)</el-radio-button>
|
<el-radio-button label="慰问品 (C)" border>慰问品 (C)</el-radio-button>
|
||||||
</el-radio-group>
|
</el-radio-group>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|||||||
@@ -86,6 +86,7 @@ layout("/layouts/platform.html"){
|
|||||||
{prop: 'money', label: '金额'},
|
{prop: 'money', label: '金额'},
|
||||||
{prop: 'way', label: '慰问方式'},
|
{prop: 'way', label: '慰问方式'},
|
||||||
{prop: 'isUploadFile', label: '是否上传附件'},
|
{prop: 'isUploadFile', label: '是否上传附件'},
|
||||||
|
{prop: 'uploadFileDesc', label: '附件说明'},
|
||||||
{prop: 'enable', label: '是否启用'},
|
{prop: 'enable', label: '是否启用'},
|
||||||
],
|
],
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -367,7 +367,7 @@ layout("/layouts/platform_h5.html"){
|
|||||||
</van-field>
|
</van-field>
|
||||||
</van-cell-group>
|
</van-cell-group>
|
||||||
|
|
||||||
<van-cell v-if="false"-group title="签字" class="form-section">
|
<van-cell-group v-if="false" title="签字" class="form-section">
|
||||||
<van-field v-if="false" class="direction-column-field" name="signature" label="">
|
<van-field v-if="false" class="direction-column-field" name="signature" label="">
|
||||||
<template #input>
|
<template #input>
|
||||||
<h5-signature v-if="false" v-model="formData.signature" slot="input"></h5-signature>
|
<h5-signature v-if="false" v-model="formData.signature" slot="input"></h5-signature>
|
||||||
@@ -562,10 +562,11 @@ layout("/layouts/platform_h5.html"){
|
|||||||
},
|
},
|
||||||
async onSubmit() {
|
async onSubmit() {
|
||||||
this.$refs.formRef.validate().then(() => {
|
this.$refs.formRef.validate().then(() => {
|
||||||
if (!this.formData.signature){
|
// 签字功能当前已停用,暂不校验签字信息。
|
||||||
this.$toast.fail("请填写签字")
|
// if (!this.formData.signature){
|
||||||
return
|
// this.$toast.fail("请填写签字")
|
||||||
}
|
// return
|
||||||
|
// }
|
||||||
this.$dialog.confirm({
|
this.$dialog.confirm({
|
||||||
title: "提示",
|
title: "提示",
|
||||||
message: "您确定要提交申请吗?"
|
message: "您确定要提交申请吗?"
|
||||||
@@ -584,10 +585,11 @@ layout("/layouts/platform_h5.html"){
|
|||||||
},
|
},
|
||||||
async onFinishTask() {
|
async onFinishTask() {
|
||||||
this.$refs.formRef.validate().then(() => {
|
this.$refs.formRef.validate().then(() => {
|
||||||
if (!this.formData.signature){
|
// 签字功能当前已停用,暂不校验签字信息。
|
||||||
this.$toast.fail("请填写签字")
|
// if (!this.formData.signature){
|
||||||
return
|
// this.$toast.fail("请填写签字")
|
||||||
}
|
// return
|
||||||
|
// }
|
||||||
this.$dialog.confirm({
|
this.$dialog.confirm({
|
||||||
title: "提示",
|
title: "提示",
|
||||||
message: "您确定要提交申请吗?"
|
message: "您确定要提交申请吗?"
|
||||||
|
|||||||
+1
-1
@@ -7,7 +7,7 @@ layout("/layouts/platform_h5.html"){
|
|||||||
</style>
|
</style>
|
||||||
|
|
||||||
<div id="app">
|
<div id="app">
|
||||||
<van-nav-bar title="校工会会计审核" left-text="返回" left-arrow @click-left="historyBack" fixed placeholder></van-nav-bar>
|
<van-nav-bar title="校工会财务审核" left-text="返回" left-arrow @click-left="historyBack" fixed placeholder></van-nav-bar>
|
||||||
|
|
||||||
<van-sticky offset-top="46px">
|
<van-sticky offset-top="46px">
|
||||||
<van-search
|
<van-search
|
||||||
|
|||||||
+11
-9
@@ -229,7 +229,7 @@ layout("/layouts/platform_h5.html"){
|
|||||||
</van-field>
|
</van-field>
|
||||||
</van-cell-group>
|
</van-cell-group>
|
||||||
|
|
||||||
<van-cell v-if="false"-group title="签字" class="form-section">
|
<van-cell-group v-if="false" title="签字" class="form-section">
|
||||||
<van-field v-if="false" class="more-text" name="sign" label="">
|
<van-field v-if="false" class="more-text" name="sign" label="">
|
||||||
<template #input>
|
<template #input>
|
||||||
<h5-signature v-if="false" v-model="formData.sign" slot="input"></h5-signature>
|
<h5-signature v-if="false" v-model="formData.sign" slot="input"></h5-signature>
|
||||||
@@ -348,10 +348,11 @@ layout("/layouts/platform_h5.html"){
|
|||||||
// 提交
|
// 提交
|
||||||
onSubmit() {
|
onSubmit() {
|
||||||
this.$refs.formRef.validate().then(() => {
|
this.$refs.formRef.validate().then(() => {
|
||||||
if (!this.formData.sign){
|
// 签字功能当前已停用,暂不校验签字信息。
|
||||||
this.$toast.fail("请填写签字")
|
// if (!this.formData.sign){
|
||||||
return
|
// this.$toast.fail("请填写签字")
|
||||||
}
|
// return
|
||||||
|
// }
|
||||||
this.$dialog.confirm({
|
this.$dialog.confirm({
|
||||||
title: "提示",
|
title: "提示",
|
||||||
message: "您确定要提交吗?"
|
message: "您确定要提交吗?"
|
||||||
@@ -381,10 +382,11 @@ layout("/layouts/platform_h5.html"){
|
|||||||
|
|
||||||
onFinishTask() {
|
onFinishTask() {
|
||||||
this.$refs.formRef.validate().then(() => {
|
this.$refs.formRef.validate().then(() => {
|
||||||
if (!this.formData.sign){
|
// 签字功能当前已停用,暂不校验签字信息。
|
||||||
this.$toast.fail("请填写签字")
|
// if (!this.formData.sign){
|
||||||
return
|
// this.$toast.fail("请填写签字")
|
||||||
}
|
// return
|
||||||
|
// }
|
||||||
this.$dialog.confirm({
|
this.$dialog.confirm({
|
||||||
title: "提示",
|
title: "提示",
|
||||||
message: "您确定要提交吗?"
|
message: "您确定要提交吗?"
|
||||||
|
|||||||
Reference in New Issue
Block a user