说明:1、前端点击单词详情加入遮罩层
2、api模块常量包移到common模块
3获取英语单词详情加入redis缓存
This commit is contained in:
parent
88a60fddb8
commit
74d3a39221
|
|
@ -228,8 +228,8 @@
|
|||
:before-close="handleClose">
|
||||
|
||||
|
||||
<div>
|
||||
<div class="div1">
|
||||
<div v-loading="loadingC">
|
||||
<div class="div1" >
|
||||
{{ form.englishWord }}
|
||||
</div>
|
||||
<div class="div2">
|
||||
|
|
@ -250,6 +250,8 @@ export default {
|
|||
dicts: ['english_collect', 'english_top'],
|
||||
data() {
|
||||
return {
|
||||
// 抽屉遮罩层
|
||||
loadingC: true,
|
||||
//抽屉开关
|
||||
drawer: false,
|
||||
// 遮罩层
|
||||
|
|
@ -325,8 +327,10 @@ export default {
|
|||
methods: {
|
||||
//根据id查询放入抽屉
|
||||
findById(id) {
|
||||
this.loadingC = true;
|
||||
getWord(id).then(res =>{
|
||||
this.form = res.data
|
||||
this.loadingC=false
|
||||
})
|
||||
},
|
||||
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
package com.xjs.common.consts;
|
||||
package com.xjs.consts;
|
||||
|
||||
/**
|
||||
* @author xiejs
|
||||
|
|
@ -0,0 +1,21 @@
|
|||
package com.xjs.consts;
|
||||
|
||||
/**
|
||||
* @author xiejs
|
||||
* @desc redis key常量
|
||||
* @create 2021-12-30
|
||||
*/
|
||||
public class RedisConst {
|
||||
|
||||
//----------------------key------------------------
|
||||
|
||||
/**
|
||||
* 翻译字典常量
|
||||
*/
|
||||
public static final String TRAN_DICT= "tranDict";
|
||||
|
||||
|
||||
//-------------------有效时间-----------------------
|
||||
public static final Integer TRAN_DICT_EXPIRE = 7;
|
||||
|
||||
}
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package com.xjs.common.consts;
|
||||
package com.xjs.consts;
|
||||
|
||||
/**
|
||||
* @author xiejs
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package com.xjs.common.consts;
|
||||
package com.xjs.consts;
|
||||
|
||||
/**
|
||||
* @author xiejs
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package com.xjs.common.consts;
|
||||
package com.xjs.consts;
|
||||
|
||||
/**
|
||||
* @author xiejs
|
||||
|
|
@ -2,6 +2,7 @@ package com.xjs.word.service.impl;
|
|||
|
||||
import com.ruoyi.common.core.constant.Constants;
|
||||
import com.ruoyi.common.core.domain.R;
|
||||
import com.ruoyi.common.redis.service.RedisService;
|
||||
import com.xjs.business.api.RemoteTranDIctFeign;
|
||||
import com.xjs.business.api.RemoteTranslationFeign;
|
||||
import com.xjs.business.api.domain.TranslationVo;
|
||||
|
|
@ -14,9 +15,11 @@ import org.springframework.beans.factory.annotation.Autowired;
|
|||
import org.springframework.stereotype.Service;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.List;
|
||||
import java.util.Objects;
|
||||
import java.util.Optional;
|
||||
import java.util.*;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
|
||||
import static com.xjs.consts.RedisConst.TRAN_DICT;
|
||||
import static com.xjs.consts.RedisConst.TRAN_DICT_EXPIRE;
|
||||
|
||||
/**
|
||||
* 英语单词Service业务层处理
|
||||
|
|
@ -32,6 +35,8 @@ public class EnglishWordServiceImpl implements IEnglishWordService {
|
|||
private RemoteTranslationFeign remoteTranslationFeign;
|
||||
@Autowired
|
||||
private RemoteTranDIctFeign remoteTranDIctFeign;
|
||||
@Autowired
|
||||
private RedisService redisService;
|
||||
|
||||
|
||||
/**
|
||||
|
|
@ -42,18 +47,28 @@ public class EnglishWordServiceImpl implements IEnglishWordService {
|
|||
*/
|
||||
@Override
|
||||
public EnglishWord selectEnglishWordById(Long id) {
|
||||
//todo 查看单个单词详细信息
|
||||
EnglishWord englishWord = englishWordMapper.selectById(id);
|
||||
//每次调用查看次数+1
|
||||
Long count = englishWord.getLookCount() + 1;
|
||||
englishWord.setLookCount(count);
|
||||
//redis中的hsah键
|
||||
String hkey = englishWord.getEnglishWord() + ":" + id;
|
||||
Object value = redisService.getCacheMapValue(TRAN_DICT, hkey);
|
||||
if (Objects.nonNull(value)) {
|
||||
return (EnglishWord)value;
|
||||
}
|
||||
R<TranslationVo> r = remoteTranDIctFeign.tranDict(englishWord.getEnglishWord());
|
||||
if (r.getCode() != R.FAIL) {
|
||||
if (Objects.isNull(r.getData().getErrorCode())) {
|
||||
//指定to为翻译字典转换的内容
|
||||
englishWord.setContent(r.getData().getTo());
|
||||
//添加缓存到redis并设置7天有效时间
|
||||
Map<String, Object> build = new HashMap<>();
|
||||
build.put(hkey, englishWord);
|
||||
redisService.setCacheMap(TRAN_DICT, build);
|
||||
redisService.expire(TRAN_DICT, TRAN_DICT_EXPIRE, TimeUnit.DAYS);
|
||||
}
|
||||
}
|
||||
//每次调用查看次数+1
|
||||
Long count = englishWord.getLookCount() + 1;
|
||||
englishWord.setLookCount(count);
|
||||
return englishWord;
|
||||
}
|
||||
|
||||
|
|
@ -75,7 +90,7 @@ public class EnglishWordServiceImpl implements IEnglishWordService {
|
|||
if (chinese) {
|
||||
englishWord.setChineseWord(englishWord.getContent());
|
||||
R<TranslationVo> translationResult = remoteTranslationFeign.translation(englishWord.getContent());
|
||||
if(translationResult.getCode()!= Constants.FAIL){
|
||||
if (translationResult.getCode() != Constants.FAIL) {
|
||||
String dst = translationResult.getData().getTransResult().get(0).get("dst");
|
||||
englishWord.setEnglishWord(dst);
|
||||
}
|
||||
|
|
@ -83,7 +98,7 @@ public class EnglishWordServiceImpl implements IEnglishWordService {
|
|||
if (alpha) {
|
||||
englishWord.setEnglishWord(englishWord.getContent());
|
||||
R<TranslationVo> translationResult = remoteTranslationFeign.translation(englishWord.getContent());
|
||||
if(translationResult.getCode()!= Constants.FAIL){
|
||||
if (translationResult.getCode() != Constants.FAIL) {
|
||||
String dst = translationResult.getData().getTransResult().get(0).get("dst");
|
||||
englishWord.setChineseWord(dst);
|
||||
}
|
||||
|
|
@ -96,9 +111,6 @@ public class EnglishWordServiceImpl implements IEnglishWordService {
|
|||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
//------------------------代码自动生成-----------------------------------
|
||||
|
||||
/**
|
||||
|
|
@ -113,13 +125,15 @@ public class EnglishWordServiceImpl implements IEnglishWordService {
|
|||
}
|
||||
|
||||
/**
|
||||
* 修改英语单词
|
||||
* 修改英语单词 (修改需要清除redis)
|
||||
*
|
||||
* @param englishWord 英语单词
|
||||
* @return 结果
|
||||
*/
|
||||
@Override
|
||||
public int updateEnglishWord(EnglishWord englishWord) {
|
||||
|
||||
|
||||
return englishWordMapper.updateById(englishWord);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@ import com.xjs.translation.domain.qo.translation.BaiDuTranslationQo;
|
|||
import org.springframework.cloud.openfeign.FeignClient;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
|
||||
import static com.xjs.common.consts.ApiConst.*;
|
||||
import static com.xjs.consts.ApiConst.*;
|
||||
|
||||
/**
|
||||
* @author xiejs
|
||||
|
|
|
|||
|
|
@ -8,8 +8,8 @@ import org.springframework.cloud.openfeign.FeignClient;
|
|||
import org.springframework.cloud.openfeign.SpringQueryMap;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
|
||||
import static com.xjs.common.consts.ApiConst.TIANXING_JDTC;
|
||||
import static com.xjs.common.consts.ApiConst.TIANXING_JDTC_URL;
|
||||
import static com.xjs.consts.ApiConst.TIANXING_JDTC;
|
||||
import static com.xjs.consts.ApiConst.TIANXING_JDTC_URL;
|
||||
|
||||
/**
|
||||
* @author xiejs
|
||||
|
|
|
|||
|
|
@ -8,8 +8,8 @@ import org.springframework.cloud.openfeign.FeignClient;
|
|||
import org.springframework.cloud.openfeign.SpringQueryMap;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
|
||||
import static com.xjs.common.consts.ApiConst.TIANXING_MMMY;
|
||||
import static com.xjs.common.consts.ApiConst.TIANXING_MMMY_URL;
|
||||
import static com.xjs.consts.ApiConst.TIANXING_MMMY;
|
||||
import static com.xjs.consts.ApiConst.TIANXING_MMMY_URL;
|
||||
|
||||
/**
|
||||
* @author xiejs
|
||||
|
|
|
|||
|
|
@ -8,8 +8,8 @@ import org.springframework.cloud.openfeign.FeignClient;
|
|||
import org.springframework.cloud.openfeign.SpringQueryMap;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
|
||||
import static com.xjs.common.consts.ApiConst.TIANXING_PYQ;
|
||||
import static com.xjs.common.consts.ApiConst.TIANXING_PYQ_URL;
|
||||
import static com.xjs.consts.ApiConst.TIANXING_PYQ;
|
||||
import static com.xjs.consts.ApiConst.TIANXING_PYQ_URL;
|
||||
|
||||
/**
|
||||
* @author xiejs
|
||||
|
|
|
|||
|
|
@ -8,8 +8,8 @@ import org.springframework.cloud.openfeign.FeignClient;
|
|||
import org.springframework.cloud.openfeign.SpringQueryMap;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
|
||||
import static com.xjs.common.consts.ApiConst.TIANXING_TRAN_DICT;
|
||||
import static com.xjs.common.consts.ApiConst.TIANXING_TRAN_DICT_URL;
|
||||
import static com.xjs.consts.ApiConst.TIANXING_TRAN_DICT;
|
||||
import static com.xjs.consts.ApiConst.TIANXING_TRAN_DICT_URL;
|
||||
|
||||
/**
|
||||
* @author xiejs
|
||||
|
|
|
|||
|
|
@ -8,8 +8,8 @@ import org.springframework.cloud.openfeign.FeignClient;
|
|||
import org.springframework.cloud.openfeign.SpringQueryMap;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
|
||||
import static com.xjs.common.consts.ApiConst.TIANXING_WYY;
|
||||
import static com.xjs.common.consts.ApiConst.TIANXING_WYY_URL;
|
||||
import static com.xjs.consts.ApiConst.TIANXING_WYY;
|
||||
import static com.xjs.consts.ApiConst.TIANXING_WYY_URL;
|
||||
|
||||
/**
|
||||
* @author xiejs
|
||||
|
|
|
|||
|
|
@ -8,8 +8,8 @@ import org.springframework.cloud.openfeign.FeignClient;
|
|||
import org.springframework.cloud.openfeign.SpringQueryMap;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
|
||||
import static com.xjs.common.consts.ApiConst.YOUDAO_FY;
|
||||
import static com.xjs.common.consts.ApiConst.YOUDAO_FY_URL;
|
||||
import static com.xjs.consts.ApiConst.YOUDAO_FY;
|
||||
import static com.xjs.consts.ApiConst.YOUDAO_FY_URL;
|
||||
|
||||
/**
|
||||
* @author xiejs
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ import com.alibaba.fastjson.JSONArray;
|
|||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.xjs.common.client.TianXingJDTCFeignClient;
|
||||
import com.xjs.config.TianXingProperties;
|
||||
import com.xjs.common.consts.TianXingConst;
|
||||
import com.xjs.consts.TianXingConst;
|
||||
import com.xjs.exception.ApiException;
|
||||
import com.xjs.copywriting.domain.CopyWriting;
|
||||
import com.xjs.copywriting.domain.RequestBody;
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ import com.alibaba.fastjson.JSONArray;
|
|||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.xjs.common.client.TianXingMMMYFeignClient;
|
||||
import com.xjs.config.TianXingProperties;
|
||||
import com.xjs.common.consts.TianXingConst;
|
||||
import com.xjs.consts.TianXingConst;
|
||||
import com.xjs.exception.ApiException;
|
||||
import com.xjs.copywriting.domain.CopyWriting;
|
||||
import com.xjs.copywriting.domain.RequestBody;
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ import com.alibaba.fastjson.JSONArray;
|
|||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.xjs.common.client.TianXingPYQFeignClient;
|
||||
import com.xjs.config.TianXingProperties;
|
||||
import com.xjs.common.consts.TianXingConst;
|
||||
import com.xjs.consts.TianXingConst;
|
||||
import com.xjs.exception.ApiException;
|
||||
import com.xjs.copywriting.domain.CopyWriting;
|
||||
import com.xjs.copywriting.domain.RequestBody;
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ import com.alibaba.fastjson.JSONArray;
|
|||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.xjs.common.client.TianXingWYYFeignClient;
|
||||
import com.xjs.config.TianXingProperties;
|
||||
import com.xjs.common.consts.TianXingConst;
|
||||
import com.xjs.consts.TianXingConst;
|
||||
import com.xjs.exception.ApiException;
|
||||
import com.xjs.copywriting.domain.CopyWriting;
|
||||
import com.xjs.copywriting.domain.RequestBody;
|
||||
|
|
|
|||
|
|
@ -18,8 +18,8 @@ import org.springframework.web.bind.annotation.*;
|
|||
|
||||
import java.util.ArrayList;
|
||||
|
||||
import static com.xjs.common.consts.TranslationTypeConst.BAIDU;
|
||||
import static com.xjs.common.consts.TranslationTypeConst.YOUDAO;
|
||||
import static com.xjs.consts.TranslationTypeConst.BAIDU;
|
||||
import static com.xjs.consts.TranslationTypeConst.YOUDAO;
|
||||
|
||||
/**
|
||||
* @author xiejs
|
||||
|
|
|
|||
Loading…
Reference in New Issue