فهرست منبع

图片集合修改为jsonarray

lyhzzz 2 سال پیش
والد
کامیت
90742f3502

+ 6 - 4
src/main/java/com/fdkankan/sale/entity/OrderReceiving.java

@@ -1,9 +1,11 @@
 package com.fdkankan.sale.entity;
 
+import com.alibaba.fastjson.JSONArray;
 import com.baomidou.mybatisplus.annotation.*;
 
 import java.io.Serializable;
-import java.util.Date;
+
+import com.fdkankan.sale.typehandle.JsonArrayTypeHandler;
 import lombok.Getter;
 import lombok.Setter;
 
@@ -17,7 +19,7 @@ import lombok.Setter;
  */
 @Getter
 @Setter
-@TableName("t_order_receiving")
+@TableName(value = "t_order_receiving",autoResultMap = true)
 public class OrderReceiving implements Serializable {
 
     private static final long serialVersionUID = 1L;
@@ -42,8 +44,8 @@ public class OrderReceiving implements Serializable {
     /**
      * 相关图片
      */
-    @TableField("order_fault_img")
-    private String orderFaultImg;
+    @TableField(typeHandler = JsonArrayTypeHandler.class)
+    private JSONArray orderFaultImg;
 
     /**
      * 保修类型 0保修期内,1保修期外,2非保修项目

+ 7 - 5
src/main/java/com/fdkankan/sale/entity/Repair.java

@@ -1,14 +1,16 @@
 package com.fdkankan.sale.entity;
 
-import com.baomidou.mybatisplus.annotation.IdType;
+import com.alibaba.fastjson.JSONArray;
 import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableLogic;
 import com.baomidou.mybatisplus.annotation.TableName;
 import java.io.Serializable;
-import java.util.Date;
+
+import com.fdkankan.sale.typehandle.JsonArrayTypeHandler;
 import lombok.Getter;
 import lombok.Setter;
+import org.apache.ibatis.type.JdbcType;
 
 /**
  * <p>
@@ -20,7 +22,7 @@ import lombok.Setter;
  */
 @Getter
 @Setter
-@TableName("t_repair")
+@TableName(value = "t_repair",autoResultMap = true)
 public class Repair implements Serializable {
 
     private static final long serialVersionUID = 1L;
@@ -53,8 +55,8 @@ public class Repair implements Serializable {
     /**
      * 故障相关图片
      */
-    @TableField("fault_img")
-    private String faultImg;
+    @TableField(typeHandler= JsonArrayTypeHandler.class)
+    private JSONArray faultImg;
 
     /**
      * 状态0待接单,1待检测,2待报价,3待确认,4已取消,5待备料,6待回收,7维修中,8待测试,9已完成,10待收货,11已发货,12已评价

+ 6 - 3
src/main/java/com/fdkankan/sale/entity/RepairRegister.java

@@ -1,5 +1,6 @@
 package com.fdkankan.sale.entity;
 
+import com.alibaba.fastjson.JSONArray;
 import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableId;
@@ -7,6 +8,8 @@ import com.baomidou.mybatisplus.annotation.TableLogic;
 import com.baomidou.mybatisplus.annotation.TableName;
 import java.io.Serializable;
 import java.util.Date;
+
+import com.fdkankan.sale.typehandle.JsonArrayTypeHandler;
 import lombok.Getter;
 import lombok.Setter;
 
@@ -20,7 +23,7 @@ import lombok.Setter;
  */
 @Getter
 @Setter
-@TableName("t_repair_register")
+@TableName(value = "t_repair_register",autoResultMap = true)
 public class RepairRegister implements Serializable {
 
     private static final long serialVersionUID = 1L;
@@ -46,8 +49,8 @@ public class RepairRegister implements Serializable {
     /**
      * 相关图片
      */
-    @TableField("check_img")
-    private String checkImg;
+    @TableField(typeHandler = JsonArrayTypeHandler.class)
+    private JSONArray checkImg;
     /**
      * 维修状态 0登记,1维修完成
      */

+ 6 - 3
src/main/java/com/fdkankan/sale/entity/RepairTest.java

@@ -1,5 +1,6 @@
 package com.fdkankan.sale.entity;
 
+import com.alibaba.fastjson.JSONArray;
 import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableId;
@@ -7,6 +8,8 @@ import com.baomidou.mybatisplus.annotation.TableLogic;
 import com.baomidou.mybatisplus.annotation.TableName;
 import java.io.Serializable;
 import java.util.Date;
+
+import com.fdkankan.sale.typehandle.JsonArrayTypeHandler;
 import lombok.Getter;
 import lombok.Setter;
 
@@ -20,7 +23,7 @@ import lombok.Setter;
  */
 @Getter
 @Setter
-@TableName("t_repair_test")
+@TableName(value = "t_repair_test",autoResultMap = true)
 public class RepairTest implements Serializable {
 
     private static final long serialVersionUID = 1L;
@@ -55,8 +58,8 @@ public class RepairTest implements Serializable {
     /**
      * 相关图片
      */
-    @TableField("result_img")
-    private String resultImg;
+    @TableField(typeHandler = JsonArrayTypeHandler.class)
+    private JSONArray resultImg;
 
     @TableField("rec_status")
     @TableLogic(value = "A",delval = "I")

+ 43 - 0
src/main/java/com/fdkankan/sale/typehandle/ArrayStringTypeHandler.java

@@ -0,0 +1,43 @@
+package com.fdkankan.sale.typehandle;
+
+import cn.hutool.json.JSONUtil;
+import org.apache.ibatis.type.BaseTypeHandler;
+import org.apache.ibatis.type.JdbcType;
+import org.apache.ibatis.type.MappedJdbcTypes;
+import org.apache.ibatis.type.MappedTypes;
+
+import java.sql.CallableStatement;
+import java.sql.PreparedStatement;
+import java.sql.ResultSet;
+import java.sql.SQLException;
+
+/**
+ *  存储到数据库, 将String数组转换成字符串;
+ *  从数据库获取数据, 将字符串转为LONG数组.
+ */
+@MappedTypes({String[].class})
+@MappedJdbcTypes({JdbcType.VARCHAR})
+public class ArrayStringTypeHandler extends BaseTypeHandler<String[]> {
+    private static String[] l = new String[]{};
+    @Override
+    public void setNonNullParameter(PreparedStatement ps, int i,
+                                    String[] parameter, JdbcType jdbcType) throws SQLException {
+        ps.setString(i, JSONUtil.toJsonStr(parameter));
+    }
+    @Override
+    public String[] getNullableResult(ResultSet rs, String columnName)
+            throws SQLException {
+        return JSONUtil.parseArray(rs.getString(columnName)).toArray(l);
+    }
+    @Override
+    public String[] getNullableResult(ResultSet rs, int columnIndex)
+            throws SQLException {
+        return JSONUtil.parseArray(rs.getString(columnIndex)).toArray(l);
+    }
+    @Override
+    public String[] getNullableResult(CallableStatement cs, int columnIndex)
+            throws SQLException {
+        return JSONUtil.parseArray(cs.getString(columnIndex)).toArray(l);
+    }
+}
+

+ 54 - 0
src/main/java/com/fdkankan/sale/typehandle/JsonArrayTypeHandler.java

@@ -0,0 +1,54 @@
+package com.fdkankan.sale.typehandle;
+
+import com.alibaba.fastjson.JSONArray;
+import org.apache.commons.lang3.StringUtils;
+import org.apache.ibatis.type.BaseTypeHandler;
+import org.apache.ibatis.type.JdbcType;
+import org.apache.ibatis.type.MappedJdbcTypes;
+import org.apache.ibatis.type.MappedTypes;
+
+import java.sql.CallableStatement;
+import java.sql.PreparedStatement;
+import java.sql.ResultSet;
+import java.sql.SQLException;
+
+/**
+ *  存储到数据库, 将JSON数组对象转换成字符串;
+ *  从数据库获取数据, 将字符串转为JSON数组对象.
+ */
+@MappedTypes({JSONArray.class})
+@MappedJdbcTypes({JdbcType.VARCHAR})
+public class JsonArrayTypeHandler extends BaseTypeHandler<JSONArray> {
+    @Override
+    public void setNonNullParameter(PreparedStatement ps, int i, JSONArray parameter,
+                                    JdbcType jdbcType) throws SQLException {
+        ps.setString(i, JSONArray.toJSONString(parameter));
+    }
+    @Override
+    public JSONArray getNullableResult(ResultSet rs, String columnName)
+            throws SQLException {
+        return parseArray(rs.getString(columnName));
+    }
+    @Override
+    public JSONArray getNullableResult(ResultSet rs, int columnIndex) throws SQLException {
+        return parseArray(rs.getString(columnIndex));
+    }
+    @Override
+    public JSONArray getNullableResult(CallableStatement cs, int columnIndex)
+            throws SQLException {
+        return parseArray(cs.getString(columnIndex));
+    }
+
+    public static JSONArray parseArray(String content) {
+        if(StringUtils.isBlank(content)){
+            return new JSONArray();
+        }
+        try {
+            return JSONArray.parseArray(content);
+        } catch (Exception e) {
+            return new JSONArray();
+        }
+    }
+
+}
+

+ 2 - 1
src/main/java/com/fdkankan/sale/vo/request/TestParam.java

@@ -1,5 +1,6 @@
 package com.fdkankan.sale.vo.request;
 
+import com.alibaba.fastjson.JSONArray;
 import lombok.Data;
 
 @Data
@@ -7,6 +8,6 @@ public class TestParam {
     private String repairId;
     private Integer resultStatus;   //0通过,1不通过
     private String resultInfo;
-    private String resultImg;
+    private JSONArray resultImg;
 
 }

+ 2 - 0
src/main/java/com/fdkankan/sale/vo/response/RepairerVo.java

@@ -28,5 +28,7 @@ public class RepairerVo extends Repair {
 
     private BigDecimal payAmount;
 
+    private String lastTimeRepairId;
+
 }
 

+ 1 - 0
src/main/resources/bootstrap.yml

@@ -12,3 +12,4 @@ logging:
 mybatis-plus:
   configuration:
     log-impl: org.apache.ibatis.logging.stdout.StdOutImpl #开启sql日志
+  type-handlers-package: com.fdkankan.sale.typehandle