diff --git a/han-hai-module-pay/src/main/java/org/jeecg/modules/pay/MpWxPayService.java b/han-hai-module-pay/src/main/java/org/jeecg/modules/pay/MpWxPayService.java index 0117b29..dbdeead 100644 --- a/han-hai-module-pay/src/main/java/org/jeecg/modules/pay/MpWxPayService.java +++ b/han-hai-module-pay/src/main/java/org/jeecg/modules/pay/MpWxPayService.java @@ -58,12 +58,12 @@ public class MpWxPayService { request.setDetail(productName); //商品详情 request.setTotalFee(price); //总金额|分计 request.setSpbillCreateIp(clientIp); //终端IP - request.setNotifyUrl("https://admin.yixuandaojia.com/massage-api-three/post/notify");//设置回调路径 + request.setNotifyUrl("https://admin.tiandufuwu.com/massage-api-tiandu/post/notify");//设置回调路径 request.setProductId(productId); //商品id if (dev) { request.setTotalFee(price); // request.setNotifyUrl(wxPay.notifyUrlDev); - request.setNotifyUrl("https://admin.yixuandaojia.com/massage-api-three/post/notify"); + request.setNotifyUrl("https://admin.tiandufuwu.com/massage-api-tiandu/post/notify"); } try { @@ -99,13 +99,13 @@ public class MpWxPayService { request.setTotalFee(price); //总金额|分计 request.setSpbillCreateIp(clientIp); //终端IP // request.setNotifyUrl(wxPay.notifyUrl);//设置回调路径 - request.setNotifyUrl("https://admin.yixuandaojia.com/massage-api-three/post/notify");//设置回调路径 + request.setNotifyUrl("https://admin.tiandufuwu.com/massage-api-tiandu/post/notify");//设置回调路径 request.setProductId(productId); //商品id request.setOpenid(openId); //JSAPI OPENID if (dev){ request.setTotalFee(price); // request.setNotifyUrl(wxPay.notifyUrlDev); - request.setNotifyUrl("https://admin.yixuandaojia.com/massage-api-three/post/notify");//设置回调路径 + request.setNotifyUrl("https://admin.tiandufuwu.com/massage-api-tiandu/post/notify");//设置回调路径 } try { Object order = wxPayService.createOrder(request); @@ -147,13 +147,13 @@ public class MpWxPayService { request.setTotalFee(price); //总金额|分计 request.setSpbillCreateIp(clientIp); //终端IP // request.setNotifyUrl(wxPay.notifyUrl);//设置回调路径 - request.setNotifyUrl("https://admin.yixuandaojia.com/massage-api-three/order/notify");//设置回调路径 + request.setNotifyUrl("https://admin.tiandufuwu.com/massage-api-tiandu/order/notify");//设置回调路径 request.setProductId(productId); //商品id request.setOpenid(openId); //JSAPI OPENID if (dev){ request.setTotalFee(price); // request.setNotifyUrl(wxPay.notifyUrlDev); - request.setNotifyUrl("https://admin.yixuandaojia.com/massage-api-three/order/notify");//设置回调路径 + request.setNotifyUrl("https://admin.tiandufuwu.com/massage-api-tiandu/order/notify");//设置回调路径 } try { Object order = wxPayService.createOrder(request); diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/msgTechnician/controller/MsgTechnicianController.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/msgTechnician/controller/MsgTechnicianController.java index 6c330a7..b908498 100644 --- a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/msgTechnician/controller/MsgTechnicianController.java +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/msgTechnician/controller/MsgTechnicianController.java @@ -39,7 +39,7 @@ import org.jeecg.common.aspect.annotation.AutoLog; /** * @Description: 技师表 * @Author: jeecg-boot - * @Date: 2024-11-18 + * @Date: 2025-01-19 * @Version: V1.0 */ @Api(tags="技师表") diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/msgTechnician/entity/MsgTechnician.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/msgTechnician/entity/MsgTechnician.java index 457c2e5..3d7d67c 100644 --- a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/msgTechnician/entity/MsgTechnician.java +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/msgTechnician/entity/MsgTechnician.java @@ -20,7 +20,7 @@ import lombok.experimental.Accessors; /** * @Description: 技师表 * @Author: jeecg-boot - * @Date: 2024-11-18 + * @Date: 2025-01-19 * @Version: V1.0 */ @Data @@ -50,6 +50,11 @@ public class MsgTechnician implements Serializable { /**所属部门*/ @ApiModelProperty(value = "所属部门") private java.lang.String sysOrgCode; + /**关联城市*/ + @Excel(name = "关联城市", width = 15, dictTable = "msg_city", dicText = "name", dicCode = "id") + @Dict(dictTable = "msg_city", dicText = "name", dicCode = "id") + @ApiModelProperty(value = "关联城市") + private java.lang.String msgCityId; /**头像*/ @Excel(name = "头像", width = 15) @ApiModelProperty(value = "头像") diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/msgTechnician/mapper/MsgTechnicianMapper.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/msgTechnician/mapper/MsgTechnicianMapper.java index 333b6cb..a115afd 100644 --- a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/msgTechnician/mapper/MsgTechnicianMapper.java +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/msgTechnician/mapper/MsgTechnicianMapper.java @@ -9,7 +9,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; /** * @Description: 技师表 * @Author: jeecg-boot - * @Date: 2024-11-18 + * @Date: 2025-01-19 * @Version: V1.0 */ public interface MsgTechnicianMapper extends BaseMapper { diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/msgTechnician/service/IMsgTechnicianService.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/msgTechnician/service/IMsgTechnicianService.java index e3cbe7b..6d03a20 100644 --- a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/msgTechnician/service/IMsgTechnicianService.java +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/msgTechnician/service/IMsgTechnicianService.java @@ -6,7 +6,7 @@ import com.baomidou.mybatisplus.extension.service.IService; /** * @Description: 技师表 * @Author: jeecg-boot - * @Date: 2024-11-18 + * @Date: 2025-01-19 * @Version: V1.0 */ public interface IMsgTechnicianService extends IService { diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/msgTechnician/service/impl/MsgTechnicianServiceImpl.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/msgTechnician/service/impl/MsgTechnicianServiceImpl.java index 0b453d6..aca7adb 100644 --- a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/msgTechnician/service/impl/MsgTechnicianServiceImpl.java +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/msgTechnician/service/impl/MsgTechnicianServiceImpl.java @@ -10,7 +10,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; /** * @Description: 技师表 * @Author: jeecg-boot - * @Date: 2024-11-18 + * @Date: 2025-01-19 * @Version: V1.0 */ @Service diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/msgTechnician/vue/MsgTechnicianList.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/msgTechnician/vue/MsgTechnicianList.vue index e092560..64ef260 100644 --- a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/msgTechnician/vue/MsgTechnicianList.vue +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/msgTechnician/vue/MsgTechnicianList.vue @@ -142,6 +142,11 @@ return parseInt(index)+1; } }, + { + title:'关联城市', + align:"center", + dataIndex: 'msgCityId_dictText' + }, { title:'头像', align:"center", @@ -274,7 +279,8 @@ { title:'是否可预约', align:"center", - dataIndex: 'bookable' + dataIndex: 'bookable', + customRender: (text) => (text ? filterMultiDictText(this.dictOptions['bookable'], text) : ''), }, { title:'免费出行', @@ -295,7 +301,8 @@ { title:'距离显示开启', align:"center", - dataIndex: 'setKmOpen' + dataIndex: 'setKmOpen', + customRender: (text) => (text ? filterMultiDictText(this.dictOptions['setKmOpen'], text) : ''), }, { title:'健康证', @@ -332,7 +339,9 @@ }, created() { this.$set(this.dictOptions, 'realOk', [{text:'是',value:'Y'},{text:'否',value:'N'}]) + this.$set(this.dictOptions, 'bookable', [{text:'是',value:'Y'},{text:'否',value:'N'}]) this.$set(this.dictOptions, 'isCx', [{text:'是',value:'Y'},{text:'否',value:'N'}]) + this.$set(this.dictOptions, 'setKmOpen', [{text:'是',value:'Y'},{text:'否',value:'N'}]) this.getSuperFieldList(); }, computed: { @@ -345,6 +354,7 @@ }, getSuperFieldList(){ let fieldList=[]; + fieldList.push({type:'string',value:'msgCityId',text:'关联城市'}) fieldList.push({type:'Text',value:'image',text:'头像',dictCode:''}) fieldList.push({type:'string',value:'title',text:'昵称',dictCode:''}) fieldList.push({type:'string',value:'icon',text:'标签',dictCode:''}) @@ -370,11 +380,11 @@ fieldList.push({type:'string',value:'longitude',text:'经度',dictCode:''}) fieldList.push({type:'int',value:'isKm',text:'多少公里内免费',dictCode:''}) fieldList.push({type:'string',value:'latitude',text:'纬度',dictCode:''}) - fieldList.push({type:'string',value:'bookable',text:'是否可预约',dictCode:''}) + fieldList.push({type:'switch',value:'bookable',text:'是否可预约'}) fieldList.push({type:'switch',value:'isCx',text:'免费出行'}) fieldList.push({type:'int',value:'setKm',text:'显示距离',dictCode:''}) fieldList.push({type:'int',value:'isTest',text:'运营号',dictCode:''}) - fieldList.push({type:'string',value:'setKmOpen',text:'距离显示开启',dictCode:''}) + fieldList.push({type:'switch',value:'setKmOpen',text:'距离显示开启'}) fieldList.push({type:'string',value:'healthCertificate',text:'健康证',dictCode:''}) fieldList.push({type:'string',value:'businessLicense',text:'营业证',dictCode:''}) this.superFieldList = fieldList diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/msgTechnician/vue/modules/MsgTechnicianForm.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/msgTechnician/vue/modules/MsgTechnicianForm.vue index 2504334..beb8c09 100644 --- a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/msgTechnician/vue/modules/MsgTechnicianForm.vue +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/msgTechnician/vue/modules/MsgTechnicianForm.vue @@ -3,6 +3,18 @@ + + + + + + @@ -130,7 +142,7 @@ - + @@ -150,7 +162,7 @@ - + diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/msgTechnician/vue3/MsgTechnician.data.ts b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/msgTechnician/vue3/MsgTechnician.data.ts index 2b7a6f3..de9f6e5 100644 --- a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/msgTechnician/vue3/MsgTechnician.data.ts +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/msgTechnician/vue3/MsgTechnician.data.ts @@ -5,6 +5,11 @@ import { render } from '/@/utils/common/renderUtils'; //列表数据 export const columns: BasicColumn[] = [ { + title: '关联城市', + align:"center", + dataIndex: 'msgCityId_dictText' + }, + { title: '头像', align:"center", dataIndex: 'image', @@ -138,7 +143,10 @@ export const columns: BasicColumn[] = [ { title: '是否可预约', align:"center", - dataIndex: 'bookable' + dataIndex: 'bookable', + customRender:({text}) => { + return render.renderSwitch(text, [{text:'是',value:'Y'},{text:'否',value:'N'}]) + }, }, { title: '免费出行', @@ -161,7 +169,10 @@ export const columns: BasicColumn[] = [ { title: '距离显示开启', align:"center", - dataIndex: 'setKmOpen' + dataIndex: 'setKmOpen', + customRender:({text}) => { + return render.renderSwitch(text, [{text:'是',value:'Y'},{text:'否',value:'N'}]) + }, }, { title: '健康证', @@ -196,6 +207,15 @@ export const searchFormSchema: FormSchema[] = [ ]; //表单数据 export const formSchema: FormSchema[] = [ + { + label: '关联城市', + field: 'msgCityId', + component: 'JTreeSelect', + componentProps:{ + dict:"msg_city,name,id", + pidValue:"0", + }, + }, { label: '头像', field: 'image', @@ -335,7 +355,9 @@ export const formSchema: FormSchema[] = [ { label: '是否可预约', field: 'bookable', - component: 'Input', + component: 'JSwitch', + componentProps:{ + }, }, { label: '免费出行', @@ -357,7 +379,9 @@ export const formSchema: FormSchema[] = [ { label: '距离显示开启', field: 'setKmOpen', - component: 'Input', + component: 'JSwitch', + componentProps:{ + }, }, { label: '健康证', diff --git a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/service/impl/OrderCreateVipServiceImpl.java b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/service/impl/OrderCreateVipServiceImpl.java index f966404..3faf98e 100644 --- a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/service/impl/OrderCreateVipServiceImpl.java +++ b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/service/impl/OrderCreateVipServiceImpl.java @@ -441,7 +441,7 @@ public class OrderCreateVipServiceImpl implements OrderCreateVipService { msgOrder.setPayTime(new Date()); msgOrderService.updateById(msgOrder); - //短信发送给技师 +// //短信发送给技师 // smsClient.sendSms(msgTechnician.getPhone(),"您有一笔订单需要处理,订单号:"+msgOrder.getId()); //增加流水 diff --git a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/service/impl/UserVipApiServiceImpl.java b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/service/impl/UserVipApiServiceImpl.java index 776f8cd..7a2bb19 100644 --- a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/service/impl/UserVipApiServiceImpl.java +++ b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/service/impl/UserVipApiServiceImpl.java @@ -29,6 +29,7 @@ import org.jeecg.modules.msgCity.entity.MsgCity; import org.jeecg.modules.msgCity.service.IMsgCityService; import org.jeecg.modules.msgCollect.entity.MsgCollect; import org.jeecg.modules.msgCollect.service.IMsgCollectService; +import org.jeecg.modules.msgConfig.entity.MsgConfig; import org.jeecg.modules.msgConfig.service.IMsgConfigService; import org.jeecg.modules.msgCoupon.entity.MsgCoupon; import org.jeecg.modules.msgCoupon.service.IMsgCouponService; @@ -137,6 +138,8 @@ public class UserVipApiServiceImpl implements UserVipApiService { private IMsgDistributorService msgDistributorService; + + //微信公众号授权登录 @Override public Result wxOfficialLogin(OfficialLoginBean bean){ @@ -202,17 +205,22 @@ public class UserVipApiServiceImpl implements UserVipApiService { @Override public Result getTechnicianList(TechnicianPageBean pageBean) { Page page = new Page(pageBean.getPageNo(), pageBean.getPageSize()); - IPage pageList = msgTechnicianService.page(page); + IPage pageList = msgTechnicianService + .lambdaQuery() + .isNotNull(MsgTechnician::getUserId) + .page(page); if(!StringUtils.isBlank(pageBean.getTitle())){ pageList = msgTechnicianService .lambdaQuery() .like(MsgTechnician::getTitle, pageBean.getTitle()) + .isNotNull(MsgTechnician::getUserId) .page(page); } if(!StringUtils.isBlank(pageBean.getCounty())){ pageList = msgTechnicianService .lambdaQuery() - .eq(MsgTechnician::getCounty, pageBean.getCounty()) + .eq(MsgTechnician::getMsgCityId, pageBean.getCounty()) + .isNotNull(MsgTechnician::getUserId) .page(page); } @@ -629,10 +637,13 @@ public class UserVipApiServiceImpl implements UserVipApiService { //发送短信提现技师 public void sendSms(MsgTechnician msgTechnician){ + //查询配置列表中的配置的电话 + MsgConfig msgConfig = configService.lambdaQuery().eq(MsgConfig::getName, "phone").one(); + //查询当前技师是否是测试技师 if(msgTechnician.getIsTest().equals("1")){ //发送短信给运营号 - SmsClient.sendMsg2("18206530273",msgTechnician.getTitle()); + SmsClient.sendMsg2(msgConfig.getContent(),msgTechnician.getTitle()); }else{ //根据技师中的用户标识查询用户信息 HanHaiMember hanHaiMember = memberService.lambdaQuery().eq(HanHaiMember::getId, msgTechnician.getUserId()).one(); diff --git a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/utils/WeChatJSSDK.java b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/utils/WeChatJSSDK.java index d2ddc6e..0fc35c4 100644 --- a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/utils/WeChatJSSDK.java +++ b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/utils/WeChatJSSDK.java @@ -20,8 +20,18 @@ import javax.servlet.http.HttpSession; public class WeChatJSSDK { - private static final String APP_ID = "wxe36bd1a3deea74a3"; - private static final String APP_SECRET = "26b451a9eea4b328f48dc864814895d8"; + + /** + * 微信公众号-appid - 天都服务 + */ + + private static final String APP_ID = "wx2cc6f138b02196e3"; + + /** + * 微信公众号-appSecret- 天都服务 + */ + + private static final String APP_SECRET = "a5320a3c5ed0f90dfb9e0ead79d32945"; private static String accessToken = null; // 用于缓存access_token private static String jsapiTicket = null; // 用于缓存jsapi_ticket diff --git a/jeecg-boot-module-system/src/main/resources/application-dev.yml b/jeecg-boot-module-system/src/main/resources/application-dev.yml index 002731e..4966beb 100644 --- a/jeecg-boot-module-system/src/main/resources/application-dev.yml +++ b/jeecg-boot-module-system/src/main/resources/application-dev.yml @@ -192,11 +192,11 @@ jeecg : excludeUrls: /test/jeecgDemo/demo3,/test/jeecgDemo/redisDemo/**,/category/**,/visual/**,/map/**,/jmreport/bigscreen2/** #阿里云oss存储和大鱼短信秘钥配置 oss: - accessKey: LTAI5tDL3dP95KCoepUtqRZX - secretKey: WHUemsg4V9xyZUWRU9WvqwJjTcwe2u - endpoint: oss-cn-hangzhou.aliyuncs.com - bucketName: daohomeimage - staticDomain: https://image.yixuandaojia.com + accessKey: LTAI5tB1Zbg4jR7iRMeyCz8g + secretKey: 9KKdXCj0WikfHk9Du2jTlNHScSWTOD + endpoint: oss-cn-guangzhou.aliyuncs.com + bucketName: tiandufuwu + staticDomain: https://image.tiandufuwu.com # ElasticSearch 6设置 elasticsearch: cluster-name: jeecg-ES diff --git a/jeecg-boot-module-system/src/main/resources/pay_weixin.properties b/jeecg-boot-module-system/src/main/resources/pay_weixin.properties index dea6dc4..1ef0193 100644 --- a/jeecg-boot-module-system/src/main/resources/pay_weixin.properties +++ b/jeecg-boot-module-system/src/main/resources/pay_weixin.properties @@ -2,7 +2,7 @@ pay.mchId=1704050725 pay.appId=wx2cc6f138b02196e3 pay.mchKey=0fdb77429ffdf206c151af76a663041c pay.keyPath=classpath:apiclient_cert.pem -pay.notifyUrl=http://h5.xzaiyp.top/massage-api-tiandu/post/create -pay.notifyUrlDev=http://h5.xzaiyp.top/massage-api-tiandu/post/notify +pay.notifyUrl=https://admin.tiandufuwu.com/massage-api-tiandu/post/create +pay.notifyUrlDev=https://admin.tiandufuwu.com/massage-api-tiandu/post/notify diff --git a/shop/public/logo.png b/shop/public/logo.png index 72f7147..33a99ca 100644 Binary files a/shop/public/logo.png and b/shop/public/logo.png differ diff --git a/shop/src/assets/logo.png b/shop/src/assets/logo.png index 72f7147..33a99ca 100644 Binary files a/shop/src/assets/logo.png and b/shop/src/assets/logo.png differ diff --git a/shop/src/components/layouts/TabLayout.vue b/shop/src/components/layouts/TabLayout.vue index ec1ca03..91d3f4a 100644 --- a/shop/src/components/layouts/TabLayout.vue +++ b/shop/src/components/layouts/TabLayout.vue @@ -177,7 +177,7 @@ // update-begin-author:sunjianlei date:20200120 for: 动态更改页面标题 changeTitle(title) { - let projectTitle = "预约下单后台管理系统" + let projectTitle = "天都服务后台管理系统" // 首页特殊处理 if (this.$route.path === indexKey) { document.title = projectTitle