修改诺干问题
This commit is contained in:
parent
6be7938bfb
commit
b7ae6f47fb
|
@ -68,8 +68,8 @@
|
|||
<option name="tableUIInfoList">
|
||||
<list>
|
||||
<TableUIInfo>
|
||||
<option name="className" value="Manicuristsign" />
|
||||
<option name="tableName" value="manicuristsign" />
|
||||
<option name="className" value="Recruitment" />
|
||||
<option name="tableName" value="recruitment" />
|
||||
</TableUIInfo>
|
||||
</list>
|
||||
</option>
|
||||
|
|
|
@ -67,6 +67,7 @@ create table if not exists business
|
|||
categoryId bigint null comment '分类id',
|
||||
startBusiness varchar(64) not null comment '开始营业时间',
|
||||
endBusiness varchar(64) not null comment '结束营业时间',
|
||||
serviceMode tinyint not null comment '服务方式:服务方式:0 - 可到店可上门 1 - 不可上门',
|
||||
state tinyint default 0 not null comment '状态:0审核中,1启用,2禁用',
|
||||
storeStatus tinyint default 0 not null comment '店铺状态:0休业,1营业',
|
||||
createTime datetime default CURRENT_TIMESTAMP not null comment '创建时间',
|
||||
|
@ -203,8 +204,6 @@ CREATE TABLE IF NOT EXISTS manicurist_auth
|
|||
) COMMENT ='美甲师认证表' COLLATE = utf8mb4_unicode_ci;
|
||||
|
||||
|
||||
|
||||
|
||||
-- 预约表
|
||||
CREATE TABLE IF NOT EXISTS appointments
|
||||
(
|
||||
|
@ -217,7 +216,7 @@ CREATE TABLE IF NOT EXISTS appointments
|
|||
manicuristId bigint null comment '美甲师ID, 如果为空到店分配',
|
||||
manicuristName varchar(100) null comment '美甲师姓名',
|
||||
appointmentTime datetime not null comment '预约时间',
|
||||
serviceMode tinyint default 1 not null comment '服务方式(0 - 线上, 1 - 到店)',
|
||||
serviceMode tinyint default 1 not null comment '服务方式(0 - 到店, 1 - 上门)',
|
||||
notes varchar(128) null comment '备注',
|
||||
status tinyint default 0 not null comment '预约状态(0 - 已确认, 1 - 已完成, 2 - 已取消)',
|
||||
createTime datetime default CURRENT_TIMESTAMP not null comment '创建时间',
|
||||
|
@ -246,6 +245,7 @@ CREATE TABLE IF NOT EXISTS orders
|
|||
totalPrice DECIMAL(10, 2) NOT NULL COMMENT '订单总金额',
|
||||
paymentStatus TINYINT DEFAULT 0 NOT NULL COMMENT '支付状态(0 - 未支付, 1 - 已支付, 2 - 退款中, 3 - 已退款)',
|
||||
claimStatus TINYINT DEFAULT 0 NOT NULL COMMENT '抢单状态(0 - 未抢单, 1 - 已抢单)',
|
||||
serviceMode tinyint default 1 not null comment '服务方式(0 - 到店, 1 - 上门)',
|
||||
notes varchar(128) null comment '备注',
|
||||
createTime DATETIME DEFAULT CURRENT_TIMESTAMP NOT NULL COMMENT '创建时间',
|
||||
updateTime DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
||||
|
@ -304,6 +304,7 @@ create table user_rating
|
|||
rating tinyint not null comment '评分',
|
||||
manicuristRating tinyint not null comment '美甲师评分',
|
||||
review varchar(512) null comment '评论',
|
||||
picture VARCHAR(512) COMMENT '评论图片',
|
||||
businessReview varchar(512) null comment '商家回复',
|
||||
createTime datetime default CURRENT_TIMESTAMP not null comment '创建时间'
|
||||
) comment '用户评分' collate = utf8mb4_unicode_ci;
|
||||
|
@ -318,4 +319,16 @@ create table business_level
|
|||
level tinyint not null comment '等级',
|
||||
createTime DATETIME default CURRENT_TIMESTAMP comment '创建时间',
|
||||
updateTime DATETIME default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP comment '更新时间'
|
||||
)
|
||||
);
|
||||
|
||||
create table recruitment
|
||||
(
|
||||
id bigint auto_increment primary key comment '主键id',
|
||||
businessId bigint not null comment '商家id,关联business表',
|
||||
businessName varchar(512) not null comment '门店名称',
|
||||
requirements text not null comment '对美甲师的要求',
|
||||
salary varchar(50) not null comment '美甲师薪资,示例: 5k-10k/月',
|
||||
quantity int not null comment '招聘美甲师数量',
|
||||
createTime DATETIME default CURRENT_TIMESTAMP comment '创建时间',
|
||||
updateTime DATETIME default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP comment '更新时间'
|
||||
) comment ='美甲师招聘信息表';
|
||||
|
|
|
@ -33,8 +33,7 @@ public class AlipayClients {
|
|||
// 公私钥模式
|
||||
@Bean
|
||||
public AlipayClient alipayClient() throws AlipayApiException {
|
||||
AlipayClient client = new DefaultAlipayClient(this.gateway, this.appId, this.appPrivateKey, AlipayConstants.FORMAT_JSON, AlipayConstants.CHARSET_UTF8, PublicKey, AlipayConstants.SIGN_TYPE_RSA2);
|
||||
return client;
|
||||
return new DefaultAlipayClient(this.gateway, this.appId, this.appPrivateKey, AlipayConstants.FORMAT_JSON, AlipayConstants.CHARSET_UTF8, this.PublicKey, AlipayConstants.SIGN_TYPE_RSA2);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -14,7 +14,7 @@ public interface FileConstant {
|
|||
/**
|
||||
* 服务器访问地址
|
||||
*/
|
||||
String SERVER_HOST = "154.8.193.216:9494";
|
||||
String SERVER_HOST = "39.101.78.35:9494";
|
||||
|
||||
/**
|
||||
* 服务器上传路径
|
||||
|
|
|
@ -14,6 +14,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|||
import com.cj.jiaqingjiayi.common.BaseResponse;
|
||||
import com.cj.jiaqingjiayi.common.ErrorCode;
|
||||
import com.cj.jiaqingjiayi.common.ResultUtils;
|
||||
import com.cj.jiaqingjiayi.config.AlipayClients;
|
||||
import com.cj.jiaqingjiayi.contant.RedisKeyConstant;
|
||||
import com.cj.jiaqingjiayi.contant.UserConstant;
|
||||
import com.cj.jiaqingjiayi.exception.BusinessException;
|
||||
|
@ -165,7 +166,7 @@ public class AlipayController {
|
|||
@GetMapping("/test/close")
|
||||
public String closeOrder(String orderNo) throws AlipayApiException {
|
||||
|
||||
AlipayClient alipayClient = new DefaultAlipayClient(getAlipayConfig());
|
||||
AlipayClients clients = new AlipayClients();
|
||||
AlipayTradeCloseRequest request = new AlipayTradeCloseRequest();
|
||||
AlipayTradeCloseModel model = new AlipayTradeCloseModel();
|
||||
|
||||
|
@ -175,7 +176,7 @@ public class AlipayController {
|
|||
|
||||
request.setBizModel(model);
|
||||
request.setNotifyUrl(NOURL);
|
||||
AlipayTradeCloseResponse response = alipayClient.execute(request);
|
||||
AlipayTradeCloseResponse response = clients.alipayClient().execute(request);
|
||||
|
||||
//这里应该写进日志
|
||||
|
||||
|
@ -185,7 +186,7 @@ public class AlipayController {
|
|||
|
||||
@GetMapping("/test/refund")
|
||||
public String test_refund(String orderNo) throws AlipayApiException {
|
||||
AlipayClient alipayClient = new DefaultAlipayClient(getAlipayConfig());
|
||||
AlipayClients clients = new AlipayClients();
|
||||
AlipayTradeRefundRequest request = new AlipayTradeRefundRequest();
|
||||
AlipayTradeRefundModel model = new AlipayTradeRefundModel();
|
||||
|
||||
|
@ -200,7 +201,7 @@ public class AlipayController {
|
|||
|
||||
request.setBizModel(model);
|
||||
request.setNotifyUrl(NOURL);
|
||||
AlipayTradeRefundResponse response = alipayClient.execute(request);
|
||||
AlipayTradeRefundResponse response = clients.alipayClient().execute(request);
|
||||
|
||||
String body = response.getBody();
|
||||
orders.setPaymentStatus(2);
|
||||
|
@ -213,7 +214,7 @@ public class AlipayController {
|
|||
|
||||
@GetMapping("/test/query")
|
||||
public String test_query (String orderNo) throws AlipayApiException {
|
||||
AlipayClient alipayClient = new DefaultAlipayClient(getAlipayConfig());
|
||||
AlipayClients clients = new AlipayClients();
|
||||
AlipayTradeQueryRequest request = new AlipayTradeQueryRequest();
|
||||
AlipayTradeQueryModel model = new AlipayTradeQueryModel();
|
||||
|
||||
|
@ -222,26 +223,26 @@ public class AlipayController {
|
|||
request.setBizModel(model);
|
||||
request.setNotifyUrl(NOURL);
|
||||
|
||||
AlipayTradeQueryResponse response = alipayClient.execute(request);
|
||||
AlipayTradeQueryResponse response = clients.alipayClient().execute(request);
|
||||
String body = response.getBody();
|
||||
return body;
|
||||
}
|
||||
|
||||
|
||||
|
||||
private static AlipayConfig getAlipayConfig() {
|
||||
String privateKey = "MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCrh54evp6VX68kLvmWybc945JbHaJDRJf6bDSKNwQfCkvEZxfOwYTGXu7XfZq2G/qmFJ6Xp9KxV0yYrxPwjXwPMU4E78/ZaMZ44iSTSq+qvMJMBR7PJOX1MkW7EFfhUPmb+5S0KQurjMQadY4b2VxeHwVxTRPKAdsm0tnfgN8/pO7TfpyGOWX5dRSIruQ3c+MFmJOy0cSZZ4tGlidqZDS9v4YJpmw3u5dX4BvGKtNMPaAnxSpLCDp1fd/vh6ROl71QkLFR+3mNQcwvDOGNJ2Rq78bgfkIVp0BBMySk5Mfv6kunh0QMaxK8wi+Y9swv7Iiyy7U2/zrBvA+1i3e5ctH9AgMBAAECggEBAJSiNrTjbp13RVewUNyFvIAnc4n62sE5bgw0uS5PUAXpsQ/mWW3yqLAQURxvnaFSC1bgpTA630qGoDvp8fhPUYIEslt6xnvY26qiIxly7Vegqyiegzzx90YKIvxexBfdR/4O+aNHsfIcT02yMcsWBYEVlmzAYnZ4N0OkD+EpVcpaIBv2HwGsJnczz41GQVl9GX2DOL8j8+eSWhZM0Jq3d1ksgcfUHH1TT12XCbEE3fKJEMKKlrjVPrtTb+v9m6t0okOgjW+z+IR0zY1HBR92yC+0/CP4FfkbGBhKNxsmbyU4ilTmKINHMy40bqGqrEYo+LBzhEKBT82eMbg9cJbL68ECgYEA37dP5hWEfuTWAoAwduI6OW8kTwxNddIigzTV3qlqEeo21K6RQOOTeYKXrpMmYG65MU5J3xF7AYyhb3rMpega++22Qybxlrme88hqe0s/DeSToG2mw1zYLkkHb5+oT05fCOlLmFGPeLRBfJTxjM6wPNX/1NvGOEVC9DekXuauWZECgYEAxEhmSne07LD6J2sYqsbmOb0zdOpCNT0a+7SomZwiMpVFcsxFvZhYJlcLwyR2m3deLphxwQBPbyxe8TtOZST7P7APpoeI4c0t6PL44vG3eUh+GHFVyf1dbLwMGa9gQ0JFRwBH5iDD2hfnTNfmcNUYzBRHZQK60FFlPCd566hOG60CgYBNVNJbmEiKjJOlnaYjEiRKQi7s3DXSambfr93V7/3oX2vArO8s3P3XXNsNz3POlbeSYZuLbkF00aXkITCokMjzGMKOB+Iu1c8qObcFE4eiR8b4B69DjM51gWz+mtPVRiP3sp0c8+SCNt0EMYAlyjSFcvvSGn40aUyxmqJI47iU4QKBgFYStaCkO9eriBcvFKMXE7BwMpdrftsfz6xfPawW1rw9zzWXNGH+43D0rPjHDagBQXDHcuLCwxKqb3vzmN4ryG3WRBavyqvSMPa9Tb0faGisDHelg4xPKd/b2qaMzHbSIdUP33egGKKT5t9AshH6sKQVpHU8LDXb67vkR8e6h34FAoGAf21Aea9/+3FavddWC/5j0fvESN2U58X0xf4R/FZLa5QsT/iCAo4QqaeYZvF6csWR6lu0zJB88gA+4s6G6xP1JERL3LbE2pHjDe0eNOIsWSzsINICQQ2s3Gm5mh75+/8dfAsRiAPi9nS7FJ74Tcryb4+txeZKiBZgLnEFeRLOB3U=";
|
||||
String alipayPublicKey = "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAsP/3AQ6DbZbQhFafYUdRS8F6jSXJzYfF3N14L48Jo+xlGp1FW8uq2bu8izP9qcuFxui2CzuQflo0BM+XmSmRt6KkmyGSvGmCdf4gC/doTT7xtMaQu72Mvezr69VC0Lp5iJeLVHzV5/BMFdgfGee5HnAUU5bn4Ytlqw14kCxgeLitZltvHtirq7vVCXlWyikbdtmV0HgmzaWbrC+jVyb/nk9oH8PpV5juJmhwEuiReEdKPKMdPoeJK3sZ9dHsOx+Bm3LkEY075fPvpHDtJFaLi/k7fFY+0oQxsX92qRL9kViOAhMonvFFKZFK06vxuPUtuZelGrzGttiOjVJRRGIiaQIDAQAB";
|
||||
AlipayConfig alipayConfig = new AlipayConfig();
|
||||
alipayConfig.setServerUrl("https://openapi.alipay.com/gateway.do");
|
||||
alipayConfig.setAppId("2021004144652242");
|
||||
alipayConfig.setPrivateKey(privateKey);
|
||||
alipayConfig.setFormat("json");
|
||||
alipayConfig.setAlipayPublicKey(alipayPublicKey);
|
||||
alipayConfig.setCharset("UTF-8");
|
||||
alipayConfig.setSignType("RSA2");
|
||||
return alipayConfig;
|
||||
}
|
||||
// private static AlipayConfig getAlipayConfig() {
|
||||
// String privateKey = "MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCrh54evp6VX68kLvmWybc945JbHaJDRJf6bDSKNwQfCkvEZxfOwYTGXu7XfZq2G/qmFJ6Xp9KxV0yYrxPwjXwPMU4E78/ZaMZ44iSTSq+qvMJMBR7PJOX1MkW7EFfhUPmb+5S0KQurjMQadY4b2VxeHwVxTRPKAdsm0tnfgN8/pO7TfpyGOWX5dRSIruQ3c+MFmJOy0cSZZ4tGlidqZDS9v4YJpmw3u5dX4BvGKtNMPaAnxSpLCDp1fd/vh6ROl71QkLFR+3mNQcwvDOGNJ2Rq78bgfkIVp0BBMySk5Mfv6kunh0QMaxK8wi+Y9swv7Iiyy7U2/zrBvA+1i3e5ctH9AgMBAAECggEBAJSiNrTjbp13RVewUNyFvIAnc4n62sE5bgw0uS5PUAXpsQ/mWW3yqLAQURxvnaFSC1bgpTA630qGoDvp8fhPUYIEslt6xnvY26qiIxly7Vegqyiegzzx90YKIvxexBfdR/4O+aNHsfIcT02yMcsWBYEVlmzAYnZ4N0OkD+EpVcpaIBv2HwGsJnczz41GQVl9GX2DOL8j8+eSWhZM0Jq3d1ksgcfUHH1TT12XCbEE3fKJEMKKlrjVPrtTb+v9m6t0okOgjW+z+IR0zY1HBR92yC+0/CP4FfkbGBhKNxsmbyU4ilTmKINHMy40bqGqrEYo+LBzhEKBT82eMbg9cJbL68ECgYEA37dP5hWEfuTWAoAwduI6OW8kTwxNddIigzTV3qlqEeo21K6RQOOTeYKXrpMmYG65MU5J3xF7AYyhb3rMpega++22Qybxlrme88hqe0s/DeSToG2mw1zYLkkHb5+oT05fCOlLmFGPeLRBfJTxjM6wPNX/1NvGOEVC9DekXuauWZECgYEAxEhmSne07LD6J2sYqsbmOb0zdOpCNT0a+7SomZwiMpVFcsxFvZhYJlcLwyR2m3deLphxwQBPbyxe8TtOZST7P7APpoeI4c0t6PL44vG3eUh+GHFVyf1dbLwMGa9gQ0JFRwBH5iDD2hfnTNfmcNUYzBRHZQK60FFlPCd566hOG60CgYBNVNJbmEiKjJOlnaYjEiRKQi7s3DXSambfr93V7/3oX2vArO8s3P3XXNsNz3POlbeSYZuLbkF00aXkITCokMjzGMKOB+Iu1c8qObcFE4eiR8b4B69DjM51gWz+mtPVRiP3sp0c8+SCNt0EMYAlyjSFcvvSGn40aUyxmqJI47iU4QKBgFYStaCkO9eriBcvFKMXE7BwMpdrftsfz6xfPawW1rw9zzWXNGH+43D0rPjHDagBQXDHcuLCwxKqb3vzmN4ryG3WRBavyqvSMPa9Tb0faGisDHelg4xPKd/b2qaMzHbSIdUP33egGKKT5t9AshH6sKQVpHU8LDXb67vkR8e6h34FAoGAf21Aea9/+3FavddWC/5j0fvESN2U58X0xf4R/FZLa5QsT/iCAo4QqaeYZvF6csWR6lu0zJB88gA+4s6G6xP1JERL3LbE2pHjDe0eNOIsWSzsINICQQ2s3Gm5mh75+/8dfAsRiAPi9nS7FJ74Tcryb4+txeZKiBZgLnEFeRLOB3U=";
|
||||
// String alipayPublicKey = "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAsP/3AQ6DbZbQhFafYUdRS8F6jSXJzYfF3N14L48Jo+xlGp1FW8uq2bu8izP9qcuFxui2CzuQflo0BM+XmSmRt6KkmyGSvGmCdf4gC/doTT7xtMaQu72Mvezr69VC0Lp5iJeLVHzV5/BMFdgfGee5HnAUU5bn4Ytlqw14kCxgeLitZltvHtirq7vVCXlWyikbdtmV0HgmzaWbrC+jVyb/nk9oH8PpV5juJmhwEuiReEdKPKMdPoeJK3sZ9dHsOx+Bm3LkEY075fPvpHDtJFaLi/k7fFY+0oQxsX92qRL9kViOAhMonvFFKZFK06vxuPUtuZelGrzGttiOjVJRRGIiaQIDAQAB";
|
||||
// AlipayConfig alipayConfig = new AlipayConfig();
|
||||
// alipayConfig.setServerUrl("https://openapi.alipay.com/gateway.do");
|
||||
// alipayConfig.setAppId("2021004144652242");
|
||||
// alipayConfig.setPrivateKey(privateKey);
|
||||
// alipayConfig.setFormat("json");
|
||||
// alipayConfig.setAlipayPublicKey(alipayPublicKey);
|
||||
// alipayConfig.setCharset("UTF-8");
|
||||
// alipayConfig.setSignType("RSA2");
|
||||
// return alipayConfig;
|
||||
// }
|
||||
|
||||
@PostMapping("/notifyUrl")
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
|
@ -271,7 +272,7 @@ public class AlipayController {
|
|||
//TODO 商家通知
|
||||
// websocketService.sendOrderMessage(orders);
|
||||
|
||||
String resultInfo = "buyer_id=208****42&total_amount=0.01&body=***试&trade_no=20190329**941025940236¬ify_time=2019-03-29 19:42:04&subject=**电脑网站支付&sign_type=RSA2&charset=UTF-8&auth_app_id=201****222¬ify_type=trade_status_sync&invoice_amount=0.01&out_trade_no=20190329ygyg45484544100003&trade_status=TRADE_SUCCESS&gmt_payment=2019-03-29 19:42:03&version=1.0&point_amount=0.00&sign=LDDUIGQmc+1qNtk3oyoAKVeMUKTngdX3ZjVeZOK0EjiPDJ/+Nk+0WSqcE6J7/5xb96Z/vP0yY3pVhZUiFVJ1G45/ys/HAleHh+EERZ1lkCkule1sSyaGFTKQGKx4uHpTyqIgRB1bouf19RPbSx1EkA0VkCarSy9G/OEG5Qmg8UdL2dRulMhlbOHS7tdMJJycDA8vOspOUMeQmk/H6IK9R2Kou5hN2T3KR1GWLYFK+z1jeZhQB3q52lZynO0OFjSzU4aQUBMW5QskQppBYd/ghtY/2YP+2H6YVGNgVmaheZMQ3PVTBALEV+8rZa91salH9DkKN2UCYGvNSNDT1VGCTQ==&gmt_create=2019-03-29 19:42:00&buyer_pay_amount=0.01&receipt_amount=0.01&fund_bill_list=[{\"amount\":\"0.01\",\"fundChannel\":\"PCREDIT\"}]&seller_id=208****0&app_id=2014100***22¬ify_id=20190329002221942040**8";
|
||||
String resultInfo = "buyer_id=208****24&total_amount=0.01&body=***试&trade_no=20190329**941025940236¬ify_time=2019-03-29 19:42:04&subject=**电脑网站支付&sign_type=RSA2&charset=UTF-8&auth_app_id=201****222¬ify_type=trade_status_sync&invoice_amount=0.01&out_trade_no=20190329ygyg45484544100003&trade_status=TRADE_SUCCESS&gmt_payment=2019-03-29 19:42:03&version=1.0&point_amount=0.00&sign=LDDUIGQmc+1qNtk3oyoAKVeMUKTngdX3ZjVeZOK0EjiPDJ/+Nk+0WSqcE6J7/5xb96Z/vP0yY3pVhZUiFVJ1G45/ys/HAleHh+EERZ1lkCkule1sSyaGFTKQGKx4uHpTyqIgRB1bouf19RPbSx1EkA0VkCarSy9G/OEG5Qmg8UdL2dRulMhlbOHS7tdMJJycDA8vOspOUMeQmk/H6IK9R2Kou5hN2T3KR1GWLYFK+z1jeZhQB3q52lZynO0OFjSzU4aQUBMW5QskQppBYd/ghtY/2YP+2H6YVGNgVmaheZMQ3PVTBALEV+8rZa91salH9DkKN2UCYGvNSNDT1VGCTQ==&gmt_create=2019-03-29 19:42:00&buyer_pay_amount=0.01&receipt_amount=0.01&fund_bill_list=[{\"amount\":\"0.01\",\"fundChannel\":\"PCREDIT\"}]&seller_id=208****0&app_id=2014100***22¬ify_id=20190329002221942040**8";
|
||||
//编码格式
|
||||
String charset="utf-8";
|
||||
//签名方式
|
||||
|
|
|
@ -10,9 +10,11 @@ import com.cj.jiaqingjiayi.model.CommonRequest;
|
|||
import com.cj.jiaqingjiayi.model.domain.Appointments;
|
||||
import com.cj.jiaqingjiayi.model.domain.User;
|
||||
import com.cj.jiaqingjiayi.model.request.appointments.AppointmentsAddRequest;
|
||||
import com.cj.jiaqingjiayi.model.request.appointments.AppointmentsUpdateRequest;
|
||||
import com.cj.jiaqingjiayi.model.vo.AppointmentsVO;
|
||||
import com.cj.jiaqingjiayi.service.AppointmentsService;
|
||||
import com.cj.jiaqingjiayi.service.UserService;
|
||||
import com.cj.jiaqingjiayi.utils.BeanCopyUtils;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
|
@ -99,6 +101,30 @@ public class AppointmentsController {
|
|||
boolean flag = appointmentsService.removeId(commonRequest.getId());
|
||||
|
||||
return ResultUtils.success(flag);
|
||||
}
|
||||
|
||||
@PostMapping("/update")
|
||||
@ApiOperation(value = "修改预约信息")
|
||||
public BaseResponse<Boolean> updateAppointments(@RequestBody AppointmentsUpdateRequest updateRequest) {
|
||||
ThrowUtils.throwIf(updateRequest == null, ErrorCode.NULL_ERROR);
|
||||
|
||||
|
||||
Long id = updateRequest.getId();
|
||||
Appointments appointments = appointmentsService.getById(id);
|
||||
BeanCopyUtils.copyPropertiesIgnoreEmpty(updateRequest,appointments);
|
||||
boolean flag = appointmentsService.updateById(appointments);
|
||||
|
||||
return ResultUtils.success(flag);
|
||||
}
|
||||
|
||||
@GetMapping("/list/select")
|
||||
@ApiOperation(value = "查询当前店铺预约信息")
|
||||
public BaseResponse<List<Appointments>> queryBuAppointments(@RequestParam Long id) {
|
||||
ThrowUtils.throwIf(id < 0, ErrorCode.NULL_ERROR);
|
||||
|
||||
QueryWrapper<Appointments> queryWrapper = new QueryWrapper<>();
|
||||
List<Appointments> appointmentsList = appointmentsService.queryAppointments(queryWrapper);
|
||||
|
||||
return ResultUtils.success(appointmentsList);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -91,15 +91,13 @@ public class BusinessController {
|
|||
}
|
||||
|
||||
/**
|
||||
* 管理员更新商家
|
||||
* @param businessUpdateRequest
|
||||
* @return
|
||||
* 更新商家
|
||||
*/
|
||||
@ApiOperation(value = "管理员更新商家")
|
||||
@ApiOperation(value = "更新商家")
|
||||
@PostMapping("/update")
|
||||
public BaseResponse<Boolean> updateBusiness (@RequestBody BusinessUpdateRequest businessUpdateRequest, HttpServletRequest request) {
|
||||
//判断是否为管理员
|
||||
userService.isAdmin(request);
|
||||
// userService.isAdmin(request);
|
||||
|
||||
if (businessUpdateRequest == null || businessUpdateRequest.getId() == null) {
|
||||
throw new BusinessException(ErrorCode.PARAMS_ERROR, "传入参数为空");
|
||||
|
@ -121,14 +119,12 @@ public class BusinessController {
|
|||
|
||||
/**
|
||||
* 根据id查询
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@ApiOperation(value = "管理员根据id查询商家")
|
||||
@GetMapping("/getById")
|
||||
public BaseResponse<BusinessAdminVO> getBusinessById(@RequestParam Long id, HttpServletRequest request) {
|
||||
//判断是否为管理员
|
||||
userService.isAdmin(request);
|
||||
// userService.isAdmin(request);
|
||||
ThrowUtils.throwIf(id < 0, ErrorCode.NULL_ERROR);
|
||||
|
||||
//获取商家视图
|
||||
|
|
|
@ -142,10 +142,7 @@ public class ManicuristController {
|
|||
//校验一下
|
||||
manicuristService.validManicurist(manicurist, false);
|
||||
|
||||
UpdateWrapper<Manicurist> updateWrapper = new UpdateWrapper<>();
|
||||
updateWrapper.eq("id", manicurist.getId());
|
||||
|
||||
boolean result = manicuristService.update(manicurist,updateWrapper);
|
||||
boolean result = manicuristService.updateById(manicurist);
|
||||
ThrowUtils.throwIf(!result, ErrorCode.OPERATION_ERROR);
|
||||
return ResultUtils.success(true, "修改成功");
|
||||
}
|
||||
|
|
|
@ -124,9 +124,35 @@ public class OrdersController {
|
|||
}
|
||||
|
||||
/**
|
||||
* 根据 id 获取订单信息(仅管理员)
|
||||
* 完成订单
|
||||
*/
|
||||
@ApiOperation(value = "根据 id 获取订单信息(仅管理员)")
|
||||
@ApiOperation(value = "订单完成接口")
|
||||
@PostMapping("/success")
|
||||
public BaseResponse<Boolean> successOrder(@RequestBody OrderCancelRequest orderCancelRequest, HttpServletRequest request) {
|
||||
Long orderId = orderCancelRequest.getId();
|
||||
if (orderId == null || orderId <= 0) {
|
||||
throw new BusinessException(ErrorCode.PARAMS_ERROR);
|
||||
}
|
||||
//
|
||||
Orders orders = ordersService.getById(orderId);
|
||||
ThrowUtils.throwIf(orders == null, ErrorCode.NOT_FOUND_ERROR);
|
||||
ThrowUtils.throwIf(orders.getPaymentStatus() != 0, ErrorCode.OPERATION_ERROR, "订单状态错误");
|
||||
// 判断是否为自己的订单
|
||||
// User loginUser = userService.getLoginUser(request);
|
||||
if (!orders.getUserId().equals(orderCancelRequest.getUserId())) {
|
||||
throw new BusinessException(ErrorCode.NO_AUTH);
|
||||
}
|
||||
// 修改订单状态
|
||||
orders.setPaymentStatus(4);
|
||||
boolean update = ordersService.updateById(orders);
|
||||
ThrowUtils.throwIf(!update, ErrorCode.SYSTEM_ERROR);
|
||||
return ResultUtils.success(true);
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据 id 获取订单信息
|
||||
*/
|
||||
@ApiOperation(value = "根据 id 获取订单信息")
|
||||
@GetMapping("/get")
|
||||
public BaseResponse<OrdersVO> getOrderVOById(@RequestParam Long id) {
|
||||
if (id <= 0) {
|
||||
|
@ -366,7 +392,7 @@ public class OrdersController {
|
|||
return ResultUtils.success(false); // 订单已经被抢或不存在
|
||||
}
|
||||
|
||||
// 更新订单的 errandId 和状态
|
||||
// 更新订单的状态
|
||||
orders.setManicuristId(commonRequest.getManicuristId());
|
||||
orders.setClaimStatus(1);
|
||||
boolean update = ordersService.updateById(orders);
|
||||
|
|
|
@ -0,0 +1,99 @@
|
|||
package com.cj.jiaqingjiayi.controller;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.cj.jiaqingjiayi.common.BaseResponse;
|
||||
import com.cj.jiaqingjiayi.common.ErrorCode;
|
||||
import com.cj.jiaqingjiayi.common.ResultUtils;
|
||||
import com.cj.jiaqingjiayi.exception.ThrowUtils;
|
||||
import com.cj.jiaqingjiayi.model.CommonRequest;
|
||||
import com.cj.jiaqingjiayi.model.domain.Business;
|
||||
import com.cj.jiaqingjiayi.model.domain.Recruitment;
|
||||
import com.cj.jiaqingjiayi.model.request.recruitment.RecruitmentAddRequest;
|
||||
import com.cj.jiaqingjiayi.model.request.recruitment.RecruitmentUpdateRequest;
|
||||
import com.cj.jiaqingjiayi.service.BusinessService;
|
||||
import com.cj.jiaqingjiayi.service.RecruitmentService;
|
||||
import com.cj.jiaqingjiayi.utils.BeanCopyUtils;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.List;
|
||||
|
||||
@Slf4j
|
||||
@RestController
|
||||
@Api(tags = "招聘接口")
|
||||
@RequestMapping("/recruitment")
|
||||
public class RecruitmentController {
|
||||
|
||||
|
||||
@Resource
|
||||
private RecruitmentService recruitmentService;
|
||||
|
||||
/**
|
||||
*发布招聘信息
|
||||
*/
|
||||
@ApiOperation(value = "发布招聘信息")
|
||||
@PostMapping("/add")
|
||||
public BaseResponse<Long> addRecruitment(@RequestBody RecruitmentAddRequest addRequest){
|
||||
ThrowUtils.throwIf(addRequest == null, ErrorCode.NULL_ERROR);
|
||||
|
||||
Long id = recruitmentService.addRecruitment(addRequest);
|
||||
|
||||
return ResultUtils.success(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除招聘信息
|
||||
*/
|
||||
@ApiOperation(value = "删除招聘信息")
|
||||
@GetMapping("/delete")
|
||||
public BaseResponse<Boolean> deleteRecruitmentById(@RequestParam Long id){
|
||||
ThrowUtils.throwIf(id < 0, ErrorCode.PARAMS_ERROR);
|
||||
|
||||
boolean flag = recruitmentService.deleteRecruitment(id);
|
||||
ThrowUtils.throwIf(!flag, ErrorCode.OPERATION_ERROR);
|
||||
|
||||
return ResultUtils.success(true);
|
||||
}
|
||||
|
||||
/**
|
||||
* 更改招聘信息
|
||||
*/
|
||||
@ApiOperation(value = "更改招聘信息")
|
||||
@PostMapping("/update")
|
||||
public BaseResponse<Boolean> updateRecruitment(@RequestBody RecruitmentUpdateRequest updateRequest){
|
||||
ThrowUtils.throwIf(updateRequest == null, ErrorCode.PARAMS_ERROR);
|
||||
|
||||
boolean flag = recruitmentService.updateRecruitment(updateRequest);
|
||||
ThrowUtils.throwIf(!flag, ErrorCode.OPERATION_ERROR);
|
||||
return ResultUtils.success(true);
|
||||
}
|
||||
|
||||
/**
|
||||
*查询招聘信息
|
||||
*/
|
||||
@ApiOperation(value = "查询招聘信息(商家)")
|
||||
@GetMapping("/list/select")
|
||||
public BaseResponse<List<Recruitment>> selectRecruitment(@RequestParam Long businessId){
|
||||
ThrowUtils.throwIf(businessId < 0, ErrorCode.PARAMS_ERROR);
|
||||
|
||||
List<Recruitment> recruitmentList = recruitmentService.selectRecruitment(businessId);
|
||||
|
||||
return ResultUtils.success(recruitmentList);
|
||||
}
|
||||
|
||||
/**
|
||||
*查询招聘信息
|
||||
*/
|
||||
@ApiOperation(value = "查询招聘信息")
|
||||
@GetMapping("/list/selectMy")
|
||||
public BaseResponse<List<Recruitment>> selectRecruitmentMy(){
|
||||
|
||||
List<Recruitment> recruitmentList = recruitmentService.list();
|
||||
|
||||
return ResultUtils.success(recruitmentList);
|
||||
}
|
||||
}
|
|
@ -1,9 +1,7 @@
|
|||
package com.cj.jiaqingjiayi.model.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.baomidou.mybatisplus.annotation.*;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
import lombok.Data;
|
||||
|
@ -89,6 +87,7 @@ public class Appointments implements Serializable {
|
|||
/**
|
||||
* 是否删除
|
||||
*/
|
||||
@TableLogic
|
||||
private Integer isDelete;
|
||||
|
||||
/**
|
||||
|
|
|
@ -89,6 +89,11 @@ public class Business implements Serializable {
|
|||
*/
|
||||
private Date updateTime;
|
||||
|
||||
/**
|
||||
* 服务方式
|
||||
*/
|
||||
private Integer serviceMode;
|
||||
|
||||
/**
|
||||
* 是否删除
|
||||
*/
|
||||
|
|
|
@ -1,9 +1,7 @@
|
|||
package com.cj.jiaqingjiayi.model.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.baomidou.mybatisplus.annotation.*;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
import lombok.Data;
|
||||
|
@ -59,6 +57,7 @@ public class BusinessAuth implements Serializable {
|
|||
/**
|
||||
* 是否删除
|
||||
*/
|
||||
@TableLogic
|
||||
private Integer isDelete;
|
||||
|
||||
@TableField(exist = false)
|
||||
|
|
|
@ -1,9 +1,7 @@
|
|||
package com.cj.jiaqingjiayi.model.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.baomidou.mybatisplus.annotation.*;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Date;
|
||||
|
@ -70,6 +68,7 @@ public class Cart implements Serializable {
|
|||
/**
|
||||
* 是否删除
|
||||
*/
|
||||
@TableLogic
|
||||
private Integer isDelete;
|
||||
|
||||
@TableField(exist = false)
|
||||
|
|
|
@ -1,9 +1,7 @@
|
|||
package com.cj.jiaqingjiayi.model.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.baomidou.mybatisplus.annotation.*;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
import lombok.Data;
|
||||
|
@ -69,6 +67,7 @@ public class Commodities implements Serializable {
|
|||
/**
|
||||
* 是否删除
|
||||
*/
|
||||
@TableLogic
|
||||
private Integer isDelete;
|
||||
|
||||
@TableField(exist = false)
|
||||
|
|
|
@ -1,9 +1,6 @@
|
|||
package com.cj.jiaqingjiayi.model.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.baomidou.mybatisplus.annotation.*;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
@ -50,6 +47,7 @@ public class CommoditiesGroup implements Serializable {
|
|||
/**
|
||||
* 是否删除
|
||||
*/
|
||||
@TableLogic
|
||||
private Integer isDelete;
|
||||
|
||||
@TableField(exist = false)
|
||||
|
|
|
@ -1,9 +1,7 @@
|
|||
package com.cj.jiaqingjiayi.model.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.baomidou.mybatisplus.annotation.*;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Date;
|
||||
|
@ -71,6 +69,7 @@ public class Manicuristsign implements Serializable {
|
|||
/**
|
||||
* 逻辑删除标志,0 表示未删除,1 表示已删除
|
||||
*/
|
||||
@TableLogic
|
||||
private Integer isDelete;
|
||||
|
||||
/**
|
||||
|
|
|
@ -1,9 +1,7 @@
|
|||
package com.cj.jiaqingjiayi.model.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.baomidou.mybatisplus.annotation.*;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Date;
|
||||
|
@ -65,6 +63,7 @@ public class OrderItems implements Serializable {
|
|||
/**
|
||||
* 是否删除
|
||||
*/
|
||||
@TableLogic
|
||||
private Integer isDelete;
|
||||
|
||||
@TableField(exist = false)
|
||||
|
|
|
@ -36,7 +36,7 @@ public class Orders implements Serializable {
|
|||
private Long businessId;
|
||||
|
||||
/**
|
||||
* 商家id
|
||||
* 美甲师id
|
||||
*/
|
||||
@TableField(updateStrategy = FieldStrategy.IGNORED)
|
||||
private Long manicuristId;
|
||||
|
@ -61,6 +61,11 @@ public class Orders implements Serializable {
|
|||
*/
|
||||
private BigDecimal totalPrice;
|
||||
|
||||
/**
|
||||
* 服务方式(0 - 线上, 1 - 到店)
|
||||
*/
|
||||
private Integer serviceMode;
|
||||
|
||||
/**
|
||||
* 支付方式:0微信支付
|
||||
*/
|
||||
|
@ -94,6 +99,7 @@ public class Orders implements Serializable {
|
|||
/**
|
||||
* 是否删除
|
||||
*/
|
||||
@TableLogic
|
||||
private Integer isDelete;
|
||||
|
||||
@TableField(exist = false)
|
||||
|
|
|
@ -1,9 +1,7 @@
|
|||
package com.cj.jiaqingjiayi.model.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.baomidou.mybatisplus.annotation.*;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
import lombok.Data;
|
||||
|
@ -44,6 +42,7 @@ public class Specifications implements Serializable {
|
|||
/**
|
||||
* 是否删除
|
||||
*/
|
||||
@TableLogic
|
||||
private Integer isDelete;
|
||||
|
||||
@TableField(exist = false)
|
||||
|
|
|
@ -1,9 +1,7 @@
|
|||
package com.cj.jiaqingjiayi.model.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.baomidou.mybatisplus.annotation.*;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
import lombok.Data;
|
||||
|
@ -44,6 +42,7 @@ public class SpecificationsCommodities implements Serializable {
|
|||
/**
|
||||
* 是否删除
|
||||
*/
|
||||
@TableLogic
|
||||
private Integer isDelete;
|
||||
|
||||
@TableField(exist = false)
|
||||
|
|
|
@ -57,6 +57,11 @@ public class UserRating implements Serializable {
|
|||
*/
|
||||
private String review;
|
||||
|
||||
/**
|
||||
* 图片
|
||||
*/
|
||||
private String picture;
|
||||
|
||||
/**
|
||||
* 商家回复
|
||||
*/
|
||||
|
|
|
@ -58,7 +58,7 @@ public class AppointmentsAddRequest implements Serializable {
|
|||
private String appointmentTime;
|
||||
|
||||
/**
|
||||
* 服务方式(0 - 线上, 1 - 到店)
|
||||
* 服务方式(0 - 到店, 1 - 上门)
|
||||
*/
|
||||
private Integer serviceMode;
|
||||
|
||||
|
|
|
@ -0,0 +1,81 @@
|
|||
package com.cj.jiaqingjiayi.model.request.appointments;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
@Data
|
||||
public class AppointmentsUpdateRequest implements Serializable {
|
||||
|
||||
/**
|
||||
* 预约ID
|
||||
*/
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 用户ID(关联用户表)
|
||||
*/
|
||||
private Long userId;
|
||||
|
||||
/**
|
||||
* 用户姓名
|
||||
*/
|
||||
private String userName;
|
||||
|
||||
/**
|
||||
* 手机号
|
||||
*/
|
||||
private String phone;
|
||||
|
||||
/**
|
||||
* 商家ID(关联商家表)
|
||||
*/
|
||||
private Long businessId;
|
||||
|
||||
/**
|
||||
* 商家名
|
||||
*/
|
||||
private String businessName;
|
||||
|
||||
/**
|
||||
* 美甲师ID, 如果为空到店分配
|
||||
*/
|
||||
private Long manicuristId;
|
||||
|
||||
/**
|
||||
* 美甲师名
|
||||
*/
|
||||
private String manicuristName;
|
||||
|
||||
/**
|
||||
* 预约时间
|
||||
*/
|
||||
private Date appointmentTime;
|
||||
|
||||
/**
|
||||
* 服务方式(0 - 线上, 1 - 到店)
|
||||
*/
|
||||
private Integer serviceMode;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
private String notes;
|
||||
|
||||
/**
|
||||
* 预约状态(0 - 已确认, 1 - 已完成, 2 - 已取消)
|
||||
*/
|
||||
private Integer status;
|
||||
|
||||
/**
|
||||
*订单id
|
||||
*/
|
||||
private Long orderId;
|
||||
|
||||
@TableField(exist = false)
|
||||
private static final long serialVersionUID = 1L;
|
||||
}
|
|
@ -27,6 +27,11 @@ public class BusinessAddRequest implements Serializable {
|
|||
*/
|
||||
private String userPassword;
|
||||
|
||||
/**
|
||||
* 服务方式
|
||||
*/
|
||||
private Integer serviceMode;
|
||||
|
||||
/**
|
||||
* 门店名
|
||||
*/
|
||||
|
|
|
@ -32,6 +32,11 @@ public class BusinessQueryRequest extends PageRequest implements Serializable {
|
|||
*/
|
||||
private String businessName;
|
||||
|
||||
/**
|
||||
* 服务方式
|
||||
*/
|
||||
private Integer serviceMode;
|
||||
|
||||
/**
|
||||
* 门店地址
|
||||
*/
|
||||
|
|
|
@ -55,6 +55,11 @@ public class BusinessUpdateRequest implements Serializable {
|
|||
*/
|
||||
private String businessImages;
|
||||
|
||||
/**
|
||||
* 服务方式
|
||||
*/
|
||||
private Integer serviceMode;
|
||||
|
||||
/**
|
||||
* 分类id
|
||||
*/
|
||||
|
|
|
@ -32,6 +32,11 @@ public class ManicuristAddRequest implements Serializable {
|
|||
*/
|
||||
private Integer gender;
|
||||
|
||||
/**
|
||||
* 美甲师头像的存储路径或链接
|
||||
*/
|
||||
private String manicuristAvatar;
|
||||
|
||||
/**
|
||||
* 美甲师联系电话
|
||||
*/
|
||||
|
|
|
@ -16,7 +16,6 @@ public class ManicuristUpdateRequest implements Serializable {
|
|||
/**
|
||||
* 美甲师唯一标识(主键,自增)
|
||||
*/
|
||||
@TableId(type = IdType.AUTO)
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
|
@ -54,11 +53,6 @@ public class ManicuristUpdateRequest implements Serializable {
|
|||
*/
|
||||
private String specialties;
|
||||
|
||||
/**
|
||||
* 美甲师的服务评分
|
||||
*/
|
||||
private BigDecimal rating;
|
||||
|
||||
/**
|
||||
* 美甲师的基本薪资
|
||||
*/
|
||||
|
|
|
@ -40,6 +40,11 @@ public class MyOrderQueryRequest extends PageRequest implements Serializable {
|
|||
*/
|
||||
private Integer paymentStatus;
|
||||
|
||||
/**
|
||||
* 服务方式(0 - 线上, 1 - 到店)
|
||||
*/
|
||||
private Integer serviceMode;
|
||||
|
||||
/**
|
||||
* 开始时间
|
||||
*/
|
||||
|
|
|
@ -43,6 +43,11 @@ public class OrderAddRequest implements Serializable {
|
|||
*/
|
||||
private Integer payMethod;
|
||||
|
||||
/**
|
||||
* 服务方式(0 - 线上, 1 - 到店)
|
||||
*/
|
||||
private Integer serviceMode;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
|
|
|
@ -44,6 +44,11 @@ public class OrderQueryRequest extends PageRequest implements Serializable {
|
|||
*/
|
||||
private Integer paymentStatus;
|
||||
|
||||
/**
|
||||
* 服务方式(0 - 线上, 1 - 到店)
|
||||
*/
|
||||
private Integer serviceMode;
|
||||
|
||||
/**
|
||||
* 开始时间
|
||||
*/
|
||||
|
|
|
@ -0,0 +1,28 @@
|
|||
package com.cj.jiaqingjiayi.model.request.recruitment;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class RecruitmentAddRequest {
|
||||
/**
|
||||
* 门店名称
|
||||
*/
|
||||
private String businessName;
|
||||
|
||||
/**
|
||||
* 对美甲师的要求
|
||||
*/
|
||||
private String requirements;
|
||||
|
||||
/**
|
||||
* 美甲师薪资,示例: 5k-10k/月
|
||||
*/
|
||||
private String salary;
|
||||
|
||||
/**
|
||||
* 招聘美甲师数量
|
||||
*/
|
||||
private Integer quantity;
|
||||
}
|
|
@ -0,0 +1,34 @@
|
|||
package com.cj.jiaqingjiayi.model.request.recruitment;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class RecruitmentUpdateRequest {
|
||||
|
||||
/**
|
||||
* 主键id
|
||||
*/
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 门店名称
|
||||
*/
|
||||
private String businessName;
|
||||
|
||||
/**
|
||||
* 对美甲师的要求
|
||||
*/
|
||||
private String requirements;
|
||||
|
||||
/**
|
||||
* 美甲师薪资,示例: 5k-10k/月
|
||||
*/
|
||||
private String salary;
|
||||
|
||||
/**
|
||||
* 招聘美甲师数量
|
||||
*/
|
||||
private Integer quantity;
|
||||
}
|
|
@ -27,6 +27,11 @@ public class UserRatingAddRequest implements Serializable {
|
|||
*/
|
||||
private Long orderId;
|
||||
|
||||
/**
|
||||
* 图片
|
||||
*/
|
||||
private String picture;
|
||||
|
||||
/**
|
||||
* 评分
|
||||
*/
|
||||
|
|
|
@ -59,6 +59,11 @@ public class OrdersVO implements Serializable {
|
|||
*/
|
||||
private Integer payMethod;
|
||||
|
||||
/**
|
||||
* 服务方式(0 - 线上, 1 - 到店)
|
||||
*/
|
||||
private Integer serviceMode;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
package com.cj.jiaqingjiayi.service;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.cj.jiaqingjiayi.model.domain.Appointments;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.cj.jiaqingjiayi.model.domain.CommoditiesGroup;
|
||||
|
@ -32,4 +33,6 @@ public interface AppointmentsService extends IService<Appointments> {
|
|||
* 获取预约视图列表
|
||||
*/
|
||||
List<AppointmentsVO> queryAppointmentsVO(List<Appointments> list);
|
||||
|
||||
List<Appointments> queryAppointments(QueryWrapper<Appointments> queryWrapper);
|
||||
}
|
||||
|
|
|
@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.extension.service.IService;
|
|||
import com.cj.jiaqingjiayi.model.request.attribute.AttributeAddRequest;
|
||||
import com.cj.jiaqingjiayi.model.request.attribute.AttributeUpdateRequest;
|
||||
import com.cj.jiaqingjiayi.model.vo.SpecificationsVO;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import java.util.List;
|
||||
|
|
|
@ -71,8 +71,8 @@ public class AlipayServiceImpl implements AliPayService {
|
|||
model.setTotalAmount(String.valueOf(amount));
|
||||
model.setSubject(subject);
|
||||
model.setProductCode("JSAPI_PAY");
|
||||
model.setSellerId("2088721037774480");
|
||||
model.setBuyerId("2088722037764824");
|
||||
model.setSellerId("2088721034640726");
|
||||
model.setBuyerId("2088722034659383");
|
||||
model.setOpAppId("2021004144652242");
|
||||
|
||||
///回调地址
|
||||
|
|
|
@ -124,6 +124,12 @@ public class AppointmentsServiceImpl extends ServiceImpl<AppointmentsMapper, App
|
|||
}
|
||||
return appointmentsList.stream().map(this::getAppointmentsVO).collect(Collectors.toList());
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<Appointments> queryAppointments(QueryWrapper<Appointments> queryWrapper) {
|
||||
|
||||
return this.list(queryWrapper);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -158,6 +158,7 @@ public class BusinessServiceImpl extends ServiceImpl<BusinessMapper, Business>
|
|||
Long id = businessQueryRequest.getId();
|
||||
Long userId = businessQueryRequest.getUserId();
|
||||
Long categoryId = businessQueryRequest.getCategoryId();
|
||||
Integer serviceMode = businessQueryRequest.getServiceMode();
|
||||
Integer state = businessQueryRequest.getState();
|
||||
Integer storeStatus = businessQueryRequest.getStoreStatus();
|
||||
String businessName = businessQueryRequest.getBusinessName();
|
||||
|
@ -173,6 +174,7 @@ public class BusinessServiceImpl extends ServiceImpl<BusinessMapper, Business>
|
|||
queryWrapper.eq(ObjectUtils.isNotEmpty(categoryId), "categoryId", categoryId);
|
||||
queryWrapper.eq(ObjectUtils.isNotEmpty(state), "state", state);
|
||||
queryWrapper.eq(ObjectUtils.isNotEmpty(storeStatus), "storeStatus", storeStatus);
|
||||
queryWrapper.eq(ObjectUtils.isNotEmpty(storeStatus), "serviceMode", serviceMode);
|
||||
queryWrapper.like(StringUtils.isNotBlank(businessName), "businessName", businessName);
|
||||
queryWrapper.like(StringUtils.isNotBlank(address), "address", address);
|
||||
queryWrapper.like(StringUtils.isNotBlank(businessProfile), "businessProfile", businessProfile);
|
||||
|
|
|
@ -15,6 +15,7 @@ import com.cj.jiaqingjiayi.service.SpecificationsService;
|
|||
import com.cj.jiaqingjiayi.mapper.SpecificationsMapper;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.util.CollectionUtils;
|
||||
|
||||
|
|
|
@ -49,3 +49,4 @@ alipay:
|
|||
appId: 2021004144652242
|
||||
alipayPublicKey: "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAsP/3AQ6DbZbQhFafYUdRS8F6jSXJzYfF3N14L48Jo+xlGp1FW8uq2bu8izP9qcuFxui2CzuQflo0BM+XmSmRt6KkmyGSvGmCdf4gC/doTT7xtMaQu72Mvezr69VC0Lp5iJeLVHzV5/BMFdgfGee5HnAUU5bn4Ytlqw14kCxgeLitZltvHtirq7vVCXlWyikbdtmV0HgmzaWbrC+jVyb/nk9oH8PpV5juJmhwEuiReEdKPKMdPoeJK3sZ9dHsOx+Bm3LkEY075fPvpHDtJFaLi/k7fFY+0oQxsX92qRL9kViOAhMonvFFKZFK06vxuPUtuZelGrzGttiOjVJRRGIiaQIDAQAB"
|
||||
appPrivateKey: "MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCrh54evp6VX68kLvmWybc945JbHaJDRJf6bDSKNwQfCkvEZxfOwYTGXu7XfZq2G/qmFJ6Xp9KxV0yYrxPwjXwPMU4E78/ZaMZ44iSTSq+qvMJMBR7PJOX1MkW7EFfhUPmb+5S0KQurjMQadY4b2VxeHwVxTRPKAdsm0tnfgN8/pO7TfpyGOWX5dRSIruQ3c+MFmJOy0cSZZ4tGlidqZDS9v4YJpmw3u5dX4BvGKtNMPaAnxSpLCDp1fd/vh6ROl71QkLFR+3mNQcwvDOGNJ2Rq78bgfkIVp0BBMySk5Mfv6kunh0QMaxK8wi+Y9swv7Iiyy7U2/zrBvA+1i3e5ctH9AgMBAAECggEBAJSiNrTjbp13RVewUNyFvIAnc4n62sE5bgw0uS5PUAXpsQ/mWW3yqLAQURxvnaFSC1bgpTA630qGoDvp8fhPUYIEslt6xnvY26qiIxly7Vegqyiegzzx90YKIvxexBfdR/4O+aNHsfIcT02yMcsWBYEVlmzAYnZ4N0OkD+EpVcpaIBv2HwGsJnczz41GQVl9GX2DOL8j8+eSWhZM0Jq3d1ksgcfUHH1TT12XCbEE3fKJEMKKlrjVPrtTb+v9m6t0okOgjW+z+IR0zY1HBR92yC+0/CP4FfkbGBhKNxsmbyU4ilTmKINHMy40bqGqrEYo+LBzhEKBT82eMbg9cJbL68ECgYEA37dP5hWEfuTWAoAwduI6OW8kTwxNddIigzTV3qlqEeo21K6RQOOTeYKXrpMmYG65MU5J3xF7AYyhb3rMpega++22Qybxlrme88hqe0s/DeSToG2mw1zYLkkHb5+oT05fCOlLmFGPeLRBfJTxjM6wPNX/1NvGOEVC9DekXuauWZECgYEAxEhmSne07LD6J2sYqsbmOb0zdOpCNT0a+7SomZwiMpVFcsxFvZhYJlcLwyR2m3deLphxwQBPbyxe8TtOZST7P7APpoeI4c0t6PL44vG3eUh+GHFVyf1dbLwMGa9gQ0JFRwBH5iDD2hfnTNfmcNUYzBRHZQK60FFlPCd566hOG60CgYBNVNJbmEiKjJOlnaYjEiRKQi7s3DXSambfr93V7/3oX2vArO8s3P3XXNsNz3POlbeSYZuLbkF00aXkITCokMjzGMKOB+Iu1c8qObcFE4eiR8b4B69DjM51gWz+mtPVRiP3sp0c8+SCNt0EMYAlyjSFcvvSGn40aUyxmqJI47iU4QKBgFYStaCkO9eriBcvFKMXE7BwMpdrftsfz6xfPawW1rw9zzWXNGH+43D0rPjHDagBQXDHcuLCwxKqb3vzmN4ryG3WRBavyqvSMPa9Tb0faGisDHelg4xPKd/b2qaMzHbSIdUP33egGKKT5t9AshH6sKQVpHU8LDXb67vkR8e6h34FAoGAf21Aea9/+3FavddWC/5j0fvESN2U58X0xf4R/FZLa5QsT/iCAo4QqaeYZvF6csWR6lu0zJB88gA+4s6G6xP1JERL3LbE2pHjDe0eNOIsWSzsINICQQ2s3Gm5mh75+/8dfAsRiAPi9nS7FJ74Tcryb4+txeZKiBZgLnEFeRLOB3U="
|
||||
notifyUrl: http://39.101.78.35:1107/api/Alipay/notifyUrl
|
|
@ -20,6 +20,7 @@
|
|||
<result property="storeStatus" column="storeStatus" jdbcType="TINYINT"/>
|
||||
<result property="createTime" column="createTime" jdbcType="TIMESTAMP"/>
|
||||
<result property="updateTime" column="updateTime" jdbcType="TIMESTAMP"/>
|
||||
<result property="serviceMode" column="serviceMode" jdbcType="TINYINT"/>
|
||||
<result property="isDelete" column="isDelete" jdbcType="TINYINT"/>
|
||||
</resultMap>
|
||||
|
||||
|
@ -29,6 +30,6 @@
|
|||
businessProfile,businessImages,categoryId,
|
||||
startBusiness,endBusiness,state,
|
||||
storeStatus,createTime,updateTime,
|
||||
isDelete
|
||||
serviceMode,isDelete
|
||||
</sql>
|
||||
</mapper>
|
||||
|
|
|
@ -17,6 +17,7 @@
|
|||
<result property="totalPrice" column="totalPrice" jdbcType="DECIMAL"/>
|
||||
<result property="paymentStatus" column="paymentStatus" jdbcType="TINYINT"/>
|
||||
<result property="claimStatus" column="claimStatus" jdbcType="TINYINT"/>
|
||||
<result property="serviceMode" column="serviceMode" jdbcType="TINYINT"/>
|
||||
<result property="notes" column="notes" jdbcType="VARCHAR"/>
|
||||
<result property="createTime" column="createTime" jdbcType="TIMESTAMP"/>
|
||||
<result property="updateTime" column="updateTime" jdbcType="TIMESTAMP"/>
|
||||
|
@ -29,6 +30,6 @@
|
|||
appointmentId,totalPrice,paymentStatus,
|
||||
claimStatus,notes,createTime,
|
||||
updateTime,isDelete,payMethod,
|
||||
manicuristId
|
||||
serviceMode,manicuristId
|
||||
</sql>
|
||||
</mapper>
|
||||
|
|
|
@ -12,6 +12,7 @@
|
|||
<result property="orderId" column="orderId" jdbcType="BIGINT"/>
|
||||
<result property="rating" column="rating" jdbcType="TINYINT"/>
|
||||
<result property="manicuristRating" column="manicuristRating" jdbcType="TINYINT"/>
|
||||
<result property="picture" column="picture" jdbcType="VARCHAR"/>
|
||||
<result property="review" column="review" jdbcType="VARCHAR"/>
|
||||
<result property="businessReview" column="businessReview" jdbcType="VARCHAR"/>
|
||||
<result property="createTime" column="createTime" jdbcType="TIMESTAMP"/>
|
||||
|
@ -21,6 +22,6 @@
|
|||
id,businessId,userId,
|
||||
manicuristId,orderId,rating,
|
||||
manicuristRating,review,businessReview,
|
||||
createTime
|
||||
picture,createTime
|
||||
</sql>
|
||||
</mapper>
|
||||
|
|
|
@ -1,51 +0,0 @@
|
|||
spring:
|
||||
application:
|
||||
name: jiaqingjiayi
|
||||
datasource:
|
||||
driver-class-name: com.mysql.cj.jdbc.Driver
|
||||
url: jdbc:mysql://154.8.193.216/jqjy
|
||||
username: jqjy
|
||||
password: 123456
|
||||
# url: jdbc:mysql://localhost:3306/jqjy
|
||||
# username: root
|
||||
# password: 123456
|
||||
|
||||
mvc:
|
||||
pathmatch:
|
||||
matching-strategy: ant_path_matcher
|
||||
profiles:
|
||||
active: dev
|
||||
knife4j:
|
||||
enable: true
|
||||
server:
|
||||
port: 8080
|
||||
servlet:
|
||||
context-path: /api
|
||||
session:
|
||||
timeout: 86400s
|
||||
|
||||
mybatis-plus:
|
||||
configuration:
|
||||
map-underscore-to-camel-case: false
|
||||
|
||||
global-config:
|
||||
db-config:
|
||||
logic-delete-field: isDelete
|
||||
logic-delete-value: 1
|
||||
logic-not-delete-value: 0
|
||||
|
||||
aliyun:
|
||||
oss:
|
||||
file:
|
||||
endpoint: xxxx
|
||||
keyid: xxxx
|
||||
keysecret: xxxx
|
||||
bucketname: xxxx
|
||||
|
||||
|
||||
|
||||
alipay:
|
||||
#支付宝开放平台
|
||||
appId: 2021004144652242
|
||||
alipayPublicKey: "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAsP/3AQ6DbZbQhFafYUdRS8F6jSXJzYfF3N14L48Jo+xlGp1FW8uq2bu8izP9qcuFxui2CzuQflo0BM+XmSmRt6KkmyGSvGmCdf4gC/doTT7xtMaQu72Mvezr69VC0Lp5iJeLVHzV5/BMFdgfGee5HnAUU5bn4Ytlqw14kCxgeLitZltvHtirq7vVCXlWyikbdtmV0HgmzaWbrC+jVyb/nk9oH8PpV5juJmhwEuiReEdKPKMdPoeJK3sZ9dHsOx+Bm3LkEY075fPvpHDtJFaLi/k7fFY+0oQxsX92qRL9kViOAhMonvFFKZFK06vxuPUtuZelGrzGttiOjVJRRGIiaQIDAQAB"
|
||||
appPrivateKey: "MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCrh54evp6VX68kLvmWybc945JbHaJDRJf6bDSKNwQfCkvEZxfOwYTGXu7XfZq2G/qmFJ6Xp9KxV0yYrxPwjXwPMU4E78/ZaMZ44iSTSq+qvMJMBR7PJOX1MkW7EFfhUPmb+5S0KQurjMQadY4b2VxeHwVxTRPKAdsm0tnfgN8/pO7TfpyGOWX5dRSIruQ3c+MFmJOy0cSZZ4tGlidqZDS9v4YJpmw3u5dX4BvGKtNMPaAnxSpLCDp1fd/vh6ROl71QkLFR+3mNQcwvDOGNJ2Rq78bgfkIVp0BBMySk5Mfv6kunh0QMaxK8wi+Y9swv7Iiyy7U2/zrBvA+1i3e5ctH9AgMBAAECggEBAJSiNrTjbp13RVewUNyFvIAnc4n62sE5bgw0uS5PUAXpsQ/mWW3yqLAQURxvnaFSC1bgpTA630qGoDvp8fhPUYIEslt6xnvY26qiIxly7Vegqyiegzzx90YKIvxexBfdR/4O+aNHsfIcT02yMcsWBYEVlmzAYnZ4N0OkD+EpVcpaIBv2HwGsJnczz41GQVl9GX2DOL8j8+eSWhZM0Jq3d1ksgcfUHH1TT12XCbEE3fKJEMKKlrjVPrtTb+v9m6t0okOgjW+z+IR0zY1HBR92yC+0/CP4FfkbGBhKNxsmbyU4ilTmKINHMy40bqGqrEYo+LBzhEKBT82eMbg9cJbL68ECgYEA37dP5hWEfuTWAoAwduI6OW8kTwxNddIigzTV3qlqEeo21K6RQOOTeYKXrpMmYG65MU5J3xF7AYyhb3rMpega++22Qybxlrme88hqe0s/DeSToG2mw1zYLkkHb5+oT05fCOlLmFGPeLRBfJTxjM6wPNX/1NvGOEVC9DekXuauWZECgYEAxEhmSne07LD6J2sYqsbmOb0zdOpCNT0a+7SomZwiMpVFcsxFvZhYJlcLwyR2m3deLphxwQBPbyxe8TtOZST7P7APpoeI4c0t6PL44vG3eUh+GHFVyf1dbLwMGa9gQ0JFRwBH5iDD2hfnTNfmcNUYzBRHZQK60FFlPCd566hOG60CgYBNVNJbmEiKjJOlnaYjEiRKQi7s3DXSambfr93V7/3oX2vArO8s3P3XXNsNz3POlbeSYZuLbkF00aXkITCokMjzGMKOB+Iu1c8qObcFE4eiR8b4B69DjM51gWz+mtPVRiP3sp0c8+SCNt0EMYAlyjSFcvvSGn40aUyxmqJI47iU4QKBgFYStaCkO9eriBcvFKMXE7BwMpdrftsfz6xfPawW1rw9zzWXNGH+43D0rPjHDagBQXDHcuLCwxKqb3vzmN4ryG3WRBavyqvSMPa9Tb0faGisDHelg4xPKd/b2qaMzHbSIdUP33egGKKT5t9AshH6sKQVpHU8LDXb67vkR8e6h34FAoGAf21Aea9/+3FavddWC/5j0fvESN2U58X0xf4R/FZLa5QsT/iCAo4QqaeYZvF6csWR6lu0zJB88gA+4s6G6xP1JERL3LbE2pHjDe0eNOIsWSzsINICQQ2s3Gm5mh75+/8dfAsRiAPi9nS7FJ74Tcryb4+txeZKiBZgLnEFeRLOB3U="
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user