体检统计:"给未选发送消息"的信息设置动态(体检项目中设置)

This commit is contained in:
2026-05-12 14:07:58 +08:00
parent 987403f96c
commit 90c5335526
3 changed files with 21 additions and 3 deletions
@@ -22,10 +22,12 @@ import com.budwk.app.zhgh.dayofficework.healthCheckup.model.HealthCheckupProject
import com.budwk.app.zhgh.dayofficework.healthCheckup.model.HealthCheckupProjectSubject; import com.budwk.app.zhgh.dayofficework.healthCheckup.model.HealthCheckupProjectSubject;
import com.budwk.app.zhgh.dayofficework.healthCheckup.model.HealthCheckupProjectSubjectMoney; import com.budwk.app.zhgh.dayofficework.healthCheckup.model.HealthCheckupProjectSubjectMoney;
import com.budwk.app.zhgh.dayofficework.healthCheckup.model.HealthCheckupUserSelection; import com.budwk.app.zhgh.dayofficework.healthCheckup.model.HealthCheckupUserSelection;
import com.budwk.app.zhgh.dayofficework.healthCheckup.service.HealthCheckupProjectService;
import com.budwk.app.zhgh.dayofficework.healthCheckup.service.HealthCheckupSingleService; import com.budwk.app.zhgh.dayofficework.healthCheckup.service.HealthCheckupSingleService;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import org.apache.commons.lang3.ObjectUtils; import org.apache.commons.lang3.ObjectUtils;
import org.apache.commons.lang3.StringUtils;
import org.apache.poi.ss.usermodel.Workbook; import org.apache.poi.ss.usermodel.Workbook;
import org.nutz.dao.Cnd; import org.nutz.dao.Cnd;
import org.nutz.dao.Dao; import org.nutz.dao.Dao;
@@ -66,6 +68,8 @@ public class HealthCheckupSingleController {
private HealthCheckupSingleService healthCheckupSingleService; private HealthCheckupSingleService healthCheckupSingleService;
@Inject @Inject
private ManyAddOrRenewUtil manyAddOrRenewUtil; private ManyAddOrRenewUtil manyAddOrRenewUtil;
@Inject
private HealthCheckupProjectService healthCheckupProjectService;
@At("") @At("")
@Ok("beetl:/platform/zhgh/dayofficework/healthCheckup/statisticsSingle/index.html") @Ok("beetl:/platform/zhgh/dayofficework/healthCheckup/statisticsSingle/index.html")
@@ -430,13 +434,18 @@ public class HealthCheckupSingleController {
@SaCheckPermission("healthCheckup.statisticsSingle") @SaCheckPermission("healthCheckup.statisticsSingle")
@SLog(type = "healthCheckup", tag = "体检管理", msg = "管理员给未选的人发送提醒") @SLog(type = "healthCheckup", tag = "体检管理", msg = "管理员给未选的人发送提醒")
public Result msgNotSelect(@Valid String projectId) { public Result msgNotSelect(@Valid String projectId) {
List<NutMap> userList = healthCheckupSingleService.receivePageData(projectId, null, "1"); List<NutMap> userList = healthCheckupSingleService.receivePageData(projectId, null, "1");
if(CollectionUtil.isNotEmpty(userList)){ if(CollectionUtil.isNotEmpty(userList)){
HealthCheckupProject project = healthCheckupProjectService.dao().fetch(HealthCheckupProject.class, Cnd.where("id", "=", projectId));
String smsMessage = StringUtils.defaultIfBlank(
project.getSmsMessage(),
"系统显示您本年度体检医院信息尚未维护,请尽快登录小程序完成体检医院选择及个人信息确认,以免影响正常体检安排。");
List<String> loginNameList = userList.stream() List<String> loginNameList = userList.stream()
.map(e -> e.getString("loginName")) .map(e -> e.getString("loginName"))
.collect(Collectors.toList()); .collect(Collectors.toList());
smsService.massSendTextCard(loginNameList, smsService.massSendTextCard(loginNameList,
"系统显示您本年度体检医院信息尚未维护,请尽快登录小程序完成体检医院选择及个人信息确认,以免影响正常体检安排。", smsMessage,
"#", "#",
Globals.AppDomain); Globals.AppDomain);
return Result.success("提醒成功"); return Result.success("提醒成功");
@@ -445,6 +454,4 @@ public class HealthCheckupSingleController {
} }
} }
} }
@@ -83,6 +83,11 @@ public class HealthCheckupProject extends BaseModel implements Serializable, Sys
@Many(field = "projectId") @Many(field = "projectId")
private List<HealthCheckupProjectSubject> healthCheckupProjectSubjects; private List<HealthCheckupProjectSubject> healthCheckupProjectSubjects;
@Column
@Comment("短信信息")
@ColDefine(type = ColType.TEXT)
private String smsMessage;
@Override @Override
public Sys_home_activity covertToSysHomeActivity() { public Sys_home_activity covertToSysHomeActivity() {
Sys_home_activity sysHomeActivity = new Sys_home_activity(); Sys_home_activity sysHomeActivity = new Sys_home_activity();
@@ -145,6 +145,11 @@ layout("/layouts/platform.html"){
<el-input type="textarea" v-model="formData.friendlyReminderText" :rows="4"></el-input> <el-input type="textarea" v-model="formData.friendlyReminderText" :rows="4"></el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="24">
<el-form-item label="短信信息">
<el-input type="textarea" v-model="formData.smsMessage" :rows="4"></el-input>
</el-form-item>
</el-col>
<el-col :span="24"> <el-col :span="24">
<el-form-item label="体检套餐" prop="healthCheckupProjectSubjects"> <el-form-item label="体检套餐" prop="healthCheckupProjectSubjects">
<el-collapse shadow="hover" v-for="(item,index) in formData.healthCheckupProjectSubjects" <el-collapse shadow="hover" v-for="(item,index) in formData.healthCheckupProjectSubjects"
@@ -662,6 +667,7 @@ layout("/layouts/platform.html"){
formData.deleteRowIds = JSON.stringify(this.deleteRowIds) formData.deleteRowIds = JSON.stringify(this.deleteRowIds)
formData.deleteSubjectIds = JSON.stringify(this.deleteSubjectIds) formData.deleteSubjectIds = JSON.stringify(this.deleteSubjectIds)
formData.friendlyReminderText = (formData.friendlyReminderText || ''); formData.friendlyReminderText = (formData.friendlyReminderText || '');
formData.smsMessage = (formData.smsMessage || '');
const resp = await this.$axios.post("/platform/healthCheckup/project/mange/doAdd", formData) const resp = await this.$axios.post("/platform/healthCheckup/project/mange/doAdd", formData)
loading.close() loading.close()
if (resp.code === 0) { if (resp.code === 0) {