From 9308557e9616507c6046fadeab6e754af81a8fa2 Mon Sep 17 00:00:00 2001
From: liurunyu <lry9898@163.com>
Date: 星期四, 31 十月 2024 08:35:01 +0800
Subject: [PATCH] Merge branch 'master' of http://8.140.179.55:20000/r/pipIrr-SV
---
pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeIssueReportMapper.xml | 28 ++--
pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeVirtualCardMapper.xml | 2
pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/issue/dto/DtoIssueReport.java | 64 ++++++++++
pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoSe/SeIssueReport.java | 115 +++---------------
pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/issue/IssueSv.java | 31 +++++
pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/issue/IssueCtrl.java | 74 ++++++++++++
6 files changed, 207 insertions(+), 107 deletions(-)
diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoSe/SeIssueReport.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoSe/SeIssueReport.java
index c542e3c..1fca704 100644
--- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoSe/SeIssueReport.java
+++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoSe/SeIssueReport.java
@@ -1,6 +1,15 @@
package com.dy.pipIrrGlobal.pojoSe;
+import com.alibaba.fastjson2.JSONArray;
+import com.alibaba.fastjson2.annotation.JSONField;
+import com.alibaba.fastjson2.writer.ObjectWriterImplToString;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler;
+import com.dy.common.po.BaseEntity;
+import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.*;
import java.math.BigDecimal;
@@ -13,16 +22,20 @@
* @Description 闂涓婃姤瀹炰綋绫�
*/
-@TableName(value="se_virtual_card", autoResultMap = true)
+@TableName(value="se_issue_report", autoResultMap = true)
@Data
@Builder
@ToString
@NoArgsConstructor
@AllArgsConstructor
-public class SeIssueReport {
+public class SeIssueReport implements BaseEntity {
+ public static final long serialVersionUID = 202410301012001L;
+
/**
* 涓婚敭
*/
+ @JSONField(serializeUsing= ObjectWriterImplToString.class)
+ @TableId(type = IdType.INPUT)
private Long id;
/**
@@ -33,17 +46,20 @@
/**
* 鐓х墖鍒楄〃
*/
- private String images;
+ @TableField(typeHandler = JacksonTypeHandler.class)
+ private JSONArray images;
/**
* 闊抽鍒楄〃
*/
- private String audios;
+ @TableField(typeHandler = JacksonTypeHandler.class)
+ private JSONArray audios;
/**
* 瑙嗛鍒楄〃
*/
- private String videos;
+ @TableField(typeHandler = JacksonTypeHandler.class)
+ private JSONArray videos;
/**
* 缁忓害
@@ -58,11 +74,13 @@
/**
* 鍐滄埛ID
*/
+ @JSONField(serializeUsing= ObjectWriterImplToString.class)
private Long clientId;
/**
* 涓婃姤鏃堕棿
*/
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date reportTime;
/**
@@ -75,91 +93,4 @@
*/
private Byte state;
- public Long getId() {
- return id;
- }
-
- public void setId(Long id) {
- this.id = id;
- }
-
- public String getContent() {
- return content;
- }
-
- public void setContent(String content) {
- this.content = content;
- }
-
- public String getImages() {
- return images;
- }
-
- public void setImages(String images) {
- this.images = images;
- }
-
- public String getAudios() {
- return audios;
- }
-
- public void setAudios(String audios) {
- this.audios = audios;
- }
-
- public String getVideos() {
- return videos;
- }
-
- public void setVideos(String videos) {
- this.videos = videos;
- }
-
- public BigDecimal getLng() {
- return lng;
- }
-
- public void setLng(BigDecimal lng) {
- this.lng = lng;
- }
-
- public BigDecimal getLat() {
- return lat;
- }
-
- public void setLat(BigDecimal lat) {
- this.lat = lat;
- }
-
- public Long getClientId() {
- return clientId;
- }
-
- public void setClientId(Long clientId) {
- this.clientId = clientId;
- }
-
- public Date getReportTime() {
- return reportTime;
- }
-
- public void setReportTime(Date reportTime) {
- this.reportTime = reportTime;
- }
-
- public String getPhone() {
- return phone;
- }
-
- public void setPhone(String phone) {
- this.phone = phone;
- }
-
- public Byte getState() {
- return state;
- }
-
- public void setState(Byte state) {
- this.state = state;
- }
}
\ No newline at end of file
diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeIssueReportMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeIssueReportMapper.xml
index fb51563..1d9065f 100644
--- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeIssueReportMapper.xml
+++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeIssueReportMapper.xml
@@ -6,9 +6,9 @@
<!--@Table se_issue_report-->
<id column="id" jdbcType="BIGINT" property="id" />
<result column="content" jdbcType="VARCHAR" property="content" />
- <result column="images" jdbcType="VARCHAR" property="images" />
- <result column="audios" jdbcType="VARCHAR" property="audios" />
- <result column="videos" jdbcType="VARCHAR" property="videos" />
+ <result column="images" jdbcType="JAVA_OBJECT" typeHandler="com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler" property="images" />
+ <result column="audios" jdbcType="JAVA_OBJECT" typeHandler="com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler" property="audios" />
+ <result column="videos" jdbcType="JAVA_OBJECT" typeHandler="com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler" property="videos" />
<result column="lng" jdbcType="DECIMAL" property="lng" />
<result column="lat" jdbcType="DECIMAL" property="lat" />
<result column="client_id" jdbcType="BIGINT" property="clientId" />
@@ -38,8 +38,8 @@
audios, videos, lng,
lat, client_id, report_time,
phone, `state`)
- values (#{id,jdbcType=BIGINT}, #{content,jdbcType=VARCHAR}, #{images,jdbcType=VARCHAR},
- #{audios,jdbcType=VARCHAR}, #{videos,jdbcType=VARCHAR}, #{lng,jdbcType=DECIMAL},
+ values (#{id,jdbcType=BIGINT}, #{content,jdbcType=VARCHAR}, #{images,jdbcType=JAVA_OBJECT, typeHandler=com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler},
+ #{audios,jdbcType=JAVA_OBJECT, typeHandler=com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler}, #{videos,jdbcType=JAVA_OBJECT, typeHandler=com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler}, #{lng,jdbcType=DECIMAL},
#{lat,jdbcType=DECIMAL}, #{clientId,jdbcType=BIGINT}, #{reportTime,jdbcType=TIMESTAMP},
#{phone,jdbcType=VARCHAR}, #{state,jdbcType=TINYINT})
</insert>
@@ -89,13 +89,13 @@
#{content,jdbcType=VARCHAR},
</if>
<if test="images != null">
- #{images,jdbcType=VARCHAR},
+ #{images,jdbcType=JAVA_OBJECT, typeHandler=com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler},
</if>
<if test="audios != null">
- #{audios,jdbcType=VARCHAR},
+ #{audios,jdbcType=JAVA_OBJECT, typeHandler=com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler},
</if>
<if test="videos != null">
- #{videos,jdbcType=VARCHAR},
+ #{videos,jdbcType=JAVA_OBJECT, typeHandler=com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler},
</if>
<if test="lng != null">
#{lng,jdbcType=DECIMAL},
@@ -125,13 +125,13 @@
content = #{content,jdbcType=VARCHAR},
</if>
<if test="images != null">
- images = #{images,jdbcType=VARCHAR},
+ images = #{images,jdbcType=JAVA_OBJECT, typeHandler=com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler},
</if>
<if test="audios != null">
- audios = #{audios,jdbcType=VARCHAR},
+ audios = #{audios,jdbcType=JAVA_OBJECT, typeHandler=com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler},
</if>
<if test="videos != null">
- videos = #{videos,jdbcType=VARCHAR},
+ videos = #{videos,jdbcType=JAVA_OBJECT, typeHandler=com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler},
</if>
<if test="lng != null">
lng = #{lng,jdbcType=DECIMAL},
@@ -158,9 +158,9 @@
<!--@mbg.generated-->
update se_issue_report
set content = #{content,jdbcType=VARCHAR},
- images = #{images,jdbcType=VARCHAR},
- audios = #{audios,jdbcType=VARCHAR},
- videos = #{videos,jdbcType=VARCHAR},
+ images = #{images,jdbcType=JAVA_OBJECT, typeHandler=com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler},
+ audios = #{audios,jdbcType=JAVA_OBJECT, typeHandler=com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler},
+ videos = #{videos,jdbcType=JAVA_OBJECT, typeHandler=com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler},
lng = #{lng,jdbcType=DECIMAL},
lat = #{lat,jdbcType=DECIMAL},
client_id = #{clientId,jdbcType=BIGINT},
diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeVirtualCardMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeVirtualCardMapper.xml
index 54d03d4..6fc5c10 100644
--- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeVirtualCardMapper.xml
+++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeVirtualCardMapper.xml
@@ -210,7 +210,7 @@
SELECT
id,
vc_num AS vcNum,
- money,
+ ROUND(money / 100,2) AS money,
in_use AS inUse,
(CASE
WHEN in_use = 0 THEN '鏈娇鐢�'
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/issue/IssueCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/issue/IssueCtrl.java
new file mode 100644
index 0000000..3c18226
--- /dev/null
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/issue/IssueCtrl.java
@@ -0,0 +1,74 @@
+package com.dy.pipIrrWechat.issue;
+
+import com.alibaba.fastjson2.JSONArray;
+import com.dy.common.webUtil.BaseResponse;
+import com.dy.common.webUtil.BaseResponseUtils;
+import com.dy.pipIrrGlobal.pojoSe.SeIssueReport;
+import com.dy.pipIrrWechat.issue.dto.DtoIssueReport;
+import jakarta.validation.Valid;
+import lombok.RequiredArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.transaction.annotation.Transactional;
+import org.springframework.validation.BindingResult;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.math.BigDecimal;
+import java.util.Objects;
+import java.util.Optional;
+
+/**
+ * @author ZhuBaoMin
+ * @date 2024-10-30 10:34
+ * @LastEditTime 2024-10-30 10:34
+ * @Description 鍐滄埛闂涓婃姤鎺у埗绫�
+ */
+
+@Slf4j
+@RestController
+@RequestMapping(path="issue")
+@RequiredArgsConstructor
+public class IssueCtrl {
+ private final IssueSv issueSv;
+
+ /**
+ * 娣诲姞鍐滄埛闂涓婃姤
+ * @param po
+ * @param bindingResult
+ * @return
+ */
+ @PostMapping(path = "addIssueReport")
+ @Transactional(rollbackFor = Exception.class)
+ public BaseResponse<Boolean> addIssueReport(@RequestBody @Valid DtoIssueReport po, BindingResult bindingResult) {
+ if(bindingResult != null && bindingResult.hasErrors()){
+ return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage());
+ }
+
+ Long clientId = po.getClientId();
+ String phone = Optional.ofNullable(po.getPhone()).orElse("");
+ BigDecimal lng = Optional.ofNullable(po.getLng()).orElse(BigDecimal.valueOf(0));
+ BigDecimal lat = Optional.ofNullable(po.getLat()).orElse(BigDecimal.valueOf(0));
+ String content = Optional.ofNullable(po.getContent()).orElse("");
+ JSONArray images = Optional.ofNullable(po.getImages()).orElse(new JSONArray());
+ JSONArray audios = Optional.ofNullable(po.getAudios()).orElse(new JSONArray());
+ JSONArray videos = Optional.ofNullable(po.getVideos()).orElse(new JSONArray());
+
+ SeIssueReport seIssueReport = new SeIssueReport();
+ seIssueReport.setClientId(clientId);
+ seIssueReport.setPhone(phone);
+ seIssueReport.setLng(lng);
+ seIssueReport.setLat(lat);
+ seIssueReport.setContent(content);
+ seIssueReport.setImages(images);
+ seIssueReport.setAudios(audios);
+ seIssueReport.setVideos(videos);
+ Long issueReportId = issueSv.insertIssueReport(seIssueReport);
+ if(issueReportId == null) {
+ return BaseResponseUtils.buildErrorMsg("鍐滄埛闂涓婃姤澶辫触");
+ }
+
+ return BaseResponseUtils.buildSuccess(true) ;
+ }
+}
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/issue/IssueSv.java b/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/issue/IssueSv.java
new file mode 100644
index 0000000..44b313d
--- /dev/null
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/issue/IssueSv.java
@@ -0,0 +1,31 @@
+package com.dy.pipIrrWechat.issue;
+
+import com.dy.pipIrrGlobal.daoSe.SeIssueReportMapper;
+import com.dy.pipIrrGlobal.pojoSe.SeIssueReport;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+/**
+ * @author ZhuBaoMin
+ * @date 2024-10-30 10:34
+ * @LastEditTime 2024-10-30 10:34
+ * @Description 鍐滄埛闂涓婃姤鏈嶅姟绫�
+ */
+
+@Slf4j
+@Service
+public class IssueSv {
+ @Autowired
+ private SeIssueReportMapper seIssueReportMapper;
+
+ /**
+ * 娣诲姞闂涓婃姤淇℃伅
+ * @param po
+ * @return
+ */
+ public Long insertIssueReport(SeIssueReport po) {
+ seIssueReportMapper.insert(po);
+ return po.getId();
+ }
+}
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/issue/dto/DtoIssueReport.java b/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/issue/dto/DtoIssueReport.java
new file mode 100644
index 0000000..39a693f
--- /dev/null
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/issue/dto/DtoIssueReport.java
@@ -0,0 +1,64 @@
+package com.dy.pipIrrWechat.issue.dto;
+
+import com.alibaba.fastjson2.JSONArray;
+import jakarta.validation.constraints.NotNull;
+import lombok.Data;
+
+import java.math.BigDecimal;
+
+/**
+ * @author ZhuBaoMin
+ * @date 2024-10-30 10:45
+ * @LastEditTime 2024-10-30 10:45
+ * @Description 鍐滄埛闂涓婃姤浼犺緭绫�
+ */
+
+@Data
+public class DtoIssueReport {
+ public static final long serialVersionUID = 202410301046001L;
+
+ /**
+ * 鍙嶉鍐呭
+ */
+ private String content;
+
+ /**
+ * 鐓х墖鍒楄〃
+ */
+ //@TableField(typeHandler = JacksonTypeHandler.class)
+ private JSONArray images;
+
+ /**
+ * 闊抽鍒楄〃
+ */
+ //@TableField(typeHandler = JacksonTypeHandler.class)
+ private JSONArray audios;
+
+ /**
+ * 瑙嗛鍒楄〃
+ */
+ //@TableField(typeHandler = JacksonTypeHandler.class)
+ private JSONArray videos;
+
+ /**
+ * 缁忓害
+ */
+ private BigDecimal lng;
+
+ /**
+ * 绾害
+ */
+ private BigDecimal lat;
+
+ /**
+ * 鍐滄埛ID
+ */
+ @NotNull(message = "鍐滄埛涓嶈兘涓虹┖")
+ private Long clientId;
+
+ /**
+ * 鑱旂郴鐢佃瘽
+ */
+ private String phone;
+
+}
--
Gitblit v1.8.0