新增小程序默认账号用于审核

This commit is contained in:
yuyang 2021-09-07 10:00:04 +08:00
parent 0ce055e9b0
commit 921ff17a24
9 changed files with 466 additions and 40 deletions

View File

@ -5,6 +5,8 @@ import cn.hutool.core.date.DateUtil;
import com.xhpc.common.core.web.controller.BaseController;
import com.xhpc.common.core.web.domain.AjaxResult;
import com.xhpc.common.core.web.page.TableDataInfo;
import com.xhpc.order.domain.XhpcStatisticsTimeInterval;
import com.xhpc.order.dto.XhpcChargeHistoryOrder;
import com.xhpc.order.service.IXhpcChargeOrderService;
import com.xhpc.order.service.IXhpcHistoryOrderService;
import io.swagger.annotations.Api;
@ -15,6 +17,7 @@ import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.util.Date;
import java.util.List;
import java.util.Map;
@ -71,16 +74,47 @@ public class XhpcHistoryOrderController extends BaseController {
//获取500条待统计历史订单
//跨时段跨费率计费模型
//小时统计日期统计电站统计终端统计运营商统计流量方统计
List<Map<String,Object>> list = xhpcHistoryOrderService.getStatistisList(500);
List<XhpcChargeHistoryOrder> list = xhpcHistoryOrderService.getStatistisList(500);
if(list !=null && list.size()>0){
//开始时间和结束时间之差是否超过 30分钟
for (Map<String,Object> map:list) {
Date startTime = (Date) map.get("startTime");
Date endTime = (Date) map.get("endTime");
Long rateModelId = Long.valueOf(map.get("rateModelId").toString());
Long userId =Long.valueOf(map.get("userId").toString());
Long chargeOrderId =Long.valueOf(map.get("chargeOrderId").toString());
long betweenDay = DateUtil.between(DateUtil.parse(map.get("startTime").toString(), "yyyy-MM-dd"), DateUtil.parse(map.get("endTime").toString(), "yyyy-MM-dd"), DateUnit.DAY);
for (XhpcChargeHistoryOrder xhpcChargeHistoryOrder:list) {
Date startTime = xhpcChargeHistoryOrder.getStartTime();
Date endTime = xhpcChargeHistoryOrder.getEndTime();
Long rateModelId = xhpcChargeHistoryOrder.getRateModelId();
int source = xhpcChargeHistoryOrder.getSource();
Long userId =xhpcChargeHistoryOrder.getUserId();
Long operatorId =xhpcChargeHistoryOrder.getOperatorId();
Long chargeOrderId =xhpcChargeHistoryOrder.getChargeOrderId();
//充电时长
Long chargingTimeNumber =xhpcChargeHistoryOrder.getChargingTimeNumber();
//电费
BigDecimal powerPrice =new BigDecimal(0);
//服务费
BigDecimal servicePrice =new BigDecimal(0);
//订单总价
BigDecimal totalPrice =new BigDecimal(0);
//电站活动抵扣--抵扣的总金额
BigDecimal promotionDiscount =new BigDecimal(0);
//实际价格-用户支付的钱
BigDecimal actPrice =new BigDecimal(0);
//实收电费-运营商电费
BigDecimal actPowerPrice =new BigDecimal(0);
//实收服务费-运营商服务费
BigDecimal actServicePrice =new BigDecimal(0);
//流量方总金额抽成
BigDecimal internetCommission =new BigDecimal(0);
//流量方服务费抽成
BigDecimal internetSvcCommission =new BigDecimal(0);
//平台总金额抽成
BigDecimal platformCommission =new BigDecimal(0);
//平台服务费抽成
BigDecimal platformSvcCommission =new BigDecimal(0);
//运维总抽成
BigDecimal operationCommission =new BigDecimal(0);
//运维服务费抽成
BigDecimal operationSvcCommission =new BigDecimal(0);
long betweenDay = DateUtil.between(DateUtil.parse(xhpcChargeHistoryOrder.getStartTime().toString(), "yyyy-MM-dd"), DateUtil.parse(xhpcChargeHistoryOrder.getEndTime().toString(), "yyyy-MM-dd"), DateUnit.DAY);
if(betweenDay==0){
//没有跨天
//获取费率
@ -88,12 +122,48 @@ public class XhpcHistoryOrderController extends BaseController {
String endTime1 = DateUtil.formatTime(endTime);
int startHour = DateUtil.hour(startTime, true);
int endHour = DateUtil.hour(endTime, true);
if(endHour==startHour){
//没有跨时段
List<Map<String, Object>> reatTimeList = xhpcHistoryOrderService.getReatTimeList(startTime1, endTime1, rateModelId);
for (Map<String, Object> mapTime:reatTimeList) {
int size = reatTimeList.size();
if(size==1){
BigDecimal totalPrice1 = xhpcChargeHistoryOrder.getTotalPrice();
BigDecimal powerFee = new BigDecimal(reatTimeList.get(0).get("powerFee").toString());
powerPrice = powerFee.multiply(totalPrice1).setScale(2, RoundingMode.HALF_UP);
BigDecimal serviceFee = new BigDecimal(reatTimeList.get(0).get("serviceFee").toString());
servicePrice=serviceFee.multiply(totalPrice1).setScale(2, RoundingMode.HALF_UP);
List<Map<String, Object>> reatTimeList = xhpcHistoryOrderService.getReatTimeList(startTime1, endTime1, rateModelId);
XhpcStatisticsTimeInterval xhpc = new XhpcStatisticsTimeInterval();
xhpc.setStatus(endHour+1);
xhpc.setChargingDegree(totalPrice1);
xhpc.setChargingTime(new BigDecimal(chargingTimeNumber/3600).setScale(2, RoundingMode.HALF_UP));
xhpc.setChargingNumber(1);
xhpc.setPowerPrice(powerPrice);
xhpc.setServicePrice(servicePrice);
xhpc.setTotalPrice(totalPrice);
xhpc.setPromotionDiscount(promotionDiscount);
xhpc.setActPrice(actPrice);
xhpc.setActPowerPrice(actPowerPrice);
xhpc.setActServicePrice(actServicePrice);
xhpc.setInternetCommission(internetCommission);
xhpc.setInternetSvcCommission(internetSvcCommission);
xhpc.setPlatformCommission(platformCommission);
xhpc.setPlatformSvcCommisssion(platformSvcCommission);
xhpc.setOperationCommission(operationCommission);
xhpc.setOperationSvcCommission(operationSvcCommission);
xhpc.setOperatorId(operatorId);
}
}
}
}
}
}

View File

@ -97,7 +97,7 @@ public class XhpcStatisticsTimeInterval extends BaseEntity {
/**
* 电站id
*/
private Long chargingPileId;
private Long chargingStationId;
/**
* 删除标志0代表存在 2代表删除
@ -319,14 +319,14 @@ public class XhpcStatisticsTimeInterval extends BaseEntity {
this.delFlag = delFlag;
}
public Long getChargingPileId() {
public Long getChargingStationId() {
return chargingPileId;
return chargingStationId;
}
public void setChargingPileId(Long chargingPileId) {
public void setChargingStationId(Long chargingStationId) {
this.chargingPileId = chargingPileId;
this.chargingStationId = chargingStationId;
}
public Long getTerminalId() {

View File

@ -0,0 +1,341 @@
package com.xhpc.order.dto;
import java.math.BigDecimal;
import java.util.Date;
/**
* @author yuyang
* @date 2021/9/6 17:16
* @Version 1.0
*/
public class XhpcChargeHistoryOrder {
/**
* 历史订单id
*/
private Long historyOrderId;
/**
* 订单总价
*/
private BigDecimal totalPrice;
/**
* 电站活动抵扣
*/
private BigDecimal promotionDiscount;
/**
* 实际价格
*/
private BigDecimal actPrice;
/**
* 实收电费
*/
private BigDecimal actPowerPrice;
/**
* 实收服务费
*/
private BigDecimal actServicePrice;
/**
* 流量方总金额抽成
*/
private BigDecimal internetCommission;
/**
* 流量方服务费抽成
*/
private BigDecimal internetSvcCommission;
/**
* 平台总金额抽成
*/
private BigDecimal platformCommission;
/**
* 平台服务费抽成
*/
private BigDecimal platformSvcCommisssion;
/**
* 运维总抽成
*/
private BigDecimal operationCommission;
/**
* 运维服务费抽成
*/
private BigDecimal operationSvcCommission;
/**
* 订单来源0C端用户 1流量用户
*/
private Integer source;
/**
* 充电订单id
*/
private Long chargeOrderId;
/**
* 电站id
*/
private Long chargingStationId;
/**
* 终端id
*/
private Long terminalId;
/**
* 开始时间
*/
private Date startTime;
/**
* 结束时间
*/
private Date endTime;
/**
* 充电时长
*/
private Long chargingTimeNumber;
/**
* 运营商id
*/
private Long operatorId;
/**
* 用户id(当类型为流量方时=流量方id)
*/
private Long userId;
/**
* 计费模型id
*/
private Long rateModelId;
public Long getHistoryOrderId() {
return historyOrderId;
}
public void setHistoryOrderId(Long historyOrderId) {
this.historyOrderId = historyOrderId;
}
public BigDecimal getTotalPrice() {
return totalPrice;
}
public void setTotalPrice(BigDecimal totalPrice) {
this.totalPrice = totalPrice;
}
public BigDecimal getPromotionDiscount() {
return promotionDiscount;
}
public void setPromotionDiscount(BigDecimal promotionDiscount) {
this.promotionDiscount = promotionDiscount;
}
public BigDecimal getActPrice() {
return actPrice;
}
public void setActPrice(BigDecimal actPrice) {
this.actPrice = actPrice;
}
public BigDecimal getActPowerPrice() {
return actPowerPrice;
}
public void setActPowerPrice(BigDecimal actPowerPrice) {
this.actPowerPrice = actPowerPrice;
}
public BigDecimal getActServicePrice() {
return actServicePrice;
}
public void setActServicePrice(BigDecimal actServicePrice) {
this.actServicePrice = actServicePrice;
}
public BigDecimal getInternetCommission() {
return internetCommission;
}
public void setInternetCommission(BigDecimal internetCommission) {
this.internetCommission = internetCommission;
}
public BigDecimal getInternetSvcCommission() {
return internetSvcCommission;
}
public void setInternetSvcCommission(BigDecimal internetSvcCommission) {
this.internetSvcCommission = internetSvcCommission;
}
public BigDecimal getPlatformCommission() {
return platformCommission;
}
public void setPlatformCommission(BigDecimal platformCommission) {
this.platformCommission = platformCommission;
}
public BigDecimal getPlatformSvcCommisssion() {
return platformSvcCommisssion;
}
public void setPlatformSvcCommisssion(BigDecimal platformSvcCommisssion) {
this.platformSvcCommisssion = platformSvcCommisssion;
}
public BigDecimal getOperationCommission() {
return operationCommission;
}
public void setOperationCommission(BigDecimal operationCommission) {
this.operationCommission = operationCommission;
}
public BigDecimal getOperationSvcCommission() {
return operationSvcCommission;
}
public void setOperationSvcCommission(BigDecimal operationSvcCommission) {
this.operationSvcCommission = operationSvcCommission;
}
public Integer getSource() {
return source;
}
public void setSource(Integer source) {
this.source = source;
}
public Long getChargeOrderId() {
return chargeOrderId;
}
public void setChargeOrderId(Long chargeOrderId) {
this.chargeOrderId = chargeOrderId;
}
public Long getChargingStationId() {
return chargingStationId;
}
public void setChargingStationId(Long chargingStationId) {
this.chargingStationId = chargingStationId;
}
public Long getTerminalId() {
return terminalId;
}
public void setTerminalId(Long terminalId) {
this.terminalId = terminalId;
}
public Date getStartTime() {
return startTime;
}
public void setStartTime(Date startTime) {
this.startTime = startTime;
}
public Date getEndTime() {
return endTime;
}
public void setEndTime(Date endTime) {
this.endTime = endTime;
}
public Long getChargingTimeNumber() {
return chargingTimeNumber;
}
public void setChargingTimeNumber(Long chargingTimeNumber) {
this.chargingTimeNumber = chargingTimeNumber;
}
public Long getOperatorId() {
return operatorId;
}
public void setOperatorId(Long operatorId) {
this.operatorId = operatorId;
}
public Long getUserId() {
return userId;
}
public void setUserId(Long userId) {
this.userId = userId;
}
public Long getRateModelId() {
return rateModelId;
}
public void setRateModelId(Long rateModelId) {
this.rateModelId = rateModelId;
}
}

View File

@ -1,6 +1,7 @@
package com.xhpc.order.mapper;
import com.xhpc.order.domain.XhpcHistoryOrder;
import com.xhpc.order.dto.XhpcChargeHistoryOrder;
import org.apache.ibatis.annotations.Param;
import java.util.List;
@ -98,5 +99,5 @@ public interface XhpcHistoryOrderMapper {
* @param number
* @return
*/
List<Map<String,Object>> getStatistisList(@Param("number")int number);
List<XhpcChargeHistoryOrder> getStatistisList(@Param("number")int number);
}

View File

@ -2,6 +2,7 @@ package com.xhpc.order.service;
import com.xhpc.common.core.web.domain.AjaxResult;
import com.xhpc.order.domain.XhpcHistoryOrder;
import com.xhpc.order.dto.XhpcChargeHistoryOrder;
import java.util.List;
import java.util.Map;
@ -64,6 +65,6 @@ public interface IXhpcHistoryOrderService {
* @param number
* @return
*/
List<Map<String,Object>> getStatistisList(int number);
List<XhpcChargeHistoryOrder> getStatistisList(int number);
}

View File

@ -6,6 +6,7 @@ import cn.hutool.core.date.DateUtil;
import com.xhpc.common.core.web.domain.AjaxResult;
import com.xhpc.order.domain.XhpcChargeOrder;
import com.xhpc.order.domain.XhpcHistoryOrder;
import com.xhpc.order.dto.XhpcChargeHistoryOrder;
import com.xhpc.order.mapper.XhpcHistoryOrderMapper;
import com.xhpc.order.service.IXhpcChargeOrderService;
import com.xhpc.order.service.IXhpcHistoryOrderService;
@ -72,7 +73,7 @@ public class XhpcHistoryOrderServiceImpl implements IXhpcHistoryOrderService {
}
@Override
public List<Map<String,Object>> getStatistisList(int number) {
public List<XhpcChargeHistoryOrder> getStatistisList(int number) {
return xhpcHistoryOrderMapper.getStatistisList(number);
}

View File

@ -515,9 +515,20 @@
where ho.history_order_id=#{historyOrderId}
</select>
<select id="getStatistisList" resultType="map">
<select id="getStatistisList" resultType="com.xhpc.order.dto.XhpcChargeHistoryOrder">
select
ho.history_order_id as historyOrderId,
ho.promotion_discount as promotionDiscount,
ho.total_price as totalPrice,
ho.act_price as actPrice,
ho.act_power_price as actPowerPrice,
ho.act_service_price as actServicePrice,
ho.internet_commission as internetCommission,
ho.internet_svc_commission as internetSvcCommission,
ho.platform_commission as platformCommission,
ho.platform_svc_commisssion as platformSvcCommisssion,
ho.operation_commission as operationCommission,
ho.operation_svc_commission as operationSvcCommission,
co.source as source,
co.charge_order_id as chargeOrderId,
co.charging_station_id as chargingStationId,
@ -526,9 +537,9 @@
co.end_time as endTime,
co.charging_time_number as chargingTimeNumber,
co.charging_degree as chargingDegree,
co.rate_model_id as rateModelId,
cs.operator_id as operatorId,
co.user_id as userId,
co.amount_charged as amountCharged
co.user_id as userId
from xhpc_history_order ho
left join xhpc_charge_order co on co.charge_order_id =ho.charge_order_id
left join xhpc_charging_station cs on cs.charging_station_id = co.charging_station_id

View File

@ -22,7 +22,7 @@
<result column="operation_svc_commission" property="operationSvcCommission"/>
<result column="operator_id" property="operatorId"/>
<result column="internet_user_id" property="internetUserId"/>
<result column="charging_pile_id" property="chargingPileId"/>
<result column="charging_station_id" property="chargingStationId"/>
<result property="delFlag" column="del_flag"/>
<result property="createTime" column="create_time"/>
<result property="createBy" column="create_by"/>
@ -166,20 +166,17 @@
and ss.internet_user_id=#{internetUserId}
</if>
<if test="chargingStationIds !=null and chargingStationIds.size()>0">
and charging_station_id in
and ss.charging_station_id in
<foreach collection="chargingStationIds" open="(" item="chargingStationId" separator="," close=")" >
#{chargingStationId}
</foreach>
</if>
<if test="operatorUserId !=null and operatorUserId.size()>0">
and operator_id in
and ss.operator_id in
<foreach collection="operatorUserId" open="(" item="operatorId" separator="," close=")" >
#{operatorId}
</foreach>
</if>
<if test="operatorName !=null and operatorName !=''">
and op.name like concat('%', #{operatorName}, '%')
</if>
group by ss.charging_station_id
</select>
@ -207,12 +204,15 @@
and #{startTime} &lt;=ss.create_time
and ss.create_time &lt;=#{endTime}
</if>
<if test="operatorUserId !=null and operatorUserId.size()>0">
and ss.operator_id in
<foreach collection="operatorUserId" open="(" item="operatorIds" separator="," close=")" >
#{operatorIds}
</foreach>
</if>
<if test="type==2">
<if test="operatorUserId !=null and operatorUserId.size()>0">
and ss.operator_id in
<foreach collection="operatorUserId" open="(" item="operatorId" separator="," close=")" >
#{operatorId}
</foreach>
<if test="operatorId !=null">
and ss.operator_id =#{operatorId}
</if>
</if>
<if test="type==3">
@ -245,16 +245,14 @@
and #{startTime} &lt;=ss.create_time
and ss.create_time &lt;=#{endTime}
</if>
<if test="type==3">
<if test="internetIds !=null and internetIds.size()>0">
and ss.internet_user_id
<foreach collection="internetIds" open="(" item="internetId" separator="," close=")" >
#{internetId}
</foreach>
</if>
<if test="internetIds !=null and internetIds.size()>0">
and ss.internet_user_id
<foreach collection="internetIds" open="(" item="internetId" separator="," close=")" >
#{internetId}
</foreach>
</if>
<if test="internetUserName !=null and internetUserName !=''">
and iu.name like concat('%', #{internetUserName}, '%')
<if test="type==3">
and ss.internet_user_id =#{internetUserId}
</if>
group by ss.internet_user_id
</select>

View File

@ -141,6 +141,9 @@ public class XhpcAppUserServiceImpl implements IXhpcAppUserUserService {
String code = StringUtils.valueOf(map.get("code"));
String phone = StringUtils.valueOf(map.get("phone"));
String type = StringUtils.valueOf(map.get("type"));
if("18123374652".equals(phone) && "123456".equals(code)){
return appLogin(phone, "1", "ot6ul4nlSC5ZZOC4rTLS5hedFTGk");
}
if (StringUtils.isEmpty(code)) {
return R.fail(HttpStatus.NOT_NULL, "验证码不能为空");
}