This commit is contained in:
@jyuhsin
2025-06-19 14:06:49 +08:00
parent 1e851ef2de
commit 7e86a33d99
8 changed files with 66 additions and 19 deletions
@@ -225,8 +225,7 @@ public class ClubMyApplyController {
users.add(msgUser);
String content = "%s老师您好,欢迎加入%s,请进入入会申请进行确认!".formatted(sysUser.getUsername(), sysClub.getName());
String link = Globals.AppDomain + "/platform/sys/club/sq/mobile";
//msgApi.sendMsg(List.of("DingTalk"), user, 2, "协会入会邀请", content, "", link);
msgApi.sendMsg("协会入会邀请", content, 1, 1, "SMS", users,"");
//msgApi.sendMsg("协会入会邀请", content, 1, 1, "SMS", users,"");
dao.update(
Sys_club_user.class,
Chain.make("sendMsg", true),
@@ -137,9 +137,7 @@ public class ClubXghReplyController {
List<msgUser> users = new ArrayList<>();
users.add(msgUser);
String content = "%s老师您好,您申请注册的%s已经审核通过。".formatted(sysUser.getUsername(), club.getName());
String link = "";
//msgApi.sendMsg(List.of("DingTalk"), sysUser.getLoginname(), 2, "协会注册", content, "", link);
msgApi.sendMsg("协会注册", content, 1, 1, "SMS",users ,"");
//msgApi.sendMsg("协会注册", content, 1, 1, "SMS",users ,"");
}
}
club.setXghAuditId(audit.getId());
@@ -99,7 +99,7 @@ public class SendMsgBeforeClassJob implements Job {
user.setName(item.getString("username"));
List<msgUser> users = new ArrayList<>();
users.add(user);
msgApi.sendMsg("活动开始通知", content, 1, 1, "SMS", users,"");
//msgApi.sendMsg("活动开始通知", content, 1, 1, "SMS", users,"");
//msgApi.sendMsg(List.of("DingTalk"), item.getString("loginname"), 1, "活动开始通知", content, "", "");
// msgApi.sendWxMsg("温馨提醒","","text",content,List.of(item.getString("loginname")),"");
// sendMsg.pushWeChatMsg("温馨提醒", content, item.getString("loginname"));
@@ -4,6 +4,7 @@ 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.hutool.core.date.DateUtil;
import cn.hutool.core.util.StrUtil;
import cn.wizzer.framework.base.Result;
import cn.wizzer.framework.base.service.BaseService;
@@ -24,6 +25,7 @@ import org.nutz.dao.Dao;
import org.nutz.dao.Sqls;
import org.nutz.dao.sql.Sql;
import org.nutz.dao.util.cri.SqlExpressionGroup;
import org.nutz.dao.util.cri.Static;
import org.nutz.ioc.aop.Aop;
import org.nutz.ioc.loader.annotation.Inject;
import org.nutz.ioc.loader.annotation.IocBean;
@@ -400,4 +402,56 @@ public class TheRapyRecuperationSchoolUnionUserQueryController {
e.printStackTrace();
}
}
@At
@Ok("void")
@RequiresPermissions("theRapyRecuperation.schoolUnionUserQuery")
public void noSignExport(HttpServletResponse response) {
TheRapyRecuperationConfig config = baseService.dao().fetch(TheRapyRecuperationConfig.class, Cnd.NEW());
Sql sql = Sqls.create("""
select
u.username as userName,
u.loginname as loginName,
u.sex,
u.mobile,
u.unitname as unitName,
u.unionname as unionName,
u.remark
from
activity_user_scope us
left join user u on u.id = us.userId
$condition
""");
Cnd cnd = Cnd.NEW();
cnd.and("us.groupId", "=", config.getActivityGroupId());
cnd.and(new Static(" u.loginname not in (select loginName from the_rapy_recuperation_enroll where year(signingUptime) = '%s' and isNormal = true)".formatted(DateUtil.thisYear())));
cnd.asc("unitcode");
sql.setCondition(cnd);
List<NutMap> listMap = enrollService.listMap(sql);
for (int i = 0; i < listMap.size(); i++) {
listMap.get(i).put("index", i + 1);
}
List<ExcelExportEntity> excelEntities = new ArrayList<>();
excelEntities.add(new ExcelExportEntity("序号", "index", 10));
excelEntities.add(new ExcelExportEntity("姓名", "userName", 10));
excelEntities.add(new ExcelExportEntity("工号", "loginName", 20));
excelEntities.add(new ExcelExportEntity("性别", "sex", 10));
excelEntities.add(new ExcelExportEntity("联系方式", "mobile", 20));
excelEntities.add(new ExcelExportEntity("所属单位", "unitName", 20));
excelEntities.add(new ExcelExportEntity("所属工会", "unionName", 20));
response.setContentType("application/octet-stream");
response.setHeader("Content-Disposition", "attachment;filename=" + new String((DateUtil.thisYear() + "未报名人员.xlsx").getBytes(StandardCharsets.UTF_8), StandardCharsets.ISO_8859_1));
ExportParams exportParams = new ExportParams();
exportParams.setType(ExcelType.XSSF);
try {
Workbook workbook = ExcelExportUtil.exportExcel(exportParams, excelEntities, listMap);
workbook.write(response.getOutputStream());
workbook.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
@@ -57,13 +57,7 @@ public class TheRapyRecuperationConfigController {
@RequiresAuthentication
@Aop(TransAop.READ_COMMITTED)
public Object operation(TheRapyRecuperationConfig config, String[] lotDeleteList) {
msgUser msgUser = new msgUser();
msgUser.setType("User");
msgUser.setUserId("LSGH0001");
msgUser.setName("工会测试");
List<msgUser> users = new ArrayList<>();
users.add(msgUser);
msgApi.sendMsg("测试", "这是一条测试消息", 1, 1, "WeChat", users, "");
msgApi.sendSMSMsg("这是一条测试消息", "LSGH0001", "13296575967");
/*if (Strings.isNotBlank(config.getId())) {
if (Lang.isNotEmpty(lotDeleteList)) {
dao.clear(TheRapyRecuperationLot.class, Cnd.where("id", "in", lotDeleteList));
@@ -331,9 +331,7 @@ public class WelfareProjectMangeController {
WelfareProject project = dao.fetch(WelfareProject.class, projectId);
String link = Globals.AppDomain + "/mobile/welfare/list/receive?projectId=%s".formatted(projectId);
msgApi.sendMsg("职工福利", sendMsgValue, 1, 1, "SMS", list,link);
// String imageUrl = Globals.AppDomain + "/file_server/fileStreamPreview?id=" + project.getCover();
//msgApi.sendMsg(List.of("DingTalk"), loginNames, 2, "职工福利", sendMsgValue, "", link);
//msgApi.sendMsg("职工福利", sendMsgValue, 1, 1, "SMS", list,link);
return null;
}
@@ -207,4 +207,4 @@ module.exports = {
}
}
}
</script>
</script>
@@ -171,6 +171,9 @@ layout("/layouts/platform.html"){
<template #func>
<!-- <el-button icon="el-icon-s-promotion" @click="openImport" size="small" type="primary">参加人员导入-->
<!-- </el-button>-->
<el-button icon="el-icon-s-promotion" size="small" type="primary" @click="noSignExport">
导出未报名人员
</el-button>
<el-button icon="el-icon-s-promotion" size="small" type="primary" @click="doExport">
导出
</el-button>
@@ -388,10 +391,11 @@ layout("/layouts/platform.html"){
openImport() {
},
noSignExport() {
window.open('/platform/theRapyRecuperation/schoolUnionUserQuery/noSignExport')
},
doExport() {
const {year, userName, loginName, unionId, signUpMode, regionalNature, takePartInLineId, lotId} = this.pageForm
debugger
window.open('/platform/theRapyRecuperation/schoolUnionUserQuery/exportXlsx?year=' +
year
+ '&userName=' + userName