删除信息接口改造,支持指定人删除

This commit is contained in:
zhangqinbin
2022-01-22 13:50:40 +08:00
parent 0b6f8f257d
commit efcadec866
5 changed files with 20 additions and 20 deletions

View File

@ -44,8 +44,9 @@ public class BizMessageProducerController {
@ApiOperation("删除信息.")
@DeleteMapping
@ResponseStatus(code = HttpStatus.OK)
public BaseResponse<Map<String,Integer>> deleteMessageByCode(@ApiParam(value = "消息内容", required = true)@RequestParam("code") String code) {
public BaseResponse<Boolean> deleteMessageByCode(@RequestParam(value = "code",required = true) String code,
@RequestParam(value = "userId",required = false)String userId) {
return BaseResponse.success(service.deleteMessageByCode(code));
return BaseResponse.success(service.deleteMessageByCode(code,userId));
}
}

View File

@ -25,5 +25,5 @@ public interface BizMessageMapper extends BaseMapper<BizMessage> {
Integer deleteMessageByServicecdoe(List<String> magIds);
Integer deleteAuthorizeByServicecdoe(List<String> magIds);
Integer deleteAuthorizeByServicecdoe(@Param("magId")String magId,@Param("userIds")List<String> userIds);
}

View File

@ -94,9 +94,12 @@
<delete id="deleteAuthorizeByServicecdoe" parameterType="java.lang.String">
delete from biz_message_authorize
where message_id in
<foreach item="id" collection="magIds" open="(" separator="," close=")">
#{id}
</foreach>
where message_id = #{magId}
<if test="userIds!=null ">
and user_id in
<foreach item="id" collection="userIds" open="(" separator="," close=")">
#{id}
</foreach>
</if>
</delete>
</mapper>

View File

@ -10,5 +10,5 @@ public interface BizMessageProducerService {
Optional<BizMessage> produce(BizMessageRawDTO messageRaw);
Map<String,Integer> deleteMessageByCode(String questId);
Boolean deleteMessageByCode(String questId,String userId);
}

View File

@ -26,10 +26,7 @@ import org.springframework.util.Assert;
import java.io.IOException;
import java.io.StringWriter;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Optional;
import java.util.*;
import java.util.stream.Collectors;
/**
@ -168,20 +165,19 @@ public class BizMessageProducerServiceImpl implements BizMessageProducerService
* @return
*/
@Override
public Map<String,Integer> deleteMessageByCode(String questId) {
public Boolean deleteMessageByCode(String questId,String userId) {
List<BizMessage> messageList = messageMapper.findMessageByLikeCode(questId);
log.info(" 删除查询结果 messageList "+messageList);
List<String> magIds = messageList.stream().map(BizMessage::getId).distinct().collect(Collectors.toList());
Map<String,Integer> map = new HashMap<>();
Integer m = new Integer(0);
Integer a = new Integer(0);
if(magIds!=null&&magIds.size()>0) {
m = messageMapper.deleteMessageByServicecdoe(magIds);
a = messageMapper.deleteAuthorizeByServicecdoe(magIds);
List<String> userIds = new ArrayList<>();
userIds.add(userId);
magIds.forEach(magid->{
messageMapper.deleteAuthorizeByServicecdoe(magid,userIds);
});
}
map.put("deleteMessage", m);
map.put("deleteAuthorize", a);
return map;
return true;
}
}