diff --git a/src/main/java/com/yxt/yythmall/adminapi/AdminReserveRest.java b/src/main/java/com/yxt/yythmall/adminapi/AdminReserveRest.java index 843cf89..815cf06 100644 --- a/src/main/java/com/yxt/yythmall/adminapi/AdminReserveRest.java +++ b/src/main/java/com/yxt/yythmall/adminapi/AdminReserveRest.java @@ -1,11 +1,13 @@ package com.yxt.yythmall.adminapi; +import com.alibaba.excel.EasyExcel; +import com.alibaba.excel.ExcelWriter; +import com.alibaba.excel.write.metadata.WriteSheet; +import com.baomidou.mybatisplus.core.metadata.IPage; import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.result.ResultBean; -import com.yxt.common.core.vo.PagerVo; import com.yxt.yythmall.api.lpkreserveorder.LpkReserveOrderQuery; -import com.yxt.yythmall.biz.vegecallerreserveorder.ReserveOrderVo; -import com.yxt.yythmall.biz.vegecallerreserveorder.VegeCellarReserveOrderService; +import com.yxt.yythmall.biz.vegecallerreserveorder.*; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.PostMapping; @@ -13,6 +15,13 @@ import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; +import javax.servlet.http.HttpServletResponse; +import java.io.IOException; +import java.net.URLEncoder; +import java.util.List; +import java.util.Map; +import java.util.concurrent.atomic.AtomicInteger; + @RestController("com.yxt.yythmall.adminapi.AdminReserveRest") @RequestMapping("/adminapi/reserve") public class AdminReserveRest { @@ -22,7 +31,97 @@ public class AdminReserveRest { @ApiOperation("精确到客户的预约单列表") @PostMapping("/pageOfCustomer") - public ResultBean> orderList(@RequestBody PagerQuery pq) { + public ResultBean> pageOfCustomer(@RequestBody PagerQuery pq) { return vegeCellarReserveOrderService.pageOfCustomer(pq); } + + @PostMapping("/expExcelOfCustomer") + public void expExcelOfCustomer(@RequestBody LpkReserveOrderQuery pq, HttpServletResponse response) throws IOException { + // 这里注意 有同学反应使用swagger 会导致各种问题,请直接用浏览器或者用postman + response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"); + response.setCharacterEncoding("utf-8"); + // 这里URLEncoder.encode可以防止中文乱码 当然和easyexcel没有关系 + String fileName = URLEncoder.encode("预约单明细", "UTF-8").replaceAll("\\+", "%20"); + response.setHeader("Content-disposition", "attachment;filename*=utf-8''" + fileName + ".xlsx"); + Map> map = vegeCellarReserveOrderService.mapForExcelCustomer(pq); +// EasyExcel.write(response.getOutputStream(), RpHzcExcel.class).sheet("cck").doWrite(list); + try (ExcelWriter excelWriter = EasyExcel.write(response.getOutputStream(), ReserveCustomerExcel.class).build()) { + AtomicInteger i= new AtomicInteger(); + map.forEach((key,val) ->{ + WriteSheet writeSheet = EasyExcel.writerSheet(i.get(),key).build(); + i.getAndIncrement(); + excelWriter.write(val, writeSheet); + }); + } + } + + @ApiOperation("精确到客户的预约单列表") + @PostMapping("/pageOfStore") + public ResultBean> pageOfStore(@RequestBody PagerQuery pq) { + return vegeCellarReserveOrderService.pageOfStore(pq); + } + + @PostMapping("/expExcelOfStore") + public void expExcelOfStore(@RequestBody LpkReserveOrderQuery pq, HttpServletResponse response) throws IOException { + // 这里注意 有同学反应使用swagger 会导致各种问题,请直接用浏览器或者用postman + response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"); + response.setCharacterEncoding("utf-8"); + // 这里URLEncoder.encode可以防止中文乱码 当然和easyexcel没有关系 + String fileName = URLEncoder.encode("提货点配货单", "UTF-8").replaceAll("\\+", "%20"); + response.setHeader("Content-disposition", "attachment;filename*=utf-8''" + fileName + ".xlsx"); + Map> map = vegeCellarReserveOrderService.mapForExcelStore(pq); +// EasyExcel.write(response.getOutputStream(), RpHzcExcel.class).sheet("cck").doWrite(list); + try (ExcelWriter excelWriter = EasyExcel.write(response.getOutputStream(), ReserveStoreExcel.class).build()) { + AtomicInteger i= new AtomicInteger(); + map.forEach((key,val) ->{ + WriteSheet writeSheet = EasyExcel.writerSheet(i.get(),key).build(); + i.getAndIncrement(); + excelWriter.write(val, writeSheet); + }); + } + } + + @ApiOperation("精确到客户的预约单列表") + @PostMapping("/pageOfBank") + public ResultBean> pageOfBank(@RequestBody PagerQuery pq) { + return vegeCellarReserveOrderService.pageOfBank(pq); + } + + @PostMapping("/expExcelOfBank") + public void expExcelOfBank(@RequestBody LpkReserveOrderQuery pq, HttpServletResponse response) throws IOException { + // 这里注意 有同学反应使用swagger 会导致各种问题,请直接用浏览器或者用postman + response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"); + response.setCharacterEncoding("utf-8"); + // 这里URLEncoder.encode可以防止中文乱码 当然和easyexcel没有关系 + String fileName = URLEncoder.encode("提货点配货单", "UTF-8").replaceAll("\\+", "%20"); + response.setHeader("Content-disposition", "attachment;filename*=utf-8''" + fileName + ".xlsx"); + Map> map = vegeCellarReserveOrderService.mapForExcelBank(pq); +// EasyExcel.write(response.getOutputStream(), RpHzcExcel.class).sheet("cck").doWrite(list); + try (ExcelWriter excelWriter = EasyExcel.write(response.getOutputStream(), ReserveBankExcel.class).build()) { + AtomicInteger i= new AtomicInteger(); + map.forEach((key,val) ->{ + WriteSheet writeSheet = EasyExcel.writerSheet(i.get(),key).build(); + i.getAndIncrement(); + excelWriter.write(val, writeSheet); + }); + } + } + + @ApiOperation("精确到客户的预约单列表") + @PostMapping("/pageOfAll") + public ResultBean> pageOfAll(@RequestBody PagerQuery pq) { + return vegeCellarReserveOrderService.pageOfAll(pq); + } + + @PostMapping("/expExcelOfAll") + public void expExcelOfAll(@RequestBody LpkReserveOrderQuery pq, HttpServletResponse response) throws IOException { + // 这里注意 有同学反应使用swagger 会导致各种问题,请直接用浏览器或者用postman + response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"); + response.setCharacterEncoding("utf-8"); + // 这里URLEncoder.encode可以防止中文乱码 当然和easyexcel没有关系 + String fileName = URLEncoder.encode("提货点配货单", "UTF-8").replaceAll("\\+", "%20"); + response.setHeader("Content-disposition", "attachment;filename*=utf-8''" + fileName + ".xlsx"); + List list = vegeCellarReserveOrderService.listForExcelAll(pq); + EasyExcel.write(response.getOutputStream(), ReserveAllExcel.class).sheet("总配货明细").doWrite(list); + } } diff --git a/src/main/java/com/yxt/yythmall/biz/vegecallerreserveorder/ReserveAllExcel.java b/src/main/java/com/yxt/yythmall/biz/vegecallerreserveorder/ReserveAllExcel.java new file mode 100644 index 0000000..11446e4 --- /dev/null +++ b/src/main/java/com/yxt/yythmall/biz/vegecallerreserveorder/ReserveAllExcel.java @@ -0,0 +1,26 @@ +package com.yxt.yythmall.biz.vegecallerreserveorder; + +import com.alibaba.excel.annotation.ExcelProperty; +import com.alibaba.excel.annotation.write.style.ColumnWidth; +import lombok.EqualsAndHashCode; +import lombok.Getter; +import lombok.Setter; + +@Getter +@Setter +@EqualsAndHashCode +public class ReserveAllExcel { + + @ColumnWidth(20) + @ExcelProperty(value = "预约时间", index = 0) + private String reserveDate; + @ColumnWidth(20) + @ExcelProperty(value = "礼包名称", index = 1) + private String brandName; + @ColumnWidth(20) + @ExcelProperty(value = "商品名称", index = 2) + private String goodsName; + @ColumnWidth(20) + @ExcelProperty(value = "商品数量(份)", index = 3) + private String goodsNumber; +} diff --git a/src/main/java/com/yxt/yythmall/biz/vegecallerreserveorder/ReserveBankExcel.java b/src/main/java/com/yxt/yythmall/biz/vegecallerreserveorder/ReserveBankExcel.java new file mode 100644 index 0000000..4a8ce38 --- /dev/null +++ b/src/main/java/com/yxt/yythmall/biz/vegecallerreserveorder/ReserveBankExcel.java @@ -0,0 +1,38 @@ +package com.yxt.yythmall.biz.vegecallerreserveorder; + +import com.alibaba.excel.annotation.ExcelProperty; +import com.alibaba.excel.annotation.write.style.ColumnWidth; +import lombok.EqualsAndHashCode; +import lombok.Getter; +import lombok.Setter; + +@Getter +@Setter +@EqualsAndHashCode +public class ReserveBankExcel { + + @ColumnWidth(20) + @ExcelProperty(value = "预约时间",index = 0) + private String reserveDate; + @ColumnWidth(20) + @ExcelProperty(value = "支行",index = 1) + private String bankName; + @ColumnWidth(20) + @ExcelProperty(value = "礼包名称",index = 2) + private String brandName; + @ColumnWidth(20) + @ExcelProperty(value = "商品名称",index = 3) + private String goodsName; + @ColumnWidth(20) + @ExcelProperty(value = "商品数量(份)",index = 4) + private String goodsNumber; + @ColumnWidth(20) + @ExcelProperty(value = "支行联系人",index = 5) + private String storeLinker; + @ColumnWidth(20) + @ExcelProperty(value = "支行电话",index = 6) + private String storePhone; + @ColumnWidth(50) + @ExcelProperty(value = "支行地址",index = 7) + private String storeAddress; +} diff --git a/src/main/java/com/yxt/yythmall/biz/vegecallerreserveorder/ReserveCustomerExcel.java b/src/main/java/com/yxt/yythmall/biz/vegecallerreserveorder/ReserveCustomerExcel.java new file mode 100644 index 0000000..52c34eb --- /dev/null +++ b/src/main/java/com/yxt/yythmall/biz/vegecallerreserveorder/ReserveCustomerExcel.java @@ -0,0 +1,41 @@ +package com.yxt.yythmall.biz.vegecallerreserveorder; + +import com.alibaba.excel.annotation.ExcelProperty; +import com.alibaba.excel.annotation.write.style.ColumnWidth; +import lombok.EqualsAndHashCode; +import lombok.Getter; +import lombok.Setter; + +@Getter +@Setter +@EqualsAndHashCode +public class ReserveCustomerExcel { + + @ColumnWidth(20) + @ExcelProperty(value = "预约日期",index = 0) + private String reserveDate; + @ColumnWidth(20) + @ExcelProperty(value = "支行",index = 1) + private String bankName; + @ColumnWidth(20) + @ExcelProperty(value = "提货门店",index = 2) + private String storeName; + @ColumnWidth(20) + @ExcelProperty(value = "礼包名称",index = 3) + private String brandName; + + @ColumnWidth(20) + @ExcelProperty(value = "姓名",index = 4) + private String userName; + + @ColumnWidth(20) + @ExcelProperty(value = "联系方式",index = 5) + private String userPhone; + + @ColumnWidth(20) + @ExcelProperty(value = "商品名称",index = 6) + private String goodsName; + @ColumnWidth(20) + @ExcelProperty(value = "商品数量(份)",index = 7) + private String goodsNumber; +} diff --git a/src/main/java/com/yxt/yythmall/biz/vegecallerreserveorder/ReserveOrderVo.java b/src/main/java/com/yxt/yythmall/biz/vegecallerreserveorder/ReserveOrderVo.java index c571a81..50cd571 100644 --- a/src/main/java/com/yxt/yythmall/biz/vegecallerreserveorder/ReserveOrderVo.java +++ b/src/main/java/com/yxt/yythmall/biz/vegecallerreserveorder/ReserveOrderVo.java @@ -24,6 +24,7 @@ public class ReserveOrderVo implements Vo { private String storePhone; private String storeAddress; private String affiliation; + private String brandName; private String userName; private String userPhone; private String bankSid; diff --git a/src/main/java/com/yxt/yythmall/biz/vegecallerreserveorder/ReserveStoreExcel.java b/src/main/java/com/yxt/yythmall/biz/vegecallerreserveorder/ReserveStoreExcel.java new file mode 100644 index 0000000..3a3957c --- /dev/null +++ b/src/main/java/com/yxt/yythmall/biz/vegecallerreserveorder/ReserveStoreExcel.java @@ -0,0 +1,41 @@ +package com.yxt.yythmall.biz.vegecallerreserveorder; + +import com.alibaba.excel.annotation.ExcelProperty; +import com.alibaba.excel.annotation.write.style.ColumnWidth; +import lombok.EqualsAndHashCode; +import lombok.Getter; +import lombok.Setter; + +@Getter +@Setter +@EqualsAndHashCode +public class ReserveStoreExcel { + + @ColumnWidth(20) + @ExcelProperty(value = "预约时间",index = 0) + private String reserveDate; + @ColumnWidth(20) + @ExcelProperty(value = "支行",index = 1) + private String bankName; + @ColumnWidth(20) + @ExcelProperty(value = "提货门店",index = 2) + private String storeName; + @ColumnWidth(20) + @ExcelProperty(value = "礼包名称",index = 3) + private String brandName; + @ColumnWidth(20) + @ExcelProperty(value = "商品名称",index = 4) + private String goodsName; + @ColumnWidth(20) + @ExcelProperty(value = "商品数量(份)",index = 5) + private String goodsNumber; + @ColumnWidth(20) + @ExcelProperty(value = "提货点联系人",index = 6) + private String storeLinker; + @ColumnWidth(20) + @ExcelProperty(value = "提货点电话",index = 7) + private String storePhone; + @ColumnWidth(50) + @ExcelProperty(value = "提货点地址",index = 8) + private String storeAddress; +} diff --git a/src/main/java/com/yxt/yythmall/biz/vegecallerreserveorder/VegeCellarReserveOrderMapper.java b/src/main/java/com/yxt/yythmall/biz/vegecallerreserveorder/VegeCellarReserveOrderMapper.java index 9954334..93c60ca 100644 --- a/src/main/java/com/yxt/yythmall/biz/vegecallerreserveorder/VegeCellarReserveOrderMapper.java +++ b/src/main/java/com/yxt/yythmall/biz/vegecallerreserveorder/VegeCellarReserveOrderMapper.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.toolkit.Constants; import com.yxt.common.core.vo.PagerVo; import com.yxt.yythmall.api.vegecallerreserveorder.VegeCellarReserveOrder; import com.yxt.yythmall.api.vegecallerreserveorder.VegeCellarReserveOrderQuery; @@ -11,6 +12,8 @@ import com.yxt.yythmall.api.vegecallerreserveorder.VegeCellarReserveOrderVo; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; +import java.util.List; + /** * @author wangpengfei * @date 2023/11/23 10:36 @@ -26,7 +29,21 @@ public interface VegeCellarReserveOrderMapper extends BaseMapper orderListByUserSid(IPage page, @Param(Constants.WRAPPER) QueryWrapper qw); IPage orderListByUserSid(IPage page, @Param("query") VegeCellarReserveOrderQuery query); - PagerVo pageOfCustomer(IPage page,QueryWrapper qw); + IPage pageOfCustomer(IPage page,@Param(Constants.WRAPPER) QueryWrapper qw); + + List pageOfCustomer(@Param(Constants.WRAPPER) QueryWrapper qw); + + IPage pageOfStore(IPage page,@Param(Constants.WRAPPER) QueryWrapper qw); + + List pageOfStore(@Param(Constants.WRAPPER) QueryWrapper qw); + + IPage pageOfBank(IPage page,@Param(Constants.WRAPPER) QueryWrapper qw); + + List pageOfBank(@Param(Constants.WRAPPER) QueryWrapper qw); + + IPage pageOfAll(IPage page,@Param(Constants.WRAPPER) QueryWrapper qw); + + List pageOfAll(@Param(Constants.WRAPPER) QueryWrapper qw); // // List exportExcel(@Param("qw") VegeCellarReserveOrderQuery qw); // List exportExcelByStore(@Param(Constants.WRAPPER) QueryWrapper qw); diff --git a/src/main/java/com/yxt/yythmall/biz/vegecallerreserveorder/VegeCellarReserveOrderMapper.xml b/src/main/java/com/yxt/yythmall/biz/vegecallerreserveorder/VegeCellarReserveOrderMapper.xml index d86e9ef..922ebce 100644 --- a/src/main/java/com/yxt/yythmall/biz/vegecallerreserveorder/VegeCellarReserveOrderMapper.xml +++ b/src/main/java/com/yxt/yythmall/biz/vegecallerreserveorder/VegeCellarReserveOrderMapper.xml @@ -458,6 +458,7 @@ max(ls.phone) storePhone, max(ls.address) storeAddress, max(vo.affiliation) affiliation, + max(pb.name) brandName, max(vo.userName) userName, max(vo.userPhone) userPhone, max(lb.sid) bankSid, @@ -473,9 +474,85 @@ LEFT JOIN lpk_bank lb ON lb.sid=ls.bankSid left join vege_cellar_reserve_details vd on vo.sid=vd.orderSid left join lpk_goods lg on vd.goodsSid=lg.sid + left join pms_brand pb on pb.id=vo.affiliation ${ew.sqlSegment} GROUP BY vo.reserveDate,vo.storeSid,vo.customerSid,vd.goodsSid + ORDER BY vo.reserveDate ASC + + + + \ No newline at end of file diff --git a/src/main/java/com/yxt/yythmall/biz/vegecallerreserveorder/VegeCellarReserveOrderService.java b/src/main/java/com/yxt/yythmall/biz/vegecallerreserveorder/VegeCellarReserveOrderService.java index 8ec866c..b6f8070 100644 --- a/src/main/java/com/yxt/yythmall/biz/vegecallerreserveorder/VegeCellarReserveOrderService.java +++ b/src/main/java/com/yxt/yythmall/biz/vegecallerreserveorder/VegeCellarReserveOrderService.java @@ -26,7 +26,9 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.util.ArrayList; +import java.util.HashMap; import java.util.List; +import java.util.Map; /** * @author wangpengfei @@ -711,6 +713,8 @@ public class VegeCellarReserveOrderService extends MybatisBaseService buildQuery(LpkReserveOrderQuery query) { QueryWrapper qw = new QueryWrapper<>(); +// qw.eq("vo.isEnable","1"); + if (StrUtil.isNotBlank(query.getStartDate())) { qw.ge("date_format(vo.reserveDate,'%Y-%m-%d')", query.getStartDate()); } @@ -727,17 +731,113 @@ public class VegeCellarReserveOrderService extends MybatisBaseService> pageOfCustomer(PagerQuery pq) { + public ResultBean> pageOfCustomer(PagerQuery pq) { + ResultBean rb = ResultBean.fireFail(); + LpkReserveOrderQuery query = pq.getParams(); + QueryWrapper qw = buildQuery(query); + + IPage page = PagerUtil.queryToPage(pq); + IPage pagerVo = baseMapper.pageOfCustomer(page, qw); + return rb.success().setData(pagerVo); + } + + public Map> mapForExcelCustomer(LpkReserveOrderQuery query) { + QueryWrapper qw = buildQuery(query); + List list = baseMapper.pageOfCustomer(qw); + Map> map = new HashMap<>(); + list.forEach(vo -> { + List volist = map.get(vo.getBankName()); + if (volist == null) { + volist = new ArrayList<>(); + map.put(vo.getBankName(), volist); + } + ReserveCustomerExcel ex = new ReserveCustomerExcel(); + BeanUtil.copyProperties(vo, ex); + volist.add(ex); + }); + return map; + } + + public ResultBean> pageOfStore(PagerQuery pq) { ResultBean rb = ResultBean.fireFail(); LpkReserveOrderQuery query = pq.getParams(); QueryWrapper qw = buildQuery(query); IPage page = PagerUtil.queryToPage(pq); - PagerVo pagerVo = baseMapper.pageOfCustomer(page,qw); + IPage pagerVo = baseMapper.pageOfStore(page, qw); return rb.success().setData(pagerVo); } + + public Map> mapForExcelStore(LpkReserveOrderQuery query) { + QueryWrapper qw = buildQuery(query); + List list = baseMapper.pageOfStore(qw); + Map> map = new HashMap<>(); + list.forEach(vo -> { + List volist = map.get(vo.getBankName()); + if (volist == null) { + volist = new ArrayList<>(); + map.put(vo.getBankName(), volist); + } + ReserveStoreExcel ex = new ReserveStoreExcel(); + BeanUtil.copyProperties(vo, ex); + volist.add(ex); + }); + return map; + } + + public ResultBean> pageOfBank(PagerQuery pq) { + ResultBean rb = ResultBean.fireFail(); + LpkReserveOrderQuery query = pq.getParams(); + QueryWrapper qw = buildQuery(query); + + IPage page = PagerUtil.queryToPage(pq); + IPage pagerVo = baseMapper.pageOfBank(page, qw); + return rb.success().setData(pagerVo); + } + + public Map> mapForExcelBank(LpkReserveOrderQuery query) { + QueryWrapper qw = buildQuery(query); + List list = baseMapper.pageOfBank(qw); + Map> map = new HashMap<>(); + list.forEach(vo -> { + List volist = map.get(vo.getBankName()); + if (volist == null) { + volist = new ArrayList<>(); + map.put(vo.getBankName(), volist); + } + ReserveBankExcel ex = new ReserveBankExcel(); + BeanUtil.copyProperties(vo, ex); + volist.add(ex); + }); + return map; + } + + public ResultBean> pageOfAll(PagerQuery pq) { + ResultBean rb = ResultBean.fireFail(); + LpkReserveOrderQuery query = pq.getParams(); + QueryWrapper qw = buildQuery(query); + + IPage page = PagerUtil.queryToPage(pq); + IPage pagerVo = baseMapper.pageOfAll(page, qw); + return rb.success().setData(pagerVo); + } + + public List listForExcelAll(LpkReserveOrderQuery query) { + + + QueryWrapper qw = buildQuery(query); + List list = baseMapper.pageOfAll(qw); + List listRes = new ArrayList<>(); + + list.forEach(vo -> { + ReserveAllExcel ex = new ReserveAllExcel(); + BeanUtil.copyProperties(vo, ex); + listRes.add(ex); + }); + return listRes; + } } diff --git a/src/main/resources/application-devv.yml b/src/main/resources/application-devv.yml index 9b8d7a1..7d63187 100644 --- a/src/main/resources/application-devv.yml +++ b/src/main/resources/application-devv.yml @@ -3,9 +3,11 @@ spring: hikari: max-lifetime: 500000 driver-class-name: com.mysql.cj.jdbc.Driver - url: jdbc:mysql://39.104.100.138:3306/yxt_lpk_yythmall?serverTimezone=GMT%2B8&autoReconnect=true&useUnicode=true&characterEncoding=UTF-8&nullCatalogMeansCurrent=true +# url: jdbc:mysql://39.104.100.138:3306/yxt_lpk_yythmall?serverTimezone=GMT%2B8&autoReconnect=true&useUnicode=true&characterEncoding=UTF-8&nullCatalogMeansCurrent=true + url: jdbc:mysql://8.130.39.13:3306/yxt_lpk_yythmall?serverTimezone=GMT%2B8&autoReconnect=true&useUnicode=true&characterEncoding=UTF-8&nullCatalogMeansCurrent=true username: root - password: yxt_mysql_138 + password: 1LAiGz$t1*Iw +# password: yxt_mysql_138 cloud: nacos: discovery: