Merge branch '20240920' of http://git.hzwlsoft.com/laws-chery/laws_chery_serve into 20240920
# Conflicts: # db/update/测试阶段.sql
This commit is contained in:
@@ -398,3 +398,7 @@ ALTER TABLE sys_user MODIFY COLUMN `type_id` varchar(64) NULL COMMENT '人员类
|
|||||||
-- 2024-09-18 增加法规符合性评估库适用市场字段长度
|
-- 2024-09-18 增加法规符合性评估库适用市场字段长度
|
||||||
ALTER TABLE `laws_conformity_assessment_library`
|
ALTER TABLE `laws_conformity_assessment_library`
|
||||||
MODIFY COLUMN `applicable_market` varchar(200) NULL DEFAULT NULL COMMENT '适用市场' AFTER `valuation_time`;
|
MODIFY COLUMN `applicable_market` varchar(200) NULL DEFAULT NULL COMMENT '适用市场' AFTER `valuation_time`;
|
||||||
|
|
||||||
|
-- 2024-09-19 市场法规清单-标准添加排序号字段
|
||||||
|
ALTER TABLE `laws_market_standard_detail`
|
||||||
|
ADD COLUMN `order_no` float NULL COMMENT '排序号';
|
||||||
|
|||||||
@@ -152,26 +152,26 @@
|
|||||||
<scope>runtime</scope>
|
<scope>runtime</scope>
|
||||||
</dependency>
|
</dependency>
|
||||||
<!-- sqlserver-->
|
<!-- sqlserver-->
|
||||||
<dependency>
|
<!-- <dependency>-->
|
||||||
<groupId>com.microsoft.sqlserver</groupId>
|
<!-- <groupId>com.microsoft.sqlserver</groupId>-->
|
||||||
<artifactId>sqljdbc4</artifactId>
|
<!-- <artifactId>sqljdbc4</artifactId>-->
|
||||||
<version>${sqljdbc4.version}</version>
|
<!-- <version>${sqljdbc4.version}</version>-->
|
||||||
<scope>runtime</scope>
|
<!-- <scope>runtime</scope>-->
|
||||||
</dependency>
|
<!-- </dependency>-->
|
||||||
<!-- oracle驱动 -->
|
<!-- oracle驱动 -->
|
||||||
<dependency>
|
<!-- <dependency>-->
|
||||||
<groupId>com.oracle</groupId>
|
<!-- <groupId>com.oracle</groupId>-->
|
||||||
<artifactId>ojdbc6</artifactId>
|
<!-- <artifactId>ojdbc6</artifactId>-->
|
||||||
<version>${ojdbc6.version}</version>
|
<!-- <version>${ojdbc6.version}</version>-->
|
||||||
<scope>runtime</scope>
|
<!-- <scope>runtime</scope>-->
|
||||||
</dependency>
|
<!-- </dependency>-->
|
||||||
<!-- postgresql驱动 -->
|
<!-- postgresql驱动 -->
|
||||||
<dependency>
|
<!-- <dependency>-->
|
||||||
<groupId>org.postgresql</groupId>
|
<!-- <groupId>org.postgresql</groupId>-->
|
||||||
<artifactId>postgresql</artifactId>
|
<!-- <artifactId>postgresql</artifactId>-->
|
||||||
<version>${postgresql.version}</version>
|
<!-- <version>${postgresql.version}</version>-->
|
||||||
<scope>runtime</scope>
|
<!-- <scope>runtime</scope>-->
|
||||||
</dependency>
|
<!-- </dependency>-->
|
||||||
|
|
||||||
<!-- Quartz定时任务 -->
|
<!-- Quartz定时任务 -->
|
||||||
<dependency>
|
<dependency>
|
||||||
@@ -222,8 +222,21 @@
|
|||||||
<groupId>commons-codec</groupId>
|
<groupId>commons-codec</groupId>
|
||||||
<artifactId>commons-codec</artifactId>
|
<artifactId>commons-codec</artifactId>
|
||||||
</exclusion>
|
</exclusion>
|
||||||
|
<exclusion>
|
||||||
|
<groupId>xerces</groupId>
|
||||||
|
<artifactId>xercesImpl</artifactId>
|
||||||
|
</exclusion>
|
||||||
|
<exclusion>
|
||||||
|
<artifactId>commons-compress</artifactId>
|
||||||
|
<groupId>org.apache.commons</groupId>
|
||||||
|
</exclusion>
|
||||||
</exclusions>
|
</exclusions>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.apache.commons</groupId>
|
||||||
|
<artifactId>commons-compress</artifactId>
|
||||||
|
<version>1.26.0</version>
|
||||||
|
</dependency>
|
||||||
|
|
||||||
<!-- mini文件存储服务 -->
|
<!-- mini文件存储服务 -->
|
||||||
<dependency>
|
<dependency>
|
||||||
|
|||||||
@@ -73,7 +73,7 @@ public class CorsFilter implements Filter {
|
|||||||
|
|
||||||
private void responseInfo(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
|
private void responseInfo(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
|
||||||
HttpServletResponse httpServletResponse = (HttpServletResponse) response;
|
HttpServletResponse httpServletResponse = (HttpServletResponse) response;
|
||||||
httpServletResponse.setHeader("Access-Control-Allow-Origin", ((HttpServletRequest) request).getHeader("Origin"));
|
httpServletResponse.setHeader("Access-Control-Allow-Origin", originIp);
|
||||||
httpServletResponse.setHeader("Access-Control-Allow-Credentials", "true");
|
httpServletResponse.setHeader("Access-Control-Allow-Credentials", "true");
|
||||||
httpServletResponse.setHeader("Access-Control-Allow-Methods", "POST,GET");
|
httpServletResponse.setHeader("Access-Control-Allow-Methods", "POST,GET");
|
||||||
httpServletResponse.setHeader("Access-Control-Max-Age", "3600");
|
httpServletResponse.setHeader("Access-Control-Max-Age", "3600");
|
||||||
|
|||||||
@@ -28,7 +28,7 @@ public class JwtFilter extends BasicHttpAuthenticationFilter {
|
|||||||
* 默认开启跨域设置(使用单体)
|
* 默认开启跨域设置(使用单体)
|
||||||
* 微服务情况下,此属性设置为false
|
* 微服务情况下,此属性设置为false
|
||||||
*/
|
*/
|
||||||
private boolean allowOrigin = true;
|
private boolean allowOrigin = false;
|
||||||
|
|
||||||
public JwtFilter(){}
|
public JwtFilter(){}
|
||||||
public JwtFilter(boolean allowOrigin){
|
public JwtFilter(boolean allowOrigin){
|
||||||
|
|||||||
@@ -15,13 +15,38 @@
|
|||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.springframework.boot</groupId>
|
<groupId>org.springframework.boot</groupId>
|
||||||
<artifactId>spring-boot-starter-web</artifactId>
|
<artifactId>spring-boot-starter-web</artifactId>
|
||||||
|
<exclusions>
|
||||||
|
<exclusion>
|
||||||
|
<artifactId>jackson-databind</artifactId>
|
||||||
|
<groupId>com.fasterxml.jackson.core</groupId>
|
||||||
|
</exclusion>
|
||||||
|
</exclusions>
|
||||||
<optional>true</optional>
|
<optional>true</optional>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
<!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-databind -->
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.fasterxml.jackson.core</groupId>
|
||||||
|
<artifactId>jackson-databind</artifactId>
|
||||||
|
<version>2.14.2</version>
|
||||||
|
</dependency>
|
||||||
|
|
||||||
<!-- Redis -->
|
<!-- Redis -->
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.springframework.boot</groupId>
|
<groupId>org.springframework.boot</groupId>
|
||||||
<artifactId>spring-boot-starter-data-redis</artifactId>
|
<artifactId>spring-boot-starter-data-redis</artifactId>
|
||||||
|
<exclusions>
|
||||||
|
<exclusion>
|
||||||
|
<artifactId>netty-codec</artifactId>
|
||||||
|
<groupId>io.netty</groupId>
|
||||||
|
</exclusion>
|
||||||
|
</exclusions>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>io.netty</groupId>
|
||||||
|
<artifactId>netty-codec</artifactId>
|
||||||
|
<version>4.1.94.Final</version>
|
||||||
|
</dependency>
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.apache.commons</groupId>
|
<groupId>org.apache.commons</groupId>
|
||||||
<artifactId>commons-pool2</artifactId>
|
<artifactId>commons-pool2</artifactId>
|
||||||
|
|||||||
@@ -41,16 +41,21 @@
|
|||||||
<artifactId>jero-system-local-api</artifactId>
|
<artifactId>jero-system-local-api</artifactId>
|
||||||
</dependency>
|
</dependency>
|
||||||
<!-- 积木报表 -->
|
<!-- 积木报表 -->
|
||||||
|
<!-- <dependency>-->
|
||||||
|
<!-- <groupId>com.jimureport</groupId>-->
|
||||||
|
<!-- <artifactId>spring-boot-starter-jimureport</artifactId>-->
|
||||||
|
<!-- <version>1.2.0</version>-->
|
||||||
|
<!-- <exclusions>-->
|
||||||
|
<!-- <exclusion>-->
|
||||||
|
<!-- <artifactId>autopoi-web</artifactId>-->
|
||||||
|
<!-- <groupId>org.jeecgframework</groupId>-->
|
||||||
|
<!-- </exclusion>-->
|
||||||
|
<!-- </exclusions>-->
|
||||||
|
<!-- </dependency>-->
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>com.jimureport</groupId>
|
<groupId>org.apache.poi</groupId>
|
||||||
<artifactId>spring-boot-starter-jimureport</artifactId>
|
<artifactId>ooxml-schemas</artifactId>
|
||||||
<version>1.2.0</version>
|
<version>1.4</version>
|
||||||
<exclusions>
|
|
||||||
<exclusion>
|
|
||||||
<artifactId>autopoi-web</artifactId>
|
|
||||||
<groupId>org.jeecgframework</groupId>
|
|
||||||
</exclusion>
|
|
||||||
</exclusions>
|
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>com.github.stuxuhai</groupId>
|
<groupId>com.github.stuxuhai</groupId>
|
||||||
|
|||||||
-56
@@ -1,56 +0,0 @@
|
|||||||
package com.jero.config.jimureport;
|
|
||||||
|
|
||||||
import com.jero.common.system.api.ISysBaseAPI;
|
|
||||||
import com.jero.common.system.util.JwtUtil;
|
|
||||||
import com.jero.common.system.vo.SysUserCacheInfo;
|
|
||||||
import com.jero.common.util.RedisUtil;
|
|
||||||
import com.jero.common.util.TokenUtils;
|
|
||||||
import org.jeecg.modules.jmreport.api.JmReportTokenServiceI;
|
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
|
||||||
import org.springframework.context.annotation.Lazy;
|
|
||||||
|
|
||||||
import javax.servlet.http.HttpServletRequest;
|
|
||||||
import java.util.HashMap;
|
|
||||||
import java.util.Map;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 自定义积木报表鉴权(如果不进行自定义,则所有请求不做权限控制)
|
|
||||||
* * 1.自定义获取登录token
|
|
||||||
* * 2.自定义获取登录用户
|
|
||||||
*/
|
|
||||||
class JimuReportTokenService implements JmReportTokenServiceI {
|
|
||||||
@Autowired
|
|
||||||
private ISysBaseAPI sysBaseAPI;
|
|
||||||
@Autowired
|
|
||||||
@Lazy
|
|
||||||
private RedisUtil redisUtil;
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public String getToken(HttpServletRequest request) {
|
|
||||||
return TokenUtils.getTokenByRequest(request);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public String getUsername(String token) {
|
|
||||||
return JwtUtil.getUsername(token);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public Boolean verifyToken(String token) {
|
|
||||||
return TokenUtils.verifyToken(token, sysBaseAPI, redisUtil);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public Map<String, Object> getUserInfo(String token) {
|
|
||||||
String username = JwtUtil.getUsername(token);
|
|
||||||
//此处通过token只能拿到一个信息 用户账号 后面的就是根据账号获取其他信息 查询数据或是走redis 用户根据自身业务可自定义
|
|
||||||
SysUserCacheInfo userInfo = sysBaseAPI.getCacheUser(username);
|
|
||||||
Map<String, Object> map = new HashMap<>();
|
|
||||||
//设置账号名
|
|
||||||
map.put(SYS_USER_CODE, userInfo.getSysUserCode());
|
|
||||||
//设置部门编码
|
|
||||||
map.put(SYS_ORG_CODE, userInfo.getSysOrgCode());
|
|
||||||
// 将所有信息存放至map 解析sql/api会根据map的键值解析
|
|
||||||
return map;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -39,6 +39,19 @@
|
|||||||
<artifactId>mybatis</artifactId>
|
<artifactId>mybatis</artifactId>
|
||||||
<groupId>org.mybatis</groupId>
|
<groupId>org.mybatis</groupId>
|
||||||
</exclusion>
|
</exclusion>
|
||||||
|
<exclusion>
|
||||||
|
<groupId>org.apache.commons</groupId>
|
||||||
|
<artifactId>commons-email</artifactId>
|
||||||
|
</exclusion>
|
||||||
|
<exclusion>
|
||||||
|
<groupId>org.springframework.security</groupId>
|
||||||
|
<artifactId>spring-security-core</artifactId>
|
||||||
|
</exclusion>
|
||||||
|
<exclusion>
|
||||||
|
<groupId>org.springframework.security</groupId>
|
||||||
|
<artifactId>spring-security-web</artifactId>
|
||||||
|
</exclusion>
|
||||||
|
|
||||||
</exclusions>
|
</exclusions>
|
||||||
</dependency>
|
</dependency>
|
||||||
<!-- Activiti生成流程图 -->
|
<!-- Activiti生成流程图 -->
|
||||||
@@ -102,6 +115,17 @@
|
|||||||
<version>2.2.3</version>
|
<version>2.2.3</version>
|
||||||
<classifier>jdk15</classifier>
|
<classifier>jdk15</classifier>
|
||||||
<!-- jdk版本 -->
|
<!-- jdk版本 -->
|
||||||
|
<exclusions>
|
||||||
|
<exclusion>
|
||||||
|
<groupId>commons-collections</groupId>
|
||||||
|
<artifactId>commons-collections</artifactId>
|
||||||
|
</exclusion>
|
||||||
|
</exclusions>
|
||||||
|
</dependency>
|
||||||
|
<!--加载beanutils-->
|
||||||
|
<dependency>
|
||||||
|
<groupId>commons-beanutils</groupId>
|
||||||
|
<artifactId>commons-beanutils</artifactId>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.springframework</groupId>
|
<groupId>org.springframework</groupId>
|
||||||
|
|||||||
+2
-1
@@ -304,7 +304,8 @@ public class ProcessMarketStandardReleaseServiceImpl extends ServiceImpl<Process
|
|||||||
if(!Objects.isNull(data)){
|
if(!Objects.isNull(data)){
|
||||||
LambdaQueryWrapper<LawsMarketStandardDetail> queryLawsMarketStandardDetail = new LambdaQueryWrapper<>();
|
LambdaQueryWrapper<LawsMarketStandardDetail> queryLawsMarketStandardDetail = new LambdaQueryWrapper<>();
|
||||||
queryLawsMarketStandardDetail.eq(LawsMarketStandardDetail::getManifestId,data.getManifestId());
|
queryLawsMarketStandardDetail.eq(LawsMarketStandardDetail::getManifestId,data.getManifestId());
|
||||||
queryLawsMarketStandardDetail.orderByDesc(LawsMarketStandardDetail::getId);
|
queryLawsMarketStandardDetail.orderByAsc(LawsMarketStandardDetail::getOrderNo);
|
||||||
|
queryLawsMarketStandardDetail.orderByDesc(LawsMarketStandardDetail::getCreateTime);
|
||||||
List<LawsMarketStandardDetail> listLawsMarketStandardDetail = lawsMarketStandardDetailService.list(queryLawsMarketStandardDetail);
|
List<LawsMarketStandardDetail> listLawsMarketStandardDetail = lawsMarketStandardDetailService.list(queryLawsMarketStandardDetail);
|
||||||
if(!CollectionUtils.isEmpty(listLawsMarketStandardDetail)){
|
if(!CollectionUtils.isEmpty(listLawsMarketStandardDetail)){
|
||||||
data.setList(listLawsMarketStandardDetail);
|
data.setList(listLawsMarketStandardDetail);
|
||||||
|
|||||||
+14
-4
@@ -26,6 +26,7 @@ import com.jero.modules.split.service.IFileSplitItemsEOService;
|
|||||||
import com.jero.modules.split.service.ISarFileSplitInfoService;
|
import com.jero.modules.split.service.ISarFileSplitInfoService;
|
||||||
import com.jero.modules.split.service.ISarFileSplitMenuEOService;
|
import com.jero.modules.split.service.ISarFileSplitMenuEOService;
|
||||||
import com.jero.modules.system.util.MyStringUtils;
|
import com.jero.modules.system.util.MyStringUtils;
|
||||||
|
import org.apache.commons.collections4.CollectionUtils;
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
import org.apache.shiro.SecurityUtils;
|
import org.apache.shiro.SecurityUtils;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
@@ -270,6 +271,7 @@ public class SarFileCompareInfoServiceImpl extends ServiceImpl<SarFileCompareInf
|
|||||||
|
|
||||||
private List<SarFileCompareItem> wrapperItemList(List<SarFileSplitItemsEO> list, String infoId, Map<String, SarFileCompareMenu> menuMap, String leftOrRight) {
|
private List<SarFileCompareItem> wrapperItemList(List<SarFileSplitItemsEO> list, String infoId, Map<String, SarFileCompareMenu> menuMap, String leftOrRight) {
|
||||||
List<SarFileCompareItem> resList = new ArrayList<>();
|
List<SarFileCompareItem> resList = new ArrayList<>();
|
||||||
|
List<SarFileCompareItem> resNullList = new ArrayList<>();
|
||||||
for (SarFileSplitItemsEO itemsEO : list) {
|
for (SarFileSplitItemsEO itemsEO : list) {
|
||||||
SarFileCompareItem item = new SarFileCompareItem();
|
SarFileCompareItem item = new SarFileCompareItem();
|
||||||
item.setInfoId(infoId);
|
item.setInfoId(infoId);
|
||||||
@@ -277,15 +279,23 @@ public class SarFileCompareInfoServiceImpl extends ServiceImpl<SarFileCompareInf
|
|||||||
item.setMenuId(itemsEO.getMenuId());
|
item.setMenuId(itemsEO.getMenuId());
|
||||||
item.setItemsNum(itemsEO.getItemNum());
|
item.setItemsNum(itemsEO.getItemNum());
|
||||||
item.setItemsText(itemsEO.getItemContent());
|
item.setItemsText(itemsEO.getItemContent());
|
||||||
|
item.setLeftOrRight(leftOrRight);
|
||||||
|
item.setReviewed(CompareConst.NO_REVIEWED);
|
||||||
SarFileCompareMenu menu = menuMap.get(itemsEO.getMenuId());
|
SarFileCompareMenu menu = menuMap.get(itemsEO.getMenuId());
|
||||||
if (menu != null) {
|
if (menu != null) {
|
||||||
item.setItemsDisplayNum(menu.getDisplaySeq());
|
item.setItemsDisplayNum(menu.getDisplaySeq());
|
||||||
|
resList.add(item);
|
||||||
|
}else{
|
||||||
|
resNullList.add(item);
|
||||||
}
|
}
|
||||||
item.setLeftOrRight(leftOrRight);
|
|
||||||
item.setReviewed(CompareConst.NO_REVIEWED);
|
}
|
||||||
resList.add(item);
|
if(!CollectionUtils.isEmpty(resList)){
|
||||||
|
resList.stream().filter(o->!Objects.isNull(o.getItemsDisplayNum())).collect(Collectors.toList());
|
||||||
|
}
|
||||||
|
if(!CollectionUtils.isEmpty(resNullList)){
|
||||||
|
resList.addAll(resNullList);
|
||||||
}
|
}
|
||||||
Collections.sort(resList, Comparator.comparingInt(SarFileCompareItem::getItemsDisplayNum));
|
|
||||||
return resList;
|
return resList;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+5
@@ -1614,6 +1614,11 @@ public class LawsCommonServiceImpl implements ILawsCommonService {
|
|||||||
throw new JeroBootException(MessageUtils.getMessage(ResultCommon.PLEASE_UPLOAD_ZIP));
|
throw new JeroBootException(MessageUtils.getMessage(ResultCommon.PLEASE_UPLOAD_ZIP));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
String contentType = file.getContentType();
|
||||||
|
if (!contentType.contains("zip")) {
|
||||||
|
throw new JeroBootException(MessageUtils.getMessage(ResultCommon.PLEASE_UPLOAD_ZIP));
|
||||||
|
}
|
||||||
|
|
||||||
Path path = Files.createTempDirectory("temp");
|
Path path = Files.createTempDirectory("temp");
|
||||||
File saveDirectory = new File(path.toUri());
|
File saveDirectory = new File(path.toUri());
|
||||||
if (!saveDirectory.isDirectory()) {
|
if (!saveDirectory.isDirectory()) {
|
||||||
|
|||||||
+1
-1
@@ -320,7 +320,7 @@
|
|||||||
<select id="getSplitSelectIds" resultType="java.lang.String">
|
<select id="getSplitSelectIds" resultType="java.lang.String">
|
||||||
select l2.id from laws_domestic_standard l1
|
select l2.id from laws_domestic_standard l1
|
||||||
left join sar_file_split_info l2 on l1.id = l2.standard_id and l2.del_flag = 0
|
left join sar_file_split_info l2 on l1.id = l2.standard_id and l2.del_flag = 0
|
||||||
where l1.del_flag = 0 and l2.id is not null
|
where l1.del_flag = 0 and l2.id is not null and split_status = 2
|
||||||
and
|
and
|
||||||
<foreach collection="countryList" separator="or" item= "item" open="(" close=")">
|
<foreach collection="countryList" separator="or" item= "item" open="(" close=")">
|
||||||
CONCAT(',',l1.applicable_market,',') like CONCAT('%,',#{item},',%')
|
CONCAT(',',l1.applicable_market,',') like CONCAT('%,',#{item},',%')
|
||||||
|
|||||||
+5
-3
@@ -1879,10 +1879,12 @@ public class DocumentSplitServiceImpl implements IDocumentSplitService {
|
|||||||
// 查询市场下的标准
|
// 查询市场下的标准
|
||||||
List<String> countryList = Arrays.asList(parameter.get(COUNTRY).toString().split(","));
|
List<String> countryList = Arrays.asList(parameter.get(COUNTRY).toString().split(","));
|
||||||
List<String> ids = documentSplitMapper.getSplitSelectIds(countryList);
|
List<String> ids = documentSplitMapper.getSplitSelectIds(countryList);
|
||||||
if(!CollectionUtils.isEmpty(ids)){
|
if(CollectionUtils.isEmpty(ids)){
|
||||||
// in查询
|
ids = new ArrayList<>();
|
||||||
selectCondition.append(" and s.info_id" + " in('").append(String.join("','",ids)).append("')");
|
ids.add("-1");
|
||||||
}
|
}
|
||||||
|
// in查询
|
||||||
|
selectCondition.append(" and s.info_id" + " in('").append(String.join("','",ids)).append("')");
|
||||||
parameter.remove(COUNTRY);
|
parameter.remove(COUNTRY);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+10
-6
@@ -76,6 +76,7 @@ import java.net.URLEncoder;
|
|||||||
import java.text.SimpleDateFormat;
|
import java.text.SimpleDateFormat;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
import java.util.concurrent.CompletableFuture;
|
import java.util.concurrent.CompletableFuture;
|
||||||
|
import java.util.concurrent.CopyOnWriteArrayList;
|
||||||
import java.util.concurrent.ForkJoinPool;
|
import java.util.concurrent.ForkJoinPool;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
@@ -1361,7 +1362,7 @@ public class LawsHomeSearchServiceImpl implements ILawsHomeSearchService {
|
|||||||
|
|
||||||
private ModelAndView exportExcelByClause(Map<String, Object> parameterMap) {
|
private ModelAndView exportExcelByClause(Map<String, Object> parameterMap) {
|
||||||
List<LawsHomeAdvancedSearchClauseVO> advancedSearchClause = getAdvancedSearchClauseExport(parameterMap);
|
List<LawsHomeAdvancedSearchClauseVO> advancedSearchClause = getAdvancedSearchClauseExport(parameterMap);
|
||||||
List<Map<String, Object>> list = new ArrayList<>();
|
List<Map<String, Object>> list = new CopyOnWriteArrayList<>();
|
||||||
|
|
||||||
// 标准sheet页
|
// 标准sheet页
|
||||||
List<LawsHomeAdvancedSearchStandardExcelVO> lawsHomeAdvancedSearchStandardExcelVOList =
|
List<LawsHomeAdvancedSearchStandardExcelVO> lawsHomeAdvancedSearchStandardExcelVOList =
|
||||||
@@ -1373,14 +1374,12 @@ public class LawsHomeSearchServiceImpl implements ILawsHomeSearchService {
|
|||||||
standardSheet.put(NormalExcelConstants.PARAMS, exportParams);
|
standardSheet.put(NormalExcelConstants.PARAMS, exportParams);
|
||||||
standardSheet.put(NormalExcelConstants.DATA_LIST, lawsHomeAdvancedSearchStandardExcelVOList);
|
standardSheet.put(NormalExcelConstants.DATA_LIST, lawsHomeAdvancedSearchStandardExcelVOList);
|
||||||
list.add(standardSheet);
|
list.add(standardSheet);
|
||||||
|
|
||||||
for (LawsHomeAdvancedSearchClauseVO lawsHomeAdvancedSearchClauseVO : advancedSearchClause) {
|
for (LawsHomeAdvancedSearchClauseVO lawsHomeAdvancedSearchClauseVO : advancedSearchClause) {
|
||||||
List<Map<String, Object>> clauseList = lawsHomeAdvancedSearchClauseVO.getClauseList();
|
List<Map<String, Object>> clauseList = lawsHomeAdvancedSearchClauseVO.getClauseList();
|
||||||
List<LawsHomeAdvancedSearchClauseExcelVO> lawsHomeAdvancedSearchClauseExcelVOS =
|
List<LawsHomeAdvancedSearchClauseExcelVO> lawsHomeAdvancedSearchClauseExcelVOS =
|
||||||
JSON.parseArray(JSON.toJSONString(clauseList), LawsHomeAdvancedSearchClauseExcelVO.class);
|
JSON.parseArray(JSON.toJSONString(clauseList), LawsHomeAdvancedSearchClauseExcelVO.class);
|
||||||
// 条款详情
|
// 条款详情
|
||||||
for (LawsHomeAdvancedSearchClauseExcelVO lawsHomeAdvancedSearchClauseExcelVO :
|
lawsHomeAdvancedSearchClauseExcelVOS.parallelStream().forEach(lawsHomeAdvancedSearchClauseExcelVO->{
|
||||||
lawsHomeAdvancedSearchClauseExcelVOS) {
|
|
||||||
List<SarFileSplitItemsValEO> sarFileSplitItemsValEOS = sarFileSplitItemsValEOMapper.findList(
|
List<SarFileSplitItemsValEO> sarFileSplitItemsValEOS = sarFileSplitItemsValEOMapper.findList(
|
||||||
new QueryWrapper<SarFileSplitItemsValEO>()
|
new QueryWrapper<SarFileSplitItemsValEO>()
|
||||||
.eq("item_id", lawsHomeAdvancedSearchClauseExcelVO.getId())
|
.eq("item_id", lawsHomeAdvancedSearchClauseExcelVO.getId())
|
||||||
@@ -1393,11 +1392,16 @@ public class LawsHomeSearchServiceImpl implements ILawsHomeSearchService {
|
|||||||
.collect(Collectors.joining("\n\r"));
|
.collect(Collectors.joining("\n\r"));
|
||||||
lawsHomeAdvancedSearchClauseExcelVO.setItemContent(itemContents);
|
lawsHomeAdvancedSearchClauseExcelVO.setItemContent(itemContents);
|
||||||
}
|
}
|
||||||
}
|
});
|
||||||
|
|
||||||
// 条款sheet页
|
// 条款sheet页
|
||||||
Map<String, Object> clauseSheet = new HashMap<>();
|
Map<String, Object> clauseSheet = new HashMap<>();
|
||||||
clauseSheet.put(NormalExcelConstants.CLASS, LawsHomeAdvancedSearchClauseExcelVO.class);
|
clauseSheet.put(NormalExcelConstants.CLASS, LawsHomeAdvancedSearchClauseExcelVO.class);
|
||||||
ExportParams exportParamss = new ExportParams(null, lawsHomeAdvancedSearchClauseVO.getStandardNumber());
|
ExportParams exportParamss = new ExportParams(null,
|
||||||
|
lawsHomeAdvancedSearchClauseVO.getStandardNumber().replace("/"," ")
|
||||||
|
.replace("\\"," ").replace("?"," ")
|
||||||
|
.replace("*"," ").replace("["," ")
|
||||||
|
.replace("]"," ").replace(":"," "));
|
||||||
exportParamss.setType(ExcelType.XSSF);
|
exportParamss.setType(ExcelType.XSSF);
|
||||||
clauseSheet.put(NormalExcelConstants.PARAMS, exportParamss);
|
clauseSheet.put(NormalExcelConstants.PARAMS, exportParamss);
|
||||||
clauseSheet.put(NormalExcelConstants.DATA_LIST, lawsHomeAdvancedSearchClauseExcelVOS);
|
clauseSheet.put(NormalExcelConstants.DATA_LIST, lawsHomeAdvancedSearchClauseExcelVOS);
|
||||||
|
|||||||
+16
@@ -235,4 +235,20 @@ public class MarketStandardDetailController {
|
|||||||
return lawsMarketStandardDetailService.export(marketStandardDetail,request);
|
return lawsMarketStandardDetailService.export(marketStandardDetail,request);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 移动
|
||||||
|
*
|
||||||
|
* @param marketStandardDetail
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@AutoLog(value = "外部标准库-市场法规清单-移动")
|
||||||
|
@ApiOperation(value = "外部标准库-市场法规清单-移动", notes = "外部标准库-市场法规清单-移动")
|
||||||
|
@PostMapping(value = "/move")
|
||||||
|
@ApiOperationSupport(order = 5)
|
||||||
|
// @RequiresPermissions("marketStandard:move")
|
||||||
|
public Result<?> move(@RequestBody LawsMarketStandardDetail marketStandardDetail) {
|
||||||
|
return lawsMarketStandardDetailService.move(marketStandardDetail);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
+13
@@ -247,4 +247,17 @@ public class LawsMarketStandardDetail implements Serializable {
|
|||||||
@ApiModelProperty(value = "清单版本")
|
@ApiModelProperty(value = "清单版本")
|
||||||
@TableField(exist = false)
|
@TableField(exist = false)
|
||||||
private String manifestVersion;
|
private String manifestVersion;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 排序号
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "排序号")
|
||||||
|
private Float orderNo;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 移动标识 上移:up 下移:down
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "移动标识")
|
||||||
|
@TableField(exist = false)
|
||||||
|
private String moveFlag;
|
||||||
}
|
}
|
||||||
|
|||||||
+1
-1
@@ -61,7 +61,7 @@
|
|||||||
${ew.customSqlSegment}
|
${ew.customSqlSegment}
|
||||||
</select>
|
</select>
|
||||||
<select id="getOneByManifestNo" resultType="java.lang.String">
|
<select id="getOneByManifestNo" resultType="java.lang.String">
|
||||||
select max(manifest_no) as manifest_no from laws_market_standard where manifest_no like CONCAT(#{str},'%')
|
select CONCAT(max(REPLACE(manifest_no,#{str},'') * 1), '') as manifest_no from laws_market_standard where manifest_no like CONCAT(#{str},'%')
|
||||||
<if test = "oldStr != null and oldStr != ''">
|
<if test = "oldStr != null and oldStr != ''">
|
||||||
and manifest_no <> #{oldStr}
|
and manifest_no <> #{oldStr}
|
||||||
</if>
|
</if>
|
||||||
|
|||||||
+7
@@ -110,4 +110,11 @@ public interface ILawsMarketStandardDetailService extends IService<LawsMarketSta
|
|||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
ModelAndView export(LawsMarketStandardDetail marketStandardDetail, HttpServletRequest request);
|
ModelAndView export(LawsMarketStandardDetail marketStandardDetail, HttpServletRequest request);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 移动
|
||||||
|
* @param marketStandardDetail
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
Result<?> move(LawsMarketStandardDetail marketStandardDetail);
|
||||||
}
|
}
|
||||||
|
|||||||
+112
-1
@@ -3,6 +3,7 @@ package com.jero.modules.laws.marketStandard.service.impl;
|
|||||||
import com.alibaba.fastjson.JSON;
|
import com.alibaba.fastjson.JSON;
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||||
|
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
import com.jero.common.api.vo.Result;
|
import com.jero.common.api.vo.Result;
|
||||||
@@ -154,6 +155,8 @@ public class LawsMarketStandardDetailServiceImpl extends ServiceImpl<LawsMarketS
|
|||||||
List<String> listIds = Arrays.asList(manifestId.split(","));
|
List<String> listIds = Arrays.asList(manifestId.split(","));
|
||||||
LambdaQueryWrapper<LawsMarketStandardDetail> queryLawsMarketStandardDetail = new LambdaQueryWrapper<>();
|
LambdaQueryWrapper<LawsMarketStandardDetail> queryLawsMarketStandardDetail = new LambdaQueryWrapper<>();
|
||||||
queryLawsMarketStandardDetail.in(LawsMarketStandardDetail::getManifestId,listIds);
|
queryLawsMarketStandardDetail.in(LawsMarketStandardDetail::getManifestId,listIds);
|
||||||
|
queryLawsMarketStandardDetail.orderByAsc(LawsMarketStandardDetail::getOrderNo);
|
||||||
|
queryLawsMarketStandardDetail.orderByDesc(LawsMarketStandardDetail::getCreateTime);
|
||||||
List<LawsMarketStandardDetail> list = list(queryLawsMarketStandardDetail);
|
List<LawsMarketStandardDetail> list = list(queryLawsMarketStandardDetail);
|
||||||
return Result.OK(list);
|
return Result.OK(list);
|
||||||
}
|
}
|
||||||
@@ -207,6 +210,22 @@ public class LawsMarketStandardDetailServiceImpl extends ServiceImpl<LawsMarketS
|
|||||||
if(!StringUtils.isBlank(m.toString())){
|
if(!StringUtils.isBlank(m.toString())){
|
||||||
return Result.error(m.toString());
|
return Result.error(m.toString());
|
||||||
}
|
}
|
||||||
|
if(CollectionUtils.isEmpty(listLawsMarketStandardDetail)){
|
||||||
|
return Result.OK(ResultCommon.OK);
|
||||||
|
}
|
||||||
|
|
||||||
|
QueryWrapper<LawsMarketStandardDetail> queryWrapper = new QueryWrapper<>();
|
||||||
|
queryWrapper.select("max(order_no) as order_no");
|
||||||
|
queryWrapper.eq("manifest_id",manifestId);
|
||||||
|
LawsMarketStandardDetail lawsMarketStandardDetail = getOne(queryWrapper,false);
|
||||||
|
int no = 0;
|
||||||
|
if(!Objects.isNull(lawsMarketStandardDetail) && !Objects.isNull(lawsMarketStandardDetail.getOrderNo())){
|
||||||
|
no = lawsMarketStandardDetail.getOrderNo().intValue();
|
||||||
|
}
|
||||||
|
no = no + 1;
|
||||||
|
for (int i = 0; i < listLawsMarketStandardDetail.size(); i++) {
|
||||||
|
listLawsMarketStandardDetail.get(i).setOrderNo((float)(no + i));
|
||||||
|
}
|
||||||
// 更新状态
|
// 更新状态
|
||||||
marketStandardService.updateStatus(manifestId);
|
marketStandardService.updateStatus(manifestId);
|
||||||
|
|
||||||
@@ -448,12 +467,30 @@ public class LawsMarketStandardDetailServiceImpl extends ServiceImpl<LawsMarketS
|
|||||||
if(CollectionUtils.isEmpty(list)){
|
if(CollectionUtils.isEmpty(list)){
|
||||||
return Result.OK(ResultCommon.OK);
|
return Result.OK(ResultCommon.OK);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
setOrderData(list, manifestId);
|
||||||
// 更细状态
|
// 更细状态
|
||||||
marketStandardService.updateStatus(list.get(0).getManifestId());
|
marketStandardService.updateStatus(list.get(0).getManifestId());
|
||||||
saveBatch(list);
|
saveBatch(list);
|
||||||
return Result.OK(ResultCommon.OK);
|
return Result.OK(ResultCommon.OK);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void setOrderData(List<LawsMarketStandardDetail> list, String manifestId) {
|
||||||
|
QueryWrapper<LawsMarketStandardDetail> queryWrapper = new QueryWrapper<>();
|
||||||
|
queryWrapper.select("max(order_no) as order_no");
|
||||||
|
queryWrapper.eq("manifest_id", manifestId);
|
||||||
|
LawsMarketStandardDetail lawsMarketStandardDetail = getOne(queryWrapper, false);
|
||||||
|
int m = 0;
|
||||||
|
if (!Objects.isNull(lawsMarketStandardDetail) && !Objects.isNull(lawsMarketStandardDetail.getOrderNo())) {
|
||||||
|
m = lawsMarketStandardDetail.getOrderNo().intValue();
|
||||||
|
}
|
||||||
|
|
||||||
|
m = m + 1;
|
||||||
|
for (int i = 0; i < list.size(); i++) {
|
||||||
|
list.get(i).setOrderNo((float) (m + i));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public synchronized Result<?> copy(String oldId,String newId) {
|
public synchronized Result<?> copy(String oldId,String newId) {
|
||||||
LawsMarketStandard lawsMarketStandard = marketStandardService.getById(newId);
|
LawsMarketStandard lawsMarketStandard = marketStandardService.getById(newId);
|
||||||
@@ -495,6 +532,9 @@ public class LawsMarketStandardDetailServiceImpl extends ServiceImpl<LawsMarketS
|
|||||||
if(CollectionUtils.isEmpty(listOld)){
|
if(CollectionUtils.isEmpty(listOld)){
|
||||||
return Result.OK(ResultCommon.OK);
|
return Result.OK(ResultCommon.OK);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
setOrderData(listOld, newId);
|
||||||
|
|
||||||
// 更细状态
|
// 更细状态
|
||||||
marketStandardService.updateStatus(listOld.get(0).getManifestId());
|
marketStandardService.updateStatus(listOld.get(0).getManifestId());
|
||||||
saveBatch(listOld);
|
saveBatch(listOld);
|
||||||
@@ -549,7 +589,17 @@ public class LawsMarketStandardDetailServiceImpl extends ServiceImpl<LawsMarketS
|
|||||||
}
|
}
|
||||||
// 更细状态
|
// 更细状态
|
||||||
marketStandardService.updateStatus(marketStandardDetail.getManifestId());
|
marketStandardService.updateStatus(marketStandardDetail.getManifestId());
|
||||||
|
if(Objects.isNull(marketStandardDetail.getOrderNo())){
|
||||||
|
QueryWrapper<LawsMarketStandardDetail> query = new QueryWrapper<>();
|
||||||
|
query.select("max(order_no) as order_no");
|
||||||
|
query.eq("manifest_id",marketStandardDetail.getManifestId());
|
||||||
|
LawsMarketStandardDetail obj = getOne(query,false);
|
||||||
|
int m = 0;
|
||||||
|
if(!Objects.isNull(obj)){
|
||||||
|
m = obj.getOrderNo().intValue();
|
||||||
|
}
|
||||||
|
marketStandardDetail.setOrderNo((float) m);
|
||||||
|
}
|
||||||
updateById(marketStandardDetail);
|
updateById(marketStandardDetail);
|
||||||
return Result.OK(ResultCommon.OK);
|
return Result.OK(ResultCommon.OK);
|
||||||
}
|
}
|
||||||
@@ -687,6 +737,67 @@ public class LawsMarketStandardDetailServiceImpl extends ServiceImpl<LawsMarketS
|
|||||||
mv.addObject(NormalExcelConstants.DATA_LIST, res);
|
mv.addObject(NormalExcelConstants.DATA_LIST, res);
|
||||||
return mv;
|
return mv;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Result<?> move(LawsMarketStandardDetail marketStandardDetail) {
|
||||||
|
if(StringUtils.isBlank(marketStandardDetail.getManifestId()) ||
|
||||||
|
StringUtils.isBlank(marketStandardDetail.getId()) ||
|
||||||
|
StringUtils.isBlank(marketStandardDetail.getMoveFlag())){
|
||||||
|
return Result.error(ResultCommon.PARAMETER_NOT_RECOGNIZED);
|
||||||
|
}
|
||||||
|
LawsMarketStandard lawsMarketStandard = marketStandardService.getById(marketStandardDetail.getManifestId());
|
||||||
|
if(Objects.isNull(lawsMarketStandard)){
|
||||||
|
return Result.error(ResultCommon.NO_CORRESPONDING_DATA_FOUND);
|
||||||
|
}
|
||||||
|
LawsMarketStandardDetail lawsMarketStandardDetail = getById(marketStandardDetail.getId());
|
||||||
|
if(Objects.isNull(lawsMarketStandardDetail)){
|
||||||
|
return Result.error(ResultCommon.NO_CORRESPONDING_DATA_FOUND);
|
||||||
|
}
|
||||||
|
LambdaQueryWrapper<LawsMarketStandardDetail> queryWrapper = new LambdaQueryWrapper<>();
|
||||||
|
queryWrapper.eq(LawsMarketStandardDetail::getManifestId,marketStandardDetail.getManifestId());
|
||||||
|
queryWrapper.orderByAsc(LawsMarketStandardDetail::getOrderNo);
|
||||||
|
queryWrapper.orderByDesc(LawsMarketStandardDetail::getCreateTime);
|
||||||
|
List<LawsMarketStandardDetail> list = list(queryWrapper);
|
||||||
|
if(CollectionUtils.isEmpty(list)){
|
||||||
|
return Result.error(ResultCommon.NO_CORRESPONDING_DATA_FOUND);
|
||||||
|
}
|
||||||
|
if(Objects.equals(marketStandardDetail.getMoveFlag(),"up")){
|
||||||
|
for (int i = 0; i < list.size(); i++) {
|
||||||
|
LawsMarketStandardDetail now = list.get(i);
|
||||||
|
if(Objects.equals(now.getId(),marketStandardDetail.getId()) && i > 0){
|
||||||
|
LawsMarketStandardDetail last = list.get(i - 1);
|
||||||
|
LambdaUpdateWrapper<LawsMarketStandardDetail> updateNow = new LambdaUpdateWrapper<>();
|
||||||
|
updateNow.eq(LawsMarketStandardDetail::getId,now.getId());
|
||||||
|
updateNow.set(LawsMarketStandardDetail::getOrderNo,last.getOrderNo());
|
||||||
|
update(updateNow);
|
||||||
|
|
||||||
|
LambdaUpdateWrapper<LawsMarketStandardDetail> updateLast = new LambdaUpdateWrapper<>();
|
||||||
|
updateLast.eq(LawsMarketStandardDetail::getId,last.getId());
|
||||||
|
updateLast.set(LawsMarketStandardDetail::getOrderNo,now.getOrderNo());
|
||||||
|
update(updateLast);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}else if(Objects.equals(marketStandardDetail.getMoveFlag(),"down")){
|
||||||
|
for (int i = 0; i < list.size(); i++) {
|
||||||
|
LawsMarketStandardDetail now = list.get(i);
|
||||||
|
if(Objects.equals(now.getId(),marketStandardDetail.getId()) && (i != list.size() -1)){
|
||||||
|
LawsMarketStandardDetail next = list.get(i + 1);
|
||||||
|
LambdaUpdateWrapper<LawsMarketStandardDetail> updateNow = new LambdaUpdateWrapper<>();
|
||||||
|
updateNow.eq(LawsMarketStandardDetail::getId,now.getId());
|
||||||
|
updateNow.set(LawsMarketStandardDetail::getOrderNo,next.getOrderNo());
|
||||||
|
update(updateNow);
|
||||||
|
|
||||||
|
LambdaUpdateWrapper<LawsMarketStandardDetail> updateNext = new LambdaUpdateWrapper<>();
|
||||||
|
updateNext.eq(LawsMarketStandardDetail::getId,next.getId());
|
||||||
|
updateNext.set(LawsMarketStandardDetail::getOrderNo,now.getOrderNo());
|
||||||
|
update(updateNext);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// 更细状态
|
||||||
|
marketStandardService.updateStatus(lawsMarketStandardDetail.getManifestId());
|
||||||
|
return Result.OK(ResultCommon.OK);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
+5
-5
@@ -220,7 +220,7 @@ public class LawsMarketStandardServiceImpl extends ServiceImpl<LawsMarketStandar
|
|||||||
List<DictModel> listDict = map.get(marketState);
|
List<DictModel> listDict = map.get(marketState);
|
||||||
List<String> country = listDict.stream().map(DictModel::getText).collect(Collectors.toList());
|
List<String> country = listDict.stream().map(DictModel::getText).collect(Collectors.toList());
|
||||||
// 国家/地区+自定义+固定字段,自定义字段:预留手填,当前默认不填;固定字段:车型需满足标准法规清单
|
// 国家/地区+自定义+固定字段,自定义字段:预留手填,当前默认不填;固定字段:车型需满足标准法规清单
|
||||||
manifest.setManifestName(String.join("",country) +
|
manifest.setManifestName(String.join("、",country) +
|
||||||
(StringUtils.isEmpty(manifest.getCustomColumnName()) ? "" : manifest.getCustomColumnName())
|
(StringUtils.isEmpty(manifest.getCustomColumnName()) ? "" : manifest.getCustomColumnName())
|
||||||
+ "车型需满足标准法规清单");
|
+ "车型需满足标准法规清单");
|
||||||
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
||||||
@@ -247,9 +247,9 @@ public class LawsMarketStandardServiceImpl extends ServiceImpl<LawsMarketStandar
|
|||||||
if(StringUtils.isBlank(manifestNo)){
|
if(StringUtils.isBlank(manifestNo)){
|
||||||
return s + "01";
|
return s + "01";
|
||||||
}
|
}
|
||||||
String num = manifestNo.substring(manifestNo.length() - 2);
|
int m = Integer.parseInt(manifestNo) + 1;
|
||||||
int m = Integer.parseInt(num);
|
String n = s + (m >= 10 ? m : "0" + m);
|
||||||
return s + (m >= 10 ? (m + 1) : "0" + (m + 1));
|
return n;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -288,7 +288,7 @@ public class LawsMarketStandardServiceImpl extends ServiceImpl<LawsMarketStandar
|
|||||||
List<DictModel> listDict = map.get(marketState);
|
List<DictModel> listDict = map.get(marketState);
|
||||||
List<String> country = listDict.stream().map(DictModel::getText).collect(Collectors.toList());
|
List<String> country = listDict.stream().map(DictModel::getText).collect(Collectors.toList());
|
||||||
// 国家/地区+自定义+固定字段,自定义字段:预留手填,当前默认不填;固定字段:车型需满足标准法规清单
|
// 国家/地区+自定义+固定字段,自定义字段:预留手填,当前默认不填;固定字段:车型需满足标准法规清单
|
||||||
manifest.setManifestName(String.join("",country) +
|
manifest.setManifestName(String.join("、",country) +
|
||||||
(StringUtils.isEmpty(manifest.getCustomColumnName()) ? "" : manifest.getCustomColumnName())
|
(StringUtils.isEmpty(manifest.getCustomColumnName()) ? "" : manifest.getCustomColumnName())
|
||||||
+ "车型需满足标准法规清单");
|
+ "车型需满足标准法规清单");
|
||||||
updateById(manifest);
|
updateById(manifest);
|
||||||
|
|||||||
@@ -1,6 +1,9 @@
|
|||||||
package com.jero.modules.split.common;
|
package com.jero.modules.split.common;
|
||||||
|
|
||||||
|
import com.jero.common.api.vo.ResultCommon;
|
||||||
import com.jero.common.constant.enums.LanguageEnum;
|
import com.jero.common.constant.enums.LanguageEnum;
|
||||||
|
import com.jero.common.exception.JeroBootException;
|
||||||
|
import com.jero.common.util.MessageUtils;
|
||||||
import com.xkcoding.http.util.StringUtil;
|
import com.xkcoding.http.util.StringUtil;
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
import org.apache.tools.zip.ZipEntry;
|
import org.apache.tools.zip.ZipEntry;
|
||||||
@@ -53,6 +56,9 @@ public class FileUnZip {
|
|||||||
// orgMkdirs = outPath.substring(0, outPath.lastIndexOf('/'));
|
// orgMkdirs = outPath.substring(0, outPath.lastIndexOf('/'));
|
||||||
file.mkdirs();
|
file.mkdirs();
|
||||||
}else{
|
}else{
|
||||||
|
if (!isFileSafe(zipEntryName)) {
|
||||||
|
throw new JeroBootException(MessageUtils.getMessage(ResultCommon.ERROR));
|
||||||
|
}
|
||||||
// orgMkdirs = outPath.substring(0, outPath.lastIndexOf('/'));
|
// orgMkdirs = outPath.substring(0, outPath.lastIndexOf('/'));
|
||||||
}
|
}
|
||||||
//判断文件全路径是否为文件夹,如果是上面已经上传,不需要解压
|
//判断文件全路径是否为文件夹,如果是上面已经上传,不需要解压
|
||||||
@@ -77,6 +83,18 @@ public class FileUnZip {
|
|||||||
return orgMkdirs;
|
return orgMkdirs;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private static boolean isFileSafe(String fileName) {
|
||||||
|
// 添加文件类型检查逻辑
|
||||||
|
// 这里仅作为一个示例,实际应用中需要根据需要进行扩展
|
||||||
|
String[] unsafeExtensions = {".exe", ".sh", ".bat", ".js"};
|
||||||
|
for (String ext : unsafeExtensions) {
|
||||||
|
if (fileName.endsWith(ext)) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 解压zip文件
|
* 解压zip文件
|
||||||
* 解决解压文件下有多个文件夹时,读不到orgMkdirs问题
|
* 解决解压文件下有多个文件夹时,读不到orgMkdirs问题
|
||||||
|
|||||||
@@ -45,7 +45,7 @@ spring:
|
|||||||
job-store-type: jdbc
|
job-store-type: jdbc
|
||||||
initialize-schema: embedded
|
initialize-schema: embedded
|
||||||
#定时任务启动开关,true-开 false-关
|
#定时任务启动开关,true-开 false-关
|
||||||
auto-startup: true
|
auto-startup: false
|
||||||
#启动时更新己存在的Job
|
#启动时更新己存在的Job
|
||||||
overwrite-existing-jobs: true
|
overwrite-existing-jobs: true
|
||||||
properties:
|
properties:
|
||||||
@@ -147,7 +147,7 @@ spring:
|
|||||||
connectionProperties: druid.stat.mergeSql\=true;druid.stat.slowSqlMillis\=5000;druid.stat.logSlowSql\=true
|
connectionProperties: druid.stat.mergeSql\=true;druid.stat.slowSqlMillis\=5000;druid.stat.logSlowSql\=true
|
||||||
datasource:
|
datasource:
|
||||||
master:
|
master:
|
||||||
url: jdbc:p6spy:mysql://10.10.10.44:3306/laws_chery_dev_init?characterEncoding=UTF-8&useUnicode=true&useSSL=false&tinyInt1isBit=false&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai&nullCatalogMeansCurrent=true
|
url: jdbc:p6spy:mysql://10.10.10.44:3306/laws_chery_dev?characterEncoding=UTF-8&useUnicode=true&useSSL=false&tinyInt1isBit=false&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai&nullCatalogMeansCurrent=true
|
||||||
username: root
|
username: root
|
||||||
password: hzwlsoft.com
|
password: hzwlsoft.com
|
||||||
driver-class-name: com.p6spy.engine.spy.P6SpyDriver
|
driver-class-name: com.p6spy.engine.spy.P6SpyDriver
|
||||||
|
|||||||
@@ -19,7 +19,7 @@
|
|||||||
<spring-cloud.version>Hoxton.SR8</spring-cloud.version>
|
<spring-cloud.version>Hoxton.SR8</spring-cloud.version>
|
||||||
<spring-cloud-alibaba.version>2.2.3.RELEASE</spring-cloud-alibaba.version>
|
<spring-cloud-alibaba.version>2.2.3.RELEASE</spring-cloud-alibaba.version>
|
||||||
<xxl-job-core.version>2.2.0</xxl-job-core.version>
|
<xxl-job-core.version>2.2.0</xxl-job-core.version>
|
||||||
<fastjson.version>1.2.75</fastjson.version>
|
<fastjson.version>1.2.83</fastjson.version>
|
||||||
<knife4j-spring-boot-starter.version>3.0.3</knife4j-spring-boot-starter.version>
|
<knife4j-spring-boot-starter.version>3.0.3</knife4j-spring-boot-starter.version>
|
||||||
<knife4j-spring-ui.version>2.0.9</knife4j-spring-ui.version>
|
<knife4j-spring-ui.version>2.0.9</knife4j-spring-ui.version>
|
||||||
<postgresql.version>42.2.6</postgresql.version>
|
<postgresql.version>42.2.6</postgresql.version>
|
||||||
@@ -36,7 +36,7 @@
|
|||||||
<commons.version>2.6</commons.version>
|
<commons.version>2.6</commons.version>
|
||||||
<aliyun-java-sdk-dysmsapi.version>2.1.0</aliyun-java-sdk-dysmsapi.version>
|
<aliyun-java-sdk-dysmsapi.version>2.1.0</aliyun-java-sdk-dysmsapi.version>
|
||||||
<aliyun.oss.version>3.11.2</aliyun.oss.version>
|
<aliyun.oss.version>3.11.2</aliyun.oss.version>
|
||||||
<shiro.version>1.8.0</shiro.version>
|
<shiro.version>1.10.0</shiro.version>
|
||||||
<java-jwt.version>3.11.0</java-jwt.version>
|
<java-jwt.version>3.11.0</java-jwt.version>
|
||||||
<shiro-redis.version>3.1.0</shiro-redis.version>
|
<shiro-redis.version>3.1.0</shiro-redis.version>
|
||||||
<autopoi-web.version>1.3.6</autopoi-web.version>
|
<autopoi-web.version>1.3.6</autopoi-web.version>
|
||||||
@@ -44,7 +44,7 @@
|
|||||||
<justauth-spring-boot-starter.version>1.3.4</justauth-spring-boot-starter.version>
|
<justauth-spring-boot-starter.version>1.3.4</justauth-spring-boot-starter.version>
|
||||||
<dom4j.version>1.6.1</dom4j.version>
|
<dom4j.version>1.6.1</dom4j.version>
|
||||||
<qiniu-java-sdk.version>7.4.0</qiniu-java-sdk.version>
|
<qiniu-java-sdk.version>7.4.0</qiniu-java-sdk.version>
|
||||||
<log4j2.version>2.15.0</log4j2.version>
|
<log4j2.version>2.17.1</log4j2.version>
|
||||||
<activiti.version>6.0.0</activiti.version>
|
<activiti.version>6.0.0</activiti.version>
|
||||||
<tomcat.version>9.0.82</tomcat.version>
|
<tomcat.version>9.0.82</tomcat.version>
|
||||||
</properties>
|
</properties>
|
||||||
@@ -215,17 +215,17 @@
|
|||||||
<version>${commons-beanutils.version}</version>
|
<version>${commons-beanutils.version}</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
<dependency>
|
<!-- <dependency>-->
|
||||||
<groupId>commons-fileupload</groupId>
|
<!-- <groupId>commons-fileupload</groupId>-->
|
||||||
<artifactId>commons-fileupload</artifactId>
|
<!-- <artifactId>commons-fileupload</artifactId>-->
|
||||||
<version>1.4</version>
|
<!-- <version>1.4</version>-->
|
||||||
<exclusions>
|
<!-- <exclusions>-->
|
||||||
<exclusion>
|
<!-- <exclusion>-->
|
||||||
<artifactId>commons-io</artifactId>
|
<!-- <artifactId>commons-io</artifactId>-->
|
||||||
<groupId>commons-io</groupId>
|
<!-- <groupId>commons-io</groupId>-->
|
||||||
</exclusion>
|
<!-- </exclusion>-->
|
||||||
</exclusions>
|
<!-- </exclusions>-->
|
||||||
</dependency>
|
<!-- </dependency>-->
|
||||||
|
|
||||||
<!-- justauth第三方登录 -->
|
<!-- justauth第三方登录 -->
|
||||||
<dependency>
|
<dependency>
|
||||||
|
|||||||
Reference in New Issue
Block a user