From d860a9f444a951faa27fd30c92588328d1f421b6 Mon Sep 17 00:00:00 2001 From: x_z Date: Fri, 21 Oct 2022 15:44:27 +0800 Subject: [PATCH] =?UTF-8?q?1.=E7=A7=BB=E9=99=A4=E6=97=A0=E7=94=A8=E7=9A=84?= =?UTF-8?q?=E6=B5=8B=E8=AF=95=E6=8E=A5=E5=8F=A3=E7=B1=BB=E5=92=8Cmongodb?= =?UTF-8?q?=E6=A8=A1=E6=9D=BF=202.=E5=88=A0=E9=99=A4mongodb=E4=BE=9D?= =?UTF-8?q?=E8=B5=96=EF=BC=8C=E8=B0=83=E6=95=B4sql=E6=80=A7=E8=83=BD?= =?UTF-8?q?=E5=88=86=E6=9E=90=E6=8F=92=E4=BB=B6=E6=89=93=E5=8C=85=E9=85=8D?= =?UTF-8?q?=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 12 +- .../udi/admin/controller/TestController.java | 199 ------------------ .../com/glxp/udi/admin/mongo/MongoDBName.java | 35 --- .../glxp/udi/admin/mongo/dao/CodesMdDao.java | 150 ------------- .../udi/admin/mongo/dao/CodesTempMdDao.java | 149 ------------- .../mongo/dao/InvProductDetailMdDao.java | 162 -------------- .../udi/admin/mongo/dao/InvProductMdDao.java | 187 ---------------- .../udi/admin/mongo/dao/OrderDetailMdDao.java | 162 -------------- .../glxp/udi/admin/mongo/dao/OrderMdDao.java | 186 ---------------- .../admin/mongo/dao/base/MongoBaseDao.java | 84 -------- .../admin/mongo/utils/MongoPageHelper.java | 109 ---------- .../udi/admin/mongo/utils/PageResult.java | 41 ---- src/main/resources/application-pro.yml | 3 - src/main/resources/application-test.yml | 4 - 14 files changed, 1 insertion(+), 1482 deletions(-) delete mode 100644 src/main/java/com/glxp/udi/admin/controller/TestController.java delete mode 100644 src/main/java/com/glxp/udi/admin/mongo/MongoDBName.java delete mode 100644 src/main/java/com/glxp/udi/admin/mongo/dao/CodesMdDao.java delete mode 100644 src/main/java/com/glxp/udi/admin/mongo/dao/CodesTempMdDao.java delete mode 100644 src/main/java/com/glxp/udi/admin/mongo/dao/InvProductDetailMdDao.java delete mode 100644 src/main/java/com/glxp/udi/admin/mongo/dao/InvProductMdDao.java delete mode 100644 src/main/java/com/glxp/udi/admin/mongo/dao/OrderDetailMdDao.java delete mode 100644 src/main/java/com/glxp/udi/admin/mongo/dao/OrderMdDao.java delete mode 100644 src/main/java/com/glxp/udi/admin/mongo/dao/base/MongoBaseDao.java delete mode 100644 src/main/java/com/glxp/udi/admin/mongo/utils/MongoPageHelper.java delete mode 100644 src/main/java/com/glxp/udi/admin/mongo/utils/PageResult.java diff --git a/pom.xml b/pom.xml index 7e05899..4f4c084 100644 --- a/pom.xml +++ b/pom.xml @@ -110,6 +110,7 @@ p6spy p6spy 3.9.1 + provided @@ -127,12 +128,6 @@ 0.9.1 - - org.springframework.boot - spring-boot-starter-test - test - - org.springframework.boot spring-boot-starter-tomcat @@ -144,11 +139,6 @@ 2.13.3 - - org.springframework.boot - spring-boot-starter-data-mongodb - - cn.hutool hutool-all diff --git a/src/main/java/com/glxp/udi/admin/controller/TestController.java b/src/main/java/com/glxp/udi/admin/controller/TestController.java deleted file mode 100644 index 7e83e82..0000000 --- a/src/main/java/com/glxp/udi/admin/controller/TestController.java +++ /dev/null @@ -1,199 +0,0 @@ -package com.glxp.udi.admin.controller; - -import cn.hutool.core.bean.BeanUtil; -import cn.hutool.core.collection.CollUtil; -import cn.hutool.core.date.DateUtil; -import cn.hutool.core.util.StrUtil; -import com.glxp.udi.admin.dao.inout.*; -import com.glxp.udi.admin.entity.inout.*; -import com.glxp.udi.admin.entity.mongo.*; -import com.glxp.udi.admin.mongo.dao.*; -import com.glxp.udi.admin.service.inout.UdiInfoService; -import lombok.extern.slf4j.Slf4j; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RestController; - -import javax.annotation.Resource; -import java.util.List; - -/** - * todo 正式上线完成数据迁移之后,删除此接口 - */ -@Slf4j -@RestController -public class TestController { - - @Resource - private UdiInfoDao udiInfoDao; - - //mongodb dao - @Resource - private OrderMdDao orderMdDao; - @Resource - private OrderDetailMdDao orderDetailMdDao; - @Resource - private CodesMdDao codesMdDao; - @Resource - private CodesTempMdDao codesTempMdDao; - @Resource - private InvProductMdDao invProductMdDao; - @Resource - private InvProductDetailMdDao invProductDetailMdDao; - - //mysql dao - @Resource - private OrderDao orderDao; - @Resource - private OrderDetailDao orderDetailDao; - @Resource - private CodesDao codesDao; - @Resource - private CodesTempDao codesTempDao; - @Resource - private InvProductDao invProductDao; - @Resource - private InvProductDetailDao invProductDetailDao; - @Resource - private UdiInfoService udiInfoService; - - - /** - * 填充relId产品ID关联字段值 - * - * @return - */ - @GetMapping("/test/refreshOrderData") - private String refreshOrderData() { - try { - //刷新码详情数据 - List warehouseEntities = codesDao.selectList(null); - warehouseEntities.forEach(code -> { - UdiInfoEntity udiInfoEntity = udiInfoDao.selectById(code.getRelId()); - try { - code.setRelId(udiInfoEntity.getUuid()); - codesDao.updateById(code); - } catch (Exception e) { - log.error(e.getMessage(), e); - } - }); - - //刷新临时码表 - List warehousetempEntities = codesTempDao.selectList(null); - warehousetempEntities.forEach(codesTemp -> { - UdiInfoEntity udiInfoEntity = udiInfoDao.selectById(codesTemp.getRelId()); - codesTemp.setRelId(udiInfoEntity.getUuid()); - codesTempDao.updateById(codesTemp); - }); - - return "success"; - } catch (Exception e) { - log.error(e.getMessage(), e); - } - return "error"; - } - - - /** - * 复制mongodb数据到mysql - * - * @return - */ - @GetMapping("/test/copyData") - public String copyData() { - try { - log.info("开始拷贝单据数据"); - List orderList = orderMdDao.getOrderList(); - if (CollUtil.isNotEmpty(orderList)) { - orderList.forEach(orderMdEntity -> { - OrderEntity orderEntity = new OrderEntity(); - BeanUtil.copyProperties(orderMdEntity, orderEntity); - orderDao.insert(orderEntity); - }); - } - log.info("单据数据拷贝完成"); - - log.info("开始拷贝单据详情数据"); - List orderDetailList = orderDetailMdDao.getOrderDetailList(); - if (CollUtil.isNotEmpty(orderDetailList)) { - orderDetailList.forEach(orderMdDetail -> { - OrderDetailEntity orderDetailEntity = new OrderDetailEntity(); - BeanUtil.copyProperties(orderMdDetail, orderDetailEntity, "id"); - orderDetailEntity.setBatchNo(orderMdDetail.getLotno()); - orderDetailEntity.setProductName(orderMdDetail.getCoName()); - orderDetailEntity.setZczbhhzbapzbh(orderMdDetail.getAuthCode()); - orderDetailEntity.setGgxh(orderMdDetail.getPackSpec()); - orderDetailDao.insert(orderDetailEntity); - }); - } - log.info("单据详情数据拷贝完成"); - - log.info("开始拷贝码数据"); - List codesList = codesMdDao.getCodesList(); - if (CollUtil.isNotEmpty(codesList)) { - codesList.forEach(code -> { - WarehouseEntity warehouseEntity = new WarehouseEntity(); - BeanUtil.copyProperties(code, warehouseEntity, "id"); - String actDate = warehouseEntity.getActDate(); - if (StrUtil.isNotBlank(actDate)) { - String date = DateUtil.parse(actDate).toString("yyyy-MM-dd HH:mm:ss"); - warehouseEntity.setActDate(date); - } - warehouseEntity.setNameCode(code.getUdi()); - codesDao.insert(warehouseEntity); - }); - } - log.info("码数据拷贝完成"); - - log.info("开始拷贝临时码表"); - List codesTempList = codesTempMdDao.getCodesTempList(); - if (CollUtil.isNotEmpty(codesTempList)) { - codesTempList.forEach(codesTemp -> { - WarehousetempEntity warehousetempEntity = new WarehousetempEntity(); - BeanUtil.copyProperties(codesTemp, warehousetempEntity, "id"); - warehousetempEntity.setNameCode(codesTemp.getUdi()); - codesTempDao.insert(warehousetempEntity); - }); - } - log.info("临时码表数据拷贝完成"); - - log.info("开始拷贝库存数据"); - List invList = invProductMdDao.getInvList(); - if (CollUtil.isNotEmpty(invList)) { - invList.forEach(inv -> { - InvProductEntity invProductEntity = new InvProductEntity(); - BeanUtil.copyProperties(inv, invProductEntity, "id"); - if (StrUtil.isNotBlank(inv.getProductionDate())) { - invProductEntity.setProductDate(inv.getProductionDate()); - } - invProductDao.insert(invProductEntity); - if (StrUtil.isNotBlank(invProductEntity.getId())) { - //拷贝;临时码表的数据 - log.info("开始拷贝临时码表数据"); - //查询此库存对应的库存详情,根据已经插入到mysql的数据,生成mysql的库存详情数据 - List invDetailList = invProductDetailMdDao.getInvDetailList(inv.getId()); - if (CollUtil.isNotEmpty(invDetailList)) { - invDetailList.forEach(invDetail -> { - InvProductDetailEntity invProductDetailEntity = new InvProductDetailEntity(); - BeanUtil.copyProperties(invDetail, invProductDetailEntity, "id"); - if (StrUtil.isNotBlank(invDetail.getProductionDate())) { - invProductDetailEntity.setProductDate(invDetail.getProductionDate()); - } - invProductDetailEntity.setProductIdFk(invDetail.getProductIdFk()); - invProductDetailEntity.setInvProductIdFk(invProductEntity.getId()); - invProductDetailDao.insert(invProductDetailEntity); - log.info("插入库存详情数据"); - }); - } - } - }); - } - - return "success"; - } catch (Exception e) { - log.error("复制数据失败", e); - } - return "error"; - } - - -} diff --git a/src/main/java/com/glxp/udi/admin/mongo/MongoDBName.java b/src/main/java/com/glxp/udi/admin/mongo/MongoDBName.java deleted file mode 100644 index 60dac02..0000000 --- a/src/main/java/com/glxp/udi/admin/mongo/MongoDBName.java +++ /dev/null @@ -1,35 +0,0 @@ -package com.glxp.udi.admin.mongo; - -public class MongoDBName { - - /** - * 单据表 - */ - public static final String NAME_ORDER = "io_order"; - - /** - * 单据详情表 - */ - public static final String NAME_ORDER_DETAIL = "io_order_detail"; - - /** - * 临时码表 - */ - public static final String NAME_CODE_TEMP = "io_code_temp"; - - /** - * 正式码表 - */ - public static final String NAME_CODE = "io_code"; - - /** - * 库存表 - */ - public static final String NAME_INV_PRODUCT = "io_inv_product"; - - /** - * 库存详情表 - */ - public static final String NAME_INV_PRODUCT_DETAIL = "io_inv_product_detail"; - -} diff --git a/src/main/java/com/glxp/udi/admin/mongo/dao/CodesMdDao.java b/src/main/java/com/glxp/udi/admin/mongo/dao/CodesMdDao.java deleted file mode 100644 index aa77843..0000000 --- a/src/main/java/com/glxp/udi/admin/mongo/dao/CodesMdDao.java +++ /dev/null @@ -1,150 +0,0 @@ -package com.glxp.udi.admin.mongo.dao; - -import cn.hutool.core.util.ObjectUtil; -import cn.hutool.core.util.ReflectUtil; -import com.glxp.udi.admin.entity.inout.WarehouseEntity; -import com.glxp.udi.admin.entity.mongo.WarehouseMdEntity; -import com.glxp.udi.admin.mongo.MongoDBName; -import com.glxp.udi.admin.mongo.dao.base.MongoBaseDao; -import com.glxp.udi.admin.mongo.utils.MongoPageHelper; -import com.glxp.udi.admin.mongo.utils.PageResult; -import com.glxp.udi.admin.req.inout.FilterWarehouseRequest; -import org.springframework.data.mongodb.core.MongoTemplate; -import org.springframework.data.mongodb.core.query.Criteria; -import org.springframework.data.mongodb.core.query.Query; -import org.springframework.data.mongodb.core.query.Update; -import org.springframework.stereotype.Component; - -import javax.annotation.Resource; -import java.lang.reflect.Field; -import java.util.Arrays; -import java.util.List; - -@Component -public class CodesMdDao implements MongoBaseDao { - - @Resource - private MongoTemplate mongoTemplate; - @Resource - private MongoPageHelper mongoPageHelper; - - @Override - public PageResult pageQuery(Query query, FilterWarehouseRequest filterWarehouseRequest, int page, int size) { - if (null == query && null != filterWarehouseRequest) { - query = buildQuery(filterWarehouseRequest); - } - return mongoPageHelper.pageQuery(query, WarehouseEntity.class, size, page, MongoDBName.NAME_CODE); - } - - @Override - public List findList(Query query, FilterWarehouseRequest filterWarehouseRequest) { - if (null == query && null != filterWarehouseRequest) { - query = buildQuery(filterWarehouseRequest); - } - return mongoTemplate.find(query, WarehouseEntity.class, MongoDBName.NAME_CODE); - } - - @Override - public WarehouseEntity findOne(Query query, FilterWarehouseRequest filterWarehouseRequest) { - if (null == query && null != filterWarehouseRequest) { - query = buildQuery(filterWarehouseRequest); - } - return mongoTemplate.findOne(query, WarehouseEntity.class, MongoDBName.NAME_CODE); - } - - @Override - public void update(Query query, Update update, WarehouseEntity warehouseEntity) { - if (null == query) { - query = buildQuery(warehouseEntity); - } - if (null == update) { - update = buildUpdate(warehouseEntity); - } - mongoTemplate.updateMulti(query, update, WarehouseEntity.class, MongoDBName.NAME_CODE); - } - - @Override - public void delete(Query query, FilterWarehouseRequest filterWarehouseRequest) { - if (null == query) { - query = buildQuery(filterWarehouseRequest); - } - mongoTemplate.remove(query, WarehouseEntity.class, MongoDBName.NAME_CODE); - } - - @Override - public long count(Query query, FilterWarehouseRequest filterWarehouseRequest) { - if (null == query) { - query = buildQuery(filterWarehouseRequest); - } - return mongoTemplate.count(query, WarehouseEntity.class, MongoDBName.NAME_CODE); - } - - @Override - public void insert(WarehouseEntity warehouseEntity) { - mongoTemplate.insert(warehouseEntity, MongoDBName.NAME_CODE); - } - - @Override - public void insert(List records) { - mongoTemplate.insert(records, MongoDBName.NAME_CODE); - } - - /** - * 根据查询库存详情参数,构造mongodb查询条件 - * - * @param filterWarehouseRequest - * @return - */ - private Query buildQuery(FilterWarehouseRequest filterWarehouseRequest) { - Query query = new Query(); - Field[] fields = ReflectUtil.getFields(FilterWarehouseRequest.class); - Arrays.stream(fields).forEach(field -> { - Object fieldValue = ReflectUtil.getFieldValue(filterWarehouseRequest, field); - if (ObjectUtil.isNotEmpty(fieldValue)) { - query.addCriteria(Criteria.where(field.getName()).is(fieldValue)); - } - }); - return query; - } - - /** - * 根据库存详情实体,构造mongodb查询条件 - * - * @param warehouseEntity - * @return - */ - private Query buildQuery(WarehouseEntity warehouseEntity) { - Query query = new Query(); - Field[] fields = ReflectUtil.getFields(WarehouseEntity.class); - Arrays.stream(fields).forEach(field -> { - Object fieldValue = ReflectUtil.getFieldValue(warehouseEntity, field); - if (ObjectUtil.isNotEmpty(fieldValue)) { - query.addCriteria(Criteria.where(field.getName()).is(fieldValue)); - } - }); - return query; - } - - /** - * 根据库存详情实体,构造mongodb更新条件 - * - * @param warehouseEntity - * @return - */ - private Update buildUpdate(WarehouseEntity warehouseEntity) { - Update update = new Update(); - Field[] fields = ReflectUtil.getFields(WarehouseEntity.class); - Arrays.stream(fields).forEach(field -> { - Object fieldValue = ReflectUtil.getFieldValue(warehouseEntity, field); - if (ObjectUtil.isNotEmpty(fieldValue)) { - update.set(field.getName(), fieldValue); - } - }); - return update; - } - - public List getCodesList() { - return mongoTemplate.findAll(WarehouseMdEntity.class, MongoDBName.NAME_CODE); - } - -} diff --git a/src/main/java/com/glxp/udi/admin/mongo/dao/CodesTempMdDao.java b/src/main/java/com/glxp/udi/admin/mongo/dao/CodesTempMdDao.java deleted file mode 100644 index b793dd3..0000000 --- a/src/main/java/com/glxp/udi/admin/mongo/dao/CodesTempMdDao.java +++ /dev/null @@ -1,149 +0,0 @@ -package com.glxp.udi.admin.mongo.dao; - -import cn.hutool.core.util.ObjectUtil; -import cn.hutool.core.util.ReflectUtil; -import com.glxp.udi.admin.entity.inout.WarehousetempEntity; -import com.glxp.udi.admin.entity.mongo.WarehousetempMdEntity; -import com.glxp.udi.admin.mongo.MongoDBName; -import com.glxp.udi.admin.mongo.dao.base.MongoBaseDao; -import com.glxp.udi.admin.mongo.utils.MongoPageHelper; -import com.glxp.udi.admin.mongo.utils.PageResult; -import com.glxp.udi.admin.req.inout.FilterWarehouseRequest; -import org.springframework.data.mongodb.core.MongoTemplate; -import org.springframework.data.mongodb.core.query.Criteria; -import org.springframework.data.mongodb.core.query.Query; -import org.springframework.data.mongodb.core.query.Update; -import org.springframework.stereotype.Component; - -import javax.annotation.Resource; -import java.lang.reflect.Field; -import java.util.Arrays; -import java.util.List; - -@Component -public class CodesTempMdDao implements MongoBaseDao { - - @Resource - private MongoTemplate mongoTemplate; - @Resource - private MongoPageHelper mongoPageHelper; - - public PageResult pageQuery(Query query, FilterWarehouseRequest filterWarehouseRequest, int page, int size) { - if (null == query && null != filterWarehouseRequest) { - query = buildQuery(filterWarehouseRequest); - } - return mongoPageHelper.pageQuery(query, WarehousetempEntity.class, size, page, MongoDBName.NAME_CODE_TEMP); - } - - @Override - public List findList(Query query, FilterWarehouseRequest filterWarehouseRequest) { - if (null == query && null != filterWarehouseRequest) { - query = buildQuery(filterWarehouseRequest); - } - return mongoTemplate.find(query, WarehousetempEntity.class, MongoDBName.NAME_CODE_TEMP); - } - - @Override - public WarehousetempEntity findOne(Query query, FilterWarehouseRequest filterWarehouseRequest) { - if (null == query && null != filterWarehouseRequest) { - query = buildQuery(filterWarehouseRequest); - } - return mongoTemplate.findOne(query, WarehousetempEntity.class, MongoDBName.NAME_CODE_TEMP); - } - - @Override - public void update(Query query, Update update, WarehousetempEntity WarehousetempEntity) { - if (null == query) { - query = buildQuery(WarehousetempEntity); - } - if (null == update) { - update = buildUpdate(WarehousetempEntity); - } - mongoTemplate.updateMulti(query, update, WarehousetempEntity.class, MongoDBName.NAME_CODE_TEMP); - } - - @Override - public void delete(Query query, FilterWarehouseRequest filterWarehouseRequest) { - if (null == query) { - query = buildQuery(filterWarehouseRequest); - } - mongoTemplate.remove(query, WarehousetempEntity.class, MongoDBName.NAME_CODE_TEMP); - } - - @Override - public long count(Query query, FilterWarehouseRequest filterWarehouseRequest) { - if (null == query) { - query = buildQuery(filterWarehouseRequest); - } - return mongoTemplate.count(query, WarehousetempEntity.class, MongoDBName.NAME_CODE_TEMP); - } - - @Override - public void insert(WarehousetempEntity WarehousetempEntity) { - mongoTemplate.insert(WarehousetempEntity, MongoDBName.NAME_CODE_TEMP); - } - - @Override - public void insert(List records) { - mongoTemplate.insert(records, MongoDBName.NAME_CODE_TEMP); - } - - /** - * 根据查询库存详情参数,构造mongodb查询条件 - * - * @param filterWarehouseRequest - * @return - */ - private Query buildQuery(FilterWarehouseRequest filterWarehouseRequest) { - Query query = new Query(); - Field[] fields = ReflectUtil.getFields(FilterWarehouseRequest.class); - Arrays.stream(fields).forEach(field -> { - Object fieldValue = ReflectUtil.getFieldValue(filterWarehouseRequest, field); - if (ObjectUtil.isNotEmpty(fieldValue)) { - query.addCriteria(Criteria.where(field.getName()).is(fieldValue)); - } - }); - return query; - } - - /** - * 根据库存详情实体,构造mongodb查询条件 - * - * @param warehousetempEntity - * @return - */ - private Query buildQuery(WarehousetempEntity warehousetempEntity) { - Query query = new Query(); - Field[] fields = ReflectUtil.getFields(WarehousetempEntity.class); - Arrays.stream(fields).forEach(field -> { - Object fieldValue = ReflectUtil.getFieldValue(warehousetempEntity, field); - if (ObjectUtil.isNotEmpty(fieldValue)) { - query.addCriteria(Criteria.where(field.getName()).is(fieldValue)); - } - }); - return query; - } - - /** - * 根据库存详情实体,构造mongodb更新条件 - * - * @param warehousetempEntity - * @return - */ - private Update buildUpdate(WarehousetempEntity warehousetempEntity) { - Update update = new Update(); - Field[] fields = ReflectUtil.getFields(WarehousetempEntity.class); - Arrays.stream(fields).forEach(field -> { - Object fieldValue = ReflectUtil.getFieldValue(warehousetempEntity, field); - if (ObjectUtil.isNotEmpty(fieldValue)) { - update.set(field.getName(), fieldValue); - } - }); - return update; - } - - public List getCodesTempList() { - return mongoTemplate.findAll(WarehousetempMdEntity.class, MongoDBName.NAME_CODE_TEMP); - } - -} diff --git a/src/main/java/com/glxp/udi/admin/mongo/dao/InvProductDetailMdDao.java b/src/main/java/com/glxp/udi/admin/mongo/dao/InvProductDetailMdDao.java deleted file mode 100644 index f5c73e2..0000000 --- a/src/main/java/com/glxp/udi/admin/mongo/dao/InvProductDetailMdDao.java +++ /dev/null @@ -1,162 +0,0 @@ -package com.glxp.udi.admin.mongo.dao; - -import cn.hutool.core.util.ObjectUtil; -import cn.hutool.core.util.ReflectUtil; -import com.glxp.udi.admin.entity.inout.InvProductDetailEntity; -import com.glxp.udi.admin.entity.mongo.InvProductDetailMdEntity; -import com.glxp.udi.admin.mongo.MongoDBName; -import com.glxp.udi.admin.mongo.dao.base.MongoBaseDao; -import com.glxp.udi.admin.mongo.utils.MongoPageHelper; -import com.glxp.udi.admin.mongo.utils.PageResult; -import com.glxp.udi.admin.req.inout.FilterInvProductDetailRequest; -import org.springframework.data.mongodb.core.MongoTemplate; -import org.springframework.data.mongodb.core.query.Criteria; -import org.springframework.data.mongodb.core.query.Query; -import org.springframework.data.mongodb.core.query.Update; -import org.springframework.stereotype.Component; - -import javax.annotation.Resource; -import java.lang.reflect.Field; -import java.util.Arrays; -import java.util.List; - -@Component -public class InvProductDetailMdDao implements MongoBaseDao { - - @Resource - private MongoTemplate mongoTemplate; - @Resource - private MongoPageHelper mongoPageHelper; - - @Override - public PageResult pageQuery(Query query, FilterInvProductDetailRequest filterInvProductDetailRequest, int page, int size) { - if (null == query && null != filterInvProductDetailRequest) { - query = buildQuery(filterInvProductDetailRequest); - } - return mongoPageHelper.pageQuery(query, InvProductDetailEntity.class, size, page, MongoDBName.NAME_INV_PRODUCT_DETAIL); - } - - @Override - public List findList(Query query, FilterInvProductDetailRequest filterInvProductDetailRequest) { - if (null == query && null != filterInvProductDetailRequest) { - query = buildQuery(filterInvProductDetailRequest); - } - return mongoTemplate.find(query, InvProductDetailEntity.class, MongoDBName.NAME_INV_PRODUCT_DETAIL); - } - - @Override - public InvProductDetailEntity findOne(Query query, FilterInvProductDetailRequest filterInvProductDetailRequest) { - if (null == query && null != filterInvProductDetailRequest) { - query = buildQuery(filterInvProductDetailRequest); - } - return mongoTemplate.findOne(query, InvProductDetailEntity.class, MongoDBName.NAME_INV_PRODUCT_DETAIL); - } - - @Override - public void update(Query query, Update update, InvProductDetailEntity invProductDetailEntity) { - if (null == query) { - query = buildQuery(invProductDetailEntity); - } - if (null == update) { - update = buildUpdate(invProductDetailEntity); - } - mongoTemplate.updateMulti(query, update, InvProductDetailEntity.class, MongoDBName.NAME_INV_PRODUCT_DETAIL); - } - - @Override - public void delete(Query query, FilterInvProductDetailRequest filterInvProductDetailRequest) { - if (null == query && null != filterInvProductDetailRequest) { - buildQuery(filterInvProductDetailRequest); - } - mongoTemplate.remove(query, InvProductDetailEntity.class, MongoDBName.NAME_INV_PRODUCT_DETAIL); - } - - @Override - public long count(Query query, FilterInvProductDetailRequest filterInvProductDetailRequest) { - if (null == query && null != filterInvProductDetailRequest) { - buildQuery(filterInvProductDetailRequest); - } - return mongoTemplate.count(query, InvProductDetailEntity.class, MongoDBName.NAME_INV_PRODUCT_DETAIL); - } - - @Override - public void insert(InvProductDetailEntity invProductDetailEntity) { - mongoTemplate.insert(invProductDetailEntity, MongoDBName.NAME_INV_PRODUCT_DETAIL); - } - - @Override - public void insert(List records) { - mongoTemplate.insert(records, MongoDBName.NAME_INV_PRODUCT_DETAIL); - } - - /** - * 根据查询库存详情参数,构造mongodb查询条件 - * - * @param filterInvProductDetailRequest - * @return - */ - private Query buildQuery(FilterInvProductDetailRequest filterInvProductDetailRequest) { - Query query = new Query(); - Field[] fields = ReflectUtil.getFields(FilterInvProductDetailRequest.class); - Arrays.stream(fields).forEach(field -> { - Object fieldValue = ReflectUtil.getFieldValue(filterInvProductDetailRequest, field); - if (ObjectUtil.isNotEmpty(fieldValue)) { - if ("invCodes".equals(field.getName())) { - query.addCriteria(Criteria.where("locStorageCode").in(fieldValue)); - } else { - query.addCriteria(Criteria.where(field.getName()).is(fieldValue)); - } - } - }); - return query; - } - - /** - * 根据库存详情实体,构造mongodb查询条件 - * - * @param invProductDetailEntity - * @return - */ - private Query buildQuery(InvProductDetailEntity invProductDetailEntity) { - Query query = new Query(); - Field[] fields = ReflectUtil.getFields(InvProductDetailEntity.class); - Arrays.stream(fields).forEach(field -> { - Object fieldValue = ReflectUtil.getFieldValue(invProductDetailEntity, field); - if (ObjectUtil.isNotEmpty(fieldValue)) { - if ("id".equals(field.getName())) { - query.addCriteria(Criteria.where("_id").is(fieldValue)); - } else { - query.addCriteria(Criteria.where(field.getName()).is(fieldValue)); - } - } - }); - return query; - } - - /** - * 根据库存详情实体,构造mongodb更新条件 - * - * @param invProductDetailEntity - * @return - */ - private Update buildUpdate(InvProductDetailEntity invProductDetailEntity) { - Update update = new Update(); - Field[] fields = ReflectUtil.getFields(InvProductDetailEntity.class); - Arrays.stream(fields).forEach(field -> { - Object fieldValue = ReflectUtil.getFieldValue(invProductDetailEntity, field); - if (ObjectUtil.isNotEmpty(fieldValue)) { - if (!"id".equals(field.getName())) { - update.set(field.getName(), fieldValue); - } - } - }); - return update; - } - - public List getInvDetailList(String invProductId) { - Query query = new Query(); - query.addCriteria(Criteria.where("invProductIdFk").is(invProductId)); - return mongoTemplate.find(query, InvProductDetailMdEntity.class, MongoDBName.NAME_INV_PRODUCT_DETAIL); - } - -} diff --git a/src/main/java/com/glxp/udi/admin/mongo/dao/InvProductMdDao.java b/src/main/java/com/glxp/udi/admin/mongo/dao/InvProductMdDao.java deleted file mode 100644 index e9546ac..0000000 --- a/src/main/java/com/glxp/udi/admin/mongo/dao/InvProductMdDao.java +++ /dev/null @@ -1,187 +0,0 @@ -package com.glxp.udi.admin.mongo.dao; - -import cn.hutool.core.util.ObjectUtil; -import cn.hutool.core.util.ReflectUtil; -import com.glxp.udi.admin.entity.inout.InvProductEntity; -import com.glxp.udi.admin.entity.mongo.InvProductMdEntity; -import com.glxp.udi.admin.mongo.MongoDBName; -import com.glxp.udi.admin.mongo.dao.base.MongoBaseDao; -import com.glxp.udi.admin.mongo.utils.MongoPageHelper; -import com.glxp.udi.admin.mongo.utils.PageResult; -import com.glxp.udi.admin.req.inventory.FilterInvProductRequest; -import org.springframework.data.mongodb.core.MongoTemplate; -import org.springframework.data.mongodb.core.query.Criteria; -import org.springframework.data.mongodb.core.query.Query; -import org.springframework.data.mongodb.core.query.Update; -import org.springframework.stereotype.Component; - -import javax.annotation.Resource; -import java.lang.reflect.Field; -import java.util.Arrays; -import java.util.List; -import java.util.regex.Pattern; - -@Component -public class InvProductMdDao implements MongoBaseDao { - - @Resource - private MongoTemplate mongoTemplate; - @Resource - private MongoPageHelper mongoPageHelper; - - @Override - public PageResult pageQuery(Query query, FilterInvProductRequest filterInvProductRequest, int page, int size) { - if (null == query && null != filterInvProductRequest) { - query = buildQuery(filterInvProductRequest); - } - return mongoPageHelper.pageQuery(query, InvProductEntity.class, size, page, MongoDBName.NAME_INV_PRODUCT); - } - - @Override - public List findList(Query query, FilterInvProductRequest filterInvProductRequest) { - if (null == query && null != filterInvProductRequest) { - query = buildQuery(filterInvProductRequest); - } - return mongoTemplate.find(query, InvProductEntity.class, MongoDBName.NAME_INV_PRODUCT); - } - - @Override - public InvProductEntity findOne(Query query, FilterInvProductRequest filterInvProductRequest) { - if (null == query && null != filterInvProductRequest) { - query = buildQuery(filterInvProductRequest); - } - return mongoTemplate.findOne(query, InvProductEntity.class, MongoDBName.NAME_INV_PRODUCT); - } - - @Override - public void update(Query query, Update update, InvProductEntity invProductEntity) { - if (null == query) { - query = buildQuery(invProductEntity); - } - if (null == update) { - update = buildUpdate(invProductEntity); - } - mongoTemplate.updateMulti(query, update, InvProductEntity.class, MongoDBName.NAME_INV_PRODUCT); - } - - @Override - public void delete(Query query, FilterInvProductRequest filterInvProductRequest) { - if (null == query && null != filterInvProductRequest) { - query = buildQuery(filterInvProductRequest); - } - mongoTemplate.remove(query, InvProductEntity.class, MongoDBName.NAME_INV_PRODUCT); - } - - @Override - public long count(Query query, FilterInvProductRequest filterInvProductRequest) { - if (null == query && null != filterInvProductRequest) { - query = buildQuery(filterInvProductRequest); - } - return mongoTemplate.count(query, InvProductEntity.class, MongoDBName.NAME_INV_PRODUCT); - } - - @Override - public void insert(InvProductEntity invProductEntity) { - mongoTemplate.insert(invProductEntity, MongoDBName.NAME_INV_PRODUCT); - } - - @Override - public void insert(List records) { - mongoTemplate.insert(records, MongoDBName.NAME_INV_PRODUCT); - } - - /** - * 根据库存查询参数,构造mongodb查询条件 - * - * @param filterInvProductRequest - * @return - */ - private Query buildQuery(FilterInvProductRequest filterInvProductRequest) { - Query query = new Query(); - Field[] fields = ReflectUtil.getFields(FilterInvProductRequest.class); - Arrays.stream(fields).forEach(field -> { - Object fieldValue = ReflectUtil.getFieldValue(filterInvProductRequest, field); - if (ObjectUtil.isNotEmpty(fieldValue)) { - switch (field.getName()) { - case "uuids": - query.addCriteria(Criteria.where("relIdFk").in(fieldValue)); - break; - case "invCodes": - query.addCriteria(Criteria.where("locStorageCode").in(fieldValue)); - break; - case "cpmctymc": { - Pattern pattern = Pattern.compile("^.*" + fieldValue + ".*$"); - query.addCriteria(Criteria.where("productsName").regex(pattern)); - break; - } - case "zczbhhzbapzbh": { - Pattern pattern = Pattern.compile("^.*" + fieldValue + ".*$"); - query.addCriteria(Criteria.where("zczbhhzbapzbh").regex(pattern)); - break; - } - case "manufactory": { - Pattern pattern = Pattern.compile("^.*" + fieldValue + ".*$"); - query.addCriteria(Criteria.where("manufactory").regex(pattern)); - break; - } - case "ggxh": { - Pattern pattern = Pattern.compile("^.*" + fieldValue + ".*$"); - query.addCriteria(Criteria.where("ggxh").regex(pattern)); - break; - } - default: - query.addCriteria(Criteria.where(field.getName()).is(fieldValue)); - break; - } - } - }); - return query; - } - - /** - * 根据库存实体,构造mongodb查询条件 - * - * @param invProductEntity - * @return - */ - private Query buildQuery(InvProductEntity invProductEntity) { - Query query = new Query(); - Field[] fields = ReflectUtil.getFields(InvProductEntity.class); - Arrays.stream(fields).forEach(field -> { - Object fieldValue = ReflectUtil.getFieldValue(invProductEntity, field); - if (ObjectUtil.isNotEmpty(fieldValue)) { - if ("id".equals(field.getName())) { - query.addCriteria(Criteria.where("_id").is(fieldValue)); - } else { - query.addCriteria(Criteria.where(field.getName()).is(fieldValue)); - } - } - }); - return query; - } - - /** - * 根据库存实体,构造mongodb更新条件 - * - * @param invProductEntity - * @return - */ - private Update buildUpdate(InvProductEntity invProductEntity) { - Update update = new Update(); - Field[] fields = ReflectUtil.getFields(InvProductEntity.class); - Arrays.stream(fields).forEach(field -> { - Object fieldValue = ReflectUtil.getFieldValue(invProductEntity, field); - if (ObjectUtil.isNotEmpty(fieldValue)) { - if (!"id".equals(field.getName())) { - update.set(field.getName(), fieldValue); - } - } - }); - return update; - } - - public List getInvList() { - return mongoTemplate.findAll(InvProductMdEntity.class, MongoDBName.NAME_INV_PRODUCT); - } - -} diff --git a/src/main/java/com/glxp/udi/admin/mongo/dao/OrderDetailMdDao.java b/src/main/java/com/glxp/udi/admin/mongo/dao/OrderDetailMdDao.java deleted file mode 100644 index 0d90822..0000000 --- a/src/main/java/com/glxp/udi/admin/mongo/dao/OrderDetailMdDao.java +++ /dev/null @@ -1,162 +0,0 @@ -package com.glxp.udi.admin.mongo.dao; - -import cn.hutool.core.util.ObjectUtil; -import cn.hutool.core.util.ReflectUtil; -import com.glxp.udi.admin.entity.inout.OrderDetailEntity; -import com.glxp.udi.admin.entity.mongo.ErpOrderEntity; -import com.glxp.udi.admin.mongo.MongoDBName; -import com.glxp.udi.admin.mongo.dao.base.MongoBaseDao; -import com.glxp.udi.admin.mongo.utils.MongoPageHelper; -import com.glxp.udi.admin.mongo.utils.PageResult; -import com.glxp.udi.admin.req.inout.FilterOrderDetailRequest; -import org.springframework.data.mongodb.core.MongoTemplate; -import org.springframework.data.mongodb.core.query.Criteria; -import org.springframework.data.mongodb.core.query.Query; -import org.springframework.data.mongodb.core.query.Update; -import org.springframework.stereotype.Component; - -import javax.annotation.Resource; -import java.lang.reflect.Field; -import java.util.Arrays; -import java.util.List; - -@Component -public class OrderDetailMdDao implements MongoBaseDao { - - @Resource - private MongoTemplate mongoTemplate; - @Resource - private MongoPageHelper mongoPageHelper; - - - @Override - public PageResult pageQuery(Query query, FilterOrderDetailRequest filterOrderDetailRequest, int page, int size) { - if (null == query && null != filterOrderDetailRequest) { - query = buildQuery(filterOrderDetailRequest); - } - return mongoPageHelper.pageQuery(query, OrderDetailEntity.class, size, page, MongoDBName.NAME_ORDER_DETAIL); - } - - @Override - public List findList(Query query, FilterOrderDetailRequest filterOrderDetailRequest) { - if (null == query && null != filterOrderDetailRequest) { - query = buildQuery(filterOrderDetailRequest); - } - return mongoTemplate.find(query, OrderDetailEntity.class, MongoDBName.NAME_ORDER_DETAIL); - } - - @Override - public OrderDetailEntity findOne(Query query, FilterOrderDetailRequest filterOrderDetailRequest) { - if (null == query && null != filterOrderDetailRequest) { - query = buildQuery(filterOrderDetailRequest); - } - return mongoTemplate.findOne(query, OrderDetailEntity.class, MongoDBName.NAME_ORDER_DETAIL); - } - - @Override - public void update(Query query, Update update, OrderDetailEntity orderDetailEntity) { - if (null == query) { - query = buildQuery(orderDetailEntity); - } - if (null == update) { - update = buildUpdate(orderDetailEntity); - } - mongoTemplate.updateMulti(query, update, OrderDetailEntity.class, MongoDBName.NAME_ORDER_DETAIL); - } - - @Override - public void delete(Query query, FilterOrderDetailRequest filterOrderDetailRequest) { - if (null == query) { - query = buildQuery(filterOrderDetailRequest); - } - mongoTemplate.remove(query, OrderDetailEntity.class, MongoDBName.NAME_ORDER_DETAIL); - } - - @Override - public long count(Query query, FilterOrderDetailRequest filterOrderDetailRequest) { - if (null == query) { - query = buildQuery(filterOrderDetailRequest); - } - return mongoTemplate.count(query, OrderDetailEntity.class, MongoDBName.NAME_ORDER_DETAIL); - } - - @Override - public void insert(OrderDetailEntity orderDetailEntity) { - mongoTemplate.insert(orderDetailEntity, MongoDBName.NAME_ORDER_DETAIL); - } - - @Override - public void insert(List records) { - mongoTemplate.insert(records, MongoDBName.NAME_ORDER_DETAIL); - } - - - /** - * 根据单据详情查询参数,构造mongodb查询条件 - * - * @param filterOrderDetailRequest - * @return - */ - private Query buildQuery(FilterOrderDetailRequest filterOrderDetailRequest) { - Query query = new Query(); - Field[] fields = ReflectUtil.getFields(FilterOrderDetailRequest.class); - Arrays.stream(fields).forEach(field -> { - Object fieldValue = ReflectUtil.getFieldValue(filterOrderDetailRequest, field); - if (ObjectUtil.isNotEmpty(fieldValue)) { - if ("orderId".equals(field.getName())) { - query.addCriteria(Criteria.where("orderIdFk").is(fieldValue)); - } else { - query.addCriteria(Criteria.where(field.getName()).is(fieldValue)); - } - } - }); - return query; - } - - /** - * 根据单据详情实体,构造mongodb查询条件 - * - * @param orderDetailEntity - * @return - */ - private Query buildQuery(OrderDetailEntity orderDetailEntity) { - Query query = new Query(); - Field[] fields = ReflectUtil.getFields(OrderDetailEntity.class); - Arrays.stream(fields).forEach(field -> { - Object fieldValue = ReflectUtil.getFieldValue(orderDetailEntity, field); - if (ObjectUtil.isNotEmpty(fieldValue)) { - if ("orderId".equals(field.getName())) { - query.addCriteria(Criteria.where("orderIdFk").is(fieldValue)); - } else { - query.addCriteria(Criteria.where(field.getName()).is(fieldValue)); - } - } - }); - return query; - } - - /** - * 根据单据详情实体,构造更新条件 - * - * @param orderDetailEntity - * @return - */ - private Update buildUpdate(OrderDetailEntity orderDetailEntity) { - Update update = new Update(); - Field[] fields = ReflectUtil.getFields(OrderDetailEntity.class); - Arrays.stream(fields).forEach(field -> { - Object fieldValue = ReflectUtil.getFieldValue(orderDetailEntity, field); - if (ObjectUtil.isNotEmpty(fieldValue)) { - if (!"orderId".equals(field.getName()) && !"orderIdFk".equals(field.getName())) { - update.set(field.getName(), fieldValue); - } - } - }); - return update; - } - - public List getOrderDetailList() { - return mongoTemplate.findAll(ErpOrderEntity.class, MongoDBName.NAME_ORDER_DETAIL); - } - -} diff --git a/src/main/java/com/glxp/udi/admin/mongo/dao/OrderMdDao.java b/src/main/java/com/glxp/udi/admin/mongo/dao/OrderMdDao.java deleted file mode 100644 index 1617d12..0000000 --- a/src/main/java/com/glxp/udi/admin/mongo/dao/OrderMdDao.java +++ /dev/null @@ -1,186 +0,0 @@ -package com.glxp.udi.admin.mongo.dao; - -import cn.hutool.core.util.ObjectUtil; -import cn.hutool.core.util.ReflectUtil; -import cn.hutool.core.util.StrUtil; -import com.glxp.udi.admin.entity.mongo.OrderMdEntity; -import com.glxp.udi.admin.mongo.MongoDBName; -import com.glxp.udi.admin.mongo.dao.base.MongoBaseDao; -import com.glxp.udi.admin.mongo.utils.MongoPageHelper; -import com.glxp.udi.admin.mongo.utils.PageResult; -import com.glxp.udi.admin.req.inout.OrderFilterRequest; -import org.springframework.data.mongodb.core.MongoTemplate; -import org.springframework.data.mongodb.core.query.Criteria; -import org.springframework.data.mongodb.core.query.Query; -import org.springframework.data.mongodb.core.query.Update; -import org.springframework.stereotype.Component; - -import javax.annotation.Resource; -import java.lang.reflect.Field; -import java.util.List; - -/** - * 订单数据操作类 - */ -@Component -public class OrderMdDao implements MongoBaseDao { - - @Resource - private MongoTemplate mongoTemplate; - @Resource - private MongoPageHelper mongoPageHelper; - - - @Override - public PageResult pageQuery(Query query, OrderFilterRequest orderFilterRequest, int page, int size) { - if (null == query && orderFilterRequest != null) { - query = buildQuery(orderFilterRequest); - } - return mongoPageHelper.pageQuery(query, OrderMdEntity.class, size, page, MongoDBName.NAME_ORDER); - } - - @Override - public List findList(Query query, OrderFilterRequest orderFilterRequest) { - if (null == query && null != orderFilterRequest) { - query = buildQuery(orderFilterRequest); - } - return mongoTemplate.find(query, OrderMdEntity.class, MongoDBName.NAME_ORDER); - } - - @Override - public OrderMdEntity findOne(Query query, OrderFilterRequest orderFilterRequest) { - if (query == null && null != orderFilterRequest) { - query = buildQuery(orderFilterRequest); - } - return mongoTemplate.findOne(query, OrderMdEntity.class, MongoDBName.NAME_ORDER); - } - - @Override - public void update(Query query, Update update, OrderMdEntity orderMdEntity) { - if (null == query) { - query = buildQuery(orderMdEntity); - } - if (null == update) { - update = buildUpdate(orderMdEntity); - } - mongoTemplate.updateMulti(query, update, OrderMdEntity.class, MongoDBName.NAME_ORDER); - } - - @Override - public void delete(Query query, OrderFilterRequest orderFilterRequest) { - if (null == query && null != orderFilterRequest) { - query = buildQuery(orderFilterRequest); - } - mongoTemplate.remove(query, OrderMdEntity.class, MongoDBName.NAME_ORDER); - } - - @Override - public long count(Query query, OrderFilterRequest orderFilterRequest) { - if (null == query && null != orderFilterRequest) { - query = buildQuery(orderFilterRequest); - } - return mongoTemplate.count(query, OrderMdEntity.class, MongoDBName.NAME_ORDER); - } - - @Override - public void insert(OrderMdEntity orderMdEntity) { - mongoTemplate.insert(orderMdEntity, MongoDBName.NAME_ORDER); - } - - @Override - public void insert(List records) { - mongoTemplate.insert(records, MongoDBName.NAME_ORDER); - } - - /** - * 根据查询参数实体构造mongodb查询条件 - * - * @param orderFilterRequest - * @return - */ - private Query buildQuery(OrderFilterRequest orderFilterRequest) { - Query query = new Query(); - Field[] fields = ReflectUtil.getFields(OrderFilterRequest.class); - for (Field field : fields) { - if (field.getName() != "page" && field.getName() != "limit") { - Object fieldValue = ReflectUtil.getFieldValue(orderFilterRequest, field); - if (ObjectUtil.isNotEmpty(fieldValue) && StrUtil.isNotBlank(String.valueOf(fieldValue))) { - if ("id".equals(field.getName())) { - query.addCriteria(Criteria.where("orderId").is(fieldValue)); - } else if ("invCodes".equals(field.getName())) { - List invCodes = (List) fieldValue; - query.addCriteria(Criteria.where("locStorageCode").in(invCodes.toArray())); - } else if ("actDate".equals(field.getName())) { - query.addCriteria(Criteria.where("actDate").gte(fieldValue + " 00:00:00").andOperator(Criteria.where("actDate").lte(fieldValue + " 23:59:59"))); - } else if ("isError".equals(field.getName())) { - query.addCriteria(Criteria.where("status").ne(fieldValue)); - } else if ("receiveStatus".equals(field.getName())) { - break; - } else if ("checkReceiveStatus".equals(field.getName())) { - if ("true".equals(String.valueOf(fieldValue))) { - Object receiveStatus = ReflectUtil.getFieldValue(orderFilterRequest, "receiveStatus"); - if (null != receiveStatus) { - query.addCriteria(Criteria.where("receiveStatus").is(fieldValue)); - } else { - query.addCriteria(Criteria.where("receiveStatus").ne(0)); - } - } - } else { - query.addCriteria(Criteria.where(field.getName()).is(fieldValue)); - } - } else { - if ("action".equals(field.getName())) { - query.addCriteria(Criteria.where("action").ne("StockCheck")); - } - } - } - } - return query; - } - - /** - * 根据单据数据实体,构造mongodb查询条件 - * - * @param orderMdEntity - * @return - */ - private Query buildQuery(OrderMdEntity orderMdEntity) { - Query query = new Query(); - Field[] fields = ReflectUtil.getFields(OrderMdEntity.class); - for (Field field : fields) { - Object fieldValue = ReflectUtil.getFieldValue(orderMdEntity, field); - if (ObjectUtil.isNotEmpty(fieldValue) && StrUtil.isNotBlank(String.valueOf(fieldValue))) { - if ("id".equals(field.getName())) { - query.addCriteria(Criteria.where("_id").is(fieldValue)); - } - } - } - return query; - } - - /** - * 根据单据数据实体,构造mongodb查询条件 - * - * @param orderMdEntity - * @return - */ - private Update buildUpdate(OrderMdEntity orderMdEntity) { - Update update = new Update(); - Field[] fields = ReflectUtil.getFields(OrderMdEntity.class); - for (Field field : fields) { - Object fieldValue = ReflectUtil.getFieldValue(orderMdEntity, field); - if (ObjectUtil.isNotEmpty(fieldValue) && StrUtil.isNotBlank(String.valueOf(fieldValue))) { - if (!field.getName().equals("id") && !field.getName().equals("orderId")) { - update.set(field.getName(), fieldValue); - } - } - } - return update; - } - - public List getOrderList() { - return mongoTemplate.findAll(OrderMdEntity.class, MongoDBName.NAME_ORDER); - } - - -} diff --git a/src/main/java/com/glxp/udi/admin/mongo/dao/base/MongoBaseDao.java b/src/main/java/com/glxp/udi/admin/mongo/dao/base/MongoBaseDao.java deleted file mode 100644 index 0056cac..0000000 --- a/src/main/java/com/glxp/udi/admin/mongo/dao/base/MongoBaseDao.java +++ /dev/null @@ -1,84 +0,0 @@ -package com.glxp.udi.admin.mongo.dao.base; - -import com.glxp.udi.admin.mongo.utils.PageResult; -import org.springframework.data.mongodb.core.query.Query; -import org.springframework.data.mongodb.core.query.Update; - -import java.util.List; - -/** - * mongo数据操作接口定义 - */ -public interface MongoBaseDao { - - /** - * 分页查询 - * - * @param query 查询条件 - * @param q 查询参数实体,用于构造查询条件 - * @param page 页码 - * @param size 条数 - * @return - */ - PageResult pageQuery(Query query, Q q, int page, int size); - - /** - * 查询集合 - * - * @param query 查询条件 - * @param q 查询参数实体,用于构造查询条件 - * @return - */ - List findList(Query query, Q q); - - /** - * 查询单条 - * - * @param query 查询条件 - * @param q 查询参数实体,用于构造查询条件 - * @return - */ - T findOne(Query query, Q q); - - /** - * 更新操作 - * - * @param query 更新条件 - * @param update 更新字段 - * @param t 实体 - */ - void update(Query query, Update update, T t); - - /** - * 删除操作 - * - * @param query 删除条件 - * @param q 参数参数实体,用于构造查询条件 - */ - void delete(Query query, Q q); - - /** - * 统计数量 - * - * @param query 统计条件 - * @param q 查询参数实体,用于构造查询条件 - * @return - */ - long count(Query query, Q q); - - /** - * 插入单条 - * - * @param t 插入单条数据 - */ - void insert(T t); - - /** - * 插入集合数据 - * - * @param records - */ - void insert(List records); - - -} diff --git a/src/main/java/com/glxp/udi/admin/mongo/utils/MongoPageHelper.java b/src/main/java/com/glxp/udi/admin/mongo/utils/MongoPageHelper.java deleted file mode 100644 index 704edb9..0000000 --- a/src/main/java/com/glxp/udi/admin/mongo/utils/MongoPageHelper.java +++ /dev/null @@ -1,109 +0,0 @@ -package com.glxp.udi.admin.mongo.utils; - -import org.apache.commons.lang3.StringUtils; -import org.bson.types.ObjectId; -import org.springframework.data.domain.Sort; -import org.springframework.data.domain.Sort.Direction; -import org.springframework.data.domain.Sort.Order; -import org.springframework.data.mongodb.core.MongoTemplate; -import org.springframework.data.mongodb.core.query.Criteria; -import org.springframework.data.mongodb.core.query.Query; -import org.springframework.stereotype.Component; - -import java.util.Collections; -import java.util.List; -import java.util.function.Function; -import java.util.stream.Collectors; - -/** - * MongoDB分页插件,需要结合Spring-data使用. - */ -@Component -public class MongoPageHelper { - - private static final int FIRST_PAGE_NUM = 1; - private static final String ID = "_id"; - private final MongoTemplate mongoTemplate; - - public MongoPageHelper(MongoTemplate mongoTemplate) { - this.mongoTemplate = mongoTemplate; - } - - - /** - * 分页查询,直接返回集合类型的结果. - * - * @see MongoPageHelper#pageQuery(Query, - * Class, Integer, Integer, Function, - * String) - */ - public PageResult pageQuery(Query query, Class entityClass, Integer pageSize, - Integer pageNum, String tableName) { - return pageQuery(query, entityClass, pageSize, pageNum, Function.identity(), null, tableName); - } - - /** - * 分页查询,不考虑条件分页,直接使用skip-limit来分页. - * - * @see MongoPageHelper#pageQuery(Query, - * Class, Integer, Integer, Function, - * String) - */ - public PageResult pageQuery(Query query, Class entityClass, - Integer pageSize, Integer pageNum, Function mapper, String tableName) { - return pageQuery(query, entityClass, pageSize, pageNum, mapper, null); - } - - public PageResult pageQuery(Query query, Class entityClass, Integer pageSize, - Integer pageNum, String lastId, String tableName) { - return pageQuery(query, entityClass, pageSize, pageNum, Function.identity(), null, tableName); - } - - /** - * 分页查询. - * - * @param query Mongo Query对象,构造你自己的查询条件. - * @param entityClass Mongo collection定义的entity class,用来确定查询哪个集合. - * @param mapper 映射器,你从db查出来的list的元素类型是entityClass, 如果你想要转换成另一个对象,比如去掉敏感字段等,可以使用mapper来决定如何转换. - * @param pageSize 分页的大小. - * @param pageNum 当前页. - * @param lastId 条件分页参数, 区别于skip-limit,采用find(_id>lastId).limit分页. - * 如果不跳页,像朋友圈,微博这样下拉刷新的分页需求,需要传递上一页的最后一条记录的ObjectId。 如果是null,则返回pageNum那一页. - * @param collection定义的class类型. - * @param 最终返回时,展现给页面时的一条记录的类型。 - * @return PageResult,一个封装page信息的对象. - */ - public PageResult pageQuery(Query query, Class entityClass, - Integer pageSize, Integer pageNum, Function mapper, String lastId, String tableName) { - //分页逻辑 - long total = mongoTemplate.count(query, entityClass, tableName); - final Integer pages = (int) Math.ceil(total / (double) pageSize); - if (pageNum <= 0 || pageNum > pages) { - pageNum = FIRST_PAGE_NUM; - } - final Criteria criteria = new Criteria(); - if (StringUtils.isNotBlank(lastId)) { - if (pageNum != FIRST_PAGE_NUM) { - criteria.and(ID).gt(new ObjectId(lastId)); - } - query.limit(pageSize); - } else { - int skip = pageSize * (pageNum - 1); - query.skip(skip).limit(pageSize); - } - - final List entityList = mongoTemplate - .find(query.addCriteria(criteria) - .with(Sort.by(Collections.singletonList(new Order(Direction.DESC, ID)))), - entityClass, tableName); - - final PageResult pageResult = new PageResult<>(); - pageResult.setTotal(total); - pageResult.setPages(pages); - pageResult.setPageSize(pageSize); - pageResult.setPageNum(pageNum); - pageResult.setList(entityList.stream().map(mapper).collect(Collectors.toList())); - return pageResult; - } - -} \ No newline at end of file diff --git a/src/main/java/com/glxp/udi/admin/mongo/utils/PageResult.java b/src/main/java/com/glxp/udi/admin/mongo/utils/PageResult.java deleted file mode 100644 index 693646c..0000000 --- a/src/main/java/com/glxp/udi/admin/mongo/utils/PageResult.java +++ /dev/null @@ -1,41 +0,0 @@ -package com.glxp.udi.admin.mongo.utils; - -import lombok.Data; - -import java.util.List; - -/** - * 分页结果. - * - * @author Ryan - */ -@Data -public class PageResult { - - /** - * 页码,从1开始 - */ - private Integer pageNum; - - /** - * 页面大小 - */ - private Integer pageSize; - - - /** - * 总数 - */ - private Long total; - - /** - * 总页数 - */ - private Integer pages; - - /** - * 数据 - */ - private List list; - -} diff --git a/src/main/resources/application-pro.yml b/src/main/resources/application-pro.yml index 4ce06c6..c0d2fb3 100644 --- a/src/main/resources/application-pro.yml +++ b/src/main/resources/application-pro.yml @@ -4,9 +4,6 @@ spring: url: jdbc:mysql://127.0.0.1:3306/udims?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true username: root password: mysql@2020 - data: - mongodb: - uri: mongodb://127.0.0.1:27017/udiwms redis: database: 4 diff --git a/src/main/resources/application-test.yml b/src/main/resources/application-test.yml index 0cb286c..f0d00c9 100644 --- a/src/main/resources/application-test.yml +++ b/src/main/resources/application-test.yml @@ -8,10 +8,6 @@ spring: username: root password: root - data: - mongodb: - uri: mongodb://192.168.0.66:27017/udiwms - redis: database: 3 host: 192.168.0.66