移植体育活动组队报名
This commit is contained in:
@@ -95,7 +95,7 @@ public class MainLauncher {
|
||||
groupTemplate.registerTagFactory("cms_article_list", () -> ioc.get(CmsArticleListTag.class));
|
||||
groupTemplate.registerTagFactory("cms_article", () -> ioc.get(CmsArticleTag.class));
|
||||
groupTemplate.registerTagFactory("cms_link_list", () -> ioc.get(CmsLinkListTag.class));
|
||||
// init_sys();
|
||||
init_sys();
|
||||
init_task();
|
||||
init_proposal_undertake();
|
||||
ioc.get(Globals.class);
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
package io.v.nutz.activity.controller.school;
|
||||
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import cn.wizzer.framework.base.Result;
|
||||
import io.v.nutz.activity.models.*;
|
||||
import io.v.nutz.activity.services.ActivitySchoolApplyService;
|
||||
@@ -155,7 +156,7 @@ public class ActivityApplyController {
|
||||
}
|
||||
|
||||
|
||||
if (!ShiroUtil.hasAnyRoles("H04,sysadmin")) {
|
||||
if (!ShiroUtil.hasAnyRoles("H04,gh08,sysadmin")) {
|
||||
cnd.and(new Static("JSON_CONTAINS(school.applyWay,JSON_ARRAY( 1))>0"));
|
||||
cnd.and(new Static("(SELECT COUNT(1) FROM activity_user_scope WHERE groupId=school.activityGroupId AND userId='%s') >0".formatted(ShiroUtil.getUserId())));
|
||||
}
|
||||
@@ -199,15 +200,16 @@ public class ActivityApplyController {
|
||||
Sql sql = Sqls.create("""
|
||||
SELECT
|
||||
u.id,
|
||||
u.username,
|
||||
u.unitid,
|
||||
u.loginname,
|
||||
u.sex,
|
||||
u.birthday,
|
||||
u.mobile,
|
||||
un.`name` unitname
|
||||
u.username,
|
||||
u.unitid,
|
||||
u.loginname,
|
||||
u.sex,
|
||||
u.birthday,
|
||||
un.`name` unitname,
|
||||
uni.`id` unionId,
|
||||
uni.`unionname` unionName
|
||||
FROM
|
||||
sys_user u
|
||||
`user` u
|
||||
LEFT JOIN activity_basic_unit un ON u.unitid = un.id
|
||||
LEFT JOIN activity_basic_union uni ON un.unionid=uni.id
|
||||
$condition
|
||||
@@ -226,10 +228,10 @@ public class ActivityApplyController {
|
||||
}
|
||||
|
||||
sql.setCondition(cnd);
|
||||
List<Record> userList = activitySchoolService.list(sql);
|
||||
List<NutMap> userList = activitySchoolService.listMap(sql);
|
||||
userList.forEach(v -> {
|
||||
if (Strings.isNotBlank(v.getString("birthday"))) {
|
||||
v.set("age", cn.hutool.core.date.DateUtil.ageOfNow(v.getString("birthday")));
|
||||
v.put("age", cn.hutool.core.date.DateUtil.ageOfNow(v.getString("birthday")));
|
||||
}
|
||||
});
|
||||
result.put("users", userList);
|
||||
@@ -251,15 +253,15 @@ public class ActivityApplyController {
|
||||
asa.identity DESC,
|
||||
asa.sex
|
||||
""").setParam("eventId", eventId).setParam("unionid", union_id).setParam("activityId", activityId);
|
||||
List<ActivitySchoolApply> list = activitySchoolApplyService.listEntity(applySql);
|
||||
List<NutMap> list = activitySchoolApplyService.listMap(applySql);
|
||||
//团体人数
|
||||
List<ActivitySchoolApply> awardsModeT = list.stream().filter(v -> v.getAwardsMode().equals("2")).collect(Collectors.toList());
|
||||
List<NutMap> awardsModeT = list.stream().filter(v -> v.getString("awardsMode").equals("2")).collect(Collectors.toList());
|
||||
//单项人数
|
||||
List<ActivitySchoolApply> awardsModeG = list.stream().filter(v -> v.getAwardsMode().equals("1")).collect(Collectors.toList());
|
||||
List<NutMap> awardsModeG = list.stream().filter(v -> v.getString("awardsMode").equals("1")).collect(Collectors.toList());
|
||||
|
||||
list.forEach(v -> {
|
||||
if (Strings.isNotBlank(v.getBirthday())) {
|
||||
v.setAge(cn.hutool.core.date.DateUtil.ageOfNow(v.getBirthday()));
|
||||
if (Strings.isNotBlank(v.getString("birthday"))) {
|
||||
v.setv("birthday",cn.hutool.core.date.DateUtil.ageOfNow(v.getString("birthday")));
|
||||
}
|
||||
});
|
||||
|
||||
@@ -270,7 +272,9 @@ public class ActivityApplyController {
|
||||
result.put("team", activitySchoolTeamService.query(Cnd.where("eventId", "=", eventId).and("activityId", "=", activityId).asc("location")));
|
||||
|
||||
result.put("activity", activity);
|
||||
result.put("getEvent", activitySchoolEventViService.fetch(schoolEventId));
|
||||
List<NutMap> events = (List<NutMap>) getEvents(activityId);
|
||||
NutMap eve = events.stream().filter(v -> v.getString("id").equals(schoolEventId)).findFirst().orElse(null);
|
||||
result.put("getEvent", eve);
|
||||
|
||||
return result;
|
||||
}
|
||||
@@ -360,30 +364,26 @@ public class ActivityApplyController {
|
||||
public Object doApply(@Param(value = "data",required = false) ActivitySchoolApply[] applies,
|
||||
@Param(value = "appliedData3",required = false) ActivitySchoolApply[] applies2,
|
||||
@Param(value = "eventId",required = false) String eventId,
|
||||
@Param(value = "activityId") String activityId,
|
||||
@Param(value = "pass",required = false)boolean pass) {
|
||||
Sys_user user = (Sys_user) ShiroUtil.getPrincipal();
|
||||
Sys_unit unit = user.getUnit();
|
||||
String activityId = "";
|
||||
ActivityBasicUnit basicUnit = activitySchoolService.dao().fetch(ActivityBasicUnit.class, Cnd.where("id", "=", unit.getId()));
|
||||
ActivityBasicUnion basicUnion = activitySchoolService.dao().fetch(ActivityBasicUnion.class, Cnd.where("id", "=", basicUnit.getUnionid()));
|
||||
for (ActivitySchoolApply apply : applies) {
|
||||
activityId = applies[0].getActivityId();
|
||||
apply.setApplyUser(ShiroUtil.getPrincipalProperty("id").toString());
|
||||
apply.setStatus(pass ? 2 : 0);
|
||||
apply.setAwardsMode("2");
|
||||
apply.setApplyDate(DateUtil.getDate());
|
||||
apply.setUnionId(unit.getUnionid());
|
||||
apply.setActivityUnionId(basicUnit.getUnionid());
|
||||
apply.setActivityUnionName(basicUnion.getUnionname());
|
||||
}
|
||||
|
||||
for (ActivitySchoolApply apply2 : applies2) {
|
||||
activityId = applies2[0].getActivityId();
|
||||
apply2.setApplyUser(ShiroUtil.getPrincipalProperty("id").toString());
|
||||
apply2.setStatus(pass ? 2 : 0);
|
||||
apply2.setAwardsMode("1");
|
||||
apply2.setApplyDate(DateUtil.getDate());
|
||||
apply2.setUnionId(unit.getUnionid());
|
||||
apply2.setActivityUnionId(basicUnit.getUnionid());
|
||||
apply2.setActivityUnionName(basicUnion.getUnionname());
|
||||
}
|
||||
@@ -529,17 +529,28 @@ public class ActivityApplyController {
|
||||
@RequiresPermissions("activity.apply")
|
||||
public Object findUserOne(String id) {
|
||||
try {
|
||||
Sql sql = Sqls.create("SELECT\n" +
|
||||
"\tu.id,u.username,u.unitid,\n" +
|
||||
"\tu.loginname,\n" +
|
||||
"\tu.sex,\n" +
|
||||
"\tu.mobile,\n" +
|
||||
"\tun.`name` unitname \n" +
|
||||
"FROM\n" +
|
||||
"\tsys_user u\n" +
|
||||
"\tLEFT JOIN sys_unit un ON u.unitid = un.id Where u.id = @id").setParam("id", id);
|
||||
|
||||
return Result.success().addData(activitySchoolService.list(sql).get(0));
|
||||
Sql sql = Sqls.create("""
|
||||
SELECT
|
||||
u.id,
|
||||
u.username,
|
||||
u.unitid,
|
||||
u.loginname,
|
||||
u.sex,
|
||||
u.birthday,
|
||||
un.`name` unitname,
|
||||
uni.`id` unionId,
|
||||
uni.`unionname` unionName
|
||||
FROM
|
||||
`user` u
|
||||
LEFT JOIN activity_basic_unit un ON u.unitid = un.id
|
||||
LEFT JOIN activity_basic_union uni ON un.unionid=uni.id
|
||||
Where u.id = @id
|
||||
""").setParam("id", id);
|
||||
NutMap nutMap = activitySchoolService.fetch(sql);
|
||||
if (Strings.isNotBlank(nutMap.getString("birthday"))) {
|
||||
nutMap.setv("age", cn.hutool.core.date.DateUtil.ageOfNow(nutMap.getString("birthday")));
|
||||
}
|
||||
return Result.success().addData(nutMap);
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
return Result.error();
|
||||
@@ -570,7 +581,6 @@ public class ActivityApplyController {
|
||||
Sql sql = Sqls.create("""
|
||||
SELECT
|
||||
act.*,
|
||||
ev.id,
|
||||
ev.competitionCategory,
|
||||
ev.distance,
|
||||
ev.sports,
|
||||
@@ -628,7 +638,8 @@ public class ActivityApplyController {
|
||||
(SELECT ast.`name` FROM activity_school_apply app LEFT JOIN activity_school_team ast ON ast.id = app.teamId WHERE app.eventId = ase.eventId AND app.activityId = ase.activityId AND app.userId = @userId) activityTeamName,
|
||||
(SELECT COUNT(1) FROM activity_school_apply WHERE eventId=ase.eventId AND activityId=ase.activityId and status=2 and activityUnionId=@unionId) applyNum,
|
||||
(SELECT COUNT(1) FROM activity_school_apply WHERE eventId = ase.eventId AND activityId = ase.activityId AND userId=@userId) userApply,
|
||||
(SELECT COUNT(1) FROM activity_school_apply WHERE eventId=ase.eventId AND activityId=ase.activityId and status=2) totalApplyNum
|
||||
(SELECT COUNT(1) FROM activity_school_apply WHERE eventId=ase.eventId AND activityId=ase.activityId and status=2) totalApplyNum,
|
||||
(SELECT COUNT(1) FROM activity_school_apply WHERE eventId=ase.eventId AND activityId=ase.activityId and status=0 and activityUnionId=@unionId) apply_num_bc
|
||||
FROM
|
||||
activity_school_event ase
|
||||
LEFT JOIN activity_school school ON ase.activityId = school.id
|
||||
@@ -647,7 +658,7 @@ public class ActivityApplyController {
|
||||
//如果不是超级管理员就按男女查询,isMenWomen 1是男2是女projectType 2是团体
|
||||
/* if (!ShiroUtil.hasAnyRoles("sysadmin,H04,A06")) {
|
||||
if (StrUtil.isNotBlank(applyType)) {
|
||||
if (!applyType.equals("1")) {
|
||||
if (!applyType.equals("1")) {Z
|
||||
if (ShiroUtil.getPrincipalProperty("sex").equals("男")) {
|
||||
cnd.and(new Static("(eve.isMenWomen =1 OR eve.isMenWomen IS NULL )"));
|
||||
} else {
|
||||
@@ -683,12 +694,23 @@ public class ActivityApplyController {
|
||||
public Object doLeaderCoachHead(@Param(value = "staffData", required = false) ActivitySchoolApply staffData,
|
||||
@Param(value = "LeaderData", required = false) ActivitySchoolApply LeaderData,
|
||||
@Param(value = "CoachData", required = false) ActivitySchoolApply CoachData,
|
||||
@Param(value = "headData", required = false) ActivitySchoolApply headData) {
|
||||
@Param(value = "headData", required = false) ActivitySchoolApply headData,
|
||||
String activityId) {
|
||||
|
||||
Cnd cnd = Cnd.NEW();
|
||||
SqlExpressionGroup group = new SqlExpressionGroup();
|
||||
group.or("unionStaff", "=", true);
|
||||
group.or("unionLeader", "=", true);
|
||||
group.or("unionCoach", "=", true);
|
||||
group.or("unionHead", "=", true);
|
||||
cnd.and(group);
|
||||
cnd.and("activityId", "=", activityId);
|
||||
cnd.and("activityUnionId", "=", getUnionId());
|
||||
activitySchoolApplyService.clear(cnd);
|
||||
|
||||
if (staffData.getUserId() != null) {
|
||||
ActivityBasicUnit basicUnit = activitySchoolService.dao().fetch(ActivityBasicUnit.class, Cnd.where("id", "=", staffData.getUnitId()));
|
||||
ActivityBasicUnion basicUnion = activitySchoolService.dao().fetch(ActivityBasicUnion.class, Cnd.where("id", "=", basicUnit.getUnionid()));
|
||||
activitySchoolApplyService.clear(Cnd.where("activityId", "=", staffData.getActivityId()).and("unionStaff", "=", true).and("unionId", "=", getUnionId()));
|
||||
staffData.setApplyUser(ShiroUtil.getPrincipalProperty("id").toString());
|
||||
staffData.setApplyDate(DateUtil.getDate());
|
||||
staffData.setUnitname(basicUnit.getName());
|
||||
@@ -699,7 +721,6 @@ public class ActivityApplyController {
|
||||
if (LeaderData.getUserId() != null) {
|
||||
ActivityBasicUnit basicUnit = activitySchoolService.dao().fetch(ActivityBasicUnit.class, Cnd.where("id", "=", LeaderData.getUnitId()));
|
||||
ActivityBasicUnion basicUnion = activitySchoolService.dao().fetch(ActivityBasicUnion.class, Cnd.where("id", "=", basicUnit.getUnionid()));
|
||||
activitySchoolApplyService.clear(Cnd.where("activityId", "=", LeaderData.getActivityId()).and("unionLeader", "=", true).and("unionId", "=", getUnionId()));
|
||||
LeaderData.setApplyUser(ShiroUtil.getPrincipalProperty("id").toString());
|
||||
LeaderData.setApplyDate(DateUtil.getDate());
|
||||
LeaderData.setUnitname(basicUnit.getName());
|
||||
@@ -710,7 +731,6 @@ public class ActivityApplyController {
|
||||
if (CoachData.getUserId() != null) {
|
||||
ActivityBasicUnit basicUnit = activitySchoolService.dao().fetch(ActivityBasicUnit.class, Cnd.where("id", "=", CoachData.getUnitId()));
|
||||
ActivityBasicUnion basicUnion = activitySchoolService.dao().fetch(ActivityBasicUnion.class, Cnd.where("id", "=", basicUnit.getUnionid()));
|
||||
activitySchoolApplyService.clear(Cnd.where("activityId", "=", CoachData.getActivityId()).and("unionCoach", "=", true).and("unionId", "=", getUnionId()));
|
||||
CoachData.setApplyUser(ShiroUtil.getPrincipalProperty("id").toString());
|
||||
CoachData.setApplyDate(DateUtil.getDate());
|
||||
CoachData.setUnitname(basicUnit.getName());
|
||||
@@ -721,7 +741,6 @@ public class ActivityApplyController {
|
||||
if (headData.getUserId() != null) {
|
||||
ActivityBasicUnit basicUnit = activitySchoolService.dao().fetch(ActivityBasicUnit.class, Cnd.where("id", "=", headData.getUnitId()));
|
||||
ActivityBasicUnion basicUnion = activitySchoolService.dao().fetch(ActivityBasicUnion.class, Cnd.where("id", "=", basicUnit.getUnionid()));
|
||||
activitySchoolApplyService.clear(Cnd.where("activityId", "=", headData.getActivityId()).and("unionHead", "=", true).and("unionId", "=", getUnionId()));
|
||||
headData.setApplyUser(ShiroUtil.getPrincipalProperty("id").toString());
|
||||
headData.setApplyDate(DateUtil.getDate());
|
||||
headData.setUnitname(basicUnit.getName());
|
||||
@@ -818,5 +837,39 @@ public class ActivityApplyController {
|
||||
return Result.success();
|
||||
}
|
||||
|
||||
@At
|
||||
@ViReturn
|
||||
@RequiresPermissions("activity.apply")
|
||||
@Ok("json:{ignoreNull:true}")
|
||||
public Object getSysUser(String queryString, String[] userId) {
|
||||
Cnd cnd = Cnd.NEW();
|
||||
cnd.andEX("id", "not in", userId);
|
||||
if (StrUtil.isNotBlank(queryString)) {
|
||||
SqlExpressionGroup group = new SqlExpressionGroup();
|
||||
group.andLike("username", queryString).orLike("loginname", queryString);
|
||||
cnd.and(group);
|
||||
}
|
||||
|
||||
Sql sql = Sqls.create("""
|
||||
SELECT
|
||||
id,
|
||||
loginname,
|
||||
username,
|
||||
sex,
|
||||
unitid,
|
||||
unionid,
|
||||
unionname,
|
||||
birthday
|
||||
FROM
|
||||
`user`
|
||||
$condition
|
||||
LIMIT 30
|
||||
""");
|
||||
sql.setCondition(cnd);
|
||||
List<NutMap> list = sysUserService.listMap(sql);
|
||||
return list;
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -2,6 +2,9 @@ package io.v.nutz.activity.controller.school;
|
||||
|
||||
import cn.afterturn.easypoi.excel.ExcelExportUtil;
|
||||
import cn.afterturn.easypoi.excel.entity.ExportParams;
|
||||
import cn.afterturn.easypoi.excel.entity.enmus.ExcelType;
|
||||
import cn.afterturn.easypoi.excel.entity.params.ExcelExportEntity;
|
||||
import cn.afterturn.easypoi.excel.export.ExcelExportService;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import com.deepoove.poi.XWPFTemplate;
|
||||
import com.deepoove.poi.config.Configure;
|
||||
@@ -19,7 +22,9 @@ import io.v.nutz.sys.models.Sys_unit;
|
||||
import io.v.nutz.sys.models.Sys_user;
|
||||
import io.v.nutz.sys.services.SysUnionService;
|
||||
import io.v.nutz.util.ShiroUtil;
|
||||
import io.v.nutz.util.ViTool;
|
||||
import org.apache.poi.ss.usermodel.Workbook;
|
||||
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
|
||||
import org.apache.shiro.authz.annotation.RequiresAuthentication;
|
||||
import org.nutz.dao.Cnd;
|
||||
import org.nutz.dao.Sqls;
|
||||
@@ -29,12 +34,14 @@ import org.nutz.dao.util.cri.Static;
|
||||
import org.nutz.ioc.loader.annotation.Inject;
|
||||
import org.nutz.ioc.loader.annotation.IocBean;
|
||||
import org.nutz.json.Json;
|
||||
import org.nutz.lang.Lang;
|
||||
import org.nutz.lang.Strings;
|
||||
import org.nutz.lang.util.NutMap;
|
||||
import org.nutz.mvc.annotation.At;
|
||||
import org.nutz.mvc.annotation.Ok;
|
||||
import org.nutz.mvc.annotation.Param;
|
||||
|
||||
import javax.servlet.ServletOutputStream;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
@@ -269,51 +276,96 @@ public class ActivityCommonController {
|
||||
|
||||
|
||||
@At
|
||||
@Ok("void")
|
||||
public void exportXlsx(String id, String unionId, HttpServletResponse response) throws IOException {
|
||||
Sql sql = Sqls.create("""
|
||||
SELECT
|
||||
app.username,
|
||||
app.loginname,
|
||||
app.identity,
|
||||
app.activityUnionName unionname,
|
||||
app.sex,
|
||||
app.mobile,
|
||||
u.idCard,
|
||||
u.userState,
|
||||
ev.allName,
|
||||
sc.`name` activityName,
|
||||
app.`team` team
|
||||
FROM
|
||||
`activity_school_apply` app
|
||||
LEFT JOIN `user` u ON u.id = app.userId
|
||||
LEFT JOIN activity_event ev ON ev.id = app.eventId
|
||||
LEFT JOIN activity_school sc ON sc.id=app.activityId
|
||||
WHERE
|
||||
activityId = @id
|
||||
$cnd
|
||||
ORDER BY
|
||||
ev.allName DESC,
|
||||
u.unionname DESC,
|
||||
app.`team` asc
|
||||
app.username,
|
||||
app.loginname,
|
||||
app.identity,
|
||||
app.activityUnionName,
|
||||
app.unionName,
|
||||
app.unitname,
|
||||
app.unionId,
|
||||
app.activityUnionId,
|
||||
app.sex,
|
||||
ev.allName,
|
||||
sc.`name` activityName,
|
||||
app.`team` teamName
|
||||
FROM
|
||||
`activity_school_apply` app
|
||||
LEFT JOIN `user` u ON u.id = app.userId
|
||||
LEFT JOIN activity_event ev ON ev.id = app.eventId
|
||||
LEFT JOIN activity_school sc ON sc.id = app.activityId
|
||||
WHERE
|
||||
activityId = @id
|
||||
$cnd
|
||||
ORDER BY
|
||||
ev.projectCode desc,
|
||||
app.activityUnionName DESC,
|
||||
app.`team` ASC,
|
||||
CASE
|
||||
WHEN JSON_SEARCH( app.identity, 'one', '7' ) IS NOT NULL THEN
|
||||
1
|
||||
WHEN JSON_SEARCH( app.identity, 'one', '3' ) IS NOT NULL THEN
|
||||
2
|
||||
WHEN JSON_SEARCH( app.identity, 'one', '2' ) IS NOT NULL THEN
|
||||
3 ELSE 4 END;
|
||||
""").setParam("id", id);
|
||||
if (Strings.isNotBlank(unionId)) {
|
||||
sql.setVar("cnd", "and u.unionid='" + unionId + "'");
|
||||
sql.setVar("cnd", "and app.activityUnionId='" + unionId + "'");
|
||||
}
|
||||
List<Record> list = activitySchoolApplyService.list(sql);
|
||||
String activityName = list.get(0).getString("activityName");
|
||||
List<NutMap> list = activitySchoolApplyService.listMap(sql);
|
||||
|
||||
List<ActivitySchoolApply> excels = new ArrayList<>();
|
||||
List<ExcelExportEntity> entityList = new ArrayList<>();
|
||||
ExcelExportEntity no = new ExcelExportEntity("序号", "no", 10);
|
||||
no.setFormat("isAddIndex");
|
||||
entityList.add(no);
|
||||
entityList.add(new ExcelExportEntity("项目名称", "allName", 50));
|
||||
entityList.add(new ExcelExportEntity("所属队", "teamName", 20));
|
||||
entityList.add(new ExcelExportEntity("姓名", "username", 20));
|
||||
entityList.add(new ExcelExportEntity("工号", "loginname", 20));
|
||||
entityList.add(new ExcelExportEntity("所在单位", "unitname", 50));
|
||||
entityList.add(new ExcelExportEntity("所在分工会", "unionName", 50));
|
||||
entityList.add(new ExcelExportEntity("报名分工会", "activityUnionName", 50));
|
||||
entityList.add(new ExcelExportEntity("身份", "sf", 30));
|
||||
entityList.add(new ExcelExportEntity("备注", "applyUnitName", 30));
|
||||
List<NutMap> applyUnitNameList = new ArrayList<>();
|
||||
list.forEach(map -> {
|
||||
ActivitySchoolApply schoolApply = Lang.map2Object(map, ActivitySchoolApply.class);
|
||||
if (StrUtil.isAllNotBlank(schoolApply.getUnionId(), schoolApply.getActivityUnionId()) && !schoolApply.getUnionId().equals(schoolApply.getActivityUnionId())) {
|
||||
List<NutMap> applyList = list.stream().filter(v -> v.getString("activityUnionId").equals(map.getString("activityUnionId"))).collect(Collectors.toList());
|
||||
|
||||
list.forEach(z -> {
|
||||
ActivitySchoolApply schoolApply = z.toPojo(ActivitySchoolApply.class);
|
||||
String s = schoolApply.getIdentity().stream().map(personType::getName).collect(Collectors.toList()).toString();
|
||||
schoolApply.setSf(s);
|
||||
excels.add(schoolApply);
|
||||
List<String> unionNameList = applyList.stream().map(a -> a.getString("unionName")).distinct().collect(Collectors.toList());
|
||||
map.setv("applyUnitName", String.join(",", unionNameList));
|
||||
applyUnitNameList.add(new NutMap().addv("allName", map.getString("allName")).addv("applyUnitNameList", unionNameList));
|
||||
}
|
||||
|
||||
String sf = schoolApply.getIdentity().stream().map(personType::getName).collect(Collectors.toList()).toString();
|
||||
map.put("sf", sf.replace("[", "").replace("]", ""));
|
||||
});
|
||||
response.setContentType("application/octet-stream");
|
||||
response.setHeader("Content-Disposition", "attachment;filename=" + new String((activityName + "报名表.xls").getBytes("utf-8"), "ISO8859-1"));
|
||||
Workbook workbook = ExcelExportUtil.exportExcel(new ExportParams(), ActivitySchoolApply.class, excels);
|
||||
workbook.write(response.getOutputStream());
|
||||
|
||||
Map<String, List<NutMap>> userListMap = list.stream().collect(Collectors.groupingBy(n -> n.getString("allName")));
|
||||
Workbook workbook = new XSSFWorkbook();
|
||||
userListMap.forEach((k, v) -> {
|
||||
for (NutMap map : v) {
|
||||
NutMap applyUnitNameMap = applyUnitNameList.stream().filter(it -> it.getList("applyUnitNameList", String.class).contains(map.getString("unitname"))
|
||||
&& it.getString("allName").equals(k)).findFirst().orElse(null);
|
||||
if (Lang.isNotEmpty(applyUnitNameMap)) {
|
||||
map.put("applyUnitName", String.join(",", applyUnitNameMap.getList("applyUnitNameList", String.class)));
|
||||
}
|
||||
}
|
||||
ExcelExportService service = new ExcelExportService();
|
||||
ExportParams exportParams = new ExportParams();
|
||||
exportParams.setSheetName(k);
|
||||
exportParams.setType(ExcelType.XSSF);
|
||||
service.createSheetForMap(workbook, exportParams, entityList, v);
|
||||
});
|
||||
|
||||
ViTool.excelResponse(response, "报名汇总表.xlsx");
|
||||
ServletOutputStream outputStream = response.getOutputStream();
|
||||
workbook.write(outputStream);
|
||||
outputStream.close();
|
||||
}
|
||||
|
||||
|
||||
@@ -549,7 +601,7 @@ public class ActivityCommonController {
|
||||
|
||||
Cnd unionCnd = Cnd.NEW();
|
||||
Sql sql = Sqls.create("""
|
||||
SELECT * FROM sys_union un $condition
|
||||
SELECT * FROM sys_union un $condition
|
||||
""");
|
||||
|
||||
if (!ShiroUtil.hasAnyRoles("sysadmin,A06") && ShiroUtil.hasRole("H04")) {
|
||||
|
||||
+1
-1
@@ -95,7 +95,7 @@ public class ActivityInfoManageController {
|
||||
school.activityCode,
|
||||
school.foundDate,
|
||||
school.applyType,
|
||||
(SELECT COUNT(1) FROM activity_school_apply asa WHERE asa.activityId = school.id) applyNum
|
||||
(SELECT COUNT(1) FROM activity_school_apply asa WHERE asa.activityId = school.id and asa.status=2) applyNum
|
||||
FROM
|
||||
activity_school school
|
||||
LEFT JOIN activity_basic_settings ba ON ba.`code` = school.activityLevel
|
||||
|
||||
@@ -5,6 +5,7 @@ import cn.afterturn.easypoi.excel.ExcelImportUtil;
|
||||
import cn.afterturn.easypoi.excel.entity.ExportParams;
|
||||
import cn.afterturn.easypoi.excel.entity.ImportParams;
|
||||
import cn.afterturn.easypoi.excel.entity.enmus.ExcelType;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import cn.wizzer.framework.base.Result;
|
||||
import io.v.nutz.activity.controller.school.constant.SchoolActivityApplyExportEntity;
|
||||
import io.v.nutz.activity.models.*;
|
||||
@@ -130,10 +131,10 @@ public class ActivityReadingController {
|
||||
""");
|
||||
|
||||
cnd.and("app.activityId", "=", id);
|
||||
// cnd.and("YEAR(app.applyDate)", "=", year);
|
||||
cnd.and("app.status", "=", 2);
|
||||
sql.setCondition(cnd);
|
||||
if (!ShiroUtil.hasAnyRoles("sysadmin,A06")) {
|
||||
if (ShiroUtil.hasRole("H04") && activityLevel.equals("40002")) {
|
||||
if (ShiroUtil.hasAnyRoles("H04,gh08") && activityLevel.equals("40002")) {
|
||||
cnd.and("app.activityUnionId", "=", basicUnit.getUnionid());
|
||||
cnd.and("school.belongUnionId", "=", basicUnit.getUnionid());
|
||||
}
|
||||
@@ -148,7 +149,7 @@ public class ActivityReadingController {
|
||||
|
||||
Cnd unionCnd = Cnd.NEW();
|
||||
if (!ShiroUtil.hasAnyRoles("sysadmin,A06")) {
|
||||
if (ShiroUtil.hasRole("H04")) {
|
||||
if (ShiroUtil.hasAnyRoles("H04,gh08")) {
|
||||
unionCnd.and("id", "=", basicUnit.getUnionid());
|
||||
}
|
||||
}
|
||||
@@ -165,9 +166,17 @@ public class ActivityReadingController {
|
||||
String unionId = union.getId();
|
||||
NutMap map = new NutMap();
|
||||
|
||||
List<NutMap> applyList = applies.stream().filter(v -> {
|
||||
return v.getString("activityUnionId").equals(unionId);
|
||||
}).collect(Collectors.toList());
|
||||
List<NutMap> applyList = applies.stream().filter(v -> StrUtil.isNotBlank(v.getString("activityUnionId")) &&
|
||||
v.getString("activityUnionId").equals(unionId)).collect(Collectors.toList());
|
||||
|
||||
List<String> unionNameList = applyList.stream().map(a -> a.getString("unionName")).distinct().collect(Collectors.toList());
|
||||
applyList.forEach(a -> {
|
||||
if (!a.getString("unionId").equals(unionId)) {
|
||||
a.setv("bz", String.join(",", unionNameList));
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
map.setv("id", unionId);
|
||||
map.setv("unionname", union.getUnionname());
|
||||
map.setv("unioncode", union.getUnioncode());
|
||||
|
||||
@@ -60,6 +60,11 @@ public class ActivitySchoolApply implements Serializable {
|
||||
@ColDefine(type = ColType.VARCHAR, width = 32)
|
||||
private String unionId;
|
||||
|
||||
@Column
|
||||
@Comment("所属工会名称")
|
||||
@ColDefine(type = ColType.VARCHAR, width = 32)
|
||||
private String unionName;
|
||||
|
||||
@Column
|
||||
@Comment("所属活动工会")
|
||||
@ColDefine(type = ColType.VARCHAR, width = 32)
|
||||
@@ -136,53 +141,30 @@ public class ActivitySchoolApply implements Serializable {
|
||||
@ColDefine(type = ColType.VARCHAR, width = 100)
|
||||
private String unitname;
|
||||
|
||||
|
||||
@Excel(name = "分工会", width = 30)
|
||||
private String unionname;
|
||||
|
||||
@Column
|
||||
@Comment("小队名称")
|
||||
@Excel(name = "小队名称", width = 20)
|
||||
@ColDefine(type = ColType.VARCHAR, width = 30)
|
||||
private String team;
|
||||
|
||||
@Excel(name = "项目名称", width = 40)
|
||||
private String allName;
|
||||
|
||||
|
||||
@Column
|
||||
@Comment("工号")
|
||||
@Excel(name = "工号", width = 20)
|
||||
@ColDefine(type = ColType.VARCHAR, width = 50)
|
||||
private String loginname;
|
||||
|
||||
@Column
|
||||
@Comment("姓名")
|
||||
@Excel(name = "姓名", width = 20)
|
||||
@ColDefine(type = ColType.VARCHAR, width = 50)
|
||||
private String username;
|
||||
|
||||
@Column
|
||||
@Comment("电话")
|
||||
@Excel(name = "手机号码", width = 20)
|
||||
@ColDefine(type = ColType.VARCHAR, width = 50)
|
||||
private String mobile;
|
||||
|
||||
|
||||
@Excel(name = "身份证号", width = 20)
|
||||
private String idCard;
|
||||
|
||||
@Column
|
||||
@Comment("性别")
|
||||
@Excel(name = "性别", width = 20)
|
||||
@ColDefine(type = ColType.VARCHAR, width = 50)
|
||||
private String sex;
|
||||
|
||||
@Excel(name = "在职状态", width = 20)
|
||||
private String userState;
|
||||
|
||||
@Excel(name = "身份", width = 40)
|
||||
private String sf;
|
||||
private int age;
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -12,7 +12,7 @@ public interface ActivitySchoolApplyService extends ViService<ActivitySchoolAppl
|
||||
|
||||
void doApplies(List<ActivitySchoolApply> applies);
|
||||
|
||||
void doApplies(String activity, String union_id, String eventId,List<ActivitySchoolApply> applies);
|
||||
void doApplies(String activityId, String union_id, String eventId,List<ActivitySchoolApply> applies);
|
||||
|
||||
void doApply(ActivitySchoolApply apply);
|
||||
}
|
||||
|
||||
@@ -31,8 +31,10 @@ public class ActivitySchoolApplyServiceImpl extends ViServiceImpl<ActivitySchool
|
||||
|
||||
@Override
|
||||
@Aop(TransAop.READ_COMMITTED)
|
||||
public void doApplies(String activity, String union_id, String eventId,List<ActivitySchoolApply> applies) {
|
||||
clear(Cnd.where("activityId", "=", activity).and("unionId", "=", union_id).and("eventId","=",eventId));
|
||||
public void doApplies(String activityId, String union_id, String eventId,List<ActivitySchoolApply> applies) {
|
||||
clear(Cnd.where("activityId", "=", activityId)
|
||||
.and("activityUnionId", "=", union_id)
|
||||
.and("eventId","=",eventId));
|
||||
doApplies(applies);
|
||||
}
|
||||
|
||||
|
||||
@@ -58,8 +58,8 @@
|
||||
<script src="${base!}/assets/platform/plugins/echarts/westeros.js"></script><!--主题-->
|
||||
<script src="${base!}/assets/platform/plugins/echarts/walden.js"></script><!--主题-->
|
||||
<script src="${base!}/assets/platform/plugins/echarts/macarons.js"></script><!--主题-->
|
||||
<script src="https://cdn.staticfile.org/echarts/5.2.2/echarts.js"></script>
|
||||
<script src="https://cdn.staticfile.org/echarts/5.2.2/i18n/langZH.js"></script>
|
||||
<!-- <script src="https://cdn.staticfile.org/echarts/5.2.2/echarts.js"></script>-->
|
||||
<!-- <script src="https://cdn.staticfile.org/echarts/5.2.2/i18n/langZH.js"></script>-->
|
||||
|
||||
|
||||
<script src="${base!}/assets/platform/module/mixins/initTableMixins.js?v=1.0.3"></script>
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -459,8 +459,8 @@ layout("/layouts/platform.html"){
|
||||
<el-option
|
||||
v-for="item in events"
|
||||
:key="item.id"
|
||||
:label="item.allname"
|
||||
:value="item.eventid">
|
||||
:label="item.allName"
|
||||
:value="item.eventId">
|
||||
</el-option>
|
||||
</el-select>
|
||||
</div>
|
||||
@@ -638,9 +638,10 @@ layout("/layouts/platform.html"){
|
||||
{prop: 'sex', label: '性别'},
|
||||
/* {prop: 'divisionLevelLeadership', label: '是否处级领导', sortable: true},*/
|
||||
{prop: 'unitname', label: '单位', sortable: true},
|
||||
{prop: 'mobile', label: '电话'},
|
||||
// {prop: 'mobile', label: '电话'},
|
||||
{prop: 'projectType', label: '项目类型', sortable: true},
|
||||
{prop: 'identity', label: '身份', sortable: true, width: '300px'},
|
||||
{prop: 'bz', label: '备注', sortable: true, width: '300px'},
|
||||
],
|
||||
projectTypeList: [
|
||||
{id: '1', name: '单项'},
|
||||
@@ -795,7 +796,7 @@ layout("/layouts/platform.html"){
|
||||
this.$set(app, "apply2", apply)
|
||||
} else {
|
||||
const arr = apply.filter(i => {
|
||||
return !i.unionLeader && !i.unionCoach && i.evid == eventId
|
||||
return !i.unionLeader && !i.unionCoach && i.eventId == eventId
|
||||
})
|
||||
this.$set(app, "apply2", arr)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user