【i18n】更新多语言删除语种

pull/3/head
fengshuonan 2021-01-30 10:31:53 +08:00
parent 0449999282
commit f2e386ae01
7 changed files with 66 additions and 2 deletions

View File

@ -40,7 +40,7 @@ public class TranslationRequest extends BaseRequest {
/**
*
*/
@NotBlank(message = "tranLanguageCode不能为空", groups = {add.class, edit.class, changeUserLanguage.class})
@NotBlank(message = "tranLanguageCode不能为空", groups = {add.class, edit.class, changeUserLanguage.class, deleteTranLanguage.class})
private String tranLanguageCode;
/**
@ -49,10 +49,22 @@ public class TranslationRequest extends BaseRequest {
@NotBlank(message = "tranValue不能为空", groups = {add.class, edit.class})
private String tranValue;
/**
* id
*/
@NotNull(message = "字典id", groups = {deleteTranLanguage.class})
private Long dictId;
/**
*
*/
public @interface changeUserLanguage {
}
/**
*
*/
public @interface deleteTranLanguage {
}
}

View File

@ -65,6 +65,18 @@ public class TranslationController {
return new SuccessResponseData();
}
/**
*
*
* @author fengshuonan
* @date 2021/1/24 19:20
*/
@PostResource(name = "删除某个语种", path = "/i18n/deleteTranLanguage")
public ResponseData deleteTranLanguage(@RequestBody @Validated(TranslationRequest.deleteTranLanguage.class) TranslationRequest translationRequest) {
this.translationService.deleteTranLanguage(translationRequest);
return new SuccessResponseData();
}
/**
*
*

View File

@ -70,4 +70,13 @@ public interface TranslationService extends IService<Translation>, TranslationPe
*/
PageResult<Translation> findPage(TranslationRequest translationRequest);
/**
*
*
* @param translationRequest
* @author fengshuonan
* @date 2021/1/30 10:00
*/
void deleteTranLanguage(TranslationRequest translationRequest);
}

View File

@ -5,6 +5,7 @@ import cn.hutool.core.util.ObjectUtil;
import cn.stylefeng.roses.kernel.db.api.factory.PageFactory;
import cn.stylefeng.roses.kernel.db.api.factory.PageResultFactory;
import cn.stylefeng.roses.kernel.db.api.pojo.page.PageResult;
import cn.stylefeng.roses.kernel.dict.api.DictApi;
import cn.stylefeng.roses.kernel.i18n.api.context.TranslationContext;
import cn.stylefeng.roses.kernel.i18n.api.exception.TranslationException;
import cn.stylefeng.roses.kernel.i18n.api.exception.enums.TranslationExceptionEnum;
@ -15,10 +16,12 @@ import cn.stylefeng.roses.kernel.i18n.modular.factory.TranslationDictFactory;
import cn.stylefeng.roses.kernel.i18n.modular.mapper.TranslationMapper;
import cn.stylefeng.roses.kernel.i18n.modular.service.TranslationService;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.List;
@ -31,6 +34,9 @@ import java.util.List;
@Service
public class TranslationServiceImpl extends ServiceImpl<TranslationMapper, Translation> implements TranslationService {
@Resource
private DictApi dictApi;
@Override
public void add(TranslationRequest translationRequest) {
Translation translation = new Translation();
@ -79,6 +85,18 @@ public class TranslationServiceImpl extends ServiceImpl<TranslationMapper, Trans
return PageResultFactory.createPageResult(page);
}
@Override
public void deleteTranLanguage(TranslationRequest translationRequest) {
// 删除对应的字典信息
dictApi.deleteByDictId(translationRequest.getDictId());
// 删除该语言下的所有翻译项
LambdaUpdateWrapper<Translation> wrapper = new LambdaUpdateWrapper<>();
wrapper.eq(Translation::getTranLanguageCode, translationRequest.getTranLanguageCode());
this.remove(wrapper);
}
@Override
public List<TranslationDict> getAllTranslationDict() {
List<Translation> list = this.list();

View File

@ -41,4 +41,13 @@ public interface DictApi {
*/
List<SimpleDict> getDictDetailsByDictTypeCode(String dictTypeCode);
/**
* dictId
*
* @param dictId id
* @author fengshuonan
* @date 2021/1/30 10:03
*/
void deleteByDictId(Long dictId);
}

View File

@ -122,7 +122,6 @@ public interface DictService extends IService<SysDict>, DictApi {
*/
List<ZTreeNode> dictZTree(DictRequest dictRequest);
/**
*
*

View File

@ -353,6 +353,11 @@ public class DictServiceImpl extends ServiceImpl<DictMapper, SysDict> implements
return simpleDictList;
}
@Override
public void deleteByDictId(Long dictId) {
this.removeById(dictId);
}
/**
* pids
*