merge_ty #16

Merged
tianyu merged 28 commits from merge_ty into master 2023-06-08 18:04:20 +08:00
14 changed files with 82 additions and 20 deletions

View File

@ -1522,7 +1522,7 @@ public class StoreOrderServiceImpl extends ServiceImpl<StoreOrderMapper, StoreOr
}
if (StringUtils.isNotBlank(request.getUserPhone()) && StringUtils.isNotBlank(request.getConfirmPhone())) {
Assert.isTrue(StringUtils.equals(request.getUserPhone(), request.getConfirmPhone()), "输入号码不一致!");
Assert.isTrue(Pattern.matches("^[1][3,4,5,7,8][0,1,2,4,5,6,7,8,9][0-9]{8}$", request.getUserPhone()), "手机号前三位不能是190或193!");
Assert.isTrue(Pattern.matches("^[1][3,4,5,7,8][0,1,2,3,4,5,6,7,8,9][0-9]{8}$", request.getUserPhone()), "手机号前三位不能是190或193!");
MemberUserRespDTO userByMobile = userService.getUserByMobile(request.getUserPhone());
// 初始化一个账号
if (Objects.isNull(userByMobile)) {

View File

@ -24,6 +24,7 @@ public class PromoterPageReqVO extends PageParam {
@Schema(description = "推广员手机号", example = "15601691300")
private String mobile;
private String sourceType;
/**
*

View File

@ -29,7 +29,7 @@ public class AppAuthSmsLoginReqVO {
@Schema(description = "手机号", required = true, example = "15601691300")
@NotEmpty(message = "手机号不能为空")
@Pattern(regexp = "^[1][3,4,5,7,8][0,1,2,4,5,6,7,8,9][0-9]{8}$",message = "手机号不正确")
@Pattern(regexp = "^[1][3,4,5,7,8][0,1,2,3,4,5,6,7,8,9][0-9]{8}$",message = "手机号不正确")
private String mobile;
/**
* 广id

View File

@ -10,7 +10,7 @@
-->
<select id="findListPage" resultType="cn.iocoder.yudao.module.member.controller.admin.promoter.vo.PromoterRespVO">
select a.id,a.user_id,a.dept_id,b.nickname,b.status,b.mobile,c.parent_organization_name as 'orgName' from member_promoter a
select a.id,a.user_id,a.dept_id,b.nickname,b.status,b.mobile,c.parent_organization_name as 'orgName',a.source_type from member_promoter a
left join member_user b on a.user_id = b.id
left join system_dept c on c.id=a.dept_id
<where>
@ -27,7 +27,7 @@
and b.mobile like CONCAT('%',#{data.mobile},'%')
</if>
<if test="data.sourceType!=null">
and b.source_type =#{data.sourceType}
and a.source_type =#{data.sourceType}
</if>
</where>
</select>

View File

@ -169,8 +169,8 @@ wx: # 参见 https://github.com/Wechat-Group/WxJava/blob/develop/spring-boot-sta
private-key-path: classpath:/test/apiclient_key.pem
key-path: classpath:/test/apiclient_cert.p12
cert-serial-no: 47F04D51F958FFEF56A6DFC25BDE83CF89353E19
notify-url: https://yuxy.perrymake.com/app-api/pay/wxpay/pay_notify
refund-notify-url: https://yuxy.perrymake.com/app-api/pay/wxpay/refund_notify
notify-url: http://api.nnhwl.top/app-api/pay/wxpay/pay_notify
refund-notify-url: http://api.nnhwl.top/app-api/pay/wxpay/refund_notify
two:
enabled: true
app-id: wxb1826c88da21d81e
@ -223,5 +223,5 @@ wx:
database: 16 # 数据库索引
password: 20221122@dev # 密码,建议生产环境开启
phone:
query-url: http://192.168.1.94:4006/cyywl-phone-query-api/
query-url: https://cmx.bskies.cc:8000/cyywl-phone-query-api/
token: eyIwLnR5cCI6IkpXVCIsImFsZyI6IkhTNTEyIn0

View File

@ -1,11 +1,14 @@
# 开发环境配置
ENV = 'development'
ENV = 'test'
# 页面标题
VUE_APP_TITLE = 创盈商户管理系统
# 创盈管理系统/本地环境
VUE_APP_BASE_API = 'http://api-dashboard.yudao.iocoder.cn'
VUE_APP_BASE_API = 'http://api.nnhwl.top'
# 根据服务器或域名修改
PUBLIC_PATH = 'http://admin.nnhwl.top'
# 根据服务器或域名修改
PUBLIC_PATH = 'http://admin.nnhwl.top'

View File

@ -7,10 +7,11 @@
"scripts": {
"local": "vue-cli-service serve --mode local",
"dev": "vue-cli-service serve --mode dev",
"front": "vue-cli-service serve --mode front",
"test": "vue-cli-service serve --mode test",
"build:prod": "vue-cli-service build --mode prod",
"build:stage": "vue-cli-service build --mode stage",
"build:dev": "vue-cli-service build --mode dev",
"build:test": "vue-cli-service build --mode test",
"build:static": "vue-cli-service build --mode static",
"preview": "node build/index.js --preview",
"lint": "eslint --ext .js,.vue src",

View File

@ -3,7 +3,7 @@ module.exports = {
/**
* 推广链接域名
*/
spreadDomain: 'http://h5.cyywl.top',
spreadDomain: process.env.ENV === 'production' ? 'http://h5.cyywl.top' : 'http://h5.nnhwl.top',
/**
* 推广码生成访问H5链接地址

View File

@ -2,7 +2,7 @@
<div class="app-container">
<!-- 搜索工作栏 -->
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="120px">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="110px">
<el-form-item label="所属组织" prop="deptId">
<treeselect style="width: 240px;" v-model="queryParams.deptId" :options="deptOptions" :show-count="true"
:clearable="false"
@ -17,6 +17,12 @@
<el-form-item label="推广员名称" prop="nickname">
<el-input v-model="queryParams.nickname" placeholder="请输入" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="注册来源" prop="sourceType">
<el-select v-model="queryParams.sourceType" placeholder="请选择来源" clearable @keyup.enter.native="handleQuery">
<el-option :value="1" label="后台注册"/>
<el-option :value="2" label="扫码注册"/>
</el-select>
</el-form-item>
<el-form-item label="手机号" prop="mobile">
<el-input v-model="queryParams.mobile" placeholder="请输入" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
@ -50,6 +56,11 @@
<el-table-column label="编号" align="center" prop="id"/>
<el-table-column label="推广员名称" align="center" prop="nickname"/>
<el-table-column label="手机号" align="center" prop="mobile"/>
<el-table-column label="注册来源" align="center" prop="sourceType">
<template v-slot="scope">
<div>{{scope.row.sourceType == 1?'后台注册':'扫码注册'}}</div>
</template>
</el-table-column>
<el-table-column label="所属组织" align="center" prop="orgName"/>
<el-table-column label="启用状态" align="center" prop="status">
<template v-slot="scope">

View File

@ -9,7 +9,9 @@
fetchMemberChangeSpreadId
} from "@/api/api";
import {
HTTP_REQUEST_URL
HTTP_REQUEST_URL,
SPREAD_LINK,
WX_APP_ID
} from './config/app';
import Auth from './libs/wechat.js';
import Routine from './libs/routine.js';
@ -174,6 +176,7 @@
}
},
mounted() {
console.log('query--print', this.$route.query)
this.initLoad()
},
watch: {
@ -186,7 +189,7 @@
methods: {
async initLoad() {
this.isQRCode()
// this.isProperty()
this.isProperty()
this.setSpreadId()
if (this.$store.getters.isLogin && !this.$Cache.get('USER_INFO')) {
await this.$store.dispatch('USERINFO');
@ -211,14 +214,16 @@
if (redirectUrl) {
const tenantId = this.$route.query.tenantId || ''
const spreadId = this.$route.query.spreadId || ''
const wechatUrl = 'https://open.weixin.qq.com/connect/oauth2/authorize?appid=wx7e503d9cded34c07'
const isProperty = this.$route.query.isProperty || ''
const wechatUrl = 'https://open.weixin.qq.com/connect/oauth2/authorize?appid=' + WX_APP_ID
const url = encodeURIComponent(`${redirectUrl}${SPREAD_LINK}?tenantId=${tenantId}&spreadId=${spreadId}&isProperty=${isProperty}`)
location.href =
`${wechatUrl}&redirect_uri=${redirectUrl}/pages/member_application/index?tenantId=${tenantId}&spreadId=${spreadId}&response_type=code&scope=snsapi_base#wechat_redirect`
`${wechatUrl}&redirect_uri=${url}&response_type=code&scope=snsapi_base#wechat_redirect`
}
},
//
isProperty() {
const is_property = this.$route.query.isProperty || false
const is_property = this.$route.query.isProperty || '0'
if(parseInt(is_property) === 1){
this.$store.commit("SET_IS_PROPERTY", !!is_property)
}

View File

@ -39,7 +39,9 @@ export function getWeChatOpenId(code) {
// 获取租户信息
export function fetchTenantInfo(id) {
return request.get('tenant/get?id=' + id, {});
return request.get('tenant/get?id=' + id, {}, {
noAuth: true
});
}
/**

View File

@ -29,7 +29,25 @@ module.exports = {
//分页最多显示条数
LIMIT: 10,
// 推广链接域名
// #ifdef DEV
SPREAD_DOMAIN: 'http://h5.nnhwl.top',
// #endif
// #ifdef TEST
SPREAD_DOMAIN: 'http://h5.nnhwl.top',
// #endif
// #ifdef PROD
SPREAD_DOMAIN: 'http://h5.cyywl.top',
// #endif
// 推广码生成访问H5链接地址
SPREAD_LINK: '/pages/member_application/index',
// 公众号APPID
// #ifdef DEV
WX_APP_ID: 'wx3b3b17449cc13a8a',
// #endif
// #ifdef TEST
WX_APP_ID: 'wx3b3b17449cc13a8a',
// #endif
// #ifdef PROD
WX_APP_ID: 'wx7e503d9cded34c07',
// #endif
};

View File

@ -12,8 +12,12 @@ const whiteListPage=['pages/users/privacy/index']
function prePage(){
let pages = getCurrentPages();
if(pages.length > 0){
let prePage = pages[pages.length - 1];
return prePage.route;
} else {
return ''
}
}
export const toLogin = Debounce(_toLogin,800)

View File

@ -22,6 +22,20 @@
"UNI_PLATFORM": "h5",
"isVConsole": true,
"APP_BASE_URL": "http://192.168.1.188:48080"
},
"define": {
"DEV": true
}
},
"test": {
"title": "测试版",
"env": {
"UNI_PLATFORM": "h5",
"isVConsole": true,
"APP_BASE_URL": "http://api.nnhwl.top"
},
"define": {
"TEST": true
}
},
"prod": {
@ -30,6 +44,9 @@
"UNI_PLATFORM": "h5",
"isVConsole": false,
"APP_BASE_URL": "http://api.cyywl.top"
},
"define": {
"PROD": true
}
}
}