Commit eea4f255 authored by hezhen's avatar hezhen

Merge branch 'base-modify' of http://113.105.137.151:22280/youjj/cloud-platform into base-modify

parents e6b73a7d 8c345442
...@@ -16,9 +16,7 @@ import io.swagger.annotations.Api; ...@@ -16,9 +16,7 @@ import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import org.apache.commons.io.IOUtils; import org.apache.commons.io.IOUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpStatus; import org.springframework.http.*;
import org.springframework.http.MediaType;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile; import org.springframework.web.multipart.MultipartFile;
...@@ -26,6 +24,7 @@ import javax.servlet.http.HttpServletRequest; ...@@ -26,6 +24,7 @@ import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import java.io.IOException; import java.io.IOException;
import java.io.InputStream; import java.io.InputStream;
import java.nio.charset.Charset;
import java.util.List; import java.util.List;
/** /**
...@@ -72,19 +71,20 @@ public class UserMemberAdminController { ...@@ -72,19 +71,20 @@ public class UserMemberAdminController {
@ApiOperation("会员excel模板下载") @ApiOperation("会员excel模板下载")
@GetMapping(value = "/app/unauth/user/excel_model/dowload",produces = "application/vnd.ms-excel") @GetMapping(value = "/app/unauth/user/excel_model/dowload")
public ResponseEntity<byte[]> dowloadUserMemberExcelModel(HttpServletResponse response){ public ResponseEntity<byte[]> dowloadUserMemberExcelModel(){
// 重置response
response.reset();
response.setCharacterEncoding("utf-8");
// response.setContentType("application/vnd.ms-excel");
response.addHeader("Content-Disposition", "attachment;filename=usermember.xlsx"); HttpHeaders headers = new HttpHeaders();
// headers.add("Content-Disposition","attachment;filename=usermember.xlsx");
// headers.add("Content-Type","application/vnd.ms-excel");
headers.setContentType(MediaType.MULTIPART_FORM_DATA);
headers.setContentDisposition(ContentDisposition.builder("attachment").filename("usermember.xlsx", Charset.forName("UTF-8")).build());
InputStream inputStream = AdminBootstrap.class.getClassLoader().getResourceAsStream("file/usermember.xlsx"); InputStream inputStream = AdminBootstrap.class.getClassLoader().getResourceAsStream("file/usermember.xlsx");
try { try {
response.setContentLength(inputStream.available()); headers.setContentLength(Long.valueOf(inputStream.available()));
byte[] bytes = IOUtils.toByteArray(inputStream); byte[] bytes = IOUtils.toByteArray(inputStream);
return ResponseEntity.ok(bytes); inputStream.close();
return new ResponseEntity<>(bytes,headers,HttpStatus.OK);
} catch (IOException e) { } catch (IOException e) {
e.printStackTrace(); e.printStackTrace();
} }
......
package com.github.wxiaoqi.security.api.vo.config; package com.github.wxiaoqi.security.api.vo.config;
import feign.Logger;
import feign.RequestInterceptor; import feign.RequestInterceptor;
import feign.RequestTemplate; import feign.RequestTemplate;
import org.springframework.util.StringUtils;
import org.springframework.web.context.request.RequestAttributes; import org.springframework.web.context.request.RequestAttributes;
import org.springframework.web.context.request.RequestContextHolder; import org.springframework.web.context.request.RequestContextHolder;
import org.springframework.web.context.request.ServletRequestAttributes; import org.springframework.web.context.request.ServletRequestAttributes;
...@@ -38,6 +36,4 @@ public class HeaderConfig implements RequestInterceptor { ...@@ -38,6 +36,4 @@ public class HeaderConfig implements RequestInterceptor {
} }
} }
} }
} }
package com.xxfc.platform.order.entity;
import lombok.Data;
import javax.persistence.Column;
import java.math.BigDecimal;
import java.math.BigInteger;
import java.util.Date;
@Data
public class DailyOrderStatistics {
@Column(name = "one_day")
private System oneDay;
@Column(name = "total_orders")
private BigInteger totalOrders;
@Column(name = "actual_total_income")
private BigDecimal actualTotalIncome;
}
package com.xxfc.platform.order.entity;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.joda.time.DateTime;
import org.springframework.format.annotation.DateTimeFormat;
import tk.mybatis.mapper.annotation.KeySql;
import tk.mybatis.mapper.code.IdentityDialect;
import javax.persistence.Column;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;
import java.math.BigDecimal;
import java.math.BigInteger;
import java.util.Date;
/**
* 每日租车订单统计
* @author Administrator
*/
@Data
@Table(name = "daily_vehicle_order_statistics")
public class DailyVehicleOrderStatistics {
@Id
@GeneratedValue(generator = "JDBC")
private Integer id;
/**
* 日期
*/
@Column(name = "one_day")
private String oneDay;
/**
* 成交总金额
*/
@Column(name = "gmv")
private BigDecimal gmv;
/**
* 预交押金总额
*/
@Column(name = "security_deposit")
private BigDecimal securityDeposit;
/**
* 退还押金总额
*/
@Column(name = "refund_security_deposit")
private BigDecimal refundSecurityDeposit;
/**
* 赔偿总额
*/
@Column(name = "compensation")
private BigDecimal compensation;
/**
* 违章总额
*/
@Column(name = "forfeit")
private BigDecimal violationMoney;
/**
* 取消订单总额
*/
@Column(name = "penal_sum")
private BigDecimal penalSum;
/**
* 延期总额
*/
@Column(name = "postpone")
private BigDecimal postpone;
/**
* 创建时间
*/
@Column(name = "crt_time")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date crtTime;
}
...@@ -39,6 +39,7 @@ import lombok.extern.slf4j.Slf4j; ...@@ -39,6 +39,7 @@ import lombok.extern.slf4j.Slf4j;
import org.apache.commons.jexl2.MapContext; import org.apache.commons.jexl2.MapContext;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
...@@ -376,16 +377,7 @@ public class BaseOrderBiz extends BaseBiz<BaseOrderMapper,BaseOrder> { ...@@ -376,16 +377,7 @@ public class BaseOrderBiz extends BaseBiz<BaseOrderMapper,BaseOrder> {
} }
} }
public boolean getTotalOrder() {
mapper.getTotalOrder();
return false;
}
// @Scheduled(cron = "0 0 2 * * ? ")
// private void countDailyOrdersRegularly(){
// DailyOrderStatistics dailyOrderStatistics= mapper.getTotalOrder();
// }
} }
\ No newline at end of file
package com.xxfc.platform.order.biz;
import com.alibaba.fastjson.JSON;
import com.github.wxiaoqi.security.common.biz.BaseBiz;
import com.xxfc.platform.order.entity.DailyVehicleOrderStatistics;
import com.xxfc.platform.order.mapper.DailyVehicleOrderStatisticsMapper;
import com.xxfc.platform.order.pojo.DedDetailDTO;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.beanutils.BeanUtils;
import org.apache.commons.collections.CollectionUtils;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.transaction.interceptor.TransactionAspectSupport;
import java.lang.reflect.InvocationTargetException;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@Slf4j
@Service
public class DailyVehicleOrderStatisticsBiz extends BaseBiz<DailyVehicleOrderStatisticsMapper, DailyVehicleOrderStatistics> {
private final Integer TYPE_DEFERRED = 1;
private final Integer TYPE_DAMAGE = 2;
@Transactional(rollbackFor = Exception.class)
public boolean getTotalOrder() {
try {
HashMap<String, Object> resultMap = new HashMap<>();
// 获取每日租车订单成交金和押金总额
Map<String, BigDecimal> gmvAndMarginTotal = mapper.getGmvAndMarginTotal();
resultMap.putAll(gmvAndMarginTotal);
// 获取车辆
BigDecimal penalSum = mapper.getPenalSum();
resultMap.put("penalSum", penalSum);
// 获取订单退还押金总额
BigDecimal refundSecurityDeposit = mapper.getRefundSecurityDeposit();
resultMap.put("refundSecurityDeposit", refundSecurityDeposit);
// 获取违章查询总和
BigDecimal violationMoney = mapper.getViolationMoney();
resultMap.put("violationMoney", violationMoney);
// 获取赔偿和延期JSON字符串
List<String> compensationAndPostpone = mapper.getCompensationAndPostpone();
// 获取赔偿和延期JSON字符串转换为map
Map<String, BigDecimal> cpMap = getCompensationAndPostponeMap(compensationAndPostpone);
resultMap.putAll(cpMap);
DailyVehicleOrderStatistics orderStatistics = new DailyVehicleOrderStatistics();
BeanUtils.copyProperties(orderStatistics,resultMap);
super.insertSelective(orderStatistics);
return true;
} catch (Exception e) {
e.printStackTrace();
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
return false;
}
}
/**
* 获取赔偿总额和延期总额
*/
private Map<String, BigDecimal> getCompensationAndPostponeMap(List<String> compensationAndPostpone) {
if (CollectionUtils.isNotEmpty(compensationAndPostpone)) {
List<DedDetailDTO> sumDedDetailDTOs = new ArrayList<>();
for (String value : compensationAndPostpone) {
List<DedDetailDTO> dedDetailDTOS = JSON.parseArray(value, DedDetailDTO.class);
sumDedDetailDTOs.addAll(dedDetailDTOS);
}
// 获取赔偿金额总和
BigDecimal compensation = get(sumDedDetailDTOs, TYPE_DAMAGE);
// 获取延期金额总和
BigDecimal postpone = get(sumDedDetailDTOs, TYPE_DEFERRED);
Map<String, BigDecimal> resultMap = new HashMap<>();
resultMap.put("compensation", compensation);
resultMap.put("postpone", postpone);
return resultMap;
}
return new HashMap<String, BigDecimal>();
}
/**
* 根据type获取对应的金额总和
*
* @param sumDedDetailDTOs
* @param TYPE_DAMAGE
* @return
*/
private BigDecimal get(List<DedDetailDTO> sumDedDetailDTOs, Integer TYPE_DAMAGE) {
if (CollectionUtils.isNotEmpty(sumDedDetailDTOs)) {
BigDecimal aggregateAmount = sumDedDetailDTOs.stream()
.filter(d -> TYPE_DAMAGE.equals(d.getType()))
.map(DedDetailDTO::getCost)
.reduce(BigDecimal.ZERO, BigDecimal::add);
return aggregateAmount;
}
return null;
}
// @Scheduled(cron = "0 0 2 * * ? ")
// private void countDailyOrdersRegularly(){
// DailyOrderStatistics dailyOrderStatistics= mapper.getTotalOrder();
// }
}
package com.xxfc.platform.order.biz; package com.xxfc.platform.order.biz;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.StrUtil;
import cn.hutool.json.JSONUtil; import cn.hutool.json.JSONUtil;
import com.github.wxiaoqi.security.common.util.IntervalUtil; import com.github.wxiaoqi.security.common.util.IntervalUtil;
...@@ -196,10 +197,9 @@ public class OrderRefundBiz extends BaseBiz<OrderRefundMapper,OrderRefund> { ...@@ -196,10 +197,9 @@ public class OrderRefundBiz extends BaseBiz<OrderRefundMapper,OrderRefund> {
String refundTradeNo = null; String refundTradeNo = null;
//0 小于 退款金额 //0 小于 退款金额
if(BigDecimal.ZERO.compareTo(refundAmount) < 0) { if(BigDecimal.ZERO.compareTo(refundAmount) < 0) {
OrderRefundVo orv = new OrderRefundVo(){{ OrderRefundVo orv = new OrderRefundVo();
setAmount(baseOrder.getRealAmount().multiply(new BigDecimal("100")).intValue()); orv.setAmount(baseOrder.getRealAmount().multiply(new BigDecimal("100")).intValue());
setOrderNo(baseOrder.getNo()); orv.setOrderNo(baseOrder.getNo());
}};
orv.setRefundDesc(refundDesc+ refundAmount.toString()); orv.setRefundDesc(refundDesc+ refundAmount.toString());
orv.setRefundAmount(refundAmount.multiply(new BigDecimal("100")).intValue()); orv.setRefundAmount(refundAmount.multiply(new BigDecimal("100")).intValue());
refundTradeNo = thirdFeign.refund(orv).getData(); refundTradeNo = thirdFeign.refund(orv).getData();
...@@ -209,13 +209,13 @@ public class OrderRefundBiz extends BaseBiz<OrderRefundMapper,OrderRefund> { ...@@ -209,13 +209,13 @@ public class OrderRefundBiz extends BaseBiz<OrderRefundMapper,OrderRefund> {
Integer flag = addOrderRefund(baseOrder.getId(), refundDesc, originalRefundAmount, refundAmount, refundTradeNo, refundType); Integer flag = addOrderRefund(baseOrder.getId(), refundDesc, originalRefundAmount, refundAmount, refundTradeNo, refundType);
//更新订单的退款状态和退款时间 //更新订单的退款状态和退款时间
BaseOrder updateBaseOrder = new BaseOrder();
updateBaseOrder.setId(baseOrder.getId());
updateBaseOrder.setRefundStatus(refundStatus);
updateBaseOrder.setRefundTime(System.currentTimeMillis());
updateBaseOrder.setVersion(baseOrder.getVersion());
if(SYS_TRUE.equals(flag) && null != refundStatus) { if(SYS_TRUE.equals(flag) && null != refundStatus) {
baseOrderBiz.updateSelectiveByIdReT(new BaseOrder(){{ BeanUtil.copyProperties(baseOrderBiz.updateSelectiveByIdReT(updateBaseOrder), baseOrder);
setId(baseOrder.getId());
setRefundStatus(refundStatus);
setRefundTime(System.currentTimeMillis());
setVersion(baseOrder.getVersion());
}});
} }
} }
......
package com.xxfc.platform.order.jobhandler; package com.xxfc.platform.order.jobhandler;
import com.xxfc.platform.order.biz.BaseOrderBiz; import com.xxfc.platform.order.biz.BaseOrderBiz;
import com.xxfc.platform.order.entity.DailyOrderStatistics; import com.xxfc.platform.order.biz.DailyVehicleOrderStatisticsBiz;
import com.xxfc.platform.order.mapper.BaseOrderMapper;
import com.xxl.job.core.biz.model.ReturnT; import com.xxl.job.core.biz.model.ReturnT;
import com.xxl.job.core.handler.IJobHandler; import com.xxl.job.core.handler.IJobHandler;
import com.xxl.job.core.handler.annotation.JobHandler; import com.xxl.job.core.handler.annotation.JobHandler;
...@@ -14,22 +13,23 @@ import org.springframework.stereotype.Component; ...@@ -14,22 +13,23 @@ import org.springframework.stereotype.Component;
/** /**
* 每天2定时统计前一天的数据 * 每天2定时统计前一天的数据
*/ */
@JobHandler(value = "baseOrderStatistics") @JobHandler(value = "baseOrderStatisticsHandler")
@Component @Component
@Slf4j @Slf4j
public class BaseOrderStatisticsJobHandler extends IJobHandler { public class BaseOrderStatisticsJobHandler extends IJobHandler {
@Autowired @Autowired
private BaseOrderBiz baseOrderBiz; private DailyVehicleOrderStatisticsBiz statisticsBiz;
@Override @Override
public ReturnT<String> execute(String s) throws Exception { public ReturnT<String> execute(String s) throws Exception {
try { try {
baseOrderBiz.getTotalOrder();
ReturnT returnT = new ReturnT(){{ XxlJobLogger.log("-----定时器进入---baseOrderStatisticsHandler---");
setCode(100); // log.info("-----定时器进入---baseOrderStatisticsHandler---");
setMsg("成功"); statisticsBiz.getTotalOrder();
}}; ReturnT returnT = new ReturnT();
returnT.setCode(100);
returnT.setMsg("成功");
return returnT; return returnT;
} catch (Exception e) { } catch (Exception e) {
XxlJobLogger.log(e); XxlJobLogger.log(e);
......
package com.xxfc.platform.order.mapper; package com.xxfc.platform.order.mapper;
import com.xxfc.platform.order.entity.BaseOrder; import com.xxfc.platform.order.entity.BaseOrder;
import com.xxfc.platform.order.entity.DailyOrderStatistics;
import com.xxfc.platform.order.pojo.order.OrderListVo; import com.xxfc.platform.order.pojo.order.OrderListVo;
import com.xxfc.platform.order.pojo.order.OrderPageVO; import com.xxfc.platform.order.pojo.order.OrderPageVO;
import tk.mybatis.mapper.common.Mapper; import tk.mybatis.mapper.common.Mapper;
import java.math.BigDecimal;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
...@@ -28,5 +28,4 @@ public interface BaseOrderMapper extends Mapper<BaseOrder> { ...@@ -28,5 +28,4 @@ public interface BaseOrderMapper extends Mapper<BaseOrder> {
public OrderPageVO getOrderDetail(String no); public OrderPageVO getOrderDetail(String no);
DailyOrderStatistics getTotalOrder();
} }
package com.xxfc.platform.order.mapper;
import com.xxfc.platform.order.entity.DailyVehicleOrderStatistics;
import tk.mybatis.mapper.common.Mapper;
import java.math.BigDecimal;
import java.util.List;
import java.util.Map;
/**
* 每日统计数据
* @author Administrator
*/
public interface DailyVehicleOrderStatisticsMapper extends Mapper<DailyVehicleOrderStatistics> {
Map<String, BigDecimal> getGmvAndMarginTotal();
List<String> getCompensationAndPostpone();
BigDecimal getPenalSum();
BigDecimal getRefundSecurityDeposit();
BigDecimal getViolationMoney();
}
...@@ -178,7 +178,7 @@ public class OrderRentVehicleService extends AbstractOrderHandle<OrderRentVehicl ...@@ -178,7 +178,7 @@ public class OrderRentVehicleService extends AbstractOrderHandle<OrderRentVehicl
BigDecimal vehicleAmount = BigDecimal.ZERO; BigDecimal vehicleAmount = BigDecimal.ZERO;
BigDecimal driverAmount = BigDecimal.ZERO; BigDecimal driverAmount = BigDecimal.ZERO;
BigDecimal damageSafeAmount = BigDecimal.ZERO; BigDecimal damageSafeAmount = BigDecimal.ZERO;
BigDecimal modelAmount = BigDecimal.ZERO; // BigDecimal modelAmount = BigDecimal.ZERO;
BigDecimal couponAmount = BigDecimal.ZERO; BigDecimal couponAmount = BigDecimal.ZERO;
Integer vehicleDayNum = 0; Integer vehicleDayNum = 0;
Integer freeDayNum = 0; Integer freeDayNum = 0;
...@@ -243,8 +243,6 @@ public class OrderRentVehicleService extends AbstractOrderHandle<OrderRentVehicl ...@@ -243,8 +243,6 @@ public class OrderRentVehicleService extends AbstractOrderHandle<OrderRentVehicl
} }
detail.setRebate(handleDiscountDTO.getRebate()); detail.setRebate(handleDiscountDTO.getRebate());
vehicleOrderItem.setUnitPrice(handleDiscountDTO.getModelAmount()); vehicleOrderItem.setUnitPrice(handleDiscountDTO.getModelAmount());
}else {
modelAmount = vehicleModel.getPrice();
} }
//如果有使用会员权益或者优惠券,则设置订单已优惠 //如果有使用会员权益或者优惠券,则设置订单已优惠
...@@ -300,7 +298,7 @@ public class OrderRentVehicleService extends AbstractOrderHandle<OrderRentVehicl ...@@ -300,7 +298,7 @@ public class OrderRentVehicleService extends AbstractOrderHandle<OrderRentVehicl
rvp.setDriverAmount(driverAmount); rvp.setDriverAmount(driverAmount);
rvp.setVehicleAmount(vehicleAmount); rvp.setVehicleAmount(vehicleAmount);
rvp.setDamageSafeAmount(damageSafeAmount); rvp.setDamageSafeAmount(damageSafeAmount);
rvp.setModelAmount(modelAmount); rvp.setModelAmount(vehicleOrderItem.getUnitPrice());
rvp.setVehicleDayNum(vehicleDayNum); rvp.setVehicleDayNum(vehicleDayNum);
//设置收费明细 //设置收费明细
......
...@@ -219,33 +219,6 @@ ...@@ -219,33 +219,6 @@
where no = #{no} where no = #{no}
</select> </select>
<select id="getTotalOrder" resultType="com.xxfc.platform.order.entity.DailyOrderStatistics">
select
date_format(pay_time,'%Y-%c-%d') as oneDay,
sum(1) as totalOrders,
sum(pay_time)as actualTotalIncome
from
base_order
where
date(pay_time)=date(now())-1
group by
date_format(pay_time,'%d')
</select>
<!-- <select id="getTotalOrder" resultType="com.xxfc.platform.order.entity.DailyOrderStatistics">-->
<!-- select-->
<!-- date_format(refund_time,'%Y-%c-%d') as oneDay,-->
<!-- sum(1) as totalOrders,-->
<!-- sum(refund_time)as actualTotalIncome-->
<!-- from-->
<!-- base_order-->
<!-- where-->
<!-- date(refund_time)=date(now())-1-->
<!-- group by-->
<!-- date_format(refund_time,'%d')-->
<!-- </select>-->
</mapper> </mapper>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.xxfc.platform.order.mapper.DailyVehicleOrderStatisticsMapper">
<!-- 获取每日租车订单成交金和押金总额-->
<select id="getGmvAndMarginTotal" resultType="HashMap">
select
COALESCE(date_format(FROM_UNIXTIME(b.pay_time/1000),'%Y-%c-%d'),date(DATE_SUB(now(),interval 1 day))) as oneDay,
IFNULL(SUM(b.real_amount-v.deposit),0) as gmv,
IFNULL(SUM(v.deposit),0) as marginTotal
from
base_order b
left join
order_rent_vehicle_detail v
on
b.id=v.order_id
where
b.type=1
AND
date(FROM_UNIXTIME(b.pay_time/1000))=date(DATE_SUB(now(),interval 1 day))
</select>
<!-- 退还押金总额-->
<select id="getRefundSecurityDeposit" resultType="BigDecimal">
SELECT
IFNULL(SUM(r.refund_amount),0) as refundSecurityDeposit
FROM
base_order o
left join
order_refund r
on
o.id=r.order_id
WHERE
o.type=1
and
r.refund_status=1
and
r.refund_type >1
and
date(FROM_UNIXTIME(r.refund_time/1000))=date(DATE_SUB(now(),interval 1 day))
</select>
<!-- 取消订单扣除款项总和-->
<select id="getPenalSum" resultType="BigDecimal">
SELECT
IFNULL(SUM(r.deduct_amount),0) as penalSum
FROM
base_order o
left join
order_refund r
on
o.id=r.order_id
WHERE
o.type=1
and
r.refund_status=1
and
r.refund_type =1
and
date(FROM_UNIXTIME(r.refund_time/1000))=date(DATE_SUB(now(),interval 1 day))
</select>
<!-- 获取赔偿和延期JSON字符串-->
<select id="getCompensationAndPostpone" resultType="List">
SELECT
ded_detail
FROM
order_refund r
LEFT JOIN
order_vehicle_crosstown c
on
r.order_id = c.order_id
WHERE
r.refund_status=1
and
r.refund_type = 3
and
c.type=2
and
date(FROM_UNIXTIME(refund_time/1000))=date(DATE_SUB(now(),interval 1 day))
</select>
<select id="getViolationMoney" resultType="BigDecimal">
SELECT
v.price
FROM
order_refund r
left JOIN
base_order o
on
o.id=r.order_id
LEFT JOIN
order_rent_vehicle_detail d
on
o.id = d.order_id
left join
order_violation v
on
d.id = v.detail_id
WHERE
r.refund_status=1
and
r.refund_type = 4
and
date(FROM_UNIXTIME(r.refund_time/1000))=date(DATE_SUB(now(),interval 1 day))
</select>
</mapper>
\ No newline at end of file
...@@ -16,15 +16,13 @@ import org.apache.http.HttpResponse; ...@@ -16,15 +16,13 @@ import org.apache.http.HttpResponse;
import org.apache.http.util.EntityUtils; import org.apache.http.util.EntityUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value; import org.springframework.beans.factory.annotation.Value;
import org.springframework.core.task.TaskExecutor;
import org.springframework.data.redis.core.RedisTemplate; import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.scheduling.annotation.Scheduled; import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.sql.SQLException; import java.sql.SQLException;
import java.util.ArrayList; import java.util.*;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.regex.Matcher; import java.util.regex.Matcher;
import java.util.regex.Pattern; import java.util.regex.Pattern;
...@@ -208,8 +206,8 @@ public class TrafficViolationsService { ...@@ -208,8 +206,8 @@ public class TrafficViolationsService {
* 定时修改车牌类型 * 定时修改车牌类型
* @throws SQLException * @throws SQLException
*/ */
@Scheduled(cron = "0 0 0 0/7 * ?") // @Scheduled(cron = "0 0 0 0/7 * ?")
public void updateLicensePlateType() throws SQLException { private void updateLicensePlateType() throws SQLException {
List<LicensePlateType> licensePlateTypes = licensePlateTypeBiz.selectListAll(); List<LicensePlateType> licensePlateTypes = licensePlateTypeBiz.selectListAll();
licensePlateTypeBiz.updateLicensePlateType(licensePlateTypes); licensePlateTypeBiz.updateLicensePlateType(licensePlateTypes);
} }
......
...@@ -98,7 +98,7 @@ public interface VehicleFeign { ...@@ -98,7 +98,7 @@ public interface VehicleFeign {
* @return * @return
*/ */
@PostMapping("/sysRegion/getSysRegion") @PostMapping("/sysRegion/getSysRegion")
ObjectRestResponse<List<SysRegion>> getSysRegion(Set<Integer> idSet); ObjectRestResponse<List<SysRegion>> getSysRegion(@RequestBody Set<Integer> idSet);
/** /**
* 获取公司所在的城市 * 获取公司所在的城市
......
...@@ -93,11 +93,14 @@ public class AccompanyingItemBiz extends BaseBiz<AccompanyingItemMapper, Accompa ...@@ -93,11 +93,14 @@ public class AccompanyingItemBiz extends BaseBiz<AccompanyingItemMapper, Accompa
} }
public List<AccompanyingItemVo> listAllItem(){ public List<AccompanyingItemVo> listAllItem(List<Integer> types){
List<AccompanyingItemVo> accompanyingItemVos = new ArrayList<>(); List<AccompanyingItemVo> accompanyingItemVos = new ArrayList<>();
Example example = new Example(AccompanyingItem.class); Example example = new Example(AccompanyingItem.class);
Example.Criteria criteria = example.createCriteria(); Example.Criteria criteria = example.createCriteria();
if (CollectionUtils.isNotEmpty(types)){
criteria.andIn("type",types);
}
criteria.andEqualTo("isDel",0); criteria.andEqualTo("isDel",0);
List<AccompanyingItem> accompanyingItems = mapper.selectByExample(example); List<AccompanyingItem> accompanyingItems = mapper.selectByExample(example);
if (CollectionUtils.isEmpty(accompanyingItems)){ if (CollectionUtils.isEmpty(accompanyingItems)){
......
...@@ -16,6 +16,7 @@ import com.xxfc.platform.vehicle.pojo.vo.AccompanyingItemVo; ...@@ -16,6 +16,7 @@ import com.xxfc.platform.vehicle.pojo.vo.AccompanyingItemVo;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import java.util.Collections;
import java.util.List; import java.util.List;
/** /**
...@@ -75,7 +76,13 @@ public class AccompanyingItemController extends BaseController<AccompanyingItemB ...@@ -75,7 +76,13 @@ public class AccompanyingItemController extends BaseController<AccompanyingItemB
@GetMapping("/app/unauth/items") @GetMapping("/app/unauth/items")
public RestResponse<List<AccompanyingItemVo>> listAccompanyingItemVo(){ public RestResponse<List<AccompanyingItemVo>> listAccompanyingItemVo(){
List<AccompanyingItemVo> accompanyingItemVos = baseBiz.listAllItem(); List<AccompanyingItemVo> accompanyingItemVos = baseBiz.listAllItem(Collections.EMPTY_LIST);
return RestResponse.codeAndData(RestResponse.SUC_CODE,accompanyingItemVos);
}
@GetMapping("/app/unauth/type_items")
public RestResponse<List<AccompanyingItemVo>> listAccompanyingItemVoByTypes(@RequestParam(value = "type",required = false) List<Integer> type){
List<AccompanyingItemVo> accompanyingItemVos = baseBiz.listAllItem(type);
return RestResponse.codeAndData(RestResponse.SUC_CODE,accompanyingItemVos); return RestResponse.codeAndData(RestResponse.SUC_CODE,accompanyingItemVos);
} }
} }
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