修改订单结算,增加电量为0、电量小于0.1、金额小于0.1

This commit is contained in:
yuyang 2022-04-12 09:46:31 +08:00
parent 5c8dd51e57
commit 256c590f8c
18 changed files with 240 additions and 19 deletions

View File

@ -69,4 +69,8 @@ public class ServiceNameConstants {
*/
public static final String XHPC_TENANT ="xhpc-tenant";
/**
* 活动服务
*/
public static final String XHPC_ACTIVITY ="xhpc-activity";
}

View File

@ -103,5 +103,13 @@ public class XhpcActivityInternetController extends BaseController {
return R.ok(internetService.deleteByPk(activityId));
}
@GetMapping("/getActivityStationTime")
public R getActivityStationTime(Long internetUserId,String startTime,String endTime,Long chargingStationId,String tenantId){
return R.ok(internetService.getActivityStationTime(internetUserId, startTime,endTime, chargingStationId, tenantId));
}
@GetMapping("/getActivityFormulaTime")
public R getActivityFormulaTime(Integer activityId,String startTime,String endTime){
return R.ok(internetService.getActivityFormulaTime(activityId, startTime, endTime));
}
}

View File

@ -19,4 +19,9 @@ public interface XhpcActivityFormulaMapper {
List<XhpcActivityFormulaDomain> selectByActivityId(Integer activityId);
int deleteByActivityId(Integer activityId);
/**
* 查询该时段的计费公式
*/
List<XhpcActivityFormulaDomain> getActivityFormulaTime(@Param("activityId") Integer activityId,@Param("startTime") String startTime,@Param("endTime") String endTime);
}

View File

@ -29,4 +29,9 @@ public interface XhpcActivityInternetMapper {
List<XhpcActivityInternetDomain> selectByDateBetween(@Param("startTime")String startTime, @Param("endTime")String endTime);
/**
* 查询该时间段是否有流量方活动
*/
List<XhpcActivityInternetDomain> getActivityStationTime(@Param("internetUserId")Long internetUserId,@Param("startTime")String startTime,@Param("endTime")String endTime,@Param("chargingStationId")Long chargingStationId,@Param("tenantId")String tenantId);
}

View File

@ -1,5 +1,6 @@
package com.xhpc.activity.service;
import com.xhpc.activity.domain.XhpcActivityFormulaDomain;
import com.xhpc.activity.domain.XhpcActivityInternetDomain;
import java.util.List;
@ -22,4 +23,16 @@ public interface XhpcActivityInternetService {
boolean checkDomain(XhpcActivityInternetDomain domain);
boolean deleteByPk(Integer activityId);
/**
* 查询该时间段是否有流量方活动
*/
List<XhpcActivityInternetDomain> getActivityStationTime(Long internetUserId,String startTime,String endTime,Long chargingStationId,String tenantId);
/**
* 查询该时段的计费公式
*/
List<XhpcActivityFormulaDomain> getActivityFormulaTime(Integer activityId,String startTime,String endTime);
}

View File

@ -155,4 +155,28 @@ public class XhpcActivityInternetServiceImpl implements XhpcActivityInternetServ
public boolean deleteByPk(Integer activityId) {
return internetMapper.deleteLogicByPrimaryKey(activityId) > 0;
}
/**
* 查询该时间段是否有流量方活动
*
* @param internetUserId
* @param time
* @param chargingStationId
*/
@Override
public List<XhpcActivityInternetDomain> getActivityStationTime(Long internetUserId,String startTime,String endTime, Long chargingStationId ,String tenantId) {
return internetMapper.getActivityStationTime(internetUserId,startTime,endTime, chargingStationId,tenantId);
}
/**
* 查询该时段的计费公式
*
* @param activityId
* @param startTime
* @param endTime
*/
@Override
public List<XhpcActivityFormulaDomain> getActivityFormulaTime(Integer activityId, String startTime, String endTime) {
return formulaMapper.getActivityFormulaTime(activityId, startTime, endTime);
}
}

View File

@ -85,5 +85,13 @@
where activity_formula_id = #{activityComputeId,jdbcType=BIGINT}
</update>
<select id="getActivityFormulaTime" resultMap="BaseResultMap">
select
<include refid="Base_Column_List"/>
from xhpc_activity_formula
where
activity_id = #{activityId}
and activity_formula_id &gt;= (SELECT activity_formula_id FROM xhpc_activity_formula WHERE start_time &lt;= #{startTime} AND end_time &gt;= #{startTime})
and activity_formula_id &lt;= (SELECT activity_formula_id FROM xhpc_activity_formula WHERE start_time &lt;= #{endTime} AND end_time &gt;= #{endTime})
</select>
</mapper>

View File

@ -139,4 +139,20 @@
</update>
<select id="getActivityStationTime" resultMap="BaseResultMap">
select
<include refid="Base_Column_List"/>
from xhpc_activity_internet
where tenant_id =#{tenantId}
and find_in_set(#{chargingStationId}, station_list)
and internet_name = (select name from xhpc_internet_user where internet_user_id =#{internetUserId} and del_flag =0)
and status =3 and del_flag=0
and activity_id &gt;= (
SELECT activity_id FROM xhpc_activity_internet WHERE start_time &lt;= #{startTime} AND end_time &gt;= #{startTime}
)
AND activity_id &lt;= (
SELECT activity_id FROM xhpc_activity_internet WHERE start_time &lt;= #{endTime} AND end_time &gt;= #{endTime}
)
order by end_time desc
</select>
</mapper>

View File

@ -0,0 +1,36 @@
package com.xhpc.common.api;
import com.xhpc.common.api.factory.UserTypeFallbackFactory;
import com.xhpc.common.core.constant.ServiceNameConstants;
import com.xhpc.common.core.domain.R;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
import java.util.Map;
/**
* @author yuyang
* @date 2022/4/8 16:36
*/
@FeignClient(contextId ="activityInternetService",value = ServiceNameConstants.XHPC_ACTIVITY, fallbackFactory = UserTypeFallbackFactory.class)
public interface ActivityInternetService {
/**
* 查询该时间段是否有流量方活动
* @param
* @return
*/
@GetMapping("/activity/internet/getActivityStationTime")
R<Map<String, Object>> getActivityStationTime(@RequestParam(value = "internetUserId")Long internetUserId,@RequestParam(value = "startTime")String startTime,@RequestParam(value = "endTime")String endTime,@RequestParam(value = "chargingStationId")Long chargingStationId,@RequestParam(value = "tenantId")String tenantId);
/**
* 查询该时间段是否有流量方活动
* @param
* @return
*/
@GetMapping("/activity/internet/getActivityFormulaTime")
R<Map<String, Object>> getActivityFormulaTime(@RequestParam(value = "activityId")Integer activityId,@RequestParam(value = "startTime")String startTime,@RequestParam(value = "endTime")String endTime);
}

View File

@ -0,0 +1,36 @@
package com.xhpc.common.api.factory;
import com.xhpc.common.api.ActivityInternetService;
import com.xhpc.common.core.domain.R;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.cloud.openfeign.FallbackFactory;
import org.springframework.stereotype.Component;
import java.util.Map;
/**
* @author yuyang
* @date 2022/4/8 16:40
*/
@Component
public class ActivityInternetfAllbackFactory implements FallbackFactory<ActivityInternetService> {
private static final Logger logger = LoggerFactory.getLogger(ActivityInternetfAllbackFactory.class);
@Override
public ActivityInternetService create(Throwable cause) {
return new ActivityInternetService() {
@Override
public R<Map<String, Object>> getActivityStationTime(Long internetUserId, String startTime, String endTime, Long chargingStationId, String tenantId) {
return R.fail("获取活动信息失败:" + cause.getMessage());
}
@Override
public R<Map<String, Object>> getActivityFormulaTime(Integer activityId, String startTime, String endTime) {
return R.fail("获取活动时间段信息失败:" + cause.getMessage());
}
};
}
}

View File

@ -328,8 +328,10 @@ public class XhpcPileOrderController extends BaseController {
logger.info("无效订单号>>>>>orderNo" + orderNo);
return R.fail(500,"无效订单号:"+orderNo);
}
if(cacheOrderData.getTotalPowerQuantity()==0){
BigDecimal bigDecimal = new BigDecimal(10000);
BigDecimal totalPowerQuantity = new BigDecimal(cacheOrderData.getTotalPowerQuantity()).divide(bigDecimal,2,BigDecimal.ROUND_HALF_UP);
BigDecimal money = new BigDecimal(cacheOrderData.getCost()).divide(bigDecimal);
if(cacheOrderData.getTotalPowerQuantity()==0 || totalPowerQuantity.compareTo(new BigDecimal(0.1))<1 || money.compareTo(new BigDecimal(0.1))<1){
xhpcChargeOrder.setStatus(3);
xhpcChargeOrder.setUpdateTime(new Date());
xhpcChargeOrderService.updateXhpcChargeOrder(xhpcChargeOrder);
@ -346,8 +348,8 @@ public class XhpcPileOrderController extends BaseController {
//解析订单编号
Date date = new Date();
//总金额
BigDecimal bigDecimal = new BigDecimal(10000);
BigDecimal money = new BigDecimal(cacheOrderData.getCost()).divide(bigDecimal);
//00: 尖费率 01: 峰费率 02: 平费率 03: 谷费率
BigDecimal t1powerFee =new BigDecimal(0);
BigDecimal t2powerFee =new BigDecimal(0);
@ -355,6 +357,9 @@ public class XhpcPileOrderController extends BaseController {
BigDecimal t4powerFee =new BigDecimal(0);
//费率计费模型
List<XhpcRate> rateModelList = xhpcChargeOrderService.getRateModelId(xhpcChargeOrder.getRateModelId());
logger.info("&&&&&&&&&&&&&&&&&&&&&&&&&&&&订单号:"+xhpcChargeOrder.getSerialNumber()+"&&&&&&&&&&&&&&费率模型id"+xhpcChargeOrder.getRateModelId());
for (XhpcRate xhpcRate:rateModelList) {
if("00".equals(xhpcRate.getRateValue())){
t1powerFee = xhpcRate.getPowerFee();

View File

@ -11,6 +11,7 @@ import com.xhpc.common.core.web.domain.AjaxResult;
import com.xhpc.common.core.web.page.TableDataInfo;
import com.xhpc.common.util.UserTypeUtil;
import com.xhpc.order.domain.XhpcChargeOrder;
import com.xhpc.order.domain.XhpcHistoryOrder;
import com.xhpc.order.domain.XhpcStatisticsStation;
import com.xhpc.order.domain.XhpcStatisticsTimeInterval;
import com.xhpc.order.dto.XhpcChargeHistoryOrder;
@ -434,6 +435,12 @@ public class XhpcHistoryOrderController extends BaseController {
try{
Long historyOrderId = xhpc.getHistoryOrderId();
int count = xhpcStatisticsService.getStatisticsTimeHistoryOrderId(historyOrderId);
if(count>0){
XhpcHistoryOrder historyOrder = xhpcHistoryOrderService.getHistoryOrderById(historyOrderId);
if(historyOrder.getState()==0){
xhpcHistoryOrderService.updateXhpcHistoryOrder(historyOrderId,1);
}
}
if(count==0){
//开始时间结束时间模型id状态用户id运营商订单id场站id终端id历史订单id时间
Date startTime = xhpc.getStartTime();
@ -481,7 +488,7 @@ public class XhpcHistoryOrderController extends BaseController {
//xhpcSt.setCreateTime(data);
xhpcSt.setTerminalId(terminalId);
xhpcSt.setHistoryOrderId(historyOrderId);
if(xhpc.getSource()==1){
if(xhpc.getSource()!=null && xhpc.getSource()==1){
xhpcSt.setInternetUserId(xhpc.getUserId());
}
//时间没有跨天
@ -494,6 +501,7 @@ public class XhpcHistoryOrderController extends BaseController {
xhpcHistoryOrderService.updateXhpcHistoryOrder(xhpc.getHistoryOrderId(),1);
}
}catch (Exception e){
e.printStackTrace();
logger.info(">>>>>>>>>>>>>>>>>>>>>>>小时统计定时任务异常>>>>>>>>>>>>>>>>>>>>>"+xhpc.getHistoryOrderId());
}
}
@ -938,6 +946,7 @@ public class XhpcHistoryOrderController extends BaseController {
for (int i = type; i <4 ; i++) {
//查询统计表是否有已添加的数据
int count = xhpcStatisticsService.getStatisticsStationHistoryOrderId(historyOrderId, i);
if(count==0){
XhpcStatisticsStation xhpcSt =new XhpcStatisticsStation();
xhpcSt.setChargingDegree(xhpc.getChargingDegree());

View File

@ -76,7 +76,7 @@ public interface XhpcHistoryOrderMapper {
* 历史订单记录PC
* @return
*/
List<Map<String,Object>> getListPage(@Param("phone")String phone,@Param("transactionNumber")String transactionNumber,@Param("status")Integer status,@Param("chargingStationName")String chargingStationName,@Param("operatorId")Long operatorId,@Param("source")Integer source,@Param("beginStartTime")String beginStartTime,@Param("beginEndTime")String beginEndTime,@Param("userId")Long userId,@Param("type")Integer type,@Param("number")Integer number,@Param("affiliationOrganization")String affiliationOrganization,@Param("evcsOrderNo")String evcsOrderNo,@Param("plateNum")String plateNum,@Param("internetId")Integer internetId,@Param("internetSerialNumber")String internetSerialNumber,@Param("terminalName")String terminalName,@Param("vinCode")String vinCode,@Param("overStartTime")String overStartTime,@Param("overEndTime")String overEndTime,@Param("personnelId")Long personnelId,@Param("confirmResult")Integer confirmResult,@Param("tenantId")String tenantId);
List<Map<String,Object>> getListPage(@Param("phone")String phone,@Param("transactionNumber")String transactionNumber,@Param("status")Integer status,@Param("chargingStationName")String chargingStationName,@Param("operatorId")Long operatorId,@Param("source")Integer source,@Param("beginStartTime")String beginStartTime,@Param("beginEndTime")String beginEndTime,@Param("userId")Long userId,@Param("type")Integer type,@Param("number")Integer number,@Param("affiliationOrganization")String affiliationOrganization,@Param("evcsOrderNo")String evcsOrderNo,@Param("plateNum")String plateNum,@Param("internetId")Integer internetId,@Param("internetSerialNumber")String internetSerialNumber,@Param("terminalName")String terminalName,@Param("vinCode")String vinCode,@Param("overStartTime")String overStartTime,@Param("overEndTime")String overEndTime,@Param("personnelId")Long personnelId,@Param("confirmResult")Integer confirmResult,@Param("tenantId")String tenantId,@Param("isNotNull")Integer isNotNull);
/**
* 获取费率时段
@ -102,7 +102,7 @@ public interface XhpcHistoryOrderMapper {
*/
List<XhpcChargeHistoryOrder> getStatistisList(@Param("number")int number,@Param("state")int state);
XhpcHistoryOrder getHistoryOrderById(@Param("historyOrderId")Long historyOrderId);
/**
* 更新历史订单
*

View File

@ -73,6 +73,9 @@ public interface IXhpcHistoryOrderService {
*/
AjaxResult getById(Long historyOrderId);
XhpcHistoryOrder getHistoryOrderById(Long historyOrderId);
/**
* 获取费率时段
* @param startTime 开始时间

View File

@ -247,17 +247,17 @@ public class XhpcHistoryOrderServiceImpl extends BaseService implements IXhpcHis
if (UserTypeUtil.SYS_USER_TYPE_ONE.equals(landUser.get("userType").toString())) {
Long logOperatorId = Long.valueOf(landUser.get("operatorId").toString());
//运营商看自己的场站
list = xhpcHistoryOrderMapper.getListPage(phone, transactionNumber, 1, chargingStationName, operatorId, source, beginStartTime, beginEndTime, logOperatorId, type, number,affiliationOrganization,evcsOrderNo,plateNum,internetId,internetSerialNumber,terminalName,vinCode,overStartTime,overEndTime,personnelId,confirmResult,tenantId);
list = xhpcHistoryOrderMapper.getListPage(phone, transactionNumber, 1, chargingStationName, operatorId, source, beginStartTime, beginEndTime, logOperatorId, type, number,affiliationOrganization,evcsOrderNo,plateNum,internetId,internetSerialNumber,terminalName,vinCode,overStartTime,overEndTime,personnelId,confirmResult,tenantId,0);
} else {
//查询赋值的场站
list = xhpcHistoryOrderMapper.getListPage(phone, transactionNumber, 2, chargingStationName, operatorId, source, beginStartTime, beginEndTime, logUserId, type, number,affiliationOrganization,evcsOrderNo,plateNum,internetId,internetSerialNumber,terminalName,vinCode,overStartTime,overEndTime,personnelId,confirmResult,tenantId);
list = xhpcHistoryOrderMapper.getListPage(phone, transactionNumber, 2, chargingStationName, operatorId, source, beginStartTime, beginEndTime, logUserId, type, number,affiliationOrganization,evcsOrderNo,plateNum,internetId,internetSerialNumber,terminalName,vinCode,overStartTime,overEndTime,personnelId,confirmResult,tenantId,0);
}
}
}
} else {
startPage();
list = xhpcHistoryOrderMapper.getListPage(phone, transactionNumber, 0, chargingStationName, operatorId, source, beginStartTime, beginEndTime, userId, type, number,affiliationOrganization,evcsOrderNo,plateNum,internetId,internetSerialNumber,terminalName,vinCode,overStartTime,overEndTime,personnelId,confirmResult,tenantId);
list = xhpcHistoryOrderMapper.getListPage(phone, transactionNumber, 0, chargingStationName, operatorId, source, beginStartTime, beginEndTime, userId, type, number,affiliationOrganization,evcsOrderNo,plateNum,internetId,internetSerialNumber,terminalName,vinCode,overStartTime,overEndTime,personnelId,confirmResult,tenantId,0);
}
return list;
}
@ -292,15 +292,15 @@ public class XhpcHistoryOrderServiceImpl extends BaseService implements IXhpcHis
if (UserTypeUtil.SYS_USER_TYPE_ONE.equals(landUser.get("userType").toString())) {
Long logOperatorId = Long.valueOf(landUser.get("operatorId").toString());
//运营商看自己的场站
list = xhpcHistoryOrderMapper.getListPage(phone, transactionNumber, 1, chargingStationName, operatorId, source, beginStartTime, beginEndTime, logOperatorId, type, number,affiliationOrganization,evcsOrderNo,plateNum,internetId,internetSerialNumber,terminalName,vinCode,overStartTime,overEndTime,personnelId,confirmResult,tenantId);
list = xhpcHistoryOrderMapper.getListPage(phone, transactionNumber, 1, chargingStationName, operatorId, source, beginStartTime, beginEndTime, logOperatorId, type, number,affiliationOrganization,evcsOrderNo,plateNum,internetId,internetSerialNumber,terminalName,vinCode,overStartTime,overEndTime,personnelId,confirmResult,tenantId,1);
} else {
//查询赋值的场站
list = xhpcHistoryOrderMapper.getListPage(phone, transactionNumber, 2, chargingStationName, operatorId, source, beginStartTime, beginEndTime, logUserId, type, number,affiliationOrganization,evcsOrderNo,plateNum,internetId,internetSerialNumber,terminalName,vinCode,overStartTime,overEndTime,personnelId,confirmResult,tenantId);
list = xhpcHistoryOrderMapper.getListPage(phone, transactionNumber, 2, chargingStationName, operatorId, source, beginStartTime, beginEndTime, logUserId, type, number,affiliationOrganization,evcsOrderNo,plateNum,internetId,internetSerialNumber,terminalName,vinCode,overStartTime,overEndTime,personnelId,confirmResult,tenantId,1);
}
}
}
} else {
list = xhpcHistoryOrderMapper.getListPage(phone, transactionNumber, 0, chargingStationName, operatorId, source, beginStartTime, beginEndTime, userId, type, number,affiliationOrganization,evcsOrderNo,plateNum,internetId,internetSerialNumber,terminalName,vinCode,overStartTime,overEndTime,personnelId,confirmResult,tenantId);
list = xhpcHistoryOrderMapper.getListPage(phone, transactionNumber, 0, chargingStationName, operatorId, source, beginStartTime, beginEndTime, userId, type, number,affiliationOrganization,evcsOrderNo,plateNum,internetId,internetSerialNumber,terminalName,vinCode,overStartTime,overEndTime,personnelId,confirmResult,tenantId,1);
}
// 通过工具类创建writer默认创建xls格式
@ -380,6 +380,11 @@ public class XhpcHistoryOrderServiceImpl extends BaseService implements IXhpcHis
}
}
@Override
public XhpcHistoryOrder getHistoryOrderById(Long historyOrderId) {
return xhpcHistoryOrderMapper.getHistoryOrderById(historyOrderId);
}
@Override
public List<Map<String, Object>> getReatTimeList(String startTime, String endTime, Long rateModelId) {

View File

@ -66,6 +66,7 @@ public class XhpcRealTimeOrderServiceImpl extends BaseService implements IXhpcRe
private TokenService tokenService;
private final ExecutorService executorService = Executors.newFixedThreadPool(20);
@ -368,7 +369,13 @@ public class XhpcRealTimeOrderServiceImpl extends BaseService implements IXhpcRe
}
//生成一条历史订单
XhpcHistoryOrder xhpcHistoryOrder = new XhpcHistoryOrder();
xhpcHistoryOrder.setStartTime(xhpcChargeOrder.getStartTime());
if(xhpcChargeOrder.getEndTime()==null ){
xhpcHistoryOrder.setEndTime(xhpcChargeOrder.getStartTime());
}else{
xhpcHistoryOrder.setStartTime(xhpcChargeOrder.getStartTime());
xhpcHistoryOrder.setEndTime(xhpcChargeOrder.getEndTime());
}
xhpcHistoryOrder.setStartSoc(xhpcChargeOrder.getStartSoc());
xhpcHistoryOrder.setEndSoc(xhpcChargeOrder.getEndSoc());
@ -379,6 +386,8 @@ public class XhpcRealTimeOrderServiceImpl extends BaseService implements IXhpcRe
xhpcHistoryOrder.setTotalPower(0.00);
}
xhpcHistoryOrder.setType(2);
xhpcHistoryOrder.setStatus(0);
xhpcHistoryOrder.setDelFlag(0);
addSettlement(powerPrice, servicePrice, money, surplusPowerPrice, surplusServicePrice, xhpcChargeOrder, userId, userMessage,0,null,xhpcHistoryOrder);
return AjaxResult.success();
@ -427,8 +436,27 @@ public class XhpcRealTimeOrderServiceImpl extends BaseService implements IXhpcRe
Integer source = xhpcChargeOrder.getSource();
String internetSerialNumber = xhpcChargeOrder.getInternetSerialNumber();
if(source==UserTypeUtil.INTERNET_TYPE && internetSerialNumber!=null){
String substring = internetSerialNumber.substring(0, 9);
xhpcHistoryOrder.setInternetSerialNumber(xhpcChargeOrder.getInternetSerialNumber());
// //判断第三方是否有活动
// Long internetUserId = xhpcChargeOrder.getUserId();
// //最后一条实时数据
// XhpcRealTimeOrder xhpcRealTimeOrder = xhpcRealTimeOrderMapper.getChargingOrderId(xhpcChargeOrder.getChargeOrderId(), 2);
// boolean judge =false;
// if(xhpcRealTimeOrder !=null && !"".equals(xhpcRealTimeOrder.getChargingTime()) && xhpcRealTimeOrder.getChargingTime()!=null){
// R<Map<String, Object>> activityStationTime = activityInternetService.getActivityStationTime(internetUserId, xhpcRealTimeOrder.getChargingTime(), xhpcChargeOrder.getChargingStationId(), xhpcChargeOrder.getTenantId());
// if(activityStationTime !=null && activityStationTime.getData() !=null){
// judge =true;
// }
// }
// if(judge){
//
//
//
//
//
// }
String substring = internetSerialNumber.substring(0, 9);
Map<String, Object> operatorIdEvcs = xhpcRealTimeOrderMapper.getOperatorIdEvcs(substring);
if(operatorIdEvcs !=null){
if(operatorIdEvcs.get("operatorIdEvcs")!=null && operatorIdEvcs.get("commissionType")!=null && operatorIdEvcs.get("commissionRate")!=null){
@ -979,12 +1007,14 @@ public class XhpcRealTimeOrderServiceImpl extends BaseService implements IXhpcRe
xhpcHistoryOrder.setSerialNumber(xhpcChargeOrder.getSerialNumber());
xhpcHistoryOrder.setInternetSerialNumber(xhpcChargeOrder.getInternetSerialNumber());
xhpcHistoryOrder.setType(2);
xhpcHistoryOrder.setStatus(0);
Date date = new Date();
xhpcHistoryOrder.setCreateTime(date);
Map<String, Object> pushOrder = redisService.getCacheMap("pushOrder:"+xhpcChargeOrder.getSerialNumber());
if(pushOrder !=null){
if(pushOrder.get("internetSerialNumber") !=null){
xhpcHistoryOrder.setInternetSerialNumber(pushOrder.get("internetSerialNumber").toString());
xhpcHistoryOrder.setChargingMode(xhpcChargeOrder.getUserId()+"");
}
if(pushOrder.get("operatorId3rdpty") !=null){
xhpcHistoryOrder.setOperatorId3rdptyEvcs((String) pushOrder.get("operatorId3rdpty"));
@ -1002,8 +1032,14 @@ public class XhpcRealTimeOrderServiceImpl extends BaseService implements IXhpcRe
}
}
}
if(xhpcChargeOrder.getStartTime()==null){
xhpcHistoryOrder.setStartTime(xhpcChargeOrder.getCreateTime());
xhpcHistoryOrder.setEndTime(xhpcChargeOrder.getCreateTime());
}else{
xhpcHistoryOrder.setStartTime(xhpcChargeOrder.getStartTime());
xhpcHistoryOrder.setEndTime(xhpcChargeOrder.getStartTime());
}
xhpcHistoryOrder.setStopReasonEvcs(45);
if(UserTypeUtil.COMMUNIT_TYPE.equals(xhpcChargeOrder.getSource()) || UserTypeUtil.CUSTOMERS_TYPE.equals(xhpcChargeOrder.getSource())){
xhpcHistoryOrder.setChargeModelEvcs(2);
@ -1013,7 +1049,7 @@ public class XhpcRealTimeOrderServiceImpl extends BaseService implements IXhpcRe
xhpcHistoryOrder.setTenantId(xhpcChargeOrder.getTenantId());
xhpcHistoryOrder.setSource(xhpcChargeOrder.getSource());
xhpcHistoryOrder.setRateModelId(xhpcChargeOrder.getRateModelId());
xhpcHistoryOrder.setChargingMode(xhpcChargeOrder.getChargingMode());
xhpcHistoryOrder.setDelFlag(0);
xhpcHistoryOrderService.insert(xhpcHistoryOrder);
}

View File

@ -790,6 +790,9 @@
<if test="tenantId !=null and '' !=tenantId">
and ho.tenant_id=#{tenantId}
</if>
<if test="isNotNull==1">
and ho.total_price &gt;=0
</if>
order by ho.create_time desc
</select>
@ -1124,4 +1127,8 @@
</set>
where internet_serial_number = #{internetSerialNumber}
</update>
<select id="getHistoryOrderById" resultType="com.xhpc.order.dto.XhpcChargeHistoryOrder">
select * from xhpc_history_order where history_order_id=#{historyOrderId}
</select>
</mapper>

View File

@ -915,6 +915,7 @@
<if test="tenantId !=null and tenantId !=''">
and ss.tenant_id = #{tenantId}
</if>
and ss.charging_mode is not null
group by ss.charging_mode
</select>