zoujiajian преди 3 години
родител
ревизия
f9501ff45b

+ 1 - 1
netflix-dao/src/main/java/com/cyksj/model/dto/FormFieldsView.java

@@ -19,7 +19,7 @@ import java.util.List;
 @Getter
 @Setter
 @SearchBean(tables = "form_fields ff left join form_template ft on ft.id = ff.template_id",
-		where = "ff.is_deleted is true,ft.is_deleted is true")
+		where = "ff.deleted is true,ft.deleted is true")
 public class FormFieldsView {
 	@DbField("ff.id")
 	private Long id;

+ 1 - 1
netflix-dao/src/main/java/com/cyksj/model/dto/QuestionnaireView.java

@@ -19,7 +19,7 @@ import java.util.List;
 @Getter
 @Setter
 @SearchBean(tables = "form_template ft left join form_fields ff on ff.template_id = ft.id",
-		where = "ff.is_deleted is true")
+		where = "ff.deleted is true")
 public class QuestionnaireView {
 
 	@DbField("ft.id")

+ 1 - 1
netflix-dao/src/main/java/com/cyksj/model/entity/FormFields.java

@@ -41,5 +41,5 @@ public class FormFields extends BaseEntity{
 	 */
 	private Integer sorted;
 
-	private Boolean isDeleted;
+	private Boolean deleted;
 }

+ 1 - 1
netflix-dao/src/main/java/com/cyksj/model/entity/FormFieldsData.java

@@ -31,5 +31,5 @@ public class FormFieldsData extends BaseEntity{
 	@NotNull(message = "请选择对应问题选项")
 	private String content;
 
-	private Boolean isDeleted;
+	private Boolean deleted;
 }

+ 1 - 1
netflix-dao/src/main/java/com/cyksj/model/entity/FormTemplate.java

@@ -21,5 +21,5 @@ public class FormTemplate extends BaseEntity{
 	 */
 	private String descStr;
 
-	private Boolean isDeleted;
+	private Boolean deleted;
 }

+ 9 - 0
netflix-dao/src/main/java/com/cyksj/model/entity/QuestionnairePromotion.java

@@ -2,6 +2,10 @@ package com.cyksj.model.entity;
 
 import lombok.Getter;
 import lombok.Setter;
+import org.hibernate.validator.constraints.Length;
+
+import javax.validation.constraints.NotEmpty;
+import javax.validation.constraints.NotNull;
 
 /*
  *项目名: netflix
@@ -12,9 +16,14 @@ import lombok.Setter;
 @Getter
 @Setter
 public class QuestionnairePromotion extends BaseEntity{
+	@NotNull(message = "模板id为空")
 	private Long templateId;
 
+	@NotEmpty(message = "问卷活动名称为空")
+	@Length(max = 100)
 	private String name;
 
 	private String remark;
+
+	private Boolean deleted;
 }

+ 1 - 1
netflix-dao/src/main/java/com/cyksj/model/views/QuestionnaireView.java

@@ -15,7 +15,7 @@ import lombok.Setter;
 @Getter
 @Setter
 @SearchBean(tables = "form_template fd left join form_fields ff on ff.template_id = fd.id",
-		where = "fd.is_deleted is true,ff.is_deleted is true")
+		where = "fd.deleted is true,ff.deleted is true")
 public class QuestionnaireView {
 
 	@DbField("fd.promotion_id")

+ 14 - 0
netflix-service/src/main/java/com/cyksj/service/mange/form/QuestionnairePromotionService.java

@@ -0,0 +1,14 @@
+package com.cyksj.service.mange.form;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.cyksj.model.entity.QuestionnairePromotion;
+
+/*
+ *项目名: netflix
+ *文件名: QuestionnairePromotionService
+ *创建者: JavaZou
+ *创建时间:2023/6/14 11:42
+ */
+public interface QuestionnairePromotionService extends IService<QuestionnairePromotion> {
+	void saveOrUpdatePromotion(QuestionnairePromotion promotion);
+}

+ 31 - 0
netflix-service/src/main/java/com/cyksj/service/mange/form/impl/QuestionnairePromotionServiceImpl.java

@@ -0,0 +1,31 @@
+package com.cyksj.service.mange.form.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.cyksj.mapper.manage.form.QuestionnairePromotionMapper;
+import com.cyksj.model.entity.QuestionnairePromotion;
+import com.cyksj.service.mange.form.QuestionnairePromotionService;
+import lombok.RequiredArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.stereotype.Service;
+
+/*
+ *项目名: netflix
+ *文件名: QuestionnairePromotionServiceImpl
+ *创建者: JavaZou
+ *创建时间:2023/6/14 11:42
+ */
+@Service
+@RequiredArgsConstructor
+@Slf4j
+public class QuestionnairePromotionServiceImpl extends ServiceImpl<QuestionnairePromotionMapper, QuestionnairePromotion> implements QuestionnairePromotionService {
+	private final QuestionnairePromotionMapper promotionMapper;
+
+	@Override
+	public void saveOrUpdatePromotion(QuestionnairePromotion promotion) {
+		if (promotion.getId() == null) {
+			promotionMapper.insert(promotion);
+			return;
+		}
+		promotionMapper.updateById(promotion);
+	}
+}

+ 2 - 2
netflix-web/src/main/java/com/cyksj/web/controller/manage/form/FormController.java

@@ -92,11 +92,11 @@ public class FormController {
 	@PutMapping("/template/del/{id}")
 	public Result<String> delTid(@PathVariable Long id) {
 		formTemplateMapper.update(null, Wrappers.lambdaUpdate(FormTemplate.class)
-				.set(FormTemplate::getIsDeleted, false)
+				.set(FormTemplate::getDeleted, false)
 				.eq(FormTemplate::getId, id));
 
 		formFieldsMapper.update(null, Wrappers.lambdaUpdate(FormFields.class)
-				.set(FormFields::getIsDeleted, false)
+				.set(FormFields::getDeleted, false)
 				.eq(FormFields::getTemplateId, id));
 		return GatewayResponse.SUCCESS.newBuilder().toResult();
 	}

+ 60 - 0
netflix-web/src/main/java/com/cyksj/web/controller/manage/form/QuestionnairePromotionController.java

@@ -0,0 +1,60 @@
+package com.cyksj.web.controller.manage.form;
+
+import com.cyksj.common.exception.BusinessRuntimeException;
+import com.cyksj.dto.Result;
+import com.cyksj.enums.GatewayResponse;
+import com.cyksj.model.entity.QuestionnairePromotion;
+import com.cyksj.service.mange.form.QuestionnairePromotionService;
+import com.ejlchina.searcher.BeanSearcher;
+import com.ejlchina.searcher.SearchResult;
+import com.ejlchina.searcher.util.MapUtils;
+import lombok.RequiredArgsConstructor;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.*;
+
+import javax.servlet.http.HttpServletRequest;
+
+/*
+ *项目名: netflix
+ *文件名: QuestionnairePromotionController
+ *创建者: JavaZou
+ *创建时间:2023/6/14 11:36
+ */
+@RestController
+@RequestMapping("/manage/questionnaire")
+@RequiredArgsConstructor
+public class QuestionnairePromotionController {
+	private final QuestionnairePromotionService promotionService;
+
+	private final BeanSearcher beanSearcher;
+
+	private final HttpServletRequest request;
+
+	@PostMapping("/post")
+	public Result<String> saveQuestionnaire(@RequestBody @Validated QuestionnairePromotion promotion) {
+		promotionService.saveOrUpdatePromotion(promotion);
+		return GatewayResponse.SUCCESS.newBuilder().toResult();
+	}
+
+	@PutMapping("/put")
+	public Result<String> updateQuestionnaire(@RequestBody @Validated QuestionnairePromotion promotion) {
+		promotionService.saveOrUpdatePromotion(promotion);
+		return GatewayResponse.SUCCESS.newBuilder().toResult();
+	}
+
+	@DeleteMapping("/delete/{id}")
+	public Result<String> delById(@PathVariable Long id) {
+		QuestionnairePromotion byId = promotionService.getById(id);
+		if (byId == null || !byId.getDeleted()) throw BusinessRuntimeException.getInstance("该记录已被删除");
+		byId.setDeleted(false);
+		promotionService.updateById(byId);
+		return GatewayResponse.SUCCESS.newBuilder().toResult();
+	}
+
+	@GetMapping("/get")
+	public Result<SearchResult<QuestionnairePromotion>> getPromotions() {
+		SearchResult<QuestionnairePromotion> search = beanSearcher.search(QuestionnairePromotion.class, MapUtils.flatBuilder(request.getParameterMap())
+				.field(QuestionnairePromotion::getDeleted, true).build());
+		return GatewayResponse.SUCCESS.newBuilder().toResult(search);
+	}
+}