From e5b3a44d2fe359e5e0c5ed7b0a8c8bce7fd333ee Mon Sep 17 00:00:00 2001
From: xuhy <3313886187@qq.com>
Date: 星期四, 22 八月 2024 11:45:41 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java                             |   28 ++++
 ruoyi-api/ruoyi-api-order/pom.xml                                                                                               |    4 
 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/mapper/TChargingOrderMapper.java                                        |    6 +
 ruoyi-api/ruoyi-api-payment/src/main/java/com/ruoyi/payment/api/factory/WxPaymentFallbackFactory.java                           |    5 
 ruoyi-service/ruoyi-chargingPile/pom.xml                                                                                        |    9 +
 ruoyi-api/ruoyi-api-other/pom.xml                                                                                               |    4 
 ruoyi-api/ruoyi-api-payment/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports |    2 
 ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/dto/TApplyChargingPileExportDto.java                      |  113 ++++++++++++++++++
 ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TGoodsController.java                                        |    1 
 ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/AliLoginController.java                                  |    1 
 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/TChargingOrderService.java                                      |    5 
 ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppCouponController.java                                |   70 +++++++++-
 ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppUserController.java                                  |    5 
 ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TApplyChargingPileController.java              |   25 +++
 ruoyi-api/ruoyi-api-account/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports |    3 
 ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TCouponController.java                                       |   37 +++++-
 ruoyi-service/ruoyi-chargingPile/src/main/resources/template/充电桩申请记录.xlsx                                                       |    0 
 ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/dto/GrantCouponDto.java                                         |    9 +
 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TChargingOrderController.java                                |    6 
 19 files changed, 307 insertions(+), 26 deletions(-)

diff --git a/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/dto/GrantCouponDto.java b/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/dto/GrantCouponDto.java
index 7db26de..187a099 100644
--- a/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/dto/GrantCouponDto.java
+++ b/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/dto/GrantCouponDto.java
@@ -9,6 +9,8 @@
 @Data
 @ApiModel("管理后台发放优惠券DTO")
 public class GrantCouponDto {
+    @ApiModelProperty("类型 1按用户标签 2按用户所在地 3自定义发放")
+    private Integer type;
     @ApiModelProperty("用户ids 逗号分隔")
     private String userIds;
     @ApiModelProperty("优惠券id")
@@ -17,4 +19,11 @@
     private Integer waysToObtain;
     @ApiModelProperty("结束时间 前端忽略")
     private LocalDateTime endTime;
+    @ApiModelProperty("标签ids")
+    private String tags;
+
+    @ApiModelProperty("市code 多个逗号分割")
+    private String cityCode;
+    @ApiModelProperty("省code 多个逗号分割")
+    private String provinceCode;
 }
diff --git a/ruoyi-api/ruoyi-api-account/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports b/ruoyi-api/ruoyi-api-account/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
index 40f7d82..a0abd5c 100644
--- a/ruoyi-api/ruoyi-api-account/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
+++ b/ruoyi-api/ruoyi-api-account/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
@@ -2,4 +2,5 @@
 com.ruoyi.account.api.factory.AppCouponFallbackFactory
 com.ruoyi.account.api.factory.AppUserCarFallbackFactory
 com.ruoyi.account.api.factory.AppUserIntegralChangeFallbackFactory
-com.ruoyi.account.api.factory.AppUserAddressFallbackFactory
\ No newline at end of file
+com.ruoyi.account.api.factory.AppUserAddressFallbackFactory
+com.ruoyi.account.api.factory.AppUserVipDetailFallbackFactory
\ No newline at end of file
diff --git a/ruoyi-api/ruoyi-api-order/pom.xml b/ruoyi-api/ruoyi-api-order/pom.xml
index 687c8a0..6bdc239 100644
--- a/ruoyi-api/ruoyi-api-order/pom.xml
+++ b/ruoyi-api/ruoyi-api-order/pom.xml
@@ -28,6 +28,10 @@
                 </exclusion>
             </exclusions>
         </dependency>
+        <dependency>
+            <groupId>com.ruoyi</groupId>
+            <artifactId>ruoyi-api-other</artifactId>
+        </dependency>
 
     </dependencies>
 
diff --git a/ruoyi-api/ruoyi-api-other/pom.xml b/ruoyi-api/ruoyi-api-other/pom.xml
index 0e43900..df1d49e 100644
--- a/ruoyi-api/ruoyi-api-other/pom.xml
+++ b/ruoyi-api/ruoyi-api-other/pom.xml
@@ -28,6 +28,10 @@
                 </exclusion>
             </exclusions>
         </dependency>
+        <dependency>
+            <groupId>com.ruoyi</groupId>
+            <artifactId>ruoyi-api-account</artifactId>
+        </dependency>
     </dependencies>
 
 </project>
\ No newline at end of file
diff --git a/ruoyi-api/ruoyi-api-payment/src/main/java/com/ruoyi/payment/api/factory/WxPaymentFallbackFactory.java b/ruoyi-api/ruoyi-api-payment/src/main/java/com/ruoyi/payment/api/factory/WxPaymentFallbackFactory.java
index bad2cf8..6761b58 100644
--- a/ruoyi-api/ruoyi-api-payment/src/main/java/com/ruoyi/payment/api/factory/WxPaymentFallbackFactory.java
+++ b/ruoyi-api/ruoyi-api-payment/src/main/java/com/ruoyi/payment/api/factory/WxPaymentFallbackFactory.java
@@ -46,6 +46,11 @@
             public void ack() {
         
             }
+
+            @Override
+            public void close(String outTradeNo) {
+
+            }
         };
     }
 }
diff --git a/ruoyi-api/ruoyi-api-payment/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports b/ruoyi-api/ruoyi-api-payment/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
index 8c90e6a..fe686fc 100644
--- a/ruoyi-api/ruoyi-api-payment/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
+++ b/ruoyi-api/ruoyi-api-payment/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
@@ -1 +1 @@
-com.ruoyi.payment.api.factory.ChargingOrderFallbackFactory
\ No newline at end of file
+com.ruoyi.payment.api.factory.WxPaymentFallbackFactory
\ No newline at end of file
diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/AliLoginController.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/AliLoginController.java
index 3904f59..a27f0e9 100644
--- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/AliLoginController.java
+++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/AliLoginController.java
@@ -57,6 +57,7 @@
         // 登录
         AlipaySystemOauthTokenResponse response = new AliAppletTools(aliProperties).login(code);
         if (response.isSuccess()) {
+            response.setRefreshToken(response.getAccessToken());
             // 获取用户信息
             AlipayUserInfoShareResponse userInfo = new AliAppletTools(aliProperties).getUserInfo(response.getAccessToken());
             log.info("获取支付宝用户信息:{}", userInfo);
diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppCouponController.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppCouponController.java
index 7e65be4..0443f6c 100644
--- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppCouponController.java
+++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppCouponController.java
@@ -6,8 +6,12 @@
 import com.ruoyi.account.api.dto.CouponListDto;
 import com.ruoyi.account.api.dto.GrantCouponDto;
 import com.ruoyi.account.api.model.TAppCoupon;
+import com.ruoyi.account.api.model.TAppUser;
 import com.ruoyi.account.api.model.TAppUserCar;
+import com.ruoyi.account.api.model.TAppUserTag;
 import com.ruoyi.account.api.query.ExchangeRecordGoodsQuery;
+import com.ruoyi.account.service.TAppUserService;
+import com.ruoyi.account.service.TAppUserTagService;
 import com.ruoyi.chargingPile.api.feignClient.ChargingGunClient;
 import com.ruoyi.chargingPile.api.model.TChargingGun;
 import com.ruoyi.chargingPile.api.model.TChargingPile;
@@ -28,6 +32,7 @@
 import io.swagger.annotations.ApiModelProperty;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.util.StringUtils;
 import org.springframework.web.bind.annotation.*;
 
 import javax.annotation.Resource;
@@ -37,6 +42,7 @@
 import java.util.Arrays;
 import java.util.Date;
 import java.util.List;
+import java.util.stream.Collectors;
 
 /**
  * <p>
@@ -184,24 +190,66 @@
         return R.ok(tAppCouponService.pagelist(couponId));
     }
 
+    @Autowired
+    private TAppUserTagService appUserTagService;
+    @Autowired
+    private TAppUserService appUserService;
+
     /**
      * 后台远程调用 给用户发放优惠券
      */
     @PostMapping("/grantCoupon")
     public R  grantCoupon(@RequestBody GrantCouponDto dto){
         List<TAppCoupon> res = new ArrayList<>();
-        for (String s : dto.getUserIds().split(",")) {
-            TAppCoupon tAppCoupon = new TAppCoupon();
-            tAppCoupon.setAppUserId(Long.valueOf(s));
-            tAppCoupon.setCouponId(dto.getCouponId());
-            tAppCoupon.setEndTime(dto.getEndTime());
-            tAppCoupon.setWaysToObtain(dto.getWaysToObtain());
-            tAppCoupon.setStatus(1);
-            R<TCoupon> couponById = otherClient.getCouponById(Integer.valueOf(s));
-            tAppCoupon.setCouponJson(JSON.toJSONString(couponById.getData()));
-            res.add(tAppCoupon);
+        switch (dto.getType()){
+            case 1:
+                // 根据标签ids 查询用户ids
+                List<Long> collect = appUserTagService.list(new QueryWrapper<TAppUserTag>()
+                        .in("user_tag_id", Arrays.asList(dto.getTags().split(","))))
+                        .stream().map(TAppUserTag::getAppUserId).collect(Collectors.toList());
+                for (Long l : collect) {
+                    TAppCoupon tAppCoupon = new TAppCoupon();
+                    tAppCoupon.setAppUserId(l);
+                    tAppCoupon.setCouponId(dto.getCouponId());
+                    tAppCoupon.setEndTime(dto.getEndTime());
+                    tAppCoupon.setWaysToObtain(dto.getWaysToObtain());
+                    tAppCoupon.setStatus(1);
+                    res.add(tAppCoupon);
+                }
+                tAppCouponService.saveBatch(res);
+                break;
+            case 2:
+                // 根据市codes 查询用户ids
+                List<Long> collect1 = appUserService.list(new QueryWrapper<TAppUser>()
+                                .in("city_code", Arrays.asList(dto.getCityCode().split(","))))
+                        .stream().map(TAppUser::getId).collect(Collectors.toList());
+                for (Long l : collect1) {
+                    TAppCoupon tAppCoupon = new TAppCoupon();
+                    tAppCoupon.setAppUserId(l);
+                    tAppCoupon.setCouponId(dto.getCouponId());
+                    tAppCoupon.setEndTime(dto.getEndTime());
+                    tAppCoupon.setWaysToObtain(dto.getWaysToObtain());
+                    tAppCoupon.setStatus(1);
+                    res.add(tAppCoupon);
+                }
+                tAppCouponService.saveBatch(res);
+                break;
+            case 3:
+                for (String s : dto.getUserIds().split(",")) {
+                    TAppCoupon tAppCoupon = new TAppCoupon();
+                    tAppCoupon.setAppUserId(Long.valueOf(s));
+                    tAppCoupon.setCouponId(dto.getCouponId());
+                    tAppCoupon.setEndTime(dto.getEndTime());
+                    tAppCoupon.setWaysToObtain(dto.getWaysToObtain());
+                    tAppCoupon.setStatus(1);
+                    res.add(tAppCoupon);
+                }
+                tAppCouponService.saveBatch(res);
+                break;
         }
-        tAppCouponService.saveBatch(res);
+
+
+
         return R.ok();
     }
 }
diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppUserController.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppUserController.java
index 3e381b6..7cdf96d 100644
--- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppUserController.java
+++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppUserController.java
@@ -285,12 +285,15 @@
             String[] split = userListQueryDto.getUserTagId().split(",");
             userIds = appUserTagService.lambdaQuery().in(TAppUserTag::getUserTagId, Arrays.asList(split)).list().stream().map(TAppUserTag::getAppUserId).collect(Collectors.toList());
         }
+        if (!userIds.isEmpty()){
+            userIds.add(-1L);
+        }
         //列表查询
         Page<TAppUser> page = appUserService.lambdaQuery()
                 .like(userListQueryDto.getUserPhone() != null && !"".equals(userListQueryDto.getUserPhone()), TAppUser::getPhone, userListQueryDto.getUserPhone())
                 .eq(userListQueryDto.getCityCode() != null && !"".equals(userListQueryDto.getCityCode()), TAppUser::getCityCode, userListQueryDto.getCityCode())
                 .eq(userListQueryDto.getProvinceCode() != null && !"".equals(userListQueryDto.getProvinceCode()), TAppUser::getProvinceCode, userListQueryDto.getProvinceCode())
-                .in(!userIds.isEmpty(),TAppUser::getId,userIds)
+                .in(TAppUser::getId,userIds)
                 .eq(TAppUser::getStatus,1)
                 .page(Page.of(userListQueryDto.getPageCurr(), userListQueryDto.getPageSize()));
         if (page.getRecords().isEmpty()){
diff --git a/ruoyi-service/ruoyi-chargingPile/pom.xml b/ruoyi-service/ruoyi-chargingPile/pom.xml
index 1a16816..c214baa 100644
--- a/ruoyi-service/ruoyi-chargingPile/pom.xml
+++ b/ruoyi-service/ruoyi-chargingPile/pom.xml
@@ -15,6 +15,8 @@
     </description>
 
     <dependencies>
+
+
         <dependency>
             <groupId>com.ruoyi</groupId>
             <artifactId>ruoyi-api-account</artifactId>
@@ -124,6 +126,13 @@
 		    <artifactId>ruoyi-api-order</artifactId>
 	    </dependency>
 
+        <dependency>
+            <groupId>com.alibaba</groupId>
+            <artifactId>easyexcel</artifactId>
+            <version>3.3.0</version>
+            <type>pom</type>
+        </dependency>
+
     </dependencies>
 
     <build>
diff --git a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TApplyChargingPileController.java b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TApplyChargingPileController.java
index f60dca5..fc6ee66 100644
--- a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TApplyChargingPileController.java
+++ b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TApplyChargingPileController.java
@@ -9,6 +9,7 @@
 import com.ruoyi.chargingPile.api.dto.ApplyChargingQuery;
 import com.ruoyi.chargingPile.api.dto.ApplyChargingRemarkDto;
 import com.ruoyi.chargingPile.api.model.TApplyChargingPile;
+import com.ruoyi.chargingPile.dto.TApplyChargingPileExportDto;
 import com.ruoyi.chargingPile.service.TApplyChargingPileService;
 import com.ruoyi.common.core.constant.Constants;
 import com.ruoyi.common.core.domain.R;
@@ -19,6 +20,7 @@
 import com.ruoyi.common.security.service.TokenService;
 import io.swagger.annotations.ApiOperation;
 import org.apache.commons.codec.CharEncoding;
+import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
@@ -26,7 +28,9 @@
 import java.io.IOException;
 import java.io.InputStream;
 import java.io.UnsupportedEncodingException;
+import java.net.URL;
 import java.net.URLEncoder;
+import java.util.ArrayList;
 import java.util.List;
 
 /**
@@ -94,7 +98,24 @@
             return R.fail("excel导出失败!");
         }
         try {
-            List<TApplyChargingPile> list = applyChargingPileService.lambdaQuery().list();
+            List<TApplyChargingPile> list = applyChargingPileService.lambdaQuery().last("limit 1").list();
+
+            List<TApplyChargingPileExportDto> exportDtos =new ArrayList<>();
+            for (TApplyChargingPile tApplyChargingPile : list) {
+                TApplyChargingPileExportDto applyChargingPileExportDto = new TApplyChargingPileExportDto();
+                BeanUtils.copyProperties(tApplyChargingPile,applyChargingPileExportDto);
+                applyChargingPileExportDto.setLandlordFrontIdCard(new URL(tApplyChargingPile.getLandlordFrontIdCard()));
+                applyChargingPileExportDto.setLandlordBackIdCard(new URL(tApplyChargingPile.getLandlordBackIdCard()));
+                applyChargingPileExportDto.setAgentBackIdCard(new URL(tApplyChargingPile.getAgentBackIdCard()));
+                applyChargingPileExportDto.setAgentFrontIdCard(new URL(tApplyChargingPile.getAgentFrontIdCard()));
+                List<URL> urls = new ArrayList<>();
+                urls.add(new URL("https://img-blog.csdnimg.cn/direct/c11088e1790049a5b84a0fda21a271b1.png"));
+                urls.add(new URL("https://img-blog.csdnimg.cn/direct/c11088e1790049a5b84a0fda21a271b1.png"));
+                urls.add(new URL("https://img-blog.csdnimg.cn/direct/c11088e1790049a5b84a0fda21a271b1.png"));
+                        applyChargingPileExportDto.setUrls(urls);
+                exportDtos.add(applyChargingPileExportDto);
+
+            }
 
             // excel模板封装
             ExcelWriterBuilder excelWriterBuilder = EasyExcelFactory.write(response.getOutputStream());
@@ -102,7 +123,7 @@
             // 自动释放资源
             try (ExcelWriter excelWriter = excelWriterBuilder.withTemplate(stream).build()) {
                 WriteSheet writeSheet = EasyExcelFactory.writerSheet().build();
-                excelWriter.fill(list, writeSheet);
+                excelWriter.fill(exportDtos, writeSheet);
                 excelWriter.finish();
             } catch (Exception e) {
                 return R.fail("excel导出失败!");
diff --git a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/dto/TApplyChargingPileExportDto.java b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/dto/TApplyChargingPileExportDto.java
new file mode 100644
index 0000000..73df50f
--- /dev/null
+++ b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/dto/TApplyChargingPileExportDto.java
@@ -0,0 +1,113 @@
+package com.ruoyi.chargingPile.dto;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.ruoyi.common.core.annotation.Excel;
+import com.ruoyi.common.core.web.domain.BasePojo;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import javax.validation.constraints.NotBlank;
+import java.math.BigDecimal;
+import java.net.URL;
+import java.time.LocalDate;
+import java.util.List;
+
+@Data
+
+public class TApplyChargingPileExportDto extends BasePojo {
+    @ApiModelProperty(value = "用户id")
+    @TableField("app_user_id")
+    private Long appUserId;
+
+    @ApiModelProperty(value = "用电地址")
+    @NotBlank(message = "用电地址不能为空")
+    @TableField("address")
+    private String address;
+
+    @ApiModelProperty(value = "申请容量")
+    @TableField("capacity")
+    private BigDecimal capacity;
+
+    @ApiModelProperty(value = "用电时间")
+    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
+    @TableField("consumption_time")
+    private LocalDate consumptionTime;
+
+    @ApiModelProperty(value = "户主经办(0=关,1=开)")
+    @TableField("landlord_handling")
+    private Integer landlordHandling;
+
+    @ApiModelProperty(value = "户名")
+    @TableField("landlord_name")
+    private String landlordName;
+
+    @ApiModelProperty(value = "户主身份证号码")
+    @TableField("landlord_id_card")
+    private String landlordIdCard;
+
+    @ApiModelProperty(value = "户主手机号")
+    @TableField("landlord_phone")
+    private String landlordPhone;
+
+    @ApiModelProperty(value = "户主身份证正面")
+    @TableField("landlord_front_id_card")
+    private URL landlordFrontIdCard;
+
+    @ApiModelProperty(value = "户主身份证反面")
+    @TableField("landlord_back_id_card")
+    private URL landlordBackIdCard;
+
+    @ApiModelProperty(value = "产权证明")
+    @TableField("title_certificate")
+    private String titleCertificate;
+
+    @ApiModelProperty(value = "营业执照")
+    @TableField("business_license")
+    private String businessLicense;
+
+    @ApiModelProperty(value = "充电桩用户(0=关,1=开)")
+    @TableField("charging_pile_user")
+    private Integer chargingPileUser;
+
+    @ApiModelProperty(value = "固定车位产权")
+    @TableField("fixed_parking_property_rights")
+    private String fixedParkingPropertyRights;
+
+    @ApiModelProperty(value = "施工证明")
+    @TableField("construction_certificate")
+    private String constructionCertificate;
+
+    @ApiModelProperty(value = "经办人姓名")
+    @TableField("agent_name")
+    private String agentName;
+
+    @ApiModelProperty(value = "经办人身份证号")
+    @TableField("agent_id_card")
+    private String agentIdCard;
+
+    @ApiModelProperty(value = "经办人手机号")
+    @TableField("agent_phone")
+    private String agentPhone;
+
+    @ApiModelProperty(value = "经办人身份证正面")
+    @TableField("agent_front_id_card")
+    private URL agentFrontIdCard;
+
+    @ApiModelProperty(value = "经办人身份证背面")
+    @TableField("agent_back_id_card")
+    private URL agentBackIdCard;
+
+    @ApiModelProperty(value = "是否有充电桩(0=否,1=是)")
+    @TableField("charging_pile")
+    private Integer chargingPile;
+
+    @ApiModelProperty(value = "补充资料")
+    @TableField("further_information")
+    private String furtherInformation;
+
+    @ApiModelProperty(value = "备注")
+    @TableField("remark")
+    private String remark;
+    private List<URL> urls;
+}
diff --git "a/ruoyi-service/ruoyi-chargingPile/src/main/resources/template/\345\205\205\347\224\265\346\241\251\347\224\263\350\257\267\350\256\260\345\275\225.xlsx" "b/ruoyi-service/ruoyi-chargingPile/src/main/resources/template/\345\205\205\347\224\265\346\241\251\347\224\263\350\257\267\350\256\260\345\275\225.xlsx"
new file mode 100644
index 0000000..1456be1
--- /dev/null
+++ "b/ruoyi-service/ruoyi-chargingPile/src/main/resources/template/\345\205\205\347\224\265\346\241\251\347\224\263\350\257\267\350\256\260\345\275\225.xlsx"
Binary files differ
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TChargingOrderController.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TChargingOrderController.java
index d8c37ed..1b3e8bd 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TChargingOrderController.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TChargingOrderController.java
@@ -11,6 +11,7 @@
 import com.ruoyi.common.core.web.page.PageInfo;
 import com.ruoyi.order.api.model.TChargingOrder;
 import com.ruoyi.order.api.model.TOrderEvaluate;
+import com.ruoyi.order.api.query.ChargingOrderQuery;
 import com.ruoyi.order.api.query.TChargingCountQuery;
 import com.ruoyi.order.api.vo.ChargingOrderVO;
 import com.ruoyi.order.dto.GetMyChargingOrderList;
@@ -71,8 +72,9 @@
     @ResponseBody
     @PostMapping(value = "/chargingOrder")
     @ApiOperation(value = "充电桩订单列表", tags = {"管理后台-订单管理"})
-    public AjaxResult<PageInfo<ChargingOrderVO>> chargingOrder(@RequestBody OrderEvaluateVo dto){
-        return AjaxResult.success();
+    public AjaxResult<PageInfo<ChargingOrderVO>> chargingOrder(@RequestBody ChargingOrderQuery dto){
+        PageInfo<ChargingOrderVO> res = chargingOrderService.chargingOrder(dto);
+        return AjaxResult.success(res);
     }
 
 
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/mapper/TChargingOrderMapper.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/mapper/TChargingOrderMapper.java
index 2cb8469..d36e263 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/mapper/TChargingOrderMapper.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/mapper/TChargingOrderMapper.java
@@ -1,7 +1,10 @@
 package com.ruoyi.order.mapper;
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.ruoyi.common.core.web.page.PageInfo;
 import com.ruoyi.order.api.model.TChargingOrder;
+import com.ruoyi.order.api.query.ChargingOrderQuery;
+import com.ruoyi.order.api.vo.ChargingOrderVO;
 import com.ruoyi.order.dto.GetNoInvoicedOrder;
 import org.apache.ibatis.annotations.Mapper;
 import org.apache.ibatis.annotations.Param;
@@ -42,4 +45,7 @@
 	 */
 	List<TChargingOrder> getNoInvoicedOrder(@Param("appUserId") Long appUserId, @Param("month") String month,
 	                                        @Param("pageCurr") Integer pageCurr, @Param("pageSize") Integer pageSize);
+
+    List<ChargingOrderVO> chargingOrder(@Param("pageInfo") PageInfo<ChargingOrderVO> pageInfo, ChargingOrderQuery dto, String startTime1, String startTime2, String endTime1, String endTime11);
+
 }
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/TChargingOrderService.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/TChargingOrderService.java
index 25c5c91..06c75b4 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/TChargingOrderService.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/TChargingOrderService.java
@@ -3,7 +3,10 @@
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.ruoyi.common.core.web.domain.AjaxResult;
 import com.ruoyi.common.core.web.page.BasePage;
+import com.ruoyi.common.core.web.page.PageInfo;
 import com.ruoyi.order.api.model.TChargingOrder;
+import com.ruoyi.order.api.query.ChargingOrderQuery;
+import com.ruoyi.order.api.vo.ChargingOrderVO;
 import com.ruoyi.order.dto.*;
 import org.springframework.web.bind.annotation.RequestBody;
 
@@ -78,4 +81,6 @@
 	 * @return
 	 */
 	AjaxResult stopCharging(String id);
+
+    PageInfo<ChargingOrderVO> chargingOrder(ChargingOrderQuery dto);
 }
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java
index d5521a8..f203995 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java
@@ -17,20 +17,25 @@
 import com.ruoyi.chargingPile.api.model.TChargingPile;
 import com.ruoyi.common.core.web.domain.AjaxResult;
 import com.ruoyi.common.core.web.page.BasePage;
+import com.ruoyi.common.core.web.page.PageInfo;
 import com.ruoyi.common.redis.service.RedisService;
 import com.ruoyi.common.security.service.TokenService;
 import com.ruoyi.common.security.utils.SecurityUtils;
 import com.ruoyi.order.api.model.TChargingOrder;
 import com.ruoyi.order.api.model.TChargingOrderAccountingStrategy;
+import com.ruoyi.order.api.query.ChargingOrderQuery;
+import com.ruoyi.order.api.vo.ChargingOrderVO;
 import com.ruoyi.order.dto.*;
 import com.ruoyi.order.mapper.TChargingOrderMapper;
 import com.ruoyi.order.service.TChargingOrderAccountingStrategyService;
 import com.ruoyi.order.service.TChargingOrderService;
+import com.ruoyi.other.api.domain.TVip;
 import com.ruoyi.payment.api.feignClient.WxPaymentClient;
 import com.ruoyi.payment.api.vo.NotifyV3PayDecodeRespBody;
 import com.ruoyi.payment.api.vo.PaymentOrder;
 import io.seata.spring.annotation.GlobalTransactional;
 import org.springframework.stereotype.Service;
+import org.springframework.util.StringUtils;
 
 import javax.annotation.Resource;
 import java.math.BigDecimal;
@@ -386,4 +391,27 @@
 		// todo 待完善
 		return AjaxResult.success();
 	}
+
+    @Override
+    public PageInfo<ChargingOrderVO> chargingOrder(ChargingOrderQuery dto) {
+		String startTime1 = null;
+		String startTime2 = null;
+		String endTime1 = null;
+		String endTime2 = null;
+
+		if (StringUtils.hasLength(dto.getStartTime())){
+			String[] split = dto.getStartTime().split(" - ");
+			startTime1 = split[0];
+			startTime2 = split[1];
+		}
+		if (StringUtils.hasLength(dto.getEndTime())){
+			String[] split = dto.getEndTime().split(" - ");
+			endTime1 = split[0];
+			endTime2 = split[1];
+		}
+		PageInfo<ChargingOrderVO> pageInfo = new PageInfo<>(dto.getPageCurr(),dto.getPageSize());
+		List<ChargingOrderVO> list = this.baseMapper.chargingOrder(pageInfo,dto,startTime1,startTime2,endTime1,endTime2);
+		pageInfo.setRecords(list);
+        return pageInfo;
+    }
 }
diff --git a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TCouponController.java b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TCouponController.java
index 08f6eae..17dc6c4 100644
--- a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TCouponController.java
+++ b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TCouponController.java
@@ -1,6 +1,7 @@
 package com.ruoyi.other.controller;
 
 
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.ruoyi.account.api.dto.GrantCouponDto;
 import com.ruoyi.account.api.feignClient.AppCouponClient;
 import com.ruoyi.account.api.query.ExchangeRecordGoodsQuery;
@@ -9,10 +10,12 @@
 import com.ruoyi.common.core.domain.R;
 import com.ruoyi.common.core.web.domain.AjaxResult;
 import com.ruoyi.common.core.web.page.PageInfo;
+import com.ruoyi.other.api.domain.Region;
 import com.ruoyi.other.api.domain.TCoupon;
 import com.ruoyi.other.api.domain.TGoods;
 import com.ruoyi.other.api.dto.GoodsDTO;
 import com.ruoyi.other.query.CouponQuery;
+import com.ruoyi.other.service.IRegionService;
 import com.ruoyi.other.service.TActivityService;
 import com.ruoyi.other.service.TCouponService;
 import com.ruoyi.other.service.TGoodsService;
@@ -23,6 +26,7 @@
 import io.swagger.annotations.ApiParam;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.util.StringUtils;
 import org.springframework.web.bind.annotation.*;
 
 import javax.annotation.Resource;
@@ -31,6 +35,7 @@
 import java.util.Arrays;
 import java.util.List;
 import java.util.Objects;
+import java.util.stream.Collectors;
 
 /**
  * <p>
@@ -112,9 +117,10 @@
     }
 
 
-
+    @Autowired
+    private IRegionService regionService;
     @ApiOperation(tags = {"管理后台-优惠券管理"},value = "发放优惠券")
-    @GetMapping(value = "/grantCoupon")
+    @PostMapping(value = "/grantCoupon")
     public AjaxResult grantCoupon(@RequestBody GrantCouponDto dto) {
         TCoupon byId = tCouponService.getById(dto.getCouponId());
         Integer waysToObtain = byId.getWaysToObtain();
@@ -127,18 +133,36 @@
                 dto.setEndTime(LocalDateTime.now().plusDays(byId.getDays()));
                 break;
         }
+        if (StringUtils.hasLength(dto.getProvinceCode())){
+            for (String s : dto.getProvinceCode().split(",")) {
+                Region code = regionService.getOne(new QueryWrapper<Region>()
+                        .eq("code", s));
+                List<String> collect = regionService.list(new QueryWrapper<Region>()
+                        .eq("parent_id", code.getId())).stream().map(Region::getCode).collect(Collectors.toList());
+                StringBuilder temp = new StringBuilder();
+                for (String string : collect) {
+                    temp.append(string).append(",");
+                }
+                if (StringUtils.hasLength(dto.getCityCode())){
+                    String s1 = dto.getCityCode() + "," + temp;
+                    // 去除最后一位字符
+                    dto.setCityCode(s1.substring(0, s1.length() - 1));
+                }else{
+                    String substring = temp.substring(0, temp.length() - 1);
+                    dto.setCityCode(substring);
+                }
+            }
+
+        }
         appCouponClient.grantCoupon(dto);
         return AjaxResult.success();
     }
-
-
 
     @ApiOperation(tags = {"管理后台-优惠券管理"},value = "优惠券列表分页查询")
     @PostMapping(value = "/pageList")
     public AjaxResult<PageInfo<TCoupon>> pageList(@RequestBody CouponQuery dto) {
         return AjaxResult.ok(tCouponService.pageList(dto));
     }
-
 
     /**
      * 小程序远程调用 获取优惠券信息
@@ -153,8 +177,6 @@
         return R.ok(list);
     }
 
-    
-    
     /**
      * 根据id获取优惠券信息
      * @param id
@@ -165,5 +187,6 @@
         TCoupon coupon = tCouponService.getById(id);
         return R.ok(coupon);
     }
+
 }
 
diff --git a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TGoodsController.java b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TGoodsController.java
index dd71e57..55fb297 100644
--- a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TGoodsController.java
+++ b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TGoodsController.java
@@ -16,7 +16,6 @@
 import com.ruoyi.other.api.domain.TGoods;
 import com.ruoyi.common.core.dto.ExchangeDto;
 import com.ruoyi.other.api.dto.AdvertisingDTO;
-import com.ruoyi.order.api.vo.ExchangeDto;
 import com.ruoyi.other.api.dto.GoodsDTO;
 import com.ruoyi.other.service.TActivityService;
 import com.ruoyi.other.service.TCouponService;

--
Gitblit v1.7.1