Ver código fonte

Merge remote-tracking branch 'origin/master'

wks 2 anos atrás
pai
commit
c94d8cd49a

+ 20 - 16
src/main/java/com/ydtech/modules/order/service/InsOrderQrCodeService.java

@@ -1,21 +1,9 @@
 package com.ydtech.modules.order.service;
 
-import com.baomidou.mybatisplus.core.conditions.Wrapper;
 import com.baomidou.mybatisplus.extension.service.IService;
-import com.ydtech.core.page.HttpResult;
-import com.ydtech.modules.ins.model.ya.CarModelDTO;
-import com.ydtech.modules.order.entity.BasePageResult;
+import com.ydtech.exception.SystemException;
 import com.ydtech.modules.order.entity.InsOrderQrCode;
-import com.ydtech.modules.order.entity.InsOrders;
-import com.ydtech.modules.order.entity.dto.InsAreaCompanyQueryDto;
-import com.ydtech.modules.order.entity.vo.BaseQuoteInfoVo;
-import com.ydtech.modules.order.entity.vo.OrderQueryVo;
-import com.ydtech.modules.order.entity.vo.OrderVo;
-import com.ydtech.modules.order.entity.vo.VerifyOrdersVo;
-import com.ydtech.modules.protocol.entity.dto.PtlAgreementInsCompanyDto;
-import com.ydtech.utils.idgen.IdGenerate;
-
-import java.util.List;
+import org.springframework.util.ObjectUtils;
 
 /**
  * @author Administrator
@@ -33,8 +21,24 @@ public interface InsOrderQrCodeService extends IService<InsOrderQrCode> {
     String getQrCodeUrl(String base64);
 
     //存储二维码对象
-    boolean save(String orderno,String companyId,String jumlUrl);
+    boolean save(String orderno, String companyId, String jumlUrl);
 
     //修改二维码状态
-    boolean updateQrCode(String id,Integer status);
+    boolean updateQrCode(String id, Integer status);
+
+    /**
+     * 判断订单二维码是否存在
+     *
+     * @param areaCompanyId 子订单号
+     * @return 订单二维码
+     */
+    default InsOrderQrCode getIsExit(String areaCompanyId) {
+        InsOrderQrCode insOrderQrCode = lambdaQuery().eq(InsOrderQrCode::getAreaCompanyId, areaCompanyId).one();
+        if (ObjectUtils.isEmpty(insOrderQrCode)) {
+            throw new SystemException("缴费二维码还未生成请点击二维码生成。");
+        }
+        return insOrderQrCode;
+
+    }
+
 }

+ 30 - 22
src/main/java/com/ydtech/modules/order/service/impl/InsOrderQrCodeServiceImpl.java

@@ -90,23 +90,25 @@ public class InsOrderQrCodeServiceImpl extends ServiceImpl<InsOrderQrCodeMapper,
     @Override
     public InsOrderQrCode getOneOrSave(String companyId) {
         //查询 ins_area_company数据
-        InsAreaCompany insAreaCompany = insAreaCompanyService.getOne(new LambdaQueryWrapper<InsAreaCompany>().eq(InsAreaCompany::getId, companyId));
+        InsAreaCompany insAreaCompany =
+                insAreaCompanyService.getOne(new LambdaQueryWrapper<InsAreaCompany>().eq(InsAreaCompany::getId,
+                        companyId));
         //查询 是否有数据存在
         InsOrderQrCode insOrderQrCode = baseMapper.selectOne(new LambdaQueryWrapper<InsOrderQrCode>()
                 .eq(InsOrderQrCode::getAreaCompanyId, companyId)
                 .eq(InsOrderQrCode::getQrcodeStatus, 1));
-        if(Objects.isNull(insOrderQrCode))
-        {
+        if (Objects.isNull(insOrderQrCode)) {
             //如果订单状态等于 待缴费 或 撤销二维码
-            if(insAreaCompany.getOrderstatus().equals(InsOrderStatusEnum.WAIT_PAY.getCode())){
-                if(Objects.isNull(insAreaCompany.getPaymentLink())){
+            if (insAreaCompany.getOrderstatus().equals(InsOrderStatusEnum.WAIT_PAY.getCode())) {
+                if (Objects.isNull(insAreaCompany.getPaymentLink())) {
                     throw new SystemException("该订单没有缴费链接");
                 }
-                boolean save = save(insAreaCompany.getOrderno(), insAreaCompany.getId(), insAreaCompany.getPaymentLink());
+                boolean save = save(insAreaCompany.getOrderno(), insAreaCompany.getId(),
+                        insAreaCompany.getPaymentLink());
                 insOrderQrCode = baseMapper.selectOne(new LambdaQueryWrapper<InsOrderQrCode>()
                         .eq(InsOrderQrCode::getAreaCompanyId, companyId)
                         .eq(InsOrderQrCode::getQrcodeStatus, 1));
-            }else{
+            } else {
                 throw new SystemException("该订单不是待缴费状态");
             }
 
@@ -117,7 +119,8 @@ public class InsOrderQrCodeServiceImpl extends ServiceImpl<InsOrderQrCodeMapper,
     @Override
     public InsOrderQrCode getOne(String companyId) {
         //查询 ins_area_company数据
-//        InsAreaCompany insAreaCompany = insAreaCompanyService.getOne(new LambdaQueryWrapper<InsAreaCompany>().eq(InsAreaCompany::getId, companyId));
+//        InsAreaCompany insAreaCompany = insAreaCompanyService.getOne(new LambdaQueryWrapper<InsAreaCompany>().eq
+//        (InsAreaCompany::getId, companyId));
         //查询 是否有数据存在
         InsOrderQrCode insOrderQrCode = baseMapper.selectOne(new LambdaQueryWrapper<InsOrderQrCode>()
                 .eq(InsOrderQrCode::getAreaCompanyId, companyId)
@@ -125,13 +128,13 @@ public class InsOrderQrCodeServiceImpl extends ServiceImpl<InsOrderQrCodeMapper,
         return insOrderQrCode;
     }
 
-    private BufferedImage base64ToBufferedImage(String base64){
+    private BufferedImage base64ToBufferedImage(String base64) {
         try {
             byte[] bytes = Base64.getDecoder().decode(base64);
             ByteArrayInputStream bais = new ByteArrayInputStream(bytes);
             BufferedImage bi1 = ImageIO.read(bais);
             return bi1;
-        }catch (Exception e){
+        } catch (Exception e) {
             throw new SystemException("base64转BufferedImage失败");
         }
     }
@@ -157,11 +160,10 @@ public class InsOrderQrCodeServiceImpl extends ServiceImpl<InsOrderQrCodeMapper,
     }
 
     private boolean isHttpUrl(String urls) {
-        try
-        {
+        try {
             URL url = new URL(urls);
             return true;
-        }catch (java.net.MalformedURLException e){
+        } catch (java.net.MalformedURLException e) {
             return false;
         }
     }
@@ -169,6 +171,7 @@ public class InsOrderQrCodeServiceImpl extends ServiceImpl<InsOrderQrCodeMapper,
 
     /**
      * 保存二维码
+     *
      * @param orderno
      * @param companyId
      * @param jumlUrl
@@ -184,9 +187,9 @@ public class InsOrderQrCodeServiceImpl extends ServiceImpl<InsOrderQrCodeMapper,
             insOrderQrCode.setOrderno(orderno);
             insOrderQrCode.setAreaCompanyId(companyId);
             //判断jumlUrl是base64 还是 url
-            if(isHttpUrl(jumlUrl)){
+            if (isHttpUrl(jumlUrl)) {
                 insOrderQrCode.setJumpUrl(jumlUrl);
-            }else{
+            } else {
                 //base64 二维码图片
                 String qrCodeUrl = getQrCodeUrl(jumlUrl);
                 insOrderQrCode.setJumpUrl(qrCodeUrl);
@@ -194,13 +197,14 @@ public class InsOrderQrCodeServiceImpl extends ServiceImpl<InsOrderQrCodeMapper,
             insOrderQrCode.setQrcodeStatus(1);
             insOrderQrCode.setCreatetime(new Date());
             return this.save(insOrderQrCode);
-        }catch(Exception e){
+        } catch (Exception e) {
             throw new SystemException("查询二维码失败");
         }
     }
 
     /**
      * 更新二维码状态
+     *
      * @param id
      * @param status
      * @return
@@ -208,19 +212,23 @@ public class InsOrderQrCodeServiceImpl extends ServiceImpl<InsOrderQrCodeMapper,
     @Override
     @Transactional
     public boolean updateQrCode(String id, Integer status) {
+
         try {
-            InsOrderQrCode insOrderQrCode = new InsOrderQrCode();
+            InsAreaCompany insAreaCompany = insAreaCompanyService.getByIdIsExist(id);
+            InsOrderQrCode insOrderQrCode = getIsExit(insAreaCompany.getId());
             insOrderQrCode.setQrcodeStatus(status);
             insOrderQrCode.setDestructionCodeTime(new Date());
-            this.update(insOrderQrCode,new LambdaQueryWrapper<InsOrderQrCode>().eq(InsOrderQrCode::getAreaCompanyId,id));
+            this.updateById(insOrderQrCode);
+
             //设置订单状态为撤销二维码
-            InsAreaCompany insAreaCompany = new InsAreaCompany();
-            insAreaCompany.setId(id);
             insAreaCompany.setOrderstatus(InsOrderStatusEnum.QUOTE_ING.getCode());
             insAreaCompanyService.updateCompanyAndOrders(insAreaCompany);
             return true;
-        }catch(Exception e){
-            throw new SystemException("撤销二维码失败");
+        } catch (Exception e) {
+            log.debug(e.getMessage());
         }
+        return false;
     }
+
 }
+