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

Commit 676cd727 authored by GaoHu's avatar GaoHu

Merge branch 'dev-kids0609' into dev_smile_0606

parents da93f30d 515f6b2e
package com.liquidnet.service.goblin.dto.vo;
import com.liquidnet.service.smile.entity.SmileSchool;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
......@@ -20,6 +21,8 @@ public class SmileSchoolVo implements Serializable {
private Long id;
private String schoolId;
/**
* 学校名称
*/
......@@ -69,4 +72,21 @@ 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.setSchoolId(smileSchool.getId().toString());
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;
}
}
package com.liquidnet.service.goblin.service.manage;
import com.liquidnet.service.goblin.dto.vo.SmileSchoolVo;
import com.liquidnet.service.goblin.dto.vo.SmileSellDataDetailVO;
import com.liquidnet.service.goblin.dto.vo.SmileUserVO;
import com.liquidnet.service.kylin.dto.vo.mongo.KylinPerformanceVo;
......@@ -11,6 +12,7 @@ public interface SmileFrontService {
public boolean saveOrUpdateUser(SmileUserVO smileUserVO,SmileUserVO redisVo,String type);
public List<KylinPerformanceVo> getPerformance();
public void deleteUser(String uid);
public boolean auth(String uid,SmileUserVO redisVo);
public boolean auth(String uid,SmileUserVO redisVo,boolean b);
public SmileSellDataDetailVO getSellDataDetail(String agentId, String ticketId, String activeName, String ticketName);
public List<SmileSchoolVo> getSchool(String name);
}
package com.liquidnet.client.admin;
import com.liquidnet.client.admin.common.utils.security.Md5Utils;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.liquidnet.commons.lang.constant.LnsEnum;
import com.liquidnet.commons.lang.util.CurrentUtil;
import com.liquidnet.commons.lang.util.MD5;
import com.liquidnet.service.goblin.dto.vo.SmileSchoolVo;
import com.liquidnet.service.kylin.constant.KylinTableStatusConst;
import com.liquidnet.service.kylin.dto.vo.returns.KylinOrderRefundsVo;
import com.liquidnet.service.kylin.entity.KylinOrderRefunds;
import com.liquidnet.service.smile.entity.SmileSchool;
import com.liquidnet.service.smile.mapper.SmileSchoolMapper;
import com.mongodb.BasicDBObject;
import com.mongodb.client.result.UpdateResult;
import org.junit.Test;
......@@ -23,6 +27,7 @@ import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
import java.time.LocalDateTime;
import java.util.Arrays;
import java.util.List;
/**
* Test
......@@ -69,4 +74,18 @@ public class TestLocal {
boolean contains = Arrays.asList(LnsEnum.ENV.dev.name(), LnsEnum.ENV.test.name()).contains(environment.getProperty(CurrentUtil.CK_ENV_ACTIVE));
System.out.println(contains);
}
@Autowired
private SmileSchoolMapper smileSchoolMapper;
@Test
public void testSaveSmileSchoolMongodb(){
LambdaQueryWrapper<SmileSchool> queryWrapper = Wrappers.lambdaQuery(SmileSchool.class);
queryWrapper.eq(SmileSchool::getDelTag,0);
List<SmileSchool> smileSchools = smileSchoolMapper.selectList(queryWrapper);
smileSchools.forEach(smileSchool->{
SmileSchoolVo smileSchoolVo = new SmileSchoolVo().copy(smileSchool);
mongoTemplate.insert(smileSchoolVo, SmileSchoolVo.class.getSimpleName());
});
};
}
......@@ -16,10 +16,14 @@ 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 javax.annotation.PostConstruct;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
......@@ -45,11 +49,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 +76,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());
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 +117,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,16 +137,34 @@ 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);
SmileSchoolVo smileSchoolVo = new SmileSchoolVo().copy(smileSchool);
smileSchoolVos.add(smileSchoolVo);
}catch (Exception e) {
e.printStackTrace();
}
});
smileRedisUtils.setSchoolAll(smileSchoolVos);
}
public void saveSmileSchoolMongodb(){
LambdaQueryWrapper<SmileSchool> queryWrapper = Wrappers.lambdaQuery(SmileSchool.class);
queryWrapper.eq(SmileSchool::getDelTag,0);
List<SmileSchool> smileSchools = smileSchoolMapper.selectList(queryWrapper);
smileSchools.forEach(smileSchool->{
SmileSchoolVo smileSchoolVo = new SmileSchoolVo().copy(smileSchool);
mongoTemplate.insert(smileSchoolVo, SmileSchoolVo.class.getSimpleName());
});
}
/**
*跟新redis中学校SmileSchoolVo类:dev_kids0609初始化
*/
@PostConstruct
private void updateRedisSchoolAll(){
//删除旧redisSchoolAll缓存
smileRedisUtils.delSchoolAll();
//跟新缓存
updateSchoolRedis();
//mongodb初始化就数据
saveSmileSchoolMongodb();
}
}
......@@ -58,6 +58,13 @@ public class SmileRedisUtils {
return (String) redisDataSourceUtil.getRedisSweetUtil().get(SmileRedisConst.SMILE_SCHOOL.concat(":").concat(schoolId));
}
/**
* 根据学校id删除学校
*/
public void delSchoolNameById(String schoolId) {
redisDataSourceUtil.getRedisSweetUtil().del(SmileRedisConst.SMILE_SCHOOL.concat(":").concat(schoolId));
}
/**
* 保存/更新学校
*/
......@@ -72,6 +79,20 @@ public class SmileRedisUtils {
redisDataSourceUtil.getRedisSweetUtil().set(SmileRedisConst.SMILE_SCHOOL, smileSchoolVos);
}
/**
* 删除缓存学校集合
*/
public void delSchoolAll() {
redisDataSourceUtil.getRedisSweetUtil().del(SmileRedisConst.SMILE_SCHOOL);
}
/**
* 获取全部学校
*/
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">
......
......@@ -2,10 +2,13 @@ use test_ln_scene;
// ================================================== 创建集合
db.createCollection("SmileSellDataDetailVO");
db.createCollection("SmileSellDataVO");
db.createCollection("SmileSchoolVo");
// ================================================== 创建索引
db.SmileSellDataDetailVO.createIndex({dataId:"hashed"});
db.SmileSellDataVO.createIndex({sellDataId:"hashed"});
db.SmileSchoolVo.createIndex({schoolId:"hashed"})
================================================== 创建分片
sh.enableSharding("test_ln_scene");
sh.shardCollection("test_ln_scene.SmileSellDataDetailVO",{"dataId":"hashed"});
sh.shardCollection("test_ln_scene.SmileSellDataVO",{"sellDataId":"hashed"});
sh.shardCollection("test_ln_scene.SmileSchoolVo",{"schoolId":"hashed"});
\ No newline at end of file
......@@ -46,14 +46,22 @@ public class SmileUserController {
}
@GetMapping("getSchool")
@ApiOperation("获得学校")
public ResponseDto<List<SmileSchoolVo>> getSchool() {
public ResponseDto<List<SmileSchoolVo>> getSchool(String name) {
/* String userId = CurrentUtil.getCurrentUid();
List<SmileSchoolVo> list=null;
if(redisUtil.hasKey(SmileRedisConst.SMILE_SCHOOL)){
list= (List<SmileSchoolVo>) redisUtil.get(SmileRedisConst.SMILE_SCHOOL);
}*/
if(StringUtil.isNotBlank(name)){
//mongodb 搜索
return ResponseDto.success(smileFrontService.getSchool(name));
}else{
return ResponseDto.success(smileRedisUtils.getSchool());
}
}
@GetMapping("getPerformance")
@ApiOperation("获得演出列表")
public ResponseDto<List<KylinPerformanceVo>> getPerformance() {
......@@ -97,14 +105,18 @@ public class SmileUserController {
if(!(smileUserVORedis.getTag().contains("1")&&smileUserVORedis.getTag().contains("2")&&smileUserVORedis.getTag().contains("3"))){
return ResponseDto.failure("用户信息不全,请填写后提交认证");
}
//smileRedisUtils.setSmileUserVo(userId,smileUserVORedis);
if(null!=smileUserVORedis.getType()&&smileUserVORedis.getType()==4){
smileFrontService.deleteUser(userId);
}
/*smileFrontService.deleteUser(userId);*/
smileUserVORedis.setAuthStatus(1);
smileUserVORedis.setType(0);
smileRedisUtils.setSmileUserVo(userId,smileUserVORedis);
}else{
smileUserVORedis.setAuthStatus(1);
smileUserVORedis.setType(0);
smileFrontService.auth(userId,smileUserVORedis,true);
}
//redisUtil.set(SmileRedisConst.SMILE_USER.concat(userId),smileUserVORedis);
return ResponseDto.success(smileFrontService.auth(userId,smileUserVORedis));
return ResponseDto.success();
}
}
return ResponseDto.failure("没有该用户信息");
......
......@@ -3,6 +3,7 @@ package com.liquidnet.service.service.impl;
import com.liquidnet.commons.lang.util.CollectionUtil;
import com.liquidnet.service.base.SqlMapping;
import com.liquidnet.service.base.constant.MQConst;
import com.liquidnet.service.goblin.dto.vo.SmileSchoolVo;
import com.liquidnet.service.goblin.dto.vo.SmileSellDataDetailVO;
import com.liquidnet.service.goblin.dto.vo.SmileUserVO;
import com.liquidnet.service.goblin.service.manage.SmileFrontService;
......@@ -74,22 +75,22 @@ public class SmileFrontServiceImpl implements SmileFrontService {
String sqlDatas = SqlMapping.gets(sqls, sqlData);
queueUtils.sendMsgByRedis(MQConst.SmileQueue.SMILE_USER.getKey(), sqlDatas);
}
/* public void updateUser(SmileUserVO smileUserVO){
public void updateUser(SmileUserVO smileUserVO){
LinkedList<String> sqls = CollectionUtil.linkedListString();
sqls.add(SqlMapping.get("smile_service.update_user"));
LinkedList<Object[]> sqlData = CollectionUtil.linkedListObjectArr();
sqlData.add(new Object[]{
smileUserVO.getImg(),smileUserVO.getName(),smileUserVO.getBirthday(),smileUserVO.getSex(),
smileUserVO.getPhone(),smileUserVO.getProvinceKey(),smileUserVO.getProvince(),smileUserVO.getCityKey(),smileUserVO.getCity(),
smileUserVO.getAreaKey(),smileUserVO.getArea(),smileUserVO.getAddress(),smileUserVO.getWechat(),smileUserVO.getType(),smileUserVO.getOrgId(),
smileUserVO.getPhone(),smileUserVO.getProvinceId(),smileUserVO.getProvince(),smileUserVO.getCityId(),smileUserVO.getCity(),
smileUserVO.getAreaId(),smileUserVO.getArea(),smileUserVO.getAddress(),smileUserVO.getWechat(),smileUserVO.getType(),smileUserVO.getOrgId(),
smileUserVO.getIdCard(),smileUserVO.getSchoolName(),smileUserVO.getSchoolMajor(),smileUserVO.getIdentity(),smileUserVO.getTag(),smileUserVO.getAgent(),
smileUserVO.getAuthTag(),smileUserVO.getErrorReason(),smileUserVO.getIntroduce(),smileUserVO.getSpecialty1(),smileUserVO.getSpecialty2(),
smileUserVO.getErrorReason(),smileUserVO.getIntroduce(),smileUserVO.getSpecialty1(),smileUserVO.getSpecialty2(),
smileUserVO.getSpecialty3(),smileUserVO.getState(),smileUserVO.getUpdatedDate(),smileUserVO.getSchoolId(),smileUserVO.getUid()
});
String sqlDatas = SqlMapping.gets(sqls, sqlData);
queueUtils.sendMsgByRedis(MQConst.SmileQueue.SMILE_USER.getKey(), sqlDatas);
}*/
}
public List<KylinPerformanceVo> getPerformance() {
ArrayList<KylinPerformanceVo> list = ObjectUtil.kylinPerformanceVoList();
......@@ -125,8 +126,15 @@ public class SmileFrontServiceImpl implements SmileFrontService {
}
@Override
public boolean auth(String uid, SmileUserVO redisVo) {
public boolean auth(String uid, SmileUserVO redisVo,boolean b) {
smileRedisUtils.setSmileUserVo(uid,redisVo);
if(b){
insertUser(redisVo);
}else{
redisVo.setUpdatedDate(LocalDateTime.now());
updateUser(redisVo);
}
return true;
}
......@@ -159,6 +167,11 @@ public class SmileFrontServiceImpl implements SmileFrontService {
return smileSellDataDetailVO;
}
@Override
public List<SmileSchoolVo> getSchool(String name) {
return smileMongoUtils.getSchoole(name);
}
public void setUser(SmileUserVO smileUserVO, SmileUserVO redisVo, String type) {
if (type.equals("1")) {
......
package com.liquidnet.service.util;
import com.liquidnet.service.goblin.dto.vo.SmileSchoolVo;
import com.liquidnet.service.kylin.dto.vo.mongo.KylinPerformanceVo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.mongodb.core.MongoTemplate;
......@@ -7,6 +8,8 @@ import org.springframework.data.mongodb.core.query.Criteria;
import org.springframework.data.mongodb.core.query.Query;
import org.springframework.stereotype.Component;
import java.util.List;
@Component
public class SmileMongoUtils {
@Autowired
......@@ -17,5 +20,12 @@ public class SmileMongoUtils {
KylinPerformanceVo.class, KylinPerformanceVo.class.getSimpleName());
}
public List<SmileSchoolVo> getSchoole(String name){
Query query = new Query();
java.util.regex.Pattern pattern =
java.util.regex.Pattern.compile("^.*" + name + ".*$", java.util.regex.Pattern.CASE_INSENSITIVE);
query.addCriteria(Criteria.where("name").regex(pattern));
return mongoTemplate.find(query, SmileSchoolVo.class, SmileSchoolVo.class.getSimpleName());
}
}
......@@ -2,7 +2,7 @@
goblin_service_support.insert_byreplace=REPLACE INTO goblin_service_support (ssid,name,`desc`,url,del_flg,created_by,created_at)VALUES(?,?,?,?,'0','-',sysdate())
smile_service.insert_user= insert into smile_user(img,`name`,`uid`,birthday,sex,phone,province_id,province,city_id,city,area_id,area,address,wechat,`type`,org_id,id_card,school_name,school_major,`identity`,tag,agent,error_reason,introduce,specialty1,specialty2,specialty3,`state`,del_tag,created_date,updated_date,school_id) values (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)
smile_service.update_user= update smile_user set img =?,`name`=?,birthday=?,sex =?,phone=?,province_key=?,province=?,city_key =?,city=?,area_key=?,area =?,address =?,wechat =?,`type`=?,org_id =?,id_card=?,school_name =?,school_major =?,`identity`=?,tag =?,agent =?,auth_tag =?,error_reason =?,introduce =?,specialty1 =?,specialty2 =?,specialty3 =?,`state`=?,updated_date=?,school_id=? where `uid`=?
smile_service.update_user= update smile_user set img =?,`name`=?,birthday=?,sex =?,phone=?,province_id=?,province=?,city_id =?,city=?,area_id=?,area =?,address =?,wechat =?,`type`=?,org_id =?,id_card=?,school_name =?,school_major =?,`identity`=?,tag =?,agent =?,error_reason =?,introduce =?,specialty1 =?,specialty2 =?,specialty3 =?,`state`=?,updated_date=?,school_id=? where `uid`=?
smile_service.delete_user= delete from smile_user where uid=?
......
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