feat:同步广播次数

This commit is contained in:
dzc committed 2025-04-28 10:51:40 +08:00
1 parent 8a8c699757
commit bf9c205899
4 files changed
+49

No files matched your search

@@ -0,0 +1,20 @@
package com.bsd.pjcloud.hard.api.dto;
import lombok.Data;
import java.util.List;
@Data
public class HardAdBroadcastDto {
/**
* 广播id
*/
private List<Long> ids;
/**
* 广播次数
*/
private Integer count;
}
@@ -9,6 +9,7 @@ import com.bsd.pjcloud.common.core.constant.enums.YesNoEnum;
import com.bsd.pjcloud.common.core.util.R;
import com.bsd.pjcloud.common.data.datascope.DataScope;
import com.bsd.pjcloud.common.log.annotation.SysLog;
import com.bsd.pjcloud.hard.api.dto.HardAdBroadcastDto;
import com.bsd.pjcloud.hard.api.dto.HardBroadcastDto;
import com.bsd.pjcloud.hard.api.entity.HardBroadcastEntity;
import com.bsd.pjcloud.hard.api.vo.HardBroadcastVo;
@@ -52,6 +53,13 @@ public class HardBroadcastController {
return R.ok(hardBroadcastService.scopePageJoin(page, dto, dataScope));
}
@Operation(summary = "android完成一轮广播", description = "android完成一轮广播")
@PostMapping("/ad/broadcast")
public R<Page<HardBroadcastVo>> androidDoneBroadcast(@RequestBody HardAdBroadcastDto dto) {
hardBroadcastService.androidDoneBroadcast(dto);
return R.ok();
}
/* ************************************* start android start ************************************* */
@Operation(summary = "分页查询", description = "分页查询")
@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.bsd.pjcloud.admin.api.dto.UserInfo;
import com.bsd.pjcloud.common.data.datascope.DataScope;
import com.bsd.pjcloud.hard.api.dto.HardAdBroadcastDto;
import com.bsd.pjcloud.hard.api.dto.HardBroadcastDto;
import com.bsd.pjcloud.hard.api.entity.HardBroadcastEntity;
import com.bsd.pjcloud.hard.api.entity.order.HardOrderEntity;
@@ -22,4 +23,9 @@ public interface HardBroadcastService extends IService<HardBroadcastEntity> {
* 完成硬件广播
*/
void doneBroadcast(HardOrderEntity orderdetail, UserInfo userInfo);
/**
* android完成一轮广播
*/
void androidDoneBroadcast(HardAdBroadcastDto dto);
}
@@ -2,6 +2,7 @@ package com.bsd.pjcloud.hard.service.impl;
import cn.hutool.core.util.ObjectUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.bsd.pjcloud.admin.api.dto.UserInfo;
@@ -15,6 +16,7 @@ import com.bsd.pjcloud.common.data.datascope.DataScope;
import com.bsd.pjcloud.hard.api.constant.HardBroadcastEnum;
import com.bsd.pjcloud.hard.api.constant.HardTypeEnum;
import com.bsd.pjcloud.hard.api.constant.order.HardOrderTypeEnum;
import com.bsd.pjcloud.hard.api.dto.HardAdBroadcastDto;
import com.bsd.pjcloud.hard.api.dto.HardBroadcastDto;
import com.bsd.pjcloud.hard.api.dto.manager.HardManagerDto;
import com.bsd.pjcloud.hard.api.entity.HardBroadcastEntity;
@@ -186,6 +188,19 @@ public class HardBroadcastServiceImpl extends ServiceImpl<HardBroadcastMapper, H
remoteMqttEventService.sendTakeFoodBroadcast(msg);
}
/**
* android完成一轮广播
*/
@Override
public void androidDoneBroadcast(HardAdBroadcastDto dto) {
if (ObjectUtil.isEmpty(dto.getIds())) return;
if (ObjectUtil.isEmpty(dto.getCount())) dto.setCount(1);
baseMapper.update(new LambdaUpdateWrapper<HardBroadcastEntity>()
.setSql(" broadcast_count = broadcast_count + " + dto.getCount())
.in(HardBroadcastEntity::getId, dto.getIds())
);
}
private void disposeList(List<HardBroadcastVo> list, HardBroadcastDto dto) {
if (ObjectUtil.isEmpty(list)) return;
// 设备