From fe3483f3bd1fca53fb10d9c4e6129b435542b163 Mon Sep 17 00:00:00 2001 From: anthonyywj2 <353682448@qq.com> Date: Wed, 7 Dec 2022 10:28:02 +0800 Subject: [PATCH] =?UTF-8?q?=E7=B3=BB=E7=BB=9F=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/admin/config/HdSchemaExecutor.java | 81 ++++++++++++++ .../basic/SpsSyncExportStatusController.java | 4 + .../controller/inout/OrderController.java | 53 +++++++++ .../glxp/api/admin/dao/info/DbVersionDao.java | 24 +++++ .../entity/basic/BasicExportStatusEntity.java | 1 + .../admin/entity/info/DbVersionEntity.java | 15 +++ .../api/admin/entity/info/SchemaData.java | 22 ++++ .../api/admin/entity/inout/OrderEntity.java | 4 +- .../req/basic/BasicExportStatusRequest.java | 1 + .../req/inout/WarehouseQueryRequest.java | 6 +- .../receipt/BussinessTypeFilterRequest.java | 1 + .../api/admin/service/inout/OrderService.java | 2 + .../service/inout/impl/OrderServiceImpl.java | 38 +++++++ .../main/resources/application-dev.properties | 2 +- .../main/resources/application-pro.properties | 2 +- .../resources/application-test1.properties | 2 +- .../resources/application-test2.properties | 2 +- .../mybatis/mapper/basic/BasicExportDao.xml | 8 +- .../mybatis/mapper/info/DbVersionDao.xml | 26 +++++ .../mybatis/mapper/inout/CodesDao.xml | 7 ++ api-admin/src/main/resources/schemas/init.sql | 101 ++++++++++++++++++ .../main/resources/schemas/schema_v2.1.sql | 9 ++ 22 files changed, 402 insertions(+), 9 deletions(-) create mode 100644 api-admin/src/main/java/com/glxp/api/admin/config/HdSchemaExecutor.java create mode 100644 api-admin/src/main/java/com/glxp/api/admin/dao/info/DbVersionDao.java create mode 100644 api-admin/src/main/java/com/glxp/api/admin/entity/info/DbVersionEntity.java create mode 100644 api-admin/src/main/java/com/glxp/api/admin/entity/info/SchemaData.java create mode 100644 api-admin/src/main/resources/mybatis/mapper/info/DbVersionDao.xml create mode 100644 api-admin/src/main/resources/schemas/init.sql create mode 100644 api-admin/src/main/resources/schemas/schema_v2.1.sql diff --git a/api-admin/src/main/java/com/glxp/api/admin/config/HdSchemaExecutor.java b/api-admin/src/main/java/com/glxp/api/admin/config/HdSchemaExecutor.java new file mode 100644 index 00000000..bbb0fbf6 --- /dev/null +++ b/api-admin/src/main/java/com/glxp/api/admin/config/HdSchemaExecutor.java @@ -0,0 +1,81 @@ +package com.glxp.api.admin.config; + +import cn.hutool.core.io.IORuntimeException; +import cn.hutool.core.io.IoUtil; +import cn.hutool.core.lang.UUID; +import com.glxp.api.admin.dao.info.DbVersionDao; +import com.glxp.api.admin.entity.info.DbVersionEntity; +import com.glxp.api.admin.entity.info.SchemaData; +import lombok.extern.slf4j.Slf4j; +import org.springframework.boot.ApplicationArguments; +import org.springframework.boot.ApplicationRunner; +import org.springframework.core.annotation.Order; +import org.springframework.stereotype.Component; + +import javax.annotation.Resource; +import java.io.InputStream; +import java.util.ArrayList; +import java.util.Date; +import java.util.List; + +@Order(1) +@Component +@Slf4j +public class HdSchemaExecutor implements ApplicationRunner { + + @Resource + DbVersionDao hdCommonDao; + + private List schema = new ArrayList<>(); + + @Override + public void run(ApplicationArguments args) throws Exception { + //初始版本列表 + buildSchemas(); + //定义sql文件路径 + String basePath = "schemas/"; + //非版本控制,初始化脚本 + ClassLoader loader = this.getClass().getClassLoader(); + //通过流的方式获取项目路径下的文件 + InputStream inputStream = loader.getResourceAsStream(basePath + "init.sql"); + //获取文件内容 + String sql = IoUtil.readUtf8(inputStream); + try { + //判断版本表是否存在 + int count = hdCommonDao.selectTableExist("hd_version"); + if (count == 0) { + hdCommonDao.updateSql(sql); + } + for (SchemaData schemaData : schema) { + //查询版本记录是否存在 + count = hdCommonDao.selectVersion(schemaData.getVersion()); + if (count == 0) { + log.info("--------------执行数据脚本,版本:" + schemaData.getVersion()); + //获取对应sql脚本 + inputStream = loader.getResourceAsStream(basePath + schemaData.getFileName()); + sql = IoUtil.readUtf8(inputStream); + hdCommonDao.updateSql(sql); + DbVersionEntity entity = new DbVersionEntity(); + entity.setId(UUID.randomUUID().toString()); + entity.setVersion(schemaData.getVersion()); + entity.setCreated(new Date()); + entity.setRemark(schemaData.getFileName()); + //写入版本记录 + hdCommonDao.insertVersion(entity); + } + } + + } catch (IORuntimeException e) { + e.printStackTrace(); + } finally { + //关闭流 + inputStream.close(); + } + } + + public void buildSchemas() { + schema.add(new SchemaData("v2.1", "schema_v2.1.sql")); +// schema.add(new SchemaData("v2.2", "schema_v2.2.sql")); +// schema.add(new SchemaData("v2.3", "schema_v2.3.sql")); + } +} \ No newline at end of file diff --git a/api-admin/src/main/java/com/glxp/api/admin/controller/basic/SpsSyncExportStatusController.java b/api-admin/src/main/java/com/glxp/api/admin/controller/basic/SpsSyncExportStatusController.java index a24eaa2f..c49b83b0 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/controller/basic/SpsSyncExportStatusController.java +++ b/api-admin/src/main/java/com/glxp/api/admin/controller/basic/SpsSyncExportStatusController.java @@ -86,6 +86,10 @@ public class SpsSyncExportStatusController { @PostMapping("/spssync/basic/udiinfo/updateStatus") public BaseResponse updateStatus(@RequestBody BasicExportStatusEntity basicExportStatusEntity) { + if (StrUtil.isEmpty(basicExportStatusEntity.getReceiveStatus())) { + basicExportStatusEntity.setEndTime(new Date()); + } + basicExportStatusEntity.setEndTime(new Date()); basicExportStatusEntity.setUpdateTime(new Date()); boolean b = basicExportService.updateExportStatus(basicExportStatusEntity); diff --git a/api-admin/src/main/java/com/glxp/api/admin/controller/inout/OrderController.java b/api-admin/src/main/java/com/glxp/api/admin/controller/inout/OrderController.java index 89d3bd1b..8399a5ac 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/controller/inout/OrderController.java +++ b/api-admin/src/main/java/com/glxp/api/admin/controller/inout/OrderController.java @@ -10,6 +10,7 @@ import com.github.pagehelper.PageInfo; import com.glxp.api.admin.annotation.AuthRuleAnnotation; import com.glxp.api.admin.constant.Constant; import com.glxp.api.admin.constant.ConstantStatus; +import com.glxp.api.admin.constant.ConstantType; import com.glxp.api.admin.controller.inout.utils.DataTransUtil; import com.glxp.api.admin.dao.inout.CodesTempDao; import com.glxp.api.admin.dao.inout.OrderDao; @@ -32,7 +33,9 @@ import com.glxp.api.admin.req.inout.*; import com.glxp.api.admin.req.inventory.FilterInvBusUserRequest; import com.glxp.api.admin.req.inventory.FilterInvUserRequest; import com.glxp.api.admin.req.inventory.FilterInvWarehouseRequest; +import com.glxp.api.admin.req.receipt.BussinessTypeFilterRequest; import com.glxp.api.admin.res.PageSimpleResponse; +import com.glxp.api.admin.res.basic.BussinessTypResponse; import com.glxp.api.admin.service.auth.CustomerService; import com.glxp.api.admin.service.basic.BussinessTypeService; import com.glxp.api.admin.service.basic.EntrustReceService; @@ -799,6 +802,56 @@ public class OrderController { return ResultVOUtils.success(); } + + @AuthRuleAnnotation("") + @GetMapping("/udiwms/inout/order/filterPreInChange") + public BaseResponse filterPreInChange(String billNo, String code) { + + + if (StrUtil.isEmpty(code) && StrUtil.isEmpty(billNo)) { + return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL); + } + List orderEntities = new ArrayList<>(); + + if (StrUtil.isNotEmpty(code)) { + + //查询预验收单据类型 + BussinessTypeFilterRequest bussinessTypeFilterRequest = new BussinessTypeFilterRequest(); + bussinessTypeFilterRequest.setPreIn(true); + bussinessTypeFilterRequest.setMainAction(ConstantType.TYPE_PUT); + List bussinessTypResponses = bussinessTypeService.filterJoinList(bussinessTypeFilterRequest); + + List actions = new ArrayList<>(); + if (CollUtil.isNotEmpty(bussinessTypResponses)) { + for (BussinessTypResponse bussinessTypResponse : bussinessTypResponses) { + actions.add(bussinessTypResponse.getAction()); + } + WarehouseQueryRequest warehouseQueryRequest = new WarehouseQueryRequest(); + warehouseQueryRequest.setCode(code); + warehouseQueryRequest.setActions(actions); + List warehouseEntityList = codesService.findAllByOrderId(warehouseQueryRequest); + if (CollUtil.isNotEmpty(warehouseEntityList)) { + for (WarehouseEntity warehouseEntity : warehouseEntityList) { + List temps = orderService.filterPreInChange(warehouseEntity.getOrderId()); + if (CollUtil.isNotEmpty(temps)) + orderEntities.addAll(temps); + + } + } + } + + + } else { + orderEntities = orderService.filterPreInChange(billNo); + } + + PageInfo pageInfo = new PageInfo<>(orderEntities); + PageSimpleResponse pageSimpleResponse = new PageSimpleResponse<>(); + pageSimpleResponse.setTotal(pageInfo.getTotal()); + pageSimpleResponse.setList(orderEntities); + return ResultVOUtils.success(pageSimpleResponse); + } + /** * 根据扫码单据号查询单据信息 * diff --git a/api-admin/src/main/java/com/glxp/api/admin/dao/info/DbVersionDao.java b/api-admin/src/main/java/com/glxp/api/admin/dao/info/DbVersionDao.java new file mode 100644 index 00000000..8e9aee30 --- /dev/null +++ b/api-admin/src/main/java/com/glxp/api/admin/dao/info/DbVersionDao.java @@ -0,0 +1,24 @@ +package com.glxp.api.admin.dao.info; + +import com.glxp.api.admin.entity.info.DbVersionEntity; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Update; + +@Mapper +public interface DbVersionDao { + + int selectVersion(@Param("version") String version); + + //查询版本表是否存在 + int selectTableExist(@Param("tableName") String tableName); + + //新增版本 + int insertVersion(DbVersionEntity entity); + + //执行sql + @Update("${sql}") + void updateSql(@Param("sql") String sql); + + +} diff --git a/api-admin/src/main/java/com/glxp/api/admin/entity/basic/BasicExportStatusEntity.java b/api-admin/src/main/java/com/glxp/api/admin/entity/basic/BasicExportStatusEntity.java index 13a15210..489e4e51 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/entity/basic/BasicExportStatusEntity.java +++ b/api-admin/src/main/java/com/glxp/api/admin/entity/basic/BasicExportStatusEntity.java @@ -17,4 +17,5 @@ public class BasicExportStatusEntity { private Date startTime; private Date endTime; private String remark; + private String receiveStatus; } diff --git a/api-admin/src/main/java/com/glxp/api/admin/entity/info/DbVersionEntity.java b/api-admin/src/main/java/com/glxp/api/admin/entity/info/DbVersionEntity.java new file mode 100644 index 00000000..ec9b8082 --- /dev/null +++ b/api-admin/src/main/java/com/glxp/api/admin/entity/info/DbVersionEntity.java @@ -0,0 +1,15 @@ +package com.glxp.api.admin.entity.info; + +import lombok.Data; + +import java.util.Date; + +@Data +public class DbVersionEntity { + + private String id; + private String version; + private String remark; + private Date created; + +} diff --git a/api-admin/src/main/java/com/glxp/api/admin/entity/info/SchemaData.java b/api-admin/src/main/java/com/glxp/api/admin/entity/info/SchemaData.java new file mode 100644 index 00000000..d56235b7 --- /dev/null +++ b/api-admin/src/main/java/com/glxp/api/admin/entity/info/SchemaData.java @@ -0,0 +1,22 @@ +package com.glxp.api.admin.entity.info; + +import lombok.Data; + + +@Data +public class SchemaData { + /** + * 版本号 + */ + public String version; + + /** + * 文件名 + */ + public String fileName; + + public SchemaData(String version, String fileName) { + this.version = version; + this.fileName = fileName; + } +} \ No newline at end of file diff --git a/api-admin/src/main/java/com/glxp/api/admin/entity/inout/OrderEntity.java b/api-admin/src/main/java/com/glxp/api/admin/entity/inout/OrderEntity.java index 17e4eb9f..65366f6e 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/entity/inout/OrderEntity.java +++ b/api-admin/src/main/java/com/glxp/api/admin/entity/inout/OrderEntity.java @@ -82,8 +82,10 @@ public class OrderEntity { /** * 上传到自助平台状态 - * + *

* 上传状态(0:未上传,1:已上传) */ private String uploadStatus; + private String wzUploadStatus; + private String wzUploadResult; } diff --git a/api-admin/src/main/java/com/glxp/api/admin/req/basic/BasicExportStatusRequest.java b/api-admin/src/main/java/com/glxp/api/admin/req/basic/BasicExportStatusRequest.java index e7b18b4b..7016dbe8 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/req/basic/BasicExportStatusRequest.java +++ b/api-admin/src/main/java/com/glxp/api/admin/req/basic/BasicExportStatusRequest.java @@ -12,4 +12,5 @@ public class BasicExportStatusRequest extends ListPageRequest { private Integer scheduleType; public Integer createType; private String syncTime; + private String receiveStatus; } diff --git a/api-admin/src/main/java/com/glxp/api/admin/req/inout/WarehouseQueryRequest.java b/api-admin/src/main/java/com/glxp/api/admin/req/inout/WarehouseQueryRequest.java index d8d80200..143b6158 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/req/inout/WarehouseQueryRequest.java +++ b/api-admin/src/main/java/com/glxp/api/admin/req/inout/WarehouseQueryRequest.java @@ -3,6 +3,8 @@ package com.glxp.api.admin.req.inout; import com.glxp.api.admin.req.ListPageRequest; import lombok.Data; +import java.util.List; + @Data public class WarehouseQueryRequest extends ListPageRequest { @@ -15,7 +17,7 @@ public class WarehouseQueryRequest extends ListPageRequest { private String nameCode; private String supId; private String locStorageCode; - - private String relId; + + List actions; } diff --git a/api-admin/src/main/java/com/glxp/api/admin/req/receipt/BussinessTypeFilterRequest.java b/api-admin/src/main/java/com/glxp/api/admin/req/receipt/BussinessTypeFilterRequest.java index 72e54faf..2fd4f007 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/req/receipt/BussinessTypeFilterRequest.java +++ b/api-admin/src/main/java/com/glxp/api/admin/req/receipt/BussinessTypeFilterRequest.java @@ -32,5 +32,6 @@ public class BussinessTypeFilterRequest extends ListPageRequest { private String code; private String ids; private List actionList; + private Boolean preIn; } diff --git a/api-admin/src/main/java/com/glxp/api/admin/service/inout/OrderService.java b/api-admin/src/main/java/com/glxp/api/admin/service/inout/OrderService.java index 39e60545..6c14a45c 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/service/inout/OrderService.java +++ b/api-admin/src/main/java/com/glxp/api/admin/service/inout/OrderService.java @@ -44,6 +44,8 @@ public interface OrderService { List filterList(OrderFilterRequest orderFilterRequest); + List filterPreInChange(String billNo); + OrderEntity findOne(OrderFilterRequest orderFilterRequest); OrderEntity findById(String orderId); diff --git a/api-admin/src/main/java/com/glxp/api/admin/service/inout/impl/OrderServiceImpl.java b/api-admin/src/main/java/com/glxp/api/admin/service/inout/impl/OrderServiceImpl.java index 1b9124a6..b172f5da 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/service/inout/impl/OrderServiceImpl.java +++ b/api-admin/src/main/java/com/glxp/api/admin/service/inout/impl/OrderServiceImpl.java @@ -205,6 +205,44 @@ public class OrderServiceImpl implements OrderService { return orderDao.findOne(orderFilterRequest); } + + @Override + public List filterPreInChange(String billNo) { + + List orderEntities = new ArrayList<>(); + String orderId = ""; + StockOrderEntity stockOrderEntity = stockOrderDao.selectByBillNo(billNo); + if (stockOrderEntity == null) { + orderId = billNo; + } else { + orderId = stockOrderEntity.getOrderIdFk(); + } + OrderEntity orderEntity = orderDao.selectByBillNo(orderId); + orderEntities.add(orderEntity); + if (StrUtil.isNotEmpty(orderEntity.getPreInBillNo())) { + String[] priInNo = orderEntity.getPreInBillNo().split(";"); + if (priInNo != null) { + for (int i = 0; i < priInNo.length; i++) { + OrderEntity temp = orderDao.selectByBillNo(priInNo[i]); + orderEntities.add(temp); + } + } + } + + if (StrUtil.isNotEmpty(orderEntity.getPreOutBillNo())) { + String[] priInNo = orderEntity.getPreOutBillNo().split(";"); + if (priInNo != null) { + for (int i = 0; i < priInNo.length; i++) { + OrderEntity temp = orderDao.selectByBillNo(priInNo[i]); + orderEntities.add(temp); + } + } + } + + return orderEntities; + } + + @Override public OrderEntity findById(String orderId) { OrderFilterRequest orderFilterRequest = new OrderFilterRequest(); diff --git a/api-admin/src/main/resources/application-dev.properties b/api-admin/src/main/resources/application-dev.properties index ded4a0a3..2c87aee0 100644 --- a/api-admin/src/main/resources/application-dev.properties +++ b/api-admin/src/main/resources/application-dev.properties @@ -1,6 +1,6 @@ server.port=9991 spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver -spring.datasource.jdbc-url=jdbc:mysql://127.0.0.1:3306/udiwms_ph1?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true +spring.datasource.jdbc-url=jdbc:mysql://127.0.0.1:3306/udiwms_ph1?allowMultiQueries=true&serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true spring.datasource.username=root spring.datasource.password=123456 spring.datasource.hikari.connection-timeout=60000 diff --git a/api-admin/src/main/resources/application-pro.properties b/api-admin/src/main/resources/application-pro.properties index c4212717..c8d24d22 100644 --- a/api-admin/src/main/resources/application-pro.properties +++ b/api-admin/src/main/resources/application-pro.properties @@ -1,7 +1,7 @@ # \u672C\u5730\u73AF\u5883 server.port=9991 spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver -spring.datasource.jdbc-url=jdbc:mysql://192.168.0.148:3306/udiwms?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true +spring.datasource.jdbc-url=jdbc:mysql://192.168.0.148:3306/udiwms?allowMultiQueries=true&serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true spring.datasource.username=root spring.datasource.password=Glxp@6066 #spring.datasource.password=89083fb2fc145533 diff --git a/api-admin/src/main/resources/application-test1.properties b/api-admin/src/main/resources/application-test1.properties index b8b9519f..a0a09f4e 100644 --- a/api-admin/src/main/resources/application-test1.properties +++ b/api-admin/src/main/resources/application-test1.properties @@ -1,7 +1,7 @@ # \u672C\u5730\u73AF\u5883 server.port=9991 spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver -spring.datasource.jdbc-url=jdbc:mysql://192.168.0.66:3360/udiwms?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true +spring.datasource.jdbc-url=jdbc:mysql://192.168.0.66:3360/udiwms?allowMultiQueries=true&serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true spring.datasource.username=root spring.datasource.password=root #spring.datasource.password=89083fb2fc145533 diff --git a/api-admin/src/main/resources/application-test2.properties b/api-admin/src/main/resources/application-test2.properties index 0393c80d..cd011f47 100644 --- a/api-admin/src/main/resources/application-test2.properties +++ b/api-admin/src/main/resources/application-test2.properties @@ -1,7 +1,7 @@ # \u672C\u5730\u73AF\u5883 server.port=9991 spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver -spring.datasource.jdbc-url=jdbc:mysql://192.168.0.66:3361/udiwms?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true +spring.datasource.jdbc-url=jdbc:mysql://192.168.0.66:3361/udiwms?allowMultiQueries=true&serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true spring.datasource.username=root spring.datasource.password=root #spring.datasource.password=89083fb2fc145533 diff --git a/api-admin/src/main/resources/mybatis/mapper/basic/BasicExportDao.xml b/api-admin/src/main/resources/mybatis/mapper/basic/BasicExportDao.xml index 77df727b..f44bc8a6 100644 --- a/api-admin/src/main/resources/mybatis/mapper/basic/BasicExportDao.xml +++ b/api-admin/src/main/resources/mybatis/mapper/basic/BasicExportDao.xml @@ -25,6 +25,9 @@ and #{syncTime} >= startTime and #{syncTime} <= endTime + + and receiveStatus = #{receiveStatus} + order by updateTime desc @@ -33,7 +36,7 @@ replace - INTO basic_export_status(id,idDatas,status,type,updateTime,scheduleType,startTime,endTime,remark) + INTO basic_export_status(id,idDatas,status,`type`,updateTime,scheduleType,startTime,endTime,remark,receiveStatus) values( #{id}, #{idDatas}, @@ -43,7 +46,8 @@ #{scheduleType}, #{startTime}, #{endTime}, - #{remark} + #{remark}, + #{receiveStatus} ) diff --git a/api-admin/src/main/resources/mybatis/mapper/info/DbVersionDao.xml b/api-admin/src/main/resources/mybatis/mapper/info/DbVersionDao.xml new file mode 100644 index 00000000..9a21fa58 --- /dev/null +++ b/api-admin/src/main/resources/mybatis/mapper/info/DbVersionDao.xml @@ -0,0 +1,26 @@ + + + + + + + + + + + + insert into db_version(id, version, remark, created) + values (uuid(), #{version}, #{remark}, #{created}) + + + + \ No newline at end of file diff --git a/api-admin/src/main/resources/mybatis/mapper/inout/CodesDao.xml b/api-admin/src/main/resources/mybatis/mapper/inout/CodesDao.xml index cc880486..b85e24d3 100644 --- a/api-admin/src/main/resources/mybatis/mapper/inout/CodesDao.xml +++ b/api-admin/src/main/resources/mybatis/mapper/inout/CodesDao.xml @@ -33,6 +33,13 @@ and relId =#{relId} + + and + `action` in + + #{id} + + ORDER BY actDate diff --git a/api-admin/src/main/resources/schemas/init.sql b/api-admin/src/main/resources/schemas/init.sql new file mode 100644 index 00000000..a76e3fa9 --- /dev/null +++ b/api-admin/src/main/resources/schemas/init.sql @@ -0,0 +1,101 @@ +SET NAMES utf8mb4; +SET FOREIGN_KEY_CHECKS = 0; +DROP TABLE IF EXISTS `db_version`; +CREATE TABLE `db_version` ( + `id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, + `version` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '版本号', + `created` datetime(0) NULL DEFAULT NULL COMMENT '创建时间', + `remark` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '备注', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '数据版本' ROW_FORMAT = Dynamic; + +SET FOREIGN_KEY_CHECKS = 1; + + +/* 创建函数Pro_Temp_ColumnWork操作表字段 */ +DROP PROCEDURE IF EXISTS Pro_Temp_ColumnWork; +CREATE PROCEDURE `Pro_Temp_ColumnWork` ( TableName VARCHAR ( 50 ), ColumnName VARCHAR ( 50 ), SqlStr VARCHAR ( 4000 ), CType INT ) BEGIN + DECLARE +Rows1 INT; + + SET Rows1 = 0; +SELECT + COUNT(*) INTO Rows1 +FROM + INFORMATION_SCHEMA.COLUMNS +WHERE + table_schema = DATABASE () + AND upper( table_name )= TableName + AND upper( column_name )= ColumnName; +IF +( CType = 1 AND Rows1 <= 0 ) THEN + + SET SqlStr := CONCAT( 'ALTER TABLE ', TableName, ' ADD COLUMN ', ColumnName, ' ', SqlStr ); + + ELSEIF ( CType = 2 AND Rows1 > 0 ) THEN + + SET SqlStr := CONCAT( 'ALTER TABLE ', TableName, ' MODIFY ', ColumnName, ' ', SqlStr ); + + ELSEIF ( CType = 3 AND Rows1 > 0 ) THEN + + SET SqlStr := CONCAT( 'ALTER TABLE ', TableName, ' DROP COLUMN ', ColumnName ); +ELSE + SET SqlStr := ''; + +END IF; + IF +( SqlStr <> '' ) THEN + + SET @SQL1 = SqlStr; +PREPARE stmt1 + FROM + @SQL1; +EXECUTE stmt1; + +END IF; + +END; +/** 函数创建结束 **/ + +/*创建定义普通索引函数*/ +DROP PROCEDURE IF EXISTS Modify_index; + +CREATE PROCEDURE Modify_index ( + TableName VARCHAR ( 50 ), + ColumnNames VARCHAR ( 500 ), + idx_name VARCHAR ( 50 ), + idx_type VARCHAR ( 50 )) BEGIN + DECLARE +Rows1 int; + DECLARE +SqlStr VARCHAR(4000); + DECLARE +target_database VARCHAR ( 100 ); +SELECT DATABASE + () INTO target_database; + +SET Rows1 = 0; +SELECT + COUNT(*) INTO Rows1 +FROM + information_schema.statistics +WHERE + table_schema = DATABASE () + AND upper( table_name )= upper(TableName) + AND upper( index_name )= upper(idx_name); +IF Rows1<=0 THEN + SET SqlStr := CONCAT( 'alter table ', TableName, ' ADD INDEX ', idx_name, '(', ColumnNames, ') USING ', idx_type ); +END IF; + IF +( SqlStr <> '' ) THEN + + SET @SQL1 = SqlStr; +PREPARE stmt1 + FROM + @SQL1; +EXECUTE stmt1; + +END IF; + +END; +/*创建定义普通索引函数结束*/ diff --git a/api-admin/src/main/resources/schemas/schema_v2.1.sql b/api-admin/src/main/resources/schemas/schema_v2.1.sql new file mode 100644 index 00000000..587b80fd --- /dev/null +++ b/api-admin/src/main/resources/schemas/schema_v2.1.sql @@ -0,0 +1,9 @@ + +-- 字段新增 (表名,字段名,字段类型,修改方式(1:新增,2:修改,3:删除) +CALL Pro_Temp_ColumnWork ('basic_export_status','receiveStatus','varchar(255) ', 1); +CALL Pro_Temp_ColumnWork ('io_order','wzUploadStatus','varchar(255) ', 1); +CALL Pro_Temp_ColumnWork ('io_order','wzUploadResult','varchar(255) ', 1); + + + +-- 创建表时必须 create table if not exists 表名 \ No newline at end of file