From b3b566ebdfed4005aaa513da3d5d2fd3924903cc Mon Sep 17 00:00:00 2001
From: linwei <872216696@qq.com>
Date: Wed, 31 Jan 2024 16:17:54 +0800
Subject: [PATCH] 拿不到地址总表数据,不设置网格信息

---
 src/main/java/org/springblade/modules/discuss/controller/UserTopicsController.java |   66 +++++++++++++++++++++++++++------
 1 files changed, 54 insertions(+), 12 deletions(-)

diff --git a/src/main/java/org/springblade/modules/discuss/controller/UserTopicsController.java b/src/main/java/org/springblade/modules/discuss/controller/UserTopicsController.java
index 11162c2..0e93a58 100644
--- a/src/main/java/org/springblade/modules/discuss/controller/UserTopicsController.java
+++ b/src/main/java/org/springblade/modules/discuss/controller/UserTopicsController.java
@@ -16,25 +16,31 @@
  */
 package org.springblade.modules.discuss.controller;
 
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
-import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
 import lombok.AllArgsConstructor;
-import javax.validation.Valid;
-
-import org.springblade.core.secure.BladeUser;
+import org.springblade.common.constant.CommonConstant;
+import org.springblade.core.boot.ctrl.BladeController;
 import org.springblade.core.mp.support.Condition;
 import org.springblade.core.mp.support.Query;
+import org.springblade.core.secure.utils.AuthUtil;
 import org.springblade.core.tool.api.R;
-import org.springblade.core.tool.utils.Func;
-import org.springframework.web.bind.annotation.*;
-import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.springblade.core.tool.utils.SpringUtil;
+import org.springblade.modules.discuss.entity.PublicDiscussEntity;
 import org.springblade.modules.discuss.entity.UserTopicsEntity;
+import org.springblade.modules.discuss.service.IPublicDiscussService;
+import org.springblade.modules.discuss.service.IUserTopicsService;
+import org.springblade.modules.discuss.vo.TopicsVO;
 import org.springblade.modules.discuss.vo.UserTopicsVO;
 import org.springblade.modules.discuss.wrapper.UserTopicsWrapper;
-import org.springblade.modules.discuss.service.IUserTopicsService;
-import org.springblade.core.boot.ctrl.BladeController;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
+import java.util.List;
 
 /**
  * 用户议题报表 控制器
@@ -109,7 +115,29 @@
 	@ApiOperationSupport(order = 6)
 	@ApiOperation(value = "新增或修改", notes = "传入userTopics")
 	public R submit(@Valid @RequestBody UserTopicsEntity userTopics) {
-		return R.status(userTopicsService.saveOrUpdate(userTopics));
+		userTopics.setUserId(AuthUtil.getUserId());
+		// 判断是否一户一票 还是一人一票
+		IPublicDiscussService bean = SpringUtil.getBean(IPublicDiscussService.class);
+		PublicDiscussEntity one = bean.getOne(Wrappers.<PublicDiscussEntity>lambdaQuery().eq(PublicDiscussEntity::getId, userTopics.getPublicDiscussId()));
+		// 一户一票
+		if (one.getVoteRestrictions().equals(CommonConstant.NUMBER_ONE)) {
+			long count = userTopicsService.count(Wrappers.<UserTopicsEntity>lambdaQuery()
+				.eq(UserTopicsEntity::getPublicDiscussId, userTopics.getPublicDiscussId())
+				.eq(UserTopicsEntity::getUserId, userTopics.getUserId())
+				.eq(UserTopicsEntity::getHouseCode, userTopics.getHouseCode()));
+			if (count > 0) {
+				return R.fail("您房屋已经投票,不能重复投票!");
+			}
+			// 一人一票
+		} else {
+			long count = userTopicsService.count(Wrappers.<UserTopicsEntity>lambdaQuery()
+				.eq(UserTopicsEntity::getPublicDiscussId, userTopics.getPublicDiscussId())
+				.eq(UserTopicsEntity::getUserId, userTopics.getUserId()));
+			if (count > 0) {
+				return R.fail("您已投票,不能重复投票!");
+			}
+		}
+		return R.status(userTopicsService.save(userTopics));
 	}
 
 	/**
@@ -118,8 +146,22 @@
 	@PostMapping("/remove")
 	@ApiOperationSupport(order = 7)
 	@ApiOperation(value = "逻辑删除", notes = "传入ids")
-	public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
-		return R.status(userTopicsService.removeByIds(Func.toLongList(ids)));
+	public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam Integer ids) {
+		UserTopicsEntity userTopicsEntity = new UserTopicsEntity();
+		userTopicsEntity.setDeleteFlag(1);
+		userTopicsEntity.setId(ids);
+		return R.status(userTopicsService.updateById(userTopicsEntity));
+	}
+
+	/**
+	 * 议题表 修改
+	 */
+	@PostMapping("/updateBath")
+	@ApiOperationSupport(order = 5)
+	@ApiOperation(value = "批量更新", notes = "传入topics")
+	public R updateBath(@Valid @RequestBody List<TopicsVO> topics) throws Exception {
+		Boolean result = userTopicsService.batchSave(topics);
+		return R.status(result);
 	}
 
 

--
Gitblit v1.9.3