添加功能

This commit is contained in:
yangjun 2023-04-18 18:51:51 +08:00
parent 3b16c92001
commit b82963a591
9 changed files with 102 additions and 2 deletions

View File

@ -199,6 +199,7 @@ public class KcKetangbiaoController extends JeecgController<KcKetangbiao, IKcKet
@GetMapping(value = "/getCountList") @GetMapping(value = "/getCountList")
public Result<Object> getCountList(String skrq) { public Result<Object> getCountList(String skrq) {
Map<String, Object> rmap = Maps.newHashMap(); Map<String, Object> rmap = Maps.newHashMap();
String startTime = "2023-02-19";
//第一句-今日课堂 //第一句-今日课堂
QueryWrapper qw = new QueryWrapper(); QueryWrapper qw = new QueryWrapper();
qw.select("count(*) - 0 num",//今日课堂数总数 qw.select("count(*) - 0 num",//今日课堂数总数
@ -229,12 +230,21 @@ public class KcKetangbiaoController extends JeecgController<KcKetangbiao, IKcKet
"count( CASE WHEN date_format( now(), '%H%i' ) > hhjs THEN 1 END ) xkktnum",//下课课堂数 "count( CASE WHEN date_format( now(), '%H%i' ) > hhjs THEN 1 END ) xkktnum",//下课课堂数
"count( CASE WHEN date_format( now(), '%H%i' ) < hhjs AND date_format( now(), '%H%i' ) > hhks THEN 1 END ) zzsknum"//正在上课课堂数 "count( CASE WHEN date_format( now(), '%H%i' ) < hhjs AND date_format( now(), '%H%i' ) > hhks THEN 1 END ) zzsknum"//正在上课课堂数
); );
qw3.ge("skrq","2023-02-19");//<= qw3.ge("skrq",startTime);//<=
qw3.le("skrq",skrq);//>= qw3.le("skrq",skrq);//>=
List<Map<String, Object>> kcKetangbiao3List = kcKetangbiaoService.listMaps(qw3); List<Map<String, Object>> kcKetangbiao3List = kcKetangbiaoService.listMaps(qw3);
if(kcKetangbiao3List != null && !kcKetangbiao3List.isEmpty()){ if(kcKetangbiao3List != null && !kcKetangbiao3List.isEmpty()){
rmap.put("yiKaiKeTang",kcKetangbiao3List.get(0)); rmap.put("yiKaiKeTang",kcKetangbiao3List.get(0));
} }
KcKetangbiao kcKetangbiao = new KcKetangbiao();
kcKetangbiao.setStartTime(startTime);
kcKetangbiao.setEndTime(skrq);
List<Map<String, Object>> listTjIndex = kcKetangbiaoService.getIndexYkktstj(kcKetangbiao);
if(listTjIndex != null && !listTjIndex.isEmpty()){
rmap.put("yiKaiKeTangNew",listTjIndex.get(0));
}
return Result.OK(rmap); return Result.OK(rmap);
} }

View File

@ -251,4 +251,9 @@ public class KcKetangbiao implements Serializable {
private java.lang.String userid; private java.lang.String userid;
@TableField(exist = false) @TableField(exist = false)
private java.lang.Integer isdeleted; private java.lang.Integer isdeleted;
@TableField(exist = false)
private String startTime;
@TableField(exist = false)
private String endTime;
} }

View File

@ -24,4 +24,5 @@ public interface KcKetangbiaoMapper extends BaseMapper<KcKetangbiao> {
List<Map<String,Object>> selectJrTkCount(String skrq); List<Map<String,Object>> selectJrTkCount(String skrq);
List<Map<String, Object>> getIndexYkktstj(KcKetangbiao kcKetangbiao);
} }

View File

@ -18,6 +18,21 @@
</select> </select>
<select id="getIndexYkktstj" resultType="java.util.Map">
SELECT
count( DISTINCT ( CASE WHEN t.tingketime > '1' THEN k.id END ))+ 0 btkktnum, -- 【已开课堂数:听课课堂数】
count( CASE WHEN t.tingketime > '1' THEN '1' END ) + 0 tkrcnum,-- 【已开课堂数:听课人次数】
count( DISTINCT ( CASE WHEN t.jianchatime > '1' THEN k.id END )) jcktnum -- 检查课堂数
FROM kc_ketangbiao k, kc_tingke t WHERE k.id = t.kechengbiaoid
<if test="startTime != '' and startTime != null">
AND skrq >= #{startTime}
</if>
<if test="endTime != '' and endTime != null">
AND skrq &lt;= #{endTime}
</if>
</select>
<select id="getKclblist" parameterType="org.jeecg.modules.kc.ktgl.entity.KcKetangbiao" resultType="org.jeecg.modules.kc.ktgl.entity.KcKetangbiao"> <select id="getKclblist" parameterType="org.jeecg.modules.kc.ktgl.entity.KcKetangbiao" resultType="org.jeecg.modules.kc.ktgl.entity.KcKetangbiao">
select ktb.*,if(yy.id is null,0,1) as sfyy,yy.isdeleted from kc_ketangbiao ktb select ktb.*,if(yy.id is null,0,1) as sfyy,yy.isdeleted from kc_ketangbiao ktb
left join (select * from kc_yuyue where userid = #{kcKetangbiao.userid}) yy on ktb.id = yy.ketangbiaoid left join (select * from kc_yuyue where userid = #{kcKetangbiao.userid}) yy on ktb.id = yy.ketangbiaoid

View File

@ -20,4 +20,6 @@ public interface IKcKetangbiaoService extends IService<KcKetangbiao> {
IPage<KcKetangbiao> getKclblist(Page<KcKetangbiao> page, KcKetangbiao kcKetangbiao); IPage<KcKetangbiao> getKclblist(Page<KcKetangbiao> page, KcKetangbiao kcKetangbiao);
List<Map<String,Object>> selectJrTkCount(String skrq); List<Map<String,Object>> selectJrTkCount(String skrq);
List<Map<String, Object>> getIndexYkktstj(KcKetangbiao kcKetangbiao);
} }

View File

@ -31,4 +31,9 @@ public class KcKetangbiaoServiceImpl extends ServiceImpl<KcKetangbiaoMapper, KcK
public List<Map<String, Object>> selectJrTkCount(String skrq) { public List<Map<String, Object>> selectJrTkCount(String skrq) {
return baseMapper.selectJrTkCount(skrq); return baseMapper.selectJrTkCount(skrq);
} }
@Override
public List<Map<String, Object>> getIndexYkktstj(KcKetangbiao kcKetangbiao) {
return baseMapper.getIndexYkktstj(kcKetangbiao);
}
} }

View File

@ -74,10 +74,13 @@ public class CasClientController {
log.info("-------token----username---"+principal); log.info("-------token----username---"+principal);
//1. 校验用户是否有效 //1. 校验用户是否有效
SysUser sysUser = sysUserService.getUserByName(principal); SysUser sysUser = sysUserService.getUserByName(principal);
result = sysUserService.checkUserIsEffective(sysUser); result = sysUserService.checkUserIsEffective(sysUser,res);
if(!result.isSuccess()) { if(!result.isSuccess()) {
return result; return result;
} }
if(result.getCode() == 999){
sysUser = sysUserService.getUserByName(principal);
}
String token = JwtUtil.sign(sysUser.getUsername(), sysUser.getPassword()); String token = JwtUtil.sign(sysUser.getUsername(), sysUser.getPassword());
// 设置超时时间 // 设置超时时间
redisUtil.set(CommonConstant.PREFIX_USER_TOKEN + token, token); redisUtil.set(CommonConstant.PREFIX_USER_TOKEN + token, token);

View File

@ -238,6 +238,13 @@ public interface ISysUserService extends IService<SysUser> {
*/ */
Result checkUserIsEffective(SysUser sysUser); Result checkUserIsEffective(SysUser sysUser);
/**
* 校验用户是否有效 - cas 自动创建用户
* @param sysUser
* @return
*/
Result checkUserIsEffective(SysUser sysUser, String res);
/** /**
* 查询被逻辑删除的用户 * 查询被逻辑删除的用户
* @return List<SysUser> * @return List<SysUser>
@ -389,4 +396,5 @@ public interface ISysUserService extends IService<SysUser> {
* @param departs * @param departs
*/ */
void editTenantUser(SysUser sysUser, String tenantId, String departs, String roles); void editTenantUser(SysUser sysUser, String tenantId, String departs, String roles);
} }

View File

@ -28,6 +28,7 @@ import org.jeecg.common.system.vo.SysUserCacheInfo;
import org.jeecg.common.util.*; import org.jeecg.common.util.*;
import org.jeecg.config.mybatis.MybatisPlusSaasConfig; import org.jeecg.config.mybatis.MybatisPlusSaasConfig;
import org.jeecg.modules.base.service.BaseCommonService; import org.jeecg.modules.base.service.BaseCommonService;
import org.jeecg.modules.cas.util.XmlUtils;
import org.jeecg.modules.system.entity.*; import org.jeecg.modules.system.entity.*;
import org.jeecg.modules.system.mapper.*; import org.jeecg.modules.system.mapper.*;
import org.jeecg.modules.system.model.SysUserSysDepartModel; import org.jeecg.modules.system.model.SysUserSysDepartModel;
@ -540,6 +541,56 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
return result; return result;
} }
@Override
public Result<?> checkUserIsEffective(SysUser sysUser, String res){
final String username = XmlUtils.getTextForElement(res, "user");
final String realname = XmlUtils.getTextForElement(res, "cn");
final String containerId = XmlUtils.getTextForElement(res, "containerId");
String roles = "";
//判断是否为教师
if(StringUtils.indexOf(containerId,"ou=jzg") != -1){
roles = "2";
}else if(StringUtils.indexOf(containerId,"ou=bzks") != -1){
roles = "3";
}else{
return checkUserIsEffective(sysUser);
}
StringUtils.split(containerId,",");
//情况1根据用户信息查询该用户不存在
if (sysUser == null) {
//创建用户
SysUser user = new SysUser();
user.setUsername(username);
user.setRealname(realname);
user.setActivitiSync(1);
String salt = oConvertUtils.randomGen(8);
user.setSalt(salt);
String passwordEncode = PasswordUtil.encrypt(user.getUsername(), "123456", salt);
user.setPassword(passwordEncode);
user.setPhone(username);
user.setUserIdentity(1);
user.setWorkNo(username);
user.setStatus(1);
user.setDelFlag(0);
// activitiSync: 1
// confirmPassword: "123456"
// departIds: ""
// password: "123456"
// phone: "17084300001"
// realname: "张三"
// userIdentity: 2
// username: "testName"
// workNo: "2016900058"
saveUser(user,roles,"","");
Result result = checkUserIsEffective(user);
result.setCode(999);
return result;
}
return checkUserIsEffective(sysUser);
}
@Override @Override
public List<SysUser> queryLogicDeleted() { public List<SysUser> queryLogicDeleted() {
//update-begin---author:wangshuai ---date:20221116 for回收站查询未离职的------------ //update-begin---author:wangshuai ---date:20221116 for回收站查询未离职的------------