Commit c569dc0a authored by liqin's avatar liqin 💬

bug fixed

parent f7ef3241
...@@ -5,9 +5,10 @@ package cn.wisenergy.chnmuseum.party.common.enums; ...@@ -5,9 +5,10 @@ package cn.wisenergy.chnmuseum.party.common.enums;
*/ */
public enum AuditStatusEnum { public enum AuditStatusEnum {
TBC(1, "待审核"), TBC(1, "待初审"),
REFUSED(2, "已驳回"), REFUSED(2, "已驳回"),
APPROVED_FIRST(3, "初审通过"); TBCA(3, "待复审"),
APPROVED_FINAL(4, "通过");
// 错误编码 // 错误编码
private Integer code; private Integer code;
......
package cn.wisenergy.chnmuseum.party.common.util;
import com.alibaba.fastjson.serializer.JSONSerializer;
import com.alibaba.fastjson.serializer.ObjectSerializer;
import java.lang.reflect.Type;
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
public class MyLocalDateSerializer implements ObjectSerializer {
private final String pattern;
public MyLocalDateSerializer(String pattern) {
this.pattern = pattern;
}
@Override
public void write(JSONSerializer jsonSerializer, Object object, Object fieldName, Type fieldType, int i) {
if (object == null) {
jsonSerializer.out.writeNull();
return;
}
if (object instanceof LocalDate) {
LocalDate localDate = (LocalDate) object;
String format = localDate.format(DateTimeFormatter.ofPattern(pattern));
jsonSerializer.write(format);
}
}
}
package cn.wisenergy.chnmuseum.party.common.util;
import com.alibaba.fastjson.serializer.JSONSerializer;
import com.alibaba.fastjson.serializer.ObjectSerializer;
import java.lang.reflect.Type;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
public class MyLocalDateTimeSerializer implements ObjectSerializer {
private final String pattern;
public MyLocalDateTimeSerializer(String pattern) {
this.pattern = pattern;
}
@Override
public void write(JSONSerializer jsonSerializer, Object object, Object fieldName, Type fieldType, int i) {
if (object == null) {
jsonSerializer.out.writeNull();
return;
}
if (object instanceof LocalDateTime) {
LocalDateTime localDateTime = (LocalDateTime) object;
String format = localDateTime.format(DateTimeFormatter.ofPattern(pattern));
jsonSerializer.write(format);
}
}
}
...@@ -39,8 +39,14 @@ public abstract class BasePageOrderParam extends BasePageParam { ...@@ -39,8 +39,14 @@ public abstract class BasePageOrderParam extends BasePageParam {
@ApiModelProperty("创建人") @ApiModelProperty("创建人")
private String creatorName; private String creatorName;
@ApiModelProperty("创建人") @ApiModelProperty("视频分类ID")
private String copyrightOwnerId; private String assetTypeId;
@ApiModelProperty("视频版权方ID")
private String assetCopyrightOwnerId;
@ApiModelProperty("展板版权方ID")
private String boardCopyrightOwnerId;
public void defaultPageSort(OrderItem orderItem) { public void defaultPageSort(OrderItem orderItem) {
this.defaultPageSorts(Collections.singletonList(orderItem)); this.defaultPageSorts(Collections.singletonList(orderItem));
......
package cn.wisenergy.chnmuseum.party.conf; //package cn.wisenergy.chnmuseum.party.conf;
//
import com.alibaba.fastjson.JSON; //import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.serializer.SerializerFeature; //import com.alibaba.fastjson.serializer.SerializerFeature;
import com.alibaba.fastjson.support.config.FastJsonConfig; //import com.alibaba.fastjson.support.config.FastJsonConfig;
import com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter; //import com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter;
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass; //import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean; //import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; //import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
import org.springframework.context.annotation.Bean; //import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration; //import org.springframework.context.annotation.Configuration;
import org.springframework.http.MediaType; //import org.springframework.http.MediaType;
//
import java.util.ArrayList; //import java.util.ArrayList;
import java.util.List; //import java.util.List;
//
@Configuration //@Configuration
@ConditionalOnClass({JSON.class}) //@ConditionalOnClass({JSON.class})
public class FastJsonHttpMessageConvertersConfig { //public class FastJsonHttpMessageConvertersConfig {
//
@Configuration // @Configuration
@ConditionalOnClass({FastJsonHttpMessageConverter.class}) // @ConditionalOnClass({FastJsonHttpMessageConverter.class})
@ConditionalOnProperty(name = { // @ConditionalOnProperty(name = {
"spring.mvc.converters.preferred-json-mapper"}, havingValue = "fastjson", matchIfMissing = true) // "spring.mvc.converters.preferred-json-mapper"}, havingValue = "fastjson", matchIfMissing = true)
protected static class FastJson2HttpMessageConverterConfiguration { // protected static class FastJson2HttpMessageConverterConfiguration {
protected FastJson2HttpMessageConverterConfiguration() { // protected FastJson2HttpMessageConverterConfiguration() {
} // }
//
@Bean // @Bean
@ConditionalOnMissingBean({FastJsonHttpMessageConverter.class}) // @ConditionalOnMissingBean({FastJsonHttpMessageConverter.class})
public FastJsonHttpMessageConverter fastJsonHttpMessageConverter() { // public FastJsonHttpMessageConverter fastJsonHttpMessageConverter() {
FastJsonHttpMessageConverter converter = new FastJsonHttpMessageConverter(); // FastJsonHttpMessageConverter converter = new FastJsonHttpMessageConverter();
//
FastJsonConfig fastJsonConfig = new FastJsonConfig(); // FastJsonConfig fastJsonConfig = new FastJsonConfig();
fastJsonConfig.setSerializerFeatures( // fastJsonConfig.setSerializerFeatures(
SerializerFeature.PrettyFormat, // SerializerFeature.PrettyFormat,
SerializerFeature.WriteMapNullValue, // SerializerFeature.WriteMapNullValue,
SerializerFeature.DisableCircularReferenceDetect // SerializerFeature.DisableCircularReferenceDetect
); // );
// 全局时间配置 // // 全局时间配置
fastJsonConfig.setDateFormat("yyyy-MM-dd"); // fastJsonConfig.setDateFormat("yyyy-MM-dd");
// 处理中文乱码问题 // // 处理中文乱码问题
List<MediaType> mediaTypes = new ArrayList<>(); // List<MediaType> mediaTypes = new ArrayList<>();
mediaTypes.add(MediaType.APPLICATION_JSON); // mediaTypes.add(MediaType.APPLICATION_JSON);
mediaTypes.add(MediaType.TEXT_PLAIN); // mediaTypes.add(MediaType.TEXT_PLAIN);
//mediaTypes.add(new MediaType("text", "plain", Charset.forName("UTF-8"))); // converter.setSupportedMediaTypes(mediaTypes);
converter.setSupportedMediaTypes(mediaTypes); // converter.setFastJsonConfig(fastJsonConfig);
converter.setFastJsonConfig(fastJsonConfig); // return converter;
return converter; // }
} // }
} //
//}
}
package cn.wisenergy.chnmuseum.party.conf; package cn.wisenergy.chnmuseum.party.conf;
import cn.wisenergy.chnmuseum.party.common.util.MyLocalDateSerializer;
import cn.wisenergy.chnmuseum.party.common.util.MyLocalDateTimeSerializer;
import com.alibaba.fastjson.PropertyNamingStrategy;
import com.alibaba.fastjson.serializer.SerializeConfig;
import com.alibaba.fastjson.serializer.SerializerFeature;
import com.alibaba.fastjson.serializer.ToStringSerializer;
import com.alibaba.fastjson.support.config.FastJsonConfig;
import com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter;
import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Configuration;
import org.springframework.http.MediaType;
import org.springframework.http.converter.ByteArrayHttpMessageConverter;
import org.springframework.http.converter.HttpMessageConverter;
import org.springframework.http.converter.StringHttpMessageConverter;
import org.springframework.http.converter.json.MappingJackson2HttpMessageConverter;
import org.springframework.web.servlet.config.annotation.CorsRegistry; import org.springframework.web.servlet.config.annotation.CorsRegistry;
import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry; import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurationSupport; import org.springframework.web.servlet.config.annotation.WebMvcConfigurationSupport;
import java.math.BigInteger;
import java.nio.charset.StandardCharsets;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.List;
/** /**
* MVC配置 * MVC配置
*/ */
...@@ -28,60 +48,62 @@ public class MvcConfiguration extends WebMvcConfigurationSupport { ...@@ -28,60 +48,62 @@ public class MvcConfiguration extends WebMvcConfigurationSupport {
/** /**
* 配置消息转换器:Ali开源的fastJson * 配置消息转换器
* *
* @param converters * @param converters
*/ */
// @Override @Override
// public void configureMessageConverters(List<HttpMessageConverter<?>> converters) { public void configureMessageConverters(List<HttpMessageConverter<?>> converters) {
// // 先移除jackson转换器,springBoot1.x可以不排除 //0.先移除jackson转换器,springBoot1.x可以不排除
// for (int i = converters.size() - 1; i >= 0; i--) { converters.removeIf(converter -> converter instanceof MappingJackson2HttpMessageConverter);
// if (converters.get(i) instanceof MappingJackson2HttpMessageConverter) {
// converters.remove(i); //1.需要定义一个convert转换消息的对象;
// } FastJsonHttpMessageConverter fastJsonHttpMessageConverter = new FastJsonHttpMessageConverter();
// } StringHttpMessageConverter stringHttpMessageConverter = new StringHttpMessageConverter();
// //1.需要定义一个convert转换消息的对象; ByteArrayHttpMessageConverter byteArrayHttpMessageConverter = new ByteArrayHttpMessageConverter();
// FastJsonHttpMessageConverter fastJsonHttpMessageConverter = new FastJsonHttpMessageConverter();
// StringHttpMessageConverter stringHttpMessageConverter = new StringHttpMessageConverter(); //2.添加fastJson的配置信息,比如:是否要格式化返回的json数据;
// ByteArrayHttpMessageConverter byteArrayHttpMessageConverter = new ByteArrayHttpMessageConverter(); FastJsonConfig fastJsonConfig = new FastJsonConfig();
// fastJsonConfig.setSerializerFeatures(
// //2.添加fastJson的配置信息,比如:是否要格式化返回的json数据; SerializerFeature.PrettyFormat, // 结果格式化
// FastJsonConfig fastJsonConfig = new FastJsonConfig(); // SerializerFeature.WriteMapNullValue, // 输出空值字段
// fastJsonConfig.setSerializerFeatures( SerializerFeature.WriteNullStringAsEmpty, // String如果为null,输出为"",而不是null
// SerializerFeature.PrettyFormat, SerializerFeature.DisableCircularReferenceDetect, // 消除对同一对象循环引用的问题
// SerializerFeature.WriteMapNullValue, SerializerFeature.WriteNullListAsEmpty, // List集合如果为null,输出为[],而不是null
// SerializerFeature.WriteNullStringAsEmpty, // SerializerFeature.BrowserCompatible, // 将中文都会序列化为[\u0000]格式,字节数虽然会多一些,但是能兼容IE 6
// SerializerFeature.DisableCircularReferenceDetect, SerializerFeature.WriteDateUseDateFormat); // 全局修改日期格式
// SerializerFeature.WriteNullListAsEmpty,
// SerializerFeature.BrowserCompatible, // 设置编码
// SerializerFeature.WriteDateUseDateFormat); fastJsonConfig.setCharset(StandardCharsets.UTF_8);
// // 设置编码 fastJsonConfig.setDateFormat("yyyy-MM-dd");
// fastJsonConfig.setCharset(Charset.forName("UTF-8"));
// fastJsonConfig.setDateFormat("yyyy-MM-dd HH:mm:ss"); // 设置数字转化问题
// SerializeConfig serializeConfig = SerializeConfig.globalInstance;
// // 设置数字转化问题 serializeConfig.put(BigInteger.class, ToStringSerializer.instance);
// SerializeConfig serializeConfig = SerializeConfig.globalInstance; serializeConfig.put(Long.class, ToStringSerializer.instance);
// serializeConfig.put(BigInteger.class, ToStringSerializer.instance); serializeConfig.put(Long.TYPE, ToStringSerializer.instance);
// serializeConfig.put(Long.class, ToStringSerializer.instance); serializeConfig.setPropertyNamingStrategy(PropertyNamingStrategy.CamelCase);
// serializeConfig.put(Long.TYPE, ToStringSerializer.instance); serializeConfig.put(LocalDateTime.class, new MyLocalDateTimeSerializer("yyyy-MM-dd"));
// serializeConfig.setPropertyNamingStrategy( PropertyNamingStrategy.CamelCase); serializeConfig.put(LocalDate.class, new MyLocalDateSerializer("yyyy-MM-dd"));
// fastJsonConfig.setSerializeConfig(serializeConfig); fastJsonConfig.setSerializeConfig(serializeConfig);
//
// //3处理中文乱码问题 //3.处理中文乱码问题
// List<MediaType> fastMediaTypes = new ArrayList<>(); List<MediaType> fastMediaTypes = new ArrayList<>();
// fastMediaTypes.add(MediaType.APPLICATION_JSON); fastMediaTypes.add(MediaType.APPLICATION_JSON);
// fastMediaTypes.add(MediaType.TEXT_HTML); fastMediaTypes.add(MediaType.TEXT_PLAIN);
// fastMediaTypes.add(MediaType.MULTIPART_FORM_DATA); fastMediaTypes.add(MediaType.APPLICATION_FORM_URLENCODED);
// fastMediaTypes.add(MediaType.TEXT_HTML);
// //4.在convert中添加配置信息. fastMediaTypes.add(MediaType.MULTIPART_FORM_DATA);
// fastJsonHttpMessageConverter.setSupportedMediaTypes(fastMediaTypes);
// fastJsonHttpMessageConverter.setFastJsonConfig(fastJsonConfig); //4.在convert中添加配置信息
// fastJsonHttpMessageConverter.setSupportedMediaTypes(fastMediaTypes);
// //5.将convert添加到converters当中. fastJsonHttpMessageConverter.setFastJsonConfig(fastJsonConfig);
// converters.add(fastJsonHttpMessageConverter);
// converters.add(stringHttpMessageConverter); //5.将convert添加到converters当中
// converters.add(byteArrayHttpMessageConverter); converters.add(0, fastJsonHttpMessageConverter);
// } converters.add(0, stringHttpMessageConverter);
converters.add(0, byteArrayHttpMessageConverter);
}
/** /**
* 启用@EnableWebMvc后,properties文件中的静态路径失效,必须覆盖后重新制定 * 启用@EnableWebMvc后,properties文件中的静态路径失效,必须覆盖后重新制定
......
...@@ -78,95 +78,8 @@ public class Asset implements Serializable { ...@@ -78,95 +78,8 @@ public class Asset implements Serializable {
@TableField(exist = false) @TableField(exist = false)
private String assetTypeName; private String assetTypeName;
@ApiModelProperty("版权方") @ApiModelProperty("视频版权方名称")
@TableField(exist = false) @TableField(exist = false)
private String assetCopyrightOwnerName; private String assetCopyrightOwnerName;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getAssetCopyrightOwnerId() {
return assetCopyrightOwnerId;
}
public void setAssetCopyrightOwnerId(String assetCopyrightOwnerId) {
this.assetCopyrightOwnerId = assetCopyrightOwnerId;
}
public String getAssetTypeId() {
return assetTypeId;
}
public void setAssetTypeId(String assetTypeId) {
this.assetTypeId = assetTypeId;
}
public String getThumbnail() {
return thumbnail;
}
public void setThumbnail(String thumbnail) {
this.thumbnail = thumbnail;
}
public String getVideoUrl() {
return videoUrl;
}
public void setVideoUrl(String videoUrl) {
this.videoUrl = videoUrl;
}
public String getAuditStatus() {
return auditStatus;
}
public void setAuditStatus(String auditStatus) {
this.auditStatus = auditStatus;
}
public LocalDateTime getCreateTime() {
return createTime;
}
public void setCreateTime(LocalDateTime createTime) {
this.createTime = createTime;
}
public LocalDateTime getUpdateTime() {
return updateTime;
}
public void setUpdateTime(LocalDateTime updateTime) {
this.updateTime = updateTime;
}
public String getAssetTypeName() {
return assetTypeName;
}
public void setAssetTypeName(String assetTypeName) {
this.assetTypeName = assetTypeName;
}
public String getAssetCopyrightOwnerName() {
return assetCopyrightOwnerName;
}
public void setAssetCopyrightOwnerName(String assetCopyrightOwnerName) {
this.assetCopyrightOwnerName = assetCopyrightOwnerName;
}
} }
...@@ -157,7 +157,7 @@ public class AssetController extends BaseController { ...@@ -157,7 +157,7 @@ public class AssetController extends BaseController {
@ApiImplicitParams(value = { @ApiImplicitParams(value = {
@ApiImplicitParam(name = "auditStatus", value = "审核状态", paramType = "query", dataType = "String") @ApiImplicitParam(name = "auditStatus", value = "审核状态", paramType = "query", dataType = "String")
}) })
public Map<String, Object> getAssetList(@RequestParam(value = "auditStatus", defaultValue = "APPROVED_FIRST", required = false) AuditStatusEnum auditStatus) { public Map<String, Object> getAssetList(@RequestParam(value = "auditStatus", defaultValue = "APPROVED_FINAL", required = false) AuditStatusEnum auditStatus) {
List<Asset> assetList = assetService.list(Wrappers.<Asset>lambdaQuery().eq(Asset::getAuditStatus, auditStatus.name())); List<Asset> assetList = assetService.list(Wrappers.<Asset>lambdaQuery().eq(Asset::getAuditStatus, auditStatus.name()));
return getResult(assetList); return getResult(assetList);
} }
...@@ -166,7 +166,8 @@ public class AssetController extends BaseController { ...@@ -166,7 +166,8 @@ public class AssetController extends BaseController {
@ApiImplicitParam(name = "_index", value = "分页起始偏移量", paramType = "query", dataType = "Integer"), @ApiImplicitParam(name = "_index", value = "分页起始偏移量", paramType = "query", dataType = "Integer"),
@ApiImplicitParam(name = "_size", value = "返回条数", paramType = "query", dataType = "Integer"), @ApiImplicitParam(name = "_size", value = "返回条数", paramType = "query", dataType = "Integer"),
@ApiImplicitParam(name = "nameOrCode", value = "名称或编码", paramType = "query", dataType = "String"), @ApiImplicitParam(name = "nameOrCode", value = "名称或编码", paramType = "query", dataType = "String"),
@ApiImplicitParam(name = "copyrightOwner", value = "版权方", paramType = "query", dataType = "String"), @ApiImplicitParam(name = "assetTypeId", value = "视频分类ID", paramType = "query", dataType = "String"),
@ApiImplicitParam(name = "assetCopyrightOwnerId", value = "视频版权方ID", paramType = "query", dataType = "String"),
@ApiImplicitParam(name = "startDate", value = "创建时间-开始", paramType = "query", dataType = "String"), @ApiImplicitParam(name = "startDate", value = "创建时间-开始", paramType = "query", dataType = "String"),
@ApiImplicitParam(name = "endDate", value = "创建时间-结束", paramType = "query", dataType = "String") @ApiImplicitParam(name = "endDate", value = "创建时间-结束", paramType = "query", dataType = "String")
}) })
...@@ -180,8 +181,12 @@ public class AssetController extends BaseController { ...@@ -180,8 +181,12 @@ public class AssetController extends BaseController {
queryWrapper.like(Asset::getName, genericPageParam.getNameOrCode()); queryWrapper.like(Asset::getName, genericPageParam.getNameOrCode());
} }
// 对版权方模糊查询 // 对版权方模糊查询
if (StringUtils.isNotBlank(genericPageParam.getCopyrightOwnerId())) { if (StringUtils.isNotBlank(genericPageParam.getAssetCopyrightOwnerId())) {
queryWrapper.like(Asset::getAssetCopyrightOwnerId, genericPageParam.getCopyrightOwnerId()); queryWrapper.like(Asset::getAssetCopyrightOwnerId, genericPageParam.getAssetCopyrightOwnerId());
}
// 对版权方模糊查询
if (StringUtils.isNotBlank(genericPageParam.getAssetTypeId())) {
queryWrapper.like(Asset::getAssetTypeId, genericPageParam.getAssetTypeId());
} }
// 根据创建时间区间检索 // 根据创建时间区间检索
if (genericPageParam.getStartDate() != null && genericPageParam.getEndDate() != null) { if (genericPageParam.getStartDate() != null && genericPageParam.getEndDate() != null) {
...@@ -195,6 +200,8 @@ public class AssetController extends BaseController { ...@@ -195,6 +200,8 @@ public class AssetController extends BaseController {
Asset::getId, Asset::getId,
Asset::getName, Asset::getName,
Asset::getAuditStatus, Asset::getAuditStatus,
Asset::getAssetTypeId,
Asset::getAssetCopyrightOwnerId,
Asset::getCreateTime, Asset::getCreateTime,
Asset::getUpdateTime); Asset::getUpdateTime);
Page<Asset> page = this.assetService.page(getPage(), queryWrapper); Page<Asset> page = this.assetService.page(getPage(), queryWrapper);
......
...@@ -47,7 +47,7 @@ spring.servlet.multipart.enabled=true ...@@ -47,7 +47,7 @@ spring.servlet.multipart.enabled=true
spring.servlet.multipart.max-request-size=4096MB spring.servlet.multipart.max-request-size=4096MB
spring.servlet.multipart.max-file-size=2048MB spring.servlet.multipart.max-file-size=2048MB
spring.web.resources.add-mappings=true spring.web.resources.add-mappings=true
spring.mvc.converters.preferred-json-mapper=fastjson #spring.mvc.converters.preferred-json-mapper=fastjson
######################################################## ########################################################
###thymeleaf ###thymeleaf
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment