记得上下班打卡 | git大法好,push需谨慎

Commit 68787f34 authored by GaoHu's avatar GaoHu

Merge branch 'dev_0608kids' into dev-kids0609

parents 393db2ce 1c01b7c3
package com.liquidnet.service.goblin.dto.vo;
import com.liquidnet.service.smile.entity.SmileSchool;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
......@@ -69,4 +70,20 @@ public class SmileSchoolVo implements Serializable {
private String area;
public SmileSchoolVo copy(SmileSchool smileSchool) {
//KylinApiCameraDevicesVo kylinApiCameraDevicesVo = KylinApiCameraDevicesVo.getNew();
// if (null == source) return null;
SmileSchoolVo smileSchoolVo = new SmileSchoolVo();
if (null==smileSchool) return null;
smileSchoolVo.setId(smileSchool.getId());
smileSchoolVo.setName(smileSchool.getName());
smileSchoolVo.setAddress(smileSchool.getAddress());
smileSchoolVo.setProvinceKey(smileSchool.getProvinceId());
smileSchoolVo.setProvince(smileSchool.getProvince());
smileSchoolVo.setCityKey(smileSchool.getCityId());
smileSchoolVo.setCity(smileSchool.getCity());
smileSchoolVo.setAreaKey(smileSchool.getAreaId());
smileSchoolVo.setArea(smileSchool.getArea());
return smileSchoolVo;
}
}
......@@ -16,8 +16,11 @@ import com.liquidnet.service.smile.entity.SmileUser;
import com.liquidnet.service.smile.mapper.SmileSchoolMapper;
import com.liquidnet.service.smile.mapper.SmileUserMapper;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.mongodb.core.MongoTemplate;
import org.springframework.data.mongodb.core.query.Criteria;
import org.springframework.data.mongodb.core.query.Query;
import org.springframework.data.mongodb.core.query.Update;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
......@@ -45,11 +48,14 @@ public class SmileSchoolServiceImpl extends ServiceImpl<SmileSchoolMapper, Smile
@Autowired
SmileRedisUtils smileRedisUtils;
@Autowired
MongoTemplate mongoTemplate;
@Override
public PageInfo<SmileSchool> schoolList(SmileSchoolParam smileSchoolParam) {
PageInfo<SmileSchool> pageInfo;
try {
Map<String,Object> map = BeanUtil.convertBeanToMap(smileSchoolParam);
Map<String, Object> map = BeanUtil.convertBeanToMap(smileSchoolParam);
List<SmileSchool> smileSchools = smileSchoolMapper.selectSchoolList(map);
pageInfo = new PageInfo<>(smileSchools);
} catch (Exception e) {
......@@ -69,27 +75,36 @@ public class SmileSchoolServiceImpl extends ServiceImpl<SmileSchoolMapper, Smile
log.debug("smileSchool:{}", smileSchool);
LambdaQueryWrapper<SmileSchool> queryWrapper = Wrappers.lambdaQuery(SmileSchool.class);
queryWrapper.eq(SmileSchool::getName, smileSchool.getName());
queryWrapper.eq(SmileSchool::getDelTag,0);
queryWrapper.eq(SmileSchool::getDelTag, 0);
if (smileSchoolMapper.selectOne(queryWrapper) == null) {
smileSchoolMapper.insert(smileSchool);
//保存学校
smileRedisUtils.setSchool(String.valueOf(smileSchool.getId()),smileSchool.getName());
updateSchoolRedis();
smileRedisUtils.setSchool(String.valueOf(smileSchool.getId()), smileSchool.getName());
SmileSchoolVo smileSchoolVo = new SmileSchoolVo().copy(smileSchool);
mongoTemplate.insert(smileSchoolVo, SmileSchoolVo.class.getSimpleName());
//判断是否需要新增redis
List<SmileSchoolVo> schoolAll = smileRedisUtils.getSchoolAll();
if (schoolAll != null && schoolAll.size() < 20) {
updateSchoolRedis();
}
return AjaxResult.success();
}
return AjaxResult.warn("学校已存在");
}
@Override
public AjaxResult updateSchoolById(SmileSchool smileSchool) {
LambdaQueryWrapper<SmileSchool> queryWrapper = Wrappers.lambdaQuery(SmileSchool.class);
queryWrapper.eq(SmileSchool::getId, smileSchool.getId());
queryWrapper.eq(SmileSchool::getDelTag,0);
queryWrapper.eq(SmileSchool::getDelTag, 0);
if (smileSchoolMapper.update(smileSchool, queryWrapper) > 0) {
//更新User表 根据学校id修改用户学校名称
smileUserMapper.updateUserSchoolBySchoolId(smileSchool.getId().toString(), smileSchool.getName());
smileRedisUtils.setSchool(String.valueOf(smileSchool.getId()),smileSchool.getName());
smileRedisUtils.setSchool(String.valueOf(smileSchool.getId()), smileSchool.getName());
//修改数据
Query query = new Query(Criteria.where("id").is(smileSchool.getId()));
Update name = Update.update("name", smileSchool.getName());
mongoTemplate.updateFirst(query, name, SmileSchoolVo.class, SmileSchoolVo.class.getSimpleName());
//更新redis
updateSchoolRedis();
return AjaxResult.success();
......@@ -101,14 +116,17 @@ public class SmileSchoolServiceImpl extends ServiceImpl<SmileSchoolMapper, Smile
public AjaxResult del(Long id) {
//查询是否有用户使用过该学校
LambdaQueryWrapper<SmileUser> queryWrapper = Wrappers.lambdaQuery(SmileUser.class);
queryWrapper.eq(SmileUser::getSchoolId,id);
queryWrapper.eq(SmileUser::getDelTag,0);
queryWrapper.eq(SmileUser::getSchoolId, id);
queryWrapper.eq(SmileUser::getDelTag, 0);
List<SmileUser> smileUsers = smileUserMapper.selectList(queryWrapper);
if (smileUsers.size() > 0){
if (smileUsers.size() > 0) {
return AjaxResult.warn("该学校已被使用,不可删除");
}
//学校没有被使用 可以删除
smileSchoolMapper.updateDel(id);
//mongodb删除
Query query = new Query(Criteria.where("id").is(id));
mongoTemplate.remove(query, SmileSchoolVo.class, SmileSchoolVo.class.getSimpleName());
smileRedisUtils.delSchool(String.valueOf(id));
updateSchoolRedis();
return AjaxResult.success();
......@@ -118,13 +136,8 @@ public class SmileSchoolServiceImpl extends ServiceImpl<SmileSchoolMapper, Smile
private void updateSchoolRedis() {
List<SmileSchoolVo> smileSchoolVos = new ArrayList<>();
smileSchoolMapper.selectListLimit().forEach(smileSchool -> {
SmileSchoolVo smileSchoolVo = new SmileSchoolVo();
try {
BeanUtils.copyProperties(smileSchool,smileSchoolVo);
smileSchoolVos.add(smileSchoolVo);
}catch (Exception e) {
e.printStackTrace();
}
SmileSchoolVo smileSchoolVo = new SmileSchoolVo().copy(smileSchool);
smileSchoolVos.add(smileSchoolVo);
});
smileRedisUtils.setSchoolAll(smileSchoolVos);
}
......
......@@ -72,6 +72,13 @@ public class SmileRedisUtils {
redisDataSourceUtil.getRedisSweetUtil().set(SmileRedisConst.SMILE_SCHOOL, smileSchoolVos);
}
/**
* 获取全部学校
*/
public List<SmileSchoolVo> getSchoolAll() {
return (List<SmileSchoolVo>)redisDataSourceUtil.getRedisSweetUtil().get(SmileRedisConst.SMILE_SCHOOL);
}
/**
* 删除学校
*/
......
......@@ -34,7 +34,7 @@ public final class RedisUtil extends AbstractRedisUtil{
public static void main(String[] args) {
String[] keys = {
"smile:show",
"smile:school",
};
for (String key : keys) {
long value = key.hashCode();
......
......@@ -3,7 +3,7 @@
<mapper namespace="com.liquidnet.service.smile.mapper.SmileSchoolMapper">
<select id="selectListLimit" resultType="com.liquidnet.service.smile.entity.SmileSchool">
select id,name from smile_school where `del_tag` = 0;
select id,name from smile_school where `del_tag` = 0 LIMIT 20;
</select>
<select id="selectSchoolList" parameterType="java.util.Map" resultType="com.liquidnet.service.smile.entity.SmileSchool">
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment