xp-robotaxi-api/src/main/java/com/xiaopeng/api/dto/operation/XpActivityDto.java
New file @@ -0,0 +1,62 @@ package com.xiaopeng.api.dto.operation; import com.fasterxml.jackson.annotation.JsonFormat; import com.xiaopeng.api.model.operation.XpActicityStrategy; import com.xiaopeng.api.model.operation.XpActicityUser; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; import java.time.LocalDateTime; import java.util.List; @Data @ApiModel(value = "活动信息Dto") @AllArgsConstructor @NoArgsConstructor public class XpActivityDto { @ApiModelProperty(value = "活动id") private Long id; @ApiModelProperty(value = "活动名称") private String acticityName; @ApiModelProperty(value = "活动类型 如新人活动、媒体邀约活动、日常提频等") private Integer activityType; @ApiModelProperty(value = "开始时间") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private LocalDateTime startTime; @ApiModelProperty(value = "结束时间") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private LocalDateTime endTime; @ApiModelProperty(value = "状态 1=未开始 2=进行中 3=已结束 4=暂停") private Integer status; @ApiModelProperty(value = "备注") private String remarks; @ApiModelProperty(value = "注册启用 1=是 0=否") private Boolean registerEnable; @ApiModelProperty(value = "邀请启用 1=是 0=否") private Boolean inviteEnable; @ApiModelProperty(value = "图片") private String img; @ApiModelProperty(value = "富文本内容") private String richText; @ApiModelProperty(value = "活动策略") List<XpActicityStrategy> strategy; @ApiModelProperty(value = "发放用户") List<XpActicityUser> activityUser; } xp-robotaxi-api/src/main/java/com/xiaopeng/api/model/operation/XpActicityUser.java
@@ -43,4 +43,6 @@ @ApiModelProperty(value = "指定用户json数组") private String userList; @ApiModelProperty(value = "策略组名称") private String strategyName; } xp-robotaxi-api/src/main/java/com/xiaopeng/api/model/operation/XpActivity.java
@@ -29,8 +29,6 @@ @ApiModel(value="XpActicity对象", description="活动管理") public class XpActivity extends BaseModel { private static final long serialVersionUID = 1L; @TableId(value = "id", type = IdType.AUTO) private Long id; xp-robotaxi-maintenance-boot/src/main/java/com/xiaopeng/maintenance/service/impl/XpCruiseCheckInRecordServiceImpl.java
@@ -102,11 +102,11 @@ if (CollectionUtils.isEmpty(vos) || vos.size() < 7) { String date = vos.get(vos.size() - 1).getDate(); LocalDate endDate = LocalDate.parse(date); LocalDate startDate = endDate.minusDays(6); LocalDate startDate = endDate.minusDays(vos.size() + 1); for (int i = 7 - vos.size(); i > 0; i--) { XpCruiseCheckInStatisticsVO v = new XpCruiseCheckInStatisticsVO(); v.setDate(startDate.toString()); startDate = startDate.plusDays(1); startDate = startDate.minusDays(1); vos.add(0, v); } } xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/controller/XpActicityController.java
@@ -1,6 +1,9 @@ package com.xiaopeng.operation.controller; import com.xiaopeng.api.dto.operation.XpActivityDto; import com.xiaopeng.api.model.operation.XpActicityStrategy; import com.xiaopeng.api.model.operation.XpActicityUser; import com.xiaopeng.api.model.operation.XpActivity; import com.xiaopeng.api.model.operation.XpCoupon; import com.xiaopeng.api.query.operation.XpActivityPageListQuery; @@ -10,6 +13,8 @@ import com.xiaopeng.common.core.utils.bean.BeanUtils; import com.xiaopeng.common.core.web.page.PageInfo; import com.xiaopeng.operation.service.IXpActicityService; import com.xiaopeng.operation.service.IXpActicityStrategyService; import com.xiaopeng.operation.service.IXpActicityUserService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.RequiredArgsConstructor; @@ -40,7 +45,6 @@ @Resource private IXpActicityService service; /** * 获取所有白名单手机号 @@ -93,8 +97,8 @@ @PostMapping("/v1/api/appUserCoupon/add") @ApiOperation(value = "添加活动",tags = {"管理后台-活动管理"},response = XpCoupon.class) public R<?> add(@RequestBody XpActivity xpActivity){ service.save(xpActivity); public R<?> add(@RequestBody XpActivityDto dto){ service.save(dto); return R.ok(); } xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/service/IXpActicityService.java
@@ -1,6 +1,7 @@ package com.xiaopeng.operation.service; import com.baomidou.mybatisplus.extension.service.IService; import com.xiaopeng.api.dto.operation.XpActivityDto; import com.xiaopeng.api.model.operation.XpActivity; import com.xiaopeng.api.query.operation.XpActivityPageListQuery; import com.xiaopeng.common.core.web.page.PageInfo; @@ -22,4 +23,6 @@ List<String> findListToIds(String acticityName); XpActivity activiting(); void save(XpActivityDto dto); } xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/service/impl/XpActicityServiceImpl.java
@@ -1,17 +1,27 @@ package com.xiaopeng.operation.service.impl; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.xiaopeng.api.dto.operation.XpActivityDto; import com.xiaopeng.api.model.operation.XpActicityStrategy; import com.xiaopeng.api.model.operation.XpActicityUser; import com.xiaopeng.api.model.operation.XpActivity; import com.xiaopeng.api.query.operation.XpActivityPageListQuery; import com.xiaopeng.common.core.utils.bean.BeanUtils; import com.xiaopeng.common.core.web.page.PageInfo; import com.xiaopeng.operation.mapper.XpActicityMapper; import com.xiaopeng.operation.service.IXpActicityService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.xiaopeng.operation.service.IXpActicityStrategyService; import com.xiaopeng.operation.service.IXpActicityUserService; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; import java.time.LocalDateTime; import java.util.List; import java.util.Map; import java.util.Random; import java.util.stream.Collectors; /** * <p> @@ -24,6 +34,11 @@ @Service public class XpActicityServiceImpl extends ServiceImpl<XpActicityMapper, XpActivity> implements IXpActicityService { @Resource private IXpActicityStrategyService strategyService; @Resource private IXpActicityUserService userService; @Override public PageInfo<XpActivity> pageList(XpActivityPageListQuery query) { @@ -54,4 +69,30 @@ return null; } @Override @Transactional public void save(XpActivityDto dto) { XpActivity activity = new XpActivity(); BeanUtils.copyBeanProp(activity, dto); List<XpActicityStrategy> strategy = dto.getStrategy(); List<XpActicityUser> activityUser = dto.getActivityUser(); strategyService.saveBatch(strategy); // strategy.setActitcityId(activity.getId().intValue()); // Map<String, List<XpActicityStrategy>> strategyMap = strategy.stream().collect(Collectors.groupingBy(XpActicityStrategy::getName)); // activityUser.forEach(item -> { // item.setActitcityId(activity.getId().intValue()); // item.setActitcityStrategeId(strategyMap.get(item.getStrategyName())); // }); // // // activityUser.setActitcityId(activity.getId().intValue()); // // userService.save(activityUser); } } xp-robotaxi-vehicle-convoy-boot/src/main/java/com/xiaopeng/vehicleConvoy/controller/XpFleetVehicleController.java
@@ -75,7 +75,7 @@ @Resource MongoTemplate mongoTemplate; @ApiOperation(value = "车辆", tags = {"流量接入-信息录入-车辆"}) @PostMapping("/api/v1/xp-rt/vehicle/position") @PostMapping("/api/v1/xp-rt/vehicle/info") public R<?> JoinUs( @ApiParam(value = "车辆位置信息", required = true) @RequestBody VehiclePosition vp