mirror of https://gitee.com/xiaonuobase/snowy
代码优化
parent
df4803471d
commit
28a8de231a
|
@ -95,7 +95,7 @@ public class CommonCryptogramUtil {
|
||||||
sm4Options8.setMode("cbc");
|
sm4Options8.setMode("cbc");
|
||||||
sm4Options8.setIv("fedcba98765432100123456789abcdef");
|
sm4Options8.setIv("fedcba98765432100123456789abcdef");
|
||||||
String docString = Sm4.decrypt(str, KEY, sm4Options8);
|
String docString = Sm4.decrypt(str, KEY, sm4Options8);
|
||||||
if (docString.equals("")) {
|
if ("".equals(docString)) {
|
||||||
log.warn(">>> 字段解密失败,返回原文值:{}", str);
|
log.warn(">>> 字段解密失败,返回原文值:{}", str);
|
||||||
return str;
|
return str;
|
||||||
} else {
|
} else {
|
||||||
|
|
|
@ -302,7 +302,7 @@ public class BizOrgServiceImpl extends ServiceImpl<BizOrgMapper, BizOrg> impleme
|
||||||
bizOrg.setName(orgName);
|
bizOrg.setName(orgName);
|
||||||
bizOrg.setCode(RandomUtil.randomString(10));
|
bizOrg.setCode(RandomUtil.randomString(10));
|
||||||
bizOrg.setParentId(parentId);
|
bizOrg.setParentId(parentId);
|
||||||
bizOrg.setCategory(parentId.equals("0")?BizOrgCategoryEnum.COMPANY.getValue():BizOrgCategoryEnum.DEPT.getValue());
|
bizOrg.setCategory("0".equals(parentId)?BizOrgCategoryEnum.COMPANY.getValue():BizOrgCategoryEnum.DEPT.getValue());
|
||||||
bizOrg.setSortCode(99);
|
bizOrg.setSortCode(99);
|
||||||
this.save(bizOrg);
|
this.save(bizOrg);
|
||||||
// 发布增加事件
|
// 发布增加事件
|
||||||
|
|
|
@ -110,7 +110,7 @@ public class DevSmsAliyunUtil {
|
||||||
SendSmsResponse sendSmsResponse = client.sendSms(sendSmsRequest);
|
SendSmsResponse sendSmsResponse = client.sendSms(sendSmsRequest);
|
||||||
SendSmsResponseBody body = sendSmsResponse.getBody();
|
SendSmsResponseBody body = sendSmsResponse.getBody();
|
||||||
String code = body.getCode().toLowerCase();
|
String code = body.getCode().toLowerCase();
|
||||||
if(code.equals("ok")) {
|
if("ok".equals(code)) {
|
||||||
return JSONUtil.toJsonStr(body);
|
return JSONUtil.toJsonStr(body);
|
||||||
} else {
|
} else {
|
||||||
throw new CommonException(body.getMessage());
|
throw new CommonException(body.getMessage());
|
||||||
|
|
|
@ -119,7 +119,7 @@ public class DevSmsTencentUtil {
|
||||||
SendSmsResponse sendSmsResponse = client.SendSms(sendSmsRequest);
|
SendSmsResponse sendSmsResponse = client.SendSms(sendSmsRequest);
|
||||||
SendStatus sendStatus = sendSmsResponse.getSendStatusSet()[0];
|
SendStatus sendStatus = sendSmsResponse.getSendStatusSet()[0];
|
||||||
String code = sendStatus.getCode().toLowerCase();
|
String code = sendStatus.getCode().toLowerCase();
|
||||||
if(code.equals("ok")) {
|
if("ok".equals(code)) {
|
||||||
return JSONUtil.toJsonStr(sendSmsResponse);
|
return JSONUtil.toJsonStr(sendSmsResponse);
|
||||||
} else {
|
} else {
|
||||||
throw new CommonException(sendStatus.getMessage());
|
throw new CommonException(sendStatus.getMessage());
|
||||||
|
|
|
@ -503,7 +503,7 @@ public class GenBasicServiceImpl extends ServiceImpl<GenBasicMapper, GenBasic> i
|
||||||
Template templateFront = groupTemplateFront.getTemplate(fileTemplateName);
|
Template templateFront = groupTemplateFront.getTemplate(fileTemplateName);
|
||||||
templateFront.binding(bindingJsonObject);
|
templateFront.binding(bindingJsonObject);
|
||||||
String resultName = StrUtil.removeSuffix(fileTemplateName, ".btl");
|
String resultName = StrUtil.removeSuffix(fileTemplateName, ".btl");
|
||||||
if(fileTemplateName.equalsIgnoreCase("Api.js.btl")) {
|
if("Api.js.btl".equalsIgnoreCase(fileTemplateName)) {
|
||||||
resultName = StrUtil.lowerFirst(genBasic.getClassName()) + resultName;
|
resultName = StrUtil.lowerFirst(genBasic.getClassName()) + resultName;
|
||||||
genBasicCodeFrontResult.setCodeFileName(resultName);
|
genBasicCodeFrontResult.setCodeFileName(resultName);
|
||||||
genBasicCodeFrontResult.setCodeFileWithPathName(genFrontBasicPath + fileTemplatePath + File.separator + resultName);
|
genBasicCodeFrontResult.setCodeFileWithPathName(genFrontBasicPath + fileTemplatePath + File.separator + resultName);
|
||||||
|
@ -530,7 +530,7 @@ public class GenBasicServiceImpl extends ServiceImpl<GenBasicMapper, GenBasic> i
|
||||||
Template templateBackend = groupTemplateBackEnd.getTemplate(fileTemplateName);
|
Template templateBackend = groupTemplateBackEnd.getTemplate(fileTemplateName);
|
||||||
templateBackend.binding(bindingJsonObject);
|
templateBackend.binding(bindingJsonObject);
|
||||||
String resultName = StrUtil.removeSuffix(fileTemplateName, ".btl");
|
String resultName = StrUtil.removeSuffix(fileTemplateName, ".btl");
|
||||||
if(fileTemplateName.equalsIgnoreCase("Entity.java.btl")) {
|
if("Entity.java.btl".equalsIgnoreCase(fileTemplateName)) {
|
||||||
resultName = ".java";
|
resultName = ".java";
|
||||||
}
|
}
|
||||||
genBasicCodeBackendResult.setCodeFileName(genBasic.getClassName() + resultName);
|
genBasicCodeBackendResult.setCodeFileName(genBasic.getClassName() + resultName);
|
||||||
|
@ -555,7 +555,7 @@ public class GenBasicServiceImpl extends ServiceImpl<GenBasicMapper, GenBasic> i
|
||||||
Template templateMobile = groupTemplateMobile.getTemplate(fileTemplateName);
|
Template templateMobile = groupTemplateMobile.getTemplate(fileTemplateName);
|
||||||
templateMobile.binding(bindingJsonObject);
|
templateMobile.binding(bindingJsonObject);
|
||||||
String resultName = StrUtil.removeSuffix(fileTemplateName, ".btl");
|
String resultName = StrUtil.removeSuffix(fileTemplateName, ".btl");
|
||||||
if(fileTemplateName.equalsIgnoreCase("Api.js.btl")) {
|
if("Api.js.btl".equalsIgnoreCase(fileTemplateName)) {
|
||||||
resultName = StrUtil.lowerFirst(genBasic.getClassName()) + resultName;
|
resultName = StrUtil.lowerFirst(genBasic.getClassName()) + resultName;
|
||||||
genBasicCodeMobileResult.setCodeFileName(resultName);
|
genBasicCodeMobileResult.setCodeFileName(resultName);
|
||||||
genBasicCodeMobileResult.setCodeFileWithPathName(genMobileBasicPath + fileTemplatePath + File.separator + resultName);
|
genBasicCodeMobileResult.setCodeFileWithPathName(genMobileBasicPath + fileTemplatePath + File.separator + resultName);
|
||||||
|
|
|
@ -88,7 +88,7 @@ public class MobileMenuServiceImpl extends ServiceImpl<MobileMenuMapper, MobileM
|
||||||
}
|
}
|
||||||
List<MobileMenu> originDataList = this.list(new LambdaQueryWrapper<MobileMenu>().eq(MobileMenu::getCategory,
|
List<MobileMenu> originDataList = this.list(new LambdaQueryWrapper<MobileMenu>().eq(MobileMenu::getCategory,
|
||||||
MobileResourceCategoryEnum.MENU.getValue()));
|
MobileResourceCategoryEnum.MENU.getValue()));
|
||||||
if(!mobileMenuAddParam.getParentId().equals("0")) {
|
if(!"0".equals(mobileMenuAddParam.getParentId())) {
|
||||||
MobileMenu parentMenu = this.getById(originDataList, mobileMenuAddParam.getParentId());
|
MobileMenu parentMenu = this.getById(originDataList, mobileMenuAddParam.getParentId());
|
||||||
if(ObjectUtil.isEmpty(parentMenu)) {
|
if(ObjectUtil.isEmpty(parentMenu)) {
|
||||||
throw new CommonException("上级菜单不存在,id值为:{}", mobileMenuAddParam.getParentId());
|
throw new CommonException("上级菜单不存在,id值为:{}", mobileMenuAddParam.getParentId());
|
||||||
|
@ -118,7 +118,7 @@ public class MobileMenuServiceImpl extends ServiceImpl<MobileMenuMapper, MobileM
|
||||||
if(errorLevel) {
|
if(errorLevel) {
|
||||||
throw new CommonException("不可选择上级菜单:{}", this.getById(originDataList, mobileMenu.getParentId()).getTitle());
|
throw new CommonException("不可选择上级菜单:{}", this.getById(originDataList, mobileMenu.getParentId()).getTitle());
|
||||||
}
|
}
|
||||||
if(!mobileMenuEditParam.getParentId().equals("0")) {
|
if(!"0".equals(mobileMenuEditParam.getParentId())) {
|
||||||
MobileMenu parentMenu = this.getById(originDataList, mobileMenuEditParam.getParentId());
|
MobileMenu parentMenu = this.getById(originDataList, mobileMenuEditParam.getParentId());
|
||||||
if(ObjectUtil.isEmpty(parentMenu)) {
|
if(ObjectUtil.isEmpty(parentMenu)) {
|
||||||
throw new CommonException("上级菜单不存在,id值为:{}", mobileMenuEditParam.getParentId());
|
throw new CommonException("上级菜单不存在,id值为:{}", mobileMenuEditParam.getParentId());
|
||||||
|
@ -133,7 +133,7 @@ public class MobileMenuServiceImpl extends ServiceImpl<MobileMenuMapper, MobileM
|
||||||
@Override
|
@Override
|
||||||
public void changeModule(MobileMenuChangeModuleParam mobileMenuChangeModuleParam) {
|
public void changeModule(MobileMenuChangeModuleParam mobileMenuChangeModuleParam) {
|
||||||
MobileMenu mobileMenu = this.queryEntity(mobileMenuChangeModuleParam.getId());
|
MobileMenu mobileMenu = this.queryEntity(mobileMenuChangeModuleParam.getId());
|
||||||
if(!mobileMenu.getParentId().equals("0")) {
|
if(!"0".equals(mobileMenu.getParentId())) {
|
||||||
throw new CommonException("非顶级菜单不可修改所属模块");
|
throw new CommonException("非顶级菜单不可修改所属模块");
|
||||||
}
|
}
|
||||||
List<MobileMenu> mobileMenuList = this.list(new LambdaQueryWrapper<MobileMenu>().eq(MobileMenu::getCategory,
|
List<MobileMenu> mobileMenuList = this.list(new LambdaQueryWrapper<MobileMenu>().eq(MobileMenu::getCategory,
|
||||||
|
@ -215,9 +215,15 @@ public class MobileMenuServiceImpl extends ServiceImpl<MobileMenuMapper, MobileM
|
||||||
return CollectionUtil.newArrayList();
|
return CollectionUtil.newArrayList();
|
||||||
}
|
}
|
||||||
allModuleAndMenuList.forEach(mobileMenu -> {
|
allModuleAndMenuList.forEach(mobileMenu -> {
|
||||||
if (mobileMenu.getCategory().equals(MobileResourceCategoryEnum.MODULE.getValue())) mobileModuleList.add(mobileMenu);
|
if (mobileMenu.getCategory().equals(MobileResourceCategoryEnum.MODULE.getValue())) {
|
||||||
if (mobileMenu.getCategory().equals(MobileResourceCategoryEnum.MENU.getValue())) mobileMenuList.add(mobileMenu);
|
mobileModuleList.add(mobileMenu);
|
||||||
if (mobileMenu.getCategory().equals(MobileResourceCategoryEnum.BUTTON.getValue())) mobileButtonList.add(mobileMenu);
|
}
|
||||||
|
if (mobileMenu.getCategory().equals(MobileResourceCategoryEnum.MENU.getValue())) {
|
||||||
|
mobileMenuList.add(mobileMenu);
|
||||||
|
}
|
||||||
|
if (mobileMenu.getCategory().equals(MobileResourceCategoryEnum.BUTTON.getValue())) {
|
||||||
|
mobileButtonList.add(mobileMenu);
|
||||||
|
}
|
||||||
});
|
});
|
||||||
List<JSONObject> leafMenuList = CollectionUtil.newArrayList();
|
List<JSONObject> leafMenuList = CollectionUtil.newArrayList();
|
||||||
List<TreeNode<String>> treeNodeList = mobileMenuList.stream().map(mobileMenu ->
|
List<TreeNode<String>> treeNodeList = mobileMenuList.stream().map(mobileMenu ->
|
||||||
|
@ -323,7 +329,7 @@ public class MobileMenuServiceImpl extends ServiceImpl<MobileMenuMapper, MobileM
|
||||||
}
|
}
|
||||||
// 将根菜单的父id设置为模块的id
|
// 将根菜单的父id设置为模块的id
|
||||||
if (mobileMenu.getCategory().equals(MobileResourceCategoryEnum.MENU.getValue())) {
|
if (mobileMenu.getCategory().equals(MobileResourceCategoryEnum.MENU.getValue())) {
|
||||||
if (mobileMenu.getParentId().equals("0")) {
|
if ("0".equals(mobileMenu.getParentId())) {
|
||||||
mobileMenu.setParentId(mobileMenu.getModule());
|
mobileMenu.setParentId(mobileMenu.getModule());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -356,7 +362,7 @@ public class MobileMenuServiceImpl extends ServiceImpl<MobileMenuMapper, MobileM
|
||||||
JSONObject jsonObject = JSONUtil.createObj();
|
JSONObject jsonObject = JSONUtil.createObj();
|
||||||
if(ObjectUtil.isNotEmpty(resultList)) {
|
if(ObjectUtil.isNotEmpty(resultList)) {
|
||||||
Tree<String> currentNode = resultList.get(0);
|
Tree<String> currentNode = resultList.get(0);
|
||||||
if(currentNode.getId().equals("0") || currentNode.getParentId().equals("0")) {
|
if("0".equals(currentNode.getId()) || "0".equals(currentNode.getParentId())) {
|
||||||
jsonObject.set("parentId", mobileMenu.getId());
|
jsonObject.set("parentId", mobileMenu.getId());
|
||||||
jsonObject.set("parentName", mobileMenu.getTitle());
|
jsonObject.set("parentName", mobileMenu.getTitle());
|
||||||
} else {
|
} else {
|
||||||
|
|
|
@ -264,7 +264,7 @@ public class SysOrgServiceImpl extends ServiceImpl<SysOrgMapper, SysOrg> impleme
|
||||||
sysOrg.setName(orgName);
|
sysOrg.setName(orgName);
|
||||||
sysOrg.setCode(RandomUtil.randomString(10));
|
sysOrg.setCode(RandomUtil.randomString(10));
|
||||||
sysOrg.setParentId(parentId);
|
sysOrg.setParentId(parentId);
|
||||||
sysOrg.setCategory(parentId.equals("0")?SysOrgCategoryEnum.COMPANY.getValue():SysOrgCategoryEnum.DEPT.getValue());
|
sysOrg.setCategory("0".equals(parentId)?SysOrgCategoryEnum.COMPANY.getValue():SysOrgCategoryEnum.DEPT.getValue());
|
||||||
sysOrg.setSortCode(99);
|
sysOrg.setSortCode(99);
|
||||||
this.save(sysOrg);
|
this.save(sysOrg);
|
||||||
// 发布增加事件
|
// 发布增加事件
|
||||||
|
|
|
@ -155,7 +155,7 @@ public class SysMenuServiceImpl extends ServiceImpl<SysMenuMapper, SysMenu> impl
|
||||||
}
|
}
|
||||||
List<SysMenu> originDataList = this.list(new LambdaQueryWrapper<SysMenu>().eq(SysMenu::getCategory,
|
List<SysMenu> originDataList = this.list(new LambdaQueryWrapper<SysMenu>().eq(SysMenu::getCategory,
|
||||||
SysResourceCategoryEnum.MENU.getValue()));
|
SysResourceCategoryEnum.MENU.getValue()));
|
||||||
if(!sysMenuAddParam.getParentId().equals("0")) {
|
if(!"0".equals(sysMenuAddParam.getParentId())) {
|
||||||
SysMenu parentMenu = this.getById(originDataList, sysMenuAddParam.getParentId());
|
SysMenu parentMenu = this.getById(originDataList, sysMenuAddParam.getParentId());
|
||||||
if(ObjectUtil.isEmpty(parentMenu)) {
|
if(ObjectUtil.isEmpty(parentMenu)) {
|
||||||
throw new CommonException("上级菜单不存在,id值为:{}", sysMenuAddParam.getParentId());
|
throw new CommonException("上级菜单不存在,id值为:{}", sysMenuAddParam.getParentId());
|
||||||
|
@ -175,7 +175,7 @@ public class SysMenuServiceImpl extends ServiceImpl<SysMenuMapper, SysMenu> impl
|
||||||
@Override
|
@Override
|
||||||
public String addForGenMenu(String parentId, String busName, String title, String module, String path) {
|
public String addForGenMenu(String parentId, String busName, String title, String module, String path) {
|
||||||
// 参数校验
|
// 参数校验
|
||||||
if(!parentId.equals("0")) {
|
if(!"0".equals(parentId)) {
|
||||||
SysMenu parentMenu = this.queryEntity(parentId);
|
SysMenu parentMenu = this.queryEntity(parentId);
|
||||||
if(ObjectUtil.isEmpty(parentMenu)) {
|
if(ObjectUtil.isEmpty(parentMenu)) {
|
||||||
throw new CommonException("上级菜单不存在,id值为:{}", parentId);
|
throw new CommonException("上级菜单不存在,id值为:{}", parentId);
|
||||||
|
@ -249,7 +249,7 @@ public class SysMenuServiceImpl extends ServiceImpl<SysMenuMapper, SysMenu> impl
|
||||||
if(errorLevel) {
|
if(errorLevel) {
|
||||||
throw new CommonException("不可选择上级菜单:{}", this.getById(originDataList, sysMenu.getParentId()).getName());
|
throw new CommonException("不可选择上级菜单:{}", this.getById(originDataList, sysMenu.getParentId()).getName());
|
||||||
}
|
}
|
||||||
if(!sysMenuEditParam.getParentId().equals("0")) {
|
if(!"0".equals(sysMenuEditParam.getParentId())) {
|
||||||
SysMenu parentMenu = this.getById(originDataList, sysMenuEditParam.getParentId());
|
SysMenu parentMenu = this.getById(originDataList, sysMenuEditParam.getParentId());
|
||||||
if(ObjectUtil.isEmpty(parentMenu)) {
|
if(ObjectUtil.isEmpty(parentMenu)) {
|
||||||
throw new CommonException("上级菜单不存在,id值为:{}", sysMenuEditParam.getParentId());
|
throw new CommonException("上级菜单不存在,id值为:{}", sysMenuEditParam.getParentId());
|
||||||
|
@ -267,7 +267,7 @@ public class SysMenuServiceImpl extends ServiceImpl<SysMenuMapper, SysMenu> impl
|
||||||
@Override
|
@Override
|
||||||
public void changeModule(SysMenuChangeModuleParam sysMenuChangeModuleParam) {
|
public void changeModule(SysMenuChangeModuleParam sysMenuChangeModuleParam) {
|
||||||
SysMenu sysMenu = this.queryEntity(sysMenuChangeModuleParam.getId());
|
SysMenu sysMenu = this.queryEntity(sysMenuChangeModuleParam.getId());
|
||||||
if(!sysMenu.getParentId().equals("0")) {
|
if(!"0".equals(sysMenu.getParentId())) {
|
||||||
throw new CommonException("非顶级菜单不可修改所属模块");
|
throw new CommonException("非顶级菜单不可修改所属模块");
|
||||||
}
|
}
|
||||||
List<SysMenu> sysMenuList = this.list(new LambdaQueryWrapper<SysMenu>().eq(SysMenu::getCategory,
|
List<SysMenu> sysMenuList = this.list(new LambdaQueryWrapper<SysMenu>().eq(SysMenu::getCategory,
|
||||||
|
|
|
@ -336,9 +336,15 @@ public class SysRoleServiceImpl extends ServiceImpl<SysRoleMapper, SysRole> impl
|
||||||
List<SysMenu> sysMenuList = CollectionUtil.newArrayList();
|
List<SysMenu> sysMenuList = CollectionUtil.newArrayList();
|
||||||
List<SysMenu> sysButtonList = CollectionUtil.newArrayList();
|
List<SysMenu> sysButtonList = CollectionUtil.newArrayList();
|
||||||
allMenuAndButtonAndFieldList.forEach(sysMenu -> {
|
allMenuAndButtonAndFieldList.forEach(sysMenu -> {
|
||||||
if (sysMenu.getCategory().equals(SysResourceCategoryEnum.MODULE.getValue())) sysModuleList.add(sysMenu);
|
if (sysMenu.getCategory().equals(SysResourceCategoryEnum.MODULE.getValue())) {
|
||||||
if (sysMenu.getCategory().equals(SysResourceCategoryEnum.MENU.getValue())) sysMenuList.add(sysMenu);
|
sysModuleList.add(sysMenu);
|
||||||
if (sysMenu.getCategory().equals(SysResourceCategoryEnum.BUTTON.getValue())) sysButtonList.add(sysMenu);
|
}
|
||||||
|
if (sysMenu.getCategory().equals(SysResourceCategoryEnum.MENU.getValue())) {
|
||||||
|
sysMenuList.add(sysMenu);
|
||||||
|
}
|
||||||
|
if (sysMenu.getCategory().equals(SysResourceCategoryEnum.BUTTON.getValue())) {
|
||||||
|
sysButtonList.add(sysMenu);
|
||||||
|
}
|
||||||
});
|
});
|
||||||
List<SysRoleGrantResourceTreeResult.SysRoleGrantResourceMenuResult> leafMenuList = CollectionUtil.newArrayList();
|
List<SysRoleGrantResourceTreeResult.SysRoleGrantResourceMenuResult> leafMenuList = CollectionUtil.newArrayList();
|
||||||
SysMenu rootSysMenu = new SysMenu();
|
SysMenu rootSysMenu = new SysMenu();
|
||||||
|
@ -485,7 +491,7 @@ public class SysRoleServiceImpl extends ServiceImpl<SysRoleMapper, SysRole> impl
|
||||||
JSONObject jsonObject = JSONUtil.createObj();
|
JSONObject jsonObject = JSONUtil.createObj();
|
||||||
if(ObjectUtil.isNotEmpty(resultList)) {
|
if(ObjectUtil.isNotEmpty(resultList)) {
|
||||||
Tree<String> currentNode = resultList.get(0);
|
Tree<String> currentNode = resultList.get(0);
|
||||||
if(currentNode.getId().equals("0") || currentNode.getParentId().equals("0")) {
|
if("0".equals(currentNode.getId()) || "0".equals(currentNode.getParentId())) {
|
||||||
jsonObject.set("parentId", sysMenu.getId());
|
jsonObject.set("parentId", sysMenu.getId());
|
||||||
jsonObject.set("parentName", sysMenu.getTitle());
|
jsonObject.set("parentName", sysMenu.getTitle());
|
||||||
} else {
|
} else {
|
||||||
|
|
|
@ -689,7 +689,7 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
|
||||||
}
|
}
|
||||||
// 将根菜单的父id设置为模块的id
|
// 将根菜单的父id设置为模块的id
|
||||||
if (sysMenu.getCategory().equals(SysResourceCategoryEnum.MENU.getValue())) {
|
if (sysMenu.getCategory().equals(SysResourceCategoryEnum.MENU.getValue())) {
|
||||||
if (sysMenu.getParentId().equals("0")) {
|
if ("0".equals(sysMenu.getParentId())) {
|
||||||
sysMenu.setParentId(sysMenu.getModule());
|
sysMenu.setParentId(sysMenu.getModule());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue