|
@@ -0,0 +1,95 @@
|
|
|
+package com.chelvc.cloud.maintain.controller;
|
|
|
+
|
|
|
+import com.chelvc.cloud.maintain.copier.EnquireReplyCopier;
|
|
|
+import com.chelvc.cloud.maintain.vo.EnquireReplyVO;
|
|
|
+import com.chelvc.cloud.vehicle.api.dto.EnquireReplyDTO;
|
|
|
+import com.chelvc.cloud.vehicle.api.param.EnquireReplyModifyParam;
|
|
|
+import com.chelvc.cloud.vehicle.api.param.EnquireReplyPagingParam;
|
|
|
+import com.chelvc.cloud.vehicle.api.service.EnquireReplyService;
|
|
|
+import com.chelvc.framework.base.annotation.ResponseWrapping;
|
|
|
+import com.chelvc.framework.base.util.ResourceUtils;
|
|
|
+import com.chelvc.framework.common.model.Pagination;
|
|
|
+import org.apache.dubbo.config.annotation.DubboReference;
|
|
|
+import org.springframework.validation.annotation.Validated;
|
|
|
+import org.springframework.web.bind.annotation.*;
|
|
|
+
|
|
|
+import javax.validation.Valid;
|
|
|
+import javax.validation.constraints.Min;
|
|
|
+import java.util.List;
|
|
|
+import java.util.stream.Collectors;
|
|
|
+
|
|
|
+/**
|
|
|
+ * 询价回复接口
|
|
|
+ *
|
|
|
+ * @author xp
|
|
|
+ * @data 2023/4/5
|
|
|
+ */
|
|
|
+@Validated
|
|
|
+@RestController
|
|
|
+@ResponseWrapping
|
|
|
+public class EnquireReplyController {
|
|
|
+
|
|
|
+ @DubboReference
|
|
|
+ private EnquireReplyService enquireReplyService;
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 新增询价回复
|
|
|
+ *
|
|
|
+ * @param param 新增参数
|
|
|
+ * @return 询价回复主键
|
|
|
+ */
|
|
|
+ @PostMapping("/enquire-reply")
|
|
|
+ public Long addEnquire(@RequestBody @Valid EnquireReplyModifyParam param) {
|
|
|
+ return this.enquireReplyService.addEnquireReply(param);
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 修改询价回复
|
|
|
+ *
|
|
|
+ * @param id 询价回复主键
|
|
|
+ * @param param 修改参数
|
|
|
+ */
|
|
|
+ @PutMapping("/enquire-reply/{id}")
|
|
|
+ public void updateEnquire(@PathVariable("id") @Min(value = 1, message = "询价回复主键不能小于1") Long id,
|
|
|
+ @RequestBody @Valid EnquireReplyModifyParam param) {
|
|
|
+ this.enquireReplyService.updateEnquireReply(id, param);
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 回复详情
|
|
|
+ *
|
|
|
+ * @param id 询价回复主键
|
|
|
+ * @return 询价信息
|
|
|
+ */
|
|
|
+ @GetMapping("/enquire-reply/{id}")
|
|
|
+ public EnquireReplyVO getEnquire(@PathVariable("id") @Min(value = 1, message = "询价回复主键不能小于1") Long id) {
|
|
|
+ EnquireReplyDTO enquireReply = this.enquireReplyService.getEnquireReply(id);
|
|
|
+ ResourceUtils.required(enquireReply, "询价回复不存在");
|
|
|
+ return this.covert(enquireReply);
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 查询询价回复分页
|
|
|
+ *
|
|
|
+ * @param param 查询参数
|
|
|
+ * @return 询价回复分页信息
|
|
|
+ */
|
|
|
+ @GetMapping("/enquire-reply/paging")
|
|
|
+ public Pagination<EnquireReplyVO> getEnquireReplyPaging(@Valid EnquireReplyPagingParam param) {
|
|
|
+ Pagination<EnquireReplyDTO> enquireReplyPaging = this.enquireReplyService.getEnquireReplyPaging(param);
|
|
|
+ List<EnquireReplyVO> enquireReplies = enquireReplyPaging.getRecords().stream().map(this::covert).collect(Collectors.toList());
|
|
|
+ return enquireReplyPaging.convert(enquireReplies);
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 转换
|
|
|
+ *
|
|
|
+ * @param enquire
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ public EnquireReplyVO covert(EnquireReplyDTO enquire) {
|
|
|
+ return EnquireReplyCopier.INSTANCE.copying(enquire);
|
|
|
+ }
|
|
|
+
|
|
|
+}
|