提交 8b2a4c38 authored 作者: liupengfei's avatar liupengfei

--no commit message

上级 8738c375
......@@ -22,12 +22,14 @@ import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.multipart.MultipartFile;
import com.zrqx.core.enums.AllResourceTypeEnum;
import com.zrqx.core.enums.resource.LibraryStatusEnum;
import com.zrqx.core.util.bean.BeanUtils;
import com.zrqx.core.util.page.PageInfo;
import com.zrqx.core.util.page.PageParam;
import com.zrqx.core.util.response.CallBack;
import com.zrqx.live.bg.service.LiveDiyTypeService;
import com.zrqx.live.bg.service.LiveService;
import com.zrqx.live.commons.enums.StatusEnum;
import com.zrqx.live.commons.form.LiveForm;
import com.zrqx.live.commons.form.LiveStatisticalConcurrentForm;
import com.zrqx.live.commons.form.LiveStatisticalForm;
......@@ -36,6 +38,7 @@ import com.zrqx.live.commons.form.MicroRoarStartForm;
import com.zrqx.live.commons.form.SaveOrUpdateLiveForm;
import com.zrqx.live.commons.form.TotalInfoForm;
import com.zrqx.live.commons.model.Live;
import com.zrqx.live.commons.model.LiveDiyType;
import com.zrqx.live.commons.model.LiveMarqueeForm;
import com.zrqx.live.commons.model.LiveWatermarkForm;
import com.zrqx.live.commons.util.AddressUtils;
......@@ -58,16 +61,33 @@ public class LiveController {
private final static Logger log = LoggerFactory.getLogger(LiveController.class);
@Autowired
private LiveService liveService;
@Autowired
private LiveDiyTypeService liveDiyTypeService;
@ApiOperation(value="创建直播")
@PostMapping(value="/save")
public CallBack<String> save(SaveOrUpdateLiveForm entity,@RequestParam("file") MultipartFile file,@RequestParam("imge") MultipartFile image,HttpServletRequest request)throws IOException, ParseException{
Live live = new Live();
if(StringUtils.isNotBlank(entity.getAuthorNameAndId())){
String[] authorNameAndId = entity.getAuthorNameAndId().split(",");
entity.setAuthor(authorNameAndId[0]);
if(authorNameAndId.length > 1){
entity.setAuthorId(authorNameAndId[1]);
}
}
BeanUtils.copyProperties(entity, live);
live.setLiveTime(Timestamp.valueOf(entity.getLiveTime()).getTime()/1000);
live.setCreateTime(new Date());
live.setStatus(StatusEnum.STATUS_0.getCode());//默认上架
return CallBack.success(liveService.save(live,file,image,request));
live.setUploadTime(new Date());
live.setStatus(LibraryStatusEnum.STATUS_2.getCode());//默认下架
live.setResourceType(AllResourceTypeEnum.LIVE.getCode());
String msg = liveService.save(live,file,image,request);
//添加当前对象与自定义分类的关系
if(entity.getDiyType() != null && entity.getDiyType().size() > 0){
List<LiveDiyType> list = entity.getDiyType();
list.forEach(li -> li.setLiveId(entity.getId()));
liveDiyTypeService.insertList(list);
}
return CallBack.success(msg);
}
......@@ -82,10 +102,33 @@ public class LiveController {
@PostMapping("/update")
public CallBack<String> update(SaveOrUpdateLiveForm form,@RequestParam(value="file",required=false) MultipartFile file,@RequestParam(value="imge",required=false) MultipartFile image){
Live live = new Live();
if(StringUtils.isNotBlank(form.getAuthorNameAndId())){
String[] authorNameAndId = form.getAuthorNameAndId().split(",");
form.setAuthor(authorNameAndId[0]);
if(authorNameAndId.length > 1){
form.setAuthorId(authorNameAndId[1]);
}
}
live.setLiveTime(Timestamp.valueOf(form.getLiveTime()).getTime()/1000);
live.setUpdateTime(new Date());
if(StringUtils.isBlank(form.getAuthorId())) {
Live l = liveService.selectByPrimaryKey(form.getId());
l.setAuthorId(null);
liveService.updateByPrimaryKey(l);
}
BeanUtils.copyProperties(form, live);
return CallBack.success(liveService.update(live,file,image));
String msg = liveService.update(live,file,image);
//删除当前对象与自定义分类的关系
LiveDiyType old = new LiveDiyType();
old.setLiveId(live.getId());
liveDiyTypeService.delete(old);
//添加当前对象与自定义分类的关系
if(form.getDiyType() != null && form.getDiyType().size() > 0){
List<LiveDiyType> list = form.getDiyType();
list.forEach(li -> li.setLiveId(live.getId()));
liveDiyTypeService.insertList(list);
}
return CallBack.success(msg);
}
@ApiOperation("查看详情")
......
package com.zrqx.live.bg.mapper;
import com.zrqx.core.mapper.BaseMapper;
import com.zrqx.live.commons.model.LiveDiyType;
/**
* 直播库和自定义分类
*/
public interface LiveDiyTypeMapper extends BaseMapper<LiveDiyType> {
}
......@@ -15,11 +15,11 @@ import com.zrqx.live.commons.vo.LiveVo;
public interface LiveMapper extends BaseMapper<Live>{
@Select("<script>"
+ " select id,name,realPrice,createTime,status,liveStatus,img,whId "
+ " select id,name,realPrice, DATE_FORMAT(a.uploadTime,'%Y-%m-%d %H:%i') uploadTime,status,liveStatus,img,whId "
+ " from l_live where 1=1 "
+ " eq(liveStatus,form.liveStatus) "
+ " eq(model,form.model) "
+ " eq(title,form.title) "
+ " eq(name,form.name) "
+ "</script>")
List<LiveVo> page(@Param("form") LiveForm form);
......
package com.zrqx.live.bg.service;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.zrqx.core.mapper.BaseMapper;
import com.zrqx.core.service.BaseServiceImpl;
import com.zrqx.live.bg.mapper.LiveDiyTypeMapper;
import com.zrqx.live.commons.model.LiveDiyType;
/**
* 课程库和自定义分类
*/
@Service
public class LiveDiyTypeSerivceImpl extends BaseServiceImpl<LiveDiyType,Integer> implements LiveDiyTypeService {
@Autowired
private LiveDiyTypeMapper mapper;
@Override
public BaseMapper<LiveDiyType> getMapper() {
return mapper;
}
}
package com.zrqx.live.bg.service;
import com.zrqx.core.service.BaseService;
import com.zrqx.live.commons.model.LiveDiyType;
/**
* 视频库和自定义分类
*/
public interface LiveDiyTypeService extends BaseService<LiveDiyType,Integer>{
}
......@@ -14,13 +14,14 @@ import java.util.HashMap;
import java.util.IntSummaryStatistics;
import java.util.List;
import java.util.Map;
import java.util.TreeSet;
import java.util.Map.Entry;
import java.util.TreeSet;
import java.util.stream.Collectors;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.commons.lang3.StringUtils;
import org.apache.http.HttpEntity;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.entity.mime.HttpMultipartMode;
......@@ -42,7 +43,7 @@ import com.zrqx.core.util.excelutil.ExcelUtil;
import com.zrqx.core.util.http.HttpUtils;
import com.zrqx.core.util.page.PageInfo;
import com.zrqx.core.util.page.PageParam;
import com.zrqx.core.util.response.CallBack;
import com.zrqx.live.bg.mapper.LiveDiyTypeMapper;
import com.zrqx.live.bg.mapper.LiveMapper;
import com.zrqx.live.commons.config.MicroRoarConfig;
import com.zrqx.live.commons.enums.LiveStatusEnum;
......@@ -56,6 +57,7 @@ import com.zrqx.live.commons.form.MicroRoarStartForm;
import com.zrqx.live.commons.form.TotalInfoForm;
import com.zrqx.live.commons.model.Files;
import com.zrqx.live.commons.model.Live;
import com.zrqx.live.commons.model.LiveDiyType;
import com.zrqx.live.commons.model.LiveMarqueeForm;
import com.zrqx.live.commons.model.LiveWatermarkForm;
import com.zrqx.live.commons.model.MicroRoarInfo;
......@@ -77,6 +79,8 @@ import com.zrqx.live.commons.vo.LiveVo;
import com.zrqx.live.commons.vo.MapListData;
import com.zrqx.live.commons.vo.ShareVo;
import tk.mybatis.mapper.entity.Example;
@Service
public class LiveServiceImpl extends BaseServiceImpl<Live,Integer> implements LiveService{
......@@ -84,6 +88,8 @@ public class LiveServiceImpl extends BaseServiceImpl<Live,Integer> implements Li
@Autowired
private LiveMapper mapper;
@Autowired
private LiveDiyTypeMapper liveDiyTypeMapper;
@Autowired
private FilesService fileService;
@Override
......@@ -344,6 +350,16 @@ public class LiveServiceImpl extends BaseServiceImpl<Live,Integer> implements Li
MicroRoarInfo form2 = JSON.parseObject(data,MicroRoarInfo.class);
Live live = mapper.selectByPrimaryKey(id);
BeanUtils.copyProperties(live, l);
if(StringUtils.isNotBlank(live.getAuthorId())){
l.setAuthorNameAndId(live.getAuthor() + "," + live.getAuthorId());
}else{
l.setAuthorNameAndId(live.getAuthor());
}
//组装自定义分类
Example example = new Example(LiveDiyType.class);
example.createCriteria().andEqualTo("liveId",id);
List<LiveDiyType> list = liveDiyTypeMapper.selectByExample(example);
l.setDiyType(list);
l.setWhId(form2.getId());
l.setName(form2.getSubject());
l.setLiveTime(form2.getT_start());
......
......@@ -11,5 +11,5 @@ public class LiveStatusForm {
@ApiModelProperty("id")
private List<String> ids;
@ApiModelProperty("status")
private String status;
private Integer status;
}
......@@ -2,9 +2,9 @@ package com.zrqx.live.commons.form;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.multipart.MultipartFile;
import com.zrqx.live.commons.model.LiveDiyType;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
......@@ -20,6 +20,14 @@ public class SaveOrUpdateLiveForm {
private String id;
@ApiModelProperty("直播标题")
private String name;
@ApiModelProperty("讲师")
private String author;
@ApiModelProperty("讲师id")
private String authorId;
@ApiModelProperty(value = "讲师名称和id(用,隔开)")
private String authorNameAndId;
@ApiModelProperty(value = "分类")
private List<LiveDiyType> diyType;
@ApiModelProperty("直播时间")
private String liveTime;
@ApiModelProperty("简介")
......
......@@ -23,6 +23,10 @@ public class Live {
private String id;
@ApiModelProperty("直播标题")
private String name;
@ApiModelProperty("讲师")
private String author;
@ApiModelProperty("讲师id")
private String authorId;
@ApiModelProperty("直播时间")
private Long liveTime;
@ApiModelProperty("简介")
......@@ -66,11 +70,11 @@ public class Live {
@ApiModelProperty("回放 1开启 0关闭")
private String playback;
@ApiModelProperty("状态 0上架 1下架")
private String status;
private Integer status;
@ApiModelProperty("直播状态 0预告 1直播中 2回放 3结束 4点播")
private String liveStatus;
@ApiModelProperty("创建时间")
private Date createTime;
private Date uploadTime;
@ApiModelProperty("修改时间")
private Date updateTime;
......@@ -95,5 +99,7 @@ public class Live {
@ApiModelProperty("设置-水印图片路径")
private String watermarkPath;
@ApiModelProperty("资源类型")
private Integer resourceType;
}
package com.zrqx.live.commons.model;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;
import lombok.Data;
@Data
@ApiModel(value="LiveDiyType",description="直播与自定义分类关系表")
@Table(name = "l_live_diy_type")
public class LiveDiyType {
@Id
@GeneratedValue(generator="JDBC")
@ApiModelProperty("直播与自定义分类关系表id")
private Integer id;
@ApiModelProperty("直播id")
private String liveId;
@ApiModelProperty("自定义分类id")
private Integer dtId;
@ApiModelProperty("自定义分类code")
private String code;
}
......@@ -2,6 +2,9 @@ package com.zrqx.live.commons.vo;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
import com.zrqx.live.commons.model.LiveDiyType;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
......@@ -23,6 +26,14 @@ public class LiveInfoVo {
private String synopsis;
@ApiModelProperty("封面")
private String img;
@ApiModelProperty("讲师")
private String author;
@ApiModelProperty("讲师id")
private String authorId;
@ApiModelProperty(value = "讲师名称和id(用,隔开)")
private String authorNameAndId;
@ApiModelProperty(value = "分类")
private List<LiveDiyType> diyType;
@ApiModelProperty("直播模式")
private String model;
@ApiModelProperty("上传资源")
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论