Finish Task #4531 Cost:4h 修复复制合同开票单位错误
This commit is contained in:
parent
03ceb02918
commit
e1103eba02
@ -1,6 +1,7 @@
|
|||||||
package com.blueland.common.core.controller;
|
package com.blueland.common.core.controller;
|
||||||
|
|
||||||
import com.blueland.common.core.domain.International;
|
import com.blueland.common.core.domain.International;
|
||||||
|
import com.blueland.common.core.utils.UserUtils;
|
||||||
import com.mybatisflex.core.paginate.Page;
|
import com.mybatisflex.core.paginate.Page;
|
||||||
import io.swagger.annotations.*;
|
import io.swagger.annotations.*;
|
||||||
import com.blueland.common.core.result.AjaxResult;
|
import com.blueland.common.core.result.AjaxResult;
|
||||||
@ -112,25 +113,23 @@ public class InternationalController {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 一键复制
|
* 一键翻译
|
||||||
*
|
*
|
||||||
* @param targetLang 目标语言
|
* @param targetLang 目标语言
|
||||||
* @param sourceLang 源语言
|
* @param sourceLang 源语言
|
||||||
* @return {@link AjaxResult}<{@link Boolean}>
|
* @return {@link AjaxResult}<{@link Boolean}>
|
||||||
*/
|
*/
|
||||||
@GetMapping("/copy")
|
@GetMapping("/translate")
|
||||||
@ApiOperation(value = "一键复制", notes = "例如:数据库只有中文,要翻译成英文")
|
@ApiOperation(value = "一键翻译")
|
||||||
@ApiImplicitParams(
|
@ApiImplicitParams(
|
||||||
{
|
{
|
||||||
@ApiImplicitParam(name = "tenantId", value = "租户id", dataType = "String", paramType = "query", required = false),
|
|
||||||
@ApiImplicitParam(name = "targetLang", value = "目标语言", dataType = "String", paramType = "query", required = true),
|
@ApiImplicitParam(name = "targetLang", value = "目标语言", dataType = "String", paramType = "query", required = true),
|
||||||
@ApiImplicitParam(name = "sourceLang", value = "源语言", dataType = "String", paramType = "query", required = true)
|
@ApiImplicitParam(name = "sourceLang", value = "源语言", dataType = "String", paramType = "query", required = true)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
public AjaxResult<Boolean> copy(@RequestParam("targetLang") String targetLang,
|
public AjaxResult<Boolean> translate(@RequestParam("targetLang") String targetLang,
|
||||||
@RequestParam("sourceLang") String sourceLang,
|
@RequestParam("sourceLang") String sourceLang) {
|
||||||
@RequestParam(value = "tenantId", required = false) String tenantId) {
|
return AjaxResult.operates(internationalService.translate(targetLang, sourceLang, UserUtils.getTenantId()));
|
||||||
return AjaxResult.operates(internationalService.copy(targetLang, sourceLang, tenantId));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@GetMapping("/dowloadTemplate")
|
@GetMapping("/dowloadTemplate")
|
||||||
@ -154,7 +153,7 @@ public class InternationalController {
|
|||||||
* @param sourceLang 源语言
|
* @param sourceLang 源语言
|
||||||
* @return {@link AjaxResult}<{@link Boolean}>
|
* @return {@link AjaxResult}<{@link Boolean}>
|
||||||
*/
|
*/
|
||||||
@GetMapping("/tenantIdCopy")
|
@GetMapping("/tenantIdTranslate")
|
||||||
@ApiOperation(value = "一键复制(从其他租户复制)", notes = "例如:bio里面有en语言包,现在要复制到AHI里面")
|
@ApiOperation(value = "一键复制(从其他租户复制)", notes = "例如:bio里面有en语言包,现在要复制到AHI里面")
|
||||||
@ApiImplicitParams(
|
@ApiImplicitParams(
|
||||||
{
|
{
|
||||||
@ -162,9 +161,9 @@ public class InternationalController {
|
|||||||
@ApiImplicitParam(name = "sourceLang", value = "源语言", dataType = "String", paramType = "query", required = true)
|
@ApiImplicitParam(name = "sourceLang", value = "源语言", dataType = "String", paramType = "query", required = true)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
public AjaxResult<Boolean> tenantIdCopy(@RequestParam("sourceLang") String sourceLang,
|
public AjaxResult<Boolean> tenantIdTranslate(@RequestParam("sourceLang") String sourceLang,
|
||||||
String tenantId) {
|
String tenantId) {
|
||||||
return AjaxResult.operates(internationalService.tenantIdCopy(sourceLang, tenantId));
|
return AjaxResult.operates(internationalService.tenantIdTranslate(sourceLang, tenantId));
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
@ -62,7 +62,7 @@ public interface InternationalService extends IService<International> {
|
|||||||
* @param tenantId
|
* @param tenantId
|
||||||
* @return boolean
|
* @return boolean
|
||||||
*/
|
*/
|
||||||
boolean copy(String targetLang, String sourceLang, String tenantId);
|
boolean translate(String targetLang, String sourceLang, String tenantId);
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -109,6 +109,6 @@ public interface InternationalService extends IService<International> {
|
|||||||
* @param tenantId 保持ID
|
* @param tenantId 保持ID
|
||||||
* @return {@link Boolean}
|
* @return {@link Boolean}
|
||||||
*/
|
*/
|
||||||
Boolean tenantIdCopy(String sourceLang, String tenantId);
|
Boolean tenantIdTranslate(String sourceLang, String tenantId);
|
||||||
|
|
||||||
}
|
}
|
@ -131,7 +131,7 @@ public class InternationalServiceImpl extends ServiceImpl<InternationalMapper, I
|
|||||||
* @return boolean
|
* @return boolean
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public boolean copy(String targetLang, String sourceLang, String tenantId) {
|
public boolean translate(String targetLang, String sourceLang, String tenantId) {
|
||||||
List<International> sourceLangList = listByLang(sourceLang, tenantId, "");
|
List<International> sourceLangList = listByLang(sourceLang, tenantId, "");
|
||||||
|
|
||||||
List<String> nameList = sourceLangList.stream()
|
List<String> nameList = sourceLangList.stream()
|
||||||
@ -159,7 +159,7 @@ public class InternationalServiceImpl extends ServiceImpl<InternationalMapper, I
|
|||||||
return international;
|
return international;
|
||||||
})
|
})
|
||||||
.collect(Collectors.toList());
|
.collect(Collectors.toList());
|
||||||
|
Assert.notEmpty(targetLangList, "根据租户和语言查询不到数据");
|
||||||
boolean flag = saveBatch(targetLangList);
|
boolean flag = saveBatch(targetLangList);
|
||||||
if (flag) {
|
if (flag) {
|
||||||
RedisUtil.hashMultiSet(targetLang, targetLangList);
|
RedisUtil.hashMultiSet(targetLang, targetLangList);
|
||||||
@ -213,6 +213,14 @@ public class InternationalServiceImpl extends ServiceImpl<InternationalMapper, I
|
|||||||
List<InternationalExport> importList;
|
List<InternationalExport> importList;
|
||||||
try {
|
try {
|
||||||
importList = ExcelImportUtil.importExcel(file.getInputStream(), InternationalExport.class, params);
|
importList = ExcelImportUtil.importExcel(file.getInputStream(), InternationalExport.class, params);
|
||||||
|
importList.stream()
|
||||||
|
.collect(Collectors.groupingBy(el -> el.getCode() + el.getLang()))
|
||||||
|
.values()
|
||||||
|
.stream()
|
||||||
|
.filter(el -> el.size() > 1)
|
||||||
|
.forEach(el -> {
|
||||||
|
Assert.isTrue(false,StrUtil.format("编码【{}】语言【{}】重复", el.get(0).getCode(), el.get(0).getLang()));
|
||||||
|
});
|
||||||
|
|
||||||
// 校验数据完整性
|
// 校验数据完整性
|
||||||
for (InternationalExport export : importList) {
|
for (InternationalExport export : importList) {
|
||||||
@ -259,7 +267,7 @@ public class InternationalServiceImpl extends ServiceImpl<InternationalMapper, I
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Boolean tenantIdCopy(String sourceLang, String tenantId) {
|
public Boolean tenantIdTranslate(String sourceLang, String tenantId) {
|
||||||
List<International> list = listByLang(sourceLang, tenantId, "").stream()
|
List<International> list = listByLang(sourceLang, tenantId, "").stream()
|
||||||
.map(el -> {
|
.map(el -> {
|
||||||
el.setTenantId(UserUtils.getTenantId());
|
el.setTenantId(UserUtils.getTenantId());
|
||||||
|
Loading…
x
Reference in New Issue
Block a user