Merge branch 'master' of gitee.com:darlk/ShengTangManage into develop

This commit is contained in:
huangdeliang
2021-05-07 14:54:16 +08:00
35 changed files with 1423 additions and 195 deletions

View File

@ -1,11 +1,13 @@
package com.stdiet.web.controller;
import com.stdiet.common.config.AliyunOSSConfig;
import com.stdiet.common.core.domain.AjaxResult;
import com.stdiet.common.core.domain.entity.SysUser;
import com.stdiet.common.utils.StringUtils;
import com.stdiet.common.utils.oss.AliyunOSSUtils;
import com.stdiet.common.utils.poi.ExcelUtil;
import com.stdiet.custom.domain.SysNutritionQuestion;
import com.stdiet.custom.domain.SysNutritionalVideo;
import com.stdiet.custom.domain.SysWxUserInfo;
import com.stdiet.custom.domain.SysWxUserLog;
import com.stdiet.custom.mapper.SysCustomerPhysicalSignsMapper;
@ -13,6 +15,7 @@ import com.stdiet.custom.mapper.SysNutritionQuestionMapper;
import com.stdiet.custom.mapper.SysWxUserInfoMapper;
import com.stdiet.custom.mapper.SysWxUserLogMapper;
import com.stdiet.custom.service.ISysNutritionQuestionService;
import com.stdiet.custom.service.ISysNutritionalVideoService;
import com.stdiet.custom.service.ISysWxUserLogService;
import com.stdiet.custom.utils.LuceneIndexUtils;
import com.stdiet.framework.web.domain.server.Sys;
@ -28,6 +31,7 @@ import org.springframework.stereotype.Component;
import java.io.File;
import java.io.FileInputStream;
import java.util.List;
import java.util.Map;
@Component
@Order(value = 1)
@ -42,6 +46,9 @@ public class MyApplicationRunner implements ApplicationRunner {
@Autowired
private ISysNutritionQuestionService sysNutritionQuestionService;
@Autowired
private ISysNutritionalVideoService sysNutritionalVideoService;
@Override
@ -105,4 +112,19 @@ public class MyApplicationRunner implements ApplicationRunner {
}
}
public void updateVideo(){
Map<String, Object> map = sysNutritionalVideoService.searchVideo(null, null, 1,100, null);
if(map != null){
List<SysNutritionalVideo> list = (List<SysNutritionalVideo>)map.get("nutritionalVideoList");
if(list != null && list.size() > 0){
for (SysNutritionalVideo video : list) {
sysNutritionalVideoService.insertSysNutritionalVideo(video);
}
}
}
}
}

View File

@ -2,14 +2,20 @@ package com.stdiet.web.controller.custom;
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.TreeMap;
import com.stdiet.common.utils.DateUtils;
import com.stdiet.custom.domain.SysCommissionDayDetail;
import com.stdiet.custom.domain.SysOrder;
import com.stdiet.custom.domain.SysOrderCommisionDayDetail;
import com.stdiet.custom.dto.request.SysOrderCommision;
import com.stdiet.custom.service.ISysCommissionDayService;
import com.stdiet.custom.service.ISysNutritionalVideoService;
import com.stdiet.custom.service.ISysOrderService;
import com.stdiet.custom.service.impl.SysCommissionDayServiceImpl;
import com.stdiet.framework.web.domain.server.Sys;
import com.stdiet.system.domain.CusSalesman;
import com.stdiet.system.service.ISysUserService;
@ -41,6 +47,7 @@ import com.stdiet.common.core.page.TableDataInfo;
@RestController
@RequestMapping("/custom/commision")
public class SysCommisionController extends BaseController {
@Autowired
private ISysCommisionService sysCommisionService;
@ -50,6 +57,9 @@ public class SysCommisionController extends BaseController {
@Autowired
private ISysCommissionDayService sysCommissionDayService;
@Autowired
private ISysNutritionalVideoService sysNutritionalVideoService;
/**
* 查询业务提成比例列表
*/
@ -158,6 +168,14 @@ public class SysCommisionController extends BaseController {
@GetMapping("/detail")
public TableDataInfo getDetail(SysCommision sysCommision) {
startPage();
if(sysCommision.getPostId() != null && sysCommision.getPostId().intValue() > 0){
//查询售后所有ID
SysCommision param = new SysCommision();
param.setPostId(sysCommision.getPostId());
List<Long> userIds = sysCommisionService.getAfterSaleId(param);
sysCommision.setUserIds(userIds.size() == 0 ? null : userIds);
sysCommision.setPostId(null);
}
List<SysCommision> list = sysCommisionService.selectSysCommisionDetail(sysCommision);
for (SysCommision detail : list) {
detail.setRate(0F);
@ -165,22 +183,38 @@ public class SysCommisionController extends BaseController {
tmpQueryCom.setUserId(detail.getUserId());
tmpQueryCom.setPostId(detail.getPostId());
List<SysCommision> tmpComList = sysCommisionService.selectSysCommisionList(tmpQueryCom);
//按比例开始时间分类
Map<String, List<SysCommision>> rateYearMonthMap = sysCommissionDayService.getRateMapByStartTime(tmpComList);
String yearMonth = DateUtils.stringToLocalDate(sysCommision.getBeginTime(),"yyyy-MM-dd").getYear() + "" + DateUtils.stringToLocalDate(sysCommision.getBeginTime(),"yyyy-MM-dd").getMonth().getValue();
List<SysCommision> yearMonthRateList = new ArrayList<>();
for (String rateMonth : rateYearMonthMap.keySet()) {
if(Long.parseLong(yearMonth) >= Long.parseLong(rateMonth)){
yearMonthRateList = rateYearMonthMap.get(rateMonth);
}else{
break;
}
}
float dAmount = detail.getAmount().floatValue();
for (int i = 0; i < tmpComList.size(); i++) {
SysCommision com = tmpComList.get(i);
for (int i = 0; i < yearMonthRateList.size(); i++) {
SysCommision com = yearMonthRateList.get(i);
float cAmount = com.getAmount().floatValue();
if (dAmount <= cAmount && i == 0) {
Long rateStartYearMonth = null;
if(com.getStartTime() != null){
rateStartYearMonth = Long.parseLong(DateUtils.dateToLocalDate(com.getStartTime()).getYear() + "" + DateUtils.dateToLocalDate(com.getStartTime()).getMonth().getValue());
}else{
rateStartYearMonth = 19001L;
}
if (dAmount <= cAmount && i == 0 && Long.parseLong(yearMonth) >= rateStartYearMonth) {
// 第一条规则
detail.setRate(com.getRate());
break;
} else if (i == tmpComList.size() - 1 && dAmount > cAmount) {
} else if (i == yearMonthRateList.size() - 1 && dAmount > cAmount && Long.parseLong(yearMonth) >= rateStartYearMonth) {
// 最后一条规则
detail.setRate(com.getRate());
break;
} else if (cAmount < dAmount && dAmount <= tmpComList.get(i + 1).getAmount().floatValue()) {
} else if (cAmount < dAmount && dAmount <= yearMonthRateList.get(i + 1).getAmount().floatValue() && Long.parseLong(yearMonth) >= rateStartYearMonth) {
// 中间规则
detail.setRate(tmpComList.get(i + 1).getRate());
detail.setRate(yearMonthRateList.get(i + 1).getRate());
break;
}
}
@ -188,6 +222,7 @@ public class SysCommisionController extends BaseController {
float amount = detail.getAmount().floatValue();
amount = amount * detail.getRate() / 100F;
detail.setCommision(new BigDecimal(amount));
}
return getDataTable(list);
}

View File

@ -23,7 +23,7 @@ public class SysFileUploadController extends BaseController {
* 上传文件到OSS返回URL
*/
@PostMapping(value = "/{prefix}")
@PreAuthorize("@ss.hasPermi('custom:file:upload')")
//@PreAuthorize("@ss.hasPermi('custom:file:upload')")
public AjaxResult uploadCseFile(MultipartFile file, @PathVariable String prefix) throws Exception {
try {

View File

@ -4,8 +4,10 @@ import java.util.ArrayList;
import java.util.List;
import com.aliyun.vod20170321.models.CreateUploadVideoResponse;
import com.aliyun.vod20170321.models.GetVideoListResponseBody;
import com.stdiet.common.core.page.TableDataInfo;
import com.stdiet.common.utils.AliyunVideoUtils;
import com.stdiet.common.utils.StringUtils;
import com.stdiet.common.utils.oss.AliyunOSSUtils;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@ -34,32 +36,18 @@ public class SysNutritionalVideoController extends BaseController
*/
@PreAuthorize("@ss.hasPermi('custom:nutritionalVideo:list')")
@GetMapping("/list")
public AjaxResult list(SysNutritionalVideo sysNutritionalVideo, @RequestParam(value = "pageNum", defaultValue = "1") int pageNum, @RequestParam(value = "pageSize", defaultValue = "5")int pageSize)
public TableDataInfo list(SysNutritionalVideo sysNutritionalVideo)
{
AjaxResult result = AjaxResult.success();
int total = 0;
List<SysNutritionalVideo> nutritionalVideoList = new ArrayList<>();
try{
GetVideoListResponseBody videoListResponseBody = AliyunVideoUtils.getVideoListByPage(null, "Normal,Blocked", pageNum, pageSize);
if(videoListResponseBody != null){
total = videoListResponseBody.total;
for (GetVideoListResponseBody.GetVideoListResponseBodyVideoListVideo video : videoListResponseBody.videoList.video) {
SysNutritionalVideo nutritionalVideo = new SysNutritionalVideo();
nutritionalVideo.setCoverUrl(video.getCoverURL());
nutritionalVideo.setTitle(video.getTitle());
nutritionalVideo.setVideoId(video.getVideoId());
nutritionalVideo.setDescription(video.getDescription());
nutritionalVideo.setTags(video.getTags());
nutritionalVideoList.add(nutritionalVideo);
nutritionalVideo.setShowFlag("Normal".equals(video.getStatus()) ? 1 : 0);
}
}
}catch (Exception e){
e.printStackTrace();
/*AjaxResult result = AjaxResult.success();
Map<String, Object> map = sysNutritionalVideoService.searchVideo(sysNutritionalVideo.getKey(), sysNutritionalVideo.getShowFlag(), pageNum, pageSize, null);
if(map != null){
result.put("total", map.get("total"));
result.put("rows", map.get("nutritionalVideoList"));
}
result.put("total",total);
result.put("rows", nutritionalVideoList);
return result;
return result;*/
startPage();
List<SysNutritionalVideo> list = sysNutritionalVideoService.selectSysNutritionalVideoList(sysNutritionalVideo, true);
return getDataTable(list);
}
/**
@ -69,7 +57,11 @@ public class SysNutritionalVideoController extends BaseController
@GetMapping(value = "/{id}")
public AjaxResult getInfo(@PathVariable("id") Long id)
{
return AjaxResult.success(sysNutritionalVideoService.selectSysNutritionalVideoById(id));
SysNutritionalVideo sysNutritionalVideos = sysNutritionalVideoService.selectSysNutritionalVideoById(id);
if(sysNutritionalVideos != null && StringUtils.isNotEmpty(sysNutritionalVideos.getCoverUrl())){
sysNutritionalVideos.setPreviewUrl(AliyunOSSUtils.generatePresignedUrl(sysNutritionalVideos.getCoverUrl()));
}
return AjaxResult.success(sysNutritionalVideos);
}
/**
@ -80,6 +72,7 @@ public class SysNutritionalVideoController extends BaseController
@PostMapping
public AjaxResult add(@RequestBody SysNutritionalVideo sysNutritionalVideo)
{
sysNutritionalVideo.setShowFlag(1);
return toAjax(sysNutritionalVideoService.insertSysNutritionalVideo(sysNutritionalVideo));
}
@ -93,7 +86,7 @@ public class SysNutritionalVideoController extends BaseController
{
AjaxResult result = AjaxResult.error();
try {
CreateUploadVideoResponse response = AliyunVideoUtils.createUploadVideoRequest(sysNutritionalVideo.getCateId(), sysNutritionalVideo.getFileName(), sysNutritionalVideo.getTitle(), sysNutritionalVideo.getCoverUrl(), sysNutritionalVideo.getTags(), sysNutritionalVideo.getDescription());
CreateUploadVideoResponse response = AliyunVideoUtils.createUploadVideoRequest(null, sysNutritionalVideo.getFileName(), sysNutritionalVideo.getTitle(), null, sysNutritionalVideo.getTags(), sysNutritionalVideo.getDescription());
if(response != null){
result = AjaxResult.success();
result.put("uploadAuth", response.body);
@ -125,4 +118,20 @@ public class SysNutritionalVideoController extends BaseController
{
return toAjax(sysNutritionalVideoService.deleteSysNutritionalVideoByIds(ids));
}
/**
* 修改营养小知识是否微信展示状态
*/
@PreAuthorize("@ss.hasPermi('custom:nutritionalVideo:edit')")
@Log(title = "微信展示状态修改", businessType = BusinessType.UPDATE)
@GetMapping("/updateWxShow")
public AjaxResult updateWxShow(@RequestParam("id")String id, @RequestParam("showFlag")Integer showFlag)
{
if(StringUtils.isEmpty(id) || showFlag == null){
return AjaxResult.error();
}
Long[] ids = {Long.parseLong(id)};
return toAjax(sysNutritionalVideoService.updateWxshowByIds(showFlag, ids));
}
}

View File

@ -0,0 +1,113 @@
package com.stdiet.web.controller.custom;
import java.util.List;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import com.stdiet.common.annotation.Log;
import com.stdiet.common.core.controller.BaseController;
import com.stdiet.common.core.domain.AjaxResult;
import com.stdiet.common.enums.BusinessType;
import com.stdiet.custom.domain.SysVideoClassify;
import com.stdiet.custom.service.ISysVideoClassifyService;
import com.stdiet.common.utils.poi.ExcelUtil;
import com.stdiet.common.core.page.TableDataInfo;
/**
* 视频分类Controller
*
* @author xzj
* @date 2021-05-05
*/
@RestController
@RequestMapping("/custom/videoClassify")
public class SysVideoClassifyController extends BaseController
{
@Autowired
private ISysVideoClassifyService sysVideoClassifyService;
/**
* 查询视频分类列表
*/
@PreAuthorize("@ss.hasPermi('custom:videoClassify:list')")
@GetMapping("/list")
public TableDataInfo list(SysVideoClassify sysVideoClassify)
{
startPage();
List<SysVideoClassify> list = sysVideoClassifyService.selectSysVideoClassifyList(sysVideoClassify);
return getDataTable(list);
}
/**
* 导出视频分类列表
*/
@PreAuthorize("@ss.hasPermi('custom:videoClassify:export')")
@Log(title = "视频分类", businessType = BusinessType.EXPORT)
@GetMapping("/export")
public AjaxResult export(SysVideoClassify sysVideoClassify)
{
List<SysVideoClassify> list = sysVideoClassifyService.selectSysVideoClassifyList(sysVideoClassify);
ExcelUtil<SysVideoClassify> util = new ExcelUtil<SysVideoClassify>(SysVideoClassify.class);
return util.exportExcel(list, "videoClassify");
}
/**
* 获取视频分类详细信息
*/
@PreAuthorize("@ss.hasPermi('custom:videoClassify:query')")
@GetMapping(value = "/{id}")
public AjaxResult getInfo(@PathVariable("id") Long id)
{
return AjaxResult.success(sysVideoClassifyService.selectSysVideoClassifyById(id));
}
/**
* 新增视频分类
*/
@PreAuthorize("@ss.hasPermi('custom:videoClassify:add')")
@Log(title = "视频分类", businessType = BusinessType.INSERT)
@PostMapping
public AjaxResult add(@RequestBody SysVideoClassify sysVideoClassify)
{
return toAjax(sysVideoClassifyService.insertSysVideoClassify(sysVideoClassify));
}
/**
* 修改视频分类
*/
@PreAuthorize("@ss.hasPermi('custom:videoClassify:edit')")
@Log(title = "视频分类", businessType = BusinessType.UPDATE)
@PutMapping
public AjaxResult edit(@RequestBody SysVideoClassify sysVideoClassify)
{
return toAjax(sysVideoClassifyService.updateSysVideoClassify(sysVideoClassify));
}
/**
* 删除视频分类
*/
@PreAuthorize("@ss.hasPermi('custom:videoClassify:remove')")
@Log(title = "视频分类", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public AjaxResult remove(@PathVariable Long[] ids)
{
return toAjax(sysVideoClassifyService.deleteSysVideoClassifyByIds(ids));
}
/**
* 查询视频分类列表
*/
@GetMapping("/getAllClassify")
public AjaxResult getAllClassify()
{
List<SysVideoClassify> list = sysVideoClassifyService.getAllClassify();
return AjaxResult.success(list);
}
}

View File

@ -360,30 +360,16 @@ public class WechatAppletController extends BaseController {
* 获取视频列表
*/
@GetMapping(value = "/getVideoList")
public AjaxResult getVideoList(SysNutritionalVideo sysNutritionalVideo, @RequestParam(value = "pageNum", defaultValue = "1") int pageNum, @RequestParam(value = "pageSize", defaultValue = "5") int pageSize) {
AjaxResult result = AjaxResult.success();
int total = 0;
List<NutritionalVideoResponse> nutritionalVideoList = new ArrayList<>();
try {
GetVideoListResponseBody videoListResponseBody = AliyunVideoUtils.getVideoListByPage(null, "Normal", pageNum, pageSize);
if (videoListResponseBody != null) {
total = videoListResponseBody.total;
for (GetVideoListResponseBody.GetVideoListResponseBodyVideoListVideo video : videoListResponseBody.videoList.video) {
NutritionalVideoResponse nutritionalVideoResponse = new NutritionalVideoResponse();
nutritionalVideoResponse.setCoverUrl(video.getCoverURL());
nutritionalVideoResponse.setTitle(video.getTitle());
nutritionalVideoResponse.setVideoId(video.getVideoId());
nutritionalVideoResponse.setDescription(video.getDescription());
nutritionalVideoResponse.setTags(video.getTags());
nutritionalVideoList.add(nutritionalVideoResponse);
}
}
} catch (Exception e) {
e.printStackTrace();
}
result.put("total", total);
result.put("rows", nutritionalVideoList);
return result;
public TableDataInfo getVideoList(SysNutritionalVideo sysNutritionalVideo) {
/* AjaxResult result = AjaxResult.success();
Map<String, Object> map = sysNutritionalVideoService.searchVideo(sysNutritionalVideo.getKey(), 1, pageNum, pageSize, null);
result.put("total", map.get("total"));
result.put("rows", map.get("nutritionalVideoList"));
return result;*/
startPage();
sysNutritionalVideo.setShowFlag(1);
List<SysNutritionalVideo> list = sysNutritionalVideoService.selectSysNutritionalVideoList(sysNutritionalVideo, true);
return getDataTable(list);
}