Browse Source

1、订单模块修复

2、优惠券模块修复
3、商家模块修复
master
Aug 1 week ago
parent
commit
85b66f0eb4
28 changed files with 408 additions and 40 deletions
  1. +1
    -1
      jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/hanHaiMember/controller/HanHaiMemberController.java
  2. +1
    -1
      jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/hanHaiMember/entity/HanHaiMember.java
  3. +1
    -1
      jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/hanHaiMember/mapper/HanHaiMemberMapper.java
  4. +1
    -1
      jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/hanHaiMember/service/IHanHaiMemberService.java
  5. +1
    -1
      jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/hanHaiMember/service/impl/HanHaiMemberServiceImpl.java
  6. +1
    -1
      jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/massageVouchers/controller/MassageVouchersController.java
  7. +5
    -1
      jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/massageVouchers/entity/MassageVouchers.java
  8. +1
    -1
      jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/massageVouchers/mapper/MassageVouchersMapper.java
  9. +1
    -1
      jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/massageVouchers/service/IMassageVouchersService.java
  10. +1
    -1
      jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/massageVouchers/service/impl/MassageVouchersServiceImpl.java
  11. +6
    -0
      jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/massageVouchers/vue/MassageVouchersList.vue
  12. +5
    -0
      jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/massageVouchers/vue/modules/MassageVouchersForm.vue
  13. +13
    -0
      jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/massageVouchers/vue3/MassageVouchers.data.ts
  14. +1
    -1
      jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/massageVouchersUser/controller/MassageVouchersUserController.java
  15. +9
    -2
      jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/massageVouchersUser/entity/MassageVouchersUser.java
  16. +1
    -1
      jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/massageVouchersUser/mapper/MassageVouchersUserMapper.java
  17. +1
    -1
      jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/massageVouchersUser/service/IMassageVouchersUserService.java
  18. +1
    -1
      jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/massageVouchersUser/service/impl/MassageVouchersUserServiceImpl.java
  19. +12
    -0
      jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/massageVouchersUser/vue/MassageVouchersUserList.vue
  20. +10
    -0
      jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/massageVouchersUser/vue/modules/MassageVouchersUserForm.vue
  21. +20
    -0
      jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/massageVouchersUser/vue3/MassageVouchersUser.data.ts
  22. +2
    -2
      jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/massageController/OrderController.java
  23. +29
    -1
      jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/massageController/VouchersController.java
  24. +1
    -1
      jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/OrderService.java
  25. +13
    -0
      jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/VouchersService.java
  26. +79
    -20
      jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/OrderServiceImpl.java
  27. +7
    -0
      jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/ShopServiceImpl.java
  28. +184
    -0
      jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/VouchersServiceImpl.java

+ 1
- 1
jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/hanHaiMember/controller/HanHaiMemberController.java View File

@ -39,7 +39,7 @@ import org.jeecg.common.aspect.annotation.AutoLog;
/**
* @Description: han_hai_member
* @Author: jeecg-boot
* @Date: 2025-05-18
* @Date: 2025-05-25
* @Version: V1.0
*/
@Api(tags="han_hai_member")


+ 1
- 1
jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/hanHaiMember/entity/HanHaiMember.java View File

@ -20,7 +20,7 @@ import lombok.experimental.Accessors;
/**
* @Description: han_hai_member
* @Author: jeecg-boot
* @Date: 2025-05-18
* @Date: 2025-05-25
* @Version: V1.0
*/
@Data


+ 1
- 1
jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/hanHaiMember/mapper/HanHaiMemberMapper.java View File

@ -9,7 +9,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* @Description: han_hai_member
* @Author: jeecg-boot
* @Date: 2025-05-18
* @Date: 2025-05-25
* @Version: V1.0
*/
public interface HanHaiMemberMapper extends BaseMapper<HanHaiMember> {


+ 1
- 1
jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/hanHaiMember/service/IHanHaiMemberService.java View File

@ -6,7 +6,7 @@ import com.baomidou.mybatisplus.extension.service.IService;
/**
* @Description: han_hai_member
* @Author: jeecg-boot
* @Date: 2025-05-18
* @Date: 2025-05-25
* @Version: V1.0
*/
public interface IHanHaiMemberService extends IService<HanHaiMember> {


+ 1
- 1
jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/hanHaiMember/service/impl/HanHaiMemberServiceImpl.java View File

@ -10,7 +10,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
/**
* @Description: han_hai_member
* @Author: jeecg-boot
* @Date: 2025-05-18
* @Date: 2025-05-25
* @Version: V1.0
*/
@Service


+ 1
- 1
jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/massageVouchers/controller/MassageVouchersController.java View File

@ -39,7 +39,7 @@ import org.jeecg.common.aspect.annotation.AutoLog;
/**
* @Description: 优惠券信息表
* @Author: jeecg-boot
* @Date: 2025-03-19
* @Date: 2025-05-25
* @Version: V1.0
*/
@Api(tags="优惠券信息表")


+ 5
- 1
jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/massageVouchers/entity/MassageVouchers.java View File

@ -20,7 +20,7 @@ import lombok.experimental.Accessors;
/**
* @Description: 优惠券信息表
* @Author: jeecg-boot
* @Date: 2025-03-19
* @Date: 2025-05-25
* @Version: V1.0
*/
@Data
@ -68,4 +68,8 @@ public class MassageVouchers implements Serializable {
@Excel(name = "备注", width = 15)
@ApiModelProperty(value = "备注")
private java.lang.String remark;
/**是否可领取*/
@Excel(name = "是否可领取", width = 15)
@ApiModelProperty(value = "是否可领取")
private java.lang.String isFetch;
}

+ 1
- 1
jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/massageVouchers/mapper/MassageVouchersMapper.java View File

@ -9,7 +9,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* @Description: 优惠券信息表
* @Author: jeecg-boot
* @Date: 2025-03-19
* @Date: 2025-05-25
* @Version: V1.0
*/
public interface MassageVouchersMapper extends BaseMapper<MassageVouchers> {


+ 1
- 1
jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/massageVouchers/service/IMassageVouchersService.java View File

@ -6,7 +6,7 @@ import com.baomidou.mybatisplus.extension.service.IService;
/**
* @Description: 优惠券信息表
* @Author: jeecg-boot
* @Date: 2025-03-19
* @Date: 2025-05-25
* @Version: V1.0
*/
public interface IMassageVouchersService extends IService<MassageVouchers> {


+ 1
- 1
jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/massageVouchers/service/impl/MassageVouchersServiceImpl.java View File

@ -10,7 +10,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
/**
* @Description: 优惠券信息表
* @Author: jeecg-boot
* @Date: 2025-03-19
* @Date: 2025-05-25
* @Version: V1.0
*/
@Service


+ 6
- 0
jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/massageVouchers/vue/MassageVouchersList.vue View File

@ -147,6 +147,11 @@
align:"center",
dataIndex: 'remark'
},
{
title:'是否可领取',
align:"center",
dataIndex: 'isFetch_dictText'
},
{
title: '操作',
dataIndex: 'action',
@ -186,6 +191,7 @@
fieldList.push({type:'datetime',value:'validTime',text:'有效期'})
fieldList.push({type:'string',value:'type',text:'类型',dictCode:'vouchers_type'})
fieldList.push({type:'string',value:'remark',text:'备注',dictCode:''})
fieldList.push({type:'string',value:'isFetch',text:'是否可领取',dictCode:''})
this.superFieldList = fieldList
}
}


+ 5
- 0
jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/massageVouchers/vue/modules/MassageVouchersForm.vue View File

@ -28,6 +28,11 @@
<a-input v-model="model.remark" placeholder="请输入备注" ></a-input>
</a-form-model-item>
</a-col>
<a-col :span="24">
<a-form-model-item label="是否可领取" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="isFetch">
<j-dict-select-tag type="list" v-model="model.isFetch" dictCode="" placeholder="请选择是否可领取" />
</a-form-model-item>
</a-col>
</a-row>
</a-form-model>
</j-form-container>


+ 13
- 0
jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/massageVouchers/vue3/MassageVouchers.data.ts View File

@ -29,6 +29,11 @@ export const columns: BasicColumn[] = [
align:"center",
dataIndex: 'remark'
},
{
title: '是否可领取',
align:"center",
dataIndex: 'isFetch_dictText'
},
];
//查询数据
export const searchFormSchema: FormSchema[] = [
@ -63,4 +68,12 @@ export const formSchema: FormSchema[] = [
field: 'remark',
component: 'Input',
},
{
label: '是否可领取',
field: 'isFetch',
component: 'JDictSelectTag',
componentProps:{
dictCode:""
},
},
];

+ 1
- 1
jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/massageVouchersUser/controller/MassageVouchersUserController.java View File

@ -39,7 +39,7 @@ import org.jeecg.common.aspect.annotation.AutoLog;
/**
* @Description: 用户所持有的优惠券信息表
* @Author: jeecg-boot
* @Date: 2025-05-18
* @Date: 2025-05-26
* @Version: V1.0
*/
@Api(tags="用户所持有的优惠券信息表")


+ 9
- 2
jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/massageVouchersUser/entity/MassageVouchersUser.java View File

@ -11,7 +11,6 @@ import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.jeecg.modules.hanHaiMember.entity.HanHaiMember;
import org.jeecg.modules.massageVipCombo.entity.MassageVipCombo;
import org.springframework.format.annotation.DateTimeFormat;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.jeecg.common.aspect.annotation.Dict;
@ -23,7 +22,7 @@ import lombok.experimental.Accessors;
/**
* @Description: 用户所持有的优惠券信息表
* @Author: jeecg-boot
* @Date: 2025-05-18
* @Date: 2025-05-26
* @Version: V1.0
*/
@Data
@ -55,6 +54,10 @@ public class MassageVouchersUser implements Serializable {
@Dict(dictTable = "massage_vouchers", dicText = "title", dicCode = "id")
@ApiModelProperty(value = "关联优惠券id")
private java.lang.String vouchersId;
/**优惠券标题*/
@Excel(name = "优惠券标题", width = 15)
@ApiModelProperty(value = "优惠券标题")
private java.lang.String title;
/**优惠券类型*/
@Excel(name = "优惠券类型", width = 15, dicCode = "vouchers_type")
@Dict(dicCode = "vouchers_type")
@ -64,6 +67,10 @@ public class MassageVouchersUser implements Serializable {
@Excel(name = "优惠金额", width = 15)
@ApiModelProperty(value = "优惠金额")
private java.math.BigDecimal discountAmount;
/**有效期*/
@Excel(name = "有效期", width = 15)
@ApiModelProperty(value = "有效期")
private java.util.Date validDate;
/**使用状态*/
@Excel(name = "使用状态", width = 15, dicCode = "vouchers_status")
@Dict(dicCode = "vouchers_status")


+ 1
- 1
jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/massageVouchersUser/mapper/MassageVouchersUserMapper.java View File

@ -9,7 +9,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* @Description: 用户所持有的优惠券信息表
* @Author: jeecg-boot
* @Date: 2025-05-18
* @Date: 2025-05-26
* @Version: V1.0
*/
public interface MassageVouchersUserMapper extends BaseMapper<MassageVouchersUser> {


+ 1
- 1
jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/massageVouchersUser/service/IMassageVouchersUserService.java View File

@ -6,7 +6,7 @@ import com.baomidou.mybatisplus.extension.service.IService;
/**
* @Description: 用户所持有的优惠券信息表
* @Author: jeecg-boot
* @Date: 2025-05-18
* @Date: 2025-05-26
* @Version: V1.0
*/
public interface IMassageVouchersUserService extends IService<MassageVouchersUser> {


+ 1
- 1
jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/massageVouchersUser/service/impl/MassageVouchersUserServiceImpl.java View File

@ -10,7 +10,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
/**
* @Description: 用户所持有的优惠券信息表
* @Author: jeecg-boot
* @Date: 2025-05-18
* @Date: 2025-05-26
* @Version: V1.0
*/
@Service


+ 12
- 0
jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/massageVouchersUser/vue/MassageVouchersUserList.vue View File

@ -127,6 +127,11 @@
align:"center",
dataIndex: 'vouchersId_dictText'
},
{
title:'优惠券标题',
align:"center",
dataIndex: 'title'
},
{
title:'优惠券类型',
align:"center",
@ -137,6 +142,11 @@
align:"center",
dataIndex: 'discountAmount'
},
{
title:'有效期',
align:"center",
dataIndex: 'validDate'
},
{
title:'使用状态',
align:"center",
@ -192,8 +202,10 @@
getSuperFieldList(){
let fieldList=[];
fieldList.push({type:'string',value:'vouchersId',text:'关联优惠券id',dictCode:"massage_vouchers,title,id"})
fieldList.push({type:'string',value:'title',text:'优惠券标题',dictCode:''})
fieldList.push({type:'string',value:'type',text:'优惠券类型',dictCode:'vouchers_type'})
fieldList.push({type:'BigDecimal',value:'discountAmount',text:'优惠金额',dictCode:''})
fieldList.push({type:'datetime',value:'validDate',text:'有效期'})
fieldList.push({type:'string',value:'status',text:'使用状态',dictCode:'vouchers_status'})
fieldList.push({type:'string',value:'useShop',text:'使用门店',dictCode:"massage_shop,shop,id"})
fieldList.push({type:'datetime',value:'useTime',text:'使用时间'})


+ 10
- 0
jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/massageVouchersUser/vue/modules/MassageVouchersUserForm.vue View File

@ -8,6 +8,11 @@
<j-dict-select-tag type="list" v-model="model.vouchersId" dictCode="massage_vouchers,title,id" placeholder="请选择关联优惠券id" />
</a-form-model-item>
</a-col>
<a-col :span="24">
<a-form-model-item label="优惠券标题" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="title">
<a-input v-model="model.title" placeholder="请输入优惠券标题" ></a-input>
</a-form-model-item>
</a-col>
<a-col :span="24">
<a-form-model-item label="优惠券类型" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="type">
<j-dict-select-tag type="list" v-model="model.type" dictCode="vouchers_type" placeholder="请选择优惠券类型" />
@ -18,6 +23,11 @@
<a-input-number v-model="model.discountAmount" placeholder="请输入优惠金额" style="width: 100%" />
</a-form-model-item>
</a-col>
<a-col :span="24">
<a-form-model-item label="有效期" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="validDate">
<j-date placeholder="请选择有效期" v-model="model.validDate" :show-time="true" date-format="YYYY-MM-DD HH:mm:ss" style="width: 100%" />
</a-form-model-item>
</a-col>
<a-col :span="24">
<a-form-model-item label="使用状态" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="status">
<j-dict-select-tag type="list" v-model="model.status" dictCode="vouchers_status" placeholder="请选择使用状态" />


+ 20
- 0
jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/massageVouchersUser/vue3/MassageVouchersUser.data.ts View File

@ -9,6 +9,11 @@ export const columns: BasicColumn[] = [
align:"center",
dataIndex: 'vouchersId_dictText'
},
{
title: '优惠券标题',
align:"center",
dataIndex: 'title'
},
{
title: '优惠券类型',
align:"center",
@ -19,6 +24,11 @@ export const columns: BasicColumn[] = [
align:"center",
dataIndex: 'discountAmount'
},
{
title: '有效期',
align:"center",
dataIndex: 'validDate'
},
{
title: '使用状态',
align:"center",
@ -53,6 +63,11 @@ export const formSchema: FormSchema[] = [
dictCode:"massage_vouchers,title,id"
},
},
{
label: '优惠券标题',
field: 'title',
component: 'Input',
},
{
label: '优惠券类型',
field: 'type',
@ -66,6 +81,11 @@ export const formSchema: FormSchema[] = [
field: 'discountAmount',
component: 'InputNumber',
},
{
label: '有效期',
field: 'validDate',
component: 'Input',
},
{
label: '使用状态',
field: 'status',


+ 2
- 2
jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/massageController/OrderController.java View File

@ -70,8 +70,8 @@ public class OrderController {
//订单核销
@ApiOperation(value="订单-订单核销", notes="订单-订单核销")
@RequestMapping(value = "/overOrder", method = {RequestMethod.POST})
public Result<?> overOrder(@RequestHeader("X-Access-Token") String token, String orderId){
return orderService.overOrder(token, orderId);
public Result<?> overOrder(@RequestHeader("X-Access-Token") String token, String orderId, String type){
return orderService.overOrder(token, orderId, type);
}
//申请退款


+ 29
- 1
jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/massageController/VouchersController.java View File

@ -27,12 +27,40 @@ public class VouchersController {
/******************************************************************************************************************/
//优惠券-优惠券列表
@ApiOperation(value="优惠券-优惠券列表", notes="type:0-抵扣 1-代金券;status:0-未使用 1-已使用")
@ApiOperation(value="优惠券-我的优惠券列表", notes="type:0-抵扣 1-代金券;status:0-未使用 1-已使用")
@RequestMapping(value = "/queryVouchersList", method = {RequestMethod.GET})
public Result<?> queryVouchersList(@RequestHeader("X-Access-Token") String token, MassageVouchersUser massageVouchersUser, PageBean pageBean){
return vouchersService.queryVouchersList(token, massageVouchersUser, pageBean);
}
//根据id查看优惠券详情
@ApiOperation(value="优惠券-根据id查看优惠券详情", notes="优惠券-根据id查看优惠券详情")
@RequestMapping(value = "/queryVouchersById", method = {RequestMethod.GET})
public Result<?> queryVouchersById(@RequestHeader("X-Access-Token") String token, String userVouchersId){
return vouchersService.queryVouchersById(token, userVouchersId);
}
//查看可领取的优惠券
@ApiOperation(value="优惠券-查看可领取的优惠券", notes="优惠券-查看可领取的优惠券")
@RequestMapping(value = "/queryFetchVouchersList", method = {RequestMethod.GET})
public Result<?> queryFetchVouchersList(@RequestHeader("X-Access-Token") String token){
return vouchersService.queryFetchVouchersList(token);
}
//领取优惠券
@ApiOperation(value="优惠券-领取优惠券", notes="优惠券-领取优惠券")
@RequestMapping(value = "/fetchVouchers", method = {RequestMethod.POST})
public Result<?> fetchVouchers(@RequestHeader("X-Access-Token") String token, String vouchersId){
return vouchersService.fetchVouchers(token, vouchersId);
}
//代金券核销
@ApiOperation(value="代金券-代金券核销", notes="代金券-代金券核销")
@RequestMapping(value = "/useVouchers", method = {RequestMethod.POST})
public Result<?> useVouchers(@RequestHeader("X-Access-Token") String token, String userVouchersId){
return vouchersService.useVouchers(token, userVouchersId);
}
//优惠券-可使用门店列表
@ApiOperation(value="优惠券-可使用门店列表", notes="优惠券-可使用门店列表")
@RequestMapping(value = "/queryShopList", method = {RequestMethod.GET})


+ 1
- 1
jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/OrderService.java View File

@ -29,7 +29,7 @@ public interface OrderService {
public Result<?> payOrder(String token, String orderId, String payType);
//订单核销
public Result<?> overOrder(String token, String orderId);
public Result<?> overOrder(String token, String orderId, String type);
//申请退款
public Result<?> rollbackOrder(String token, String orderId);


+ 13
- 0
jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/VouchersService.java View File

@ -4,6 +4,7 @@ import io.swagger.annotations.ApiOperation;
import org.jeecg.common.api.vo.Result;
import org.jeecg.modules.apiBean.PageBean;
import org.jeecg.modules.massageVouchersUser.entity.MassageVouchersUser;
import org.springframework.web.bind.annotation.RequestHeader;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
@ -11,6 +12,18 @@ public interface VouchersService {
//优惠券-优惠券列表
public Result<?> queryVouchersList(String token, MassageVouchersUser massageVouchersUser, PageBean pageBean);
//根据id查看优惠券详情
public Result<?> queryVouchersById(@RequestHeader("X-Access-Token") String token, String userVouchersId);
//查看可领取的优惠券
public Result<?> queryFetchVouchersList(String token);
//领取优惠券
public Result<?> fetchVouchers(String token, String vouchersId);
//代金券核销
public Result<?> useVouchers(String token, String userVouchersId);
//优惠券-可使用门店列表
public Result<?> queryShopList(PageBean pageBean);
}

+ 79
- 20
jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/OrderServiceImpl.java View File

@ -13,6 +13,8 @@ import org.jeecg.modules.apiService.OrderService;
import org.jeecg.modules.apiUtils.CommonUtils;
import org.jeecg.modules.hanHaiMember.entity.HanHaiMember;
import org.jeecg.modules.hanHaiMember.service.IHanHaiMemberService;
import org.jeecg.modules.massageConfig.entity.MassageConfig;
import org.jeecg.modules.massageConfig.service.IMassageConfigService;
import org.jeecg.modules.massageItem.entity.MassageItem;
import org.jeecg.modules.massageItem.service.IMassageItemService;
import org.jeecg.modules.massageOrder.entity.MassageOrder;
@ -29,6 +31,7 @@ import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.math.BigDecimal;
import java.util.Date;
@Slf4j
@Service
@ -58,6 +61,9 @@ public class OrderServiceImpl implements OrderService {
//门店信息
@Resource
private IMassageVouchersUserService massageVouchersUserService;
//系统配置信息
@Resource
private IMassageConfigService massageConfigService;
/******************************************************************************************************************/
//查看订单列表
@ -330,40 +336,83 @@ public class OrderServiceImpl implements OrderService {
//订单核销
@Override
public Result<?> overOrder(String token, String orderId) {
public Result<?> overOrder(String token, String orderId, String type) {
//权限验证
HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token);
try {
//查询核销店铺信息
MassageShop shop = massageShopService
.lambdaQuery()
.eq(MassageShop::getUserId, hanHaiMember.getId())
.eq(MassageShop::getStatus, 1)
.one();
if(null == shop){
return Result.error("核销失败,用户不存在审核通过的店铺信息");
}
//订单信息
MassageOrder massageOrder = massageOrderService.getById(orderId);
if("0".equals(type)){
//查询核销店铺信息
MassageShop shop = massageShopService
.lambdaQuery()
.eq(MassageShop::getUserId, hanHaiMember.getId())
.eq(MassageShop::getStatus, 1)
.one();
if(null == shop){
return Result.error("核销失败,用户不存在审核通过的店铺信息");
}
//查询服务信息
MassageItem item = massageItemService.getById(massageOrder.getItemId());
//订单信息
MassageOrder massageOrder = massageOrderService.getById(orderId);
//查询服务信息
MassageItem item = massageItemService.getById(massageOrder.getItemId());
//修改订单信息
massageOrder.setStatus("2");//订单状态
massageOrder.setShopId(shop.getId());//核销店铺
massageOrder.setUseTime(CommonUtils.getCurrentTime());//订单核销时间
massageOrderService.updateById(massageOrder);
return Result.OK("核销成功");
}else if("1".equals(type)){
//查询核销店铺信息
MassageShop shop = massageShopService
.lambdaQuery()
.eq(MassageShop::getUserId, hanHaiMember.getId())
.eq(MassageShop::getStatus, 1)
.one();
if(null == shop){
return Result.error("核销失败,用户不存在审核通过的店铺信息");
}
//查看代金券是否存在
MassageVouchersUser vouchersUser = massageVouchersUserService
.lambdaQuery()
.eq(MassageVouchersUser::getId, orderId)
.eq(MassageVouchersUser::getUserId, hanHaiMember.getId())
.eq(MassageVouchersUser::getStatus, "0")//状态为未使用
.gt(MassageVouchersUser::getValidDate, CommonUtils.getCurrentTime())//状态为未失效
.one();
if(null == vouchersUser){
return Result.error("代金券不存在或已使用、已失效,请检查代金券id:"+orderId);
}
//使用优惠券
vouchersUser.setStatus("1");
vouchersUser.setUseShop(shop.getShop());
vouchersUser.setUseTime(CommonUtils.getCurrentTime());
boolean result = massageVouchersUserService.updateById(vouchersUser);
if(result){
return Result.error("代金券核销成功");
}else {
return Result.error("代金券核销失败");
}
}else {
return Result.error("核销失败, 编号类型输入错误(0-订单编号 1-优惠券编号),请检查输入类型:"+type);
}
//修改订单信息
massageOrder.setStatus("2");//订单状态
massageOrder.setShopId(shop.getId());//核销店铺
massageOrder.setUseTime(CommonUtils.getCurrentTime());//订单核销时间
massageOrderService.updateById(massageOrder);
return Result.OK("核销成功");
}catch (Exception e){
e.printStackTrace();
return Result.error("核销失败");
}
}
//申请退款
@ -519,8 +568,18 @@ public class OrderServiceImpl implements OrderService {
//如果订单存在则修改订单状态
if (null != massageOrder){
if("0".equals(massageOrder.getStatus())){
//订单有效期
Date oldTime = CommonUtils.getCurrentTime();
MassageConfig config = massageConfigService
.lambdaQuery()
.eq(MassageConfig::getParamCode, "order_valid_time")
.one();
int addTime = Integer.parseInt(config.getParamValueText());
Date validTime = CommonUtils.getValidTime(oldTime, addTime);
massageOrder.setStatus("1");//订单状态
massageOrder.setPayTime(CommonUtils.getCurrentTime());//订单支付时间
massageOrder.setValidTime(validTime);//订单有效期
massageOrderService.updateById(massageOrder);
}
}


+ 7
- 0
jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/ShopServiceImpl.java View File

@ -84,10 +84,17 @@ public class ShopServiceImpl implements ShopService {
.eq(MassageShop::getUserId, hanHaiMember.getId())
.one();
if(null == one){
return Result.error("还未成为商家,请填写商家信息申请成为商家");
}
//商家审核通过,修改用户商户状态
if("1".equals(one.getStatus())){
hanHaiMember.setIsMerchants("1");
hanHaiMemberService.updateById(hanHaiMember);
}else {
hanHaiMember.setIsMerchants("0");
hanHaiMemberService.updateById(hanHaiMember);
}
return Result.OK("商家详情", one);


+ 184
- 0
jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/VouchersServiceImpl.java View File

@ -7,16 +7,20 @@ import org.jeecg.common.api.vo.Result;
import org.jeecg.config.shiro.ShiroRealm;
import org.jeecg.modules.apiBean.PageBean;
import org.jeecg.modules.apiService.VouchersService;
import org.jeecg.modules.apiUtils.CommonUtils;
import org.jeecg.modules.hanHaiMember.entity.HanHaiMember;
import org.jeecg.modules.hanHaiMember.service.IHanHaiMemberService;
import org.jeecg.modules.massageShop.entity.MassageShop;
import org.jeecg.modules.massageShop.service.IMassageShopService;
import org.jeecg.modules.massageVouchers.entity.MassageVouchers;
import org.jeecg.modules.massageVouchers.service.IMassageVouchersService;
import org.jeecg.modules.massageVouchersUser.entity.MassageVouchersUser;
import org.jeecg.modules.massageVouchersUser.service.IMassageVouchersUserService;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.List;
@Service
public class VouchersServiceImpl implements VouchersService {
@ -42,6 +46,7 @@ public class VouchersServiceImpl implements VouchersService {
public Result<?> queryVouchersList(String token, MassageVouchersUser massageVouchersUser, PageBean pageBean) {
//权限验证
HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token);
//返回信息
String massege = "";
//分页信息
@ -66,6 +71,17 @@ public class VouchersServiceImpl implements VouchersService {
//优惠券使用状态
query.eq(MassageVouchersUser::getStatus, massageVouchersUser.getStatus());
}
//优惠券使用状态0-未使用 1-已使用 2-已失效
if(StringUtils.isNotEmpty(massageVouchersUser.getStatus())){
if("2".equals(massageVouchersUser.getStatus())){
query.lt(MassageVouchersUser::getValidDate, CommonUtils.getCurrentTime());//已失效
}else {
query.eq(MassageVouchersUser::getStatus, massageVouchersUser.getStatus());
if("0".equals(massageVouchersUser.getStatus())){
query.gt(MassageVouchersUser::getValidDate, CommonUtils.getCurrentTime());//未失效
}
}
}
//优惠券所属
query.eq(MassageVouchersUser::getUserId, hanHaiMember.getId());
@ -82,6 +98,174 @@ public class VouchersServiceImpl implements VouchersService {
}
}
//根据id查看优惠券详情
@Override
public Result<?> queryVouchersById(String token, String userVouchersId) {
//权限验证
HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token);
try{
MassageVouchersUser vouchersUser = massageVouchersUserService
.lambdaQuery()
.eq(MassageVouchersUser::getUserId, hanHaiMember.getId())
.eq(MassageVouchersUser::getId, userVouchersId)
.one();
if(null == vouchersUser){
return Result.error("优惠券不存在,请检查用户优惠券id:", userVouchersId);
}
return Result.OK("优惠券详情", vouchersUser);
}catch (Exception e){
e.printStackTrace();
return Result.error("优惠券详情获取失败");
}
}
//查看可领取优惠券列表
@Override
public Result<?> queryFetchVouchersList(String token) {
//权限验证
HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token);
//返回信息
String massege = "";
try{
//获取可领取的优惠券
List<MassageVouchers> pageList = massageVouchersService
.lambdaQuery()
.eq(MassageVouchers::getIsFetch, "1")
.gt(MassageVouchers::getValidTime, CommonUtils.getCurrentTime())
.orderByDesc(MassageVouchers::getCreateTime)
.list();
//获取已领取的优惠券
List<MassageVouchersUser> vouchersUserList = massageVouchersUserService
.lambdaQuery()
.eq(MassageVouchersUser::getUserId, hanHaiMember.getId())
.list();
//剔除已领取的优惠券信息
//查询已领取的优惠券信息
List<String> ids = new ArrayList<>();
for (MassageVouchers vouchers : pageList) {
for (MassageVouchersUser massageVouchersUser : vouchersUserList) {
String vouchersUserId = massageVouchersUser.getVouchersId();
if(vouchers.getId().equals(vouchersUserId)){
ids.add(vouchersUserId);
break;
}
}
}
//剔除优惠券信息
for (int i = 0; i < pageList.size(); i++) {
for (String id : ids) {
if(pageList.get(i).getId().equals(id)){
pageList.remove(i);
}
}
}
return Result.OK("优惠券列表", pageList);
}catch (Exception e){
e.printStackTrace();
return Result.error("优惠券列表查询失败");
}
}
//领取优惠券
@Override
public Result<?> fetchVouchers(String token, String vouchersId) {
//权限验证
HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token);
try{
//查看优惠券是否存在
MassageVouchers vouchers = massageVouchersService.getById(vouchersId);
if(null == vouchers){
return Result.error("优惠券不存在,请检查优惠券id:"+vouchersId);
}
//查看用户是否领取过优惠券
MassageVouchersUser massageVouchersUser = massageVouchersUserService
.lambdaQuery()
.eq(MassageVouchersUser::getVouchersId, vouchersId)
.eq(MassageVouchersUser::getUserId, hanHaiMember.getId())
.one();
if(null != massageVouchersUser){
return Result.error("已领取过优惠券,不可重复领取");
}
//添加用户优惠券信息
MassageVouchersUser vouchersUser = new MassageVouchersUser();
vouchersUser.setUserId(hanHaiMember.getId());
vouchersUser.setVouchersId(vouchers.getId());
vouchersUser.setType(vouchers.getType());
vouchersUser.setDiscountAmount(vouchers.getAmount());
vouchersUser.setStatus("0");
vouchersUser.setValidDate(vouchers.getValidTime());
boolean result = massageVouchersUserService.save(vouchersUser);
if(result){
return Result.error("优惠券领取成功");
}else {
return Result.error("优惠券领取失败");
}
}catch (Exception e){
e.printStackTrace();
return Result.error("优惠券领取失败");
}
}
//代金券核销
@Override
public Result<?> useVouchers(String token, String userVouchersId) {
//权限验证
HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token);
try{
//查询核销店铺信息
MassageShop shop = massageShopService
.lambdaQuery()
.eq(MassageShop::getUserId, hanHaiMember.getId())
.eq(MassageShop::getStatus, 1)
.one();
if(null == shop){
return Result.error("核销失败,用户不存在审核通过的店铺信息");
}
//查看代金券是否存在
MassageVouchersUser vouchersUser = massageVouchersUserService
.lambdaQuery()
.eq(MassageVouchersUser::getId, userVouchersId)
.eq(MassageVouchersUser::getUserId, hanHaiMember.getId())
.eq(MassageVouchersUser::getStatus, "0")//状态为未使用
.gt(MassageVouchersUser::getValidDate, CommonUtils.getCurrentTime())//状态为未失效
.one();
if(null == vouchersUser){
return Result.error("代金券不存在或已使用、已失效,请检查代金券id:"+userVouchersId);
}
//使用优惠券
vouchersUser.setStatus("1");
vouchersUser.setUseShop(shop.getShop());
vouchersUser.setUseTime(CommonUtils.getCurrentTime());
boolean result = massageVouchersUserService.updateById(vouchersUser);
if(result){
return Result.error("代金券核销成功");
}else {
return Result.error("代金券核销失败");
}
}catch (Exception e){
e.printStackTrace();
return Result.error("代金券核销失败");
}
}
//优惠券-可使用门店列表
@Override
public Result<?> queryShopList(PageBean pageBean) {


Loading…
Cancel
Save