1
This commit is contained in:
@@ -18,8 +18,8 @@ public enum Api2UnitFiledMap {
|
||||
JDCJDM("jdcjdm", "unitLevel"),
|
||||
CJ_XYDWH("cj_xydwh", "divisionCollegeCode"),
|
||||
JGLX("jglx", "institutionType"),
|
||||
BMLB("bmlb", "unitType");
|
||||
// SFQY("sfqy", "delFlag");
|
||||
BMLB("bmlb", "unitType"),
|
||||
SFQY("sfqy", "delFlagStr");
|
||||
|
||||
public final String apiField;
|
||||
public final String dbColumn;
|
||||
|
||||
@@ -130,4 +130,6 @@ public class Sys_unit extends BaseModel implements Serializable {
|
||||
@Comment("部门类别区分(部门类设置 1, 其他设置 0)")
|
||||
@ColDefine(type = ColType.INT)
|
||||
private Integer unitTypeCode;
|
||||
|
||||
private String delFlagStr;
|
||||
}
|
||||
|
||||
@@ -13,6 +13,7 @@ import com.budwk.app.sys.models.Sys_unit;
|
||||
import com.budwk.app.sys.services.SysDataUnitPullService;
|
||||
import com.budwk.app.sys.utils.DataCenterUtil;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.nutz.aop.interceptor.ioc.TransAop;
|
||||
import org.nutz.dao.Dao;
|
||||
import org.nutz.dao.Sqls;
|
||||
@@ -20,6 +21,7 @@ import org.nutz.dao.sql.Sql;
|
||||
import org.nutz.ioc.aop.Aop;
|
||||
import org.nutz.ioc.loader.annotation.Inject;
|
||||
import org.nutz.ioc.loader.annotation.IocBean;
|
||||
import org.nutz.lang.Strings;
|
||||
|
||||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
@@ -95,6 +97,14 @@ public class SysDataUnitPullServiceImpl extends BaseServiceImpl<Sys_unit> implem
|
||||
unit.setUnitcode(unit.getId());
|
||||
unit.setUnitTypeCode(unit.getUnitType().contains("部门") ? 1 : 0);
|
||||
|
||||
if (StringUtils.isNotBlank(unit.getDelFlagStr())) {
|
||||
if (unit.getDelFlagStr().equals("1")) {
|
||||
unit.setDelFlag(true);
|
||||
} else {
|
||||
unit.setDelFlag(false);
|
||||
}
|
||||
}
|
||||
|
||||
if (unitIds.contains(unit.getId())) {
|
||||
// 存在则更新
|
||||
updateList.add(unit);
|
||||
|
||||
+33
@@ -4,13 +4,18 @@ import cn.dev33.satoken.annotation.SaCheckLogin;
|
||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||
import cn.dev33.satoken.annotation.SaMode;
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import com.budwk.app.base.annotation.SLog;
|
||||
import com.budwk.app.base.param.PageForm;
|
||||
import com.budwk.app.base.result.Result;
|
||||
import com.budwk.app.sys.models.Sys_home_activity;
|
||||
import com.budwk.app.sys.models.Sys_user;
|
||||
import com.budwk.app.sys.services.SysMsgService;
|
||||
import com.budwk.app.web.commons.auth.utils.SecurityUtil;
|
||||
import com.budwk.app.zhgh.activity.culture.models.ActivityTissue;
|
||||
import com.budwk.app.zhgh.activity.culture.models.ActivityTissuePerson;
|
||||
import com.budwk.app.zhgh.activity.culture.service.ActivityCultureService;
|
||||
import com.budwk.app.zhgh.activity.trainSignUp.models.TrainSignUpUser;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import org.nutz.aop.interceptor.ioc.TransAop;
|
||||
import org.nutz.dao.Chain;
|
||||
@@ -24,8 +29,10 @@ import org.nutz.ioc.loader.annotation.IocBean;
|
||||
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.validation.Valid;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @ClassName ActivityCultureInfoManageController
|
||||
@@ -42,6 +49,8 @@ public class ActivityCultureInfoManageController {
|
||||
private ActivityCultureService activityCultureService;
|
||||
@Inject
|
||||
private Dao dao;
|
||||
@Inject
|
||||
private SysMsgService sysMsgService;
|
||||
|
||||
@At("/school")
|
||||
@Ok("beetl:platform/zhgh/activity/culture/school/infoManage/index.html")
|
||||
@@ -115,4 +124,28 @@ public class ActivityCultureInfoManageController {
|
||||
return Result.success(tissue);
|
||||
}
|
||||
|
||||
@At
|
||||
@Ok("json:full")
|
||||
@ApiOperation("通知报名人员")
|
||||
@SaCheckPermission("trainSignUp.manage")
|
||||
public Result sendNotify(@Param("activityId") String activityId, @Param("content") String content) {
|
||||
if (StrUtil.isBlank(activityId) || StrUtil.isBlank(content)) {
|
||||
return Result.error("参数不完整");
|
||||
}
|
||||
// 查询该活动下所有报名人员(state=1为正常报名)
|
||||
List<ActivityTissuePerson> userList = dao.query(ActivityTissuePerson.class, Cnd.where("tissueId", "=", activityId).and("state", "=", 1));
|
||||
if (userList.isEmpty()) {
|
||||
return Result.error("该活动暂无报名人员");
|
||||
}
|
||||
// 获取所有报名人员的userId
|
||||
List<String> userIds = userList.stream().map(ActivityTissuePerson::getUserId).distinct().toList();
|
||||
// 查询用户信息获取loginname
|
||||
List<Sys_user> sysUsers = dao.query(Sys_user.class, Cnd.where("id", "in", userIds));
|
||||
List<String> loginNames = sysUsers.stream().map(Sys_user::getLoginname).filter(StrUtil::isNotBlank).toList();
|
||||
if (loginNames.isEmpty()) {
|
||||
return Result.error("未找到有效的报名人员");
|
||||
}
|
||||
// sysMsgService.sendMsg(loginNames, "校工会文化活动通知", content, SecurityUtil.getUserId());
|
||||
return Result.success("通知发送成功");
|
||||
}
|
||||
}
|
||||
|
||||
@@ -119,7 +119,9 @@ const ACTIVITY_CULTURE_INFO_MANAGE = {
|
||||
<el-dropdown-item :command="{type:'openCode',row}">
|
||||
二维码
|
||||
</el-dropdown-item>
|
||||
|
||||
<!-- <el-dropdown-item :command="{type:'notifyMsg',row}">-->
|
||||
<!-- 通知报名人员-->
|
||||
<!-- </el-dropdown-item>-->
|
||||
</el-dropdown-menu>
|
||||
</el-dropdown>
|
||||
</template>
|
||||
@@ -150,7 +152,23 @@ const ACTIVITY_CULTURE_INFO_MANAGE = {
|
||||
<span slot="footer" class="dialog-footer">
|
||||
<el-button @click="codeDialogVisible = false" type="primary">关 闭</el-button>
|
||||
</span>
|
||||
</el-dialog>
|
||||
</el-dialog>
|
||||
<el-dialog
|
||||
title="通知报名人员"
|
||||
:visible.sync="notifyDialogVisible"
|
||||
:close-on-click-modal="false"
|
||||
width="50%">
|
||||
<el-input
|
||||
type="textarea"
|
||||
:rows="6"
|
||||
placeholder="请输入通知内容"
|
||||
v-model="notifyContent">
|
||||
</el-input>
|
||||
<span slot="footer" class="dialog-footer">
|
||||
<el-button @click="notifyDialogVisible = false">取 消</el-button>
|
||||
<el-button type="primary" @click="sendNotify">发 送</el-button>
|
||||
</span>
|
||||
</el-dialog>
|
||||
</guava>
|
||||
`,
|
||||
props: {
|
||||
@@ -174,7 +192,10 @@ const ACTIVITY_CULTURE_INFO_MANAGE = {
|
||||
{prop: "applyTime", label: "创建时间", sortable: true},
|
||||
{prop: "isUnseal", label: "是否开启"},
|
||||
],
|
||||
url: ""
|
||||
url: "",
|
||||
notifyDialogVisible: false,
|
||||
notifyContent: '',
|
||||
notifyActivityId: '',
|
||||
}
|
||||
},
|
||||
components: {
|
||||
@@ -210,6 +231,10 @@ const ACTIVITY_CULTURE_INFO_MANAGE = {
|
||||
this.codeDialogVisible = true
|
||||
} else if (type === "export") {
|
||||
commonUtil.pjaxPush("/platform/activity/info/mange/export?id=" + row.id)
|
||||
} else if(type === "notifyMsg") {
|
||||
this.notifyActivityId = row.id
|
||||
this.notifyContent = ''
|
||||
this.notifyDialogVisible = true
|
||||
}
|
||||
},
|
||||
goBack() {
|
||||
@@ -264,6 +289,28 @@ const ACTIVITY_CULTURE_INFO_MANAGE = {
|
||||
}
|
||||
})
|
||||
this.tableLoading = false
|
||||
},
|
||||
async sendNotify() {
|
||||
if (!this.notifyContent.trim()) {
|
||||
this.$message.warning('请输入通知内容')
|
||||
return
|
||||
}
|
||||
this.$confirm("确认发送通知给所有报名人员吗?", "提示", {
|
||||
confirmButtonText: "确定",
|
||||
cancelButtonText: "取消",
|
||||
type: "warning"
|
||||
}).then(async () => {
|
||||
const resp = await this.$axios.post(loc() + "/sendNotify", {
|
||||
activityId: this.notifyActivityId,
|
||||
content: this.notifyContent
|
||||
})
|
||||
if (resp.code === 0) {
|
||||
this.$message.success(resp.msg)
|
||||
this.notifyDialogVisible = false
|
||||
} else {
|
||||
this.$message.warning(resp.msg)
|
||||
}
|
||||
}).catch(() => {})
|
||||
}
|
||||
},
|
||||
async created() {
|
||||
|
||||
Reference in New Issue
Block a user