forked from kidgrow-microservices-platform

zhaoxiaohao
2020-09-22 9668e28daa836b97a5ae6440ee5b472306287732
添加支付页面的功能
2 files added
10 files modified
357 ■■■■ changed files
kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-api/src/main/java/com/kidgrow/oprationcenter/model/SaasClientPay.java 12 ●●●● patch | view | raw | blame | history
kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-api/src/main/java/com/kidgrow/oprationcenter/vo/SaasClientPayExcel.java 50 ●●●●● patch | view | raw | blame | history
kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-api/src/main/java/com/kidgrow/oprationcenter/vo/SaasClientPayVo.java 23 ●●●●● patch | view | raw | blame | history
kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/pom.xml 6 ●●●●● patch | view | raw | blame | history
kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/ISaasClientPayService.java 16 ●●●●● patch | view | raw | blame | history
kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/impl/SaasClientPayServiceImpl.java 104 ●●●●● patch | view | raw | blame | history
kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/resources/mapper/SaasClientPayMapper.xml 91 ●●●●● patch | view | raw | blame | history
kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-server/src/main/java/com/kidgrow/oprationcenter/controller/SaasClientPayController.java 25 ●●●●● patch | view | raw | blame | history
kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-server/src/main/java/com/kidgrow/oprationcenter/controller/alipay/AlipayController.java 2 ●●● patch | view | raw | blame | history
kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-server/src/main/java/com/kidgrow/oprationcenter/controller/weixin/WxController.java 2 ●●● patch | view | raw | blame | history
kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-server/src/main/resources/application.yml 24 ●●●●● patch | view | raw | blame | history
kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/dataNeed.html 2 ●●● patch | view | raw | blame | history
kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-api/src/main/java/com/kidgrow/oprationcenter/model/SaasClientPay.java
@@ -30,6 +30,7 @@
public class SaasClientPay {
    private static final long serialVersionUID = 1L;
    @TableId(value = "id",type = IdType.UUID)
    private String id;
    /**
     * 诊断医生所在科室
@@ -77,6 +78,11 @@
    @NotEmpty(message = "关联诊断记录ID不能为空")
    private String diaId;
    /**
     * 孩子的id
     */
    @NotEmpty(message = "孩子的id")
    private String childId;
    /**
     * 支付宝交易号  微信支付订单号
     */
    private String tradeNo;
@@ -87,11 +93,11 @@
    /**
     * 支付给喜高的费用
     */
    private String payKidgrow;
    private Integer payKidgrow;
    /**
     * 支付给客户的费用
    支付给客户的费用
     */
    private String payCustom;
    private Integer payCustom;
    /**
     * 支付状态
     */
kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-api/src/main/java/com/kidgrow/oprationcenter/vo/SaasClientPayExcel.java
New file
@@ -0,0 +1,50 @@
package com.kidgrow.oprationcenter.vo;
import cn.afterturn.easypoi.excel.annotation.Excel;
import com.kidgrow.common.constant.CommonConstant;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
@Data
public class SaasClientPayExcel implements Serializable {
    private static final long serialVersionUID = -5886012896705137070L;
    @Excel(name = "支付id", height = 20, width = 30, isImportField = "true_st")
    private String id;
    @Excel(name = "医院名称", height = 20, width = 30, isImportField = "true_st")
    private String createHospitalName;
    @Excel(name = "科室", height = 20, width = 30, isImportField = "true_st")
    private String createHospitalDepartment;
    @Excel(name = "诊断人", height = 20, width = 30, isImportField = "true_st")
    private String createUserName;
    @Excel(name = "患者姓名", height = 20, width = 30, isImportField = "true_st")
    private String childName;
    @Excel(name = "性别", replace = { "男_0", "女_1" }, isImportField = "true_st")
    private Integer childSex;
    @Excel(name = "出生日期", format = CommonConstant.DATETIME_FORMAT, isImportField = "true_st", width = 20)
    private Date childBirthday;
    @Excel(name = "订单号", height = 20, width = 30, isImportField = "true_st")
    private String tradeNo;
    @Excel(name = "支付日期", format = CommonConstant.DATETIME_FORMAT, isImportField = "true_st", width = 20)
    private Date payTime;
    @Excel(name = "支付方式", replace = { "微信_0", "支付宝_1" }, isImportField = "true_st")
    private Integer payMethod;
    @Excel(name = "支付费用", height = 20, width = 30, isImportField = "true_st")
    private Double payPrice;
    @Excel(name = "给医生", height = 20, width = 30, isImportField = "true_st")
    private Double payCustom;
    @Excel(name = "给喜高", height = 20, width = 30, isImportField = "true_st")
    private Double payKidgrow;
}
kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-api/src/main/java/com/kidgrow/oprationcenter/vo/SaasClientPayVo.java
New file
@@ -0,0 +1,23 @@
package com.kidgrow.oprationcenter.vo;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.kidgrow.oprationcenter.model.SaasClientPay;
import lombok.Data;
import java.util.Date;
@Data
public class SaasClientPayVo extends SaasClientPay {
    private String childName;
    /**
     * 孩子的出生日期
     */
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "Asia/Shanghai")
    private Date childBirthday;
    /**
     * 孩子的性别
     */
    private Integer childSex;
    private String price;
}
kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/pom.xml
@@ -25,6 +25,12 @@
            <groupId>com.kidgrow</groupId>
            <artifactId>kidgrow-usercenter-api</artifactId>
        </dependency>
<!--        调用record-->
        <dependency>
            <groupId>com.kidgrow</groupId>
            <artifactId>kidgrow-recordcenter-api</artifactId>
            <version>1.0</version>
        </dependency>
        <!-- 消息总线rabbitMQ -->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/ISaasClientPayService.java
@@ -4,7 +4,10 @@
import com.kidgrow.common.model.PageResult;
import com.kidgrow.common.service.ISuperService;
import com.kidgrow.oprationcenter.model.SaasClientPay;
import com.kidgrow.oprationcenter.vo.SaasClientPayExcel;
import com.kidgrow.oprationcenter.vo.SaasClientPayVo;
import java.util.List;
import java.util.Map;
/**
@@ -21,7 +24,7 @@
     * @param params
     * @return
     */
    PageResult<SaasClientPay> findList(Map<String, Object> params);
    PageResult<SaasClientPayVo> findList(Map<String, Object> params);
    /**
@@ -30,5 +33,16 @@
    * @return SaasClientPay对象
    */
    SaasClientPay findByObject(SaasClientPay saasClientPay);
    /**
     * 批量结算
     * @param list
     */
    void updateTypeList(List<String> list);
    /**
     * 导出
     * @param params
     */
    List<SaasClientPayExcel> export(Map<String, Object> params);
}
kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/impl/SaasClientPayServiceImpl.java
@@ -1,15 +1,28 @@
package com.kidgrow.oprationcenter.service.impl;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.kidgrow.common.model.PageResult;
import com.kidgrow.common.model.ResultBody;
import com.kidgrow.common.service.impl.SuperServiceImpl;
import com.kidgrow.common.utils.StringUtils;
import com.kidgrow.oprationcenter.mapper.SaasClientPayMapper;
import com.kidgrow.oprationcenter.model.SaasClientPay;
import com.kidgrow.oprationcenter.service.ISaasClientPayService;
import com.kidgrow.oprationcenter.vo.SaasClientPayExcel;
import com.kidgrow.oprationcenter.vo.SaasClientPayVo;
import com.kidgrow.recordcenter.feign.ChildService;
import com.kidgrow.recordcenter.model.Child;
import com.kidgrow.usercenter.feign.SysDoctorService;
import com.kidgrow.usercenter.model.SysDoctor;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.MapUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.cglib.beans.BeanCopier;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -30,11 +43,52 @@
     * @param params
     * @return
     */
    @Autowired
    private SysDoctorService sysDoctorService;
    @Autowired
    private ChildService childService;
    @Override
    public PageResult<SaasClientPay> findList(Map<String, Object> params){
    public PageResult<SaasClientPayVo> findList(Map<String, Object> params){
        Long doctorId = MapUtils.getLong(params, "doctorId");
        if (doctorId!=null) {
            ResultBody byId = sysDoctorService.findById(doctorId);
            if (byId.getCode()==0) {
                Object data = byId.getData();
                SysDoctor sysDoctor = JSON.parseObject(JSON.toJSONString(data), SysDoctor.class);
                if (sysDoctor!=null) {
                    params.put("createUserId",sysDoctor.getUserId());
                }
            }
            params.remove("doctorId");
        }
        Page<SaasClientPay> page = new Page<>(MapUtils.getInteger(params, "page"), MapUtils.getInteger(params, "limit"));
        List<SaasClientPay> list  =  baseMapper.findList(page, params);
        return PageResult.<SaasClientPay>builder().data(list).code(0).count(page.getTotal()).build();
        List<SaasClientPayVo> listVo=null;
        if (!list.isEmpty()) {
            listVo=new ArrayList<>();
            for (SaasClientPay saasClientPay : list) {
                SaasClientPayVo vo=new SaasClientPayVo();
                BeanCopier beanCopier = BeanCopier.create(SaasClientPay.class, SaasClientPayVo.class, false);
                beanCopier.copy(saasClientPay,vo,null);
                double v = Double.parseDouble(vo.getPayPrice().toString())/100;
                vo.setPrice(v+"");
                if (StringUtils.isNotBlank(vo.getChildId())) {
                    Map<String,Object> map=new HashMap<>();
                    map.put("id",vo.getChildId());
                    ResultBody byId = childService.findById(map);
                    if(byId.getCode()==0){
                        Child parse = JSON.parseObject(JSON.toJSONString(byId.getData()), Child.class);
                        if(parse!=null){
                            vo.setChildName(parse.getChildName());
                            vo.setChildSex(parse.getChildSex());
                            vo.setChildBirthday(parse.getChildBirthday());
                        }
                    }
                }
                listVo.add(vo);
            }
        }
        return PageResult.<SaasClientPayVo>builder().data(listVo).code(0).count(page.getTotal()).build();
    }
    /**
@@ -46,4 +100,50 @@
    public SaasClientPay findByObject(SaasClientPay saasClientPay){
        return baseMapper.findByObject(saasClientPay);
    }
    @Override
    public void updateTypeList(List<String> list) {
        for (String s : list) {
            SaasClientPay saasClientPay = this.baseMapper.selectById(s);
            if(saasClientPay!=null){
                saasClientPay.setType(true);
                this.saveOrUpdate(saasClientPay);
            }
        }
    }
    @Override
    public  List<SaasClientPayExcel> export(Map<String, Object> params) {
        List<SaasClientPay> list  =  baseMapper.findList(new Page<>(1, -1), params);
        List<SaasClientPayExcel> listVo=null;
        if (!list.isEmpty()) {
            listVo=new ArrayList<>();
            for (SaasClientPay saasClientPay : list) {
                SaasClientPayExcel vo=new SaasClientPayExcel();
                BeanCopier beanCopier = BeanCopier.create(SaasClientPay.class, SaasClientPayExcel.class, false);
                beanCopier.copy(saasClientPay,vo,null);
                Double v = Double.parseDouble(saasClientPay.getPayPrice().toString())/100;
                vo.setPayPrice(v);
                Double vc = Double.parseDouble(saasClientPay.getPayCustom().toString())/100;
                vo.setPayCustom(vc);
                Double vk = Double.parseDouble(saasClientPay.getPayKidgrow().toString())/100;
                vo.setPayKidgrow(vk);
                if (StringUtils.isNotBlank(saasClientPay.getChildId())) {
                    Map<String,Object> map=new HashMap<>();
                    map.put("id",saasClientPay.getChildId());
                    ResultBody byId = childService.findById(map);
                    if(byId.getCode()==0){
                        Child parse = JSON.parseObject(JSON.toJSONString(byId.getData()), Child.class);
                        if(parse!=null){
                            vo.setChildName(parse.getChildName());
                            vo.setChildSex(parse.getChildSex());
                            vo.setChildBirthday(parse.getChildBirthday());
                        }
                    }
                }
                listVo.add(vo);
            }
        }
        return listVo;
    }
}
kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/resources/mapper/SaasClientPayMapper.xml
@@ -12,66 +12,76 @@
        <where>
            <!--查询条件自行添加-->
            is_del=0
                                    <if test="p.id != null and p.id !=''">
                and  id =  #{p.id}
            <if test="p.id != null and p.id !=''">
                and id = #{p.id}
            </if>
                                                <if test="p.createHospitalDepartment != null and p.createHospitalDepartment !=''">
                and  create_hospital_department =  #{p.createHospitalDepartment}
            <if test="p.createHospitalDepartment != null and p.createHospitalDepartment !=''">
                and create_hospital_department = #{p.createHospitalDepartment}
            </if>
                                                <if test="p.createHospitalDepartid != null and p.createHospitalDepartid !=''">
                and  create_hospital_departid =  #{p.createHospitalDepartid}
            <if test="p.createHospitalDepartid != null and p.createHospitalDepartid !=''">
                and create_hospital_departid = #{p.createHospitalDepartid}
            </if>
                                                <if test="p.createHospitalId != null and p.createHospitalId !=''">
                and  create_hospital_id =  #{p.createHospitalId}
            <if test="p.createHospitalId != null and p.createHospitalId !=''">
                and create_hospital_id = #{p.createHospitalId}
            </if>
                                                <if test="p.createHospitalName != null and p.createHospitalName !=''">
                and  create_hospital_name =  #{p.createHospitalName}
            <if test="p.createHospitalName != null and p.createHospitalName !=''">
                and create_hospital_name = #{p.createHospitalName}
            </if>
                                                <if test="p.payPrice != null and p.payPrice !=''">
                and  pay_price =  #{p.payPrice}
            <if test="p.payPrice != null and p.payPrice !=''">
                and pay_price = #{p.payPrice}
            </if>
                                                <if test="p.outTradeNo != null and p.outTradeNo !=''">
                and  out_trade_no =  #{p.outTradeNo}
            <if test="p.outTradeNo != null and p.outTradeNo !=''">
                and out_trade_no = #{p.outTradeNo}
            </if>
                                                <if test="p.payTime != null and p.payTime !=''">
                and  pay_time =  #{p.payTime}
            <if test="p.payTime != null and p.payTime !=''">
                and pay_time = #{p.payTime}
            </if>
                                                <if test="p.payStatus != null and p.payStatus !=''">
                and  pay_status =  #{p.payStatus}
            <if test="p.endTime != null and p.endTime !=''">
                and DATE_FORMAT( pay_time, '%Y-%m-%d') &lt;= #{p.endTime}
            </if>
                                                <if test="p.payMethod != null and p.payMethod !=''">
                and  pay_method =  #{p.payMethod}
            <if test="p.startTime != null and p.startTime !=''">
                and DATE_FORMAT( pay_time, '%Y-%m-%d') &gt;= #{p.startTime}
            </if>
                                                <if test="p.diaId != null and p.diaId !=''">
                and  dia_id =  #{p.diaId}
            <if test="p.payStatus != null and p.payStatus !=''">
                and pay_status = #{p.payStatus}
            </if>
                                                <if test="p.tradeNo != null and p.tradeNo !=''">
                and  trade_no =  #{p.tradeNo}
            <if test="p.payMethod != null and p.payMethod !=''">
                and pay_method = #{p.payMethod}
            </if>
                                                <if test="p.prepayId != null and p.prepayId !=''">
                and  prepay_id =  #{p.prepayId}
            <if test="p.diaId != null and p.diaId !=''">
                and dia_id = #{p.diaId}
            </if>
                                                <if test="p.createUserId != null and p.createUserId !=''">
                and  create_user_id =  #{p.createUserId}
            <if test="p.tradeNo != null and p.tradeNo !=''">
                and trade_no = #{p.tradeNo}
            </if>
                                                <if test="p.createUserName != null and p.createUserName !=''">
                and  create_user_name =  #{p.createUserName}
            <if test="p.prepayId != null and p.prepayId !=''">
                and prepay_id = #{p.prepayId}
            </if>
                                                <if test="p.updateUserId != null and p.updateUserId !=''">
                and  update_user_id =  #{p.updateUserId}
            <if test="p.type != null ">
                and  type =  #{p.type}
            </if>
                                                <if test="p.updateUserName != null and p.updateUserName !=''">
                and  update_user_name =  #{p.updateUserName}
            <if test="p.createUserId != null and p.createUserId !=''">
                and create_user_id = #{p.createUserId}
            </if>
                                                <if test="p.updateTime != null and p.updateTime !=''">
                and  update_time =  #{p.updateTime}
            <if test="p.createUserName != null and p.createUserName !=''">
                and create_user_name = #{p.createUserName}
            </if>
                                </where>
            <if test="p.updateUserId != null and p.updateUserId !=''">
                and update_user_id = #{p.updateUserId}
            </if>
            <if test="p.updateUserName != null and p.updateUserName !=''">
                and update_user_name = #{p.updateUserName}
            </if>
            <if test="p.updateTime != null and p.updateTime !=''">
                and update_time = #{p.updateTime}
            </if>
        </where>
    </sql>
    <!--定义根据-SaasClientPay当作查询条件返回对象-->
    <select id="findByObject"  resultType="com.kidgrow.oprationcenter.model.SaasClientPay">
        select <include refid="Column_List"/>
    <select id="findByObject" resultType="com.kidgrow.oprationcenter.model.SaasClientPay">
        select
        <include refid="Column_List"/>
        from saas_client_pay
        <include refid="where"/>
        order by id desc
@@ -80,7 +90,8 @@
    <!--定义根据-SaasClientPay当作查询条件返回对象集合-->
    <select id="findList" resultType="com.kidgrow.oprationcenter.model.SaasClientPay">
        select <include refid="Column_List"/>
        select
        <include refid="Column_List"/>
        from saas_client_pay
        <include refid="where"/>
        order by id desc
kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-server/src/main/java/com/kidgrow/oprationcenter/controller/SaasClientPayController.java
@@ -3,8 +3,10 @@
import com.kidgrow.common.controller.BaseController;
import com.kidgrow.common.model.PageResult;
import com.kidgrow.common.model.ResultBody;
import com.kidgrow.common.utils.ExcelUtil;
import com.kidgrow.oprationcenter.model.SaasClientPay;
import com.kidgrow.oprationcenter.service.ISaasClientPayService;
import com.kidgrow.oprationcenter.vo.SaasClientPayExcel;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
@@ -15,7 +17,9 @@
import org.springframework.validation.ObjectError;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletResponse;
import javax.validation.Valid;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
@@ -46,12 +50,29 @@
            @ApiImplicitParam(name = "limit", value = "分页结束位置", required = true, dataType = "Integer")
    })
    @GetMapping
    public ResultBody<PageResult> list(@RequestParam Map<String, Object> params) {
    public PageResult list(@RequestParam Map<String, Object> params) {
        if(params.size()==0){
            params.put("page",1);
            params.put("limit",10);
        }
        return ResultBody.ok().data(saasClientPayService.findList(params));
        return saasClientPayService.findList(params);
    }
    /**
     * 批量结算
     */
    @ApiOperation(value = "批量结算")
    @PostMapping("/updateTypeList")
    public ResultBody updateTypeList(@RequestBody List<String> list) {
         saasClientPayService.updateTypeList(list);
         return ResultBody.ok();
    }
    @ApiOperation(value = "导出")
    @PostMapping("/export")
    public ResultBody export(@RequestParam Map<String, Object> params, HttpServletResponse response)  throws IOException {
        List<SaasClientPayExcel> saasClientPayExcel=saasClientPayService.export(params);
        //导出操作
        ExcelUtil.exportExcel(saasClientPayExcel, null, "支付导出", SaasClientPayExcel.class, "saas_client_pay", response);
        return ResultBody.ok().msg("导出成功");
    }
    /**
kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-server/src/main/java/com/kidgrow/oprationcenter/controller/alipay/AlipayController.java
@@ -77,7 +77,7 @@
            return ResultBody.failed().data("生成二维码失败");
        }
        String content=alipayTradePrecreateResponse.getQrCode();
        String base64 = QRCodeUtil.creatRrCode(content, 200, 200, 0);
        String base64 = QRCodeUtil.creatRrCode(content, 200, 200, 0).replaceAll("\n","").replaceAll("\r","");
        System.out.println(base64);
        return ResultBody.ok().data(base64);
    }
kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-server/src/main/java/com/kidgrow/oprationcenter/controller/weixin/WxController.java
@@ -87,7 +87,7 @@
        saasClientPay.setPayMethod(0);
        saasClientPay.setDiaId("1");
        boolean save = iSaasClientPayService.saveOrUpdate(saasClientPay);
        String s = QRCodeUtil.creatRrCode(resultStr, 200, 200, 0);
        String s = QRCodeUtil.creatRrCode(resultStr, 200, 200, 0).replaceAll("\n","").replaceAll("\r","");
        return ResultBody.ok().data(s);
    }
    @RequestMapping("/callback")
kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-server/src/main/resources/application.yml
@@ -90,8 +90,32 @@
      - product_order
      - product_order_detail
      - product_order_record
      - saas_client_pay
    ignoreSqls:
      - com.kidgrow.usercenter.mapper.SysRoleMapper.findAll
      - com.kidgrow.oprationcenter.mapper.ConsumptionRecordMapper.findDetailList
pay:
  #微信app支付
  wxpay:
    app:
      appID: wx84c77dcda51c612c
      mchID: 1386873502
      key: GSFcX6WdgRTAS6154EW14WE3SGBSER49
      certPath: D:\develop\chengxu\houtai\3cc.txt # 从微信商户平台下载的安全证书存放的路径、我放在resources下面,切记一定要看看target目录下的class文件下有没有打包apiclient_cert.p12文件
      payNotifyUrl: http://open.zuul.kidgrow.cloud/api-record/wxController/callback # 微信支付成功的异步通知接口
  #支付宝app支付
  alipay:
    appId: 2017021705718280
    gatewayUrl: https://openapi.alipay.com/gateway.do
    format: JSON
    charset: utf-8
    signType: RSA2
    returnUrl: http://open.zuul.kidgrow.cloud/api-record/alipay/return
    notifyUrl: http://open.zuul.kidgrow.cloud/api-record/alipay/notify
    app-private-key: MIIEowIBAAKCAQEA9wDq+cxVvN3q3sUdqku/vHGwddzj5a7Re1ixbDZUPX/8CLvMTPZo8qJ0j14HxnjgVMCX3Wo1u5L4zPlqXzW5UVhPuVUnr5VToRGrOspOZBfY81gj/fJGmF2Mln0XlSqeoPRAS9SGEdEa9S87mAX3BjtyZhU2a7gxnd1/ca2QJxwgMXLX00MJl3ZrpngVFYXR/s16MV87FVq+Gfhk8tTPT25PVfufUmS7RRbiZriirNQPOYgCKQ4mi03oAGXTZGS2I3V59iph2ui89IJm4iS11t4RLqQf8Yyr+Z0rTaIfqJPQ9QMaJdl1VRaFU2jGToGIWpVe7eP/mWfG4ZBYlrVvhQIDAQABAoIBADVgG2bTgwuHIQP2sIxmRg6gurMdgpnVhysSZXSu4NFRYNM6UdGnxdH4zRtWBHQdFsz5uVd9ZhMclWsl0pi0cVFktgWkoyjMKgA6YzgXE42JobYkK9LqkdrHDGRQr9HqHdFGNsasLDSZbSvigww87b6JBhWNK+9nJEGq5alZCjeI7bTK8YlFmOlgRJ6oe1tzmYOpQMDwsZoWFx9xN9+SHursZ8bQymTRLcfZIt6vMK8rv0L/MIhxCC51hxT88gyT5Pm4087c30qbS5IlpeKqPC0TkVuvRgASZ348dP09Lf6KpAf06cMixeu0SSCGVOGyqCDgI/yn2H9XCk6++HyyCNkCgYEA/fNmCoBMSbhayyAU9TF/UPF9Msyy465JuHp1yKYJaM1L/a2C3YG7gjO8tvVxq64qFH62b4XU+Qq/arIHHdiGObzLN101oRtAqCMG8IWgM1Rd66HvEwyOnroqZarSnSmg1Uwktz9qFdmRGhGB4ePGfDWQ6yxm7l9H/U/VHalFOF8CgYEA+P8rBSP7AyKDGOXiPRFFkuOK++bxWQ0yC0V7m/XYsihqEfhunMPoHlUDpHM6d571ftHXCljdQ+0hK7xGXAD4Tqyf9wsK+/oRwOrEdHCLU9k8iFVYbo5KO/IwqXpsrlrI2ragPod8xETIGzxqm9IsSDQNXcvnViZI09cxyj6OcpsCgYArK6ZsIJVXbuyYXVLSv+BZ3UOgUCYVCHrlzoOZYYh19Xh2nnmBuF0s7CinnZ/+RHRI2aWf3ctvrsENnUgSbc2boRmWxtSoF57tNk8mskCimTQCK5wdy+Ou3gz5DYoSR5Jc0D3pnPEm176QBOvkf7ktQlnpcLnqye3OBTVAfpcS1wKBgQCOm55pCE14YyjQdsFXlm/RjC8KzR9HkI4r9HSyQ2ED0K/HcRDxCicEUE6QvkorPsh+BPLzgyffAo4v/VoS0Z9ld+r6U8HLxVKrugogYmD5+f54WuEWGLqdkL2cI3jhdy94TIaEqZak1nwBVV39tqcUB3PsV588MRse8S4cFi4BpwKBgEZTMUcEQ2pHIrcVZXHSp5GTBXY70J5xCh+uO5F4iBhmVWaqOECi1/c6Nz3SYyizsIspZG3gzYvEoe7KVaMmkCWlRW0NcXMuN0KnE70J4YoFw3WhWKNh0zQAL57lMAQkPoZVusYePCQyct9j7EboNoPgyB2CvKU152FJkkl1c4XB
    alipay-public-key: MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAlxD+qCFXTnJrwbGgKPNEcZqrPpHnNoJDTdP+zhWI7ABv/rASfOhWZi56vyQhKldgbc01VBFa0myTpECHlPMZn32DGNg8DIxuV+LEIT+l2Lqjn4wQtX3zUNPHR3bTZlMEVw9JYQZI+XR2i4ZWoOszo6ahAO9SxEuNUlsCSBDMEIPaEjGJmu57X+os8TRlgj8Mxo90JVqSZlRq7eFc7wVTMe5e9p9ITctdiB+utkO0/rSh4T+VUaV1zNk8/n5jh0xDSXL4QdEe832Naeu67Y6w6vezkvF9GUwEmfJqs6PH3sF1gOKgjakbFXauEOJXnXEdyMmOKhG93jT+9GtvV/ywmwIDAQAB
kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/dataNeed.html
@@ -268,7 +268,7 @@
            xhr.setRequestHeader("Authorization", "Bearer " + config.getToken().access_token);
            xhr.onload = function () {
                if (this.status == 200) {
                    var fileName = "user.xlsx";
                    var fileName = "数据需求.xlsx";
                    var blob = this.response;
                    var a = document.createElement('a');
                    a.innerHTML = fileName;