Commit 40669193 by kaevom

全部完成

parent 366d7af8
...@@ -27,7 +27,21 @@ ...@@ -27,7 +27,21 @@
<groupId>com.yongqi</groupId> <groupId>com.yongqi</groupId>
<artifactId>yongqi-sms</artifactId> <artifactId>yongqi-sms</artifactId>
</dependency> </dependency>
<dependency>
<groupId>org.bytedeco</groupId>
<artifactId>javacpp</artifactId>
<version>1.4.1</version>
</dependency>
<dependency>
<groupId>org.bytedeco</groupId>
<artifactId>javacv</artifactId>
<version>1.4.1</version>
</dependency>
<dependency>
<groupId>org.bytedeco.javacpp-presets</groupId>
<artifactId>ffmpeg-platform</artifactId>
<version>3.4.2-1.4.1</version>
</dependency>
<!-- 短信 用哪个导入哪个依赖 --> <!-- 短信 用哪个导入哪个依赖 -->
<!-- <dependency>--> <!-- <dependency>-->
<!-- <groupId>com.aliyun</groupId>--> <!-- <groupId>com.aliyun</groupId>-->
......
...@@ -31,7 +31,12 @@ import javax.servlet.http.HttpServletResponse; ...@@ -31,7 +31,12 @@ import javax.servlet.http.HttpServletResponse;
import javax.validation.constraints.NotNull; import javax.validation.constraints.NotNull;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map;
import static com.yongqi.xinrenli.utils.videoText.getTempPath;
/** /**
* 订单 * 订单
...@@ -265,7 +270,6 @@ public class DbOrderController extends BaseController { ...@@ -265,7 +270,6 @@ public class DbOrderController extends BaseController {
@Log(title = "报表", businessType = BusinessType.DELETE) @Log(title = "报表", businessType = BusinessType.DELETE)
@PostMapping("/createPay") @PostMapping("/createPay")
public R<Void> createPay(@RequestBody DbOrderEditBo bo) { public R<Void> createPay(@RequestBody DbOrderEditBo bo) {
if("2".equals(bo.getStatus())){ if("2".equals(bo.getStatus())){
if(ObjectUtils.isEmpty(bo.getActualAmount())){ if(ObjectUtils.isEmpty(bo.getActualAmount())){
return R.fail("沟通金额为空"); return R.fail("沟通金额为空");
...@@ -278,4 +282,14 @@ public class DbOrderController extends BaseController { ...@@ -278,4 +282,14 @@ public class DbOrderController extends BaseController {
} }
return toAjax(iDbOrderService.createPay(bo)); return toAjax(iDbOrderService.createPay(bo));
} }
@SaCheckPermission("xinrenli:order:cut")
@Log(title = "报表", businessType = BusinessType.DELETE)
@GetMapping("/cut")
public R test(String url) throws Exception {
String image = "/opt/xinrenli/image/"+url.substring(url.lastIndexOf("/")+1);
getTempPath("/opt/xinrenli/image/diyizhen.jpg",image);
Map<String, Object> map = new HashMap<>();
map.put("url","http://xinrenli.nyinhong.com/image/diyizhen.jpg");
return R.ok(map);//上传成功,返回保存的文件地址
}
} }
...@@ -64,5 +64,8 @@ public class DbFile { ...@@ -64,5 +64,8 @@ public class DbFile {
* 修改人 * 修改人
*/ */
private String modifyName; private String modifyName;
/**
* 视频第一帧
*/
private String cropImage;
} }
...@@ -79,5 +79,8 @@ public class DbFileBo extends BaseEntity { ...@@ -79,5 +79,8 @@ public class DbFileBo extends BaseEntity {
* 业务id * 业务id
*/ */
private String serviceId; private String serviceId;
/**
* 视频第一帧
*/
private String cropImage;
} }
...@@ -80,6 +80,9 @@ public class DbFileVo { ...@@ -80,6 +80,9 @@ public class DbFileVo {
*/ */
@ExcelProperty(value = "修改人") @ExcelProperty(value = "修改人")
private String modifyName; private String modifyName;
/**
* 视频第一帧
*/
private String cropImage;
} }
...@@ -64,6 +64,7 @@ public class DbArticleServiceImpl implements IDbArticleService { ...@@ -64,6 +64,7 @@ public class DbArticleServiceImpl implements IDbArticleService {
vo.setFileVos(dbFileVo); vo.setFileVos(dbFileVo);
return vo; return vo;
} }
private static final String REG_EX = "</?[^>]+>";
/** /**
* 查询文章列表 * 查询文章列表
...@@ -88,8 +89,7 @@ public class DbArticleServiceImpl implements IDbArticleService { ...@@ -88,8 +89,7 @@ public class DbArticleServiceImpl implements IDbArticleService {
for (DbArticleVo article : result.getRecords()) { for (DbArticleVo article : result.getRecords()) {
String n = article.getContent(); String n = article.getContent();
n = n.replace("<p>", ""); n = n.replaceAll(REG_EX, "");
n = n.replace("</p>", "");
article.setContent(n); article.setContent(n);
} }
...@@ -105,8 +105,7 @@ public class DbArticleServiceImpl implements IDbArticleService { ...@@ -105,8 +105,7 @@ public class DbArticleServiceImpl implements IDbArticleService {
List<DbArticleVo> list = baseMapper.selectVoList(lqw); List<DbArticleVo> list = baseMapper.selectVoList(lqw);
for (DbArticleVo article : list) { for (DbArticleVo article : list) {
String n = article.getContent(); String n = article.getContent();
n = n.replace("<p>", ""); n = n.replaceAll(REG_EX, "");
n = n.replace("</p>", "");
article.setContent(n); article.setContent(n);
} }
return list; return list;
......
...@@ -17,6 +17,7 @@ import com.yongqi.xinrenli.domain.DbCoupon; ...@@ -17,6 +17,7 @@ import com.yongqi.xinrenli.domain.DbCoupon;
import com.yongqi.xinrenli.mapper.DbCouponMapper; import com.yongqi.xinrenli.mapper.DbCouponMapper;
import com.yongqi.xinrenli.service.IDbCouponService; import com.yongqi.xinrenli.service.IDbCouponService;
import java.util.Calendar;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.Collection; import java.util.Collection;
...@@ -81,6 +82,13 @@ public class DbCouponServiceImpl implements IDbCouponService { ...@@ -81,6 +82,13 @@ public class DbCouponServiceImpl implements IDbCouponService {
@Override @Override
public Boolean insertByBo(DbCouponBo bo) { public Boolean insertByBo(DbCouponBo bo) {
DbCoupon add = BeanUtil.toBean(bo, DbCoupon.class); DbCoupon add = BeanUtil.toBean(bo, DbCoupon.class);
Calendar calendar = Calendar.getInstance();
calendar.setTime(add.getFailureTime());
// 将时分秒,毫秒域清零
calendar.set(Calendar.HOUR_OF_DAY, 23);
calendar.set(Calendar.MINUTE, 59);
calendar.set(Calendar.SECOND, 59);
add.setFailureTime(calendar.getTime());
validEntityBeforeSave(add); validEntityBeforeSave(add);
boolean flag = baseMapper.insert(add) > 0; boolean flag = baseMapper.insert(add) > 0;
if (flag) { if (flag) {
......
...@@ -41,6 +41,8 @@ import java.math.BigDecimal; ...@@ -41,6 +41,8 @@ import java.math.BigDecimal;
import java.util.*; import java.util.*;
import java.util.stream.Collectors; import java.util.stream.Collectors;
import static com.yongqi.xinrenli.utils.videoText.getTempPath;
/** /**
* 订单Service业务层处理 * 订单Service业务层处理
* *
...@@ -193,6 +195,7 @@ public class DbOrderServiceImpl implements IDbOrderService { ...@@ -193,6 +195,7 @@ public class DbOrderServiceImpl implements IDbOrderService {
file.setServiceType(FileEnumServiceType.ORDER.getServiceTyp()); file.setServiceType(FileEnumServiceType.ORDER.getServiceTyp());
file.setCreateName(String.valueOf(user.getUserId())); file.setCreateName(String.valueOf(user.getUserId()));
file.setModifyName(String.valueOf(user.getUserId())); file.setModifyName(String.valueOf(user.getUserId()));
}); });
fileMapper.insertBatch(files); fileMapper.insertBatch(files);
} }
...@@ -204,6 +207,14 @@ public class DbOrderServiceImpl implements IDbOrderService { ...@@ -204,6 +207,14 @@ public class DbOrderServiceImpl implements IDbOrderService {
file.setServiceType(FileEnumServiceType.ORDER.getServiceTyp()); file.setServiceType(FileEnumServiceType.ORDER.getServiceTyp());
file.setCreateName(String.valueOf(user.getUserId())); file.setCreateName(String.valueOf(user.getUserId()));
file.setModifyName(String.valueOf(user.getUserId())); file.setModifyName(String.valueOf(user.getUserId()));
try {
String image = "/opt/xinrenli/image/"+file.getUrl().substring(file.getUrl().lastIndexOf("/")+1);
String filename = UUID.randomUUID().toString()+".jpg";
file.setCropImage("http://xinrenli.nyinhong.com/image/"+filename);
getTempPath("/opt/xinrenli/image/"+filename,image);
} catch (Exception e) {
throw new RuntimeException(e);
}
}); });
fileMapper.insertBatch(files); fileMapper.insertBatch(files);
} }
...@@ -258,6 +269,14 @@ public class DbOrderServiceImpl implements IDbOrderService { ...@@ -258,6 +269,14 @@ public class DbOrderServiceImpl implements IDbOrderService {
file.setDeleteStatus(DeleteStatusEnum.OK.getCode()); file.setDeleteStatus(DeleteStatusEnum.OK.getCode());
file.setCreateName(String.valueOf(user.getUserId())); file.setCreateName(String.valueOf(user.getUserId()));
file.setModifyName(String.valueOf(user.getUserId())); file.setModifyName(String.valueOf(user.getUserId()));
try {
String image = "/opt/xinrenli/image/"+file.getUrl().substring(file.getUrl().lastIndexOf("/")+1);
String filename = UUID.randomUUID().toString()+".jpg";
file.setCropImage("http://xinrenli.nyinhong.com/image/"+filename);
getTempPath("/opt/xinrenli/image/"+filename,image);
} catch (Exception e) {
throw new RuntimeException(e);
}
}); });
fileMapper.insertBatch(files); fileMapper.insertBatch(files);
} }
...@@ -312,6 +331,7 @@ public class DbOrderServiceImpl implements IDbOrderService { ...@@ -312,6 +331,7 @@ public class DbOrderServiceImpl implements IDbOrderService {
vos.add(dbFileVo); vos.add(dbFileVo);
} }
record.setFileVos(vos); record.setFileVos(vos);
}); });
return TableDataInfo.build(result); return TableDataInfo.build(result);
} }
......
package com.yongqi.xinrenli.utils;
import org.bytedeco.javacv.FFmpegFrameGrabber;
import org.bytedeco.javacv.Frame;
import org.bytedeco.javacv.Java2DFrameConverter;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
import java.awt.image.RenderedImage;
import java.io.File;
public class videoText {
public static final Logger log = LoggerFactory.getLogger(videoText.class);
public static String getTempPath(String tempPath, String filePath) throws Exception {
// String tempPath=" ";//保存的目标路径
File targetFile = new File(tempPath);
if (!targetFile.getParentFile().exists()) {
targetFile.getParentFile().mkdirs();
}
File file2 = new File(filePath);
if (file2.exists()) {
log.info("文件存在,路径正确!");
FFmpegFrameGrabber ff = new FFmpegFrameGrabber(file2);
ff.start();
int ftp = ff.getLengthInFrames();
int flag=0;
Frame frame = null;
while (flag <= ftp) {
//获取帧
frame = ff.grabImage();
//过滤前3帧,避免出现全黑图片
if ((flag>3)&&(frame != null)) {
break;
}
flag++;
}
ImageIO.write(FrameToBufferedImage(frame), "jpg", targetFile);
ff.close();
ff.stop();
}
return null;
}
private static RenderedImage FrameToBufferedImage(Frame frame) {
//创建BufferedImage对象
Java2DFrameConverter converter = new Java2DFrameConverter();
BufferedImage bufferedImage = converter.getBufferedImage(frame);
return bufferedImage;
}
// public static void main(String[] args) {
// try {
//// getTempPath("http://jyt.fty.pw:8080/videos/guoyifang/a2966518-03dd-4a31-b05b-5c52db6baf73.mp4", "D:\\test.jpg");
// getTempPath("C:\\uploadFile\\test.jpg", "C:\\uploadFile\\f244965ee774152aaa8618837d24b1a6.mp4");
// } catch (Exception e) {
// e.printStackTrace();
// }
// }
}
...@@ -87,7 +87,7 @@ ...@@ -87,7 +87,7 @@
( SELECT count(*) FROM db_order WHERE `status` = '4' ) AS accomplish, ( SELECT count(*) FROM db_order WHERE `status` = '4' ) AS accomplish,
( SELECT count(*) FROM db_order WHERE `status` = '1' ) AS reject, ( SELECT count(*) FROM db_order WHERE `status` = '1' ) AS reject,
( SELECT count(*) FROM db_order WHERE `status` = '6' ) AS refund, ( SELECT count(*) FROM db_order WHERE `status` = '6' ) AS refund,
( SELECT CONCAT(TRUNCATE(SUM( actual_amount )/10000,2),'万元') FROM db_order WHERE `status` = '4' ) AS totalMoney, ( SELECT CONCAT(TRUNCATE(SUM( pay_amount )/10000,2),'万元') FROM db_order WHERE `status` = '4' ) AS totalMoney,
CONCAT(t.m,'-',t.w) AS contrastOrder CONCAT(t.m,'-',t.w) AS contrastOrder
FROM FROM
...@@ -112,17 +112,17 @@ ...@@ -112,17 +112,17 @@
( SELECT count(*) FROM db_order WHERE `status` = '4' ) AS accomplish, ( SELECT count(*) FROM db_order WHERE `status` = '4' ) AS accomplish,
( SELECT count(*) FROM db_order WHERE `status` = '1' ) AS reject, ( SELECT count(*) FROM db_order WHERE `status` = '1' ) AS reject,
( SELECT count(*) FROM db_order WHERE `status` = '6' ) AS refund, ( SELECT count(*) FROM db_order WHERE `status` = '6' ) AS refund,
( SELECT TRUNCATE ( SUM( actual_amount )/ 10000, 2 ) FROM db_order WHERE `status` = '4' ) AS totalMoney, ( SELECT TRUNCATE ( SUM( pay_amount )/ 10000, 2 ) FROM db_order WHERE `status` = '4' ) AS money,
(SELECT count(*) AS w FROM db_order WHERE `status` not in (0,4)) AS NoAccomplish , (SELECT count(*) AS w FROM db_order WHERE `status` not in (0,4)) AS NoAccomplish ,
(select count(*) from db_order) as sum (select count(*) from db_order) as sum
FROM FROM
DUAL DUAL
</select> </select>
<update id="unpaidJob" > <update id="unpaidJob" >
update db_order set status='1',modify_time=NOW() where status=2 and modify_time&lt;=DATE_SUB(SYSDATE(),INTERVAL 1 hour) update db_order set status='1',modify_time=NOW(),reasons_for_rejection='超时未支付' where status=2 and modify_time&lt;=DATE_SUB(SYSDATE(),INTERVAL 1 hour)
</update> </update>
<update id="completedJob"> <update id="completedJob">
update db_order set status='4',modify_time=NOW() where status='3' and DATE_ADD(repair_time, INTERVAL 2 DAY)>=NOW() update db_order set status='4',modify_time=NOW() where status='3' and DATE_ADD(repair_time, INTERVAL 2 DAY)&lt;=NOW()
</update> </update>
</mapper> </mapper>
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