@@ -1,13 +1,21 @@ | |||
package com.qtzl.alterSales.manager.service; | |||
import cn.com.taiji.common.manager.net.http.ServiceHandleException; | |||
import cn.hutool.core.util.ObjectUtil; | |||
import cn.hutool.core.util.StrUtil; | |||
import com.qtzl.alterSales.dao.entity.second.AflOrderInfo; | |||
import com.qtzl.alterSales.dao.entity.second.AflOrderUserInfoModLog; | |||
import com.qtzl.alterSales.dao.entity.third.EtcOrderUserInfo; | |||
import com.qtzl.alterSales.dao.repo.jpa.second.AflOrderInfoRepo; | |||
import com.qtzl.alterSales.dao.repo.jpa.second.AflOrderUserInfoModLogRepo; | |||
import com.qtzl.alterSales.dao.repo.jpa.third.EtcOrderUserInfoRepo; | |||
import com.qtzl.alterSales.dao.repo.jpa.third.EtcOrderVehicleInfoRepo; | |||
import com.qtzl.alterSales.manager.model.protocol.NoAttributeResponse; | |||
import com.qtzl.alterSales.manager.model.protocol.UcServiceError; | |||
import com.qtzl.alterSales.manager.model.protocol.sales.ModOrderUserInfoRequest; | |||
import com.qtzl.alterSales.manager.vo.OrderUserInfoVo; | |||
import org.springframework.stereotype.Service; | |||
import org.springframework.transaction.annotation.Transactional; | |||
import javax.annotation.Resource; | |||
import java.util.List; | |||
@@ -24,6 +32,11 @@ public class OrderUserInfoServiceImpl implements OrderUserInfoService { | |||
private EtcOrderVehicleInfoRepo orderVehicleInfoRepo; | |||
@Resource | |||
private EtcOrderUserInfoRepo orderUserInfoRepo; | |||
@Resource | |||
private AflOrderUserInfoModLogRepo orderUserInfoModLogRepo; | |||
@Resource | |||
private AflOrderInfoRepo orderInfoRepo; | |||
@Override | |||
public List<OrderUserInfoVo> findByVehicleId(String vehicleId) { | |||
@@ -31,16 +44,66 @@ public class OrderUserInfoServiceImpl implements OrderUserInfoService { | |||
return orderUserInfoVos; | |||
} | |||
@Transactional(rollbackFor = Exception.class) | |||
@Override | |||
public String ModOrderUserInfo(ModOrderUserInfoRequest request) throws ServiceHandleException { | |||
if (StrUtil.isBlank(request.getApplyOrderId()) || StrUtil.isBlank(request.getVehiclePlate()) | |||
|| ObjectUtil.isEmpty(request.getVehiclePlateColor()) || StrUtil.isBlank(request.getOperator()) | |||
|| (StrUtil.isBlank(request.getUserName()) && StrUtil.isBlank(request.getUserMobile()) | |||
&& ObjectUtil.isEmpty(request.getIdentType()) && StrUtil.isBlank(request.getIdentNo()))) { | |||
throw UcServiceError.BUSINESS_VALIDATE_ERR.toHandleException("请求参数错误"); | |||
} | |||
EtcOrderUserInfo orderUserInfo = orderUserInfoRepo.findByApplyOrderId(request.getApplyOrderId()); | |||
if (orderUserInfo != null) { | |||
orderUserInfo.setUserName(request.getUserName()); | |||
// orderUserInfo.setUserPhone(request.getUserPhone()); | |||
orderUserInfoRepo.saveAndFlush(orderUserInfo); | |||
return "修改成功"; | |||
extracted(request, orderUserInfo); | |||
AflOrderUserInfoModLog aflOrderUserInfoModLog = new AflOrderUserInfoModLog(); | |||
aflOrderUserInfoModLog.setApplyOrderId(orderUserInfo.getApplyOrderId()); | |||
aflOrderUserInfoModLog.setUserName(orderUserInfo.getUserName()); | |||
aflOrderUserInfoModLog.setUserMobile(orderUserInfo.getUserMobile()); | |||
aflOrderUserInfoModLog.setIdentType(orderUserInfo.getIdentType()); | |||
aflOrderUserInfoModLog.setIdentNo(orderUserInfo.getIdentNo()); | |||
aflOrderUserInfoModLog.setOperator(request.getOperator()); | |||
if (StrUtil.isNotBlank(request.getUserName()) && !request.getUserName().equals(orderUserInfo.getUserName())) { | |||
orderUserInfo.setUserName(request.getUserName()); | |||
} | |||
if (StrUtil.isNotBlank(request.getUserMobile()) && !request.getUserMobile().equals(orderUserInfo.getUserMobile())) { | |||
//更新订单系统用户手机号 | |||
List<AflOrderInfo> orderInfos = orderInfoRepo.findByVehicleId(request.getVehiclePlate(), | |||
request.getVehiclePlateColor()); | |||
if (!orderInfos.isEmpty()) { | |||
AflOrderInfo aflOrderInfo = orderInfos.get(0); | |||
aflOrderInfo.setMobile(request.getUserMobile()); | |||
orderInfoRepo.save(aflOrderInfo); | |||
} | |||
orderUserInfo.setUserMobile(request.getUserMobile()); | |||
} | |||
if (ObjectUtil.isNotNull(request.getIdentType()) && !request.getIdentType().equals(orderUserInfo.getIdentType())) { | |||
orderUserInfo.setIdentType(request.getIdentType()); | |||
} | |||
if (StrUtil.isNotBlank(request.getIdentNo()) && !request.getIdentNo().equals(orderUserInfo.getIdentNo())) { | |||
orderUserInfo.setIdentNo(request.getIdentNo()); | |||
} | |||
orderUserInfoRepo.save(orderUserInfo); | |||
orderUserInfoModLogRepo.save(aflOrderUserInfoModLog); | |||
return new NoAttributeResponse().toJson(); | |||
} else { | |||
throw UcServiceError.BUSINESS_VALIDATE_ERR.toHandleException("订单系统用户信息不存在"); | |||
} | |||
} | |||
private static void extracted(ModOrderUserInfoRequest request, EtcOrderUserInfo orderUserInfo) throws ServiceHandleException { | |||
if (StrUtil.isNotBlank(request.getUserName()) && request.getUserName().equals(orderUserInfo.getUserName())){ | |||
throw UcServiceError.BUSINESS_VALIDATE_ERR.toHandleException("用户姓名相同,无需修改"); | |||
} | |||
if (StrUtil.isNotBlank(request.getUserMobile()) && request.getUserMobile().equals(orderUserInfo.getUserMobile())){ | |||
throw UcServiceError.BUSINESS_VALIDATE_ERR.toHandleException("手机号相同,无需修改"); | |||
} | |||
if (ObjectUtil.isNotNull(request.getIdentType()) && request.getIdentType().equals(orderUserInfo.getIdentType())){ | |||
throw UcServiceError.BUSINESS_VALIDATE_ERR.toHandleException("证件类型相同,无需修改"); | |||
} | |||
if (StrUtil.isNotBlank(request.getIdentNo()) && request.getIdentNo().equals(orderUserInfo.getIdentNo())){ | |||
throw UcServiceError.BUSINESS_VALIDATE_ERR.toHandleException("证件号码相同,无需修改"); | |||
} | |||
} | |||
} |
@@ -87,37 +87,15 @@ spring: | |||
jdbc-url: jdbc:mariadb://159.75.82.245:3306/afl_fss?useSSL=false&useUnicode=yes&characterEncoding=UTF-8&allowPublicKeyRetrieval=true&serverTimezone=UTC | |||
username: ${MYSQL_SERVER_USER:root} | |||
password: ${MYSQL_SERVER_PASSWORD:houyi..} | |||
second: | |||
driver-class-name: com.mysql.cj.jdbc.Driver | |||
type: com.alibaba.druid.pool.DruidDataSource | |||
enableDrds: true | |||
dialect: org.hibernate.dialect.MySQL5InnoDBDialect | |||
# 填写你数据库的url、登录名、密码和数据库名 allowMultiQueries=true nj-cdb-m52p6dj5.sql.tencentcdb.com 63865 !@#$%QWERTasdfg hypt_smp | |||
jdbc-url: jdbc:mysql://159.75.82.245:3306/afl_fss_second?autoReconnect=true&useUnicode=true&characterEncoding=utf-8&serverTimezone=GMT%2B8&rewriteBatchedStatements=true&allowMultiQueries=true&useSSL=false | |||
username: ${MYSQL_SERVER_USER:root} | |||
password: ${MYSQL_SERVER_PASSWORD:houyi..} | |||
initial-size: 5 | |||
max-active: 100 | |||
# 配置一个连接在池中最小生存的时间,单位是毫秒 | |||
minEvictableIdleTimeMillis: 300000 | |||
max-wait: 60000 | |||
min-idle: 5 | |||
testWhileIdle: true | |||
testOnBorrow: false | |||
testOnReturn: false | |||
time-between-eviction-runs-millis: 50000 | |||
validation-query: SELECT 'x' FROM DUAL | |||
validation-query-timeout: 10 | |||
# second: | |||
# driver-class-name: com.mysql.cj.jdbc.Driver | |||
# type: com.alibaba.druid.pool.DruidDataSource | |||
# driver-class-name: oracle.jdbc.driver.OracleDriver | |||
# enableDrds: true | |||
# dialect: org.hibernate.dialect.Oracle10gDialect | |||
# dialect: org.hibernate.dialect.MySQL5InnoDBDialect | |||
# # 填写你数据库的url、登录名、密码和数据库名 allowMultiQueries=true nj-cdb-m52p6dj5.sql.tencentcdb.com 63865 !@#$%QWERTasdfg hypt_smp | |||
# # url: jdbc:oracle:thin:@192.168.101.21:5016:ORCL | |||
# jdbc-url: jdbc:oracle:thin:@10.52.0.159:1521:QTKDB1 | |||
# username: qtk | |||
# password: QWERTasdfg12345ZXCVB | |||
# jdbc-url: jdbc:mysql://159.75.82.245:3306/afl_fss_second?autoReconnect=true&useUnicode=true&characterEncoding=utf-8&serverTimezone=GMT%2B8&rewriteBatchedStatements=true&allowMultiQueries=true&useSSL=false | |||
# username: ${MYSQL_SERVER_USER:root} | |||
# password: ${MYSQL_SERVER_PASSWORD:houyi..} | |||
# initial-size: 5 | |||
# max-active: 100 | |||
# # 配置一个连接在池中最小生存的时间,单位是毫秒 | |||
@@ -130,6 +108,29 @@ spring: | |||
# time-between-eviction-runs-millis: 50000 | |||
# validation-query: SELECT 'x' FROM DUAL | |||
# validation-query-timeout: 10 | |||
second: | |||
type: com.alibaba.druid.pool.DruidDataSource | |||
driver-class-name: oracle.jdbc.driver.OracleDriver | |||
enableDrds: true | |||
dialect: org.hibernate.dialect.Oracle10gDialect | |||
# 填写你数据库的url、登录名、密码和数据库名 allowMultiQueries=true nj-cdb-m52p6dj5.sql.tencentcdb.com 63865 !@#$%QWERTasdfg hypt_smp | |||
jdbc-url: jdbc:oracle:thin:@192.168.101.21:1521:ORCL | |||
# jdbc-url: jdbc:oracle:thin:@10.52.0.159:1521:QTKDB1 | |||
username: qtk | |||
# password: QWERTasdfg12345ZXCVB | |||
password: QWERTasdfgZXCVB12345 | |||
initial-size: 5 | |||
max-active: 100 | |||
# 配置一个连接在池中最小生存的时间,单位是毫秒 | |||
minEvictableIdleTimeMillis: 300000 | |||
max-wait: 60000 | |||
min-idle: 5 | |||
testWhileIdle: true | |||
testOnBorrow: false | |||
testOnReturn: false | |||
time-between-eviction-runs-millis: 50000 | |||
validation-query: SELECT 'x' FROM DUAL | |||
validation-query-timeout: 10 | |||
# third: | |||
# type: com.alibaba.druid.pool.DruidDataSource | |||
# driver-class-name: org.mariadb.jdbc.Driver |
@@ -261,12 +261,12 @@ public class SaleTest { | |||
public void test22() throws ServiceHandleException, IOException { | |||
ArrayList<String> objects = new ArrayList<>(); | |||
// testVehicleStatusListChange("苏EB03993",4,1,4); | |||
// testVehicleStatusListChange("黑E8242J", 0, 2, 4, objects); | |||
// testVehicleStatusListChange("黑A5R2MT", 0, 2, 4, objects); | |||
// testVehicleStatusListChange("渝AM022X", 0, 2, 5, objects); | |||
// testVehicleStatusListChange("渝AB69611", 4, 2, 4, objects); | |||
testVehicleStatusListChange("鄂AF09903", 4, 2, 4, objects); | |||
// testVehicleStatusListChange("豫AG21116", 4, 2, 4, objects); | |||
// | |||
// testVehicleStatusListChange("辽H9H1F3", 0, 1, 5, objects); | |||
// testVehicleStatusListChange("粤RTV277", 0, 1, 5, objects); | |||
// testVehicleStatusListChange("津A2813P", 0, 1, 5, objects); | |||
// testVehicleStatusListChange("粤A32011", 0, 1, 5, objects); | |||
// testVehicleStatusListChange("粤A30117", 0, 1, 5, objects); | |||
@@ -281,17 +281,17 @@ public class SaleTest { | |||
// testVehicleStatusListChange("湘ADD7689", 4, 1, 5, objects); | |||
testVehicleStatusListChange("闽DA13456", 4, 1, 4, objects); | |||
testVehicleStatusListChange("鲁BFS1960", 4, 1, 4, objects); | |||
testVehicleStatusListChange("新AFE8550", 4, 1, 4, objects); | |||
testVehicleStatusListChange("闽DDP8890", 4, 1, 4, objects); | |||
testVehicleStatusListChange("豫AFL1502", 4, 1, 4, objects); | |||
// testVehicleStatusListChange("渝AG73357", 4, 1, 4, objects); | |||
// testVehicleStatusListChange("粤LD90821", 4, 1, 4, objects); | |||
// testVehicleStatusListChange("冀BFC9028", 4, 1, 4, objects); | |||
// testVehicleStatusListChange("渝AAS8662", 4, 1, 4, objects); | |||
// testVehicleStatusListChange("豫AFL1502", 4, 1, 4, objects); | |||
// testVehicleStatusListChange("黑AFM8586", 4, 1,4); | |||
} | |||
@Test | |||
public void test23() throws ServiceHandleException, IOException { | |||
String filePath = "D:\\yskj\\选装\\下黑\\0116蓝4.txt"; | |||
String filePath = "D:\\yskj\\选装\\下黑\\01171蓝4.txt"; | |||
try { | |||
// 使用Files.lines方法按行读取文件内容,并收集为List | |||
List<String> lines = Files.lines(Paths.get(filePath), StandardCharsets.UTF_8) | |||
@@ -363,8 +363,16 @@ public class SaleTest { | |||
@Test | |||
public void test222() throws ServiceHandleException { | |||
String jsonString = "[{\"cpuId\":\"0052232700221416\",\"message\":\"成功\",\"obuId\":\"9901002700028935\"," + | |||
"\"vehicleId\":\"d984640bfc0f4ed8ada94bafa2770f2e\",\"returntime\":\"2025-01-16T14:41:14\"," + | |||
String jsonString = "[{\"cpuId\":\"0052232700251883\",\"message\":\"成功\",\"obuId\":\"9901002700059402\"," + | |||
"\"vehicleId\":\"9ebd99927b814525941cd62ac050aa1e\",\"returntime\":\"2025-01-17T16:33:54\"," + | |||
"\"status\":1},{\"cpuId\":\"0052232700492341\",\"message\":\"成功\",\"obuId\":\"9901000700209586\"," + | |||
"\"vehicleId\":\"680c242af22e45b99be20d6d95d44264\",\"returntime\":\"2025-01-17T16:33:57\"," + | |||
"\"status\":1},{\"cpuId\":\"0052232700235783\",\"message\":\"成功\",\"obuId\":\"9901002700043302\"," + | |||
"\"vehicleId\":\"d4df593c8b964c1c9de33304fc01af5c\",\"returntime\":\"2025-01-17T16:33:57\"," + | |||
"\"status\":1},{\"cpuId\":\"0052232400326190\",\"message\":\"成功\",\"obuId\":\"9901000200458212\"," + | |||
"\"vehicleId\":\"418ec116f9234d51ad0bc7894257c7fa\",\"returntime\":\"2025-01-17T16:34:02\"," + | |||
"\"status\":1},{\"cpuId\":\"0052232700454444\",\"message\":\"成功\",\"obuId\":\"9901002700156968\"," + | |||
"\"vehicleId\":\"a6e8d87851bc4435b7adc2c619279789\",\"returntime\":\"2025-01-17T16:34:05\"," + | |||
"\"status\":1}]"; | |||
// 使用fastjson将JSON字符串转换为List<Map<String, Object>> | |||
String filePath = "C:\\Users\\shui\\Desktop\\1-500 - 副本.txt"; |