he2802 1 年之前
父節點
當前提交
7719accbc3
共有 18 個文件被更改,包括 206 次插入165 次删除
  1. 3 4
      zhongzheng-admin-saas/src/main/java/com/zhongzheng/AdminSaasApplication.java
  2. 7 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/goods/service/impl/GoodsServiceImpl.java
  3. 10 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/order/bo/CompanyOrderInvoiceBo.java
  4. 1 1
      zhongzheng-system/src/main/java/com/zhongzheng/modules/order/bo/OrderBusinessConfigGoodsQueryBo.java
  5. 7 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/order/bo/OrderHandleQueryBo.java
  6. 2 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/order/bo/OrderInvoiceQueryBo.java
  7. 1 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/order/domain/OrderHandle.java
  8. 40 27
      zhongzheng-system/src/main/java/com/zhongzheng/modules/order/service/impl/OrderHandleServiceImpl.java
  9. 6 1
      zhongzheng-system/src/main/java/com/zhongzheng/modules/order/service/impl/OrderInvoiceServiceImpl.java
  10. 10 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/order/vo/CompanyOrderInvoiceVo.java
  11. 7 1
      zhongzheng-system/src/main/java/com/zhongzheng/modules/order/vo/OrderHandleVo.java
  12. 5 1
      zhongzheng-system/src/main/java/com/zhongzheng/modules/top/goods/service/impl/TopOldOrderServiceImpl.java
  13. 1 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/user/service/IUserHandleService.java
  14. 3 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/user/service/impl/UserHandleServiceImpl.java
  15. 11 2
      zhongzheng-system/src/main/resources/mapper/modules/order/OrderHandleMapper.xml
  16. 83 70
      zhongzheng-system/src/main/resources/mapper/modules/order/OrderInvoiceMapper.xml
  17. 5 28
      zhongzheng-system/src/main/resources/mapper/modules/top/TopOldOrderMapper.xml
  18. 4 30
      zhongzheng-system/src/main/resources/mapper/modules/user/UserMapper.xml

+ 3 - 4
zhongzheng-admin-saas/src/main/java/com/zhongzheng/AdminSaasApplication.java

@@ -7,15 +7,14 @@ import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
 import org.springframework.scheduling.annotation.EnableScheduling;
 
 
-@SpringBootApplication(exclude = { DataSourceAutoConfiguration.class })
+@SpringBootApplication(exclude = {DataSourceAutoConfiguration.class})
 @EnableScheduling
 public class AdminSaasApplication {
 
-    public static void main(String[] args)
-    {
+    public static void main(String[] args) {
         System.setProperty("spring.devtools.restart.enabled", "false");
         SpringApplication.run(AdminSaasApplication.class, args);
-        System.out.println("(♥◠‿◠)ノ゙  超级Admin启动成功   ლ(´ڡ`ლ)゙"+"超级Admin");
+        System.out.println("(♥◠‿◠)ノ゙  超级Admin启动成功   ლ(´ڡ`ლ)゙" + "超级Admin");
     }
 
 }

+ 7 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/goods/service/impl/GoodsServiceImpl.java

@@ -1738,6 +1738,13 @@ public class GoodsServiceImpl extends ServiceImpl<GoodsMapper, Goods> implements
                     goods.setCertificateTpId(getNewCertificateTpId(goods.getCertificateTpId(), newTenantId, recordList));
                 }
 
+                //商品关联题库
+                if (StringUtils.isNotBlank(goods.getQuestionRelIds())){
+                    String collect = Arrays.stream(goods.getQuestionRelIds().split(","))
+                            .map(x -> getNewId(Long.valueOf(x), GoodsCopyEnum.GOODS.getType()).toString()).collect(Collectors.joining(","));
+                    goods.setQuestionRelIds(collect);
+                }
+
                 //规格模板
                 if (ObjectUtils.isNotNull(goods.getSpecTemplateId())) {
                     Long oldSpecTemplateId = goods.getSpecTemplateId();

+ 10 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/order/bo/CompanyOrderInvoiceBo.java

@@ -46,4 +46,14 @@ public class CompanyOrderInvoiceBo implements Serializable {
     @ApiModelProperty("关键字")
     private String keyword;
 
+    /** 系统订单操作人 */
+    @ApiModelProperty("系统订单操作人")
+    private String createUsername;
+
+    @ApiModelProperty("经办身份证")
+    private String idCard;
+    /** 经办手机号 */
+    @ApiModelProperty("经办手机号")
+    private String telphone;
+
 }

+ 1 - 1
zhongzheng-system/src/main/java/com/zhongzheng/modules/order/bo/OrderBusinessConfigGoodsQueryBo.java

@@ -69,7 +69,7 @@ public class OrderBusinessConfigGoodsQueryBo extends BaseEntity {
 	@ApiModelProperty("业务名称")
 	private String businessName;
 	@ApiModelProperty("科目名称")
-	private Long subjectName;
+	private String subjectName;
 	@ApiModelProperty("年份")
 	private String year;
 }

+ 7 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/order/bo/OrderHandleQueryBo.java

@@ -1,5 +1,6 @@
 package com.zhongzheng.modules.order.bo;
 
+import com.baomidou.mybatisplus.annotation.TableField;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
@@ -83,4 +84,10 @@ public class OrderHandleQueryBo extends BaseEntity {
 
 	@ApiModelProperty("超时关闭时间")
 	private Long overTime;
+	/** 经办身份证 */
+	@ApiModelProperty("经办身份证")
+	private String idCard;
+	/** 经办手机号 */
+	@ApiModelProperty("经办手机号")
+	private String telphone;
 }

+ 2 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/order/bo/OrderInvoiceQueryBo.java

@@ -118,4 +118,6 @@ public class OrderInvoiceQueryBo extends BaseEntity {
 	private Long applyStartTime;
 	@ApiModelProperty("搜索kEY")
 	private String searchKey;
+	@ApiModelProperty("系统订单操作人")
+	private String createUsername;
 }

+ 1 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/order/domain/OrderHandle.java

@@ -1,6 +1,7 @@
 package com.zhongzheng.modules.order.domain;
 
 import com.baomidou.mybatisplus.annotation.*;
+import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 import lombok.NoArgsConstructor;
 import lombok.experimental.Accessors;

+ 40 - 27
zhongzheng-system/src/main/java/com/zhongzheng/modules/order/service/impl/OrderHandleServiceImpl.java

@@ -11,6 +11,7 @@ import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
 import com.baomidou.mybatisplus.core.toolkit.StringUtils;
 import com.zhongzheng.common.core.redis.RedisCache;
 import com.zhongzheng.common.exception.CustomException;
+import com.zhongzheng.common.type.EncryptHandler;
 import com.zhongzheng.common.utils.DateUtils;
 import com.zhongzheng.common.utils.ServletUtils;
 import com.zhongzheng.modules.course.domain.CourseBusiness;
@@ -28,11 +29,15 @@ import com.zhongzheng.modules.system.domain.SysTenant;
 import com.zhongzheng.modules.system.service.ISysTenantService;
 import com.zhongzheng.modules.system.vo.SysTenantHandleAccountVo;
 import com.zhongzheng.modules.user.bo.SubjectStudyRecordQueryBo;
+import com.zhongzheng.modules.user.domain.User;
+import com.zhongzheng.modules.user.service.IUserHandleService;
 import com.zhongzheng.modules.user.service.IUserService;
 import com.zhongzheng.modules.user.service.IUserStudyRecordService;
 import com.zhongzheng.modules.user.vo.SubjectStudyRecordVo;
+import com.zhongzheng.modules.user.vo.UserHandleVo;
 import com.zhongzheng.modules.user.vo.UserVo;
 import com.zhongzheng.modules.wx.service.IWxPayService;
+import org.hibernate.validator.internal.util.StringHelper;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -95,7 +100,12 @@ public class OrderHandleServiceImpl extends ServiceImpl<OrderHandleMapper, Order
     @Override
     public OrderHandleVo queryById(Long id) {
         OrderHandle db = this.baseMapper.selectById(id);
-        return BeanUtil.toBean(db, OrderHandleVo.class);
+        OrderHandleVo orderHandleVo = BeanUtil.toBean(db, OrderHandleVo.class);
+        User byIdNoTenant = iUserService.getByIdNoTenant(db.getCreateUserId());
+        orderHandleVo.setCreateUsername(byIdNoTenant.getRealname());
+        orderHandleVo.setIdCard(byIdNoTenant.getIdCard());
+        orderHandleVo.setTelphone(byIdNoTenant.getTelphone());
+        return orderHandleVo;
     }
 
     @Override
@@ -116,6 +126,7 @@ public class OrderHandleServiceImpl extends ServiceImpl<OrderHandleMapper, Order
         lqw.eq(bo.getInputFrom() != null, OrderHandle::getInputFrom, bo.getInputFrom());
         lqw.eq(bo.getPayStatus() != null, OrderHandle::getPayStatus, bo.getPayStatus());
         lqw.eq(bo.getGoodsType() != null, OrderHandle::getGoodsType, bo.getGoodsType());
+        lqw.eq(bo.getCreateUsername() != null, OrderHandle::getCreateUsername, bo.getCreateUsername());
         return entity2Vo(this.list(lqw));
     }
 
@@ -126,6 +137,8 @@ public class OrderHandleServiceImpl extends ServiceImpl<OrderHandleMapper, Order
             return new ArrayList<>();
         }
         orderHandleVos.forEach(item -> {
+            item.setIdCard(EncryptHandler.decrypt(item.getIdCard()));
+            item.setTelphone(EncryptHandler.decrypt(item.getTelphone()));
             //实际价格
             item.setRealPrice(item.getPayPrice().subtract(item.getGoodsRefund()));
             //发票
@@ -146,7 +159,7 @@ public class OrderHandleServiceImpl extends ServiceImpl<OrderHandleMapper, Order
                         item.setInvoiceStatus(invoice.getPeriodStatus());
                     } else if (invoice.getPeriodStatus() == 2) {
                         item.setInvoiceStatus(3);
-                    }else {
+                    } else {
                         item.setInvoiceStatus(invoice.getInvoiceStatus());
                     }
                     item.setHandleRemark(invoice.getHandleRemark());
@@ -269,32 +282,32 @@ public class OrderHandleServiceImpl extends ServiceImpl<OrderHandleMapper, Order
     @Override
     @Transactional(rollbackFor = Exception.class)
     public String createOrder(OrderHandleAddBo bo) {
-        String key = "SUBMIT_HANDLE:"+bo.getCreateUserId()+"-"+bo.getUserGoodsList().size();
+        String key = "SUBMIT_HANDLE:" + bo.getCreateUserId() + "-" + bo.getUserGoodsList().size();
         Long keyStatus = redisCache.getCacheObject(key);
-        if(Validator.isNotEmpty(keyStatus)&&keyStatus==100L){
-            throw new CustomException("禁止频繁提交",667);
+        if (Validator.isNotEmpty(keyStatus) && keyStatus == 100L) {
+            throw new CustomException("禁止频繁提交", 667);
         }
-        redisCache.setCacheObject(key, 100L,60, TimeUnit.SECONDS);
+        redisCache.setCacheObject(key, 100L, 60, TimeUnit.SECONDS);
 
         String handleOrderSn = insertByAddBo(bo);
         String importNo = ServletUtils.getEncoded("IMPORT");
-        Map<String,String> telMap = new HashMap<>();
-        Map<String,String> idMap = new HashMap<>();
+        Map<String, String> telMap = new HashMap<>();
+        Map<String, String> idMap = new HashMap<>();
         for (OrderHandleItemAddBo itemAddBo : bo.getUserGoodsList()) {
-            if(Validator.isNotEmpty(itemAddBo.getUser().getTelphone())){
-                if(!telMap.containsKey(itemAddBo.getUser().getTelphone())){
-                    telMap.put(itemAddBo.getUser().getTelphone(),itemAddBo.getUser().getIdCard());
-                }else{
+            if (Validator.isNotEmpty(itemAddBo.getUser().getTelphone())) {
+                if (!telMap.containsKey(itemAddBo.getUser().getTelphone())) {
+                    telMap.put(itemAddBo.getUser().getTelphone(), itemAddBo.getUser().getIdCard());
+                } else {
                     redisCache.deleteObject(key);
-                    throw new CustomException("本次名单存在手机号码"+itemAddBo.getUser().getTelphone()+"重复用户");
+                    throw new CustomException("本次名单存在手机号码" + itemAddBo.getUser().getTelphone() + "重复用户");
                 }
             }
-            if(Validator.isNotEmpty(itemAddBo.getUser().getIdCard())){
-                if(!idMap.containsKey(itemAddBo.getUser().getIdCard())){
-                    idMap.put(itemAddBo.getUser().getIdCard(),itemAddBo.getUser().getTelphone());
-                }else{
+            if (Validator.isNotEmpty(itemAddBo.getUser().getIdCard())) {
+                if (!idMap.containsKey(itemAddBo.getUser().getIdCard())) {
+                    idMap.put(itemAddBo.getUser().getIdCard(), itemAddBo.getUser().getTelphone());
+                } else {
                     redisCache.deleteObject(key);
-                    throw new CustomException("本次名单存在身份证号码"+itemAddBo.getUser().getIdCard ()+"重复用户");
+                    throw new CustomException("本次名单存在身份证号码" + itemAddBo.getUser().getIdCard() + "重复用户");
                 }
             }
         }
@@ -416,7 +429,7 @@ public class OrderHandleServiceImpl extends ServiceImpl<OrderHandleMapper, Order
         OrderHandleQueryBo bo = new OrderHandleQueryBo();
         bo.setOverTime(DateUtils.getNowTime());
         List<OrderHandleOverVo> list = this.baseMapper.selectOverTimeOrderList(bo);
-        for(OrderHandleOverVo orderHandle : list){
+        for (OrderHandleOverVo orderHandle : list) {
             ServletUtils.getRequestAttributes().getResponse().setHeader("TenantId", orderHandle.getTenantId());
             OrderHandleAddBo addBo = new OrderHandleAddBo();
             addBo.setHandleOrderSn(orderHandle.getHandleOrderSn());
@@ -439,7 +452,7 @@ public class OrderHandleServiceImpl extends ServiceImpl<OrderHandleMapper, Order
         if (Validator.isEmpty(orderHandle)) {
             throw new CustomException("录单单号不存在");
         }
-        if (orderHandle.getPayStatus()!=-2) {
+        if (orderHandle.getPayStatus() != -2) {
             throw new CustomException("非拒绝状态");
         }
         OrderHandle update = new OrderHandle();
@@ -640,9 +653,9 @@ public class OrderHandleServiceImpl extends ServiceImpl<OrderHandleMapper, Order
                 }
                 //退款金额
                 BigDecimal reduce = goodsRefundList.stream().map(OrderGoodsRefund::getRealRefundFee).reduce(BigDecimal.ZERO, BigDecimal::add);
-                if (ObjectUtils.isNotNull(orderHandle.getRefundedPrice())){
+                if (ObjectUtils.isNotNull(orderHandle.getRefundedPrice())) {
                     orderHandle.setRefundedPrice(orderHandle.getRefundedPrice().add(reduce));
-                }else {
+                } else {
                     orderHandle.setRefundedPrice(reduce);
                 }
                 orderHandle.setRefundStatus(1);//已退款
@@ -655,11 +668,11 @@ public class OrderHandleServiceImpl extends ServiceImpl<OrderHandleMapper, Order
                 //是否存在发票
                 List<OrderInvoiceOrder> list = iOrderInvoiceOrderService
                         .list(new LambdaQueryWrapper<OrderInvoiceOrder>().eq(OrderInvoiceOrder::getOrderSn, orderHandle.getHandleOrderSn()));
-                if (CollectionUtils.isNotEmpty(list)){
-                   iOrderInvoiceService.update(new LambdaUpdateWrapper<OrderInvoice>()
-                   .set(OrderInvoice::getWashStatus,1)//带冲红
-                   .set(OrderInvoice::getInvoiceStatus,4)//失效
-                   .in(OrderInvoice::getInvoiceId,list.stream().map(OrderInvoiceOrder::getInvoiceId).collect(Collectors.toList())));
+                if (CollectionUtils.isNotEmpty(list)) {
+                    iOrderInvoiceService.update(new LambdaUpdateWrapper<OrderInvoice>()
+                            .set(OrderInvoice::getWashStatus, 1)//带冲红
+                            .set(OrderInvoice::getInvoiceStatus, 4)//失效
+                            .in(OrderInvoice::getInvoiceId, list.stream().map(OrderInvoiceOrder::getInvoiceId).collect(Collectors.toList())));
                 }
                 break;
             case 2://不通过

+ 6 - 1
zhongzheng-system/src/main/java/com/zhongzheng/modules/order/service/impl/OrderInvoiceServiceImpl.java

@@ -320,7 +320,12 @@ public class OrderInvoiceServiceImpl extends ServiceImpl<OrderInvoiceMapper, Ord
 
     @Override
     public List<CompanyOrderInvoiceVo> listCompanyOrderInvoice(CompanyOrderInvoiceBo bo) {
-        return baseMapper.listCompanyOrderInvoice(bo);
+        List<CompanyOrderInvoiceVo> companyOrderInvoiceVos = baseMapper.listCompanyOrderInvoice(bo);
+        companyOrderInvoiceVos.forEach(item->{
+            item.setIdCard(EncryptHandler.decrypt(item.getIdCard()));
+            item.setTelphone(EncryptHandler.decrypt(item.getTelphone()));
+        });
+        return companyOrderInvoiceVos;
     }
 
     @Override

+ 10 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/order/vo/CompanyOrderInvoiceVo.java

@@ -83,4 +83,14 @@ public class CompanyOrderInvoiceVo implements Serializable {
 
     @ApiModelProperty("审核状态")
     private Integer periodStatus;
+
+    /** 系统订单操作人 */
+    @ApiModelProperty("系统订单操作人")
+    private String createUsername;
+
+    @ApiModelProperty("经办身份证")
+    private String idCard;
+    /** 经办手机号 */
+    @ApiModelProperty("经办手机号")
+    private String telphone;
 }

+ 7 - 1
zhongzheng-system/src/main/java/com/zhongzheng/modules/order/vo/OrderHandleVo.java

@@ -1,5 +1,6 @@
 package com.zhongzheng.modules.order.vo;
 
+import com.baomidou.mybatisplus.annotation.TableField;
 import com.zhongzheng.common.annotation.Excel;
 import com.fasterxml.jackson.annotation.JsonFormat;
 import io.swagger.annotations.ApiModel;
@@ -159,5 +160,10 @@ public class OrderHandleVo {
 
 	@ApiModelProperty("退款申请原因")
 	private String refundApplyReason;
-
+	/** 经办身份证 */
+	@ApiModelProperty("经办身份证")
+	private String idCard;
+	/** 经办手机号 */
+	@ApiModelProperty("经办手机号")
+	private String telphone;
 }

+ 5 - 1
zhongzheng-system/src/main/java/com/zhongzheng/modules/top/goods/service/impl/TopOldOrderServiceImpl.java

@@ -516,6 +516,10 @@ public class TopOldOrderServiceImpl extends ServiceImpl<TopOldOrderMapper, TopOl
         return orderVoList;
     }
 
+    public static void main(String[] args) {
+        String encrypt = EncryptHandler.encrypt("441229198103120017");
+        System.out.println("encrypt = " + encrypt);
+    }
 
 
     private BigDecimal getInstTimeSettleCost(TopOldOrderVo orderVo) {
@@ -1979,8 +1983,8 @@ public class TopOldOrderServiceImpl extends ServiceImpl<TopOldOrderMapper, TopOl
                 order.setOrderUncollected(BigDecimal.ZERO);
             } else {
                 //未收比退款多或者相等
-                refundPrice = BigDecimal.ZERO;
                 order.setOrderUncollected(orderUncollected.subtract(refundPrice));
+                refundPrice = BigDecimal.ZERO;
             }
             updateById(order);
         }

+ 1 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/service/IUserHandleService.java

@@ -6,6 +6,7 @@ import com.zhongzheng.modules.user.bo.UserHandleImportBo;
 import com.zhongzheng.modules.user.bo.UserHandleQueryBo;
 import com.zhongzheng.modules.user.domain.UserHandle;
 import com.zhongzheng.modules.user.vo.UserHandleVo;
+import com.zhongzheng.modules.user.vo.UserVo;
 
 import java.util.List;
 

+ 3 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/service/impl/UserHandleServiceImpl.java

@@ -8,6 +8,8 @@ import com.baomidou.mybatisplus.core.toolkit.StringUtils;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.zhongzheng.common.exception.CustomException;
 import com.zhongzheng.common.utils.DateUtils;
+import com.zhongzheng.modules.order.domain.OrderHandle;
+import com.zhongzheng.modules.order.vo.OrderHandleVo;
 import com.zhongzheng.modules.user.bo.UserHandleBo;
 import com.zhongzheng.modules.user.bo.UserHandleImportBo;
 import com.zhongzheng.modules.user.bo.UserHandleQueryBo;
@@ -88,4 +90,5 @@ public class UserHandleServiceImpl extends ServiceImpl<UserHandleMapper, UserHan
         }).collect(Collectors.toList());
         saveBatch(handles);
     }
+
 }

+ 11 - 2
zhongzheng-system/src/main/resources/mapper/modules/order/OrderHandleMapper.xml

@@ -44,10 +44,19 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         cb.business_name business_name,
         (select IFNULL(sum(og.goods_real_price),0) from order_goods og LEFT JOIN `order` o on o.order_sn = og.order_sn  where o.handle_order_sn = u.handle_order_sn and og.refund_status = 2) goods_refund
         FROM (SELECT
-        oh.*
+        oh.*,s.id_card,s.telphone,s.realname AS createUsername
         FROM
-        order_handle oh
+        order_handle oh left join user s on oh.create_user_id=s.user_id
         where 1=1
+        <if test="idCard != null and idCard != ''">
+            AND s.id_card = #{idCard,typeHandler=com.zhongzheng.common.type.EncryptHandler}
+        </if>
+        <if test="telphone != null and telphone != ''">
+            AND s.telphone = #{telphone,typeHandler=com.zhongzheng.common.type.EncryptHandler}
+        </if>
+        <if test="createUsername != null and createUsername != ''">
+            AND s.realname = #{createUsername}
+        </if>
         <if test="businessId != null and businessId != ''">
             AND oh.business_id = #{businessId}
         </if>

+ 83 - 70
zhongzheng-system/src/main/resources/mapper/modules/order/OrderInvoiceMapper.xml

@@ -143,78 +143,91 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
     <select id="listCompanyOrderInvoice" parameterType="com.zhongzheng.modules.order.bo.CompanyOrderInvoiceBo"
             resultType="com.zhongzheng.modules.order.vo.CompanyOrderInvoiceVo">
         SELECT
-            oi.invoice_id,
-            CASE
-                WHEN oi.period_status = 1 THEN
-                    1
-                WHEN oi.period_status = 2 THEN
-                    3
-                WHEN oi.invoice_status = 2 THEN
-                    2 ELSE oi.invoice_status
-                END invoiceStatus,
-            oi.apply_time AS applyTime,
-            oi.make_out_time AS invoiceTime,
-            oh.handle_order_sn AS orderSn,
-            oi.amount AS invoicePrice,
-            oi.type,
-            oi.invoice_title,
-            oi.`subject`,
-            oi.tax_registry_number,
-            oi.invoice_remark as remark,
-            oi.consignee,
-            oi.collection_telephone,
-            oi.shipping_address,
-            oi.email,
-            oi.`status`,
-            oi.invoice_mode,
-            oi.open_remark,
-            oi.wash_status,
-            oi.handle_remark,
-            cet.education_name education_name,
-            cpt.project_name project_name,
-            cb.business_name business_name,
-            oh.goods_type
+        oi.invoice_id,
+        CASE
+        WHEN oi.period_status = 1 THEN
+        1
+        WHEN oi.period_status = 2 THEN
+        3
+        WHEN oi.invoice_status = 2 THEN
+        2 ELSE oi.invoice_status
+        END invoiceStatus,
+        oi.apply_time AS applyTime,
+        oi.make_out_time AS invoiceTime,
+        oh.handle_order_sn AS orderSn,
+        oi.amount AS invoicePrice,
+        oi.type,
+        oi.invoice_title,
+        oi.`subject`,
+        oi.tax_registry_number,
+        oi.invoice_remark as remark,
+        oi.consignee,
+        oi.collection_telephone,
+        oi.shipping_address,
+        oi.email,
+        oi.`status`,
+        oi.invoice_mode,
+        oi.open_remark,
+        oi.wash_status,
+        oi.handle_remark,
+        cet.education_name education_name,
+        cpt.project_name project_name,
+        cb.business_name business_name,
+        oh.goods_type,
+        u.id_card AS idCard,
+        u.telphone AS telphone,
+        u.realname AS createUsername
         FROM
-            order_invoice oi
-                LEFT JOIN order_invoice_order oio ON oi.invoice_id = oio.invoice_id
-                LEFT JOIN order_handle oh ON oio.order_sn = oh.handle_order_sn
-                LEFT JOIN course_education_type cet ON oh.education_type_id = cet.id
-                LEFT JOIN course_project_type cpt ON oh.project_id = cpt.id
-                LEFT JOIN course_business cb ON oh.business_id = cb.id
-                LEFT JOIN `user` u ON oh.create_user_id = u.user_id
+        order_invoice oi
+        LEFT JOIN order_invoice_order oio ON oi.invoice_id = oio.invoice_id
+        LEFT JOIN order_handle oh ON oio.order_sn = oh.handle_order_sn
+        LEFT JOIN course_education_type cet ON oh.education_type_id = cet.id
+        LEFT JOIN course_project_type cpt ON oh.project_id = cpt.id
+        LEFT JOIN course_business cb ON oh.business_id = cb.id
+        LEFT JOIN `user` u ON oh.create_user_id = u.user_id
         WHERE
-            oi.invoice_type = 2
-            <if test="goodsType != null and goodsType != ''">
-                AND oh.goods_type = #{goodsType}
-            </if>
-            <if test="educationTypeId != null and educationTypeId != ''">
-                AND oh.education_type_id = #{educationTypeId}
-            </if>
-            <if test="businessId != null and businessId != ''">
-                AND oh.business_id = #{businessId}
-            </if>
-            <if test="invoiceStatus != null and invoiceStatus == 1">
-                AND oi.period_status = 1
-            </if>
-            <if test="invoiceStatus != null and invoiceStatus == 2">
-                AND oi.invoice_status = 2
-            </if>
-            <if test="invoiceStatus != null and invoiceStatus == 3">
-                AND oi.period_status = 2
-            </if>
-            <if test="invoiceStatus != null and invoiceStatus == 4">
-                AND oi.invoice_status = 4
-            </if>
-            <if test="washStatus != null">
-                AND oi.wash_status = #{washStatus}
-            </if>
-            <if test="invoiceMode != null">
-                AND INSTR( oi.invoice_mode, #{invoiceMode})
-            </if>
-            <if test="keyword != null and keyword != ''">
-                AND ( oio.order_sn = #{keyword} OR u.realname like concat('%', #{keyword}, '%') OR u.id_card = #{keyword,typeHandler=com.zhongzheng.common.type.EncryptHandler} )
-            </if>
-            ORDER BY oi.create_time DESC
+        oi.invoice_type = 2
+        <if test="idCard != null and idCard != ''">
+            AND u.id_card = #{idCard,typeHandler=com.zhongzheng.common.type.EncryptHandler}
+        </if>
+        <if test="createUsername != null and createUsername != ''">
+            AND u.realname = #{createUsername}
+        </if>
+        <if test="telphone != null and telphone != ''">
+            AND u.telphone = #{telphone,typeHandler=com.zhongzheng.common.type.EncryptHandler}
+        </if>
+        <if test="goodsType != null and goodsType != ''">
+            AND oh.goods_type = #{goodsType}
+        </if>
+        <if test="educationTypeId != null and educationTypeId != ''">
+            AND oh.education_type_id = #{educationTypeId}
+        </if>
+        <if test="businessId != null and businessId != ''">
+            AND oh.business_id = #{businessId}
+        </if>
+        <if test="invoiceStatus != null and invoiceStatus == 1">
+            AND oi.period_status = 1
+        </if>
+        <if test="invoiceStatus != null and invoiceStatus == 2">
+            AND oi.invoice_status = 2
+        </if>
+        <if test="invoiceStatus != null and invoiceStatus == 3">
+            AND oi.period_status = 2
+        </if>
+        <if test="invoiceStatus != null and invoiceStatus == 4">
+            AND oi.invoice_status = 4
+        </if>
+        <if test="washStatus != null">
+            AND oi.wash_status = #{washStatus}
+        </if>
+        <if test="invoiceMode != null">
+            AND INSTR( oi.invoice_mode, #{invoiceMode})
+        </if>
+        <if test="keyword != null and keyword != ''">
+            AND ( oio.order_sn = #{keyword} OR u.realname like concat('%', #{keyword}, '%') OR u.id_card =
+            #{keyword,typeHandler=com.zhongzheng.common.type.EncryptHandler} )
+        </if>
+        ORDER BY oi.create_time DESC
     </select>
 
     <select id="listWashInvoice" parameterType="map" resultType="com.zhongzheng.modules.order.domain.OrderInvoice">

+ 5 - 28
zhongzheng-system/src/main/resources/mapper/modules/top/TopOldOrderMapper.xml

@@ -46,13 +46,7 @@
         SELECT
         vto.*
         FROM
-        <if test="businessFullName != null and businessFullName != '' and ((userCard == null or userCard == '') and (userName == null or userName == ''))">
-            ( SELECT DISTINCT order_sn
-            FROM `v_top_order_business` where INSTR( business_full_name,#{businessFullName} ) > 0
-            ) a
-            LEFT JOIN v_top_order vto ON a.order_sn = vto.order_sn
-        </if>
-        <if test="((userCard != null and userCard != '') or (userName != null and userName != '')) and (businessFullName == null or businessFullName == '')">
+        <if test="((userCard != null and userCard != '') or (userName != null and userName != ''))">
             ( SELECT DISTINCT order_sn
             FROM `v_top_order_card` where 1=1
             <if test="userCard != null and userCard != ''">
@@ -64,33 +58,16 @@
             ) a
             LEFT JOIN v_top_order vto ON a.order_sn = vto.order_sn
         </if>
-        <if test="((userCard != null and userCard != '') or (userName != null and userName != '')) and businessFullName != null and businessFullName != ''">
-            ( SELECT DISTINCT order_sn
-            FROM (
-            SELECT
-            DISTINCT order_sn
-            FROM
-            ( SELECT order_sn FROM v_top_order_business WHERE INSTR( business_full_name,#{businessFullName} ) > 0 UNION
-            ALL SELECT order_sn FROM v_top_order_card
-            WHERE 1 = 1
-            <if test="userCard != null and userCard != ''">
-                AND user_card = #{userCard,typeHandler=com.zhongzheng.common.type.EncryptHandler}
-            </if>
-            <if test="userName != null and userName != ''">
-                AND user_name LIKE CONCAT( '%', #{userName}, '%' )
-            </if>
-            ) b
-            ) m
-            ) a
-            LEFT JOIN v_top_order vto ON a.order_sn = vto.order_sn
-        </if>
-        <if test="(userCard == null or userCard == '') and (businessFullName == null or businessFullName == '') and (userName == null or userName == '')">
+        <if test="(userCard == null or userCard == '') and (userName == null or userName == '')">
             v_top_order vto
         </if>
         WHERE vto.`status` in (0,1)
         <if test="operationType != null">
             AND vto.operation_type = #{operationType}
         </if>
+        <if test="businessFullName != null and businessFullName != ''">
+            AND INSTR(vto.business_full_name,#{businessFullName})
+        </if>
         <if test="checkStatus != null and checkStatus.size()!=0 ">
             AND vto.check_status in
             <foreach collection="checkStatus" item="item" index="index" open="(" close=")" separator=",">

+ 4 - 30
zhongzheng-system/src/main/resources/mapper/modules/user/UserMapper.xml

@@ -229,24 +229,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         </if>
         <if test="goodsSearchKey != null and goodsSearchKey != ''" >
             and ( SELECT
-            count(og.*)
+            count(og.order_goods_id)
             FROM
             `order` o
             LEFT JOIN order_goods og on o.order_sn = og.order_sn
-            where 1=1
-            and og.`status` = 1
-            and og.refund_status in (0,1,3)
-            and og.pay_status in (2,3,4))
-            and (g.goods_name like concat('%', #{goodsSearchKey}, '%') or g.code like concat('%', #{goodsSearchKey}, '%'))
-            and o.user_id = u.user_id)>0
-        </if>
-        <if test="goodsSearchKey != null and goodsSearchKey != ''" >
-            and ( SELECT
-            count(*)
-            FROM
-            `order` o
-            LEFT JOIN order_goods og on o.order_sn = og.order_sn
-            LEFT JOIN goods g on og.goods_id = g.goods_id
+            LEFT JOIN goods g ON og.goods_id = g.goods_id
             where 1=1
             and og.`status` = 1
             and og.refund_status in (0,1,3)
@@ -388,24 +375,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         </if>
         <if test="goodsSearchKey != null and goodsSearchKey != ''" >
             and ( SELECT
-            count(og.*)
+            count(og.order_goods_id)
             FROM
             `order` o
             LEFT JOIN order_goods og on o.order_sn = og.order_sn
-            where 1=1
-            and og.`status` = 1
-            and og.refund_status in (0,1,3)
-            and og.pay_status in (2,3,4))
-            and (g.goods_name like concat('%', #{goodsSearchKey}, '%') or g.code like concat('%', #{goodsSearchKey}, '%'))
-            and o.user_id = u.user_id)>0
-        </if>
-        <if test="goodsSearchKey != null and goodsSearchKey != ''" >
-            and ( SELECT
-            count(*)
-            FROM
-            `order` o
-            LEFT JOIN order_goods og on o.order_sn = og.order_sn
-            LEFT JOIN goods g on og.goods_id = g.goods_id
+            LEFT JOIN goods g ON og.goods_id = g.goods_id
             where 1=1
             and og.`status` = 1
             and og.refund_status in (0,1,3)