Merge branch 'master' into 1.0
# Conflicts:
# xp-robotaxi-account-boot/src/main/java/com/xiaopeng/account/controller/SysUserController.java
# xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/controller/XpAgreementController.java
# xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/controller/XpFrequentlyAskedQuestionsController.java
# xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/controller/XpRideGuideController.java
# xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/controller/XpTradingStrategyController.java
# xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/controller/XpWhitelistController.java
# xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/query/AdminOperationLogPageQuery.java
# xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/service/impl/XpWhitelistServiceImpl.java
| | |
| | | /** |
| | | * 新增用户 |
| | | */ |
| | | @Log(title = "帐号管理", businessType = BusinessType.INSERT) |
| | | @PostMapping("/api/v1/sys-user/add") |
| | | @ApiOperation(value = "添加帐号", tags = {"管理后台-帐号管理"}) |
| | | @AdminOperationLog( |
| | |
| | | LoginUser loginUser = tokenService.getLoginUser(); |
| | | return AjaxResult.success(loginUser); |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | /** |
| | | * 根据用户编号获取详细信息 |
| | | */ |
| | |
| | | if (user.getPassword() != null && !user.getPassword().isEmpty()) { |
| | | user.setPassword(null); |
| | | } |
| | | |
| | | |
| | | user.setPhoneNumber(SensitiveDataCryptoUtil.encrypt(user.getPhoneNumber())); |
| | | userService.updateById(user); |
| | | |
| | | //删除旧的角色数据,添加新的角色 |
| | |
| | | import com.xiaopeng.api.model.account.XpOperationsUserNotification; |
| | | import com.xiaopeng.common.core.domain.R; |
| | | import com.xiaopeng.common.core.web.page.PageInfo; |
| | | import com.xiaopeng.common.log.annotation.AdminOperationLog; |
| | | import com.xiaopeng.common.log.enums.AdminBusinessType; |
| | | import com.xiaopeng.common.log.enums.AdminOperationType; |
| | | import com.xiaopeng.common.security.service.TokenService; |
| | | import io.swagger.annotations.ApiOperation; |
| | | import lombok.extern.slf4j.Slf4j; |
| | |
| | | |
| | | @GetMapping("/maintenance-app/api/v1/notification/read") |
| | | @ApiOperation(value = "操作已读", tags = "运维APP-消息通知") |
| | | @AdminOperationLog( |
| | | businessType = AdminBusinessType.OPERATIONS_USER_NOTIFICATION_MANAGEMENT, |
| | | operationType = AdminOperationType.EDIT, |
| | | contentExpression = "'操作通知已读,notificationId=' + #p0", |
| | | appendRequestData = false |
| | | ) |
| | | public R<?> readNotification(@RequestParam Long notificationId){ |
| | | notificationService.lambdaUpdate().set(XpOperationsUserNotification::getReadStatus, 1).eq(XpOperationsUserNotification::getId, notificationId).update(); |
| | | return R.ok(); |
| | |
| | | |
| | | @PostMapping(value = "/logan/inner/v1/notification/addBatch") |
| | | @ApiOperation(value = "批量添加通知", tags = {"内部接口"}) |
| | | @AdminOperationLog( |
| | | businessType = AdminBusinessType.OPERATIONS_USER_NOTIFICATION_MANAGEMENT, |
| | | operationType = AdminOperationType.ADD, |
| | | content = "批量添加运维人员消息通知", |
| | | appendRequestData = true |
| | | ) |
| | | public R<?> addNotificationBatch(@RequestBody List<XpOperationsUserNotification> notifications) { |
| | | notificationService.addNotificationBatch(notifications); |
| | | return R.ok(); |
| | |
| | | ORDER_MANAGEMENT(43, "订单管理"), |
| | | TEST_POINT_MANAGEMENT(44, "测试demo点位管理"), |
| | | POINT_MANAGEMENT(45, "正式点位管理"), |
| | | INVITATION_CODE_MANAGEMENT(46, "邀请码管理"); |
| | | INVITATION_CODE_MANAGEMENT(46, "邀请码管理"), |
| | | RIDE_GUIDE_MANAGEMENT(47, "乘车指南管理"), |
| | | FREQUENTLY_ASKED_QUESTIONS_MANAGEMENT(48, "常见问题管理"), |
| | | AGREEMENT_MANAGEMENT(49, "协议管理"), |
| | | VEHICLE_DESCRIPTION_MANAGEMENT(50, "车辆说明管理"), |
| | | TRADING_STRATEGY_MANAGEMENT(51, "交易策略管理"), |
| | | SYSTEM_SETTING_MANAGEMENT(52, "系统设置管理"), |
| | | SPECIAL_POINT_MANAGEMENT(53, "特殊点位管理"), |
| | | TEST_SPECIAL_POINT_MANAGEMENT(54, "测试demo特殊点位管理"), |
| | | OPERATIONS_USER_NOTIFICATION_MANAGEMENT(55, "运维人员消息通知管理"), |
| | | TASK_RULE_MANAGEMENT(56, "任务规则管理"); |
| | | |
| | | private final int code; |
| | | private final String desc; |
| | |
| | | |
| | | import com.xiaopeng.api.model.maintenance.XpTaskRule; |
| | | import com.xiaopeng.common.core.domain.R; |
| | | import com.xiaopeng.common.log.annotation.AdminOperationLog; |
| | | import com.xiaopeng.common.log.enums.AdminBusinessType; |
| | | import com.xiaopeng.common.log.enums.AdminOperationType; |
| | | import com.xiaopeng.maintenance.dto.TaskRuleDetailDto; |
| | | import com.xiaopeng.api.vo.maintenance.TaskRuleDetailVO; |
| | | import com.xiaopeng.maintenance.service.IXpTaskRuleRoleService; |
| | |
| | | |
| | | @ApiOperation(value = "保存或修改任务规则") |
| | | @PostMapping("/api/v1/taskRule/saveOrUpdateTaskRule") |
| | | @AdminOperationLog( |
| | | businessType = AdminBusinessType.TASK_RULE_MANAGEMENT, |
| | | operationType = AdminOperationType.EDIT, |
| | | content = "保存或修改任务规则", |
| | | appendRequestData = true |
| | | ) |
| | | public R saveOrUpdateTaskRule(@RequestBody TaskRuleDetailDto dto) { |
| | | xpTaskRuleService.saveOrUpdateTaskRule(dto); |
| | | return R.ok(); |
| | |
| | | import com.baomidou.mybatisplus.core.toolkit.Wrappers; |
| | | import com.xiaopeng.api.model.maintenance.XpVehicleDescription; |
| | | import com.xiaopeng.common.core.domain.R; |
| | | import com.xiaopeng.common.log.annotation.AdminOperationLog; |
| | | import com.xiaopeng.common.log.enums.AdminBusinessType; |
| | | import com.xiaopeng.common.log.enums.AdminOperationType; |
| | | import com.xiaopeng.maintenance.service.IXpVehicleDescriptionService; |
| | | import io.swagger.annotations.Api; |
| | | import io.swagger.annotations.ApiImplicitParam; |
| | | import io.swagger.annotations.ApiOperation; |
| | | import org.checkerframework.checker.units.qual.A; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.web.bind.annotation.*; |
| | | |
| | |
| | | |
| | | @ApiOperation(value = "保存车辆整备、充电、检测、保险、年检、保养、运营资质说明", tags = {"管理后台-内容中心"}) |
| | | @PostMapping("/api/v1/vehicle-description/save") |
| | | @AdminOperationLog( |
| | | businessType = AdminBusinessType.VEHICLE_DESCRIPTION_MANAGEMENT, |
| | | operationType = AdminOperationType.EDIT, |
| | | content = "保存车辆说明", |
| | | appendRequestData = true |
| | | ) |
| | | public R<?> saveVehicleDescription(@RequestBody XpVehicleDescription xpVehicleDescription) { |
| | | if (xpVehicleDescription.getDescriptionType() == null) { |
| | | return R.fail("descriptionType不能为空"); |
| | |
| | | @PostMapping("/api/v1/testPoint/setSpecialPoint") |
| | | @ApiOperation(value = "设置特殊点位", tags = "后台管理-特殊点位") |
| | | @AdminOperationLog( |
| | | businessType = AdminBusinessType.TEST_POINT_MANAGEMENT, |
| | | businessType = AdminBusinessType.TEST_SPECIAL_POINT_MANAGEMENT, |
| | | operationType = AdminOperationType.EDIT, |
| | | content = "设置测试demo特殊点位", |
| | | appendRequestData = true |
| | |
| | | import com.xiaopeng.api.model.operation.XpLoginAgreement; |
| | | import com.xiaopeng.common.core.domain.R; |
| | | import com.xiaopeng.common.core.web.controller.BaseController; |
| | | import com.xiaopeng.common.log.annotation.AdminOperationLog; |
| | | import com.xiaopeng.common.log.enums.AdminBusinessType; |
| | | import com.xiaopeng.common.log.enums.AdminOperationType; |
| | | import com.xiaopeng.operation.dto.XpAgreementDTO; |
| | | import com.xiaopeng.operation.service.IXpLoginAgreementService; |
| | | import com.xiaopeng.operation.service.XpAgreementService; |
| | |
| | | |
| | | @ApiOperation(value = "保存协议", tags = {"管理后台-内容中心"}) |
| | | @PostMapping("/api/v1/agreement/save") |
| | | public R<?> saveAgreement(@RequestBody @Valid XpAgreementDTO dto) { |
| | | @AdminOperationLog( |
| | | businessType = AdminBusinessType.AGREEMENT_MANAGEMENT, |
| | | operationType = AdminOperationType.EDIT, |
| | | content = "保存协议", |
| | | appendRequestData = true |
| | | ) |
| | | public R<?> saveAgreement(@RequestBody @Valid XpAgreementDTO dto){ |
| | | xpAgreementService.saveAgreement(dto); |
| | | return R.ok(); |
| | | } |
| | |
| | | import com.xiaopeng.api.model.operation.XpFrequentlyAskedQuestions; |
| | | import com.xiaopeng.api.model.operation.XpSystemSetting; |
| | | import com.xiaopeng.common.core.domain.R; |
| | | import com.xiaopeng.common.log.annotation.AdminOperationLog; |
| | | import com.xiaopeng.common.log.enums.AdminBusinessType; |
| | | import com.xiaopeng.common.log.enums.AdminOperationType; |
| | | import com.xiaopeng.operation.dto.XpFrequentlyAskedQuestionsDTO; |
| | | import com.xiaopeng.operation.service.IXpFrequentlyAskedQuestionsService; |
| | | import com.xiaopeng.operation.service.XpSystemSettingService; |
| | |
| | | import io.swagger.annotations.ApiOperation; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.springframework.web.bind.annotation.*; |
| | | |
| | | import org.springframework.stereotype.Controller; |
| | | |
| | | import java.util.List; |
| | | |
| | |
| | | |
| | | @ApiOperation(value = "保存常见问题", tags = {"管理后台-内容中心"}) |
| | | @PostMapping("/api/v1/frequently-asked-questions/save") |
| | | @AdminOperationLog( |
| | | businessType = AdminBusinessType.FREQUENTLY_ASKED_QUESTIONS_MANAGEMENT, |
| | | operationType = AdminOperationType.EDIT, |
| | | content = "保存常见问题", |
| | | appendRequestData = true |
| | | ) |
| | | public R<?> saveQuestion(@RequestBody XpFrequentlyAskedQuestionsDTO dto) { |
| | | xpFrequentlyAskedQuestionsService.saveQuestion(dto); |
| | | return R.ok(); |
| | |
| | | import com.xiaopeng.common.core.web.controller.BaseController; |
| | | import com.xiaopeng.api.query.operation.PointListQuery; |
| | | import com.xiaopeng.common.core.web.page.PageInfo; |
| | | import com.xiaopeng.common.log.annotation.AdminOperationLog; |
| | | import com.xiaopeng.common.log.enums.AdminBusinessType; |
| | | import com.xiaopeng.common.log.enums.AdminOperationType; |
| | | import com.xiaopeng.operation.dto.XpPointSpecialDto; |
| | | import com.xiaopeng.operation.service.IXpElectronicFenceAreaService; |
| | | import com.xiaopeng.operation.service.IXpElectronicFenceService; |
| | |
| | | */ |
| | | @PostMapping("/setSpecialPoint") |
| | | @ApiOperation(value = "设置特殊点位", tags = "后台管理-特殊点位") |
| | | @AdminOperationLog( |
| | | businessType = AdminBusinessType.SPECIAL_POINT_MANAGEMENT, |
| | | operationType = AdminOperationType.EDIT, |
| | | content = "设置特殊点位", |
| | | appendRequestData = true |
| | | ) |
| | | public R setSpecialPoint(@RequestBody XpPointSpecialDto dto) { |
| | | xpPointService.update(new LambdaUpdateWrapper<XpPoint>().set(XpPoint::getChargePoint, 0) |
| | | .set(XpPoint::getParkingPoint, 0)); |
| | |
| | | import com.xiaopeng.common.core.domain.R; |
| | | import com.xiaopeng.common.core.web.controller.BaseController; |
| | | import com.xiaopeng.common.core.web.domain.AjaxResult; |
| | | import com.xiaopeng.common.log.annotation.AdminOperationLog; |
| | | import com.xiaopeng.common.log.enums.AdminBusinessType; |
| | | import com.xiaopeng.common.log.enums.AdminOperationType; |
| | | import com.xiaopeng.operation.dto.XpRideGuideDTO; |
| | | import com.xiaopeng.operation.service.XpRideGuideService; |
| | | import com.xiaopeng.operation.vo.XpAgreementVo; |
| | | import com.xiaopeng.operation.vo.XpRideGuideVo; |
| | | import com.xiaopeng.unifiedverification.interceptor.XpClientCheck; |
| | | import io.swagger.annotations.Api; |
| | |
| | | |
| | | @ApiOperation(value = "保存乘车指南",tags = {"管理后台-内容中心"}) |
| | | @PostMapping("/api/v1/guide/save") |
| | | @AdminOperationLog( |
| | | businessType = AdminBusinessType.RIDE_GUIDE_MANAGEMENT, |
| | | operationType = AdminOperationType.EDIT, |
| | | content = "保存乘车指南", |
| | | appendRequestData = true |
| | | ) |
| | | public R<?> saveGuide(@Valid @RequestBody XpRideGuideDTO dto) { |
| | | xpRideGuideService.saveGuide(dto); |
| | | return R.ok(); |
| | |
| | | import com.xiaopeng.common.core.utils.DateUtils; |
| | | import com.xiaopeng.common.core.web.controller.BaseController; |
| | | import com.xiaopeng.common.core.web.domain.AjaxResult; |
| | | import com.xiaopeng.common.log.annotation.AdminOperationLog; |
| | | import com.xiaopeng.common.log.enums.AdminBusinessType; |
| | | import com.xiaopeng.common.log.enums.AdminOperationType; |
| | | import com.xiaopeng.common.redis.service.RedisService; |
| | | import com.xiaopeng.operation.job.base.QuartzManager; |
| | | import com.xiaopeng.operation.job.base.TimeJobType; |
| | |
| | | |
| | | @ApiOperation(value = "保存系统配置、热修复", tags = {"管理后台-系统"}) |
| | | @PostMapping("/api/v1/systemSetting/save") |
| | | @AdminOperationLog( |
| | | businessType = AdminBusinessType.SYSTEM_SETTING_MANAGEMENT, |
| | | operationType = AdminOperationType.EDIT, |
| | | content = "保存系统配置、热修复", |
| | | appendRequestData = true |
| | | ) |
| | | public R<?> saveSystemSetting(@RequestBody XpSystemSetting xpSystemSetting){ |
| | | xpSystemSettingService.saveSystemSetting(xpSystemSetting); |
| | | if(null != xpSystemSetting.getHotfixStatus() && xpSystemSetting.getHotfixStatus()==1){ |
| | |
| | | import com.xiaopeng.api.model.operation.XpTradingStrategy; |
| | | import com.xiaopeng.common.core.domain.R; |
| | | import com.xiaopeng.common.core.web.controller.BaseController; |
| | | import com.xiaopeng.common.log.annotation.AdminOperationLog; |
| | | import com.xiaopeng.common.log.enums.AdminBusinessType; |
| | | import com.xiaopeng.common.log.enums.AdminOperationType; |
| | | import com.xiaopeng.operation.dto.XpTradingStrategyEditDTO; |
| | | import com.xiaopeng.operation.service.IXpTradingStrategyService; |
| | | import com.xiaopeng.api.vo.operation.XpTradingStrategyDetailVO; |
| | |
| | | */ |
| | | @ApiOperation(value = "修改交易策略", tags = {"管理后台-交易管理-交易策略配置"}) |
| | | @PostMapping("/api/v1/tradingStrategy/edit") |
| | | public R<?> edit(@Valid @RequestBody XpTradingStrategyEditDTO dto) { |
| | | @AdminOperationLog( |
| | | businessType = AdminBusinessType.TRADING_STRATEGY_MANAGEMENT, |
| | | operationType = AdminOperationType.EDIT, |
| | | content = "修改交易策略", |
| | | appendRequestData = true |
| | | ) |
| | | public R<?> edit(@Validated @RequestBody XpTradingStrategyEditDTO dto) { |
| | | tradingStrategyService.editStrategy(dto); |
| | | return R.ok(); |
| | | } |
| | |
| | | @Data |
| | | @ApiModel(value = "管理后台操作记录分页查询") |
| | | public class AdminOperationLogPageQuery extends BasePage { |
| | | @ApiModelProperty(value = "业务类型:1订单 2车辆 3车队 4账号 5运维 6交易定价 7内容中心 8系统 9白名单 10服务中心 11测试demo电子围栏管理 12测试计划 13账号管理 14权限组管理 15角色管理 16APP版本管理 17用户优惠券管理 18活动管理 19优惠券管理 20Banner管理 21开通城市管理 22电子围栏管理 23现场情况上报 24巡游计划 25在库车辆管理 26运营车辆管理 27车队管理 28车型管理 29定价管理 30路线规划配置管理 31定向服务 32免密支付策略 33运维人员管理 34打卡点管理 35班次管理 36排班计划管理 37任务工单管理 38巡检打卡规则管理 39资质审核 40政策申请 41意见反馈类型管理 42工单管理 43订单管理 44测试demo点位管理 45正式点位管理 46邀请码管理") |
| | | |
| | | @ApiModelProperty(value = "业务类型:1订单 2车辆 3车队 4账号 5运维 6交易定价 7内容中心 8系统 9白名单 10服务中心 11测试demo电子围栏管理 12测试计划 13账号管理 14权限组管理 15角色管理 16APP版本管理 17用户优惠券管理 18活动管理 19优惠券管理 20Banner管理 21开通城市管理 22电子围栏管理 23现场情况上报 24巡游计划 25在库车辆管理 26运营车辆管理 27车队管理 28车型管理 29定价管理 30路线规划配置管理 31定向服务 32免密支付策略 33运维人员管理 34打卡点管理 35班次管理 36排班计划管理 37任务工单管理 38巡检打卡规则管理 39资质审核 40政策申请 41意见反馈类型管理 42工单管理 43订单管理 44测试demo点位管理 45正式点位管理 46邀请码管理 47乘车指南管理 48常见问题管理 49协议管理 50车辆说明管理 51交易策略管理 52系统设置管理 53特殊点位管理 54测试demo特殊点位管理 55运维人员消息通知管理 56任务规则管理") |
| | | private Integer businessType; |
| | | |
| | | @ApiModelProperty(value = "业务类型名称") |
| | | private String businessTypeName; |
| | | |
| | | @ApiModelProperty(value = "操作人") |
| | | private String operatorName; |
| | | |