From fe8d9043754bf359688651b94e212ccb1844ee5b Mon Sep 17 00:00:00 2001 From: lxj <3355923952@qq.com> Date: Fri, 19 Jan 2024 15:54:39 +0800 Subject: [PATCH] =?UTF-8?q?=E4=B8=9A=E5=8A=A1=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/spider/common/domain/Car.java | 97 ++++++ .../java/com/spider/common/domain/Emp.java | 61 ++++ .../java/com/spider/common/domain/Record.java | 79 +++++ .../java/com/spider/common/domain/User.java | 49 +++ .../com/spider/common/domain/bo/CarBo.java | 27 ++ .../com/spider/common/domain/bo/EmpBo.java | 29 ++ .../spider/common/domain/request/CarReq.java | 21 ++ .../spider/common/domain/response/CarRes.java | 32 ++ .../common/domain/response/EchoCarRes.java | 31 ++ .../common/handler/ValidatedHandler.java | 30 ++ .../com/spider/common/utils/HttpUtils.java | 314 ++++++++++++++++++ .../java/com/spider/common/utils/MsgUtil.java | 51 +++ .../main/resources/META-INF/spring.factories | 4 +- .../system/controller/CarController.java | 88 ++++- .../system/controller/EmpController.java | 33 ++ .../system/controller/RecordController.java | 42 +++ .../com/spider/system/mapper/CarMapper.java | 27 ++ .../com/spider/system/mapper/EmpMapper.java | 25 ++ .../spider/system/mapper/RecordMapper.java | 18 + .../com/spider/system/service/CarService.java | 51 +++ .../com/spider/system/service/EmpService.java | 20 ++ .../spider/system/service/RecordService.java | 19 ++ .../system/service/impl/CarServiceImpl.java | 172 ++++++++++ .../system/service/impl/EmpServiceImpl.java | 31 ++ .../service/impl/RecordServiceImpl.java | 63 ++++ .../src/main/resources/mapper/CarMapper.xml | 105 ++++++ .../src/main/resources/mapper/EmpMapper.xml | 29 ++ .../main/resources/mapper/RecordMapper.xml | 21 ++ 28 files changed, 1566 insertions(+), 3 deletions(-) create mode 100644 spider-common/src/main/java/com/spider/common/domain/Car.java create mode 100644 spider-common/src/main/java/com/spider/common/domain/Emp.java create mode 100644 spider-common/src/main/java/com/spider/common/domain/Record.java create mode 100644 spider-common/src/main/java/com/spider/common/domain/User.java create mode 100644 spider-common/src/main/java/com/spider/common/domain/bo/CarBo.java create mode 100644 spider-common/src/main/java/com/spider/common/domain/bo/EmpBo.java create mode 100644 spider-common/src/main/java/com/spider/common/domain/request/CarReq.java create mode 100644 spider-common/src/main/java/com/spider/common/domain/response/CarRes.java create mode 100644 spider-common/src/main/java/com/spider/common/domain/response/EchoCarRes.java create mode 100644 spider-common/src/main/java/com/spider/common/handler/ValidatedHandler.java create mode 100644 spider-common/src/main/java/com/spider/common/utils/HttpUtils.java create mode 100644 spider-common/src/main/java/com/spider/common/utils/MsgUtil.java create mode 100644 spider-modules/spider-system/src/main/java/com/spider/system/controller/EmpController.java create mode 100644 spider-modules/spider-system/src/main/java/com/spider/system/controller/RecordController.java create mode 100644 spider-modules/spider-system/src/main/java/com/spider/system/mapper/EmpMapper.java create mode 100644 spider-modules/spider-system/src/main/java/com/spider/system/mapper/RecordMapper.java create mode 100644 spider-modules/spider-system/src/main/java/com/spider/system/service/EmpService.java create mode 100644 spider-modules/spider-system/src/main/java/com/spider/system/service/RecordService.java create mode 100644 spider-modules/spider-system/src/main/java/com/spider/system/service/impl/EmpServiceImpl.java create mode 100644 spider-modules/spider-system/src/main/java/com/spider/system/service/impl/RecordServiceImpl.java create mode 100644 spider-modules/spider-system/src/main/resources/mapper/CarMapper.xml create mode 100644 spider-modules/spider-system/src/main/resources/mapper/EmpMapper.xml create mode 100644 spider-modules/spider-system/src/main/resources/mapper/RecordMapper.xml diff --git a/spider-common/src/main/java/com/spider/common/domain/Car.java b/spider-common/src/main/java/com/spider/common/domain/Car.java new file mode 100644 index 0000000..3e41b54 --- /dev/null +++ b/spider-common/src/main/java/com/spider/common/domain/Car.java @@ -0,0 +1,97 @@ +package com.spider.common.domain; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.Size; +import javax.validation.constraints.NotNull; + +import java.io.Serializable; + +import java.util.Date; + +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; +import org.hibernate.validator.constraints.Length; +import org.springframework.format.annotation.DateTimeFormat; + +/** +* +* @TableName t_car +*/ +@Data +@Builder +@AllArgsConstructor +@NoArgsConstructor +public class Car implements Serializable { + + /** + * 车辆ID + */ +// @NotNull(message="[车辆ID]不能为空") + @ApiModelProperty("车辆ID") + private Integer carId; + /** + * 员工主键 + */ +// @NotNull(message="[员工主键]不能为空") + @ApiModelProperty("员工主键") + private Integer empId; + /** + * 车牌号 + */ + @Size(max= 40,message="编码长度不能超过40") + @ApiModelProperty("车牌号") + @Length(max= 40,message="编码长度不能超过40") + @NotBlank(message = "车牌号不能为空") + private String carCard; + /** + * 车辆型号 + */ + @Size(max= 40,message="编码长度不能超过40") + @ApiModelProperty("车辆型号") + @Length(max= 40,message="编码长度不能超过40") + @NotBlank(message = "车辆型号不能为空") + private String carModel; + /** + * 登记时间 + */ + @ApiModelProperty("登记时间") + @JsonFormat(pattern = "yyyy-MM-dd HH:ss:mm",timezone = "GMT+8") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:ss:mm") + private Date regTime; + /** + * 车辆位置 + */ + @Size(max= 100,message="编码长度不能超过100") + @ApiModelProperty("车辆位置") + @Length(max= 100,message="编码长度不能超过100") + private String carPosition; + /** + * 类型 0:临时车辆 1:长期车辆 + */ + @ApiModelProperty("类型 0:临时车辆 1:长期车辆") + private Integer carType; + /** + * 状态 0:有效 1:已失效 + */ + @ApiModelProperty("状态 0:有效 1:已失效") + private Integer carState; + /** + * 进入校园次数 + */ + @ApiModelProperty("进入校园次数") + private Integer carCount; + /** + * 最近一次进出校园时间 + */ + @ApiModelProperty("最近一次进出校园时间") + @JsonFormat(pattern = "yyyy-MM-dd HH:ss:mm",timezone = "GMT+8") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:ss:mm") + private Date latelyTime; + + + +} diff --git a/spider-common/src/main/java/com/spider/common/domain/Emp.java b/spider-common/src/main/java/com/spider/common/domain/Emp.java new file mode 100644 index 0000000..262b56b --- /dev/null +++ b/spider-common/src/main/java/com/spider/common/domain/Emp.java @@ -0,0 +1,61 @@ +package com.spider.common.domain; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.Size; +import javax.validation.constraints.NotNull; + +import java.io.Serializable; + +import java.util.Date; +import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; +import org.hibernate.validator.constraints.Length; + +/** +* +* @TableName t_emp +*/ +@Data +@Builder +@AllArgsConstructor +@NoArgsConstructor +public class Emp implements Serializable { + + /** + * 员工主键 + */ + @NotNull(message="[员工主键]不能为空") + @ApiModelProperty("员工主键") + private Integer empId; + /** + * 员工名称 + */ + @Size(max= 50,message="编码长度不能超过50") + @ApiModelProperty("员工名称") + @Length(max= 50,message="编码长度不能超过50") + private String empName; + /** + * 员工密码 + */ + @Size(max= 20,message="编码长度不能超过20") + @ApiModelProperty("员工密码") + @Length(max= 20,message="编码长度不能超过20") + private String empPwd; + /** + * 员工手机号 + */ + @Size(max= 50,message="编码长度不能超过50") + @ApiModelProperty("员工手机号") + @Length(max= 50,message="编码长度不能超过50") + private String empMobile; + /** + * 入职时间 + */ + @ApiModelProperty("入职时间") + private Date createTime; + + +} diff --git a/spider-common/src/main/java/com/spider/common/domain/Record.java b/spider-common/src/main/java/com/spider/common/domain/Record.java new file mode 100644 index 0000000..dc5354b --- /dev/null +++ b/spider-common/src/main/java/com/spider/common/domain/Record.java @@ -0,0 +1,79 @@ +package com.spider.common.domain; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.Size; +import javax.validation.constraints.NotNull; + +import java.io.Serializable; + +import java.util.Date; + +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; +import org.hibernate.validator.constraints.Length; +import org.springframework.format.annotation.DateTimeFormat; + +/** +* +* @TableName t_record +*/ +@Data +@Builder +@AllArgsConstructor +@NoArgsConstructor +public class Record implements Serializable { + + /** + * 记录Id + */ +// @NotNull(message="[记录Id]不能为空") + @ApiModelProperty("记录Id") + private Integer recordId; + /** + * 车牌号 + */ + @Size(max= 40,message="编码长度不能超过40") + @ApiModelProperty("车牌号") + @Length(max= 40,message="编码长度不能超过40") + private String carCard; + /** + * 车辆型号 + */ + @Size(max= 40,message="编码长度不能超过40") + @ApiModelProperty("车辆型号") + @Length(max= 40,message="编码长度不能超过40") + private String carModel; + /** + * 进出时间 + */ + @ApiModelProperty("进出时间") + @JsonFormat(pattern = "yyyy/MM/dd HH:ss:mm",timezone = "GMT+8") + @DateTimeFormat(pattern = "yyyy/MM/dd HH:ss:mm") + private Date createTime; + /** + * 车主姓名 + */ + @Size(max= 40,message="编码长度不能超过40") + @ApiModelProperty("车主姓名") + @Length(max= 40,message="编码长度不能超过40") + private String empName; + /** + * 车主手机号 + */ + @Size(max= 50,message="编码长度不能超过50") + @ApiModelProperty("车主手机号") + @Length(max= 50,message="编码长度不能超过50") + private String empMobile; + /** + * 0:进 1:出 + */ + @ApiModelProperty("0:进 1:出") + private Integer type; + + + +} diff --git a/spider-common/src/main/java/com/spider/common/domain/User.java b/spider-common/src/main/java/com/spider/common/domain/User.java new file mode 100644 index 0000000..53abe47 --- /dev/null +++ b/spider-common/src/main/java/com/spider/common/domain/User.java @@ -0,0 +1,49 @@ +package com.spider.common.domain; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.Size; +import javax.validation.constraints.NotNull; + +import java.io.Serializable; + +import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; +import org.hibernate.validator.constraints.Length; + +/** +* +* @TableName t_user +*/ +@Data +@Builder +@AllArgsConstructor +@NoArgsConstructor +public class User implements Serializable { + + /** + * 用户Id + */ + @NotNull(message="[用户Id]不能为空") + @ApiModelProperty("用户Id") + private Integer userId; + /** + * 用户名 + */ + @Size(max= 30,message="编码长度不能超过30") + @ApiModelProperty("用户名") + @Length(max= 30,message="编码长度不能超过30") + private String userAccount; + /** + * 用户密码 + */ + @Size(max= 30,message="编码长度不能超过30") + @ApiModelProperty("用户密码") + @Length(max= 30,message="编码长度不能超过30") + private String userPwd; + + + +} diff --git a/spider-common/src/main/java/com/spider/common/domain/bo/CarBo.java b/spider-common/src/main/java/com/spider/common/domain/bo/CarBo.java new file mode 100644 index 0000000..1f23df8 --- /dev/null +++ b/spider-common/src/main/java/com/spider/common/domain/bo/CarBo.java @@ -0,0 +1,27 @@ +package com.spider.common.domain.bo; + +import lombok.Data; + +/** + * 📝 TODO + * 🕟 2024/1/19 11:22 + * 👦 Lxj + */ +@Data +public class CarBo { + + /** + * 员工姓名 + */ + private String empName; + + /** + * 员工车牌号 + */ + private String carCard; + + /** + * 员工手机哈 + */ + private String mobile; +} diff --git a/spider-common/src/main/java/com/spider/common/domain/bo/EmpBo.java b/spider-common/src/main/java/com/spider/common/domain/bo/EmpBo.java new file mode 100644 index 0000000..455fa57 --- /dev/null +++ b/spider-common/src/main/java/com/spider/common/domain/bo/EmpBo.java @@ -0,0 +1,29 @@ +package com.spider.common.domain.bo; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import org.hibernate.validator.constraints.Length; + +import javax.validation.constraints.Size; + +/** + * 📝 TODO + * 🕟 2024/1/19 11:37 + * 👦 Lxj + */ +@Data +public class EmpBo { + /** + * 员工Id + */ + private String empId; + /** + * 员工名称 + */ + private String empName; + /** + * 员工手机号 + */ + private String empMobile; + +} diff --git a/spider-common/src/main/java/com/spider/common/domain/request/CarReq.java b/spider-common/src/main/java/com/spider/common/domain/request/CarReq.java new file mode 100644 index 0000000..953a853 --- /dev/null +++ b/spider-common/src/main/java/com/spider/common/domain/request/CarReq.java @@ -0,0 +1,21 @@ +package com.spider.common.domain.request; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import org.hibernate.validator.constraints.Length; +import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; + +import javax.validation.constraints.Size; + +/** + * 📝 TODO + * 🕟 2024/1/19 10:52 + * 👦 Lxj + */ +@Data +public class CarReq{ + + private String empName; + + private String carCard; +} diff --git a/spider-common/src/main/java/com/spider/common/domain/response/CarRes.java b/spider-common/src/main/java/com/spider/common/domain/response/CarRes.java new file mode 100644 index 0000000..13331b0 --- /dev/null +++ b/spider-common/src/main/java/com/spider/common/domain/response/CarRes.java @@ -0,0 +1,32 @@ +package com.spider.common.domain.response; + +import com.alibaba.nacos.shaded.org.checkerframework.checker.units.qual.C; +import com.spider.common.domain.Car; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import org.hibernate.validator.constraints.Length; + +import javax.validation.constraints.Size; + +/** + * 📝 TODO + * 🕟 2024/1/19 11:05 + * 👦 Lxj + */ +@Data +public class CarRes extends Car { + /** + * 员工名称 + */ + @Size(max= 50,message="编码长度不能超过50") + @ApiModelProperty("员工名称") + @Length(max= 50,message="编码长度不能超过50") + private String empName; + /** + * 员工手机号 + */ + @Size(max= 50,message="编码长度不能超过50") + @ApiModelProperty("员工手机号") + @Length(max= 50,message="编码长度不能超过50") + private String empMobile; +} diff --git a/spider-common/src/main/java/com/spider/common/domain/response/EchoCarRes.java b/spider-common/src/main/java/com/spider/common/domain/response/EchoCarRes.java new file mode 100644 index 0000000..3967425 --- /dev/null +++ b/spider-common/src/main/java/com/spider/common/domain/response/EchoCarRes.java @@ -0,0 +1,31 @@ +package com.spider.common.domain.response; + +import lombok.Data; + +/** + * 📝 TODO + * 🕟 2024/1/19 12:03 + * 👦 Lxj + */ +@Data +public class EchoCarRes { + /** + * 员工姓名 + */ + private String empName; + + /** + * 员工车牌号 + */ + private String carCard; + + /** + * 员工手机哈 + */ + private String empMobile; + + /** + * 车辆类型 + */ + private String carModel; +} diff --git a/spider-common/src/main/java/com/spider/common/handler/ValidatedHandler.java b/spider-common/src/main/java/com/spider/common/handler/ValidatedHandler.java new file mode 100644 index 0000000..c3aa5b1 --- /dev/null +++ b/spider-common/src/main/java/com/spider/common/handler/ValidatedHandler.java @@ -0,0 +1,30 @@ +package com.spider.common.handler; + +import com.spider.common.result.Result; +import org.springframework.validation.ObjectError; +import org.springframework.web.bind.MethodArgumentNotValidException; +import org.springframework.web.bind.annotation.ExceptionHandler; +import org.springframework.web.bind.annotation.RestControllerAdvice; + +/** + * 📝 TODO + * 🕟 2024/1/19 14:55 + * 👦 Lxj + */ +@RestControllerAdvice +public class ValidatedHandler { + + @ExceptionHandler + public Result validatedHandler(MethodArgumentNotValidException e){ + + String error = ""; + + for (ObjectError allError : e.getBindingResult().getAllErrors()) { + String defaultMessage = allError.getDefaultMessage(); + + error = defaultMessage+"\n"; + } + + return Result.error(error); + } +} diff --git a/spider-common/src/main/java/com/spider/common/utils/HttpUtils.java b/spider-common/src/main/java/com/spider/common/utils/HttpUtils.java new file mode 100644 index 0000000..7ba8499 --- /dev/null +++ b/spider-common/src/main/java/com/spider/common/utils/HttpUtils.java @@ -0,0 +1,314 @@ +package com.spider.common.utils; + +import java.io.UnsupportedEncodingException; +import java.net.URLEncoder; +import java.security.KeyManagementException; +import java.security.NoSuchAlgorithmException; +import java.security.cert.X509Certificate; +import java.util.ArrayList; +import java.util.List; +import java.util.Map; + +import javax.net.ssl.SSLContext; +import javax.net.ssl.TrustManager; +import javax.net.ssl.X509TrustManager; + + +import org.apache.http.HttpResponse; +import org.apache.http.NameValuePair; +import org.apache.http.client.HttpClient; +import org.apache.http.client.entity.UrlEncodedFormEntity; +import org.apache.http.client.methods.HttpDelete; +import org.apache.http.client.methods.HttpGet; +import org.apache.http.client.methods.HttpPost; +import org.apache.http.client.methods.HttpPut; +import org.apache.http.conn.ClientConnectionManager; +import org.apache.http.conn.scheme.Scheme; +import org.apache.http.conn.scheme.SchemeRegistry; +import org.apache.http.conn.ssl.SSLSocketFactory; +import org.apache.http.entity.ByteArrayEntity; +import org.apache.http.entity.StringEntity; +import org.apache.http.impl.client.DefaultHttpClient; +import org.apache.http.message.BasicNameValuePair; +import org.springframework.stereotype.Component; + +@Component +public class HttpUtils { + /** + * get + * + * @param host + * @param path + * @param method + * @param headers + * @param querys + * @return + * @throws Exception + */ + public static HttpResponse doGet(String host, String path, String method, + Map headers, + Map querys) + throws Exception { + HttpClient httpClient = wrapClient(host); + + HttpGet request = new HttpGet(buildUrl(host, path, querys)); + for (Map.Entry e : headers.entrySet()) { + request.addHeader(e.getKey(), e.getValue()); + } + + return httpClient.execute(request); + } + + /** + * post form + * + * @param host + * @param path + * @param method + * @param headers + * @param querys + * @param bodys + * @return + * @throws Exception + */ + public static HttpResponse doPost(String host, String path, String method, + Map headers, + Map querys, + Map bodys) + throws Exception { + HttpClient httpClient = wrapClient(host); + + HttpPost request = new HttpPost(buildUrl(host, path, querys)); + for (Map.Entry e : headers.entrySet()) { + request.addHeader(e.getKey(), e.getValue()); + } + + if (bodys != null) { + List nameValuePairList = new ArrayList(); + + for (String key : bodys.keySet()) { + nameValuePairList.add(new BasicNameValuePair(key, bodys.get(key))); + } + UrlEncodedFormEntity formEntity = new UrlEncodedFormEntity(nameValuePairList, "utf-8"); + formEntity.setContentType("application/x-www-form-urlencoded; charset=UTF-8"); + request.setEntity(formEntity); + } + + return httpClient.execute(request); + } + + /** + * Post String + * + * @param host + * @param path + * @param method + * @param headers + * @param querys + * @param body + * @return + * @throws Exception + */ + public static HttpResponse doPost(String host, String path, String method, + Map headers, + Map querys, + String body) + throws Exception { + HttpClient httpClient = wrapClient(host); + + HttpPost request = new HttpPost(buildUrl(host, path, querys)); + for (Map.Entry e : headers.entrySet()) { + request.addHeader(e.getKey(), e.getValue()); + } + + if (StringUtils.isNotBlank(body)) { + request.setEntity(new StringEntity(body, "utf-8")); + } + + return httpClient.execute(request); + } + + /** + * Post stream + * + * @param host + * @param path + * @param method + * @param headers + * @param querys + * @param body + * @return + * @throws Exception + */ + public static HttpResponse doPost(String host, String path, String method, + Map headers, + Map querys, + byte[] body) + throws Exception { + HttpClient httpClient = wrapClient(host); + + HttpPost request = new HttpPost(buildUrl(host, path, querys)); + for (Map.Entry e : headers.entrySet()) { + request.addHeader(e.getKey(), e.getValue()); + } + + if (body != null) { + request.setEntity(new ByteArrayEntity(body)); + } + + return httpClient.execute(request); + } + + /** + * Put String + * @param host + * @param path + * @param method + * @param headers + * @param querys + * @param body + * @return + * @throws Exception + */ + public static HttpResponse doPut(String host, String path, String method, + Map headers, + Map querys, + String body) + throws Exception { + HttpClient httpClient = wrapClient(host); + + HttpPut request = new HttpPut(buildUrl(host, path, querys)); + for (Map.Entry e : headers.entrySet()) { + request.addHeader(e.getKey(), e.getValue()); + } + + if (StringUtils.isNotBlank(body)) { + request.setEntity(new StringEntity(body, "utf-8")); + } + + return httpClient.execute(request); + } + + /** + * Put stream + * @param host + * @param path + * @param method + * @param headers + * @param querys + * @param body + * @return + * @throws Exception + */ + public static HttpResponse doPut(String host, String path, String method, + Map headers, + Map querys, + byte[] body) + throws Exception { + HttpClient httpClient = wrapClient(host); + + HttpPut request = new HttpPut(buildUrl(host, path, querys)); + for (Map.Entry e : headers.entrySet()) { + request.addHeader(e.getKey(), e.getValue()); + } + + if (body != null) { + request.setEntity(new ByteArrayEntity(body)); + } + + return httpClient.execute(request); + } + + /** + * Delete + * + * @param host + * @param path + * @param method + * @param headers + * @param querys + * @return + * @throws Exception + */ + public static HttpResponse doDelete(String host, String path, String method, + Map headers, + Map querys) + throws Exception { + HttpClient httpClient = wrapClient(host); + + HttpDelete request = new HttpDelete(buildUrl(host, path, querys)); + for (Map.Entry e : headers.entrySet()) { + request.addHeader(e.getKey(), e.getValue()); + } + + return httpClient.execute(request); + } + + private static String buildUrl(String host, String path, Map querys) throws UnsupportedEncodingException { + StringBuilder sbUrl = new StringBuilder(); + sbUrl.append(host); + if (!StringUtils.isBlank(path)) { + sbUrl.append(path); + } + if (null != querys) { + StringBuilder sbQuery = new StringBuilder(); + for (Map.Entry query : querys.entrySet()) { + if (0 < sbQuery.length()) { + sbQuery.append("&"); + } + if (StringUtils.isBlank(query.getKey()) && !StringUtils.isBlank(query.getValue())) { + sbQuery.append(query.getValue()); + } + if (!StringUtils.isBlank(query.getKey())) { + sbQuery.append(query.getKey()); + if (!StringUtils.isBlank(query.getValue())) { + sbQuery.append("="); + sbQuery.append(URLEncoder.encode(query.getValue(), "utf-8")); + } + } + } + if (0 < sbQuery.length()) { + sbUrl.append("?").append(sbQuery); + } + } + + return sbUrl.toString(); + } + + private static HttpClient wrapClient(String host) { + HttpClient httpClient = new DefaultHttpClient(); + if (host.startsWith("https://")) { + sslClient(httpClient); + } + + return httpClient; + } + + private static void sslClient(HttpClient httpClient) { + try { + SSLContext ctx = SSLContext.getInstance("TLS"); + X509TrustManager tm = new X509TrustManager() { + public X509Certificate[] getAcceptedIssuers() { + return null; + } + public void checkClientTrusted(X509Certificate[] xcs, String str) { + + } + public void checkServerTrusted(X509Certificate[] xcs, String str) { + + } + }; + ctx.init(null, new TrustManager[] { tm }, null); + SSLSocketFactory ssf = new SSLSocketFactory(ctx); + ssf.setHostnameVerifier(SSLSocketFactory.ALLOW_ALL_HOSTNAME_VERIFIER); + ClientConnectionManager ccm = httpClient.getConnectionManager(); + SchemeRegistry registry = ccm.getSchemeRegistry(); + registry.register(new Scheme("https", 443, ssf)); + } catch (KeyManagementException ex) { + throw new RuntimeException(ex); + } catch (NoSuchAlgorithmException ex) { + throw new RuntimeException(ex); + } + } + +} diff --git a/spider-common/src/main/java/com/spider/common/utils/MsgUtil.java b/spider-common/src/main/java/com/spider/common/utils/MsgUtil.java new file mode 100644 index 0000000..d2a74a7 --- /dev/null +++ b/spider-common/src/main/java/com/spider/common/utils/MsgUtil.java @@ -0,0 +1,51 @@ +package com.spider.common.utils; + +import org.apache.http.HttpResponse; +import org.apache.http.util.EntityUtils; +import org.springframework.stereotype.Component; + +import java.util.HashMap; +import java.util.Map; + +@Component +public class MsgUtil { + + public String sendMsg(String phone,String code){ + String result = null; + String host = "https://gyidcard.market.alicloudapi.com"; + String path = "/sms/smsSend"; + String method = "POST"; + String appcode = "3a5b9903d4a6470c9b75dd44c35811a9"; + Map headers = new HashMap(); + //最后在header中的格式(中间是英文空格)为Authorization:APPCODE 83359fd73fe94948385f570e3c139105 + headers.put("Authorization", "APPCODE " + appcode); + Map querys = new HashMap(); + querys.put("mobile", phone); + querys.put("param", "**code**:"+code+",**minute**:5"); + +//smsSignId(短信前缀)和templateId(短信模板),可登录国阳云控制台自助申请。参考文档:http://help.guoyangyun.com/Problem/Qm.html + + querys.put("smsSignId", "2e65b1bb3d054466b82f0c9d125465e2"); + querys.put("templateId", "908e94ccf08b4476ba6c876d13f084ad"); + Map bodys = new HashMap(); + + + try { + /** + * 重要提示如下: + * HttpUtils请从\r\n\t \t* https://github.com/aliyun/api-gateway-demo-sign-java/blob/master/src/main/java/com/aliyun/api/gateway/demo/util/HttpUtils.java\r\n\t \t* 下载 + * + * 相应的依赖请参照 + * https://github.com/aliyun/api-gateway-demo-sign-java/blob/master/pom.xml + */ + HttpResponse response = HttpUtils.doPost(host, path, method, headers, querys, bodys); +// System.out.println(response.toString()); + //获取response的body + result = EntityUtils.toString(response.getEntity()); + System.out.println(result); + } catch (Exception e) { + e.printStackTrace(); + } + return result; + } +} diff --git a/spider-common/src/main/resources/META-INF/spring.factories b/spider-common/src/main/resources/META-INF/spring.factories index 478d0bd..1294269 100644 --- a/spider-common/src/main/resources/META-INF/spring.factories +++ b/spider-common/src/main/resources/META-INF/spring.factories @@ -1,2 +1,4 @@ org.springframework.boot.autoconfigure.EnableAutoConfiguration=\ -com.spider.common.config.RedisConfig +com.spider.common.config.RedisConfig,\ +com.spider.common.utils.MsgUtil,\ +com.spider.common.handler.ValidatedHandler diff --git a/spider-modules/spider-system/src/main/java/com/spider/system/controller/CarController.java b/spider-modules/spider-system/src/main/java/com/spider/system/controller/CarController.java index a1bade4..4073f2a 100644 --- a/spider-modules/spider-system/src/main/java/com/spider/system/controller/CarController.java +++ b/spider-modules/spider-system/src/main/java/com/spider/system/controller/CarController.java @@ -1,7 +1,18 @@ package com.spider.system.controller; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import com.spider.common.domain.Car; +import com.spider.common.domain.request.CarReq; +import com.spider.common.domain.response.CarRes; +import com.spider.common.domain.response.EchoCarRes; +import com.spider.common.result.Result; +import com.spider.system.service.CarService; +import lombok.extern.log4j.Log4j2; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +import javax.servlet.http.HttpServletRequest; +import java.util.List; /** * 📝 TODO @@ -10,5 +21,78 @@ import org.springframework.web.bind.annotation.RestController; */ @RestController @RequestMapping("/car") +@Log4j2 public class CarController { + + private final CarService carService; + + public CarController(CarService carService) { + this.carService = carService; + } + + @Autowired + private HttpServletRequest request; + + /** + * 获取车辆信息 + * @param carReq + * @return + */ + @PostMapping("/queryCar") + public Result> queryCar(@RequestBody CarReq carReq){ + return carService.getCarList(carReq); + } + + /** + * 取消登记 + * @return + */ + @PostMapping("/cancelReg") + public Result cancelReg(@RequestBody String[] carIds ){ + log.info("功能描述: xx,请求URI:{},请求方式: {},请求参数: {}", + request.getRequestURI(),request.getMethod(),carIds); + + return carService.updCarState(carIds); + } + + /** + * 登记 + * @return + */ + @PostMapping("/sign") + public Result sign(@RequestBody @Validated Car car){ + return carService.saveCar(car); + } + + /** + * 获取车辆信息 + * @param carId + * @return + */ + @GetMapping("/redact") + public Result redact(@RequestParam String carId){ + return carService.getCarResByCarId(carId); + } + + /** + * 更新数据 + * @return + */ + @PostMapping("/renewal") + public Result renewal(@RequestBody @Validated Car car){ + return carService.renewal(car); + } + + /** + * 回显登记信息 + * @return + */ + @GetMapping("/echoCar") + public Result echoCar(@RequestParam String carId){ + return carService.getEchoCarResByCarId(carId); + } + + + + } diff --git a/spider-modules/spider-system/src/main/java/com/spider/system/controller/EmpController.java b/spider-modules/spider-system/src/main/java/com/spider/system/controller/EmpController.java new file mode 100644 index 0000000..ded54b1 --- /dev/null +++ b/spider-modules/spider-system/src/main/java/com/spider/system/controller/EmpController.java @@ -0,0 +1,33 @@ +package com.spider.system.controller; + +import com.spider.common.domain.bo.EmpBo; +import com.spider.common.result.Result; +import com.spider.system.service.EmpService; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; + +/** + * 📝 TODO + * 🕟 2024/1/19 11:35 + * 👦 Lxj + */ +@RestController +@RequestMapping("/emp") +public class EmpController { + private final EmpService empService; + + public EmpController(EmpService empService) { + this.empService = empService; + + } + + + @GetMapping("queryEmp") + public Result> queryEmp() { + + return empService.getEmpList(); + } +} diff --git a/spider-modules/spider-system/src/main/java/com/spider/system/controller/RecordController.java b/spider-modules/spider-system/src/main/java/com/spider/system/controller/RecordController.java new file mode 100644 index 0000000..4500ea1 --- /dev/null +++ b/spider-modules/spider-system/src/main/java/com/spider/system/controller/RecordController.java @@ -0,0 +1,42 @@ +package com.spider.system.controller; + +import com.spider.common.domain.Record; +import com.spider.common.result.Result; +import com.spider.system.service.RecordService; +import org.springframework.web.bind.annotation.*; + +import java.util.List; + +/** + * 📝 TODO + * 🕟 2024/1/19 12:39 + * 👦 Lxj + */ +@RestController +@RequestMapping("/record") +public class RecordController { + private final RecordService recordService; + + public RecordController(RecordService recordService) { + this.recordService = recordService; + } + + + /** + * 进出登记 + * @return + */ + @PostMapping("/entryExitReg") + public Result entryExitReg(@RequestBody Record record){ + return recordService.entryExitReg(record); + } + + /** + * 获取记录列表 + * @return + */ + @GetMapping("/queryRecord") + public Result> queryRecord(){ + return recordService.getRecordList(); + } +} diff --git a/spider-modules/spider-system/src/main/java/com/spider/system/mapper/CarMapper.java b/spider-modules/spider-system/src/main/java/com/spider/system/mapper/CarMapper.java index 9bb590c..a815a2b 100644 --- a/spider-modules/spider-system/src/main/java/com/spider/system/mapper/CarMapper.java +++ b/spider-modules/spider-system/src/main/java/com/spider/system/mapper/CarMapper.java @@ -1,6 +1,17 @@ package com.spider.system.mapper; +import com.spider.common.domain.Car; +import com.spider.common.domain.bo.CarBo; +import com.spider.common.domain.request.CarReq; +import com.spider.common.domain.response.CarRes; +import com.spider.common.domain.response.EchoCarRes; +import com.spider.common.result.Result; import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; + +import java.util.List; /** * 📝 TODO @@ -9,4 +20,20 @@ import org.apache.ibatis.annotations.Mapper; */ @Mapper public interface CarMapper { + + List selectCarList(CarReq carReq); + + int updCarStateByCarId(@Param("carIds") String[] carIds); + + List selectCarAndEmpByCarId(@Param("carIds") String[] carIds); + + int insertCar(Car car); + + CarRes selectCarByCarId(@Param("carId") String carId); + + int updCarByCarId( Car car); + + EchoCarRes selectEchoCarResByCarId(@Param("carId") String carId); + + int updCarCountAndLatelyTimeByCarCard(@Param("carCard") String carCard); } diff --git a/spider-modules/spider-system/src/main/java/com/spider/system/mapper/EmpMapper.java b/spider-modules/spider-system/src/main/java/com/spider/system/mapper/EmpMapper.java new file mode 100644 index 0000000..6415267 --- /dev/null +++ b/spider-modules/spider-system/src/main/java/com/spider/system/mapper/EmpMapper.java @@ -0,0 +1,25 @@ +package com.spider.system.mapper; + +import com.spider.common.domain.Emp; +import com.spider.common.domain.bo.EmpBo; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** + * 📝 TODO + * 🕟 2024/1/19 11:36 + * 👦 Lxj + */ +@Mapper +public interface EmpMapper { + + /** + * 获取员工姓名和手机号 + * @return + */ + List selectEmpList(); + + EmpBo selectEmpByEmpId(@Param("empId") String empId); +} diff --git a/spider-modules/spider-system/src/main/java/com/spider/system/mapper/RecordMapper.java b/spider-modules/spider-system/src/main/java/com/spider/system/mapper/RecordMapper.java new file mode 100644 index 0000000..7b2cdf8 --- /dev/null +++ b/spider-modules/spider-system/src/main/java/com/spider/system/mapper/RecordMapper.java @@ -0,0 +1,18 @@ +package com.spider.system.mapper; + +import com.spider.common.domain.Record; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 📝 TODO + * 🕟 2024/1/19 12:40 + * 👦 Lxj + */ +@Mapper +public interface RecordMapper { + int insertRecord(Record record); + + List selectRecord(); +} diff --git a/spider-modules/spider-system/src/main/java/com/spider/system/service/CarService.java b/spider-modules/spider-system/src/main/java/com/spider/system/service/CarService.java index 32268b4..0e60245 100644 --- a/spider-modules/spider-system/src/main/java/com/spider/system/service/CarService.java +++ b/spider-modules/spider-system/src/main/java/com/spider/system/service/CarService.java @@ -1,9 +1,60 @@ package com.spider.system.service; +import com.spider.common.domain.Car; +import com.spider.common.domain.request.CarReq; +import com.spider.common.domain.response.CarRes; +import com.spider.common.domain.response.EchoCarRes; +import com.spider.common.result.Result; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; + +import java.util.List; + /** * 📝 TODO * 🕟 2024/1/19 10:50 * 👦 Lxj */ public interface CarService { + + /** + * 获取车辆列表 + * @param carReq + * @return + */ + Result> getCarList(CarReq carReq); + + /** + * 所选记录状态可以正确的更新为已失效 + * @param carIds + * @return + */ + Result updCarState(String[] carIds); + + /** + * 登记车辆 + * @param car + * @return + */ + Result saveCar(Car car); + + /** + * 查询车辆信息 + * @param carId + * @return + */ + Result getCarResByCarId(String carId); + + /** + * 更新数据 + * @param car + * @return + */ + Result renewal( Car car); + + /** + * 获取车辆信息 + * @return + */ + Result getEchoCarResByCarId(String carId); } diff --git a/spider-modules/spider-system/src/main/java/com/spider/system/service/EmpService.java b/spider-modules/spider-system/src/main/java/com/spider/system/service/EmpService.java new file mode 100644 index 0000000..0d2df96 --- /dev/null +++ b/spider-modules/spider-system/src/main/java/com/spider/system/service/EmpService.java @@ -0,0 +1,20 @@ +package com.spider.system.service; + +import com.spider.common.domain.bo.EmpBo; +import com.spider.common.result.Result; + +import java.util.List; + +/** + * 📝 TODO + * 🕟 2024/1/19 11:35 + * 👦 Lxj + */ +public interface EmpService { + /** + * 获取员工姓名和手机号 + * @return + */ + Result> getEmpList(); + +} diff --git a/spider-modules/spider-system/src/main/java/com/spider/system/service/RecordService.java b/spider-modules/spider-system/src/main/java/com/spider/system/service/RecordService.java new file mode 100644 index 0000000..aae2332 --- /dev/null +++ b/spider-modules/spider-system/src/main/java/com/spider/system/service/RecordService.java @@ -0,0 +1,19 @@ +package com.spider.system.service; + +import com.spider.common.domain.Record; +import com.spider.common.result.Result; +import org.springframework.web.bind.annotation.RequestBody; + +import java.util.List; + +/** + * 📝 TODO + * 🕟 2024/1/19 12:39 + * 👦 Lxj + */ +public interface RecordService { + + Result entryExitReg(Record record); + + Result> getRecordList(); +} diff --git a/spider-modules/spider-system/src/main/java/com/spider/system/service/impl/CarServiceImpl.java b/spider-modules/spider-system/src/main/java/com/spider/system/service/impl/CarServiceImpl.java index 1a1bc07..e0c8136 100644 --- a/spider-modules/spider-system/src/main/java/com/spider/system/service/impl/CarServiceImpl.java +++ b/spider-modules/spider-system/src/main/java/com/spider/system/service/impl/CarServiceImpl.java @@ -1,13 +1,185 @@ package com.spider.system.service.impl; +import com.spider.common.domain.Car; +import com.spider.common.domain.bo.CarBo; +import com.spider.common.domain.bo.EmpBo; +import com.spider.common.domain.request.CarReq; +import com.spider.common.domain.response.CarRes; +import com.spider.common.domain.response.EchoCarRes; +import com.spider.common.result.Result; +import com.spider.common.utils.MsgUtil; +import com.spider.common.utils.StringUtils; +import com.spider.system.mapper.CarMapper; +import com.spider.system.mapper.EmpMapper; import com.spider.system.service.CarService; +import lombok.extern.log4j.Log4j2; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.util.List; + /** * 📝 TODO * 🕟 2024/1/19 10:50 * 👦 Lxj */ @Service +@Log4j2 public class CarServiceImpl implements CarService { + private final CarMapper carMapper; + + private final EmpMapper empMapper; + + public CarServiceImpl(CarMapper carMapper, EmpMapper empMapper) { + this.carMapper = carMapper; + + this.empMapper = empMapper; + } + + + + @Autowired + private MsgUtil msgUtil; + + /** + * 获取车辆 + * @param carReq + * @return + */ + @Override + public Result> getCarList(CarReq carReq) { + + List cars = carMapper.selectCarList(carReq); + + if(StringUtils.isEmpty(cars)){ + return Result.error("获取车辆异常"); + } + + return Result.success(cars); + } + + + /** + * 所选记录状态可以正确的更新为已失效 + * @param carIds + * @return + */ + @Override + public Result updCarState(String[] carIds) { + + int res = carMapper.updCarStateByCarId(carIds); + + if(res < 1){ + return Result.error("操作异常,请稍后"); + } + + //获取信息 + List carBos = carMapper.selectCarAndEmpByCarId(carIds); + + if(StringUtils.isEmpty(carBos)){ + return Result.error("短信发送异常"); + } + + //循环发短信 + carBos.forEach(carBo -> { + String msg = msgUtil.sendMsg( + carBo.getMobile(), + "尊敬的" + carBo.getEmpName() + "你的车辆<" + carBo.getCarCard() + ">已取消登记成功" + ); + log.info(msg); + + if(msg.contains("ok")){ + log.info("尊敬的" + carBo.getEmpName() + "你的车辆<" + carBo.getCarCard() + ">已取消登记成功"); + }else { + log.error("尊敬的" + carBo.getEmpName() + "你的车辆<" + carBo.getCarCard() + ">取消登记失败"); + } + }); + + + return Result.success(); + } + + /** + * 登记车辆 + * @param car + * @return + */ + @Override + public Result saveCar(Car car) { + + int res = carMapper.insertCar(car); + + if(res < 1){ + return Result.error("登记异常,请稍后"); + } + + String empId = String.valueOf(car.getEmpId()); + + EmpBo empBo = empMapper.selectEmpByEmpId(empId); + + String msg = msgUtil.sendMsg( + empBo.getEmpMobile(), + "尊敬的" + empBo.getEmpName() + "你的车辆<" + empBo.getEmpMobile() + ">已取消登记成功" + ); + + log.info(msg); + + if(msg.contains("ok")){ + log.info("尊敬的" + empBo.getEmpName() + "你的车辆<" + empBo.getEmpMobile() + ">已取消登记成功"); + }else { + log.error("尊敬的" + empBo.getEmpName() + "你的车辆<" + empBo.getEmpMobile() + ">取消登记失败"); + } + + return Result.success(); + } + + /** + * 查询车辆信息 + * @param carId + * @return + */ + @Override + public Result getCarResByCarId(String carId) { + + CarRes carRes = carMapper.selectCarByCarId(carId); + + if(StringUtils.isNull(carRes)){ + return Result.error("获取异常,请重试"); + } + + return Result.success(carRes); + } + + /** + * 更新数据 + * @param car + * @return + */ + @Override + public Result renewal(Car car) { + + int res = carMapper.updCarByCarId(car); + + if(res < 1){ + return Result.error("更新异常,请稍后"); + } + + return Result.success(); + } + + /** + * 获取车辆 + * @param carId + * @return + */ + @Override + public Result getEchoCarResByCarId(String carId) { + EchoCarRes echoCarRes = carMapper.selectEchoCarResByCarId(carId); + + if(StringUtils.isNull(echoCarRes)){ + return Result.error("获取异常,请重试"); + } + + return Result.success(echoCarRes); + } } diff --git a/spider-modules/spider-system/src/main/java/com/spider/system/service/impl/EmpServiceImpl.java b/spider-modules/spider-system/src/main/java/com/spider/system/service/impl/EmpServiceImpl.java new file mode 100644 index 0000000..57835db --- /dev/null +++ b/spider-modules/spider-system/src/main/java/com/spider/system/service/impl/EmpServiceImpl.java @@ -0,0 +1,31 @@ +package com.spider.system.service.impl; + + +import com.spider.common.domain.bo.EmpBo; +import com.spider.common.result.Result; +import com.spider.system.mapper.EmpMapper; +import com.spider.system.service.EmpService; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 📝 TODO + * 🕟 2024/1/19 11:35 + * 👦 Lxj + */ +@Service +public class EmpServiceImpl implements EmpService { + + private final EmpMapper empMapper; + + public EmpServiceImpl(EmpMapper empMapper) { + this.empMapper = empMapper; + } + + @Override + public Result> getEmpList() { + + return Result.success(empMapper.selectEmpList()); + } +} diff --git a/spider-modules/spider-system/src/main/java/com/spider/system/service/impl/RecordServiceImpl.java b/spider-modules/spider-system/src/main/java/com/spider/system/service/impl/RecordServiceImpl.java new file mode 100644 index 0000000..9f96e7b --- /dev/null +++ b/spider-modules/spider-system/src/main/java/com/spider/system/service/impl/RecordServiceImpl.java @@ -0,0 +1,63 @@ +package com.spider.system.service.impl; + +import com.spider.common.domain.Record; +import com.spider.common.result.Result; +import com.spider.system.mapper.CarMapper; +import com.spider.system.mapper.RecordMapper; +import com.spider.system.service.RecordService; +import lombok.extern.log4j.Log4j2; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 📝 TODO + * 🕟 2024/1/19 12:40 + * 👦 Lxj + */ +@Service +@Log4j2 +public class RecordServiceImpl implements RecordService { + private final RecordMapper recordMapper; + + public RecordServiceImpl(RecordMapper recordMapper) { + this.recordMapper = recordMapper; + } + + @Autowired + private CarMapper carMapper; + + /** + * 进出登记 + * @param record + * @return + */ + @Override + public Result entryExitReg(Record record) { + + int res = recordMapper.insertRecord(record); + + if(res < 1){ + return Result.error("记录异常,请稍后"); + } + + int updCarRes = carMapper + .updCarCountAndLatelyTimeByCarCard(record.getCarCard()); + + if (updCarRes > 1) + log.info(record.getCarCard()+"记录成功"); + + return Result.success(); + } + + /** + * 获取记录列表 + * @return + */ + @Override + public Result> getRecordList() { + + return Result.success(recordMapper.selectRecord()); + } +} diff --git a/spider-modules/spider-system/src/main/resources/mapper/CarMapper.xml b/spider-modules/spider-system/src/main/resources/mapper/CarMapper.xml new file mode 100644 index 0000000..c2f3598 --- /dev/null +++ b/spider-modules/spider-system/src/main/resources/mapper/CarMapper.xml @@ -0,0 +1,105 @@ + + + + + + + INSERT INTO `week02-car`.`t_car` ( `emp_id`, `car_card`, `car_model`, `reg_time`, `car_position`, `car_type`,`car_count`, `lately_time` ) + VALUES + ( #{empId}, #{carCard}, #{carModel}, now(), #{carPosition}, #{carType}, 1, now() ); + + + + UPDATE t_car c + SET c.car_state = 1 + WHERE + c.car_id in ( + + + #{id} + + ) + + + + UPDATE `week02-car`.`t_car` + SET + `car_card` = #{carCard}, + `car_model` = #{carModel}, + `car_position` = #{carPosition}, + `car_type` = 1, + `car_state` = 0 + WHERE + `car_id` = #{carId}; + + + + UPDATE `week02-car`.`t_car` + SET + `car_count` = car_count+1, + lately_time = now() + WHERE + `car_card` = #{carCard}; + + + + + + + + + + + diff --git a/spider-modules/spider-system/src/main/resources/mapper/EmpMapper.xml b/spider-modules/spider-system/src/main/resources/mapper/EmpMapper.xml new file mode 100644 index 0000000..71a94cd --- /dev/null +++ b/spider-modules/spider-system/src/main/resources/mapper/EmpMapper.xml @@ -0,0 +1,29 @@ + + + + + + + + + + diff --git a/spider-modules/spider-system/src/main/resources/mapper/RecordMapper.xml b/spider-modules/spider-system/src/main/resources/mapper/RecordMapper.xml new file mode 100644 index 0000000..fc48875 --- /dev/null +++ b/spider-modules/spider-system/src/main/resources/mapper/RecordMapper.xml @@ -0,0 +1,21 @@ + + + + + + + + INSERT INTO `week02-car`.`t_record` ( `car_card`, `car_model`, `create_time`, `emp_name`, `emp_mobile`, `type` ) + VALUES + ( #{carCard}, #{carModel}, now(),#{empName} , #{empMobile}, #{type} ); + + + +