From 7f024bec9d668c1974f5d70297f0b34b6205e67b Mon Sep 17 00:00:00 2001 From: YunaiV <> Date: Fri, 5 Apr 2019 22:27:57 +0800 Subject: [PATCH 1/5] =?UTF-8?q?=E5=90=8E=E7=AB=AF=20+=20=E5=89=8D=E7=AB=AF?= =?UTF-8?q?=EF=BC=9A=E4=BC=98=E6=83=A0=E5=8A=B5=E5=88=97=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../promotion/couponCardTemplateList.js | 12 +- .../pages/Promotion/CouponCardTemplateList.js | 142 ++++++++++++------ admin-web/src/services/promotion.js | 6 + .../AdminsCouponTemplateController.java | 27 +++- .../convert/CouponTemplateConvert.java | 16 +- .../vo/admins/AdminsCouponTemplatePageVO.java | 34 +++++ .../vo/admins/AdminsCouponTemplateVO.java | 19 ++- .../convert/BannerConvertImpl.java | 122 +++++++++++++++ .../promotion/api/bo/CouponTemplateBO.java | 12 +- .../api/bo/CouponTemplatePageBO.java | 28 ++++ .../constant/CouponTemplateStatusEnum.java | 2 +- .../api/dto/CouponTemplatePageDTO.java | 64 ++++++++ .../biz/convert/CouponTemplateConvert.java | 6 +- .../biz/dao/CouponTemplateMapper.java | 6 +- .../biz/dataobject/CouponTemplateDO.java | 33 ++-- .../biz/service/CouponServiceImpl.java | 13 +- .../resources/mapper/CouponTemplateMapper.xml | 23 ++- 17 files changed, 470 insertions(+), 95 deletions(-) create mode 100644 promotion/promotion-application/src/main/java/cn/iocoder/mall/promotion/application/vo/admins/AdminsCouponTemplatePageVO.java create mode 100644 promotion/promotion-application/target/generated-sources/annotations/cn/iocoder/mall/promotion/application/convert/BannerConvertImpl.java diff --git a/admin-web/src/models/promotion/couponCardTemplateList.js b/admin-web/src/models/promotion/couponCardTemplateList.js index a0687bf51..3e8c00191 100644 --- a/admin-web/src/models/promotion/couponCardTemplateList.js +++ b/admin-web/src/models/promotion/couponCardTemplateList.js @@ -1,16 +1,15 @@ import {message} from 'antd'; import { - addProductRecommend, deleteProductRecommend, - queryProductRecommend, updateProductRecommend, updateProductRecommendStatus, addCouponCardTemplate, + getCouponCardTemplatePage, } from '../../services/promotion'; import PaginationHelper from '../../../helpers/PaginationHelper'; const SEARCH_PARAMS_DEFAULT = { - type: 1, + // type: 1, }; export default { @@ -40,7 +39,10 @@ export default { }); // 请求 - const response = yield call(queryProductRecommend, payload); + const response = yield call(getCouponCardTemplatePage, { + ...payload, + type: 1 + }); // 响应 yield put({ type: 'setAll', @@ -48,7 +50,7 @@ export default { list: response.data.list, pagination: PaginationHelper.formatPagination(response.data, payload), searchParams: { - type: payload.type + // type: payload.type } }, }); diff --git a/admin-web/src/pages/Promotion/CouponCardTemplateList.js b/admin-web/src/pages/Promotion/CouponCardTemplateList.js index fc7461d7e..be873532e 100644 --- a/admin-web/src/pages/Promotion/CouponCardTemplateList.js +++ b/admin-web/src/pages/Promotion/CouponCardTemplateList.js @@ -32,7 +32,14 @@ const SelectOption = Select.Option; const { TreeNode } = Tree; const RangePicker = DatePicker.RangePicker; const status = ['未知', '正常', '禁用']; -const types = ['未知', '新品推荐', '热卖推荐']; +const rangeType = { + 10: '所有可用', + 20: '部分商品可用', + 21: '部分商品不可用', + 30: '部分分类可用', + 31: '部分分类不可用'}; +const preferentialType = ['未知', '代金卷', '折扣卷']; +const dateType = ['未知', '固定日期', '领取日期']; // 列表 function List ({ dataSource, loading, pagination, searchParams, dispatch, @@ -44,7 +51,7 @@ function List ({ dataSource, loading, pagination, searchParams, dispatch, content: `${record.productSpuId}`, onOk() { dispatch({ - type: 'productRecommendList/updateStatus', + type: 'couponCardTemplateList/updateStatus', payload: { id: record.id, status: record.status === 1 ? 2 : 1, @@ -55,48 +62,91 @@ function List ({ dataSource, loading, pagination, searchParams, dispatch, }); } - function handleDelete(record) { - Modal.confirm({ - title: `确认删除?`, - content: `${record.productSpuId}`, - onOk() { - dispatch({ - type: 'productRecommendList/delete', - payload: { - id: record.id, - }, - }); - }, - onCancel() {}, - }); - } + // function handleDelete(record) { + // Modal.confirm({ + // title: `确认删除?`, + // content: `${record.productSpuId}`, + // onOk() { + // dispatch({ + // type: 'couponCardTemplateList/delete', + // payload: { + // id: record.id, + // }, + // }); + // }, + // onCancel() {}, + // }); + // } const columns = [ { - title: '推荐类型', - dataIndex: 'type', + title: '名称', + dataIndex: 'title', + }, + { + title: '类型', + dataIndex: 'preferentialType', render(val) { - return {types[val]}; // TODO 芋艿,此处要改 + return {preferentialType[val]}; }, }, { - title: '商品', - dataIndex: 'productSpuId', + title: '优惠内容', + render(val, record) { + let content; + // priceAvailable; + if (record.priceAvailable === 0) { + content = '无门槛,'; + } else { + content = '满 ' + record.priceAvailable / 100 + ' 元,'; + } + if (record.preferentialType === 1) { + content += '减 ' + record.priceOff / 100 + ' 元'; + } else { + content += '打' + record.percentOff / 100.0 + '折'; + if (record.discountPriceLimit) { + content += ', 最多减 ' + record.discountPriceLimit / 100 + ' 元'; + } + } + return content; + } }, { - title: '排序值', - dataIndex: 'sort', + title: '可使用商品', + dataIndex: 'rangeType', + render: val => {rangeType[val]}, + }, + { + title: '有效期', + render(val, record) { + let content = dateType[record.dateType] + ' '; + // priceAvailable; + if (record.dateType === 1) { + content += moment(new Date(record.validStartTime)).format('YYYY-MM-DD') + + '~' + moment(new Date(record.validEndTime)).format('YYYY-MM-DD'); + } else if (record.dateType === 2) { + content += record.fixedStartTerm + '-' + record.fixedEndTerm + ' 天'; + } + return content; + } + }, + { + title: '已领取/剩余', + // 已使用 TODO 芋艿 + // 支付金额(元) TODO 芋艿 + // 客单价(元) TODO 芋艿 + render(val, record) { + return `${record.statFetchNum} / ` + (record.total - record.statFetchNum); + } }, { title: '状态', dataIndex: 'status', - render(val) { - return {status[val]}; // TODO 芋艿,此处要改 - }, + render: val => {status[val]}, }, { - title: '备注', - dataIndex: 'memo', + title: '使用说明', + dataIndex: 'description', }, { title: '创建时间', @@ -105,7 +155,7 @@ function List ({ dataSource, loading, pagination, searchParams, dispatch, }, { title: '操作', - width: 360, + width: 120, render: (text, record) => { const statusText = record.status === 1 ? '禁用' : '开启'; // TODO 芋艿,此处要改 return ( @@ -115,15 +165,15 @@ function List ({ dataSource, loading, pagination, searchParams, dispatch, handleStatus(record)}> {statusText} - { - record.status === 2 ? - - - handleDelete(record)}> - 删除 - - : null - } + {/*{*/} + {/* record.status === 2 ?*/} + {/* */} + {/* */} + {/* handleDelete(record)}>*/} + {/* 删除*/} + {/* */} + {/* : null*/} + {/*}*/} ); }, @@ -132,7 +182,7 @@ function List ({ dataSource, loading, pagination, searchParams, dispatch, function onPageChange(page) { // 翻页 dispatch({ - type: 'productRecommendList/query', + type: 'couponCardTemplateList/query', payload: { pageNo: page.current, pageSize: page.pageSize, @@ -164,7 +214,7 @@ const SearchForm = Form.create()(props => { function search() { dispatch({ - type: 'productRecommendList/query', + type: 'couponCardTemplateList/query', payload: { ...PaginationHelper.defaultPayload, ...form.getFieldsValue() @@ -369,7 +419,7 @@ const AddOrUpdateForm = Form.create()(props => { initialValue: formVals.dateType, })( )} @@ -452,10 +502,10 @@ const AddOrUpdateForm = Form.create()(props => { ); }); -@connect(({ productRecommendList }) => ({ +@connect(({ couponCardTemplateList }) => ({ // list: productRecommend.list, // pagination: productRecommend.pagination, - ...productRecommendList, + ...couponCardTemplateList, })) // 主界面 @@ -465,7 +515,7 @@ class CouponCardTemplateLists extends PureComponent { componentDidMount() { const { dispatch } = this.props; dispatch({ - type: 'productRecommendList/query', + type: 'couponCardTemplateList/query', payload: { ...PaginationHelper.defaultPayload }, @@ -475,7 +525,7 @@ class CouponCardTemplateLists extends PureComponent { handleModalVisible = (modalVisible, modalType, record) => { const { dispatch } = this.props; dispatch({ - type: 'productRecommendList/setAll', + type: 'couponCardTemplateList/setAll', payload: { modalVisible, modalType, diff --git a/admin-web/src/services/promotion.js b/admin-web/src/services/promotion.js index c3c9e7994..ed5bc5e25 100644 --- a/admin-web/src/services/promotion.js +++ b/admin-web/src/services/promotion.js @@ -67,6 +67,12 @@ export async function deleteProductRecommend(params) { // coupon +export async function getCouponCardTemplatePage(params) { + return request(`/promotion-api/admins/coupon/template/page?${stringify(params)}`, { + method: 'GET', + }); +} + export async function addCouponCardTemplate(params) { return request(`/promotion-api/admins/coupon/template/add_card?${stringify(params)}`, { method: 'POST', diff --git a/promotion/promotion-application/src/main/java/cn/iocoder/mall/promotion/application/controller/admins/AdminsCouponTemplateController.java b/promotion/promotion-application/src/main/java/cn/iocoder/mall/promotion/application/controller/admins/AdminsCouponTemplateController.java index d7cc19441..97bf9efa7 100644 --- a/promotion/promotion-application/src/main/java/cn/iocoder/mall/promotion/application/controller/admins/AdminsCouponTemplateController.java +++ b/promotion/promotion-application/src/main/java/cn/iocoder/mall/promotion/application/controller/admins/AdminsCouponTemplateController.java @@ -4,8 +4,11 @@ import cn.iocoder.common.framework.util.DateUtil; import cn.iocoder.common.framework.vo.CommonResult; import cn.iocoder.mall.promotion.api.CouponService; import cn.iocoder.mall.promotion.api.bo.CouponTemplateBO; +import cn.iocoder.mall.promotion.api.bo.CouponTemplatePageBO; import cn.iocoder.mall.promotion.api.dto.CouponCardTemplateAddDTO; +import cn.iocoder.mall.promotion.api.dto.CouponTemplatePageDTO; import cn.iocoder.mall.promotion.application.convert.CouponTemplateConvert; +import cn.iocoder.mall.promotion.application.vo.admins.AdminsCouponTemplatePageVO; import cn.iocoder.mall.promotion.application.vo.admins.AdminsCouponTemplateVO; import com.alibaba.dubbo.config.annotation.Reference; import io.swagger.annotations.Api; @@ -13,10 +16,7 @@ import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; import org.springframework.format.annotation.DateTimeFormat; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RequestParam; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; import java.util.Date; @@ -30,6 +30,25 @@ public class AdminsCouponTemplateController { // ========== 优惠劵(码)模板 ========== + @GetMapping("/template/page") + @ApiOperation(value = "Banner 分页") + @ApiImplicitParams({ + @ApiImplicitParam(name = "title", value = "标题,模糊匹配", example = "活动 A"), + @ApiImplicitParam(name = "pageNo", value = "页码,从 1 开始", example = "1"), + @ApiImplicitParam(name = "pageSize", value = "每页条数", required = true, example = "10"), + }) + public CommonResult page(@RequestParam(value = "type", required = false) Integer type, + @RequestParam(value = "title", required = false) String title, + @RequestParam(value = "status", required = false) Integer status, + @RequestParam(value = "preferentialType", required = false) Integer preferentialType, + @RequestParam(value = "pageNo", defaultValue = "0") Integer pageNo, + @RequestParam(value = "pageSize", defaultValue = "10") Integer pageSize) { + CommonResult result = couponService.getCouponTemplatePage(new CouponTemplatePageDTO() + .setType(type).setTitle(title).setStatus(status).setPreferentialType(preferentialType) + .setPageNo(pageNo).setPageSize(pageSize)); + return CouponTemplateConvert.INSTANCE.convert(result); + } + @PostMapping("/template/add_card") @ApiOperation(value = "创建优惠劵模板") @ApiImplicitParams({ diff --git a/promotion/promotion-application/src/main/java/cn/iocoder/mall/promotion/application/convert/CouponTemplateConvert.java b/promotion/promotion-application/src/main/java/cn/iocoder/mall/promotion/application/convert/CouponTemplateConvert.java index 8b82e9ae7..17a1c896d 100644 --- a/promotion/promotion-application/src/main/java/cn/iocoder/mall/promotion/application/convert/CouponTemplateConvert.java +++ b/promotion/promotion-application/src/main/java/cn/iocoder/mall/promotion/application/convert/CouponTemplateConvert.java @@ -2,26 +2,34 @@ package cn.iocoder.mall.promotion.application.convert; import cn.iocoder.common.framework.vo.CommonResult; import cn.iocoder.mall.promotion.api.bo.CouponTemplateBO; +import cn.iocoder.mall.promotion.api.bo.CouponTemplatePageBO; +import cn.iocoder.mall.promotion.application.vo.admins.AdminsCouponTemplatePageVO; import cn.iocoder.mall.promotion.application.vo.admins.AdminsCouponTemplateVO; import org.mapstruct.Mapper; import org.mapstruct.Mappings; import org.mapstruct.factory.Mappers; +import java.util.List; + @Mapper public interface CouponTemplateConvert { CouponTemplateConvert INSTANCE = Mappers.getMapper(CouponTemplateConvert.class); @Mappings({}) - AdminsCouponTemplateVO convert(CouponTemplateBO bannerBO); + AdminsCouponTemplateVO convert(CouponTemplateBO template); @Mappings({}) CommonResult convert2(CommonResult result); -// @Mappings({}) -// CommonResult convert(CommonResult result); + @Mappings({}) + CommonResult convert(CommonResult result); + + @Mappings({}) + List convertList(List templates); + // // @Mappings({}) -// List convertList(List banners); +// List convertList2(List banners); } diff --git a/promotion/promotion-application/src/main/java/cn/iocoder/mall/promotion/application/vo/admins/AdminsCouponTemplatePageVO.java b/promotion/promotion-application/src/main/java/cn/iocoder/mall/promotion/application/vo/admins/AdminsCouponTemplatePageVO.java new file mode 100644 index 000000000..4d6568b78 --- /dev/null +++ b/promotion/promotion-application/src/main/java/cn/iocoder/mall/promotion/application/vo/admins/AdminsCouponTemplatePageVO.java @@ -0,0 +1,34 @@ +package cn.iocoder.mall.promotion.application.vo.admins; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +import java.util.List; + +@ApiModel("优惠劵(码)分页 VO") +public class AdminsCouponTemplatePageVO { + + @ApiModelProperty(value = "优惠劵(码)数组") + private List list; + @ApiModelProperty(value = "优惠劵(码)总数") + private Integer total; + + public List getList() { + return list; + } + + public AdminsCouponTemplatePageVO setList(List list) { + this.list = list; + return this; + } + + public Integer getTotal() { + return total; + } + + public AdminsCouponTemplatePageVO setTotal(Integer total) { + this.total = total; + return this; + } + +} diff --git a/promotion/promotion-application/src/main/java/cn/iocoder/mall/promotion/application/vo/admins/AdminsCouponTemplateVO.java b/promotion/promotion-application/src/main/java/cn/iocoder/mall/promotion/application/vo/admins/AdminsCouponTemplateVO.java index efaecd6c1..34e98d5cc 100644 --- a/promotion/promotion-application/src/main/java/cn/iocoder/mall/promotion/application/vo/admins/AdminsCouponTemplateVO.java +++ b/promotion/promotion-application/src/main/java/cn/iocoder/mall/promotion/application/vo/admins/AdminsCouponTemplateVO.java @@ -49,7 +49,7 @@ public class AdminsCouponTemplateVO { @ApiModelProperty(value = "固定日期-生效结束时间") private Date validEndTime; @ApiModelProperty(value = "领取日期-开始天数", example = "例如,0-当天;1-次天") - private Integer fixedBeginTerm; + private Integer fixedStartTerm; @ApiModelProperty(value = "领取日期-结束天数") private Integer fixedEndTerm; // ========== 使用规则 END ========== @@ -190,12 +190,12 @@ public class AdminsCouponTemplateVO { return this; } - public Integer getFixedBeginTerm() { - return fixedBeginTerm; + public Integer getFixedStartTerm() { + return fixedStartTerm; } - public AdminsCouponTemplateVO setFixedBeginTerm(Integer fixedBeginTerm) { - this.fixedBeginTerm = fixedBeginTerm; + public AdminsCouponTemplateVO setFixedStartTerm(Integer fixedStartTerm) { + this.fixedStartTerm = fixedStartTerm; return this; } @@ -261,4 +261,13 @@ public class AdminsCouponTemplateVO { this.createTime = createTime; return this; } + + public Integer getTotal() { + return total; + } + + public AdminsCouponTemplateVO setTotal(Integer total) { + this.total = total; + return this; + } } diff --git a/promotion/promotion-application/target/generated-sources/annotations/cn/iocoder/mall/promotion/application/convert/BannerConvertImpl.java b/promotion/promotion-application/target/generated-sources/annotations/cn/iocoder/mall/promotion/application/convert/BannerConvertImpl.java new file mode 100644 index 000000000..9c965f183 --- /dev/null +++ b/promotion/promotion-application/target/generated-sources/annotations/cn/iocoder/mall/promotion/application/convert/BannerConvertImpl.java @@ -0,0 +1,122 @@ +package cn.iocoder.mall.promotion.application.convert; + +import cn.iocoder.common.framework.vo.CommonResult; +import cn.iocoder.mall.promotion.api.bo.BannerBO; +import cn.iocoder.mall.promotion.api.bo.BannerPageBO; +import cn.iocoder.mall.promotion.application.vo.admins.AdminsBannerPageVO; +import cn.iocoder.mall.promotion.application.vo.admins.AdminsBannerVO; +import cn.iocoder.mall.promotion.application.vo.users.UsersBannerVO; +import java.util.ArrayList; +import java.util.List; +import javax.annotation.Generated; + +@Generated( + value = "org.mapstruct.ap.MappingProcessor", + date = "2019-04-05T22:26:04+0800", + comments = "version: 1.3.0.Final, compiler: javac, environment: Java 11.0.1 (Oracle Corporation)" +) +public class BannerConvertImpl implements BannerConvert { + + @Override + public AdminsBannerVO convert(BannerBO bannerBO) { + if ( bannerBO == null ) { + return null; + } + + AdminsBannerVO adminsBannerVO = new AdminsBannerVO(); + + adminsBannerVO.setId( bannerBO.getId() ); + adminsBannerVO.setTitle( bannerBO.getTitle() ); + adminsBannerVO.setUrl( bannerBO.getUrl() ); + adminsBannerVO.setSort( bannerBO.getSort() ); + adminsBannerVO.setStatus( bannerBO.getStatus() ); + adminsBannerVO.setMemo( bannerBO.getMemo() ); + adminsBannerVO.setCreateTime( bannerBO.getCreateTime() ); + adminsBannerVO.setPicUrl( bannerBO.getPicUrl() ); + + return adminsBannerVO; + } + + @Override + public CommonResult convert2(CommonResult result) { + if ( result == null ) { + return null; + } + + CommonResult commonResult = new CommonResult(); + + commonResult.setCode( result.getCode() ); + commonResult.setMessage( result.getMessage() ); + commonResult.setData( convert( result.getData() ) ); + + return commonResult; + } + + @Override + public CommonResult convert(CommonResult result) { + if ( result == null ) { + return null; + } + + CommonResult commonResult = new CommonResult(); + + commonResult.setCode( result.getCode() ); + commonResult.setMessage( result.getMessage() ); + commonResult.setData( bannerPageBOToAdminsBannerPageVO( result.getData() ) ); + + return commonResult; + } + + @Override + public List convertList(List banners) { + if ( banners == null ) { + return null; + } + + List list = new ArrayList( banners.size() ); + for ( BannerBO bannerBO : banners ) { + list.add( bannerBOToUsersBannerVO( bannerBO ) ); + } + + return list; + } + + protected List bannerBOListToAdminsBannerVOList(List list) { + if ( list == null ) { + return null; + } + + List list1 = new ArrayList( list.size() ); + for ( BannerBO bannerBO : list ) { + list1.add( convert( bannerBO ) ); + } + + return list1; + } + + protected AdminsBannerPageVO bannerPageBOToAdminsBannerPageVO(BannerPageBO bannerPageBO) { + if ( bannerPageBO == null ) { + return null; + } + + AdminsBannerPageVO adminsBannerPageVO = new AdminsBannerPageVO(); + + adminsBannerPageVO.setList( bannerBOListToAdminsBannerVOList( bannerPageBO.getList() ) ); + adminsBannerPageVO.setTotal( bannerPageBO.getTotal() ); + + return adminsBannerPageVO; + } + + protected UsersBannerVO bannerBOToUsersBannerVO(BannerBO bannerBO) { + if ( bannerBO == null ) { + return null; + } + + UsersBannerVO usersBannerVO = new UsersBannerVO(); + + usersBannerVO.setUrl( bannerBO.getUrl() ); + usersBannerVO.setPicUrl( bannerBO.getPicUrl() ); + + return usersBannerVO; + } +} diff --git a/promotion/promotion-service-api/src/main/java/cn/iocoder/mall/promotion/api/bo/CouponTemplateBO.java b/promotion/promotion-service-api/src/main/java/cn/iocoder/mall/promotion/api/bo/CouponTemplateBO.java index 0b7ae7f31..9aa54d853 100644 --- a/promotion/promotion-service-api/src/main/java/cn/iocoder/mall/promotion/api/bo/CouponTemplateBO.java +++ b/promotion/promotion-service-api/src/main/java/cn/iocoder/mall/promotion/api/bo/CouponTemplateBO.java @@ -81,7 +81,7 @@ public class CouponTemplateBO { * 生效日期类型 * * 1-固定日期 - * 2-领取日期:领到券 {@link #fixedBeginTerm} 日开始 N 天内有效 + * 2-领取日期:领到券 {@link #fixedStartTerm} 日开始 N 天内有效 */ private Integer dateType; /** @@ -97,7 +97,7 @@ public class CouponTemplateBO { * * 例如,0-当天;1-次天 */ - private Integer fixedBeginTerm; + private Integer fixedStartTerm; /** * 领取日期-结束天数 */ @@ -323,12 +323,12 @@ public class CouponTemplateBO { return this; } - public Integer getFixedBeginTerm() { - return fixedBeginTerm; + public Integer getFixedStartTerm() { + return fixedStartTerm; } - public CouponTemplateBO setFixedBeginTerm(Integer fixedBeginTerm) { - this.fixedBeginTerm = fixedBeginTerm; + public CouponTemplateBO setFixedStartTerm(Integer fixedStartTerm) { + this.fixedStartTerm = fixedStartTerm; return this; } diff --git a/promotion/promotion-service-api/src/main/java/cn/iocoder/mall/promotion/api/bo/CouponTemplatePageBO.java b/promotion/promotion-service-api/src/main/java/cn/iocoder/mall/promotion/api/bo/CouponTemplatePageBO.java index 47de4338a..454d9cea2 100644 --- a/promotion/promotion-service-api/src/main/java/cn/iocoder/mall/promotion/api/bo/CouponTemplatePageBO.java +++ b/promotion/promotion-service-api/src/main/java/cn/iocoder/mall/promotion/api/bo/CouponTemplatePageBO.java @@ -1,5 +1,33 @@ package cn.iocoder.mall.promotion.api.bo; +import java.util.List; + public class CouponTemplatePageBO { + /** + * 优惠劵(码)数组 + */ + private List list; + /** + * 总量 + */ + private Integer total; + + public CouponTemplatePageBO setList(List list) { + this.list = list; + return this; + } + + public CouponTemplatePageBO setTotal(Integer total) { + this.total = total; + return this; + } + + public List getList() { + return list; + } + + public Integer getTotal() { + return total; + } } diff --git a/promotion/promotion-service-api/src/main/java/cn/iocoder/mall/promotion/api/constant/CouponTemplateStatusEnum.java b/promotion/promotion-service-api/src/main/java/cn/iocoder/mall/promotion/api/constant/CouponTemplateStatusEnum.java index 8714f2f92..087f1f1d5 100644 --- a/promotion/promotion-service-api/src/main/java/cn/iocoder/mall/promotion/api/constant/CouponTemplateStatusEnum.java +++ b/promotion/promotion-service-api/src/main/java/cn/iocoder/mall/promotion/api/constant/CouponTemplateStatusEnum.java @@ -6,7 +6,7 @@ public enum CouponTemplateStatusEnum { ENABLE(1, "开启中"), DISABLE(2, "禁用中"), - EXPIRE(3, "已过期"), +// EXPIRE(3, "已过期"), TODO 芋艿,暂时不考虑过期的 ; public static final int[] ARRAYS = Arrays.stream(values()).mapToInt(CouponTemplateStatusEnum::getValue).toArray(); diff --git a/promotion/promotion-service-api/src/main/java/cn/iocoder/mall/promotion/api/dto/CouponTemplatePageDTO.java b/promotion/promotion-service-api/src/main/java/cn/iocoder/mall/promotion/api/dto/CouponTemplatePageDTO.java index 39574ad21..d283eed37 100644 --- a/promotion/promotion-service-api/src/main/java/cn/iocoder/mall/promotion/api/dto/CouponTemplatePageDTO.java +++ b/promotion/promotion-service-api/src/main/java/cn/iocoder/mall/promotion/api/dto/CouponTemplatePageDTO.java @@ -1,10 +1,16 @@ package cn.iocoder.mall.promotion.api.dto; +import javax.validation.constraints.NotNull; + /** * 优惠劵模板分页 DTO */ public class CouponTemplatePageDTO { + /** + * 类型 + */ + private Integer type; /** * 标题 */ @@ -18,4 +24,62 @@ public class CouponTemplatePageDTO { */ private Integer preferentialType; + @NotNull(message = "页码不能为空") + private Integer pageNo; + @NotNull(message = "每页条数不能为空") + private Integer pageSize; + + public Integer getType() { + return type; + } + + public CouponTemplatePageDTO setType(Integer type) { + this.type = type; + return this; + } + + public String getTitle() { + return title; + } + + public CouponTemplatePageDTO setTitle(String title) { + this.title = title; + return this; + } + + public Integer getStatus() { + return status; + } + + public CouponTemplatePageDTO setStatus(Integer status) { + this.status = status; + return this; + } + + public Integer getPreferentialType() { + return preferentialType; + } + + public CouponTemplatePageDTO setPreferentialType(Integer preferentialType) { + this.preferentialType = preferentialType; + return this; + } + + public Integer getPageNo() { + return pageNo; + } + + public CouponTemplatePageDTO setPageNo(Integer pageNo) { + this.pageNo = pageNo; + return this; + } + + public Integer getPageSize() { + return pageSize; + } + + public CouponTemplatePageDTO setPageSize(Integer pageSize) { + this.pageSize = pageSize; + return this; + } } diff --git a/promotion/promotion-service-impl/src/main/java/cn/iocoder/mall/promotion/biz/convert/CouponTemplateConvert.java b/promotion/promotion-service-impl/src/main/java/cn/iocoder/mall/promotion/biz/convert/CouponTemplateConvert.java index 1bc2d2699..6fbfd095c 100644 --- a/promotion/promotion-service-impl/src/main/java/cn/iocoder/mall/promotion/biz/convert/CouponTemplateConvert.java +++ b/promotion/promotion-service-impl/src/main/java/cn/iocoder/mall/promotion/biz/convert/CouponTemplateConvert.java @@ -8,6 +8,8 @@ import org.mapstruct.Mapper; import org.mapstruct.Mappings; import org.mapstruct.factory.Mappers; +import java.util.List; + @Mapper public interface CouponTemplateConvert { @@ -16,8 +18,8 @@ public interface CouponTemplateConvert { // @Mappings({}) // CouponTemplateBO convertToBO(CouponTemplateDO banner); // -// @Mappings({}) -// List convertToBO(List bannerList); + @Mappings({}) + List convertToBO(List templateList); @Mappings({}) CouponTemplateDO convert(CouponCodeTemplateAddDTO template); diff --git a/promotion/promotion-service-impl/src/main/java/cn/iocoder/mall/promotion/biz/dao/CouponTemplateMapper.java b/promotion/promotion-service-impl/src/main/java/cn/iocoder/mall/promotion/biz/dao/CouponTemplateMapper.java index 524c75d01..7bf2f1639 100644 --- a/promotion/promotion-service-impl/src/main/java/cn/iocoder/mall/promotion/biz/dao/CouponTemplateMapper.java +++ b/promotion/promotion-service-impl/src/main/java/cn/iocoder/mall/promotion/biz/dao/CouponTemplateMapper.java @@ -11,13 +11,15 @@ public interface CouponTemplateMapper { CouponTemplateDO selectById(@Param("id") Integer id); - List selectListByPage(@Param("title") String title, + List selectListByPage(@Param("type") Integer type, + @Param("title") String title, @Param("status") Integer status, @Param("preferentialType") Integer preferentialType, @Param("offset") Integer offset, @Param("limit") Integer limit); - Integer selectCountByPage(@Param("title") String title, + Integer selectCountByPage(@Param("type") Integer type, + @Param("title") String title, @Param("status") Integer status, @Param("preferentialType") Integer preferentialType); diff --git a/promotion/promotion-service-impl/src/main/java/cn/iocoder/mall/promotion/biz/dataobject/CouponTemplateDO.java b/promotion/promotion-service-impl/src/main/java/cn/iocoder/mall/promotion/biz/dataobject/CouponTemplateDO.java index 8194b8588..4b2182200 100644 --- a/promotion/promotion-service-impl/src/main/java/cn/iocoder/mall/promotion/biz/dataobject/CouponTemplateDO.java +++ b/promotion/promotion-service-impl/src/main/java/cn/iocoder/mall/promotion/biz/dataobject/CouponTemplateDO.java @@ -120,7 +120,7 @@ public class CouponTemplateDO extends BaseDO { * 生效日期类型 * * 1-固定日期 - * 2-领取日期:领到券 {@link #fixedTerm} 日开始 N 天内有效 + * 2-领取日期:领到券 {@link #fixedStartTerm} 日开始 N 天内有效 */ private Integer dateType; /** @@ -131,16 +131,16 @@ public class CouponTemplateDO extends BaseDO { * 固定日期-生效结束时间 */ private Date validEndTime; -// /** -// * 领取日期-开始天数 -// * -// * 例如,0-当天;1-次天 -// */ -// private Integer fixedBeginTerm; + /** + * 领取日期-开始天数 + * + * 例如,0-当天;1-次天 + */ + private Integer fixedStartTerm; /** * 领取日期-结束天数 */ - private Integer fixedTerm; + private Integer fixedEndTerm; // /** // * 是否到期前4天发送提醒 // * @@ -335,12 +335,21 @@ public class CouponTemplateDO extends BaseDO { return this; } - public Integer getFixedTerm() { - return fixedTerm; + public Integer getFixedStartTerm() { + return fixedStartTerm; } - public CouponTemplateDO setFixedTerm(Integer fixedTerm) { - this.fixedTerm = fixedTerm; + public CouponTemplateDO setFixedStartTerm(Integer fixedStartTerm) { + this.fixedStartTerm = fixedStartTerm; + return this; + } + + public Integer getFixedEndTerm() { + return fixedEndTerm; + } + + public CouponTemplateDO setFixedEndTerm(Integer fixedEndTerm) { + this.fixedEndTerm = fixedEndTerm; return this; } diff --git a/promotion/promotion-service-impl/src/main/java/cn/iocoder/mall/promotion/biz/service/CouponServiceImpl.java b/promotion/promotion-service-impl/src/main/java/cn/iocoder/mall/promotion/biz/service/CouponServiceImpl.java index 6b4f8746e..02a335229 100644 --- a/promotion/promotion-service-impl/src/main/java/cn/iocoder/mall/promotion/biz/service/CouponServiceImpl.java +++ b/promotion/promotion-service-impl/src/main/java/cn/iocoder/mall/promotion/biz/service/CouponServiceImpl.java @@ -28,7 +28,18 @@ public class CouponServiceImpl implements CouponService { @Override public CommonResult getCouponTemplatePage(CouponTemplatePageDTO couponTemplatePageDTO) { - return null; + CouponTemplatePageBO couponTemplatePageBO = new CouponTemplatePageBO(); + // 查询分页数据 + int offset = (couponTemplatePageDTO.getPageNo() - 1) * couponTemplatePageDTO.getPageSize(); + couponTemplatePageBO.setList(CouponTemplateConvert.INSTANCE.convertToBO(couponTemplateMapper.selectListByPage( + couponTemplatePageDTO.getType(), couponTemplatePageDTO.getTitle(), + couponTemplatePageDTO.getStatus(), couponTemplatePageDTO.getPreferentialType(), + offset, couponTemplatePageDTO.getPageSize()))); + // 查询分页总数 + couponTemplatePageBO.setTotal(couponTemplateMapper.selectCountByPage( + couponTemplatePageDTO.getType(), couponTemplatePageDTO.getTitle(), + couponTemplatePageDTO.getStatus(), couponTemplatePageDTO.getPreferentialType())); + return CommonResult.success(couponTemplatePageBO); } @Override diff --git a/promotion/promotion-service-impl/src/main/resources/mapper/CouponTemplateMapper.xml b/promotion/promotion-service-impl/src/main/resources/mapper/CouponTemplateMapper.xml index 087212b19..8a4938ded 100644 --- a/promotion/promotion-service-impl/src/main/resources/mapper/CouponTemplateMapper.xml +++ b/promotion/promotion-service-impl/src/main/resources/mapper/CouponTemplateMapper.xml @@ -5,7 +5,7 @@ id, title, description, type, code_type, status, quota, total, price_available, range_type, - range_values, date_type, valid_start_time, valid_end_time, fixed_term, + range_values, date_type, valid_start_time, valid_end_time, fixed_start_term, fixed_end_term, preferential_type, percent_off, price_off, discount_price_limit, stat_fetch_num, create_time @@ -39,8 +39,11 @@ FROM coupon_template + + AND type = #{type} + - title LIKE "%"#{title}"%" + AND title LIKE "%"#{title}"%" AND status = #{status} @@ -57,8 +60,11 @@ COUNT(1) FROM coupon_template + + AND type = #{type} + - title LIKE "%"#{title}"%" + AND title LIKE "%"#{title}"%" AND status = #{status} @@ -73,13 +79,13 @@ INSERT INTO coupon_template ( title, description, type, code_type, status, quota, total, price_available, range_type, - range_values, date_type, valid_start_time, valid_end_time, fixed_term, + range_values, date_type, valid_start_time, valid_end_time, fixed_start_term, fixed_end_term, preferential_type, percent_off, price_off, discount_price_limit, stat_fetch_num, create_time ) VALUES ( #{title}, #{description}, #{type}, #{codeType}, #{status}, #{quota}, #{total}, #{priceAvailable}, #{rangeType}, - #{rangeValues}, #{dateType}, #{validStartTime}, #{validEndTime}, #{fixedTerm}, + #{rangeValues}, #{dateType}, #{validStartTime}, #{validEndTime}, #{fixedStartTerm}, #{fixedEndTerm} #{preferentialType}, #{percentOff}, #{priceOff}, #{discountPriceLimit}, #{statFetchNum}, #{createTime} ) @@ -121,8 +127,11 @@ valid_end_time = #{validEndTime}, - - fixed_term = #{fixedTerm}, + + fixed_start_term = #{fixedStartTerm}, + + + fixed_end_term = #{fixedEndTerm}, preferential_type = #{preferentialType}, From f8ae2153ba0d79d7bdb189faa14026ca458c6c6c Mon Sep 17 00:00:00 2001 From: YunaiV <> Date: Sat, 6 Apr 2019 00:57:00 +0800 Subject: [PATCH 2/5] =?UTF-8?q?=E5=90=8E=E7=AB=AF=20+=20=E5=89=8D=E7=AB=AF?= =?UTF-8?q?=EF=BC=9A=E4=BC=98=E6=83=A0=E5=8A=B5=E6=9B=B4=E6=96=B0=E5=8A=9F?= =?UTF-8?q?=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- admin-web/config/proxy/proxy.dev.js | 3 +- .../promotion/couponCardTemplateList.js | 39 ++-- .../pages/Promotion/CouponCardTemplateList.js | 53 +++-- admin-web/src/services/promotion.js | 6 + .../classes/mapper/OrderRecipientMapper.xml | 35 ++++ .../convert/OrderRecipientConvertImpl.java | 65 ++++++ .../AdminsCouponTemplateController.java | 32 ++- .../convert/CouponTemplateConvertImpl.java | 109 ++++++++++ .../convert/ProductRecommendConvertImpl.java | 115 +++++++++++ .../api/constant/PromotionErrorCodeEnum.java | 10 +- .../api/dto/CouponCardTemplateAddDTO.java | 1 - .../api/dto/CouponCardTemplateUpdateDTO.java | 192 ++++++++++++++++++ .../biz/convert/CouponTemplateConvert.java | 10 +- .../biz/service/CouponServiceImpl.java | 25 ++- .../classes/mapper/CouponTemplateMapper.xml | 152 ++++++++++++++ .../classes/mapper/ProductRecommendMapper.xml | 125 ++++++++++++ .../convert/CouponTemplateConvertImpl.java | 135 ++++++++++++ .../convert/ProductRecommendConvertImpl.java | 83 ++++++++ 18 files changed, 1137 insertions(+), 53 deletions(-) create mode 100644 order/order-service-impl/target/classes/mapper/OrderRecipientMapper.xml create mode 100644 order/order-service-impl/target/generated-sources/annotations/cn/iocoder/mall/order/biz/convert/OrderRecipientConvertImpl.java create mode 100644 promotion/promotion-application/target/generated-sources/annotations/cn/iocoder/mall/promotion/application/convert/CouponTemplateConvertImpl.java create mode 100644 promotion/promotion-application/target/generated-sources/annotations/cn/iocoder/mall/promotion/application/convert/ProductRecommendConvertImpl.java create mode 100644 promotion/promotion-service-impl/target/classes/mapper/CouponTemplateMapper.xml create mode 100644 promotion/promotion-service-impl/target/classes/mapper/ProductRecommendMapper.xml create mode 100644 promotion/promotion-service-impl/target/generated-sources/annotations/cn/iocoder/mall/promotion/biz/convert/CouponTemplateConvertImpl.java create mode 100644 promotion/promotion-service-impl/target/generated-sources/annotations/cn/iocoder/mall/promotion/biz/convert/ProductRecommendConvertImpl.java diff --git a/admin-web/config/proxy/proxy.dev.js b/admin-web/config/proxy/proxy.dev.js index bbe1d0624..9e6a576cf 100644 --- a/admin-web/config/proxy/proxy.dev.js +++ b/admin-web/config/proxy/proxy.dev.js @@ -20,7 +20,8 @@ export default { pathRewrite: {}, }, '/promotion-api/': { - target: 'http://180.167.213.26:18085/', + // target: 'http://180.167.213.26:18085/', + target: 'http://127.0.0.1:18085/', changeOrigin: true, pathRewrite: {}, }, diff --git a/admin-web/src/models/promotion/couponCardTemplateList.js b/admin-web/src/models/promotion/couponCardTemplateList.js index 3e8c00191..0add40a0a 100644 --- a/admin-web/src/models/promotion/couponCardTemplateList.js +++ b/admin-web/src/models/promotion/couponCardTemplateList.js @@ -1,15 +1,14 @@ import {message} from 'antd'; import { - deleteProductRecommend, - updateProductRecommend, updateProductRecommendStatus, addCouponCardTemplate, + updateCouponCardTemplate, getCouponCardTemplatePage, } from '../../services/promotion'; import PaginationHelper from '../../../helpers/PaginationHelper'; const SEARCH_PARAMS_DEFAULT = { - // type: 1, + title: '', }; export default { @@ -50,7 +49,7 @@ export default { list: response.data.list, pagination: PaginationHelper.formatPagination(response.data, payload), searchParams: { - // type: payload.type + title: payload.title } }, }); @@ -100,7 +99,7 @@ export default { }); // 请求 - const response = yield call(updateProductRecommend, body); + const response = yield call(updateCouponCardTemplate, body); // 响应 if (response.code === 0) { if (callback) { @@ -138,21 +137,21 @@ export default { } }, - * delete({ payload }, { call, put }) { - // 请求 - const response = yield call(deleteProductRecommend, payload); - // 响应 - if (response.code === 0) { - message.info('删除成功!'); - // 刷新列表 - yield put({ - type: 'query', - payload: { - ...PaginationHelper.defaultPayload - }, - }); - } - }, + // * delete({ payload }, { call, put }) { + // // 请求 + // const response = yield call(deleteProductRecommend, payload); + // // 响应 + // if (response.code === 0) { + // message.info('删除成功!'); + // // 刷新列表 + // yield put({ + // type: 'query', + // payload: { + // ...PaginationHelper.defaultPayload + // }, + // }); + // } + // }, }, diff --git a/admin-web/src/pages/Promotion/CouponCardTemplateList.js b/admin-web/src/pages/Promotion/CouponCardTemplateList.js index be873532e..4aa904fe4 100644 --- a/admin-web/src/pages/Promotion/CouponCardTemplateList.js +++ b/admin-web/src/pages/Promotion/CouponCardTemplateList.js @@ -136,6 +136,7 @@ function List ({ dataSource, loading, pagination, searchParams, dispatch, // 支付金额(元) TODO 芋艿 // 客单价(元) TODO 芋艿 render(val, record) { + // debugger; return `${record.statFetchNum} / ` + (record.total - record.statFetchNum); } }, @@ -302,6 +303,16 @@ const AddOrUpdateForm = Form.create()(props => { body: { id: formVals.id, ...newFileds, + priceAvailable: undefined, + dateType: undefined, + validStartTime: undefined, + validEndTime: undefined, + fixedStartTerm: undefined, + fixedEndTerm: undefined, + preferentialType: undefined, + priceOff: undefined, + percentOff: undefined, + discountPriceLimit: undefined, }, callback: () => { // 清空表单 @@ -381,14 +392,14 @@ const AddOrUpdateForm = Form.create()(props => { {form.getFieldDecorator('priceAvailable', { rules: [{ required: true, message: '请输入使用金额门槛!' },], - initialValue: formVals.priceAvailable, - })()} 元 + initialValue: formVals.priceAvailable / 100.0, + })()} 元 {form.getFieldDecorator('rangeType', { rules: [{ required: true, message: '请选择可用范围!'}, // TODO 芋艿,需要修改 ], - initialValue: formVals.rangeType, + initialValue: formVals.rangeType + '', })( - + )} @@ -429,29 +440,29 @@ const AddOrUpdateForm = Form.create()(props => { {form.getFieldDecorator('validStartTime', { rules: [{ required: true, message: '请输入固定日期!' },], - initialValue: formVals.validStartTime, - })()} + initialValue: formVals.validStartTime ? moment(formVals.validStartTime) : undefined, + })()}  -  {form.getFieldDecorator('validEndTime', { rules: [{ required: true, message: '请输入固定日期!' },], - initialValue: formVals.validEndTime, - })()} + initialValue: formVals.validEndTime ? moment(formVals.validEndTime) : undefined, + })()} : '' } { formVals.dateType == 2 ? - {form.getFieldDecorator('fixedBeginTerm', { + {form.getFieldDecorator('fixedStartTerm', { rules: [{ required: true, message: '请输入固定日期!' }, {min: 1, type: 'number', message: '最小值为 1'}], - initialValue: formVals.fixedBeginTerm, - })()} + initialValue: formVals.fixedStartTerm, + })()}  -  {form.getFieldDecorator('fixedEndTerm', { rules: [{ required: true, message: '请输入固定日期!' }, {min: 1, type: 'number', message: '最小值为 1'}], initialValue: formVals.fixedEndTerm, - })()} 天 + })()} 天 : '' } @@ -459,9 +470,9 @@ const AddOrUpdateForm = Form.create()(props => { {form.getFieldDecorator('preferentialType', { rules: [{ required: true, message: '请选择优惠类型!'}, // TODO 芋艿,需要修改 ], - initialValue: formVals.preferentialType, + initialValue: formVals.preferentialType + '', })( - 代金卷 折扣卷 @@ -473,8 +484,8 @@ const AddOrUpdateForm = Form.create()(props => { {form.getFieldDecorator('priceOff', { rules: [{ required: true, message: '请输入优惠金额!' }, {min: 0.01, type: 'number', message: '最小值为 0.01'}], - initialValue: formVals.priceOff, - })()} + initialValue: formVals.priceOff ? formVals.priceOff / 100.0 : undefined, + })()} : '' } { @@ -486,15 +497,15 @@ const AddOrUpdateForm = Form.create()(props => { {min: 1, max: 99, type: 'number', message: '范围为 [1, 99]'}, ], initialValue: formVals.percentOff, - })()}% + })()}% {form.getFieldDecorator('discountPriceLimit', { rules: [{ required: false, message: '请输入最多优惠!' }, {min: 0.01, type: 'number', message: '最小值为 0.01'}, ], - initialValue: formVals.discountPriceLimit, - })()}元 + initialValue: formVals.discountPriceLimit ? formVals.discountPriceLimit / 100.0 : undefineds, + })()}元 : '' } diff --git a/admin-web/src/services/promotion.js b/admin-web/src/services/promotion.js index ed5bc5e25..0abb67ce1 100644 --- a/admin-web/src/services/promotion.js +++ b/admin-web/src/services/promotion.js @@ -78,3 +78,9 @@ export async function addCouponCardTemplate(params) { method: 'POST', }); } + +export async function updateCouponCardTemplate(params) { + return request(`/promotion-api/admins/coupon/template/update_card?${stringify(params)}`, { + method: 'POST', + }); +} diff --git a/order/order-service-impl/target/classes/mapper/OrderRecipientMapper.xml b/order/order-service-impl/target/classes/mapper/OrderRecipientMapper.xml new file mode 100644 index 000000000..b2d9f675b --- /dev/null +++ b/order/order-service-impl/target/classes/mapper/OrderRecipientMapper.xml @@ -0,0 +1,35 @@ + + + + + + id, order_id, `area_no`, `name`, mobile, address, + create_time, update_time + + + + + INSERT INTO `order_recipient` ( + order_id, `area_no`, `name`, mobile, address, + create_time, update_time + ) VALUES ( + #{orderId}, #{areaNo}, #{name}, #{mobile}, #{address}, + #{createTime}, #{updateTime} + ) + + + + + diff --git a/order/order-service-impl/target/generated-sources/annotations/cn/iocoder/mall/order/biz/convert/OrderRecipientConvertImpl.java b/order/order-service-impl/target/generated-sources/annotations/cn/iocoder/mall/order/biz/convert/OrderRecipientConvertImpl.java new file mode 100644 index 000000000..f09bb1316 --- /dev/null +++ b/order/order-service-impl/target/generated-sources/annotations/cn/iocoder/mall/order/biz/convert/OrderRecipientConvertImpl.java @@ -0,0 +1,65 @@ +package cn.iocoder.mall.order.biz.convert; + +import cn.iocoder.mall.order.api.bo.OrderRecipientBO; +import cn.iocoder.mall.order.api.dto.OrderCreateDTO; +import cn.iocoder.mall.order.biz.dataobject.OrderRecipientDO; +import java.util.ArrayList; +import java.util.List; +import javax.annotation.Generated; + +@Generated( + value = "org.mapstruct.ap.MappingProcessor", + date = "2019-04-05T22:26:02+0800", + comments = "version: 1.3.0.Final, compiler: javac, environment: Java 11.0.1 (Oracle Corporation)" +) +public class OrderRecipientConvertImpl implements OrderRecipientConvert { + + @Override + public OrderRecipientDO convert(OrderCreateDTO orderCreateDTO) { + if ( orderCreateDTO == null ) { + return null; + } + + OrderRecipientDO orderRecipientDO = new OrderRecipientDO(); + + orderRecipientDO.setAreaNo( orderCreateDTO.getAreaNo() ); + orderRecipientDO.setName( orderCreateDTO.getName() ); + orderRecipientDO.setMobile( orderCreateDTO.getMobile() ); + orderRecipientDO.setAddress( orderCreateDTO.getAddress() ); + + return orderRecipientDO; + } + + @Override + public List convert(List orderRecipientDOList) { + if ( orderRecipientDOList == null ) { + return null; + } + + List list = new ArrayList( orderRecipientDOList.size() ); + for ( OrderRecipientDO orderRecipientDO : orderRecipientDOList ) { + list.add( orderRecipientDOToOrderRecipientBO( orderRecipientDO ) ); + } + + return list; + } + + protected OrderRecipientBO orderRecipientDOToOrderRecipientBO(OrderRecipientDO orderRecipientDO) { + if ( orderRecipientDO == null ) { + return null; + } + + OrderRecipientBO orderRecipientBO = new OrderRecipientBO(); + + orderRecipientBO.setCreateTime( orderRecipientDO.getCreateTime() ); + orderRecipientBO.setUpdateTime( orderRecipientDO.getUpdateTime() ); + orderRecipientBO.setId( orderRecipientDO.getId() ); + orderRecipientBO.setOrderId( orderRecipientDO.getOrderId() ); + orderRecipientBO.setAreaNo( orderRecipientDO.getAreaNo() ); + orderRecipientBO.setName( orderRecipientDO.getName() ); + orderRecipientBO.setMobile( orderRecipientDO.getMobile() ); + orderRecipientBO.setAddress( orderRecipientDO.getAddress() ); + + return orderRecipientBO; + } +} diff --git a/promotion/promotion-application/src/main/java/cn/iocoder/mall/promotion/application/controller/admins/AdminsCouponTemplateController.java b/promotion/promotion-application/src/main/java/cn/iocoder/mall/promotion/application/controller/admins/AdminsCouponTemplateController.java index 97bf9efa7..b4fed0e2c 100644 --- a/promotion/promotion-application/src/main/java/cn/iocoder/mall/promotion/application/controller/admins/AdminsCouponTemplateController.java +++ b/promotion/promotion-application/src/main/java/cn/iocoder/mall/promotion/application/controller/admins/AdminsCouponTemplateController.java @@ -6,6 +6,7 @@ import cn.iocoder.mall.promotion.api.CouponService; import cn.iocoder.mall.promotion.api.bo.CouponTemplateBO; import cn.iocoder.mall.promotion.api.bo.CouponTemplatePageBO; import cn.iocoder.mall.promotion.api.dto.CouponCardTemplateAddDTO; +import cn.iocoder.mall.promotion.api.dto.CouponCardTemplateUpdateDTO; import cn.iocoder.mall.promotion.api.dto.CouponTemplatePageDTO; import cn.iocoder.mall.promotion.application.convert.CouponTemplateConvert; import cn.iocoder.mall.promotion.application.vo.admins.AdminsCouponTemplatePageVO; @@ -31,7 +32,7 @@ public class AdminsCouponTemplateController { // ========== 优惠劵(码)模板 ========== @GetMapping("/template/page") - @ApiOperation(value = "Banner 分页") + @ApiOperation(value = "优惠劵(码)模板分页") @ApiImplicitParams({ @ApiImplicitParam(name = "title", value = "标题,模糊匹配", example = "活动 A"), @ApiImplicitParam(name = "pageNo", value = "页码,从 1 开始", example = "1"), @@ -75,7 +76,7 @@ public class AdminsCouponTemplateController { @RequestParam(value = "total", required = false) Integer total, @RequestParam(value = "priceAvailable") Integer priceAvailable, @RequestParam(value = "rangeType") Integer rangeType, - @RequestParam(value = "rangeType", required = false) String rangeValues, + @RequestParam(value = "rangeValues", required = false) String rangeValues, @RequestParam(value = "dateType") Integer dateType, @DateTimeFormat(pattern = "yyyy-MM-dd") @RequestParam(value = "validStartTime", required = false) Date validStartTime, @@ -103,6 +104,33 @@ public class AdminsCouponTemplateController { return CouponTemplateConvert.INSTANCE.convert2(result); } + @PostMapping("/template/update_card") + @ApiOperation(value = "更新优惠劵模板") + @ApiImplicitParams({ + @ApiImplicitParam(name = "id", value = "编号", required = true, example = "1"), + @ApiImplicitParam(name = "title", value = "标题", required = true, example = "优惠劵牛逼"), + @ApiImplicitParam(name = "description", value = "使用说明", example = "我只是描述"), + @ApiImplicitParam(name = "quota", value = "每人限领个数", required = true), + @ApiImplicitParam(name = "total", value = "发行总量"), + @ApiImplicitParam(name = "rangeType", value = "可用范围的类型", required = true, example = "参见 CouponTemplateRangeTypeEnum 枚举"), + @ApiImplicitParam(name = "rangeValues", value = "指定商品 / 分类列表,使用逗号分隔商品编号"), + }) + public CommonResult update(@RequestParam(value = "id") Integer id, + @RequestParam(value = "title") String title, + @RequestParam(value = "description", required = false) String description, + @RequestParam(value = "quota") Integer quota, + @RequestParam(value = "total", required = false) Integer total, + @RequestParam(value = "rangeType") Integer rangeType, + @RequestParam(value = "rangeValues", required = false) String rangeValues) { + // 创建 CouponCardTemplateAddDTO 对象 + CouponCardTemplateUpdateDTO couponCardTemplateUpdateDTO = new CouponCardTemplateUpdateDTO() + .setId(id) + .setTitle(title).setDescription(description) + .setQuota(quota).setTotal(total) + .setRangeType(rangeType).setRangeValues(rangeValues); + return couponService.updateCouponCardTemplate(couponCardTemplateUpdateDTO); + } + // ========== 优惠劵 ========== // ========== 优惠码 ========== diff --git a/promotion/promotion-application/target/generated-sources/annotations/cn/iocoder/mall/promotion/application/convert/CouponTemplateConvertImpl.java b/promotion/promotion-application/target/generated-sources/annotations/cn/iocoder/mall/promotion/application/convert/CouponTemplateConvertImpl.java new file mode 100644 index 000000000..124f4094a --- /dev/null +++ b/promotion/promotion-application/target/generated-sources/annotations/cn/iocoder/mall/promotion/application/convert/CouponTemplateConvertImpl.java @@ -0,0 +1,109 @@ +package cn.iocoder.mall.promotion.application.convert; + +import cn.iocoder.common.framework.vo.CommonResult; +import cn.iocoder.mall.promotion.api.bo.CouponTemplateBO; +import cn.iocoder.mall.promotion.api.bo.CouponTemplatePageBO; +import cn.iocoder.mall.promotion.application.vo.admins.AdminsCouponTemplatePageVO; +import cn.iocoder.mall.promotion.application.vo.admins.AdminsCouponTemplateVO; +import java.util.ArrayList; +import java.util.List; +import javax.annotation.Generated; + +@Generated( + value = "org.mapstruct.ap.MappingProcessor", + date = "2019-04-05T22:26:04+0800", + comments = "version: 1.3.0.Final, compiler: javac, environment: Java 11.0.1 (Oracle Corporation)" +) +public class CouponTemplateConvertImpl implements CouponTemplateConvert { + + @Override + public AdminsCouponTemplateVO convert(CouponTemplateBO template) { + if ( template == null ) { + return null; + } + + AdminsCouponTemplateVO adminsCouponTemplateVO = new AdminsCouponTemplateVO(); + + adminsCouponTemplateVO.setId( template.getId() ); + adminsCouponTemplateVO.setTitle( template.getTitle() ); + adminsCouponTemplateVO.setDescription( template.getDescription() ); + adminsCouponTemplateVO.setType( template.getType() ); + adminsCouponTemplateVO.setCodeType( template.getCodeType() ); + adminsCouponTemplateVO.setStatus( template.getStatus() ); + adminsCouponTemplateVO.setQuota( template.getQuota() ); + adminsCouponTemplateVO.setPriceAvailable( template.getPriceAvailable() ); + adminsCouponTemplateVO.setRangeType( template.getRangeType() ); + adminsCouponTemplateVO.setRangeValues( template.getRangeValues() ); + adminsCouponTemplateVO.setDateType( template.getDateType() ); + adminsCouponTemplateVO.setValidStartTime( template.getValidStartTime() ); + adminsCouponTemplateVO.setValidEndTime( template.getValidEndTime() ); + adminsCouponTemplateVO.setFixedStartTerm( template.getFixedStartTerm() ); + adminsCouponTemplateVO.setFixedEndTerm( template.getFixedEndTerm() ); + adminsCouponTemplateVO.setPreferentialType( template.getPreferentialType() ); + adminsCouponTemplateVO.setPercentOff( template.getPercentOff() ); + adminsCouponTemplateVO.setPriceOff( template.getPriceOff() ); + adminsCouponTemplateVO.setDiscountPriceLimit( template.getDiscountPriceLimit() ); + adminsCouponTemplateVO.setStatFetchNum( template.getStatFetchNum() ); + adminsCouponTemplateVO.setCreateTime( template.getCreateTime() ); + adminsCouponTemplateVO.setTotal( template.getTotal() ); + + return adminsCouponTemplateVO; + } + + @Override + public CommonResult convert2(CommonResult result) { + if ( result == null ) { + return null; + } + + CommonResult commonResult = new CommonResult(); + + commonResult.setCode( result.getCode() ); + commonResult.setMessage( result.getMessage() ); + commonResult.setData( convert( result.getData() ) ); + + return commonResult; + } + + @Override + public CommonResult convert(CommonResult result) { + if ( result == null ) { + return null; + } + + CommonResult commonResult = new CommonResult(); + + commonResult.setCode( result.getCode() ); + commonResult.setMessage( result.getMessage() ); + commonResult.setData( couponTemplatePageBOToAdminsCouponTemplatePageVO( result.getData() ) ); + + return commonResult; + } + + @Override + public List convertList(List templates) { + if ( templates == null ) { + return null; + } + + List list = new ArrayList( templates.size() ); + for ( CouponTemplateBO couponTemplateBO : templates ) { + list.add( convert( couponTemplateBO ) ); + } + + return list; + } + + protected AdminsCouponTemplatePageVO couponTemplatePageBOToAdminsCouponTemplatePageVO(CouponTemplatePageBO couponTemplatePageBO) { + if ( couponTemplatePageBO == null ) { + return null; + } + + AdminsCouponTemplatePageVO adminsCouponTemplatePageVO = new AdminsCouponTemplatePageVO(); + + adminsCouponTemplatePageVO.setList( convertList( couponTemplatePageBO.getList() ) ); + adminsCouponTemplatePageVO.setTotal( couponTemplatePageBO.getTotal() ); + + return adminsCouponTemplatePageVO; + } +} diff --git a/promotion/promotion-application/target/generated-sources/annotations/cn/iocoder/mall/promotion/application/convert/ProductRecommendConvertImpl.java b/promotion/promotion-application/target/generated-sources/annotations/cn/iocoder/mall/promotion/application/convert/ProductRecommendConvertImpl.java new file mode 100644 index 000000000..7a2c06886 --- /dev/null +++ b/promotion/promotion-application/target/generated-sources/annotations/cn/iocoder/mall/promotion/application/convert/ProductRecommendConvertImpl.java @@ -0,0 +1,115 @@ +package cn.iocoder.mall.promotion.application.convert; + +import cn.iocoder.common.framework.vo.CommonResult; +import cn.iocoder.mall.product.api.bo.ProductSpuBO; +import cn.iocoder.mall.promotion.api.bo.ProductRecommendBO; +import cn.iocoder.mall.promotion.api.bo.ProductRecommendPageBO; +import cn.iocoder.mall.promotion.application.vo.admins.AdminsProductRecommendPageVO; +import cn.iocoder.mall.promotion.application.vo.admins.AdminsProductRecommendVO; +import cn.iocoder.mall.promotion.application.vo.users.UsersProductRecommendVO; +import java.util.ArrayList; +import java.util.List; +import javax.annotation.Generated; + +@Generated( + value = "org.mapstruct.ap.MappingProcessor", + date = "2019-04-05T22:26:04+0800", + comments = "version: 1.3.0.Final, compiler: javac, environment: Java 11.0.1 (Oracle Corporation)" +) +public class ProductRecommendConvertImpl implements ProductRecommendConvert { + + @Override + public AdminsProductRecommendVO convert(ProductRecommendBO bannerBO) { + if ( bannerBO == null ) { + return null; + } + + AdminsProductRecommendVO adminsProductRecommendVO = new AdminsProductRecommendVO(); + + adminsProductRecommendVO.setId( bannerBO.getId() ); + adminsProductRecommendVO.setType( bannerBO.getType() ); + adminsProductRecommendVO.setProductSpuId( bannerBO.getProductSpuId() ); + adminsProductRecommendVO.setSort( bannerBO.getSort() ); + adminsProductRecommendVO.setStatus( bannerBO.getStatus() ); + adminsProductRecommendVO.setMemo( bannerBO.getMemo() ); + adminsProductRecommendVO.setCreateTime( bannerBO.getCreateTime() ); + + return adminsProductRecommendVO; + } + + @Override + public CommonResult convert2(CommonResult result) { + if ( result == null ) { + return null; + } + + CommonResult commonResult = new CommonResult(); + + commonResult.setCode( result.getCode() ); + commonResult.setMessage( result.getMessage() ); + commonResult.setData( convert( result.getData() ) ); + + return commonResult; + } + + @Override + public CommonResult convert(CommonResult result) { + if ( result == null ) { + return null; + } + + CommonResult commonResult = new CommonResult(); + + commonResult.setCode( result.getCode() ); + commonResult.setMessage( result.getMessage() ); + commonResult.setData( productRecommendPageBOToAdminsProductRecommendPageVO( result.getData() ) ); + + return commonResult; + } + + @Override + public UsersProductRecommendVO convert(ProductSpuBO productSpu) { + if ( productSpu == null ) { + return null; + } + + UsersProductRecommendVO usersProductRecommendVO = new UsersProductRecommendVO(); + + usersProductRecommendVO.setId( productSpu.getId() ); + usersProductRecommendVO.setName( productSpu.getName() ); + usersProductRecommendVO.setSellPoint( productSpu.getSellPoint() ); + List list = productSpu.getPicUrls(); + if ( list != null ) { + usersProductRecommendVO.setPicUrls( new ArrayList( list ) ); + } + usersProductRecommendVO.setPrice( productSpu.getPrice() ); + + return usersProductRecommendVO; + } + + protected List productRecommendBOListToAdminsProductRecommendVOList(List list) { + if ( list == null ) { + return null; + } + + List list1 = new ArrayList( list.size() ); + for ( ProductRecommendBO productRecommendBO : list ) { + list1.add( convert( productRecommendBO ) ); + } + + return list1; + } + + protected AdminsProductRecommendPageVO productRecommendPageBOToAdminsProductRecommendPageVO(ProductRecommendPageBO productRecommendPageBO) { + if ( productRecommendPageBO == null ) { + return null; + } + + AdminsProductRecommendPageVO adminsProductRecommendPageVO = new AdminsProductRecommendPageVO(); + + adminsProductRecommendPageVO.setList( productRecommendBOListToAdminsProductRecommendVOList( productRecommendPageBO.getList() ) ); + adminsProductRecommendPageVO.setTotal( productRecommendPageBO.getTotal() ); + + return adminsProductRecommendPageVO; + } +} diff --git a/promotion/promotion-service-api/src/main/java/cn/iocoder/mall/promotion/api/constant/PromotionErrorCodeEnum.java b/promotion/promotion-service-api/src/main/java/cn/iocoder/mall/promotion/api/constant/PromotionErrorCodeEnum.java index 24d19f848..aa40e719e 100644 --- a/promotion/promotion-service-api/src/main/java/cn/iocoder/mall/promotion/api/constant/PromotionErrorCodeEnum.java +++ b/promotion/promotion-service-api/src/main/java/cn/iocoder/mall/promotion/api/constant/PromotionErrorCodeEnum.java @@ -15,8 +15,14 @@ public enum PromotionErrorCodeEnum { PRODUCT_RECOMMEND_PRODUCT_NOT_EXISTS(1006001001, "商品不存在"), PRODUCT_RECOMMEND_EXISTS(1006001002, "该商品推荐已经存在"), - ; + // ========== COUPON TEMPLATE 模块 ========== + PRODUCT_TEMPLATE_NOT_EXISTS(1006002000, "优惠劵模板(码)不存在"), + PRODUCT_TEMPLATE_NOT_CARD(1006002001, "不是优惠劵模板"), + PRODUCT_TEMPLATE_NOT_CODE(1006002002, "不是优惠码模板"), + PRODUCT_TEMPLATE_TOTAL_CAN_NOT_REDUCE(1006002003, "优惠劵(码)模板的发放数量不能减小"), + + ; private final int code; private final String message; @@ -34,4 +40,4 @@ public enum PromotionErrorCodeEnum { return message; } -} \ No newline at end of file +} diff --git a/promotion/promotion-service-api/src/main/java/cn/iocoder/mall/promotion/api/dto/CouponCardTemplateAddDTO.java b/promotion/promotion-service-api/src/main/java/cn/iocoder/mall/promotion/api/dto/CouponCardTemplateAddDTO.java index 3c52e6faa..3414ab30b 100644 --- a/promotion/promotion-service-api/src/main/java/cn/iocoder/mall/promotion/api/dto/CouponCardTemplateAddDTO.java +++ b/promotion/promotion-service-api/src/main/java/cn/iocoder/mall/promotion/api/dto/CouponCardTemplateAddDTO.java @@ -277,5 +277,4 @@ public class CouponCardTemplateAddDTO { return this; } - } diff --git a/promotion/promotion-service-api/src/main/java/cn/iocoder/mall/promotion/api/dto/CouponCardTemplateUpdateDTO.java b/promotion/promotion-service-api/src/main/java/cn/iocoder/mall/promotion/api/dto/CouponCardTemplateUpdateDTO.java index e64efa7a3..948ad671d 100644 --- a/promotion/promotion-service-api/src/main/java/cn/iocoder/mall/promotion/api/dto/CouponCardTemplateUpdateDTO.java +++ b/promotion/promotion-service-api/src/main/java/cn/iocoder/mall/promotion/api/dto/CouponCardTemplateUpdateDTO.java @@ -1,4 +1,196 @@ package cn.iocoder.mall.promotion.api.dto; +import cn.iocoder.common.framework.validator.InEnum; +import cn.iocoder.mall.promotion.api.constant.CouponTemplateRangeTypeEnum; +import org.hibernate.validator.constraints.Length; + +import javax.validation.constraints.Min; +import javax.validation.constraints.NotEmpty; +import javax.validation.constraints.NotNull; + public class CouponCardTemplateUpdateDTO { + + @NotNull(message = "编号不能为空") + private Integer id; + + // ========== 基本信息 BEGIN ========== + /** + * 标题 + */ + @NotEmpty(message = "标题不能为空") + @Length(min = 2, max = 16, message = "标题长度为 {min}-{max} 位") + private String title; + /** + * 使用说明 + */ + @Length(max = 255, message = "使用说明最大长度为 {max} 位") + private String description; + // ========== 基本信息 END ========== + + // ========== 领取规则 BEGIN ========== + /** + * 每人限领个数 + */ + @NotNull(message = "每人限领个数不能为空") + @Min(value = 1, message = "每人限领个数最小为 {value}") + private Integer quota; + /** + * 发放总量 + */ + @NotNull(message = "发放总量不能为空") + @Min(value = 1, message = "每人限领个数最小为 {value}") + private Integer total; + // ========== 领取规则 END ========== + + // ========== 使用规则 BEGIN ========== +// /** +// * 是否设置满多少金额可用,单位:分 +// * +// * 0-不限制 +// * 大于0-多少金额可用 +// */ +// @NotNull(message = "使用金额门槛不能为空") +// @Min(value = 0L, message = "使用金额门槛最低为 {value}") +// private Integer priceAvailable; + /** + * 可用范围的类型 + * + * 10-全部(ALL):所有可用 + * 20-部分(PART):部分商品可用,或指定商品可用 + * 21-部分(PART):部分商品不可用,或指定商品可用 + * 30-部分(PART):部分分类可用,或指定分类可用 + * 31-部分(PART):部分分类不可用,或指定分类可用 + */ + @NotNull(message = "可用范围的类型不能为空") + @InEnum(value = CouponTemplateRangeTypeEnum.class, message = "可用范围的类型必须在 {value}") + private Integer rangeType; + /** + * 指定商品 / 分类列表,使用逗号分隔商品编号 + */ + private String rangeValues; +// /** +// * 生效日期类型 +// * +// * 1-固定日期 +// * 2-领取日期:领到券 {@link #fixedEndTerm} 日开始 N 天内有效 +// */ +// @NotNull(message = "生效日期类型不能为空") +// @InEnum(value = CouponTemplateDateTypeEnum.class, message = "生效日期类型必须在 {value}") +// private Integer dateType; +// /** +// * 固定日期-生效开始时间 +// */ +// private Date validStartTime; +// /** +// * 固定日期-生效结束时间 +// */ +// private Date validEndTime; +// /** +// * 领取日期-开始天数 +// * +// * 例如,0-当天;1-次天 +// */ +// @Min(value = 0L, message = "领取日期开始时间最小为 {value}") +// private Integer fixedBeginTerm; +// /** +// * 领取日期-结束天数 +// */ +// @Min(value = 1L, message = "领取日期结束时间最小为 {value}") +// private Integer fixedEndTerm; + // ========== 使用规则 END ========== + + // ========== 使用效果 BEGIN ========== +// /** +// * 优惠类型 +// * +// * 1-代金卷 +// * 2-折扣卷 +// */ +// @NotNull(message = "优惠类型不能为空") +// @InEnum(value = CouponTemplatePreferentialTypeEnum.class, message = "优惠类型必须在 {value}") +// private Integer preferentialType; +// /** +// * 优惠金额,单位:分 +// */ +// @Min(value = 1, message = "优惠金额最小值为 {value}") +// private Integer priceOff; +// /** +// * 折扣百分比。 +// * +// * 例如,80% 为 80。 +// * 当 100% 为 100 ,则代表免费。 +// */ +// @Max(value = 100, message = "折扣比最大值为 {value}") +// private Integer percentOff; +// /** +// * 折扣上限,仅在 {@link #preferentialType} 等于 2 时生效。 +// * +// * 例如,折扣上限为 20 元,当使用 8 折优惠券,订单金额为 1000 元时,最高只可折扣 20 元,而非 80 元。 +// */ +// @Min(value = 1, message = "折扣上限最小值为 {value}") +// private Integer discountPriceLimit; + // ========== 使用效果 END ========== + + public Integer getId() { + return id; + } + + public CouponCardTemplateUpdateDTO setId(Integer id) { + this.id = id; + return this; + } + + public String getTitle() { + return title; + } + + public CouponCardTemplateUpdateDTO setTitle(String title) { + this.title = title; + return this; + } + + public String getDescription() { + return description; + } + + public CouponCardTemplateUpdateDTO setDescription(String description) { + this.description = description; + return this; + } + + public Integer getQuota() { + return quota; + } + + public CouponCardTemplateUpdateDTO setQuota(Integer quota) { + this.quota = quota; + return this; + } + + public Integer getTotal() { + return total; + } + + public CouponCardTemplateUpdateDTO setTotal(Integer total) { + this.total = total; + return this; + } + + public Integer getRangeType() { + return rangeType; + } + + public CouponCardTemplateUpdateDTO setRangeType(Integer rangeType) { + this.rangeType = rangeType; + return this; + } + + public String getRangeValues() { + return rangeValues; + } + + public CouponCardTemplateUpdateDTO setRangeValues(String rangeValues) { + this.rangeValues = rangeValues; + return this; + } } diff --git a/promotion/promotion-service-impl/src/main/java/cn/iocoder/mall/promotion/biz/convert/CouponTemplateConvert.java b/promotion/promotion-service-impl/src/main/java/cn/iocoder/mall/promotion/biz/convert/CouponTemplateConvert.java index 6fbfd095c..3c24e0112 100644 --- a/promotion/promotion-service-impl/src/main/java/cn/iocoder/mall/promotion/biz/convert/CouponTemplateConvert.java +++ b/promotion/promotion-service-impl/src/main/java/cn/iocoder/mall/promotion/biz/convert/CouponTemplateConvert.java @@ -2,7 +2,9 @@ package cn.iocoder.mall.promotion.biz.convert; import cn.iocoder.mall.promotion.api.bo.CouponTemplateBO; import cn.iocoder.mall.promotion.api.dto.CouponCardTemplateAddDTO; +import cn.iocoder.mall.promotion.api.dto.CouponCardTemplateUpdateDTO; import cn.iocoder.mall.promotion.api.dto.CouponCodeTemplateAddDTO; +import cn.iocoder.mall.promotion.api.dto.CouponCodeTemplateUpdateDTO; import cn.iocoder.mall.promotion.biz.dataobject.CouponTemplateDO; import org.mapstruct.Mapper; import org.mapstruct.Mappings; @@ -22,11 +24,17 @@ public interface CouponTemplateConvert { List convertToBO(List templateList); @Mappings({}) - CouponTemplateDO convert(CouponCodeTemplateAddDTO template); + CouponTemplateDO convert(CouponCodeTemplateUpdateDTO template); @Mappings({}) CouponTemplateDO convert(CouponCardTemplateAddDTO template); + @Mappings({}) + CouponTemplateDO convert(CouponCardTemplateUpdateDTO template); + + @Mappings({}) + CouponTemplateDO convert(CouponCodeTemplateAddDTO template); + @Mappings({}) CouponTemplateBO convert(CouponTemplateDO template); diff --git a/promotion/promotion-service-impl/src/main/java/cn/iocoder/mall/promotion/biz/service/CouponServiceImpl.java b/promotion/promotion-service-impl/src/main/java/cn/iocoder/mall/promotion/biz/service/CouponServiceImpl.java index 02a335229..69da446f0 100644 --- a/promotion/promotion-service-impl/src/main/java/cn/iocoder/mall/promotion/biz/service/CouponServiceImpl.java +++ b/promotion/promotion-service-impl/src/main/java/cn/iocoder/mall/promotion/biz/service/CouponServiceImpl.java @@ -1,15 +1,13 @@ package cn.iocoder.mall.promotion.biz.service; import cn.iocoder.common.framework.constant.SysErrorCodeEnum; +import cn.iocoder.common.framework.util.ServiceExceptionUtil; import cn.iocoder.common.framework.vo.CommonResult; import cn.iocoder.mall.promotion.api.CouponService; import cn.iocoder.mall.promotion.api.bo.CouponCardBO; import cn.iocoder.mall.promotion.api.bo.CouponTemplateBO; import cn.iocoder.mall.promotion.api.bo.CouponTemplatePageBO; -import cn.iocoder.mall.promotion.api.constant.CouponTemplateDateTypeEnum; -import cn.iocoder.mall.promotion.api.constant.CouponTemplatePreferentialTypeEnum; -import cn.iocoder.mall.promotion.api.constant.CouponTemplateStatusEnum; -import cn.iocoder.mall.promotion.api.constant.CouponTemplateTypeEnum; +import cn.iocoder.mall.promotion.api.constant.*; import cn.iocoder.mall.promotion.api.dto.*; import cn.iocoder.mall.promotion.biz.convert.CouponTemplateConvert; import cn.iocoder.mall.promotion.biz.dao.CouponTemplateMapper; @@ -82,7 +80,24 @@ public class CouponServiceImpl implements CouponService { @Override public CommonResult updateCouponCardTemplate(CouponCardTemplateUpdateDTO couponCardTemplateUpdateDTO) { - return null; + // 校验 CouponCardTemplate 存在 + CouponTemplateDO template = couponTemplateMapper.selectById(couponCardTemplateUpdateDTO.getId()); + if (template == null) { + return ServiceExceptionUtil.error(PromotionErrorCodeEnum.PRODUCT_TEMPLATE_NOT_EXISTS.getCode()); + } + // 校验 CouponCardTemplate 是 CARD + if (!CouponTemplateTypeEnum.CARD.getValue().equals(template.getType())) { + return ServiceExceptionUtil.error(PromotionErrorCodeEnum.PRODUCT_TEMPLATE_NOT_CARD.getCode()); + } + // 校验发放数量不能减少 + if (couponCardTemplateUpdateDTO.getTotal() < template.getTotal()) { + return ServiceExceptionUtil.error(PromotionErrorCodeEnum.PRODUCT_TEMPLATE_TOTAL_CAN_NOT_REDUCE.getCode()); + } + // 更新优惠劵模板到数据库 + CouponTemplateDO updateTemplateDO = CouponTemplateConvert.INSTANCE.convert(couponCardTemplateUpdateDTO); + couponTemplateMapper.update(updateTemplateDO); + // 返回成功 + return CommonResult.success(true); } @Override diff --git a/promotion/promotion-service-impl/target/classes/mapper/CouponTemplateMapper.xml b/promotion/promotion-service-impl/target/classes/mapper/CouponTemplateMapper.xml new file mode 100644 index 000000000..8a4938ded --- /dev/null +++ b/promotion/promotion-service-impl/target/classes/mapper/CouponTemplateMapper.xml @@ -0,0 +1,152 @@ + + + + + + id, title, description, type, code_type, + status, quota, total, price_available, range_type, + range_values, date_type, valid_start_time, valid_end_time, fixed_start_term, fixed_end_term, + preferential_type, percent_off, price_off, discount_price_limit, stat_fetch_num, + create_time + + + + + + + + + + + + + + + + + + + + + + + + + + + INSERT INTO coupon_template ( + title, description, type, code_type, + status, quota, total, price_available, range_type, + range_values, date_type, valid_start_time, valid_end_time, fixed_start_term, fixed_end_term, + preferential_type, percent_off, price_off, discount_price_limit, stat_fetch_num, + create_time + ) VALUES ( + #{title}, #{description}, #{type}, #{codeType}, + #{status}, #{quota}, #{total}, #{priceAvailable}, #{rangeType}, + #{rangeValues}, #{dateType}, #{validStartTime}, #{validEndTime}, #{fixedStartTerm}, #{fixedEndTerm} + #{preferentialType}, #{percentOff}, #{priceOff}, #{discountPriceLimit}, #{statFetchNum}, + #{createTime} + ) + + + + UPDATE coupon_template + + + title = #{title}, + + + description = #{description}, + + + status = #{status}, + + + quota = #{quota}, + + + total = #{total}, + + + price_available = #{priceAvailable}, + + + range_type = #{rangeType}, + + + range_values = #{rangeValues}, + + + date_type = #{dateType}, + + + valid_start_time = #{validStartTime}, + + + valid_end_time = #{validEndTime}, + + + fixed_start_term = #{fixedStartTerm}, + + + fixed_end_term = #{fixedEndTerm}, + + + preferential_type = #{preferentialType}, + + + percent_off = #{percentOff}, + + + price_off = #{priceOff}, + + + discount_price_limit = #{discountPriceLimit}, + + + WHERE id = #{id} + + + diff --git a/promotion/promotion-service-impl/target/classes/mapper/ProductRecommendMapper.xml b/promotion/promotion-service-impl/target/classes/mapper/ProductRecommendMapper.xml new file mode 100644 index 000000000..7632b2579 --- /dev/null +++ b/promotion/promotion-service-impl/target/classes/mapper/ProductRecommendMapper.xml @@ -0,0 +1,125 @@ + + + + + + id, type, product_spu_id, sort, + status, memo, create_time + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + INSERT INTO product_recommend ( + type, product_spu_id, sort, status, memo, + create_time, deleted + ) VALUES ( + #{type}, #{productSpuId}, #{sort}, #{status}, #{memo}, + #{createTime}, #{deleted} + ) + + + + UPDATE product_recommend + + + type = #{type}, + + + product_spu_id = #{productSpuId}, + + + sort = #{sort}, + + + status = #{status}, + + + memo = #{memo}, + + + deleted = #{deleted} + + + WHERE id = #{id} + + + \ No newline at end of file diff --git a/promotion/promotion-service-impl/target/generated-sources/annotations/cn/iocoder/mall/promotion/biz/convert/CouponTemplateConvertImpl.java b/promotion/promotion-service-impl/target/generated-sources/annotations/cn/iocoder/mall/promotion/biz/convert/CouponTemplateConvertImpl.java new file mode 100644 index 000000000..df59c1532 --- /dev/null +++ b/promotion/promotion-service-impl/target/generated-sources/annotations/cn/iocoder/mall/promotion/biz/convert/CouponTemplateConvertImpl.java @@ -0,0 +1,135 @@ +package cn.iocoder.mall.promotion.biz.convert; + +import cn.iocoder.mall.promotion.api.bo.CouponTemplateBO; +import cn.iocoder.mall.promotion.api.dto.CouponCardTemplateAddDTO; +import cn.iocoder.mall.promotion.api.dto.CouponCardTemplateUpdateDTO; +import cn.iocoder.mall.promotion.api.dto.CouponCodeTemplateAddDTO; +import cn.iocoder.mall.promotion.api.dto.CouponCodeTemplateUpdateDTO; +import cn.iocoder.mall.promotion.biz.dataobject.CouponTemplateDO; +import java.util.ArrayList; +import java.util.List; +import javax.annotation.Generated; + +@Generated( + value = "org.mapstruct.ap.MappingProcessor", + date = "2019-04-06T00:20:10+0800", + comments = "version: 1.3.0.Final, compiler: javac, environment: Java 11.0.1 (Oracle Corporation)" +) +public class CouponTemplateConvertImpl implements CouponTemplateConvert { + + @Override + public List convertToBO(List templateList) { + if ( templateList == null ) { + return null; + } + + List list = new ArrayList( templateList.size() ); + for ( CouponTemplateDO couponTemplateDO : templateList ) { + list.add( convert( couponTemplateDO ) ); + } + + return list; + } + + @Override + public CouponTemplateDO convert(CouponCodeTemplateUpdateDTO template) { + if ( template == null ) { + return null; + } + + CouponTemplateDO couponTemplateDO = new CouponTemplateDO(); + + return couponTemplateDO; + } + + @Override + public CouponTemplateDO convert(CouponCardTemplateAddDTO template) { + if ( template == null ) { + return null; + } + + CouponTemplateDO couponTemplateDO = new CouponTemplateDO(); + + couponTemplateDO.setTitle( template.getTitle() ); + couponTemplateDO.setDescription( template.getDescription() ); + couponTemplateDO.setQuota( template.getQuota() ); + couponTemplateDO.setTotal( template.getTotal() ); + couponTemplateDO.setPriceAvailable( template.getPriceAvailable() ); + couponTemplateDO.setRangeType( template.getRangeType() ); + couponTemplateDO.setRangeValues( template.getRangeValues() ); + couponTemplateDO.setDateType( template.getDateType() ); + couponTemplateDO.setValidStartTime( template.getValidStartTime() ); + couponTemplateDO.setValidEndTime( template.getValidEndTime() ); + couponTemplateDO.setFixedEndTerm( template.getFixedEndTerm() ); + couponTemplateDO.setPreferentialType( template.getPreferentialType() ); + couponTemplateDO.setPercentOff( template.getPercentOff() ); + couponTemplateDO.setPriceOff( template.getPriceOff() ); + couponTemplateDO.setDiscountPriceLimit( template.getDiscountPriceLimit() ); + + return couponTemplateDO; + } + + @Override + public CouponTemplateDO convert(CouponCardTemplateUpdateDTO template) { + if ( template == null ) { + return null; + } + + CouponTemplateDO couponTemplateDO = new CouponTemplateDO(); + + couponTemplateDO.setId( template.getId() ); + couponTemplateDO.setTitle( template.getTitle() ); + couponTemplateDO.setDescription( template.getDescription() ); + couponTemplateDO.setQuota( template.getQuota() ); + couponTemplateDO.setTotal( template.getTotal() ); + couponTemplateDO.setRangeType( template.getRangeType() ); + couponTemplateDO.setRangeValues( template.getRangeValues() ); + + return couponTemplateDO; + } + + @Override + public CouponTemplateDO convert(CouponCodeTemplateAddDTO template) { + if ( template == null ) { + return null; + } + + CouponTemplateDO couponTemplateDO = new CouponTemplateDO(); + + return couponTemplateDO; + } + + @Override + public CouponTemplateBO convert(CouponTemplateDO template) { + if ( template == null ) { + return null; + } + + CouponTemplateBO couponTemplateBO = new CouponTemplateBO(); + + couponTemplateBO.setId( template.getId() ); + couponTemplateBO.setTitle( template.getTitle() ); + couponTemplateBO.setDescription( template.getDescription() ); + couponTemplateBO.setType( template.getType() ); + couponTemplateBO.setCodeType( template.getCodeType() ); + couponTemplateBO.setStatus( template.getStatus() ); + couponTemplateBO.setQuota( template.getQuota() ); + couponTemplateBO.setTotal( template.getTotal() ); + couponTemplateBO.setPriceAvailable( template.getPriceAvailable() ); + couponTemplateBO.setRangeType( template.getRangeType() ); + couponTemplateBO.setRangeValues( template.getRangeValues() ); + couponTemplateBO.setDateType( template.getDateType() ); + couponTemplateBO.setValidStartTime( template.getValidStartTime() ); + couponTemplateBO.setValidEndTime( template.getValidEndTime() ); + couponTemplateBO.setPreferentialType( template.getPreferentialType() ); + couponTemplateBO.setPercentOff( template.getPercentOff() ); + couponTemplateBO.setPriceOff( template.getPriceOff() ); + couponTemplateBO.setDiscountPriceLimit( template.getDiscountPriceLimit() ); + couponTemplateBO.setStatFetchNum( template.getStatFetchNum() ); + couponTemplateBO.setCreateTime( template.getCreateTime() ); + couponTemplateBO.setFixedStartTerm( template.getFixedStartTerm() ); + couponTemplateBO.setFixedEndTerm( template.getFixedEndTerm() ); + + return couponTemplateBO; + } +} diff --git a/promotion/promotion-service-impl/target/generated-sources/annotations/cn/iocoder/mall/promotion/biz/convert/ProductRecommendConvertImpl.java b/promotion/promotion-service-impl/target/generated-sources/annotations/cn/iocoder/mall/promotion/biz/convert/ProductRecommendConvertImpl.java new file mode 100644 index 000000000..3ad4be265 --- /dev/null +++ b/promotion/promotion-service-impl/target/generated-sources/annotations/cn/iocoder/mall/promotion/biz/convert/ProductRecommendConvertImpl.java @@ -0,0 +1,83 @@ +package cn.iocoder.mall.promotion.biz.convert; + +import cn.iocoder.mall.promotion.api.bo.ProductRecommendBO; +import cn.iocoder.mall.promotion.api.dto.ProductRecommendAddDTO; +import cn.iocoder.mall.promotion.api.dto.ProductRecommendUpdateDTO; +import cn.iocoder.mall.promotion.biz.dataobject.ProductRecommendDO; +import java.util.ArrayList; +import java.util.List; +import javax.annotation.Generated; + +@Generated( + value = "org.mapstruct.ap.MappingProcessor", + date = "2019-04-06T00:20:10+0800", + comments = "version: 1.3.0.Final, compiler: javac, environment: Java 11.0.1 (Oracle Corporation)" +) +public class ProductRecommendConvertImpl implements ProductRecommendConvert { + + @Override + public ProductRecommendBO convertToBO(ProductRecommendDO banner) { + if ( banner == null ) { + return null; + } + + ProductRecommendBO productRecommendBO = new ProductRecommendBO(); + + productRecommendBO.setId( banner.getId() ); + productRecommendBO.setType( banner.getType() ); + productRecommendBO.setProductSpuId( banner.getProductSpuId() ); + productRecommendBO.setSort( banner.getSort() ); + productRecommendBO.setStatus( banner.getStatus() ); + productRecommendBO.setMemo( banner.getMemo() ); + productRecommendBO.setCreateTime( banner.getCreateTime() ); + + return productRecommendBO; + } + + @Override + public List convertToBO(List bannerList) { + if ( bannerList == null ) { + return null; + } + + List list = new ArrayList( bannerList.size() ); + for ( ProductRecommendDO productRecommendDO : bannerList ) { + list.add( convertToBO( productRecommendDO ) ); + } + + return list; + } + + @Override + public ProductRecommendDO convert(ProductRecommendAddDTO bannerAddDTO) { + if ( bannerAddDTO == null ) { + return null; + } + + ProductRecommendDO productRecommendDO = new ProductRecommendDO(); + + productRecommendDO.setType( bannerAddDTO.getType() ); + productRecommendDO.setProductSpuId( bannerAddDTO.getProductSpuId() ); + productRecommendDO.setSort( bannerAddDTO.getSort() ); + productRecommendDO.setMemo( bannerAddDTO.getMemo() ); + + return productRecommendDO; + } + + @Override + public ProductRecommendDO convert(ProductRecommendUpdateDTO bannerUpdateDTO) { + if ( bannerUpdateDTO == null ) { + return null; + } + + ProductRecommendDO productRecommendDO = new ProductRecommendDO(); + + productRecommendDO.setId( bannerUpdateDTO.getId() ); + productRecommendDO.setType( bannerUpdateDTO.getType() ); + productRecommendDO.setProductSpuId( bannerUpdateDTO.getProductSpuId() ); + productRecommendDO.setSort( bannerUpdateDTO.getSort() ); + productRecommendDO.setMemo( bannerUpdateDTO.getMemo() ); + + return productRecommendDO; + } +} From 5c8828c2ec86b64dc69cb49ff0042fde90631d87 Mon Sep 17 00:00:00 2001 From: YunaiV <> Date: Sat, 6 Apr 2019 01:08:13 +0800 Subject: [PATCH 3/5] =?UTF-8?q?=E5=90=8E=E7=AB=AF=20+=20=E5=89=8D=E7=AB=AF?= =?UTF-8?q?=EF=BC=9A=E4=BC=98=E6=83=A0=E5=8A=B5=E6=9B=B4=E6=96=B0=E7=8A=B6?= =?UTF-8?q?=E6=80=81=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../promotion/couponCardTemplateList.js | 4 +- .../pages/Promotion/CouponCardTemplateList.js | 2 +- admin-web/src/services/promotion.js | 6 ++ .../AdminsCouponTemplateController.java | 12 ++++ .../mall/promotion/api/CouponService.java | 5 +- .../constant/CouponTemplateStatusEnum.java | 8 ++- .../biz/service/CouponServiceImpl.java | 57 ++++++++++++------- 7 files changed, 68 insertions(+), 26 deletions(-) diff --git a/admin-web/src/models/promotion/couponCardTemplateList.js b/admin-web/src/models/promotion/couponCardTemplateList.js index 0add40a0a..ba7735a1b 100644 --- a/admin-web/src/models/promotion/couponCardTemplateList.js +++ b/admin-web/src/models/promotion/couponCardTemplateList.js @@ -1,8 +1,8 @@ import {message} from 'antd'; import { - updateProductRecommendStatus, addCouponCardTemplate, updateCouponCardTemplate, + updateCouponCardTemplateStatus, getCouponCardTemplatePage, } from '../../services/promotion'; import PaginationHelper from '../../../helpers/PaginationHelper'; @@ -123,7 +123,7 @@ export default { * updateStatus({ payload }, { call, put }) { // 请求 - const response = yield call(updateProductRecommendStatus, payload); + const response = yield call(updateCouponCardTemplateStatus, payload); // 响应 if (response.code === 0) { message.info('更新状态成功!'); diff --git a/admin-web/src/pages/Promotion/CouponCardTemplateList.js b/admin-web/src/pages/Promotion/CouponCardTemplateList.js index 4aa904fe4..510c11240 100644 --- a/admin-web/src/pages/Promotion/CouponCardTemplateList.js +++ b/admin-web/src/pages/Promotion/CouponCardTemplateList.js @@ -48,7 +48,7 @@ function List ({ dataSource, loading, pagination, searchParams, dispatch, function handleStatus(record) { Modal.confirm({ title: record.status === 1 ? '确认禁用' : '取消禁用', - content: `${record.productSpuId}`, + content: `${record.title}`, onOk() { dispatch({ type: 'couponCardTemplateList/updateStatus', diff --git a/admin-web/src/services/promotion.js b/admin-web/src/services/promotion.js index 0abb67ce1..bfef93ba3 100644 --- a/admin-web/src/services/promotion.js +++ b/admin-web/src/services/promotion.js @@ -84,3 +84,9 @@ export async function updateCouponCardTemplate(params) { method: 'POST', }); } + +export async function updateCouponCardTemplateStatus(params) { + return request(`/promotion-api/admins/coupon/template/update_status?${stringify(params)}`, { + method: 'POST', + }); +} diff --git a/promotion/promotion-application/src/main/java/cn/iocoder/mall/promotion/application/controller/admins/AdminsCouponTemplateController.java b/promotion/promotion-application/src/main/java/cn/iocoder/mall/promotion/application/controller/admins/AdminsCouponTemplateController.java index b4fed0e2c..ce277c738 100644 --- a/promotion/promotion-application/src/main/java/cn/iocoder/mall/promotion/application/controller/admins/AdminsCouponTemplateController.java +++ b/promotion/promotion-application/src/main/java/cn/iocoder/mall/promotion/application/controller/admins/AdminsCouponTemplateController.java @@ -2,6 +2,7 @@ package cn.iocoder.mall.promotion.application.controller.admins; import cn.iocoder.common.framework.util.DateUtil; import cn.iocoder.common.framework.vo.CommonResult; +import cn.iocoder.mall.admin.sdk.context.AdminSecurityContextHolder; import cn.iocoder.mall.promotion.api.CouponService; import cn.iocoder.mall.promotion.api.bo.CouponTemplateBO; import cn.iocoder.mall.promotion.api.bo.CouponTemplatePageBO; @@ -131,6 +132,17 @@ public class AdminsCouponTemplateController { return couponService.updateCouponCardTemplate(couponCardTemplateUpdateDTO); } + @PostMapping("/template/update_status") + @ApiOperation(value = "更新优惠劵(码)模板状态") + @ApiImplicitParams({ + @ApiImplicitParam(name = "id", value = "Banner 编号", required = true, example = "1"), + @ApiImplicitParam(name = "status", value = "状态。1 - 开启;2 - 禁用", required = true, example = "1"), + }) + public CommonResult updateStatus(@RequestParam("id") Integer id, + @RequestParam("status") Integer status) { + return couponService.updateCouponTemplateStatus(AdminSecurityContextHolder.getContext().getAdminId(), id, status); + } + // ========== 优惠劵 ========== // ========== 优惠码 ========== diff --git a/promotion/promotion-service-api/src/main/java/cn/iocoder/mall/promotion/api/CouponService.java b/promotion/promotion-service-api/src/main/java/cn/iocoder/mall/promotion/api/CouponService.java index 977ef9663..01f22c3bd 100644 --- a/promotion/promotion-service-api/src/main/java/cn/iocoder/mall/promotion/api/CouponService.java +++ b/promotion/promotion-service-api/src/main/java/cn/iocoder/mall/promotion/api/CouponService.java @@ -1,9 +1,11 @@ package cn.iocoder.mall.promotion.api; +import cn.iocoder.common.framework.validator.InEnum; import cn.iocoder.common.framework.vo.CommonResult; import cn.iocoder.mall.promotion.api.bo.CouponCardBO; import cn.iocoder.mall.promotion.api.bo.CouponTemplateBO; import cn.iocoder.mall.promotion.api.bo.CouponTemplatePageBO; +import cn.iocoder.mall.promotion.api.constant.CouponTemplateStatusEnum; import cn.iocoder.mall.promotion.api.dto.*; public interface CouponService { @@ -52,7 +54,8 @@ public interface CouponService { * @param status 状态 * @return 是否成功 */ - CommonResult updateCouponTemplateStatus(Integer adminId, Integer couponTemplateId, Integer status); + CommonResult updateCouponTemplateStatus(Integer adminId, Integer couponTemplateId, + @InEnum(value = CouponTemplateStatusEnum.class, message = "修改状态必须是 {value}") Integer status); // ========== 优惠劵 ========== diff --git a/promotion/promotion-service-api/src/main/java/cn/iocoder/mall/promotion/api/constant/CouponTemplateStatusEnum.java b/promotion/promotion-service-api/src/main/java/cn/iocoder/mall/promotion/api/constant/CouponTemplateStatusEnum.java index 087f1f1d5..af1b88377 100644 --- a/promotion/promotion-service-api/src/main/java/cn/iocoder/mall/promotion/api/constant/CouponTemplateStatusEnum.java +++ b/promotion/promotion-service-api/src/main/java/cn/iocoder/mall/promotion/api/constant/CouponTemplateStatusEnum.java @@ -1,8 +1,10 @@ package cn.iocoder.mall.promotion.api.constant; +import cn.iocoder.common.framework.core.IntArrayValuable; + import java.util.Arrays; -public enum CouponTemplateStatusEnum { +public enum CouponTemplateStatusEnum implements IntArrayValuable { ENABLE(1, "开启中"), DISABLE(2, "禁用中"), @@ -33,4 +35,8 @@ public enum CouponTemplateStatusEnum { return name; } + @Override + public int[] array() { + return ARRAYS; + } } diff --git a/promotion/promotion-service-impl/src/main/java/cn/iocoder/mall/promotion/biz/service/CouponServiceImpl.java b/promotion/promotion-service-impl/src/main/java/cn/iocoder/mall/promotion/biz/service/CouponServiceImpl.java index 69da446f0..270feaeaf 100644 --- a/promotion/promotion-service-impl/src/main/java/cn/iocoder/mall/promotion/biz/service/CouponServiceImpl.java +++ b/promotion/promotion-service-impl/src/main/java/cn/iocoder/mall/promotion/biz/service/CouponServiceImpl.java @@ -24,6 +24,8 @@ public class CouponServiceImpl implements CouponService { @Autowired private CouponTemplateMapper couponTemplateMapper; + // ========== 优惠劵(码)模板 ========== + @Override public CommonResult getCouponTemplatePage(CouponTemplatePageDTO couponTemplatePageDTO) { CouponTemplatePageBO couponTemplatePageBO = new CouponTemplatePageBO(); @@ -102,27 +104,16 @@ public class CouponServiceImpl implements CouponService { @Override public CommonResult updateCouponTemplateStatus(Integer adminId, Integer couponTemplateId, Integer status) { - return null; - } - - @Override - public CommonResult addCouponCard(Integer userId, Integer couponTemplateId) { - return null; - } - - @Override - public CommonResult useCouponCard(Integer userId, Integer couponCardId, Integer usedOrderId, Integer usedPrice) { - return null; - } - - @Override - public CommonResult cancelUseCouponCard(Integer userId, Integer couponCardId) { - return null; - } - - @Override - public CommonResult useCouponCode(Integer userId, String code) { - return null; + // 校验 CouponCardTemplate 存在 + CouponTemplateDO template = couponTemplateMapper.selectById(couponTemplateId); + if (template == null) { + return ServiceExceptionUtil.error(PromotionErrorCodeEnum.PRODUCT_TEMPLATE_NOT_EXISTS.getCode()); + } + // 更新到数据库 + CouponTemplateDO updateTemplateDO = new CouponTemplateDO().setId(couponTemplateId).setStatus(status); + couponTemplateMapper.update(updateTemplateDO); + // 返回成功 + return CommonResult.success(true); } private CommonResult checkCouponTemplateDateType(Integer dateType, Date validStartTime, Date validEndTime, Integer fixedBeginTerm, Integer fixedEndTerm) { @@ -168,4 +159,28 @@ public class CouponServiceImpl implements CouponService { return CommonResult.success(true); } + // ========== 优惠劵 ========== + + @Override + public CommonResult addCouponCard(Integer userId, Integer couponTemplateId) { + return null; + } + + @Override + public CommonResult useCouponCard(Integer userId, Integer couponCardId, Integer usedOrderId, Integer usedPrice) { + return null; + } + + @Override + public CommonResult cancelUseCouponCard(Integer userId, Integer couponCardId) { + return null; + } + + // ========== 优惠码 ========== + + @Override + public CommonResult useCouponCode(Integer userId, String code) { + return null; + } + } From 394faf12de3a52dc02193e709376fdc6294e9eea Mon Sep 17 00:00:00 2001 From: YunaiV <> Date: Sat, 6 Apr 2019 01:41:53 +0800 Subject: [PATCH 4/5] =?UTF-8?q?=E5=90=8E=E7=AB=AF=20+=20=E5=89=8D=E7=AB=AF?= =?UTF-8?q?=EF=BC=9A=E5=B0=9D=E8=AF=95=E5=BC=95=E5=85=A5=20lombok=20?= =?UTF-8?q?=EF=BC=8C=E8=A7=A3=E5=86=B3=E5=92=8C=20mapstruct=20=E9=9B=86?= =?UTF-8?q?=E6=88=90=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- promotion/promotion-application/pom.xml | 21 ++++- .../application/vo/admins/AdminsBannerVO.java | 77 ++---------------- .../application/vo/users/UsersBannerVO.java | 24 ++---- .../convert/BannerConvertImpl.java | 6 +- .../convert/CouponTemplateConvertImpl.java | 4 +- .../convert/ProductRecommendConvertImpl.java | 4 +- promotion/promotion-service-api/pom.xml | 52 ++++++++++++- .../mall/promotion/api/bo/BannerBO.java | 78 ++----------------- promotion/promotion-service-impl/pom.xml | 22 +++++- .../promotion/biz/dataobject/BannerDO.java | 69 ++-------------- .../convert/CouponTemplateConvertImpl.java | 4 +- .../convert/ProductRecommendConvertImpl.java | 4 +- 12 files changed, 122 insertions(+), 243 deletions(-) diff --git a/promotion/promotion-application/pom.xml b/promotion/promotion-application/pom.xml index bc8ef85f5..e633ae714 100644 --- a/promotion/promotion-application/pom.xml +++ b/promotion/promotion-application/pom.xml @@ -13,6 +13,7 @@ 1.3.0.Final + 1.16.14 @@ -103,6 +104,17 @@ mapstruct ${org.mapstruct.version} + + org.mapstruct + mapstruct-jdk8 + ${org.mapstruct.version} + + + + org.projectlombok + lombok + ${org.projectlombok.version} + @@ -112,7 +124,7 @@ org.apache.maven.plugins maven-compiler-plugin - 3.5.1 + 3.8.0 1.8 1.8 @@ -122,6 +134,11 @@ mapstruct-processor ${org.mapstruct.version} + + org.projectlombok + lombok + ${org.projectlombok.version} + @@ -138,4 +155,4 @@ - \ No newline at end of file + diff --git a/promotion/promotion-application/src/main/java/cn/iocoder/mall/promotion/application/vo/admins/AdminsBannerVO.java b/promotion/promotion-application/src/main/java/cn/iocoder/mall/promotion/application/vo/admins/AdminsBannerVO.java index ef2f42e88..d73900c29 100644 --- a/promotion/promotion-application/src/main/java/cn/iocoder/mall/promotion/application/vo/admins/AdminsBannerVO.java +++ b/promotion/promotion-application/src/main/java/cn/iocoder/mall/promotion/application/vo/admins/AdminsBannerVO.java @@ -2,10 +2,14 @@ package cn.iocoder.mall.promotion.application.vo.admins; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.experimental.Accessors; import java.util.Date; @ApiModel("Banner VO") +@Data +@Accessors(chain = true) public class AdminsBannerVO { @ApiModelProperty(value = "Banner 编号", required = true, example = "1") @@ -25,75 +29,4 @@ public class AdminsBannerVO { @ApiModelProperty(value = "创建时间", required = true, example = "时间戳格式") private Date createTime; - public Integer getId() { - return id; - } - - public AdminsBannerVO setId(Integer id) { - this.id = id; - return this; - } - - public String getTitle() { - return title; - } - - public AdminsBannerVO setTitle(String title) { - this.title = title; - return this; - } - - public String getUrl() { - return url; - } - - public AdminsBannerVO setUrl(String url) { - this.url = url; - return this; - } - - public Integer getSort() { - return sort; - } - - public AdminsBannerVO setSort(Integer sort) { - this.sort = sort; - return this; - } - - public Integer getStatus() { - return status; - } - - public AdminsBannerVO setStatus(Integer status) { - this.status = status; - return this; - } - - public String getMemo() { - return memo; - } - - public AdminsBannerVO setMemo(String memo) { - this.memo = memo; - return this; - } - - public Date getCreateTime() { - return createTime; - } - - public AdminsBannerVO setCreateTime(Date createTime) { - this.createTime = createTime; - return this; - } - - public String getPicUrl() { - return picUrl; - } - - public AdminsBannerVO setPicUrl(String picUrl) { - this.picUrl = picUrl; - return this; - } -} \ No newline at end of file +} diff --git a/promotion/promotion-application/src/main/java/cn/iocoder/mall/promotion/application/vo/users/UsersBannerVO.java b/promotion/promotion-application/src/main/java/cn/iocoder/mall/promotion/application/vo/users/UsersBannerVO.java index 5bf0e0627..a056b79de 100644 --- a/promotion/promotion-application/src/main/java/cn/iocoder/mall/promotion/application/vo/users/UsersBannerVO.java +++ b/promotion/promotion-application/src/main/java/cn/iocoder/mall/promotion/application/vo/users/UsersBannerVO.java @@ -2,8 +2,12 @@ package cn.iocoder.mall.promotion.application.vo.users; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.experimental.Accessors; @ApiModel("Banner VO") +@Data +@Accessors(chain = true) public class UsersBannerVO { @ApiModelProperty(value = "跳转链接", required = true, example = "http://www.baidu.com") @@ -11,22 +15,4 @@ public class UsersBannerVO { @ApiModelProperty(value = "图片链接", required = true, example = "http://www.iocoder.cn/01.jpg") private String picUrl; - public String getUrl() { - return url; - } - - public UsersBannerVO setUrl(String url) { - this.url = url; - return this; - } - - public String getPicUrl() { - return picUrl; - } - - public UsersBannerVO setPicUrl(String picUrl) { - this.picUrl = picUrl; - return this; - } - -} \ No newline at end of file +} diff --git a/promotion/promotion-application/target/generated-sources/annotations/cn/iocoder/mall/promotion/application/convert/BannerConvertImpl.java b/promotion/promotion-application/target/generated-sources/annotations/cn/iocoder/mall/promotion/application/convert/BannerConvertImpl.java index 9c965f183..35482450a 100644 --- a/promotion/promotion-application/target/generated-sources/annotations/cn/iocoder/mall/promotion/application/convert/BannerConvertImpl.java +++ b/promotion/promotion-application/target/generated-sources/annotations/cn/iocoder/mall/promotion/application/convert/BannerConvertImpl.java @@ -12,8 +12,8 @@ import javax.annotation.Generated; @Generated( value = "org.mapstruct.ap.MappingProcessor", - date = "2019-04-05T22:26:04+0800", - comments = "version: 1.3.0.Final, compiler: javac, environment: Java 11.0.1 (Oracle Corporation)" + date = "2019-04-06T01:40:13+0800", + comments = "version: 1.3.0.Final, compiler: javac, environment: Java 1.8.0_121 (Oracle Corporation)" ) public class BannerConvertImpl implements BannerConvert { @@ -28,11 +28,11 @@ public class BannerConvertImpl implements BannerConvert { adminsBannerVO.setId( bannerBO.getId() ); adminsBannerVO.setTitle( bannerBO.getTitle() ); adminsBannerVO.setUrl( bannerBO.getUrl() ); + adminsBannerVO.setPicUrl( bannerBO.getPicUrl() ); adminsBannerVO.setSort( bannerBO.getSort() ); adminsBannerVO.setStatus( bannerBO.getStatus() ); adminsBannerVO.setMemo( bannerBO.getMemo() ); adminsBannerVO.setCreateTime( bannerBO.getCreateTime() ); - adminsBannerVO.setPicUrl( bannerBO.getPicUrl() ); return adminsBannerVO; } diff --git a/promotion/promotion-application/target/generated-sources/annotations/cn/iocoder/mall/promotion/application/convert/CouponTemplateConvertImpl.java b/promotion/promotion-application/target/generated-sources/annotations/cn/iocoder/mall/promotion/application/convert/CouponTemplateConvertImpl.java index 124f4094a..3a6ead592 100644 --- a/promotion/promotion-application/target/generated-sources/annotations/cn/iocoder/mall/promotion/application/convert/CouponTemplateConvertImpl.java +++ b/promotion/promotion-application/target/generated-sources/annotations/cn/iocoder/mall/promotion/application/convert/CouponTemplateConvertImpl.java @@ -11,8 +11,8 @@ import javax.annotation.Generated; @Generated( value = "org.mapstruct.ap.MappingProcessor", - date = "2019-04-05T22:26:04+0800", - comments = "version: 1.3.0.Final, compiler: javac, environment: Java 11.0.1 (Oracle Corporation)" + date = "2019-04-06T01:40:13+0800", + comments = "version: 1.3.0.Final, compiler: javac, environment: Java 1.8.0_121 (Oracle Corporation)" ) public class CouponTemplateConvertImpl implements CouponTemplateConvert { diff --git a/promotion/promotion-application/target/generated-sources/annotations/cn/iocoder/mall/promotion/application/convert/ProductRecommendConvertImpl.java b/promotion/promotion-application/target/generated-sources/annotations/cn/iocoder/mall/promotion/application/convert/ProductRecommendConvertImpl.java index 7a2c06886..de469091f 100644 --- a/promotion/promotion-application/target/generated-sources/annotations/cn/iocoder/mall/promotion/application/convert/ProductRecommendConvertImpl.java +++ b/promotion/promotion-application/target/generated-sources/annotations/cn/iocoder/mall/promotion/application/convert/ProductRecommendConvertImpl.java @@ -13,8 +13,8 @@ import javax.annotation.Generated; @Generated( value = "org.mapstruct.ap.MappingProcessor", - date = "2019-04-05T22:26:04+0800", - comments = "version: 1.3.0.Final, compiler: javac, environment: Java 11.0.1 (Oracle Corporation)" + date = "2019-04-06T01:40:13+0800", + comments = "version: 1.3.0.Final, compiler: javac, environment: Java 1.8.0_121 (Oracle Corporation)" ) public class ProductRecommendConvertImpl implements ProductRecommendConvert { diff --git a/promotion/promotion-service-api/pom.xml b/promotion/promotion-service-api/pom.xml index d2b1af042..c49c39763 100644 --- a/promotion/promotion-service-api/pom.xml +++ b/promotion/promotion-service-api/pom.xml @@ -11,6 +11,11 @@ promotion-service-api + + 1.3.0.Final + 1.16.14 + + javax.validation @@ -22,6 +27,51 @@ 1.0-SNAPSHOT compile + + + org.mapstruct + mapstruct + ${org.mapstruct.version} + + + org.mapstruct + mapstruct-jdk8 + ${org.mapstruct.version} + + + + org.projectlombok + lombok + ${org.projectlombok.version} + - \ No newline at end of file + + + + + org.apache.maven.plugins + maven-compiler-plugin + 3.8.0 + + 1.8 + 1.8 + + + org.mapstruct + mapstruct-processor + ${org.mapstruct.version} + + + org.projectlombok + lombok + ${org.projectlombok.version} + + + + + + + + + diff --git a/promotion/promotion-service-api/src/main/java/cn/iocoder/mall/promotion/api/bo/BannerBO.java b/promotion/promotion-service-api/src/main/java/cn/iocoder/mall/promotion/api/bo/BannerBO.java index db6b385b1..da7d360f6 100644 --- a/promotion/promotion-service-api/src/main/java/cn/iocoder/mall/promotion/api/bo/BannerBO.java +++ b/promotion/promotion-service-api/src/main/java/cn/iocoder/mall/promotion/api/bo/BannerBO.java @@ -1,10 +1,15 @@ package cn.iocoder.mall.promotion.api.bo; +import lombok.Data; +import lombok.experimental.Accessors; + import java.util.Date; /** * Banner BO */ +@Data +@Accessors(chain = true) public class BannerBO { /** @@ -40,75 +45,4 @@ public class BannerBO { */ private Date createTime; - public Integer getId() { - return id; - } - - public BannerBO setId(Integer id) { - this.id = id; - return this; - } - - public String getTitle() { - return title; - } - - public BannerBO setTitle(String title) { - this.title = title; - return this; - } - - public String getUrl() { - return url; - } - - public BannerBO setUrl(String url) { - this.url = url; - return this; - } - - public Integer getSort() { - return sort; - } - - public BannerBO setSort(Integer sort) { - this.sort = sort; - return this; - } - - public Integer getStatus() { - return status; - } - - public BannerBO setStatus(Integer status) { - this.status = status; - return this; - } - - public String getMemo() { - return memo; - } - - public BannerBO setMemo(String memo) { - this.memo = memo; - return this; - } - - public Date getCreateTime() { - return createTime; - } - - public BannerBO setCreateTime(Date createTime) { - this.createTime = createTime; - return this; - } - - public String getPicUrl() { - return picUrl; - } - - public BannerBO setPicUrl(String picUrl) { - this.picUrl = picUrl; - return this; - } -} \ No newline at end of file +} diff --git a/promotion/promotion-service-impl/pom.xml b/promotion/promotion-service-impl/pom.xml index 222fbfc0c..ce002879a 100644 --- a/promotion/promotion-service-impl/pom.xml +++ b/promotion/promotion-service-impl/pom.xml @@ -14,6 +14,7 @@ 1.3.0.Final + 1.16.14 @@ -53,11 +54,23 @@ mybatis-spring-boot-starter 2.0.0 + org.mapstruct - mapstruct + mapstruct ${org.mapstruct.version} + + org.mapstruct + mapstruct-jdk8 + ${org.mapstruct.version} + + + + org.projectlombok + lombok + ${org.projectlombok.version} + com.google.guava @@ -103,7 +116,7 @@ org.apache.maven.plugins maven-compiler-plugin - 3.5.1 + 3.8.0 1.8 1.8 @@ -113,6 +126,11 @@ mapstruct-processor ${org.mapstruct.version} + + org.projectlombok + lombok + ${org.projectlombok.version} + diff --git a/promotion/promotion-service-impl/src/main/java/cn/iocoder/mall/promotion/biz/dataobject/BannerDO.java b/promotion/promotion-service-impl/src/main/java/cn/iocoder/mall/promotion/biz/dataobject/BannerDO.java index 60eafd035..9e2cc22b9 100644 --- a/promotion/promotion-service-impl/src/main/java/cn/iocoder/mall/promotion/biz/dataobject/BannerDO.java +++ b/promotion/promotion-service-impl/src/main/java/cn/iocoder/mall/promotion/biz/dataobject/BannerDO.java @@ -1,10 +1,14 @@ package cn.iocoder.mall.promotion.biz.dataobject; import cn.iocoder.common.framework.dataobject.DeletableDO; +import lombok.Data; +import lombok.experimental.Accessors; /** * Banner 广告页 */ +@Data +@Accessors(chain = true) public class BannerDO extends DeletableDO { /** @@ -40,67 +44,4 @@ public class BannerDO extends DeletableDO { // TODO 芋艿 点击次数。&& 其他数据相关 - public Integer getId() { - return id; - } - - public BannerDO setId(Integer id) { - this.id = id; - return this; - } - - public String getTitle() { - return title; - } - - public BannerDO setTitle(String title) { - this.title = title; - return this; - } - - public String getUrl() { - return url; - } - - public BannerDO setUrl(String url) { - this.url = url; - return this; - } - - public Integer getStatus() { - return status; - } - - public BannerDO setStatus(Integer status) { - this.status = status; - return this; - } - - public String getMemo() { - return memo; - } - - public BannerDO setMemo(String memo) { - this.memo = memo; - return this; - } - - public Integer getSort() { - return sort; - } - - public BannerDO setSort(Integer sort) { - this.sort = sort; - return this; - } - - public String getPicUrl() { - return picUrl; - } - - public BannerDO setPicUrl(String picUrl) { - this.picUrl = picUrl; - return this; - } - -} \ No newline at end of file +} diff --git a/promotion/promotion-service-impl/target/generated-sources/annotations/cn/iocoder/mall/promotion/biz/convert/CouponTemplateConvertImpl.java b/promotion/promotion-service-impl/target/generated-sources/annotations/cn/iocoder/mall/promotion/biz/convert/CouponTemplateConvertImpl.java index df59c1532..6cb89e9db 100644 --- a/promotion/promotion-service-impl/target/generated-sources/annotations/cn/iocoder/mall/promotion/biz/convert/CouponTemplateConvertImpl.java +++ b/promotion/promotion-service-impl/target/generated-sources/annotations/cn/iocoder/mall/promotion/biz/convert/CouponTemplateConvertImpl.java @@ -12,8 +12,8 @@ import javax.annotation.Generated; @Generated( value = "org.mapstruct.ap.MappingProcessor", - date = "2019-04-06T00:20:10+0800", - comments = "version: 1.3.0.Final, compiler: javac, environment: Java 11.0.1 (Oracle Corporation)" + date = "2019-04-06T01:40:11+0800", + comments = "version: 1.3.0.Final, compiler: javac, environment: Java 1.8.0_121 (Oracle Corporation)" ) public class CouponTemplateConvertImpl implements CouponTemplateConvert { diff --git a/promotion/promotion-service-impl/target/generated-sources/annotations/cn/iocoder/mall/promotion/biz/convert/ProductRecommendConvertImpl.java b/promotion/promotion-service-impl/target/generated-sources/annotations/cn/iocoder/mall/promotion/biz/convert/ProductRecommendConvertImpl.java index 3ad4be265..e0ab55fac 100644 --- a/promotion/promotion-service-impl/target/generated-sources/annotations/cn/iocoder/mall/promotion/biz/convert/ProductRecommendConvertImpl.java +++ b/promotion/promotion-service-impl/target/generated-sources/annotations/cn/iocoder/mall/promotion/biz/convert/ProductRecommendConvertImpl.java @@ -10,8 +10,8 @@ import javax.annotation.Generated; @Generated( value = "org.mapstruct.ap.MappingProcessor", - date = "2019-04-06T00:20:10+0800", - comments = "version: 1.3.0.Final, compiler: javac, environment: Java 11.0.1 (Oracle Corporation)" + date = "2019-04-06T01:40:11+0800", + comments = "version: 1.3.0.Final, compiler: javac, environment: Java 1.8.0_121 (Oracle Corporation)" ) public class ProductRecommendConvertImpl implements ProductRecommendConvert { From 1820a9bbd4cdfdaafca61fe1a146c58b390cf698 Mon Sep 17 00:00:00 2001 From: sin Date: Sat, 6 Apr 2019 14:35:53 +0800 Subject: [PATCH 5/5] =?UTF-8?q?=E5=88=A0=E9=99=A4=E7=9B=AE=E5=BD=95user/us?= =?UTF-8?q?er-service-impl/target?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../classes/cn/iocoder/mall/user/a.class | Bin 787 -> 0 bytes .../user/config/DatabaseConfiguration.class | Bin 641 -> 0 bytes .../ServiceExceptionConfiguration.class | Bin 1328 -> 0 bytes .../mall/user/convert/OAuth2Convert.class | Bin 1716 -> 0 bytes .../mall/user/convert/OAuth2ConvertImpl.class | Bin 1772 -> 0 bytes .../mall/user/convert/UserConvert.class | Bin 660 -> 0 bytes .../mall/user/convert/UserConvertImpl.class | Bin 986 -> 0 bytes .../mall/user/dao/MobileCodeMapper.class | Bin 479 -> 0 bytes .../user/dao/OAuth2AccessTokenMapper.class | Bin 476 -> 0 bytes .../user/dao/OAuth2RefreshTokenMapper.class | Bin 356 -> 0 bytes .../cn/iocoder/mall/user/dao/UserMapper.class | Bin 422 -> 0 bytes .../mall/user/dao/UserRegisterMapper.class | Bin 338 -> 0 bytes .../mall/user/dataobject/MobileCodeDO.class | Bin 2512 -> 0 bytes .../user/dataobject/OAuth2AccessTokenDO.class | Bin 2057 -> 0 bytes .../dataobject/OAuth2RefreshTokenDO.class | Bin 1846 -> 0 bytes .../iocoder/mall/user/dataobject/UserDO.class | Bin 1357 -> 0 bytes .../mall/user/dataobject/UserLoginLogDO.class | Bin 331 -> 0 bytes .../mall/user/dataobject/UserRegisterDO.class | Bin 968 -> 0 bytes .../user/dataobject/UserThirdAuthDO.class | Bin 601 -> 0 bytes .../user/service/MobileCodeServiceImpl.class | Bin 4774 -> 0 bytes .../mall/user/service/OAuth2ServiceImpl.class | Bin 7440 -> 0 bytes .../mall/user/service/UserServiceImpl.class | Bin 3089 -> 0 bytes .../classes/config/application.properties | 8 --- .../target/classes/config/application.yaml | 32 --------- .../classes/mapper/MobileCodeMapper.xml | 35 ---------- .../mapper/OAuth2AccessTokenMapper.xml | 22 ------ .../mapper/OAuth2RefreshTokenMapper.xml | 13 ---- .../target/classes/mapper/UserMapper.xml | 20 ------ .../classes/mapper/UserRegisterMapper.xml | 13 ---- .../target/classes/mybatis-config.xml | 19 ------ .../mall/user/convert/OAuth2ConvertImpl.java | 41 ------------ .../mall/user/convert/UserConvertImpl.java | 63 ------------------ 32 files changed, 266 deletions(-) delete mode 100644 user/user-service-impl/target/classes/cn/iocoder/mall/user/a.class delete mode 100644 user/user-service-impl/target/classes/cn/iocoder/mall/user/config/DatabaseConfiguration.class delete mode 100644 user/user-service-impl/target/classes/cn/iocoder/mall/user/config/ServiceExceptionConfiguration.class delete mode 100644 user/user-service-impl/target/classes/cn/iocoder/mall/user/convert/OAuth2Convert.class delete mode 100644 user/user-service-impl/target/classes/cn/iocoder/mall/user/convert/OAuth2ConvertImpl.class delete mode 100644 user/user-service-impl/target/classes/cn/iocoder/mall/user/convert/UserConvert.class delete mode 100644 user/user-service-impl/target/classes/cn/iocoder/mall/user/convert/UserConvertImpl.class delete mode 100644 user/user-service-impl/target/classes/cn/iocoder/mall/user/dao/MobileCodeMapper.class delete mode 100644 user/user-service-impl/target/classes/cn/iocoder/mall/user/dao/OAuth2AccessTokenMapper.class delete mode 100644 user/user-service-impl/target/classes/cn/iocoder/mall/user/dao/OAuth2RefreshTokenMapper.class delete mode 100644 user/user-service-impl/target/classes/cn/iocoder/mall/user/dao/UserMapper.class delete mode 100644 user/user-service-impl/target/classes/cn/iocoder/mall/user/dao/UserRegisterMapper.class delete mode 100644 user/user-service-impl/target/classes/cn/iocoder/mall/user/dataobject/MobileCodeDO.class delete mode 100644 user/user-service-impl/target/classes/cn/iocoder/mall/user/dataobject/OAuth2AccessTokenDO.class delete mode 100644 user/user-service-impl/target/classes/cn/iocoder/mall/user/dataobject/OAuth2RefreshTokenDO.class delete mode 100644 user/user-service-impl/target/classes/cn/iocoder/mall/user/dataobject/UserDO.class delete mode 100644 user/user-service-impl/target/classes/cn/iocoder/mall/user/dataobject/UserLoginLogDO.class delete mode 100644 user/user-service-impl/target/classes/cn/iocoder/mall/user/dataobject/UserRegisterDO.class delete mode 100644 user/user-service-impl/target/classes/cn/iocoder/mall/user/dataobject/UserThirdAuthDO.class delete mode 100644 user/user-service-impl/target/classes/cn/iocoder/mall/user/service/MobileCodeServiceImpl.class delete mode 100644 user/user-service-impl/target/classes/cn/iocoder/mall/user/service/OAuth2ServiceImpl.class delete mode 100644 user/user-service-impl/target/classes/cn/iocoder/mall/user/service/UserServiceImpl.class delete mode 100644 user/user-service-impl/target/classes/config/application.properties delete mode 100644 user/user-service-impl/target/classes/config/application.yaml delete mode 100644 user/user-service-impl/target/classes/mapper/MobileCodeMapper.xml delete mode 100644 user/user-service-impl/target/classes/mapper/OAuth2AccessTokenMapper.xml delete mode 100644 user/user-service-impl/target/classes/mapper/OAuth2RefreshTokenMapper.xml delete mode 100644 user/user-service-impl/target/classes/mapper/UserMapper.xml delete mode 100644 user/user-service-impl/target/classes/mapper/UserRegisterMapper.xml delete mode 100644 user/user-service-impl/target/classes/mybatis-config.xml delete mode 100644 user/user-service-impl/target/generated-sources/annotations/cn/iocoder/mall/user/convert/OAuth2ConvertImpl.java delete mode 100644 user/user-service-impl/target/generated-sources/annotations/cn/iocoder/mall/user/convert/UserConvertImpl.java diff --git a/user/user-service-impl/target/classes/cn/iocoder/mall/user/a.class b/user/user-service-impl/target/classes/cn/iocoder/mall/user/a.class deleted file mode 100644 index d7e0c50e0f15fdf902b0ba1a1a85fc291ce829e2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 787 zcmZuu%We}f6g}=tGRZI@B_*Y#yvj2vrK1XVt=J$TAre|CRamfcrdBd#9+l&O_$M~7 z0K@|Jd=%n%(kMl(CHp>n@9{a;fBydb1>hOBeN=GMhlg7g+^*sdHY&L5;~wsNc;Mlo zKzT3DV)I>C|tqut^?sYgUux!_u0xu?uHKRS?F zrphSILU&@MF37$T5YqBGhbvI)8yUUt$&-SoherZ_KcDJIy^O7xvfQ>^0jlr=G_gvo z9S`jQ9c=P?r&t~y2iU?B(!W?A87>~*A0Dg7P|6~8IM(^c+4#;B_CHOGN~u9#3-Z{w584O5MSsl zA>dgqk{)XGgINJCqt2*`Wn5vEZGJj${(+^pi)NqKV1di_vj7dOFn^W1#Q&kG+7T1O zVkK;HXj={EwY&EfZlm-K<@L|Kxx4lIl!s;E6f9fh39@mBRw8hXwobc7-1)<{@)|S1 Rb#Cg~_s}BJI-@1r_y;_#mTUk3 diff --git a/user/user-service-impl/target/classes/cn/iocoder/mall/user/config/DatabaseConfiguration.class b/user/user-service-impl/target/classes/cn/iocoder/mall/user/config/DatabaseConfiguration.class deleted file mode 100644 index 5bece263d44bfc84f81cd330ed042fdd6e00be37..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 641 zcmb7CO-~d-5Pi*l>9PteB3~zN%3(T2!bM|Z7L12Q6CiugQ%%#1jWgYw?jBfvmM0Sq z{s4cJp?b1WVz@AqRM)Gney^&!fB(7p1z-;weYCLF!}A{21-fsIHSwK5>&457KzroQ zw7}BXSpBK4a_vtkFF7(CJ4NM$yh(T-Y{zdV2)rIED~(fp)XR#>Qr3Yz zDdr?WDj-!%7Xz|5~0ov#Y zyn67gnJ~>!mShY0Ils^4-PD#$F|F1ppQpv2aVss hW5#KJv9SX@;dPrypYpoIIm=%m0#-0&fAtHV-2x*QwXpyI diff --git a/user/user-service-impl/target/classes/cn/iocoder/mall/user/config/ServiceExceptionConfiguration.class b/user/user-service-impl/target/classes/cn/iocoder/mall/user/config/ServiceExceptionConfiguration.class deleted file mode 100644 index 57c195e487be1b23337e8b45cddc8620d8dd3f8b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1328 zcmbtUTTc@~6#k|cR_Y>hRg{b1tu4w5f{7wTLTW-%B%#t5o~FxC2lmp;&Q^Tz&0pe+ z&%P+}fgj-C@K5-Jo>{6OG{#7io|!pw&i9?$?AOCD2LNU}$k4d-&%;61b@FUFw?QD>?q*SO(@TDO33AL-Dxx2f{8%d}Z?lKIm$AOl< zsLDuE4og80>Ldtaoi2x}?nDhGgZj4OzIYv~UBjToo_0i25KYO*vW&C{gd&P;lY23h zX0ferEe!Q3fTc#mlWsz}F8J1)1dxDol`vMWcrHz$C;nQmsU6&dm9< z*fu(mvyit@K+(n|?pe5RV+xLq2bi`nW8)!a86N+4Lm4ic5FL*Pb!V-%BV0`t+B|1B z=iA2fZ^J+{o-~TO{48HMZzNV-=%Y764`zj-=Q!IH8kV|H3|7Low#_h@Un!K&SeTX* zOl#&D`tv7^D%uPo+030t+6{d_44mW9jJ5R6Jgp5<(o1f{RP%hk4e<$8i>6S;I4t^9 zm|qIaObE$~baH5Av}TK+!9FI}Hpz}enL`)t?IQzRLN}eL_vD;PoZr%#C0%hJsq*B( zLV9sz_&r7^M`oU6hBBX!-bb=#_tEh#%|872W*E|h2=pRDasYi8q)*iV4eQl}ZICeg wh@+=vQEc({k#!eRhv>A>&)9d2krU{W8bJRmn_wpCf1@k>Rl@&O5HbJ^Nk&Ue<` zp4I*XehvsJ3Vc9(=9lm*5YL@WZ3~N5s>Dfmdow#T`^+;l`^R6u{s!P9v{zuGYGVuA zHm=}(8&~0$xW#ATPa7ZLLmSs{-KOmg3m@CKiBFd4^Qnc;1eUzkey7%|?+ILK_@S#K zKRQ&g+m}J$rV0Q2C>*NTxb0eMde`bBX-8mvywQnjzORy`6Me5jfk9<{m_un~bnry^ z|3sSd+HLPt=X(*rQ2WZ21MMC}V+>QC_u52qvZ+ijI(#T&*;huziNNcT%+O9*?zRQa zew~I!_mvk8b)pXfRSUz&NTZ{WKBpT|+-2f}#Kb9KHsxTT!*0S8N<$f>O5oId6Iv`L zQ5yR+Dd1=bpo zFM~%i)|ot37EMnR`i=SQy?}G(GXX@p6v^>(HUyIYp^P&}=9OH!rTR#~ z-p^^huX6@wTJY)f&V$Z^T2VdYz z3!Z}q_)1{wHqN*oI_y;zzEW-E z!Be9HcUKz4ek;#v1T4CZ?8)4N89e*X5~KP8t9}~CEOKVn)IpGS&L~a}yD3eNy!Yi( zHhjhNsvcb?S$UyRT@~}Bd>Gn~$$iBeL(2n-oj8Od7Mn&l0^feRw^PNy2MtLddAhJB#d6yvEyB;LWTR_*X2F zf2^W_HA*F3M_ktVo}tkjd^f&@xQkOXIGxbzOoFr2zLmS2quqBXaSyn#wfzf30oz9? z9AV)YMYWDn{|EkA$5=YT@{hDC;B9`(Sm1X9ON_h8^_^VGqu_iFi}8qLlP67J5$OfI z`){Nx6Qp3si?~EZ2JIr(>~YrYW32oR`)4>mQ5HFf#eBESc<)hHz~wycOj`l|25DK* AzyJUM diff --git a/user/user-service-impl/target/classes/cn/iocoder/mall/user/convert/OAuth2ConvertImpl.class b/user/user-service-impl/target/classes/cn/iocoder/mall/user/convert/OAuth2ConvertImpl.class deleted file mode 100644 index 36184ba00e2b446d8c3b9a4a23cb5fe30d4e6d25..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1772 zcmchXSx?(Q5Xb+U!=}Ly3KSZ8aF+xqrcg>bREa~CkP=cA3hLv=*(Qd>j%GLCv$`R6>(zp=_IaT~E4^7$ zF(TLj5%f9W|+@vhN_zyrCMs0S1M}VCQCDo6Ja@OexvS`7q*(SoocPJ#?bFO z_stDW6Slo?9t(q^mJXLHa)+CRBcYwE1+upDYnkvYf;iDNq4Jup7EGTbkhz&Bl0K8W zc!A~ZJi}7B;w>Dmnzz}2+9s*3gsa_&uWQfY+HsE8{GRvZgi|()AGpPW-Tdr<66sDVpzS0U>muDw^&iI3fjV4sLZuDg`vmYlv?3N zNzHo~fMNRX8Vrk}!8e~{hImOhJ4L#t=}h(#V9&91qeQ#twuKWo;taX;)v$lLlu4@p zQGBt4UG`swB$aGkktpVqPLRDVkXh41lqlZw?gr63=e@w%{^c4*q0oa%J)qY&N+TUN z`aYzYN+Y8&K79uEjf@C-=_`4QUFaiQX$GJlk7!1R7=sk$CV!{LnR|2IRxpQ;Ldu%0r|L%8t=YBE@b}8^mLbV92XB(p2=Tkv92KRJEH{ zhVXYCcu!oT`JU9(YuV20DW<1Bg@dFu{xv%s3U9B$%lH WNa_M4bpg^z(WBRbjFDml<9`9QLE+v2 diff --git a/user/user-service-impl/target/classes/cn/iocoder/mall/user/convert/UserConvert.class b/user/user-service-impl/target/classes/cn/iocoder/mall/user/convert/UserConvert.class deleted file mode 100644 index 0e8c9aaab5d423323a7f37c83fa49f6196377e5a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 660 zcma)4%SyvQ6g{`vmqxAc_fDa@FdKIjL92pLTk*AVHBHAllFpRLB;aR>8*w47{V4G! z6;$ZLKr;8-+&L%bWIjG$-vI1ly@>fSEMTz=!cq~-gwkpA^6H>jKPGH90_`gkn2xl5 zPlTZ#M_dI)C(=6qnn8U~*9gV$HsPi^d|yX6VcHKe7;HUi)wYHYGH;>+>5IPd+a}XF zY_UY;OuBp1ITu#+q?0xx6w)s`Y7tg1V(nBu$4P(1(p&vOL zv;LXr_m%EOOqx$b7)$oO7lcYHw@(+G8_)lgbC<6c|ZE5W>ku}c%%K%S@+ zRDPwf^B@vISQsKEElXAZ8)p$K9#*mDA&&xUq`ZD8bk}cX`4QIt`neN@m~Vzr4zn3q+MNTw0Ip-MQ~&?~ diff --git a/user/user-service-impl/target/classes/cn/iocoder/mall/user/convert/UserConvertImpl.class b/user/user-service-impl/target/classes/cn/iocoder/mall/user/convert/UserConvertImpl.class deleted file mode 100644 index 1a3e01dbf8282431ba6980ff4e696690d170b31b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 986 zcmb7DO>fgc6r9b6O^n-y5&|t>EiEN!qx!vLzd8+y_o%19@5zFCP+^h{vC>jjPu zJwhXAB7NVP&zN~(uuxI#d}48wU)^eM%U~6^{D?*A~bzhs1PlrnNMPrT4Wbr@1Zlo{CSx(FYmHiHcQ3i>yI7 zk398OCtf!Gab*8gE~JebEP>rZD+^y~;+c&tY}oN%J6t-TOnm}!=;$G-x?{2lbm#Tv}(!rRcs?9E2-n6cE+-UOHgu#zq;1>UY5+hyZ zdYhHQC>X1|7ZBglW1FjyZrWI4Zf6Zx#tJK%ggYcjz*ELD1b$(p#22dThDMv@DV4y(9Jp=F9RaE~I*lt&nZ@T&ar L7zEMDYu5e(Ly7;s diff --git a/user/user-service-impl/target/classes/cn/iocoder/mall/user/dao/MobileCodeMapper.class b/user/user-service-impl/target/classes/cn/iocoder/mall/user/dao/MobileCodeMapper.class deleted file mode 100644 index 5e5dc2fa75ce501786076f3f2457a702fa1b5627..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 479 zcmb7B%T59@6g}ms_`(<${sF|qhQu8!(YP9dk%WC2u2`JuowOaz{F)0tz>hLsV1bEo z;im0jL?xFz6+z)0R_Skk`4%GF?hVFHAH%Ur`$MnCCX5 zTWPqP4Er;M?wH~;FCL6HIYsh8_K}M=R`Mtd86}0YK$%P@Cd9$0+U`&o^^%o&H99kH zsi)Cfw;cBW$3QUh4I_olluMt|z0gxQ-|-xqq9A{@MpC$VEQMQ6GaKwYqZ{WqnrPVx z?aPGyQio#A<7uttjs1%bqKP6yK}H{BEIPJaDrg7Hr1!DhH4IY)!*0AX z??z|FE%cPVb&G!QU%M4VTwzpGTT?20g3mTX1y={8Ba`RoZ>q%#E+>W1ZE$9Too6_3 zj@YmzC*apH`GpR7h4ohH*^*!DAgYkK%u!D;r(l_U*;jD;hh=o=)h~gVwHH6$+1gZ~ opeDZpP^&9Ag1W>Fi5g-ffTSWg-ltBgchK6Mr*I~BQ;O#RKOM%3I8Nb2L1KNxzzQBNXNA|63Mw(^#yF=t+33=+q2(G2*4eb< z`Yy*+z*xW12K{3;xmqYVn(lxWeWX7!RZ1X5k0$QO3E`gv!Kb zCU0i)-kZ1o`uGHJjeZ;5HhKz)b%A_T7!4+=)0R_Slh?V)GQE?HUYlrmwWT!bC&Bl# z@o=fopHh6`^`r47r${~s6S-((sn89S$@yJ5<(17y;bt(|nm3~}<2HH`y>*-M@V{z8 zod5E47QFK*J=CPV%FWai1^KIrUEyNB69+jhZLq71Zk^+3qGc!MMicfM9g0f(x$^wZ z{#6HYP8`dE^qdL~HnK0r3YUK*!F2>bqLRVksaYLRqM*=_e1S$&;RsE^EkP}L0+3M~ U$A{5Lb%#z}PjMzak>xq?4YC(@=Kufz diff --git a/user/user-service-impl/target/classes/cn/iocoder/mall/user/dao/UserRegisterMapper.class b/user/user-service-impl/target/classes/cn/iocoder/mall/user/dao/UserRegisterMapper.class deleted file mode 100644 index 200f969a7d7f27f3e388db2dad7eb40a418a6bc1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 338 zcmZ`#yH3ME5S$B%4FM!N#2(D?! zv#Z(1%+7v(y?+3>!Euhm97hV7b&*0+xIUkkPFpUyqM%#TG`f?Hu1qq#*;1MGqu_#S z8xw`Q*da0rl2sA_W)|Fu!phWiJ*y?k~BiTi~Bf`oJn&Ed;~g!pn?zXLkR;UC->FzrTJ1z!JR5Ko(x4Ap>h<*2!#;*(9??rb1?$ z%#IAZGQ5-^X6O>+YG>LfO>JprQ>|HMb47w=+o~HaCc#7?cIem!kH#C8jDrg7 zsk6@#Oa>CGro)=d#(m1aa#|k;}|V<8)q>y zMVW3ixoVh(vnIhvp?HD<6^=4qGfcMMY1f&3q}5$;tD&_{G~1xDHyL+MjdKagwT7u0 z7M;RY+ghuo;{LX(YmR2s&sf7z_xSN?@9hKBPc)fRMb3#rF>p-pt`g^NaH9~86^GTy z?J?)n(%)#d)@BZ~ku{CdE{z0Jee(YANFzWuWh)5bWeklWqo#YWGH&gDjpE!<;D1l| zvGo4wErSH=B3oH8z?5!bu;=Dy9q-pX7IeUpIe{a=6pamQ3=$mUlhTL zrE3T#b&I2yGc-}wBXav7>mj+L%%Rn>8*G>NY(7}MW$JAOF2F?v6c|-t48|46k;%h^ z0+TSMz%&JBU{--Sn3Z5*nD)Si?L8j{ynWyXzA;&RmQoNSQT&RLF83(SJ*sn$0Nf)3 z_lUtglAzCnMC@oU;YdXJHo$K#lZv zbx*V?gt`X>)QCWhM4*-t>gfO|`Wrsf7>6nfq2ghvRUuSK3>A++Z6MU<04ORAA1cS8 z=3zl_Q;9Itju7fTltnj{h(J{l>h%C9s#6~-&!JR!Ab?7Sq4tGP58;srDj9)#i%^FH zpr~nls7VgBC@ge24E0V3wInWdIRf<_p*{?Nq7L?KFt6a;i&DmZ|=FX>8yY2u_Qp?>_)mu#veZ$Y{xIrp6R0F z@xxl>oCl}u+@+ap(YKj<#sWu-8{K3Wd9^A}w|gWoFL=05n3K7D1hiF-c(uN~pX*)C4=9;=&%?4``oIEK;UN!* zK1~$I9fePmaOaFcF(2iQ0Wv&??hTOMLN-O^2DzNHh=4gzMN6C)}nY@ zCMGduB8gEGrZ6dtnMfmJVjNi$6Ub;-9-wjQ#kJq=k?e2G(gPo%KY;;VDAJcMM5QNP z=}B68QkR|p$frR4k14X#G_uHR7uxAbIX#Cs=H(XC^)S@+DM21s!(B>_)6a#RhI>k= zq4uuz6BU$DvudcJ9;iivvid-Y>bIaw33VS26qSl~LoF+z9%7CT-czYq57Zh#t@nWv ztNvL@|Qb5JKp*EFJIpkGP@gArxg4*r_CHk@jm6lKiEGVFiZm2ya)MGqRK^Z+z x`vi5+2TDAW7Syp7ZzL?>|ITrp**3X>FPkWC^n_%mZOIgn5{ta)KUd zq&szu@|9C|#w?e4C)QCIINr%qji%Znl#7Haz6=;=%oU-zNNC&lUCum|rTNz{PQY8o zPLub_+o9uHyDa2LNZA3$S0^5S=6Fu{0&0a~RioIBUq@B8;&}XByIJGGF{`=Q$ya=v zxm6Z8V%^=0g$<{r(PqW=EXTJ|8dy!{x>mb|uR05vUpwV?XdP~~!^Xx3{s~--WB)Vv zb`L>fobd1s4l-XTMvl_E0Hf6j?-xd+#Yr`DZ+Y18>+e~>nmptI_~XF%D4$_~qkG$N zP{`=(D25D943UIlweyGz1DgG3OhUGsau5|h&zM+y2HLNpEs{Sch&IU#>g!ok$O6pcP%Gj{J6D^F2p2-X&Gt`vn#4>Sqzg5C=|WI?Xi5)R>7fjtCQJ;?!Oml4!E5kF=@)6=W!eI4 zTyCal5#MGffiBQRtZ-_&3_Do-gY<7h#mma#D|8ivqWC4e4xcEk{v^HBFHgzs6&&fV z{KaA?t*eg$c~Fh6q1e!{5Kz}?NdYz0|7+(&t4gRFxJCuk)CiOXsP!>W;?{dmX$iGV zw-ivZVW_ea>Ned`LB&R(9s}yh7%0&KJ*bR?TEVrBKA$lR^;`*6prQ)O7=hXX)bMmI%(oaq7(FehT2%}Fo^?|or?nRG~yxUE7Y0rm=;?>6eQaWrF!Ft zq5M{KDZS7RB7c7vcKrAQ@1zF`kN1yw9LPA^EGNgofT7;@A~z5owZ?A9`+avfpjDR? zMCZi!689s;I|l@)_xxm+*lYF17-2@Q57OlG`ed$gafRxhpB#(sdmht86F(+ClSKEj z!7QE=&PQXC^jXQ)xO`Ue9{@I~?dOBG>EKZ$NnU4@my%~|>rf11&wr=h&Q7QGSiY`< zOIUC)2h)KC+kqp^JZy&biw&LO(O97;!cau+CpnxiB0e2|q&Ixv?;K!-KAJ)QunbM= z(n^!k%9FbC1VG*dlXzsS6uIOXdA<1)?3*gPOtzvnE!1f3qy@NwMT!`%Vu|ee=I_wH zPBbqUHebVaB9qOp$ZO<{X6pyE=BV9L+pEyArjA%j%QAgxP#0vlLCrd&KtkQbtpcdh z=+yK^8--A}afdXfph{CvErNPD14>Rihq4sZav@ZC66#4I)ZJpJ@)Xo2K|P%TC7(Wr naun3PLMVL_>RBPwN->l^1@)4kwr4=ef0#qfE2ven8rJ>+kk;F@ diff --git a/user/user-service-impl/target/classes/cn/iocoder/mall/user/dataobject/UserLoginLogDO.class b/user/user-service-impl/target/classes/cn/iocoder/mall/user/dataobject/UserLoginLogDO.class deleted file mode 100644 index 03eceb814a34e0cf73d860ddaa0b181bcf7db8a5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 331 zcmb7}3d9g>rZK=JoK})n&2X;=iN13+VaH#f1H)<`q3_I%u^W{AuUxl{T z=E-*5lfTc?J->2+7zttezh=U?3oFNdrzMnaJE-uf`0qkJYhl}TPC}Xt{YaZ4;YzR2ID^QP4<#!n- zGVO&?miBf9{5V(As3YB1WB<_TBs`#%{>q+CwRs~@YPOCA%KKTDfeVpN)u&;-NDHDu6f(nx__toM`cd3?q`|HzG8dw*4TW1YAj=j>A}IW9 z@rXo4@>|OWcT2RK$Rv{M=yFY f6Y2?8WoU(#DX^6O^m0$ z8IwTA)3v8!RLhe>^YlWXWsSbIs*)r_vKe^}=q`B0WO87v35WcK?VT%u#<9y-x0o7B z=jC`nzOM#3SGuXwD!)?RRC!%&gppy7-Bep?oaR<9$12ZdS#Xr8pxoewbdY~J?~jbn zj><4Pxu|Y_=}NEZ)KuonpZGu3B0K1!Cm_G*&3k(PhKo2JTbSbS0@{oX%y2Y?1kH#o z%tmZuE@G#~`5G5$-C~VPwfhiArKm`jW7#H4ix^2`XA)^f8I6*d zwiGBSlzj&@%NE@etOG&_uYH$x$i#d z&Hr3|4Ztq^D}r9=9f%^^i5&7BFfbKiGabQEm=PSq@dyeiMz9W61e;-ta7pA&$ea^F z8LkW~GCUc<5uB3Y=?G@vK!uXgd^wvHur+-3JKOMm*aYi&e zBT}CdJ3cK7&&u3qr1x3reNI+CzYJfH&o4^zC277aioO!YSHn0P#@7_A%-MM(cDiIb z#<*ED$_kXYf?LKamdoL!SvIo;W5BX(S9eX@;`*+H?M!Rsl4DxaQ;uFVPT9_JEoQZH1DJ_T(jrK8~9J036E`AWek_ZID}SumnvL9}c*C(WGE>kSOg zo~T$5Et-XbS$>i>l?^MO)K8nmO7TENr+x0ssNoFjGYb0OS*h%d7HeChC;Yw9lHo-2 z`V3Vs7lHkbaiU^aIjW1^gu1D^IQOrrc``&tl6r}H73@glEX}mV9Y-tbg@RV0i&|c{ zwWQ~ELzv*~SsJDT71ut+h~>GpQ}m{5=qc!JeyoqKHqnrc7fS_hZ|^rP)7___rK@{V zL93WWRwPWz7^xJqhBK~{01DP5?3`Yh)E!gC{$#6r)btq9)Ytl<4S#(z{iD~C5oSK2 zm)(Yhf^=8nn0`{%3c59|rCniJ-{P6>pr1LrShOvzLB^A|HssBX8RbgB6*p@U5tWM%A5{f zpmli_58@#ed(juhH&lER=fXIz;yGMU@hvnCW7+T%{4|W8srWfAsd%}j;uRIYz^f{Li3?#=Rb0lbf}W;bmOKH4EA>S)t-L_^pabysqK_>he9C z%Ml-)+Va{U{;`9j@v#`u7xY-pdAqK!Z}&>(pluiU7Ndp$p8h0DT(-9Cy~;d$4%7JH z0TXG_zHXjQ|H|gY&L@&yU>#c@q-8B@`nsuVV^EcFWhgZ^78@GpgXo>Yw4h+qyK*I$ zGs-+^UhSx#6lC6_m@iO9B-+Y`8z)i^1+A{tvY@7$Nu>>4hl4b1pdIEJwRj8#PpJ#c zBh<|t6!G;DiDc%$#K6dSeEd*mlxGhQ9OCzn;1*AIJeA7qA4rqj z9gI)?#ug&ft~GwGm}l2KV${uAa_B^B@b+joEh6P&E5G{nLV<=hgrwB7e>cCycJlKc z{_QGbHy2n|7cbn$1yWP(tIU!q2wtm!Z7u zZ5d=M3c#Mk^(|}(W8G~VHe!Sm9U<-jWq}m`LKx-l0~ljZ@O*;%1d^U>Sa;|$*6*ldL+dOy zR4O zAd+`9BpFez)+74fGiNV|!222k4d3rv(^W+`^)2`Hy@Xc6(O$*&mKrK^i0r5%(i4I* zFUEU`3y5$hJ>Nu6x6!RT>DX=@B5FrC^C*8T$)d!zj69y@&no8`#TWULO9R1+a|mAa zW4;Z~P(y+Uo+oz>&&B+9v~79|-4gW2*!-7=w}cT5;|NCxu~9sv+Z2xqH5xohHIGp; Qgb#Vy9APiR@rQx`0p!I^F#rGn diff --git a/user/user-service-impl/target/classes/cn/iocoder/mall/user/service/OAuth2ServiceImpl.class b/user/user-service-impl/target/classes/cn/iocoder/mall/user/service/OAuth2ServiceImpl.class deleted file mode 100644 index e158d83b6e6e8cc6678cf283146de0505d4eaf10..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7440 zcmcgxd3+Sr9sj<~G09{I5FijhIYbO0%L<}E0%#yX7L$!72?%QGWHTfqyF2ObEK0pv zkCtk&wzY>>?Ol5#wVNQV+QZt~`@Zj@y)S!Owf(-C*~~1vCPe$`A9*|P`kmk3@BQA( zW6wVDAb{0kiHc1)SdBKkTE$JcSw#x3k>9ys91&D<<}hw?o=^d4&Q{ks&O~oTEpfZx%F+5+}msL4!pA(@4~xPHt$jKUfiqV zeR#i$)A0cn%ke=KAHs*_l8?x-!z%8>5!wByBz3=nkICVKl3h-IjmTzHHb)gaAekJK zWIirOJ|QIJ_VYH=EmaW^SmE!#BPAfea$qc8>)ZpHmV;dqn z^hDNZ6{y%RKLj=|xiV=DWD`bag{5chp;h6yHDH7@MtZ*)H&(c!g>5NY*l>gkOG&~> zN4%>A=BJIlX(KcA9O9olK7DWVcnoT?6sE_OM_@%~JQXo5DP%g5)Dww_oQ`<%M*94< z(d2M~imsiUecH0Nbva!yz^&7hR==4rHj~#F|JCF3?>cdZC&g^nxNW|tyY%5N>5sp4g$MP1*Mb%k3eF)H6$S&b!9d#xta6mfAtX4(KP))7W{LzF&_d z^weOa$CjXOEgo4GXOQ4Tepnw|Jf1l=(jb=x7r$`Ieppf=Nq1c3crRhMf~j z!M6pjeW4sDWjbb2gXd@5IWj%#&302lQHmAV6_l;hnm7TK#Bvc~Cz8st<^YivNFxpd zW+?9<^gJ>rC|xkR1-2H6SKz8~gbC7dv&5j0GSW0VVW}b|!zeQ>oB1T-9ScMzle3kK=n1o5@7E&(*?xvV+)C{= z2ZMOduh-Cr9U8iEp@Q#d_%1Hh@I8EA!w>L74V~yx@FNXB#!oc-6t;$+;pYNNOO_Bt zd6~!T@q>3BKlZ>Ax83{r!I9$+-T1@}xyKLQdionk!h$6IaWGiW|m#!@P4$iPNF0pxY_ z(dI>sEWQM0@CINGbm|$~Um&2EnT~YYVqwZka5wJ>hTFTOpqiOTm)3%uG~w#!3YokH zCsg&6l69jT6j&cjhhDNOVD8(aD8QX_(5VbvT9PV(%zRat16}uX^@37a%)x(KhSIS3 zQ+P9rWfL^-89~833dMO<7TXnM8|AT3SCDwUgJBA*$)JBu3z9wYbaMKVWK&5%Fpch~ zlpaVoyFG!bXsoBVEw;IXZU~lLzU4}8q&*gS6TMd81leiYL+&*;6HN&W7XZhn8SqAl zgi{D0e^(w68NAj&teTXwYpZ z4bxJF5oj$bP|z}TOUBky?ghgMXL+CNNM(}(r*yaV^={o0jqPabjJEIT?Y^KRwkOuz zyJt&xU#wkVLum+{9C>0w29bMvWCG#a#dJT7MpL#iD1%mU9v`~*vSMhA2CEHk1<9Np zP_oELPRRARPXc3Uu#e}Ez^0&~^W-M$a(ONFAS|C^0--r}*m;_|)6{fZ!GY0pfVB;c zJw2XHr&)W-W%&o4d8HiCanXg*?Hx3K6ypb0tDH|`E%+IL(Pd3wIx7St!d;`uVHG*b*uo<3`z zr~7D+0)Zx(pn^VgE*AMa%H(ZXMCyVUVyGf&D+5_2=+XQwJGdeLptkO0jT+ocGdL*o zE9AbuD8pOjJ$%4Qx}C8D-?5V%V=z?NmTUgPgyKAf$^FJ~LXR75vc#af{p9NTtav1d zMQ;%n@o{<+1U91*Az8NbdkY`(YxsLU|F&ij?e#V?DHDOb|)!C_{+*26-^@$_c^35Vk;Q|3$Tl=<}Sc)T+E)pCAbvjaYR|4HeF+>V^urO!lfD zhANlU)r>-GYADZP$_Q#(D%?-GV(JK{wNy$*WWnXrbEtFHe(_nF?Iz*-*J7Ac9A-vQ9k@QrWeI6&U zUBBQF{+4mOZKaNAvSYGJ|Dq8t|A zA%{=%hiT^KqgXO#`a{O(nAC6B-TaU}RtDK5m;pkr>xFN6m0WRn5pREM(-9%wIe>WV%>AOa- zlvq9^hem3+jQDFhhUL4cCXLa2qdo%SXGQraA~~EHlLiVO#mW%E5;q}7qf;GF_fwlV zX3&>&>CGm3awUD)N978zB-4qDfKzN)N4Gc*Sb=#>!Q>x^h9e2&A!xgi7p^Psgp!l3QNg1 zOsK3OP<;EZ8aJOk?2MT?x` diff --git a/user/user-service-impl/target/classes/cn/iocoder/mall/user/service/UserServiceImpl.class b/user/user-service-impl/target/classes/cn/iocoder/mall/user/service/UserServiceImpl.class deleted file mode 100644 index 9fd785fbe1f3e2c9a0a70e2b6e72e8feb3656598..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3089 zcmbtWSy$Ue7`NBfJL3Y zmIjc|^b>vadu%cr)9$QskYpQsv zLVP!fXZT*j4;p^d@Dqa`2ExzrYE}3Qm$H^?+MeZ=gl|^3jLDAH>nLE59Q>i)x z)jwyuww!0^nV4K-=v9~uC$hFH9*32p@K-qPo_J?Hi#u!Fw^h5=*(*0~lH=;TLn~Qp zG;2Y%vXH8mVQwP3#do;raJOt0q!M&?vNK$XOYRl7ge9YcT3S}@V<8m1BQOjnb3$%< zr6*h+5y?$db;}oAia2=ceZeiSQt@1~dBi)Oxfu23MG!htF;M5Zw9GKkJ?o)@z2nnvA^3fk)=}x=R}c-o;Dx>=9@2$iIIT{$5a+x~wyP>F)Zuixu<8m5PwrKPSzAJI zbQisf$sN1Mi`*=Q#iD0gp1Wa}TeYaqH!zM%20p>38h$pgj--KUBsKhEfTL)@LP>)# zuz|9MO#?Qz7%soXf(|9Pfo&v7q$ssRX*=c;<*oq-6$38r7`Tl)8axA4{7Tob8`P$B z27CktBtnI_W8ebDH0&zm=M2e?U?gtjCWlm}tJb`J%h4Tu9|Eu1(KW6K$#Ah_z;;_E zEdt??11#*te#S7{aao3n*L;a=x_><*u@NjY6?spPL2a_**18CQz3@<45eJE2(KU^p|8nQSq# z+6;oZ*|N(crW9pHO~>?eOH|dxU8Qtk=o4zc3=6HUQipBx*(0b&t!^L?vM&1&eJ@5< zxO6_s}>5 zMoRb5fn`c$ZWFC1k@e`mM1!#L&eN;fYbfz?6YB3XAJtx~nFh#xcc zc=fl>_3q5MzKl*~at&kjq&f$NkI{pKayt4RrB_`))#s^BDC0QN_Zco8>g%O8nI)B% zX_ZMeqq=YE0POb&=5s0)C@_KvDvfvoCNV`VN(&?@m|A?F>IBt;Q-2~c{R%w^yr5#3rD4!%Thg!>z9v4{FnQ`7tC{TnC$K;J(4UqX9{ zV=vxd;MoCm8XC+c-@u^8&_0eoRV0$Ha3X=J;-C$dsT#{M8o7q+w1*oJ9vf*Tev|qVxYam|nW#;F1nN~HxwXxV zzriq3{eXC%-p5FT_?a9L|B#4(ltA+UhDi$bVjsaxI`><2iZd-7#~U2SBWCnWCQa{R YmSWa4y%y1!i^_WuIh_XQseK>#4}P;@d;kCd diff --git a/user/user-service-impl/target/classes/config/application.properties b/user/user-service-impl/target/classes/config/application.properties deleted file mode 100644 index 529623d82..000000000 --- a/user/user-service-impl/target/classes/config/application.properties +++ /dev/null @@ -1,8 +0,0 @@ -##################### 业务模块 ##################### -## MobileCodeService -modules.mobile-code-service.code-expire-time-millis = 600000 -modules.mobile-code-service.send-maximum-quantity-per-day = 10 -modules.mobile-code-service.send-frequency = 60000 -## OAuth2CodeService -modules.oauth2-code-service.access-token-expire-time-millis = 2880000 -modules.oauth2-code-service.refresh-token-expire-time-millis = 43200000 \ No newline at end of file diff --git a/user/user-service-impl/target/classes/config/application.yaml b/user/user-service-impl/target/classes/config/application.yaml deleted file mode 100644 index 86d0d17cc..000000000 --- a/user/user-service-impl/target/classes/config/application.yaml +++ /dev/null @@ -1,32 +0,0 @@ -spring: - # datasource - datasource: - url: jdbc:mysql://127.0.0.1:33061/mall_user?useSSL=false - driver-class-name: com.mysql.jdbc.Driver - username: root - password: 123456 - -# server -server: - port: 8082 - -# mybatis -mybatis: - config-location: classpath:mybatis-config.xml - mapper-locations: classpath:mapper/*.xml - type-aliases-package: cn.iocoder.mall.user.dataobject - -# dubbo -dubbo: - application: - name: user-service - registry: - address: zookeeper://127.0.0.1:2181 - protocol: - port: -1 - name: dubbo - scan: - base-packages: cn.iocoder.mall.user.service -demo: - service: - version: 1.0.0 \ No newline at end of file diff --git a/user/user-service-impl/target/classes/mapper/MobileCodeMapper.xml b/user/user-service-impl/target/classes/mapper/MobileCodeMapper.xml deleted file mode 100644 index f2676639e..000000000 --- a/user/user-service-impl/target/classes/mapper/MobileCodeMapper.xml +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - INSERT INTO mobile_code ( - id, mobile, code, today_index, used, - used_uid, used_time, create_time - ) VALUES ( - #{id}, #{mobile}, #{code}, #{todayIndex}, #{used}, - #{usedUid}, #{usedTime}, #{createTime} - ) - - - - UPDATE mobile_code - - used = #{used}, - used_uid = #{usedUid}, - used_time = #{usedTime}, - - WHERE id = #{id} - - - - - \ No newline at end of file diff --git a/user/user-service-impl/target/classes/mapper/OAuth2AccessTokenMapper.xml b/user/user-service-impl/target/classes/mapper/OAuth2AccessTokenMapper.xml deleted file mode 100644 index ee3b4dcaa..000000000 --- a/user/user-service-impl/target/classes/mapper/OAuth2AccessTokenMapper.xml +++ /dev/null @@ -1,22 +0,0 @@ - - - - - - INSERT INTO oauth2_access_token ( - id, refresh_token, adminId, valid, expires_time, - create_time - ) VALUES ( - #{id}, #{refreshToken}, #{adminId}, #{valid}, #{expiresTime}, - #{createTime} - ) - - - - - \ No newline at end of file diff --git a/user/user-service-impl/target/classes/mapper/OAuth2RefreshTokenMapper.xml b/user/user-service-impl/target/classes/mapper/OAuth2RefreshTokenMapper.xml deleted file mode 100644 index b4646aee4..000000000 --- a/user/user-service-impl/target/classes/mapper/OAuth2RefreshTokenMapper.xml +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - INSERT INTO oauth2_refresh_token ( - id, adminId, valid, expires_time, create_time - ) VALUES ( - #{id}, #{adminId}, #{valid}, #{expiresTime}, #{createTime} - ) - - - \ No newline at end of file diff --git a/user/user-service-impl/target/classes/mapper/UserMapper.xml b/user/user-service-impl/target/classes/mapper/UserMapper.xml deleted file mode 100644 index 48897afae..000000000 --- a/user/user-service-impl/target/classes/mapper/UserMapper.xml +++ /dev/null @@ -1,20 +0,0 @@ - - - - - - INSERT INTO users ( - id, mobile, create_time - ) VALUES ( - #{id}, #{mobile}, #{createTime} - ) - - - - - \ No newline at end of file diff --git a/user/user-service-impl/target/classes/mapper/UserRegisterMapper.xml b/user/user-service-impl/target/classes/mapper/UserRegisterMapper.xml deleted file mode 100644 index 0db1ebabd..000000000 --- a/user/user-service-impl/target/classes/mapper/UserRegisterMapper.xml +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - INSERT INTO user_register ( - id, create_time - ) VALUES ( - #{id}, #{createTime} - ) - - - \ No newline at end of file diff --git a/user/user-service-impl/target/classes/mybatis-config.xml b/user/user-service-impl/target/classes/mybatis-config.xml deleted file mode 100644 index 7f604cc7e..000000000 --- a/user/user-service-impl/target/classes/mybatis-config.xml +++ /dev/null @@ -1,19 +0,0 @@ - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/user/user-service-impl/target/generated-sources/annotations/cn/iocoder/mall/user/convert/OAuth2ConvertImpl.java b/user/user-service-impl/target/generated-sources/annotations/cn/iocoder/mall/user/convert/OAuth2ConvertImpl.java deleted file mode 100644 index fdf9cf3fd..000000000 --- a/user/user-service-impl/target/generated-sources/annotations/cn/iocoder/mall/user/convert/OAuth2ConvertImpl.java +++ /dev/null @@ -1,41 +0,0 @@ -package cn.iocoder.mall.user.convert; - -import cn.iocoder.mall.user.dataobject.OAuth2AccessTokenDO; -import cn.iocoder.mall.user.service.api.bo.OAuth2AccessTokenBO; -import cn.iocoder.mall.user.service.api.bo.OAuth2AuthenticationBO; -import javax.annotation.Generated; - -@Generated( - value = "org.mapstruct.ap.MappingProcessor", - date = "2019-03-08T17:14:01+0800", - comments = "version: 1.3.0.Final, compiler: javac, environment: Java 11.0.1 (Oracle Corporation)" -) -public class OAuth2ConvertImpl implements OAuth2Convert { - - @Override - public OAuth2AccessTokenBO convertToAccessToken(OAuth2AccessTokenDO oauth2AccessTokenDO) { - if ( oauth2AccessTokenDO == null ) { - return null; - } - - OAuth2AccessTokenBO oAuth2AccessTokenBO = new OAuth2AccessTokenBO(); - - oAuth2AccessTokenBO.setAccessToken( oauth2AccessTokenDO.getId() ); - oAuth2AccessTokenBO.setRefreshToken( oauth2AccessTokenDO.getRefreshToken() ); - - return oAuth2AccessTokenBO; - } - - @Override - public OAuth2AuthenticationBO convertToAuthentication(OAuth2AccessTokenDO oauth2AccessTokenDO) { - if ( oauth2AccessTokenDO == null ) { - return null; - } - - OAuth2AuthenticationBO oAuth2AuthenticationBO = new OAuth2AuthenticationBO(); - - oAuth2AuthenticationBO.setUid( oauth2AccessTokenDO.getUid() ); - - return oAuth2AuthenticationBO; - } -} diff --git a/user/user-service-impl/target/generated-sources/annotations/cn/iocoder/mall/user/convert/UserConvertImpl.java b/user/user-service-impl/target/generated-sources/annotations/cn/iocoder/mall/user/convert/UserConvertImpl.java deleted file mode 100644 index b46f13370..000000000 --- a/user/user-service-impl/target/generated-sources/annotations/cn/iocoder/mall/user/convert/UserConvertImpl.java +++ /dev/null @@ -1,63 +0,0 @@ -package cn.iocoder.mall.user.convert; - -import cn.iocoder.mall.user.dataobject.UserDO; -import cn.iocoder.mall.user.service.api.bo.UserBO; -import cn.iocoder.mall.user.service.api.dto.UserUpdateDTO; -import java.util.ArrayList; -import java.util.List; -import javax.annotation.Generated; - -@Generated( - value = "org.mapstruct.ap.MappingProcessor", - date = "2019-03-10T20:36:11+0800", - comments = "version: 1.3.0.Final, compiler: javac, environment: Java 11.0.1 (Oracle Corporation)" -) -public class UserConvertImpl implements UserConvert { - - @Override - public UserBO convert(UserDO userDO) { - if ( userDO == null ) { - return null; - } - - UserBO userBO = new UserBO(); - - userBO.setId( userDO.getId() ); - userBO.setMobile( userDO.getMobile() ); - userBO.setNickname( userDO.getNickname() ); - userBO.setAvatar( userDO.getAvatar() ); - userBO.setStatus( userDO.getStatus() ); - userBO.setCreateTime( userDO.getCreateTime() ); - - return userBO; - } - - @Override - public UserDO convert(UserUpdateDTO userUpdateDTO) { - if ( userUpdateDTO == null ) { - return null; - } - - UserDO userDO = new UserDO(); - - userDO.setId( userUpdateDTO.getId() ); - userDO.setNickname( userUpdateDTO.getNickname() ); - userDO.setAvatar( userUpdateDTO.getAvatar() ); - - return userDO; - } - - @Override - public List convert(List userDOs) { - if ( userDOs == null ) { - return null; - } - - List list = new ArrayList( userDOs.size() ); - for ( UserDO userDO : userDOs ) { - list.add( convert( userDO ) ); - } - - return list; - } -}