Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
P
pms
概览
概览
详情
活动
周期分析
版本库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
问题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
iuav
pms
Commits
317c12fa
提交
317c12fa
authored
8月 01, 2023
作者:
zhenjie
浏览文件
操作
浏览文件
下载
差异文件
Merge branch 'develop'
上级
efc83179
c461414e
隐藏空白字符变更
内嵌
并排
正在显示
43 个修改的文件
包含
3199 行增加
和
738 行删除
+3199
-738
kustomization.yaml
kustomization/overlays/dev/kustomization.yaml
+1
-1
LoginSuccessDTO.java
src/main/java/com/mmc/pms/auth/dto/LoginSuccessDTO.java
+13
-11
ResultEnum.java
src/main/java/com/mmc/pms/common/ResultEnum.java
+434
-431
BackstageGoodsManageController.java
...om/mmc/pms/controller/BackstageGoodsManageController.java
+117
-117
CategoryController.java
...a/com/mmc/pms/controller/category/CategoryController.java
+111
-0
AppMallGoodsController.java
...a/com/mmc/pms/controller/mall/AppMallGoodsController.java
+51
-0
MallGoodsController.java
...java/com/mmc/pms/controller/mall/MallGoodsController.java
+90
-0
GoodsInfoDao.java
src/main/java/com/mmc/pms/dao/GoodsInfoDao.java
+50
-50
CategoryDao.java
src/main/java/com/mmc/pms/dao/category/CategoryDao.java
+60
-0
AppMallGoodsDao.java
src/main/java/com/mmc/pms/dao/mall/AppMallGoodsDao.java
+17
-0
MallGoodsDao.java
src/main/java/com/mmc/pms/dao/mall/MallGoodsDao.java
+66
-0
CategoryPrimaryDO.java
...n/java/com/mmc/pms/entity/category/CategoryPrimaryDO.java
+88
-0
CategorySubDO.java
src/main/java/com/mmc/pms/entity/category/CategorySubDO.java
+78
-0
GoodsSpecDO.java
src/main/java/com/mmc/pms/entity/mall/GoodsSpecDO.java
+64
-0
GoodsSpecValuesDO.java
src/main/java/com/mmc/pms/entity/mall/GoodsSpecValuesDO.java
+81
-0
MallGoodsDO.java
src/main/java/com/mmc/pms/entity/mall/MallGoodsDO.java
+112
-0
MallGoodsResourcesDO.java
...in/java/com/mmc/pms/entity/mall/MallGoodsResourcesDO.java
+49
-0
CategoryPrimaryDTO.java
...va/com/mmc/pms/model/category/dto/CategoryPrimaryDTO.java
+62
-0
CategorySubDTO.java
...n/java/com/mmc/pms/model/category/dto/CategorySubDTO.java
+55
-0
CategoryQO.java
src/main/java/com/mmc/pms/model/category/qo/CategoryQO.java
+40
-0
CategoryPrimaryVO.java
...java/com/mmc/pms/model/category/vo/CategoryPrimaryVO.java
+43
-0
CategorySubVO.java
...ain/java/com/mmc/pms/model/category/vo/CategorySubVO.java
+38
-0
GoodsResourcesVO.java
src/main/java/com/mmc/pms/model/mall/GoodsResourcesVO.java
+25
-0
GoodsSpecVO.java
src/main/java/com/mmc/pms/model/mall/GoodsSpecVO.java
+35
-0
GoodsSpecValuesVO.java
src/main/java/com/mmc/pms/model/mall/GoodsSpecValuesVO.java
+39
-0
MallGoodsVO.java
src/main/java/com/mmc/pms/model/mall/MallGoodsVO.java
+73
-0
RoleInfoDTO.java
src/main/java/com/mmc/pms/model/other/dto/RoleInfoDTO.java
+16
-30
MallGoodsInfoQO.java
src/main/java/com/mmc/pms/model/sale/qo/MallGoodsInfoQO.java
+52
-0
MallGoodsQO.java
src/main/java/com/mmc/pms/model/sale/qo/MallGoodsQO.java
+27
-28
GoodsSpecVO.java
src/main/java/com/mmc/pms/model/sale/vo/GoodsSpecVO.java
+0
-56
GoodsInfoService.java
src/main/java/com/mmc/pms/service/GoodsInfoService.java
+14
-14
CategoryService.java
...in/java/com/mmc/pms/service/category/CategoryService.java
+39
-0
CategoryServiceImpl.java
...om/mmc/pms/service/category/impl/CategoryServiceImpl.java
+166
-0
GoodsInfoServiceImpl.java
...n/java/com/mmc/pms/service/impl/GoodsInfoServiceImpl.java
+0
-0
AppMallGoodsService.java
...in/java/com/mmc/pms/service/mall/AppMallGoodsService.java
+17
-0
MallGoodsService.java
src/main/java/com/mmc/pms/service/mall/MallGoodsService.java
+31
-0
AppMallGoodsServiceImpl.java
...om/mmc/pms/service/mall/impl/AppMallGoodsServiceImpl.java
+44
-0
MallGoodsServiceImpl.java
...a/com/mmc/pms/service/mall/impl/MallGoodsServiceImpl.java
+259
-0
SnowFlake.java
src/main/java/com/mmc/pms/util/SnowFlake.java
+105
-0
CategoryDao.xml
src/main/resources/mapper/category/CategoryDao.xml
+229
-0
AppMallGoodsDao.xml
src/main/resources/mapper/mall/AppMallGoodsDao.xml
+40
-0
MallGoodsDao.xml
src/main/resources/mapper/mall/MallGoodsDao.xml
+262
-0
not-check.yml
src/main/resources/not-check.yml
+6
-0
没有找到文件。
kustomization/overlays/dev/kustomization.yaml
浏览文件 @
317c12fa
...
...
@@ -18,4 +18,4 @@ patches:
images
:
-
name
:
REGISTRY/NAMESPACE/IMAGE:TAG
newName
:
mmc-registry.cn-shenzhen.cr.aliyuncs.com/sharefly-dev/pms
newTag
:
37582a668837033ad61d64321c6fa7620ea17d45
newTag
:
2e525557874dabcb58b6516aefc612e98bf6e76e
src/main/java/com/mmc/pms/auth/dto/LoginSuccessDTO.java
浏览文件 @
317c12fa
package
com
.
mmc
.
pms
.
auth
.
dto
;
import
com.mmc.pms.model.other.dto.RoleInfoDTO
;
import
lombok.AllArgsConstructor
;
import
lombok.Builder
;
import
lombok.Data
;
...
...
@@ -17,15 +18,16 @@ import java.io.Serializable;
@AllArgsConstructor
@NoArgsConstructor
public
class
LoginSuccessDTO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
-
1200834589953161925L
;
private
String
token
;
private
Integer
userAccountId
;
private
String
accountNo
;
private
Integer
portType
;
private
String
uid
;
private
String
phoneNum
;
private
String
userName
;
private
String
nickName
;
private
CompanyInfoVO
companyInfoVO
;
// private RoleInfoDTO roleInfo;
private
static
final
long
serialVersionUID
=
-
1200834589953161925L
;
private
String
token
;
private
Integer
userAccountId
;
private
String
accountNo
;
private
Integer
portType
;
private
String
uid
;
private
String
phoneNum
;
private
String
userName
;
private
String
nickName
;
private
CompanyInfoVO
companyInfoVO
;
private
RoleInfoDTO
roleInfo
;
private
Integer
appUserAccountId
;
}
src/main/java/com/mmc/pms/common/ResultEnum.java
浏览文件 @
317c12fa
...
...
@@ -5,435 +5,438 @@ package com.mmc.pms.common;
*/
public
enum
ResultEnum
implements
BaseErrorInfoInterface
{
// 数据操作错误定义
SUCCESS
(
"200"
,
"success"
),
BODY_NOT_MATCH
(
"400"
,
"请求的数据格式不符!"
),
SIGNATURE_NOT_MATCH
(
"401"
,
"请求的数字签名不匹配!"
),
NOT_FOUND
(
"404"
,
"未找到该资源!"
),
INTERNAL_SERVER_ERROR
(
"500"
,
"服务器内部错误!"
),
SERVER_BUSY
(
"503"
,
"服务器正忙,请稍后再试!"
),
FILE_UPLOAD_ERROR
(
"600"
,
"文件上传有误"
),
FILE_UPLOAD_NULL_ERROR
(
"601"
,
"上传的文件不能为空"
),
TOKEN_EXPIRED_ERROR
(
"602"
,
"登录信息已过期,请重新登录"
),
TOKEN_INVALID_ERROR
(
"603"
,
"无效的登录信息"
),
VERIFY_CODE_ERROR
(
"604"
,
"验证码错误,请重新输入"
),
TOKEN_REDIS_ERROR
(
"605"
,
"登录失效"
),
AUTH_ACCOUNT_ERROR
(
"606"
,
"当前账号未授权,请先授权"
),
TOEKN_REPEAT_ERROR
(
"607"
,
"该账号已在其他设备登录,请重新登录"
),
TOKEN_NOT_VALID_ERROR
(
"608"
,
"access_token已失效或access_token不是最新的"
),
SCHEDULE_SYS_ERROR
(
"703"
,
"系统定时任务执行错误"
),
FORM_REPEAT_ERROR
(
"704"
,
"操作次数频繁,请稍后重试"
),
DATA_VERSION_ERROR
(
"705"
,
"数据写入版本不一致,请稍后重试。"
),
REQUEST_PARAM_ILLEGAL_ERROR
(
"706"
,
"请求参数非法"
),
DATA_INSERT_ERROR
(
"707"
,
"数据插入失败"
),
SCORE_RELEASE_ERROR
(
"708"
,
"积分发放失败,请重试或联系管理员!"
),
ENTRY_INTO_FORCE_TIME_SET_ERROR
(
"709"
,
"生效时间不能小于当前时间!"
),
INFO_NO_EXISTENCE_OR_STATUS_ERROR
(
"710"
,
"信息不存在或状态有误!"
),
// 业务操作错误定义
CUSTOM_ERROR
(
"-1"
,
"自定义业务错误消息"
),
FEIGN_ORDER_SERVLET_ERROR
(
"4001"
,
"访问订单服务失败"
),
FEIGN_USER_SERVLET_ERROR
(
"4002"
,
"访问用户服务失败"
),
FEIGN_PAY_SERVLET_ERROR
(
"4003"
,
"访问消耗服务失败"
),
DISABLE_ACCOUNT_TOKEN_ERROR
(
"4004"
,
"账号信息变更,登录失效"
),
FEIGN_OPERATION_SERVLET_ERROR
(
"4005"
,
"访问行业服务失败"
),
ADMIN_ROLE_REPEAT_ERROR
(
"4006"
,
"操作失败,超级管理员和运营管理员有且只有一个"
),
FEIGN_FLYER_SERVLET_ERROR
(
"4007"
,
"访问飞手服务失败"
),
FEIGN_REPOORDER_SERVLET_ERROR
(
"4008"
,
"访问订单服务失败"
),
FEIGN_REPOPAY_SERVLET_ERROR
(
"4009"
,
"访问云仓消耗服务失败"
),
FEIGN_REPOUSER_SERVLET_ERROR
(
"4010"
,
"访问云仓用户服务失败"
),
FEIGN_WARE_SERVLET_ERROR
(
"4010"
,
"访问云仓商品服务失败"
),
FEIGN_DEVICE_SERVLET_ERROR
(
"4011"
,
"访问云仓设备服务失败"
),
CENTER_USER_SERVLET_ERROR
(
"4012"
,
"访问用户中心服务失败"
),
GATEWAY_HYSRIX_ERROR
(
"4013"
,
"服务器貌似在开小差~"
),
FEIGN_FLYER_PAY_SERVLET_ERROR
(
"4014"
,
"访问飞手消耗服务失败"
),
MALL_USER_SERVLET_ERROR
(
"4015"
,
"访问机城用户服务失败"
),
PRIMARY_KEY_DEFECT
(
"5001"
,
"主键ID缺失"
),
WALLET_NOT_FIND_ERROR
(
"5002"
,
"钱包账户不存在"
),
PARAM_DEFECT
(
"5004"
,
"参数缺失"
),
LOGIN_ACCOUNT_NOT_EXIT_ERROR
(
"5005"
,
"账号不存在"
),
LOGIN_PASSWORD_ERROR
(
"5006"
,
"密码错误"
),
LOGIN_ACCOUNT_STATUS_ERROR
(
"5008"
,
"未登录"
),
OPERATE_USER_ORDERCOUNT_ERROR
(
"5007"
,
"当前账号有存在相关订单未关闭"
),
WALLET_CASH_NOT_ENOUGH_ERROR
(
"5009"
,
"现金余额不足"
),
AMT_PAID_VERITY_ERROR
(
"5010"
,
"变更额度不在有效范围"
),
CREDIT_NOT_ENOUGH_ERROR
(
"5011"
,
"信用余额不足,当前信用余额:"
),
CREDIT_METHOD_ERROR
(
"5012"
,
"变更类型有误"
),
CREDIT_OWED_BEGGER_ERROR
(
"5013"
,
"归还额度不可超过剩余欠款,当前剩余欠款:"
),
CASH_ADD_OWED_ERROR
(
"5014"
,
"该账号仍有剩余欠款,请先将全部欠款归还后,再进行充值。"
),
WALLET_CREDIT_NOT_ENOUGH_ERROR
(
"5015"
,
"信用余额不足"
),
ORDER_PAY_FORMAT_ERROR
(
"5016"
,
"现金和信用金额不能同时为空"
),
WALLET_CASH_FREEZE_NOT_ENOUGH_ERROR
(
"5017"
,
"现金的冻结余额不足"
),
WALLET_CREDIT_FREEZE_NOT_ENOUGH_ERROR
(
"5018"
,
"信用的冻结余额不足"
),
ORDER_CASH_FREEZE_NOT_FIND_ERROR
(
"5019"
,
"现金的冻结余额不存在"
),
ORDER_CREDIT_FREEZE_NOT_FIND_ERROR
(
"5019"
,
"信用的冻结余额不存在"
),
WALLET_BANLANCE_NOT_ENOUGH_ERROR
(
"5020"
,
"现金和信用的余额不足"
),
WALLET_FREEZE_NOT_ENOUGH_ERROR
(
"5020"
,
"现金和信用的冻结余额不足"
),
CREDIT_REPEAT_NULL_ERROR
(
"5021"
,
"欠款归还不能为空"
),
CREDIT_CHANGE_NULL_ERROR
(
"5021"
,
"信用余额变更不能为空"
),
ORDER_TOTAL_COST_ERROR
(
"5022"
,
"结算金额不能大于预支付的金额"
),
ORDER_PAY_NOT_ENOUGH_ERROR
(
"5023"
,
"总余额不足,订单无法结算"
),
NOT_MENU_POWER_ERROR
(
"5024"
,
"当前账号无平台使用权限"
),
OPENID_NOT_FIND_ERROR
(
"5025"
,
"OPENID未注册,请登录授权后调用"
),
PASSWORD_INCONSISTENT
(
"5026"
,
"新密码与确认密码不一致,请确认一致"
),
WX_ACCESS_TOKEN_ERROR
(
"5027"
,
"获取微信AccessToken失败"
),
WX_NOT_REL_ERROR
(
"5028"
,
"获取微信公众号用户信息失败"
),
WX_NOT_SEND_MSG_PARAM_ERROR
(
"5029"
,
"userId和openId至少一个不为空"
),
APPLET_QR_CODE_CREATE_ERROR
(
"5030"
,
"生成小程序码错误:"
),
APPLET_USER_ACCESS_TOKE_ERROR
(
"5031"
,
"获取accessToken签名校验失败"
),
REBATE_AMT_NOT_MIN_ERROR
(
"5032"
,
"金额不足300元无法提现,300元为最低门槛"
),
REBATE_AMT_NOT_ENOUGH_ERROR
(
"5033"
,
"申请失败,超过可提现的金额"
),
BANK_INFO_NOT_SAVE_ERROR
(
"5034"
,
"请先完善收款账号,才可以申请提现"
),
REBATE_APPLY_STATUS_ERROR
(
"5035"
,
"提现状态有误"
),
REBATE_INFO_NOT_FIND_ERROR
(
"5036"
,
"提现申请单信息不存在"
),
REBATE_FAIL_EXIT_ERROR
(
"5037"
,
"你的收款账号信息有误,请修改信息后重新申请提现。"
),
REBATE_AMT_FORMAT_ERROR
(
"5038"
,
"提现金额必须大于0元"
),
REBATE_REPEAT_CHECK_ERROR
(
"5039"
,
"提现申请单已被审批,切勿重复审批。"
),
CHOOSE_FLYER_NUM_ERROR
(
"5040"
,
"请至少选中一个飞手。"
),
CHOOSE_FLYER_MORE_NUM_ERROR
(
"5041"
,
"暂只支持一个订单只能指派一个飞手。"
),
ORDER_NO_EXIT_ERROR
(
"5042"
,
"订单信息不存在。"
),
ORDER_STATUS_ERROR
(
"5043"
,
"订单状态流程有误。"
),
INTERFACE_NOT_INVAILD
(
"5044"
,
"接口已废弃或不存在"
),
PAPER_CODE_NOT_INVAILD
(
"5045"
,
"接口已废弃或不存在"
),
PHONE_INVAILD_ERROR
(
"5046"
,
"无效的手机号"
),
TIME_CODE_INVAILD_ERROR
(
"5047"
,
"无效的时间编码"
),
REPEACT_COMMIT_ERROR
(
"5048"
,
"已提交,切勿重复提交"
),
IMPORT_EXCEL_ERROR
(
"5049"
,
"excel导入失败"
),
REQ_SMS_CODE_ERROR
(
"5050"
,
"注册码格式有误"
),
SKU_NOT_PRICE_ERROR
(
"5051"
,
"当前SKU未配置价格"
),
SKU_NOT_ENOUGH_ERROR
(
"5052"
,
"套餐(sku)数量不足"
),
LEASE_DATE_MATH_ERROR
(
"5053"
,
"租期开始日不能大于结束日"
),
ADD_LEASE_ADDR_ERROR
(
"5054"
,
"请选择收货方式"
),
SHOP_NEED_PHONE_ERROR
(
"5055"
,
"门店自取需要您的联系电话,请填写联系电话"
),
ORDER_POWER_ERROR
(
"5056"
,
"订单不存在或你无权操作该订单"
),
ORDER_AUTH_ERROR
(
"5057"
,
"请完成认证再下单"
),
EXPRESS_RETURN_ERROR
(
"5058"
,
"请完善物流单号和物流公司"
),
SHOP_RETURN_ERROR
(
"5059"
,
"请选择门店"
),
ORDER_REFUND_EXIT_ERROR
(
"5060"
,
"该订单已提交过退款申请,请勿重复申请。"
),
ORDER_EXPRESS_ERROR
(
"5061"
,
"获取订单物流信息有误。"
),
ORDER_PAY_JOB_ERROR
(
"5062"
,
"执行定时任务有误"
),
NO_AUTH_ORDER_ERROR
(
"5063"
,
"请完成企业认证或实名认证后再进行下单"
),
WARE_NOT_ENOUGH_ERROR
(
"5064"
,
"商品数量不足"
),
EX_INFO_ERROR
(
"5065"
,
"物流信息不完善"
),
NOT_REAL_AUTH_ERROR
(
"5066"
,
"请完成实名认证后再进行操作"
),
REBATE_NOT_ENOUGH_ERROR
(
"5067"
,
"提现申请金额需在10至8000元范围之内"
),
MORE_THAN_LIMIT_ERROR
(
"5067"
,
"提现申请金额需在0.1至98000元范围之内"
),
FLYER_ENT_MORE_THAN_LIMIT_ERROR
(
"50670"
,
"飞手机构用户银行卡单笔最低10元,最高100,000元"
),
FLYER_MORE_THAN_LIMIT_ERROR
(
"50671"
,
"飞手个人用户银行卡单笔最低10元,最高5,000元"
),
MORE_THAN_LIMIT_TODAY_ERROR
(
"50672"
,
"单个账户每月提现额度为100,000元"
),
SYSTEM_AMT_NOT_ENOUGH_ERROR
(
"5068"
,
"系统处理中,请稍后再试。"
),
FEIGN_XZH_SERVLET_ERROR
(
"5069"
,
"访问线上支付接口服务失败"
),
XZH_SERVLET_ERROR
(
"5070"
,
"调用线上支付失败:"
),
XZH_FAIL_ERROR
(
"5071"
,
"支付服务失败:"
),
REFUSE_COUNT_ERROR
(
"5072"
,
"今日拒绝的次数已达上限,暂不可参与抢单"
),
APPLY_ORDER_COUNT_ERROR
(
"5073"
,
"请勿重复接单"
),
ORDER_ARRIVE_ERROR
(
"5074"
,
"抢单失败,订单已被指派"
),
REST_APPLY_ORDER_ERROR
(
"5075"
,
"请先开启接单状态后再进行抢单"
),
EVALUATED_ERROR
(
"5076"
,
"您已经评价过啦!"
),
BACKET_TYPE_ERROR
(
"5077"
,
"红包类型有误"
),
BACKET_NOT_ENOUGH_ERROR
(
"5078"
,
"红包已被抢光"
),
USER_PHONE_AUTH_ERROR
(
"5079"
,
"请授权登录后领取"
),
TOKEN_REQUIRED_ERROR
(
"5080"
,
"Please bring a token"
),
UNIONID_NOT_ERROR
(
"5081"
,
"UnionId不能为空"
),
OPENID_NOT_ERROR
(
"5081"
,
"云享飞openid、云飞手openid、云仓openid、无人机城openid至少要有一个"
),
NO_EVALUATED_ERROR
(
"5090"
,
"暂无评价信息!"
),
DAY_NUM_ERROR
(
"5091"
,
"天数有误"
),
TASK_TYPE_ERROR
(
"5092"
,
"您的账号类型为个人飞手,只能抢任务人数1人的订单。"
),
TASK_FLYER_COUNT_LESS_ERROR
(
"5093"
,
"机构认证的飞手多于任务需要的飞手才可以抢单。"
),
FLYER_REBATE_ERROR
(
"5094"
,
"提现失败,请稍后重试"
),
OPERATION_SYS_ERROR
(
"5095"
,
"操作失败,请稍后重试"
),
WAG_CHECK_STATUS_ERROR
(
"5096"
,
"操作失败,未通过或待确认状态才能进行重新编辑"
),
EXPORT_NO_DATA_ERROR
(
"5097"
,
"查询到当前符合条件的数据为0条"
),
WAG_ZERO_ERROR
(
"5098"
,
"工资抵扣后当月工资不能少于0元"
),
WAG_REPEAT_DATE_ERROR
(
"5099"
,
"操作失败,工资日期重复:"
),
BUY_NUM_ERROR
(
"5100"
,
"购买数量必须大于0"
),
SHOP_CAR_ERROR
(
"5101"
,
"购物车信息不存在"
),
GOODS_VERSION_ERROR
(
"5102"
,
"操作失败,当前商品已经发生信息变更,请刷新后重试"
),
WAG_DETAIL_COUNT_ERROR
(
"5103"
,
"账单天数必须大于0"
),
WAG_TERM_PARAM_ERROR
(
"5104"
,
"飞手工资、结算基数、操作三个选项必须填一个"
),
IMPORT_PARAM_ERROR
(
"5105"
,
"导入的数据行不能为空或者格式错误"
),
SHOP_GOODS_NOT_ERROR
(
"5106"
,
"当前商品已下架或已删除"
),
ALL_PAY_ERROR
(
"5107"
,
"当前订单为分期付款,请先上传尾款凭证"
),
FLYER_EVLT_PARAM_ERROR
(
"5108"
,
"飞手评分参数有误,请检查"
),
FLYER_REPEAT_BIND_ERROR
(
"5108"
,
"飞手已被绑定过,请勿重复绑定"
),
FLYER_NUM_BIND_ERROR
(
"5108"
,
"飞手数量有误,本任务需要的飞手人数为:"
),
FLYER_ORDER_TYPE_ERROR
(
"5110"
,
"飞手类型有误,该订单只允许个人飞手接单"
),
FLYER_ENT_ORDER_TYPE_ERROR
(
"5111"
,
"飞手类型有误,该订单只允许飞手机构接单"
),
PHONE_NUM_EXIT_ERROR
(
"5112"
,
"手机号已存在"
),
FLYER_UN_BIND_ERROR
(
"5113"
,
"飞手已被解绑,请勿重复解绑"
),
REPEAT_NOTIFICATION
(
"5114"
,
"您已对此订单进行过催付款操作"
),
FLYER_WORK_ERROR
(
"5115"
,
"指派飞手失败,飞手休息中:"
),
DISABLE_APPLY_ORDER_ERROR
(
"5116"
,
"当前时间此订单不可抢"
),
COMPANY_EXIT_ERROR
(
"5117"
,
"单位名称已存在"
),
COMPANY_NOT_BIND_ERROR
(
"5118"
,
"未绑定单位,请先绑定单位"
),
COMPANY_REMOVE_ERROR
(
"5119"
,
"删除失败,请先移除该单位的账号信息"
),
COMPANY_REMOVE_CHILD_ERROR
(
"5120"
,
"删除失败,请先移除该单位的子级单位"
),
EXIST_THE_SAME_GOODS_ERROR
(
"5121"
,
"购物车已存在您选择的商品"
),
// clientOAuth
OAUTH_CLIENT_NOT_FOUND
(
"6404"
,
"client_id不存在或已注销"
),
OAUTH_SECRET_ERROR
(
"6405"
,
"client_secret有误"
),
OAUTH_AUTHORIZE_ERROR
(
"6406"
,
"当前账号未获得任何授权,请确认"
),
OAUTH_API_AUTH_ERROR
(
"6407"
,
"当前资源未被授权"
),
OAUTH_CREATE_TOKEN_ERROR
(
"6408"
,
"系统内部错误,获取accessToken失败,"
),
PWD_CREATE_ERROR
(
"6001"
,
"创建密码失败"
),
PWD_CONPARED_ERROR
(
"6002"
,
"密码错误"
),
PWD_ALERT_ERROR
(
"6003"
,
"密码不一致"
),
PWD_REQUEST_AUTH_ERROR
(
"6003"
,
"密码请求验证"
),
APPLET_PORT_TYPE_ERROR
(
"7001"
,
"小程序端口类型错误"
),
APPLET_GET_OPENID_ERROR
(
"7002"
,
"获取小程序openid失败"
),
UPDATE_USER_ACCOUNT_REPEAT
(
"7003"
,
"修改后的账户名已存在"
),
ADD_USER_ACCOUNT_NAME_EXISTS
(
"7004"
,
"新增账户名已经存在"
),
ACCOUNT_NOT_FIND_ERROR
(
"8000"
,
"账号信息不存在"
),
REPEAT_SOFT_DELETE
(
"8001"
,
"账号已删除"
),
ADMIN_ROLE_DELETE_ERROR
(
"8002"
,
"此账号为管理员账号,禁止删除"
),
ROLE_ADMIN_DELETE_ERROR
(
"8003"
,
"此角色为管理员角色,禁止删除"
),
ROLE_NAME_REPEAT_ERROR
(
"8004"
,
"角色名已存在"
),
ROLE_AVL_USER_DELETE_ERROR
(
"8005"
,
"此角色尚有可用账号,请将所有账号移除后在进行操作"
),
ROLE_AVL_USER_STATUS_ERROR
(
"8006"
,
"此角色尚有可用账号,请将所有账号禁用后在进行操作"
),
ROLE_SYSTEM_DELETE_ERROR
(
"8007"
,
"此角色为系统角色,禁止删除"
),
ADMIN_ROLE_POWER_ERROR
(
"8008"
,
"禁止修改管理类角色权限"
),
SYSTEM_ROLE_POWER_ERROR
(
"8009"
,
"禁止修改系统类角色权限"
),
ROLE_SELF_POWER_ERROR
(
"8010"
,
"禁止修改与当前登录账号角色相同的角色权限"
),
ADMIN_ACCOUNT_DISABLE_ERROR
(
"8011"
,
"此账号为管理员账号,禁用失败"
),
OPERATE_USER_DEL_ERROR
(
"8012"
,
"该账号仍有进行中的订单需要负责,请先移交订单后再删除。"
),
OPERATE_USER_DISABLED_ERROR
(
"8013"
,
"该账号仍有进行中的订单需要负责,请先移交订单后再禁用。"
),
DELETE_USER_UNFILLED_ORDER_EXIST
(
"9001"
,
"平台中有此账号相关的订单,不可删除此账号"
),
STOP_UNFILLED_ORDER_EXIST
(
"9002"
,
"平台中有此账号相关的订单正在进行中,不可停用此账号"
),
ACCOUNT_ALREADY_DELETED
(
"10001"
,
"此账号已经被删除"
),
ACCOUNT_ALREADY_STOP
(
"10002"
,
"此账号已经被停用,不能登录此小程序,详情请联系管理员"
),
INDUSTRY_NAME_CREATE_ERROR
(
"20001"
,
"行业名称请勿重复,请重新输入"
),
INSPECTION_NAME_CREATE_ERROR
(
"20002"
,
"服务名称请勿重复,请重新输入"
),
INSPECTION_REPEAT
(
"20003"
,
"绑定服务重复"
),
INDUSTRY_REPEAT
(
"20004"
,
"绑定行业重复"
),
INSERT_INDUSTRY_SUCCESS
(
"20005"
,
"新增行业成功"
),
UPDATE_INDUSTRY_SUCCESS
(
"20006"
,
"修改行业成功"
),
DELETE_INDUSTRY_SUCCESS
(
"20007"
,
"删除行业成功"
),
INSERT_INSPECTION_SUCCESS
(
"20008"
,
"新增服务成功"
),
UPDATE_INSPECTION_SUCCESS
(
"20009"
,
"修改服务成功"
),
DELETE_INSPECTION_SUCCESS
(
"20010"
,
"删除服务成功"
),
SORT_PARAMETER_ERROR
(
"28199"
,
"排序参数错误"
),
OPRATING_FREQUENCY_TOO_HIGH
(
"28449"
,
"更新频率过快,请重试"
),
INSERT_INDUSTRY_INSPECTION_SUCCESS
(
"20011"
,
"添加对应服务成功"
),
INSERT_INSPECTION_INDUSTRY_SUCCESS
(
"20012"
,
"添加对应行业成功"
),
DELETE_INDUSTRY_INSPECTION_SUCCESS
(
"20013"
,
"删除对应服务成功"
),
DELETE_INSPECTION_INDUSTRY_SUCCESS
(
"20014"
,
"删除对应行业成功"
),
INSERT_INDUSTRY_SHELF_SUCCESS
(
"20015"
,
"行业上架成功"
),
DELETE_INDUSTRY_SHELF_SUCCESS
(
"20016"
,
"行业下架成功"
),
INSERT_INSPECTION_SHELF_SUCCESS
(
"20017"
,
"服务上架成功"
),
DELETE_INSPECTION_SHELF_SUCCESS
(
"20018"
,
"服务下架成功"
),
DELETE_INSPECTION_ERROR
(
"20022"
,
"该服务仍有未完成的订单,不可删除"
),
INSPECTION_NOT_EXIST
(
"20023"
,
"很抱歉,目前该服务已下架"
),
FAKE_NUM_CREATE_ERROR
(
"20024"
,
"输入的数据有误,请重新输入!"
),
WORK_TYPE_NAME_ERROR
(
"20026"
,
"服务作业类型重复,请重新输入"
),
EXIST_BINDING_INSPECTION_ERROR
(
"20027"
,
"此作业类型被服务绑定,删除失败!"
),
UPLOAD_IMG_ERROR
(
"20019"
,
"请选择jpg,png,jpeg格式的图片"
),
UPLOAD_VIDEO_ERROR
(
"20020"
,
"请选择MP4,avi,mov,mkv格式的视频"
),
UPLOAD_DOC_ERROR
(
"20021"
,
"请选择doc,ppt,pdf,xls格式的文件"
),
UPLOAD_IMG_LESS_3M_ERROR
(
"20022"
,
"请上传小于3M的图片"
),
INSERT_ORDER_SUCCESS
(
"21000"
,
"新增订单成功"
),
UPDATE_ORDER_SUCCESS
(
"21001"
,
"修改订单成功"
),
ORDER_TRANS_SUCCESS
(
"21002"
,
"订单移交成功"
),
ORDER_EVALUATE_SUCCESS
(
"21003"
,
"订单评价完成"
),
ORDER_BEFORE_PAY_ERROR
(
"21004"
,
"订单预支付失败"
),
ORDER_CLOSE_PAY_ERROR
(
"21005"
,
"订单结算支付失败"
),
INSERT_ORDER_DETAIL_SUCCESS
(
"21006"
,
"新增订单动态成功"
),
CHECK_USER_ERROR
(
"22001"
,
"用户未通过验证"
),
GET_ORDER_LIST_ERROR
(
"22002"
,
"获取订单列表失败"
),
COMMANT_CAR_NAME_EXIST
(
"22003"
,
"指挥车名字已存在,请重新输入"
),
// 认证提示
APP_CODE_ERROR
(
"30301"
,
"appcode 错误"
),
REQUE_ENVIROMENT_ERROR
(
"30302"
,
"请求的 Method、Path 或者环境错误"
),
REQUEST_PARAMETER_ERROR
(
"30303"
,
"请求参数错误"
),
SERVICE_NOT_AUTHORIZED
(
"30304"
,
"服务未被授权(或URL和Path不正确)"
),
TIMES_USED_UP
(
"30305"
,
"很抱歉,目前我们的实名认证次数已达上限,正在处理中,请稍后再进行认证。"
),
OTHER_ERROR
(
"30306"
,
"其他错误/服务次数用完"
),
LIVE_AUTHENTICATION_FAILED
(
"3824"
,
"活体认证失败"
),
ID_INFO_AND_ID_card_MISMATCH
(
"3904"
,
"身份信息与身份证不匹配"
),
LIVE_AUTHENTICATION_SUCESS
(
"3999"
,
"活体验证成功"
),
NO_REAL_NAME
(
"3854"
,
"用户未实名认证"
),
URL_FORMAT_ERROR
(
"37462"
,
"URL格式错误"
),
URL_ADDRESS_ERROR
(
"36752"
,
"URL地址错误"
),
INTERFACE_ACCESS_EXCEPTION
(
"36894"
,
"接口访问异常/次数用尽"
),
FRONT_BACK_VAGUE
(
"35556"
,
"身份证正反面不明确"
),
ID_CARD_THOTO_MESSAGE_ERROR
(
"36651"
,
"身份照信息错误"
),
EXPTION_ID_CARD_THOTO_MESSAGE_ERROR
(
"36651"
,
"信息异常"
),
PHOTO_FORMAT_ERROR
(
"12138"
,
"身份证图片格式错误"
),
VALIDATION_INFO_EXPIRED
(
"32815"
,
"认证时间过长信息过期或认证信息不完整,请重新开始认证"
),
REAL_IMAGE_AUTHENTICATION_SUCESS
(
"38844"
,
"验证成功"
),
REAL_IMAGE_AUTHENTICATION_FAILED
(
"38855"
,
"验证失败,请再次进行人脸识别"
),
IDENTITY_HAS_BEEN_AUTHENTICATED
(
"34444"
,
"此身份证信息已经被认证,请重试"
),
REAL_NAME_ACCOUNT_ID_ERROR
(
"36771"
,
"账户id错误"
),
REAL_NAME_FUSING_ERROR
(
"36772"
,
"认证失败,请重新认证"
),
// 企业认证
BUSINESS_LICENSE_CHECK_ANALYSIS_ERROR
(
"30400"
,
"营业执照解析失败,请上传有效清晰的执照"
),
BUSINESS_LICENSE_CHECK_PARAMETER_ERROR
(
"30401"
,
"企业信息与营业执照信息不一致,请重新上传"
),
BANK_ACCOUNT_CHECK1_ERROR
(
"30402"
,
"账号与开户名不符"
),
BANK_ACCOUNT_CHECK2_ERROR
(
"30403"
,
"开户行名称错误"
),
BANK_ACCOUNT_CHECK3_ERROR
(
"30404"
,
"仅支持对公账户验证,不支持个人卡"
),
BANK_ACCOUNT_CHECK4_ERROR
(
"30405"
,
"企业账号信息有误,请重新输入"
),
BANK_ACCOUNT_CHECK5_ERROR
(
"30406"
,
"24小时之内不能重复申请"
),
BANK_ACCOUNT_CHECK6_ERROR
(
"30407"
,
"很抱歉,目前我们的企业认证次数已达上限,如需继续认证请及时联系相关负责人进行处理,联系方式:科比特管理人员,18938853647。"
),
BANK_ACCOUNT_CHECK7_ERROR
(
"30408"
,
"企业名称与开户名称不一致,请确认一致后再提交认证"
),
ENTERPRISE_HAVE_VERIFIED
(
"30409"
,
"您输入的企业信息已被其他用户认证,请重新输入"
),
ID_NUMBER_PARA_ERROR
(
"30410"
,
"身份证号码有错,请重新输入"
),
DEAL_ERROR
(
"30411"
,
"有报错,请联系平台客服。"
),
NOT_DATA_ERROR
(
"30412"
,
"查无数据"
),
API_STOP_USE_ERROR
(
"30413"
,
"接口停用"
),
OFFICE_DATA_SUSTAIN_ERROR
(
"30414"
,
"官方数据源维护,请稍候再试"
),
SERVER_SUSTAIN_ERROR
(
"30415"
,
"服务商维护,请稍候再试"
),
PARA_ERROR
(
"30416"
,
"参数错误,请重新输入"
),
VERIFY_COUNT_ERROR
(
"30416"
,
"认证次数上限,请联系管理员"
),
NOT_ENT_VERIFY_ERROR
(
"30417"
,
"机构未认证或认证未通过,请先进行机构认证"
),
NOT__VERIFY_ERROR
(
"30418"
,
"机构未认证或飞手认证未通过,请先进行认证"
),
// 渠道认证
NOT_ENT_USER
(
"30501"
,
"感谢您有意向成为我们的渠道商,请先完成企业认证。"
),
NEW_NOT_ENT_USER
(
"30502"
,
"此用户未进行企业认证,渠道变更失败!"
),
BEFORE_NOT_CHANNEL_USER
(
"30503"
,
"此用户还不是渠道"
),
// 飞手端认证
NOT_AUTH_FLYER_ERROR
(
"30600"
,
"飞手未认证,请先完成飞手认证"
),
NOT_HAVE_AUTH_FLYER_ERROR
(
"30601"
,
"没有认证的飞手,暂不可接单"
),
// 设备型号提醒
DEVICE_MODEL_REPEAT_ERROR
(
"30700"
,
"产品名称不可重复,请重新输入"
),
DEVICE_MODEL_FAILURE_ERROR
(
"30701"
,
"设备添加失败"
),
DEVICE_MODEL_REMOVE_ERROR
(
"30702"
,
"设备未在仓库,删除失败"
),
DEVICE_MODEL_UPDATE_ERROR
(
"30703"
,
"设备修改失败"
),
DEVICE_HAS_BEEN_RENT_ERROR
(
"30704"
,
"该设备不在仓库,不能出库"
),
// 仓库提醒
REPO_INFO_NAME
(
"30800"
,
"仓库名称不可重复,请重新输入"
),
REPO_INFO_FAILURE
(
"30801"
,
"仓库添加失败"
),
REPO_INFO_REMOVE
(
"30702"
,
"仓库删除失败"
),
// 商品
WARE_NAME_HAS_BEEN_EXIST
(
"30900"
,
"商品名称已存在"
),
WARE_TYPE_NAME_HAS_BEEN_EXIST
(
"30901"
,
"分类名称已存在"
),
WARE_TYPE_ICON_NOT_NULL
(
"30902"
,
"一级分类图标不能为空"
),
GROUP_DONT_DELETE
(
"30903"
,
"该分类下尚有商品或服务或课程存在"
),
GOODS_STATUS_ERROR
(
"30904"
,
"状态有误"
),
GOODS_ON_SHELF_SUCCESS
(
"30905"
,
"商品上架成功"
),
GOODS_DOWN_SHELF_SUCCESS
(
"30906"
,
"商品下架成功"
),
GOODS_SKU_IS_NOT_NULL
(
"30907"
,
"商品规格不能为空"
),
GOODS_PIC_IS_NOT_NULL
(
"30908"
,
"主图不能为空"
),
GOODS_DESC_IS_NOT_NULL
(
"30910"
,
"商品描述不能为空"
),
GOODS_GROUP_IS_NOT_NULL
(
"30911"
,
"商品类型不能为空"
),
GROUP_DONT_DELETE_BY_CHILD
(
"30912"
,
"该分类下尚有子分类存在"
),
GOODS_NOT_EXIST_OR_ALREADY_DOWN_SHELF
(
"30913"
,
"商品不存在或已下架"
),
GOODS_NAME_IS_NOT_NULL
(
"30914"
,
"商品名称不能为空或名字长度不能大于60"
),
GOODS_DELETE_FAIL
(
"30915"
,
"批量删除商品失败,商品已被其他商品绑定"
),
BRAND_DELETE_FAIL
(
"30916"
,
"删除失败,产品管理中有产品绑定该品牌名称"
),
// 返祖
RETURN_SHARE_ORDER_ERROR
(
"40000"
,
"设备返祖订单相关信息找不到,请重新输入订单号"
),
RETURN_SHARE_ORDER_NOT_FINISH_ERROR
(
"40001"
,
"此设备的订单未完成,请添加其他设备"
),
RETURN_SHARE_ORDER_HAS_BEEN_ADD_ERROR
(
"40002"
,
"此订单的设备已经被添加过,不能重复添加"
),
// 宣传中心
EXIST_SAME_NAME_OF_MODULE_ERROR
(
"40500"
,
"所属产品中不能有相同名字的模块"
),
EXIST_SAME_NAME_OF_BANNER_ERROR
(
"40501"
,
"名称重复,请重新输入"
),
EXIST_SAME_CODE_OF_MODULE_ERROR
(
"40502"
,
"moduleCode已重复,请输入其他moduleCode"
),
HAS_BEEN_USE_ERROR
(
"40503"
,
"此标签有用户在使用,不能删除!"
),
FILE_PARSE_ERROR
(
"40600"
,
"上传文件无数据或内容识别失败,请重新上传"
),
HAS_BEEN_APPLY_ERROR
(
"40601"
,
"已提交申请!将有客服人员与你联系"
),
PRICE_TO_HIGH_ERROR
(
"40602"
,
"标价确认在0-10000000万元内"
),
EXIST_SAME_NAME_ERROR
(
"40603"
,
"快讯名称重复,请重新上传"
),
TENDER_FORMAT_ERROR
(
"40604"
,
"招标序号或内容不能为空,请补全后上传"
),
TENDER_CONTENT_TOO_LONG_ERROR
(
"40605"
,
"存在招标内容字符过长"
),
GOODS_CATEGORY_NAME_EXIST_ERROR
(
"40605"
,
"名称重复,请重新输入!"
),
CONTRACT_STATUS_MISTAKEN
(
"40607"
,
"当前合同状态不可进行编辑!"
),
CONTRACT_STATUS_CANNOT_BE_DELETED
(
"40607"
,
"当前合同状态不可进行删除!"
),
CONTRACT_NOT_EXIST
(
"40608"
,
"合同不存在或已删除!"
),
CONTRACT_STATUS_DOES_NOT_ALLOW_FILE
(
"40609"
,
"该状态合同不允许归档!"
),
SEAL_INFO_NOT_EXIST
(
"40610"
,
"请前往印章管理上传印章或设置默认印章!"
),
AGENCY_NO_FLYER
(
"40611"
,
"机构下暂无飞手,快去招募吧~"
),
NO_FLYER_WORK
(
"40612"
,
"现在没有飞手上班哦~"
),
TEMPORARY_NOT_SUPPORT_TRANSFER_ORDER
(
"40613"
,
"个人订单暂不支持转单操作~"
),
ELECTRONIC_SIGNATURE_NOT_REAL_NAME_AUTHENTICATION
(
"40614"
,
"请完成电子签约实名认证后再进行操作"
),
DIRECTORY_DOES_NOT_EXIST
(
"40615"
,
"目录不存在或已删除"
),
DEFAULT_DIRECTORY_CANNOT_BE_DEL
(
"40616"
,
"默认目录不可删除"
),
THERE_ARE_CATEGORIES_IN_THE_DIRECTORY
(
"40167"
,
"该目录下有分类存在不可删除"
),
DIRECTORY_NAME_HAS_BEEN_EXIST
(
"40168"
,
"目录名称已存在"
),
FAILED_TO_ADD_DATA
(
"40169"
,
"数据新增失败,请稍后重试"
),
FAILED_TO_EDIT_DATA
(
"40170"
,
"数据修改失败,请稍后重试"
),
PRODUCT_DOES_NOT_EXIST_OR_HAS_BEEN_DELETED
(
"40171"
,
"产品不存在或已删除,请刷新后重试!"
),
SPEC_DOES_NOT_EXIST_OR_HAS_BEEN_DELETED
(
"40172"
,
"规格不存在或已删除,请刷新后重试!"
),
SKU_ALREADY_EXIST_IN_THIS_INDUSTRY
(
"40173"
,
"该所属行业下已经存在sku,请检查后重试!"
),
SPEC_EXIST_UNDER_THE_SKU
(
"40174"
,
"该产品下有规格存在,无法删除!"
),
SPEC_NOT_CONFIG_PRICE
(
"40175"
,
"存在规格没有配置价格,请联系客服获取报价!"
),
SHOP_CAR_SIZE_MORE_2
(
"40176"
,
"行业购物车下单数量仅限一个"
),
CONTRACT_TEMPLATE_NOT_EXIST_OR_DELETED
(
"40177"
,
"合同模板不存在或已删除!"
),
SCORE_ERROR
(
"40177"
,
"您输入的积分数量有误,请重新输入!"
),
PLEASE_FILL_IN_THE_CONTRACT_TEMPLATE_FIRST
(
"40178"
,
"请先填充合同模板!"
),
SCORE_NOT_GIVE_MYSELF
(
"40179"
,
"积分不能转赠给本人,请重新操作"
),
ALREADY_FINISH_ENT_AUTH_ERROR
(
"2000"
,
"助力已完成!"
),
SYSTEM_ERROR
(
"2001"
,
"系统错误,请稍后重试"
),
RULE_ERROR
(
"2002"
,
"当前兑换比例已失效,请刷新后重试"
),
COUNT_LIMIT_ERROR
(
"2003"
,
"参与次数已达上线"
),
ALREADY_ENT_AUTH_ERROR
(
"2004"
,
"助力失败,您已完成企业认证!"
),
ALREADY_REAL_NAME_AUTH_ERROR
(
"2005"
,
"助力失败,您已完成实名认证!"
),
PARTICIPATE_BUT_NOT_AUTH_ERROR
(
"2006"
,
"待完成授权或认证"
),
ALREADY_HELP_ERROR
(
"2007"
,
"已助力"
),
ALREADY_STOP_ERROR
(
"2008"
,
"活动已下线"
),
HELP_FAIL_ERROR
(
"2009"
,
"不能给自己助力哦!"
),
ALREADY_BINDING_ERROR
(
"2010"
,
"优惠券已被绑定"
),
ALREADY_DIVIDE_ERROR
(
"2011"
,
"订单已分成"
),
DIVIDE_OBJ_NOT_EXIST
(
"2012"
,
"先点击确认添加分成对象"
),
DEFAULT_DIRECTORY
(
"3001"
,
"默认目录不可删除或修改名称!"
);
/**
* 错误码
*
* @return
*/
String
resultCode
;
/**
* 错误描述
*
* @return
*/
String
resultMsg
;
ResultEnum
(
String
resultCode
,
String
resultMsg
)
{
this
.
resultCode
=
resultCode
;
this
.
resultMsg
=
resultMsg
;
}
@Override
public
String
getResultCode
()
{
return
resultCode
;
}
@Override
public
String
getResultMsg
()
{
return
resultMsg
;
}
// 数据操作错误定义
SUCCESS
(
"200"
,
"success"
),
BODY_NOT_MATCH
(
"400"
,
"请求的数据格式不符!"
),
SIGNATURE_NOT_MATCH
(
"401"
,
"请求的数字签名不匹配!"
),
NOT_FOUND
(
"404"
,
"未找到该资源!"
),
INTERNAL_SERVER_ERROR
(
"500"
,
"服务器内部错误!"
),
SERVER_BUSY
(
"503"
,
"服务器正忙,请稍后再试!"
),
FILE_UPLOAD_ERROR
(
"600"
,
"文件上传有误"
),
FILE_UPLOAD_NULL_ERROR
(
"601"
,
"上传的文件不能为空"
),
TOKEN_EXPIRED_ERROR
(
"602"
,
"登录信息已过期,请重新登录"
),
TOKEN_INVALID_ERROR
(
"603"
,
"无效的登录信息"
),
VERIFY_CODE_ERROR
(
"604"
,
"验证码错误,请重新输入"
),
TOKEN_REDIS_ERROR
(
"605"
,
"登录失效"
),
AUTH_ACCOUNT_ERROR
(
"606"
,
"当前账号未授权,请先授权"
),
TOEKN_REPEAT_ERROR
(
"607"
,
"该账号已在其他设备登录,请重新登录"
),
TOKEN_NOT_VALID_ERROR
(
"608"
,
"access_token已失效或access_token不是最新的"
),
SCHEDULE_SYS_ERROR
(
"703"
,
"系统定时任务执行错误"
),
FORM_REPEAT_ERROR
(
"704"
,
"操作次数频繁,请稍后重试"
),
DATA_VERSION_ERROR
(
"705"
,
"数据写入版本不一致,请稍后重试。"
),
REQUEST_PARAM_ILLEGAL_ERROR
(
"706"
,
"请求参数非法"
),
DATA_INSERT_ERROR
(
"707"
,
"数据插入失败"
),
SCORE_RELEASE_ERROR
(
"708"
,
"积分发放失败,请重试或联系管理员!"
),
ENTRY_INTO_FORCE_TIME_SET_ERROR
(
"709"
,
"生效时间不能小于当前时间!"
),
INFO_NO_EXISTENCE_OR_STATUS_ERROR
(
"710"
,
"信息不存在或状态有误!"
),
// 业务操作错误定义
CUSTOM_ERROR
(
"-1"
,
"自定义业务错误消息"
),
FEIGN_ORDER_SERVLET_ERROR
(
"4001"
,
"访问订单服务失败"
),
FEIGN_USER_SERVLET_ERROR
(
"4002"
,
"访问用户服务失败"
),
FEIGN_PAY_SERVLET_ERROR
(
"4003"
,
"访问消耗服务失败"
),
DISABLE_ACCOUNT_TOKEN_ERROR
(
"4004"
,
"账号信息变更,登录失效"
),
FEIGN_OPERATION_SERVLET_ERROR
(
"4005"
,
"访问行业服务失败"
),
ADMIN_ROLE_REPEAT_ERROR
(
"4006"
,
"操作失败,超级管理员和运营管理员有且只有一个"
),
FEIGN_FLYER_SERVLET_ERROR
(
"4007"
,
"访问飞手服务失败"
),
FEIGN_REPOORDER_SERVLET_ERROR
(
"4008"
,
"访问订单服务失败"
),
FEIGN_REPOPAY_SERVLET_ERROR
(
"4009"
,
"访问云仓消耗服务失败"
),
FEIGN_REPOUSER_SERVLET_ERROR
(
"4010"
,
"访问云仓用户服务失败"
),
FEIGN_WARE_SERVLET_ERROR
(
"4010"
,
"访问云仓商品服务失败"
),
FEIGN_DEVICE_SERVLET_ERROR
(
"4011"
,
"访问云仓设备服务失败"
),
CENTER_USER_SERVLET_ERROR
(
"4012"
,
"访问用户中心服务失败"
),
GATEWAY_HYSRIX_ERROR
(
"4013"
,
"服务器貌似在开小差~"
),
FEIGN_FLYER_PAY_SERVLET_ERROR
(
"4014"
,
"访问飞手消耗服务失败"
),
MALL_USER_SERVLET_ERROR
(
"4015"
,
"访问机城用户服务失败"
),
PRIMARY_KEY_DEFECT
(
"5001"
,
"主键ID缺失"
),
WALLET_NOT_FIND_ERROR
(
"5002"
,
"钱包账户不存在"
),
PARAM_DEFECT
(
"5004"
,
"参数缺失"
),
LOGIN_ACCOUNT_NOT_EXIT_ERROR
(
"5005"
,
"账号不存在"
),
LOGIN_PASSWORD_ERROR
(
"5006"
,
"密码错误"
),
LOGIN_ACCOUNT_STATUS_ERROR
(
"5008"
,
"未登录"
),
OPERATE_USER_ORDERCOUNT_ERROR
(
"5007"
,
"当前账号有存在相关订单未关闭"
),
WALLET_CASH_NOT_ENOUGH_ERROR
(
"5009"
,
"现金余额不足"
),
AMT_PAID_VERITY_ERROR
(
"5010"
,
"变更额度不在有效范围"
),
CREDIT_NOT_ENOUGH_ERROR
(
"5011"
,
"信用余额不足,当前信用余额:"
),
CREDIT_METHOD_ERROR
(
"5012"
,
"变更类型有误"
),
CREDIT_OWED_BEGGER_ERROR
(
"5013"
,
"归还额度不可超过剩余欠款,当前剩余欠款:"
),
CASH_ADD_OWED_ERROR
(
"5014"
,
"该账号仍有剩余欠款,请先将全部欠款归还后,再进行充值。"
),
WALLET_CREDIT_NOT_ENOUGH_ERROR
(
"5015"
,
"信用余额不足"
),
ORDER_PAY_FORMAT_ERROR
(
"5016"
,
"现金和信用金额不能同时为空"
),
WALLET_CASH_FREEZE_NOT_ENOUGH_ERROR
(
"5017"
,
"现金的冻结余额不足"
),
WALLET_CREDIT_FREEZE_NOT_ENOUGH_ERROR
(
"5018"
,
"信用的冻结余额不足"
),
ORDER_CASH_FREEZE_NOT_FIND_ERROR
(
"5019"
,
"现金的冻结余额不存在"
),
ORDER_CREDIT_FREEZE_NOT_FIND_ERROR
(
"5019"
,
"信用的冻结余额不存在"
),
WALLET_BANLANCE_NOT_ENOUGH_ERROR
(
"5020"
,
"现金和信用的余额不足"
),
WALLET_FREEZE_NOT_ENOUGH_ERROR
(
"5020"
,
"现金和信用的冻结余额不足"
),
CREDIT_REPEAT_NULL_ERROR
(
"5021"
,
"欠款归还不能为空"
),
CREDIT_CHANGE_NULL_ERROR
(
"5021"
,
"信用余额变更不能为空"
),
ORDER_TOTAL_COST_ERROR
(
"5022"
,
"结算金额不能大于预支付的金额"
),
ORDER_PAY_NOT_ENOUGH_ERROR
(
"5023"
,
"总余额不足,订单无法结算"
),
NOT_MENU_POWER_ERROR
(
"5024"
,
"当前账号无平台使用权限"
),
OPENID_NOT_FIND_ERROR
(
"5025"
,
"OPENID未注册,请登录授权后调用"
),
PASSWORD_INCONSISTENT
(
"5026"
,
"新密码与确认密码不一致,请确认一致"
),
WX_ACCESS_TOKEN_ERROR
(
"5027"
,
"获取微信AccessToken失败"
),
WX_NOT_REL_ERROR
(
"5028"
,
"获取微信公众号用户信息失败"
),
WX_NOT_SEND_MSG_PARAM_ERROR
(
"5029"
,
"userId和openId至少一个不为空"
),
APPLET_QR_CODE_CREATE_ERROR
(
"5030"
,
"生成小程序码错误:"
),
APPLET_USER_ACCESS_TOKE_ERROR
(
"5031"
,
"获取accessToken签名校验失败"
),
REBATE_AMT_NOT_MIN_ERROR
(
"5032"
,
"金额不足300元无法提现,300元为最低门槛"
),
REBATE_AMT_NOT_ENOUGH_ERROR
(
"5033"
,
"申请失败,超过可提现的金额"
),
BANK_INFO_NOT_SAVE_ERROR
(
"5034"
,
"请先完善收款账号,才可以申请提现"
),
REBATE_APPLY_STATUS_ERROR
(
"5035"
,
"提现状态有误"
),
REBATE_INFO_NOT_FIND_ERROR
(
"5036"
,
"提现申请单信息不存在"
),
REBATE_FAIL_EXIT_ERROR
(
"5037"
,
"你的收款账号信息有误,请修改信息后重新申请提现。"
),
REBATE_AMT_FORMAT_ERROR
(
"5038"
,
"提现金额必须大于0元"
),
REBATE_REPEAT_CHECK_ERROR
(
"5039"
,
"提现申请单已被审批,切勿重复审批。"
),
CHOOSE_FLYER_NUM_ERROR
(
"5040"
,
"请至少选中一个飞手。"
),
CHOOSE_FLYER_MORE_NUM_ERROR
(
"5041"
,
"暂只支持一个订单只能指派一个飞手。"
),
ORDER_NO_EXIT_ERROR
(
"5042"
,
"订单信息不存在。"
),
ORDER_STATUS_ERROR
(
"5043"
,
"订单状态流程有误。"
),
INTERFACE_NOT_INVAILD
(
"5044"
,
"接口已废弃或不存在"
),
PAPER_CODE_NOT_INVAILD
(
"5045"
,
"接口已废弃或不存在"
),
PHONE_INVAILD_ERROR
(
"5046"
,
"无效的手机号"
),
TIME_CODE_INVAILD_ERROR
(
"5047"
,
"无效的时间编码"
),
REPEACT_COMMIT_ERROR
(
"5048"
,
"已提交,切勿重复提交"
),
IMPORT_EXCEL_ERROR
(
"5049"
,
"excel导入失败"
),
REQ_SMS_CODE_ERROR
(
"5050"
,
"注册码格式有误"
),
SKU_NOT_PRICE_ERROR
(
"5051"
,
"当前SKU未配置价格"
),
SKU_NOT_ENOUGH_ERROR
(
"5052"
,
"套餐(sku)数量不足"
),
LEASE_DATE_MATH_ERROR
(
"5053"
,
"租期开始日不能大于结束日"
),
ADD_LEASE_ADDR_ERROR
(
"5054"
,
"请选择收货方式"
),
SHOP_NEED_PHONE_ERROR
(
"5055"
,
"门店自取需要您的联系电话,请填写联系电话"
),
ORDER_POWER_ERROR
(
"5056"
,
"订单不存在或你无权操作该订单"
),
ORDER_AUTH_ERROR
(
"5057"
,
"请完成认证再下单"
),
EXPRESS_RETURN_ERROR
(
"5058"
,
"请完善物流单号和物流公司"
),
SHOP_RETURN_ERROR
(
"5059"
,
"请选择门店"
),
ORDER_REFUND_EXIT_ERROR
(
"5060"
,
"该订单已提交过退款申请,请勿重复申请。"
),
ORDER_EXPRESS_ERROR
(
"5061"
,
"获取订单物流信息有误。"
),
ORDER_PAY_JOB_ERROR
(
"5062"
,
"执行定时任务有误"
),
NO_AUTH_ORDER_ERROR
(
"5063"
,
"请完成企业认证或实名认证后再进行下单"
),
WARE_NOT_ENOUGH_ERROR
(
"5064"
,
"商品数量不足"
),
EX_INFO_ERROR
(
"5065"
,
"物流信息不完善"
),
NOT_REAL_AUTH_ERROR
(
"5066"
,
"请完成实名认证后再进行操作"
),
REBATE_NOT_ENOUGH_ERROR
(
"5067"
,
"提现申请金额需在10至8000元范围之内"
),
MORE_THAN_LIMIT_ERROR
(
"5067"
,
"提现申请金额需在0.1至98000元范围之内"
),
FLYER_ENT_MORE_THAN_LIMIT_ERROR
(
"50670"
,
"飞手机构用户银行卡单笔最低10元,最高100,000元"
),
FLYER_MORE_THAN_LIMIT_ERROR
(
"50671"
,
"飞手个人用户银行卡单笔最低10元,最高5,000元"
),
MORE_THAN_LIMIT_TODAY_ERROR
(
"50672"
,
"单个账户每月提现额度为100,000元"
),
SYSTEM_AMT_NOT_ENOUGH_ERROR
(
"5068"
,
"系统处理中,请稍后再试。"
),
FEIGN_XZH_SERVLET_ERROR
(
"5069"
,
"访问线上支付接口服务失败"
),
XZH_SERVLET_ERROR
(
"5070"
,
"调用线上支付失败:"
),
XZH_FAIL_ERROR
(
"5071"
,
"支付服务失败:"
),
REFUSE_COUNT_ERROR
(
"5072"
,
"今日拒绝的次数已达上限,暂不可参与抢单"
),
APPLY_ORDER_COUNT_ERROR
(
"5073"
,
"请勿重复接单"
),
ORDER_ARRIVE_ERROR
(
"5074"
,
"抢单失败,订单已被指派"
),
REST_APPLY_ORDER_ERROR
(
"5075"
,
"请先开启接单状态后再进行抢单"
),
EVALUATED_ERROR
(
"5076"
,
"您已经评价过啦!"
),
BACKET_TYPE_ERROR
(
"5077"
,
"红包类型有误"
),
BACKET_NOT_ENOUGH_ERROR
(
"5078"
,
"红包已被抢光"
),
USER_PHONE_AUTH_ERROR
(
"5079"
,
"请授权登录后领取"
),
TOKEN_REQUIRED_ERROR
(
"5080"
,
"Please bring a token"
),
UNIONID_NOT_ERROR
(
"5081"
,
"UnionId不能为空"
),
OPENID_NOT_ERROR
(
"5081"
,
"云享飞openid、云飞手openid、云仓openid、无人机城openid至少要有一个"
),
NO_EVALUATED_ERROR
(
"5090"
,
"暂无评价信息!"
),
DAY_NUM_ERROR
(
"5091"
,
"天数有误"
),
TASK_TYPE_ERROR
(
"5092"
,
"您的账号类型为个人飞手,只能抢任务人数1人的订单。"
),
TASK_FLYER_COUNT_LESS_ERROR
(
"5093"
,
"机构认证的飞手多于任务需要的飞手才可以抢单。"
),
FLYER_REBATE_ERROR
(
"5094"
,
"提现失败,请稍后重试"
),
OPERATION_SYS_ERROR
(
"5095"
,
"操作失败,请稍后重试"
),
WAG_CHECK_STATUS_ERROR
(
"5096"
,
"操作失败,未通过或待确认状态才能进行重新编辑"
),
EXPORT_NO_DATA_ERROR
(
"5097"
,
"查询到当前符合条件的数据为0条"
),
WAG_ZERO_ERROR
(
"5098"
,
"工资抵扣后当月工资不能少于0元"
),
WAG_REPEAT_DATE_ERROR
(
"5099"
,
"操作失败,工资日期重复:"
),
BUY_NUM_ERROR
(
"5100"
,
"购买数量必须大于0"
),
SHOP_CAR_ERROR
(
"5101"
,
"购物车信息不存在"
),
GOODS_VERSION_ERROR
(
"5102"
,
"操作失败,当前商品已经发生信息变更,请刷新后重试"
),
WAG_DETAIL_COUNT_ERROR
(
"5103"
,
"账单天数必须大于0"
),
WAG_TERM_PARAM_ERROR
(
"5104"
,
"飞手工资、结算基数、操作三个选项必须填一个"
),
IMPORT_PARAM_ERROR
(
"5105"
,
"导入的数据行不能为空或者格式错误"
),
SHOP_GOODS_NOT_ERROR
(
"5106"
,
"当前商品已下架或已删除"
),
ALL_PAY_ERROR
(
"5107"
,
"当前订单为分期付款,请先上传尾款凭证"
),
FLYER_EVLT_PARAM_ERROR
(
"5108"
,
"飞手评分参数有误,请检查"
),
FLYER_REPEAT_BIND_ERROR
(
"5108"
,
"飞手已被绑定过,请勿重复绑定"
),
FLYER_NUM_BIND_ERROR
(
"5108"
,
"飞手数量有误,本任务需要的飞手人数为:"
),
FLYER_ORDER_TYPE_ERROR
(
"5110"
,
"飞手类型有误,该订单只允许个人飞手接单"
),
FLYER_ENT_ORDER_TYPE_ERROR
(
"5111"
,
"飞手类型有误,该订单只允许飞手机构接单"
),
PHONE_NUM_EXIT_ERROR
(
"5112"
,
"手机号已存在"
),
FLYER_UN_BIND_ERROR
(
"5113"
,
"飞手已被解绑,请勿重复解绑"
),
REPEAT_NOTIFICATION
(
"5114"
,
"您已对此订单进行过催付款操作"
),
FLYER_WORK_ERROR
(
"5115"
,
"指派飞手失败,飞手休息中:"
),
DISABLE_APPLY_ORDER_ERROR
(
"5116"
,
"当前时间此订单不可抢"
),
COMPANY_EXIT_ERROR
(
"5117"
,
"单位名称已存在"
),
COMPANY_NOT_BIND_ERROR
(
"5118"
,
"未绑定单位,请先绑定单位"
),
COMPANY_REMOVE_ERROR
(
"5119"
,
"删除失败,请先移除该单位的账号信息"
),
COMPANY_REMOVE_CHILD_ERROR
(
"5120"
,
"删除失败,请先移除该单位的子级单位"
),
EXIST_THE_SAME_GOODS_ERROR
(
"5121"
,
"购物车已存在您选择的商品"
),
// clientOAuth
OAUTH_CLIENT_NOT_FOUND
(
"6404"
,
"client_id不存在或已注销"
),
OAUTH_SECRET_ERROR
(
"6405"
,
"client_secret有误"
),
OAUTH_AUTHORIZE_ERROR
(
"6406"
,
"当前账号未获得任何授权,请确认"
),
OAUTH_API_AUTH_ERROR
(
"6407"
,
"当前资源未被授权"
),
OAUTH_CREATE_TOKEN_ERROR
(
"6408"
,
"系统内部错误,获取accessToken失败,"
),
PWD_CREATE_ERROR
(
"6001"
,
"创建密码失败"
),
PWD_CONPARED_ERROR
(
"6002"
,
"密码错误"
),
PWD_ALERT_ERROR
(
"6003"
,
"密码不一致"
),
PWD_REQUEST_AUTH_ERROR
(
"6003"
,
"密码请求验证"
),
APPLET_PORT_TYPE_ERROR
(
"7001"
,
"小程序端口类型错误"
),
APPLET_GET_OPENID_ERROR
(
"7002"
,
"获取小程序openid失败"
),
UPDATE_USER_ACCOUNT_REPEAT
(
"7003"
,
"修改后的账户名已存在"
),
ADD_USER_ACCOUNT_NAME_EXISTS
(
"7004"
,
"新增账户名已经存在"
),
ACCOUNT_NOT_FIND_ERROR
(
"8000"
,
"账号信息不存在"
),
REPEAT_SOFT_DELETE
(
"8001"
,
"账号已删除"
),
ADMIN_ROLE_DELETE_ERROR
(
"8002"
,
"此账号为管理员账号,禁止删除"
),
ROLE_ADMIN_DELETE_ERROR
(
"8003"
,
"此角色为管理员角色,禁止删除"
),
ROLE_NAME_REPEAT_ERROR
(
"8004"
,
"角色名已存在"
),
ROLE_AVL_USER_DELETE_ERROR
(
"8005"
,
"此角色尚有可用账号,请将所有账号移除后在进行操作"
),
ROLE_AVL_USER_STATUS_ERROR
(
"8006"
,
"此角色尚有可用账号,请将所有账号禁用后在进行操作"
),
ROLE_SYSTEM_DELETE_ERROR
(
"8007"
,
"此角色为系统角色,禁止删除"
),
ADMIN_ROLE_POWER_ERROR
(
"8008"
,
"禁止修改管理类角色权限"
),
SYSTEM_ROLE_POWER_ERROR
(
"8009"
,
"禁止修改系统类角色权限"
),
ROLE_SELF_POWER_ERROR
(
"8010"
,
"禁止修改与当前登录账号角色相同的角色权限"
),
ADMIN_ACCOUNT_DISABLE_ERROR
(
"8011"
,
"此账号为管理员账号,禁用失败"
),
OPERATE_USER_DEL_ERROR
(
"8012"
,
"该账号仍有进行中的订单需要负责,请先移交订单后再删除。"
),
OPERATE_USER_DISABLED_ERROR
(
"8013"
,
"该账号仍有进行中的订单需要负责,请先移交订单后再禁用。"
),
DELETE_USER_UNFILLED_ORDER_EXIST
(
"9001"
,
"平台中有此账号相关的订单,不可删除此账号"
),
STOP_UNFILLED_ORDER_EXIST
(
"9002"
,
"平台中有此账号相关的订单正在进行中,不可停用此账号"
),
ACCOUNT_ALREADY_DELETED
(
"10001"
,
"此账号已经被删除"
),
ACCOUNT_ALREADY_STOP
(
"10002"
,
"此账号已经被停用,不能登录此小程序,详情请联系管理员"
),
INDUSTRY_NAME_CREATE_ERROR
(
"20001"
,
"行业名称请勿重复,请重新输入"
),
INSPECTION_NAME_CREATE_ERROR
(
"20002"
,
"服务名称请勿重复,请重新输入"
),
INSPECTION_REPEAT
(
"20003"
,
"绑定服务重复"
),
INDUSTRY_REPEAT
(
"20004"
,
"绑定行业重复"
),
INSERT_INDUSTRY_SUCCESS
(
"20005"
,
"新增行业成功"
),
UPDATE_INDUSTRY_SUCCESS
(
"20006"
,
"修改行业成功"
),
DELETE_INDUSTRY_SUCCESS
(
"20007"
,
"删除行业成功"
),
INSERT_INSPECTION_SUCCESS
(
"20008"
,
"新增服务成功"
),
UPDATE_INSPECTION_SUCCESS
(
"20009"
,
"修改服务成功"
),
DELETE_INSPECTION_SUCCESS
(
"20010"
,
"删除服务成功"
),
SORT_PARAMETER_ERROR
(
"28199"
,
"排序参数错误"
),
OPRATING_FREQUENCY_TOO_HIGH
(
"28449"
,
"更新频率过快,请重试"
),
INSERT_INDUSTRY_INSPECTION_SUCCESS
(
"20011"
,
"添加对应服务成功"
),
INSERT_INSPECTION_INDUSTRY_SUCCESS
(
"20012"
,
"添加对应行业成功"
),
DELETE_INDUSTRY_INSPECTION_SUCCESS
(
"20013"
,
"删除对应服务成功"
),
DELETE_INSPECTION_INDUSTRY_SUCCESS
(
"20014"
,
"删除对应行业成功"
),
INSERT_INDUSTRY_SHELF_SUCCESS
(
"20015"
,
"行业上架成功"
),
DELETE_INDUSTRY_SHELF_SUCCESS
(
"20016"
,
"行业下架成功"
),
INSERT_INSPECTION_SHELF_SUCCESS
(
"20017"
,
"服务上架成功"
),
DELETE_INSPECTION_SHELF_SUCCESS
(
"20018"
,
"服务下架成功"
),
DELETE_INSPECTION_ERROR
(
"20022"
,
"该服务仍有未完成的订单,不可删除"
),
INSPECTION_NOT_EXIST
(
"20023"
,
"很抱歉,目前该服务已下架"
),
FAKE_NUM_CREATE_ERROR
(
"20024"
,
"输入的数据有误,请重新输入!"
),
WORK_TYPE_NAME_ERROR
(
"20026"
,
"服务作业类型重复,请重新输入"
),
EXIST_BINDING_INSPECTION_ERROR
(
"20027"
,
"此作业类型被服务绑定,删除失败!"
),
UPLOAD_IMG_ERROR
(
"20019"
,
"请选择jpg,png,jpeg格式的图片"
),
UPLOAD_VIDEO_ERROR
(
"20020"
,
"请选择MP4,avi,mov,mkv格式的视频"
),
UPLOAD_DOC_ERROR
(
"20021"
,
"请选择doc,ppt,pdf,xls格式的文件"
),
UPLOAD_IMG_LESS_3M_ERROR
(
"20022"
,
"请上传小于3M的图片"
),
INSERT_ORDER_SUCCESS
(
"21000"
,
"新增订单成功"
),
UPDATE_ORDER_SUCCESS
(
"21001"
,
"修改订单成功"
),
ORDER_TRANS_SUCCESS
(
"21002"
,
"订单移交成功"
),
ORDER_EVALUATE_SUCCESS
(
"21003"
,
"订单评价完成"
),
ORDER_BEFORE_PAY_ERROR
(
"21004"
,
"订单预支付失败"
),
ORDER_CLOSE_PAY_ERROR
(
"21005"
,
"订单结算支付失败"
),
INSERT_ORDER_DETAIL_SUCCESS
(
"21006"
,
"新增订单动态成功"
),
CHECK_USER_ERROR
(
"22001"
,
"用户未通过验证"
),
GET_ORDER_LIST_ERROR
(
"22002"
,
"获取订单列表失败"
),
COMMANT_CAR_NAME_EXIST
(
"22003"
,
"指挥车名字已存在,请重新输入"
),
// 认证提示
APP_CODE_ERROR
(
"30301"
,
"appcode 错误"
),
REQUE_ENVIROMENT_ERROR
(
"30302"
,
"请求的 Method、Path 或者环境错误"
),
REQUEST_PARAMETER_ERROR
(
"30303"
,
"请求参数错误"
),
SERVICE_NOT_AUTHORIZED
(
"30304"
,
"服务未被授权(或URL和Path不正确)"
),
TIMES_USED_UP
(
"30305"
,
"很抱歉,目前我们的实名认证次数已达上限,正在处理中,请稍后再进行认证。"
),
OTHER_ERROR
(
"30306"
,
"其他错误/服务次数用完"
),
LIVE_AUTHENTICATION_FAILED
(
"3824"
,
"活体认证失败"
),
ID_INFO_AND_ID_card_MISMATCH
(
"3904"
,
"身份信息与身份证不匹配"
),
LIVE_AUTHENTICATION_SUCESS
(
"3999"
,
"活体验证成功"
),
NO_REAL_NAME
(
"3854"
,
"用户未实名认证"
),
URL_FORMAT_ERROR
(
"37462"
,
"URL格式错误"
),
URL_ADDRESS_ERROR
(
"36752"
,
"URL地址错误"
),
INTERFACE_ACCESS_EXCEPTION
(
"36894"
,
"接口访问异常/次数用尽"
),
FRONT_BACK_VAGUE
(
"35556"
,
"身份证正反面不明确"
),
ID_CARD_THOTO_MESSAGE_ERROR
(
"36651"
,
"身份照信息错误"
),
EXPTION_ID_CARD_THOTO_MESSAGE_ERROR
(
"36651"
,
"信息异常"
),
PHOTO_FORMAT_ERROR
(
"12138"
,
"身份证图片格式错误"
),
VALIDATION_INFO_EXPIRED
(
"32815"
,
"认证时间过长信息过期或认证信息不完整,请重新开始认证"
),
REAL_IMAGE_AUTHENTICATION_SUCESS
(
"38844"
,
"验证成功"
),
REAL_IMAGE_AUTHENTICATION_FAILED
(
"38855"
,
"验证失败,请再次进行人脸识别"
),
IDENTITY_HAS_BEEN_AUTHENTICATED
(
"34444"
,
"此身份证信息已经被认证,请重试"
),
REAL_NAME_ACCOUNT_ID_ERROR
(
"36771"
,
"账户id错误"
),
REAL_NAME_FUSING_ERROR
(
"36772"
,
"认证失败,请重新认证"
),
// 企业认证
BUSINESS_LICENSE_CHECK_ANALYSIS_ERROR
(
"30400"
,
"营业执照解析失败,请上传有效清晰的执照"
),
BUSINESS_LICENSE_CHECK_PARAMETER_ERROR
(
"30401"
,
"企业信息与营业执照信息不一致,请重新上传"
),
BANK_ACCOUNT_CHECK1_ERROR
(
"30402"
,
"账号与开户名不符"
),
BANK_ACCOUNT_CHECK2_ERROR
(
"30403"
,
"开户行名称错误"
),
BANK_ACCOUNT_CHECK3_ERROR
(
"30404"
,
"仅支持对公账户验证,不支持个人卡"
),
BANK_ACCOUNT_CHECK4_ERROR
(
"30405"
,
"企业账号信息有误,请重新输入"
),
BANK_ACCOUNT_CHECK5_ERROR
(
"30406"
,
"24小时之内不能重复申请"
),
BANK_ACCOUNT_CHECK6_ERROR
(
"30407"
,
"很抱歉,目前我们的企业认证次数已达上限,如需继续认证请及时联系相关负责人进行处理,联系方式:科比特管理人员,18938853647。"
),
BANK_ACCOUNT_CHECK7_ERROR
(
"30408"
,
"企业名称与开户名称不一致,请确认一致后再提交认证"
),
ENTERPRISE_HAVE_VERIFIED
(
"30409"
,
"您输入的企业信息已被其他用户认证,请重新输入"
),
ID_NUMBER_PARA_ERROR
(
"30410"
,
"身份证号码有错,请重新输入"
),
DEAL_ERROR
(
"30411"
,
"有报错,请联系平台客服。"
),
NOT_DATA_ERROR
(
"30412"
,
"查无数据"
),
API_STOP_USE_ERROR
(
"30413"
,
"接口停用"
),
OFFICE_DATA_SUSTAIN_ERROR
(
"30414"
,
"官方数据源维护,请稍候再试"
),
SERVER_SUSTAIN_ERROR
(
"30415"
,
"服务商维护,请稍候再试"
),
PARA_ERROR
(
"30416"
,
"参数错误,请重新输入"
),
VERIFY_COUNT_ERROR
(
"30416"
,
"认证次数上限,请联系管理员"
),
NOT_ENT_VERIFY_ERROR
(
"30417"
,
"机构未认证或认证未通过,请先进行机构认证"
),
NOT__VERIFY_ERROR
(
"30418"
,
"机构未认证或飞手认证未通过,请先进行认证"
),
// 渠道认证
NOT_ENT_USER
(
"30501"
,
"感谢您有意向成为我们的渠道商,请先完成企业认证。"
),
NEW_NOT_ENT_USER
(
"30502"
,
"此用户未进行企业认证,渠道变更失败!"
),
BEFORE_NOT_CHANNEL_USER
(
"30503"
,
"此用户还不是渠道"
),
// 飞手端认证
NOT_AUTH_FLYER_ERROR
(
"30600"
,
"飞手未认证,请先完成飞手认证"
),
NOT_HAVE_AUTH_FLYER_ERROR
(
"30601"
,
"没有认证的飞手,暂不可接单"
),
// 设备型号提醒
DEVICE_MODEL_REPEAT_ERROR
(
"30700"
,
"产品名称不可重复,请重新输入"
),
DEVICE_MODEL_FAILURE_ERROR
(
"30701"
,
"设备添加失败"
),
DEVICE_MODEL_REMOVE_ERROR
(
"30702"
,
"设备未在仓库,删除失败"
),
DEVICE_MODEL_UPDATE_ERROR
(
"30703"
,
"设备修改失败"
),
DEVICE_HAS_BEEN_RENT_ERROR
(
"30704"
,
"该设备不在仓库,不能出库"
),
// 仓库提醒
REPO_INFO_NAME
(
"30800"
,
"仓库名称不可重复,请重新输入"
),
REPO_INFO_FAILURE
(
"30801"
,
"仓库添加失败"
),
REPO_INFO_REMOVE
(
"30702"
,
"仓库删除失败"
),
// 商品
WARE_NAME_HAS_BEEN_EXIST
(
"30900"
,
"商品名称已存在"
),
WARE_TYPE_NAME_HAS_BEEN_EXIST
(
"30901"
,
"分类名称已存在"
),
WARE_TYPE_ICON_NOT_NULL
(
"30902"
,
"一级分类图标不能为空"
),
GROUP_DONT_DELETE
(
"30903"
,
"该分类下尚有商品或服务或课程存在"
),
GOODS_STATUS_ERROR
(
"30904"
,
"状态有误"
),
GOODS_ON_SHELF_SUCCESS
(
"30905"
,
"商品上架成功"
),
GOODS_DOWN_SHELF_SUCCESS
(
"30906"
,
"商品下架成功"
),
GOODS_SKU_IS_NOT_NULL
(
"30907"
,
"商品规格不能为空"
),
GOODS_PIC_IS_NOT_NULL
(
"30908"
,
"商品主图不能为空"
),
GOODS_DESC_IS_NOT_NULL
(
"30910"
,
"商品描述不能为空"
),
GOODS_GROUP_IS_NOT_NULL
(
"30911"
,
"商品类型不能为空"
),
GROUP_DONT_DELETE_BY_CHILD
(
"30912"
,
"该分类下尚有子分类存在"
),
GOODS_NOT_EXIST_OR_ALREADY_DOWN_SHELF
(
"30913"
,
"商品不存在或已下架"
),
GOODS_NAME_IS_NOT_NULL
(
"30914"
,
"商品名称不能为空或名字长度不能大于60"
),
GOODS_DELETE_FAIL
(
"30915"
,
"批量删除商品失败,商品已被其他商品绑定"
),
BRAND_DELETE_FAIL
(
"30916"
,
"删除失败,产品管理中有产品绑定该品牌名称"
),
// 返祖
RETURN_SHARE_ORDER_ERROR
(
"40000"
,
"设备返祖订单相关信息找不到,请重新输入订单号"
),
RETURN_SHARE_ORDER_NOT_FINISH_ERROR
(
"40001"
,
"此设备的订单未完成,请添加其他设备"
),
RETURN_SHARE_ORDER_HAS_BEEN_ADD_ERROR
(
"40002"
,
"此订单的设备已经被添加过,不能重复添加"
),
// 宣传中心
EXIST_SAME_NAME_OF_MODULE_ERROR
(
"40500"
,
"所属产品中不能有相同名字的模块"
),
EXIST_SAME_NAME_OF_BANNER_ERROR
(
"40501"
,
"名称重复,请重新输入"
),
EXIST_SAME_CODE_OF_MODULE_ERROR
(
"40502"
,
"moduleCode已重复,请输入其他moduleCode"
),
HAS_BEEN_USE_ERROR
(
"40503"
,
"此标签有用户在使用,不能删除!"
),
FILE_PARSE_ERROR
(
"40600"
,
"上传文件无数据或内容识别失败,请重新上传"
),
HAS_BEEN_APPLY_ERROR
(
"40601"
,
"已提交申请!将有客服人员与你联系"
),
PRICE_TO_HIGH_ERROR
(
"40602"
,
"标价确认在0-10000000万元内"
),
EXIST_SAME_NAME_ERROR
(
"40603"
,
"快讯名称重复,请重新上传"
),
TENDER_FORMAT_ERROR
(
"40604"
,
"招标序号或内容不能为空,请补全后上传"
),
TENDER_CONTENT_TOO_LONG_ERROR
(
"40605"
,
"存在招标内容字符过长"
),
GOODS_CATEGORY_NAME_EXIST_ERROR
(
"40605"
,
"名称重复,请重新输入!"
),
CONTRACT_STATUS_MISTAKEN
(
"40607"
,
"当前合同状态不可进行编辑!"
),
CONTRACT_STATUS_CANNOT_BE_DELETED
(
"40607"
,
"当前合同状态不可进行删除!"
),
CONTRACT_NOT_EXIST
(
"40608"
,
"合同不存在或已删除!"
),
CONTRACT_STATUS_DOES_NOT_ALLOW_FILE
(
"40609"
,
"该状态合同不允许归档!"
),
SEAL_INFO_NOT_EXIST
(
"40610"
,
"请前往印章管理上传印章或设置默认印章!"
),
AGENCY_NO_FLYER
(
"40611"
,
"机构下暂无飞手,快去招募吧~"
),
NO_FLYER_WORK
(
"40612"
,
"现在没有飞手上班哦~"
),
TEMPORARY_NOT_SUPPORT_TRANSFER_ORDER
(
"40613"
,
"个人订单暂不支持转单操作~"
),
ELECTRONIC_SIGNATURE_NOT_REAL_NAME_AUTHENTICATION
(
"40614"
,
"请完成电子签约实名认证后再进行操作"
),
DIRECTORY_DOES_NOT_EXIST
(
"40615"
,
"目录不存在或已删除"
),
DEFAULT_DIRECTORY_CANNOT_BE_DEL
(
"40616"
,
"默认目录不可删除"
),
THERE_ARE_CATEGORIES_IN_THE_DIRECTORY
(
"40167"
,
"该目录下有分类存在不可删除"
),
DIRECTORY_NAME_HAS_BEEN_EXIST
(
"40168"
,
"目录名称已存在"
),
FAILED_TO_ADD_DATA
(
"40169"
,
"数据新增失败,请稍后重试"
),
FAILED_TO_EDIT_DATA
(
"40170"
,
"数据修改失败,请稍后重试"
),
PRODUCT_DOES_NOT_EXIST_OR_HAS_BEEN_DELETED
(
"40171"
,
"产品不存在或已删除,请刷新后重试!"
),
SPEC_DOES_NOT_EXIST_OR_HAS_BEEN_DELETED
(
"40172"
,
"规格不存在或已删除,请刷新后重试!"
),
SKU_ALREADY_EXIST_IN_THIS_INDUSTRY
(
"40173"
,
"该所属行业下已经存在sku,请检查后重试!"
),
SPEC_EXIST_UNDER_THE_SKU
(
"40174"
,
"该产品下有规格存在,无法删除!"
),
SPEC_NOT_CONFIG_PRICE
(
"40175"
,
"存在规格没有配置价格,请联系客服获取报价!"
),
SHOP_CAR_SIZE_MORE_2
(
"40176"
,
"行业购物车下单数量仅限一个"
),
CONTRACT_TEMPLATE_NOT_EXIST_OR_DELETED
(
"40177"
,
"合同模板不存在或已删除!"
),
SCORE_ERROR
(
"40177"
,
"您输入的积分数量有误,请重新输入!"
),
PLEASE_FILL_IN_THE_CONTRACT_TEMPLATE_FIRST
(
"40178"
,
"请先填充合同模板!"
),
SCORE_NOT_GIVE_MYSELF
(
"40179"
,
"积分不能转赠给本人,请重新操作"
),
ALREADY_FINISH_ENT_AUTH_ERROR
(
"2000"
,
"助力已完成!"
),
SYSTEM_ERROR
(
"2001"
,
"系统错误,请稍后重试"
),
RULE_ERROR
(
"2002"
,
"当前兑换比例已失效,请刷新后重试"
),
COUNT_LIMIT_ERROR
(
"2003"
,
"参与次数已达上线"
),
ALREADY_ENT_AUTH_ERROR
(
"2004"
,
"助力失败,您已完成企业认证!"
),
ALREADY_REAL_NAME_AUTH_ERROR
(
"2005"
,
"助力失败,您已完成实名认证!"
),
PARTICIPATE_BUT_NOT_AUTH_ERROR
(
"2006"
,
"待完成授权或认证"
),
ALREADY_HELP_ERROR
(
"2007"
,
"已助力"
),
ALREADY_STOP_ERROR
(
"2008"
,
"活动已下线"
),
HELP_FAIL_ERROR
(
"2009"
,
"不能给自己助力哦!"
),
ALREADY_BINDING_ERROR
(
"2010"
,
"优惠券已被绑定"
),
ALREADY_DIVIDE_ERROR
(
"2011"
,
"订单已分成"
),
DIVIDE_OBJ_NOT_EXIST
(
"2012"
,
"先点击确认添加分成对象"
),
DEFAULT_DIRECTORY
(
"3001"
,
"默认目录不可删除或修改名称!"
),
THE_NAME_OF_A_CLASS_MUST_BE_UNIQUE
(
"3002"
,
"一级分类名称重复"
),
THE_CURRENT_CATEGORY_IS_ASSOCIATED_WITH_GOODS
(
"3004"
,
"当前分类已经关联商品请先删除商品"
),
THE_NAME_OF_THE_SECONDARY_CLASS_MUST_BE_UNIQUE
(
"3003"
,
"同一级分类下面二级分类不能重复"
);
/**
* 错误码
*
* @return
*/
String
resultCode
;
/**
* 错误描述
*
* @return
*/
String
resultMsg
;
ResultEnum
(
String
resultCode
,
String
resultMsg
)
{
this
.
resultCode
=
resultCode
;
this
.
resultMsg
=
resultMsg
;
}
@Override
public
String
getResultCode
()
{
return
resultCode
;
}
@Override
public
String
getResultMsg
()
{
return
resultMsg
;
}
}
src/main/java/com/mmc/pms/controller/BackstageGoodsManageController.java
浏览文件 @
317c12fa
...
...
@@ -22,127 +22,127 @@ import java.util.List;
/**
* @Author LW
*
* @date 2023/3/14 13:22 概要:
*/
@RestController
@RequestMapping
(
"/goods"
)
@Api
(
tags
=
{
"后台-商品管理-相关接口"
})
public
class
BackstageGoodsManageController
extends
BaseController
{
@Resource
private
GoodsInfoService
goodsInfoService
;
@ApiOperation
(
value
=
"新增(租赁/销售)商品"
)
@PostMapping
(
"addGoodsInfo"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
public
ResultBody
addGoods
(
@ApiParam
(
"商品信息VO"
)
@Validated
(
Create
.
class
)
@RequestBody
GoodsAddVO
goodsAddVO
,
HttpServletRequest
request
)
{
return
goodsInfoService
.
addGoods
(
goodsAddVO
,
this
.
getUserLoginInfoFromRedis
(
request
).
getUserAccountId
());
}
@ApiOperation
(
value
=
"修改(租赁/销售)商品"
)
@PostMapping
(
"editGoodsInfo"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
public
ResultBody
editGoodsInfo
(
@ApiParam
(
"商品信息VO"
)
@Validated
(
Update
.
class
)
@RequestBody
GoodsAddVO
goodsAddVO
)
{
return
goodsInfoService
.
editGoodsInfo
(
goodsAddVO
);
}
@ApiOperation
(
value
=
"PC端-商品详情"
)
@GetMapping
(
"getGoodsInfoDetail"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
MallGoodsDetailDTO
.
class
)})
public
ResultBody
getGoodsInfoDetail
(
@ApiParam
(
"商品id"
)
@RequestParam
Integer
goodsInfoId
,
@RequestParam
Integer
type
,
@RequestParam
(
required
=
false
)
@ApiParam
(
"租赁时限:(输入0:1-7天、输入1:8-15天、输入2:16-30天、输入3:30天以上)"
)
Integer
leaseTerm
)
{
return
goodsInfoService
.
getGoodsInfoDetail
(
goodsInfoId
,
type
,
leaseTerm
);
}
@ApiOperation
(
value
=
"商品列表-分页"
)
@PostMapping
(
"listPageGoodsInfo"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
GoodsInfoListDTO
.
class
)})
public
ResultBody
listPageGoodsInfo
(
@ApiParam
(
"商品查询条件QO"
)
@RequestBody
MallGoodsQO
param
)
{
return
ResultBody
.
success
(
goodsInfoService
.
listPageGoodsInfo
(
param
));
}
@ApiOperation
(
value
=
"商品批量上下架"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
@PostMapping
(
"batchOnShelfOrTakeDown"
)
public
ResultBody
batchOnShelfOrTakeDown
(
@ApiParam
(
value
=
"商品上下架参数"
,
required
=
true
)
@RequestBody
BatchShelfVO
batchOnShelfVO
)
{
return
goodsInfoService
.
batchOnShelfOrTakeDown
(
batchOnShelfVO
.
getGoodsIds
(),
batchOnShelfVO
.
getStatus
());
}
@ApiOperation
(
value
=
"商品批量删除"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
@PostMapping
(
"batchRemoveWareInfo"
)
public
ResultBody
batchRemoveWareInfo
(
@ApiParam
(
value
=
"商品id数组"
,
required
=
true
)
@RequestBody
List
<
Integer
>
ids
)
{
return
goodsInfoService
.
batchRemoveWareInfo
(
ids
);
}
@ApiOperation
(
value
=
"单位信息"
)
@GetMapping
(
"getSkuUnit"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
SkuUnitDTO
.
class
)})
public
ResultBody
getSkuUnit
()
{
return
goodsInfoService
.
getSkuUnit
();
}
@ApiOperation
(
value
=
"PC端-其他服务-列表"
)
@GetMapping
(
"listOtherService"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
SaleServiceDTO
.
class
)})
public
ResultBody
listOtherService
()
{
return
goodsInfoService
.
getSaleServiceInfoToList
();
}
@ApiOperation
(
value
=
"feign根据购物车信息填充未知信息"
,
hidden
=
true
)
@PostMapping
(
"fillGoodsInfo"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
MallGoodsShopCarDTO
.
class
)})
public
List
<
MallGoodsShopCarDTO
>
fillGoodsInfo
(
@RequestBody
List
<
MallGoodsShopCarDTO
>
param
)
{
return
goodsInfoService
.
fillGoodsInfo
(
param
);
}
@ApiOperation
(
value
=
"feign根据渠道等级和产品规格id获取对应价格"
,
hidden
=
true
)
@PostMapping
(
"feignListProductSpecPrice"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
public
List
<
MallProductSpecPriceDTO
>
feignListProductSpecPrice
(
@RequestBody
ProductSpecPriceQO
productSpecPriceQO
)
{
return
goodsInfoService
.
feignListProductSpecPrice
(
productSpecPriceQO
);
}
@ApiOperation
(
value
=
"feign根据渠道等级获取单价信息"
,
hidden
=
true
)
@GetMapping
(
"feignGetUnitPriceByTag"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ProductSpecPriceDTO
.
class
)})
public
ProductSpecPriceDTO
feignGetUnitPriceByTag
(
@RequestParam
(
value
=
"specId"
)
Integer
specId
,
@RequestParam
(
value
=
"tagId"
)
Integer
tagId
)
{
return
goodsInfoService
.
feignGetUnitPriceByTag
(
specId
,
tagId
);
}
@ApiOperation
(
value
=
"feign根据商品的产品规格id查询商品信息"
,
hidden
=
true
)
@PostMapping
(
"feignListProdGoodsSkuInfo"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
OrderGoodsProdDTO
.
class
)})
public
List
<
OrderGoodsProdDTO
>
feignListProdGoodsSkuInfo
(
@RequestBody
MallOrderGoodsInfoQO
mallOrderGoodsInfoQO
)
{
return
goodsInfoService
.
feignListProdGoodsSkuInfo
(
mallOrderGoodsInfoQO
);
}
@ApiOperation
(
value
=
"feign根据商品的行业规格id查询商品清单信息"
,
hidden
=
true
)
@PostMapping
(
"feignListIndstGoodsSkuInfo"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
OrderGoodsProdDTO
.
class
)})
public
List
<
OrderGoodsIndstDTO
>
feignListIndstGoodsSkuInfo
(
@RequestBody
MallOrderGoodsInfoQO
mallOrderGoodsInfoQO
)
{
return
goodsInfoService
.
feignListIndstGoodsSkuInfo
(
mallOrderGoodsInfoQO
);
}
@ApiOperation
(
value
=
"商品列表-排序"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
@GetMapping
(
"exchangeGoodsInfo"
)
public
ResultBody
exchangeGoodsInfo
(
@ApiParam
(
value
=
"第一个参数id"
,
required
=
true
)
@RequestParam
(
value
=
"firstId"
)
Integer
firstId
,
@ApiParam
(
value
=
"第二个参数id"
,
required
=
true
)
@RequestParam
(
value
=
"secondId"
)
Integer
secondId
)
{
return
goodsInfoService
.
exchangeGoodsInfo
(
firstId
,
secondId
);
}
@Resource
private
GoodsInfoService
goodsInfoService
;
@ApiOperation
(
value
=
"新增(租赁/销售)商品"
)
@PostMapping
(
"addGoodsInfo"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
public
ResultBody
addGoods
(
@ApiParam
(
"商品信息VO"
)
@Validated
(
Create
.
class
)
@RequestBody
GoodsAddVO
goodsAddVO
,
HttpServletRequest
request
)
{
return
goodsInfoService
.
addGoods
(
goodsAddVO
,
this
.
getUserLoginInfoFromRedis
(
request
).
getUserAccountId
());
}
@ApiOperation
(
value
=
"修改(租赁/销售)商品"
)
@PostMapping
(
"editGoodsInfo"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
public
ResultBody
editGoodsInfo
(
@ApiParam
(
"商品信息VO"
)
@Validated
(
Update
.
class
)
@RequestBody
GoodsAddVO
goodsAddVO
)
{
return
goodsInfoService
.
editGoodsInfo
(
goodsAddVO
);
}
@ApiOperation
(
value
=
"PC端-商品详情"
)
@GetMapping
(
"getGoodsInfoDetail"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
MallGoodsDetailDTO
.
class
)})
public
ResultBody
getGoodsInfoDetail
(
@ApiParam
(
"商品id"
)
@RequestParam
Integer
goodsInfoId
,
@RequestParam
Integer
type
,
@RequestParam
(
required
=
false
)
@ApiParam
(
"租赁时限:(输入0:1-7天、输入1:8-15天、输入2:16-30天、输入3:30天以上)"
)
Integer
leaseTerm
)
{
return
goodsInfoService
.
getGoodsInfoDetail
(
goodsInfoId
,
type
,
leaseTerm
);
}
@ApiOperation
(
value
=
"商品列表-分页"
)
@PostMapping
(
"listPageGoodsInfo"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
GoodsInfoListDTO
.
class
)})
public
ResultBody
listPageGoodsInfo
(
@ApiParam
(
"商品查询条件QO"
)
@RequestBody
MallGoodsQO
param
)
{
return
ResultBody
.
success
(
goodsInfoService
.
listPageGoodsInfo
(
param
));
}
@ApiOperation
(
value
=
"商品批量上下架"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
@PostMapping
(
"batchOnShelfOrTakeDown"
)
public
ResultBody
batchOnShelfOrTakeDown
(
@ApiParam
(
value
=
"商品上下架参数"
,
required
=
true
)
@RequestBody
BatchShelfVO
batchOnShelfVO
)
{
return
goodsInfoService
.
batchOnShelfOrTakeDown
(
batchOnShelfVO
.
getGoodsIds
(),
batchOnShelfVO
.
getStatus
());
}
@ApiOperation
(
value
=
"商品批量删除"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
@PostMapping
(
"batchRemoveWareInfo"
)
public
ResultBody
batchRemoveWareInfo
(
@ApiParam
(
value
=
"商品id数组"
,
required
=
true
)
@RequestBody
List
<
Integer
>
ids
)
{
return
goodsInfoService
.
batchRemoveWareInfo
(
ids
);
}
@ApiOperation
(
value
=
"单位信息"
)
@GetMapping
(
"getSkuUnit"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
SkuUnitDTO
.
class
)})
public
ResultBody
getSkuUnit
()
{
return
goodsInfoService
.
getSkuUnit
();
}
@ApiOperation
(
value
=
"PC端-其他服务-列表"
)
@GetMapping
(
"listOtherService"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
SaleServiceDTO
.
class
)})
public
ResultBody
listOtherService
()
{
return
goodsInfoService
.
getSaleServiceInfoToList
();
}
@ApiOperation
(
value
=
"feign根据购物车信息填充未知信息"
,
hidden
=
true
)
@PostMapping
(
"fillGoodsInfo"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
MallGoodsShopCarDTO
.
class
)})
public
List
<
MallGoodsShopCarDTO
>
fillGoodsInfo
(
@RequestBody
List
<
MallGoodsShopCarDTO
>
param
)
{
return
goodsInfoService
.
fillGoodsInfo
(
param
);
}
@ApiOperation
(
value
=
"feign根据渠道等级和产品规格id获取对应价格"
,
hidden
=
true
)
@PostMapping
(
"feignListProductSpecPrice"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
public
List
<
MallProductSpecPriceDTO
>
feignListProductSpecPrice
(
@RequestBody
ProductSpecPriceQO
productSpecPriceQO
)
{
return
goodsInfoService
.
feignListProductSpecPrice
(
productSpecPriceQO
);
}
@ApiOperation
(
value
=
"feign根据渠道等级获取单价信息"
,
hidden
=
true
)
@GetMapping
(
"feignGetUnitPriceByTag"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ProductSpecPriceDTO
.
class
)})
public
ProductSpecPriceDTO
feignGetUnitPriceByTag
(
@RequestParam
(
value
=
"specId"
)
Integer
specId
,
@RequestParam
(
value
=
"tagId"
)
Integer
tagId
)
{
return
goodsInfoService
.
feignGetUnitPriceByTag
(
specId
,
tagId
);
}
@ApiOperation
(
value
=
"feign根据商品的产品规格id查询商品信息"
,
hidden
=
true
)
@PostMapping
(
"feignListProdGoodsSkuInfo"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
OrderGoodsProdDTO
.
class
)})
public
List
<
OrderGoodsProdDTO
>
feignListProdGoodsSkuInfo
(
@RequestBody
MallOrderGoodsInfoQO
mallOrderGoodsInfoQO
)
{
return
goodsInfoService
.
feignListProdGoodsSkuInfo
(
mallOrderGoodsInfoQO
);
}
@ApiOperation
(
value
=
"feign根据商品的行业规格id查询商品清单信息"
,
hidden
=
true
)
@PostMapping
(
"feignListIndstGoodsSkuInfo"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
OrderGoodsProdDTO
.
class
)})
public
List
<
OrderGoodsIndstDTO
>
feignListIndstGoodsSkuInfo
(
@RequestBody
MallOrderGoodsInfoQO
mallOrderGoodsInfoQO
)
{
return
goodsInfoService
.
feignListIndstGoodsSkuInfo
(
mallOrderGoodsInfoQO
);
}
@ApiOperation
(
value
=
"商品列表-排序"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
@GetMapping
(
"exchangeGoodsInfo"
)
public
ResultBody
exchangeGoodsInfo
(
@ApiParam
(
value
=
"第一个参数id"
,
required
=
true
)
@RequestParam
(
value
=
"firstId"
)
Integer
firstId
,
@ApiParam
(
value
=
"第二个参数id"
,
required
=
true
)
@RequestParam
(
value
=
"secondId"
)
Integer
secondId
)
{
return
goodsInfoService
.
exchangeGoodsInfo
(
firstId
,
secondId
);
}
}
src/main/java/com/mmc/pms/controller/category/CategoryController.java
0 → 100644
浏览文件 @
317c12fa
package
com
.
mmc
.
pms
.
controller
.
category
;
import
com.mmc.pms.common.Page
;
import
com.mmc.pms.common.ResultBody
;
import
com.mmc.pms.model.category.dto.CategoryPrimaryDTO
;
import
com.mmc.pms.model.category.dto.CategorySubDTO
;
import
com.mmc.pms.model.category.qo.CategoryQO
;
import
com.mmc.pms.model.category.vo.CategoryPrimaryVO
;
import
com.mmc.pms.model.category.vo.CategorySubVO
;
import
com.mmc.pms.model.group.Create
;
import
com.mmc.pms.model.group.Others
;
import
com.mmc.pms.model.group.Update
;
import
com.mmc.pms.service.category.CategoryService
;
import
io.swagger.annotations.*
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.web.bind.annotation.*
;
import
javax.servlet.http.HttpServletRequest
;
import
java.util.List
;
/**
* @Author small
* @Date 2023/7/20 16:17
* @Version 1.0
* <p>
* 新版本分类管理
*/
@RestController
@RequestMapping
(
"/category"
)
@Api
(
tags
=
{
"后台-新版-分类管理"
})
public
class
CategoryController
{
@Autowired
private
CategoryService
categoryService
;
@ApiOperation
(
value
=
"一级分类————新增"
)
@PostMapping
(
"/addPrimaryCategory"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
public
ResultBody
addPrimaryCategory
(
HttpServletRequest
request
,
@RequestBody
@Validated
(
value
=
{
Create
.
class
})
CategoryPrimaryVO
primaryVO
)
{
return
categoryService
.
addPrimaryCategory
(
primaryVO
);
}
@ApiOperation
(
value
=
"一级分类————编辑"
)
@PostMapping
(
"/updatePrimaryCategory"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
public
ResultBody
updatePrimaryCategory
(
HttpServletRequest
request
,
@RequestBody
@Validated
(
value
=
{
Update
.
class
})
CategoryPrimaryVO
primaryVO
)
{
return
categoryService
.
updatePrimaryCategory
(
primaryVO
);
}
@ApiOperation
(
value
=
"一级分类————删除"
)
@GetMapping
(
"/deletePrimaryCategory"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
public
ResultBody
deletePrimaryCategory
(
HttpServletRequest
request
,
@RequestParam
(
value
=
"id"
,
required
=
true
)
Integer
id
)
{
return
categoryService
.
deletePrimaryCategory
(
id
);
}
@ApiOperation
(
value
=
"一级分类————列表/包含二级分类"
)
@PostMapping
(
"/categoryList"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
public
ResultBody
<
CategoryPrimaryDTO
>
categoryList
(
HttpServletRequest
request
,
@Validated
(
value
=
{
Page
.
class
})
@ApiParam
(
value
=
"角色查询QO"
,
required
=
true
)
@RequestBody
CategoryQO
param
)
{
return
ResultBody
.
success
(
categoryService
.
categoryList
(
param
));
}
@ApiOperation
(
value
=
"二级分类————新增"
)
@PostMapping
(
"/addSubCategory"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
public
ResultBody
addSubCategory
(
HttpServletRequest
request
,
@RequestBody
@Validated
(
value
=
{
Create
.
class
})
CategorySubVO
subVO
)
{
return
categoryService
.
addSubCategory
(
subVO
);
}
@ApiOperation
(
value
=
"二级分类————编辑"
)
@PostMapping
(
"/updateSubCategory"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
public
ResultBody
updateSubCategory
(
HttpServletRequest
request
,
@RequestBody
@Validated
(
value
=
{
Update
.
class
})
CategorySubVO
subVO
)
{
return
categoryService
.
updateSubCategory
(
subVO
);
}
@ApiOperation
(
value
=
"二级分类————删除"
)
@GetMapping
(
"/deleteSubCategory"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
public
ResultBody
deleteSubCategory
(
HttpServletRequest
request
,
@RequestParam
(
value
=
"id"
,
required
=
true
)
Integer
id
)
{
return
categoryService
.
deleteSubCategory
(
id
);
}
@ApiOperation
(
value
=
"二级分类————详情"
)
@GetMapping
(
"/detailSubCategory"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
public
ResultBody
<
CategorySubDTO
>
detailSubCategory
(
HttpServletRequest
request
,
@RequestParam
(
value
=
"id"
,
required
=
true
)
Integer
id
)
{
return
categoryService
.
detailSubCategory
(
id
);
}
@ApiOperation
(
value
=
"一级分类——排序交换"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
@PostMapping
(
"exchange"
)
public
ResultBody
exchangeBannerInfo
(
@Validated
(
Others
.
class
)
@RequestBody
List
<
CategoryPrimaryVO
>
list
)
{
return
categoryService
.
exchange
(
list
);
}
@ApiOperation
(
value
=
"小程序分类信息--含一二级分类"
)
@GetMapping
(
"/appCategoryInfo"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
CategoryPrimaryDTO
.
class
)})
public
ResultBody
<
CategoryPrimaryDTO
>
appCategoryInfo
()
{
return
categoryService
.
appCategoryInfo
();
}
}
src/main/java/com/mmc/pms/controller/mall/AppMallGoodsController.java
0 → 100644
浏览文件 @
317c12fa
package
com
.
mmc
.
pms
.
controller
.
mall
;
import
com.mmc.pms.common.ResultBody
;
import
com.mmc.pms.controller.BaseController
;
import
com.mmc.pms.model.mall.MallGoodsVO
;
import
com.mmc.pms.service.mall.AppMallGoodsService
;
import
com.mmc.pms.service.mall.MallGoodsService
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
io.swagger.annotations.ApiResponse
;
import
io.swagger.annotations.ApiResponses
;
import
org.springframework.web.bind.annotation.*
;
import
javax.annotation.Resource
;
import
java.util.List
;
/**
* @Author LW
* @date 2023/7/26 14:26
* 概要:
*/
@RestController
@RequestMapping
(
"/app/goods"
)
@Api
(
tags
=
{
"V1.0.3-小程序商城商品-相关接口"
})
public
class
AppMallGoodsController
extends
BaseController
{
@Resource
private
MallGoodsService
mallGoodsService
;
@Resource
private
AppMallGoodsService
appMallGoodsService
;
@ApiOperation
(
value
=
"小程序商品详情"
)
@GetMapping
(
"appMallGoodsDetails"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
MallGoodsVO
.
class
)})
public
ResultBody
<
MallGoodsVO
>
appMallGoodsDetails
(
@RequestParam
Integer
id
)
{
return
mallGoodsService
.
mallGoodsDetails
(
id
);
}
@ApiOperation
(
value
=
"查询品牌方的商品"
)
@GetMapping
(
"queryBrandGoods"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
MallGoodsVO
.
class
)})
public
ResultBody
<
MallGoodsVO
>
queryBrandGoods
(
@RequestParam
Integer
userAccountId
)
{
return
appMallGoodsService
.
queryBrandGoods
(
userAccountId
);
}
@ApiOperation
(
value
=
"根据子分类查询商品信息"
)
@PostMapping
(
"queryGoodsInfoByCategorySub"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
MallGoodsVO
.
class
)})
public
ResultBody
<
MallGoodsVO
>
queryGoodsInfoByCategorySub
(
@RequestBody
List
<
Integer
>
categorySubIds
)
{
return
appMallGoodsService
.
queryGoodsInfoByCategorySub
(
categorySubIds
);
}
}
src/main/java/com/mmc/pms/controller/mall/MallGoodsController.java
0 → 100644
浏览文件 @
317c12fa
package
com
.
mmc
.
pms
.
controller
.
mall
;
import
com.mmc.pms.common.ResultBody
;
import
com.mmc.pms.controller.BaseController
;
import
com.mmc.pms.model.mall.MallGoodsVO
;
import
com.mmc.pms.model.sale.dto.SkuUnitDTO
;
import
com.mmc.pms.model.sale.qo.MallGoodsInfoQO
;
import
com.mmc.pms.service.mall.MallGoodsService
;
import
io.swagger.annotations.*
;
import
org.springframework.web.bind.annotation.*
;
import
javax.annotation.Resource
;
import
javax.servlet.http.HttpServletRequest
;
/**
* @Author LW
* @date 2023/7/24 16:56 概要:
*/
@RestController
@RequestMapping
(
"/mall/goods"
)
@Api
(
tags
=
{
"V1.0.3-商城商品-相关接口"
})
public
class
MallGoodsController
extends
BaseController
{
@Resource
private
MallGoodsService
mallGoodsService
;
@ApiOperation
(
value
=
"新增商城商品"
)
@PostMapping
(
"addMallGoods"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
public
ResultBody
addMallGoods
(
@RequestBody
MallGoodsVO
mallGoodsVO
,
HttpServletRequest
request
)
{
return
mallGoodsService
.
addMallGoods
(
mallGoodsVO
,
this
.
getUserLoginInfoFromRedis
(
request
).
getUserAccountId
());
}
@ApiOperation
(
value
=
"商城商品详情"
)
@GetMapping
(
"mallGoodsDetails"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
MallGoodsVO
.
class
)})
public
ResultBody
<
MallGoodsVO
>
mallGoodsDetails
(
@RequestParam
Integer
id
)
{
return
mallGoodsService
.
mallGoodsDetails
(
id
);
}
@ApiOperation
(
value
=
"编辑商城商品"
)
@PostMapping
(
"editMallGoods"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
public
ResultBody
editMallGoods
(
@RequestBody
MallGoodsVO
mallGoodsVO
,
HttpServletRequest
request
)
{
return
mallGoodsService
.
editMallGoods
(
mallGoodsVO
,
this
.
getUserLoginInfoFromRedis
(
request
).
getUserAccountId
());
}
@ApiOperation
(
value
=
"单位信息"
)
@GetMapping
(
"getSkuUnit"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
SkuUnitDTO
.
class
)})
public
ResultBody
getSkuUnit
()
{
return
mallGoodsService
.
getSkuUnit
();
}
@ApiOperation
(
value
=
"商品列表-分页"
)
@PostMapping
(
"listPageGoodsInfo"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
MallGoodsVO
.
class
)})
public
ResultBody
<
MallGoodsVO
>
listPageGoodsInfo
(
@ApiParam
(
"商品查询条件QO"
)
@RequestBody
MallGoodsInfoQO
param
,
HttpServletRequest
request
)
{
return
ResultBody
.
success
(
mallGoodsService
.
listPageGoodsInfo
(
param
,
this
.
getUserLoginInfoFromRedis
(
request
)));
}
@ApiOperation
(
value
=
"商品列表-排序"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
@GetMapping
(
"exchange"
)
public
ResultBody
exchange
(
@ApiParam
(
value
=
"第一个商品id"
,
required
=
true
)
@RequestParam
(
value
=
"firstId"
)
Integer
firstId
,
@ApiParam
(
value
=
"第二个商品id"
,
required
=
true
)
@RequestParam
(
value
=
"secondId"
)
Integer
secondId
)
{
return
mallGoodsService
.
exchange
(
firstId
,
secondId
);
}
@ApiOperation
(
value
=
"商品列表-上架或下架"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
@GetMapping
(
"upOrDownShelf"
)
public
ResultBody
upOrDownShelf
(
@ApiParam
(
value
=
"商品id"
,
required
=
true
)
@RequestParam
(
value
=
"id"
)
Integer
id
,
@ApiParam
(
value
=
"状态 0:下架 1: 上架"
,
required
=
true
)
@RequestParam
(
value
=
"status"
)
Integer
status
)
{
return
mallGoodsService
.
upOrDownShelf
(
id
,
status
);
}
@ApiOperation
(
value
=
"商品列表-删除"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
@GetMapping
(
"removeMallGoods"
)
public
ResultBody
removeMallGoods
(
@ApiParam
(
value
=
"商品id"
,
required
=
true
)
@RequestParam
(
value
=
"id"
)
Integer
id
)
{
return
mallGoodsService
.
removeMallGoods
(
id
);
}
@ApiOperation
(
value
=
"删除用户时对应的商品也删除"
,
hidden
=
true
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
@GetMapping
(
"feignRemoveGoodsByBackUserAccountId"
)
public
ResultBody
feignRemoveGoodsByUserAccountId
(
@RequestParam
(
value
=
"id"
)
Integer
id
)
{
return
mallGoodsService
.
feignRemoveGoodsByBackUserAccountId
(
id
);
}
}
src/main/java/com/mmc/pms/dao/GoodsInfoDao.java
浏览文件 @
317c12fa
...
...
@@ -18,102 +18,102 @@ import java.util.Set;
@Mapper
public
interface
GoodsInfoDao
{
int
countGoodsInfoByName
(
GoodsAddVO
goodsAddVO
);
int
countGoodsInfoByName
(
GoodsAddVO
goodsAddVO
);
void
insertGoodsInfo
(
GoodsInfo
goodsInfo
);
void
insertGoodsInfo
(
GoodsInfo
goodsInfo
);
int
countGoodsInfo
();
int
countGoodsInfo
();
void
insertGoodsImgInfo
(
List
<
GoodsImgDO
>
list
);
void
insertGoodsImgInfo
(
List
<
GoodsImgDO
>
list
);
void
insertVideoInfo
(
GoodsVideoDO
goodsVideoDO
);
void
insertVideoInfo
(
GoodsVideoDO
goodsVideoDO
);
void
insertGoodsDetail
(
GoodsDetailDO
goodsDetailDO
);
void
insertGoodsDetail
(
GoodsDetailDO
goodsDetailDO
);
void
insertGoodsService
(
List
<
GoodsServiceDO
>
otherList
);
void
insertGoodsService
(
List
<
GoodsServiceDO
>
otherList
);
int
countGoodsInfoById
(
Integer
id
);
int
countGoodsInfoById
(
Integer
id
);
void
updateGoodsInfo
(
GoodsInfo
goodsInfo
);
void
updateGoodsInfo
(
GoodsInfo
goodsInfo
);
void
updateGoodsDetail
(
GoodsDetailDO
goodsDetailDO
);
void
updateGoodsDetail
(
GoodsDetailDO
goodsDetailDO
);
List
<
GoodsImgDO
>
listGoodsInfoByGoodsId
(
Integer
id
);
List
<
GoodsImgDO
>
listGoodsInfoByGoodsId
(
Integer
id
);
void
deleteImgByIds
(
List
<
Integer
>
deleteIds
);
void
deleteImgByIds
(
List
<
Integer
>
deleteIds
);
void
deleteGoodsVideoById
(
Integer
id
);
void
deleteGoodsVideoById
(
Integer
id
);
void
deleteGoodsServiceByGoodsId
(
Integer
id
);
void
deleteGoodsServiceByGoodsId
(
Integer
id
);
void
insertMallIndustrySkuInfo
(
MallIndustrySkuInfoDO
mallIndustrySkuInfoDO
);
void
insertMallIndustrySkuInfo
(
MallIndustrySkuInfoDO
mallIndustrySkuInfoDO
);
void
insertMallIndustrySkuInfoSpec
(
MallIndustrySkuInfoSpecDO
mallIndustrySkuInfoSpecDO
);
void
insertMallIndustrySkuInfoSpec
(
MallIndustrySkuInfoSpecDO
mallIndustrySkuInfoSpecDO
);
List
<
MallProdInfoDO
>
getMallProSkuInfo
(
Integer
id
);
List
<
MallProdInfoDO
>
getMallProSkuInfo
(
Integer
id
);
void
batchUpdateMallProductSku
(
List
<
Integer
>
delIds
);
void
batchUpdateMallProductSku
(
List
<
Integer
>
delIds
);
void
batchUpdateMallProdSkuInfo
(
List
<
MallProdInfoDO
>
list
);
void
batchUpdateMallProdSkuInfo
(
List
<
MallProdInfoDO
>
list
);
List
<
MallIndustrySkuInfoDO
>
getMallIndustrySkuInfo
(
Integer
id
);
List
<
MallIndustrySkuInfoDO
>
getMallIndustrySkuInfo
(
Integer
id
);
GoodsInfo
getGoodsSimpleInfo
(
Integer
goodsInfoId
);
GoodsInfo
getGoodsSimpleInfo
(
Integer
goodsInfoId
);
GoodsDetailDO
getGoodsDetailByGoodsId
(
Integer
goodsInfoId
);
GoodsDetailDO
getGoodsDetailByGoodsId
(
Integer
goodsInfoId
);
List
<
GoodsServiceDO
>
listGoodsServiceByGoodsId
(
Integer
goodsInfoId
);
List
<
GoodsServiceDO
>
listGoodsServiceByGoodsId
(
Integer
goodsInfoId
);
List
<
SkuUnitDO
>
getSkuUnit
();
List
<
SkuUnitDO
>
getSkuUnit
();
List
<
GoodsInfo
>
listSimpleGoodsInfoByIds
(
@Param
(
"ids"
)
Set
<
Integer
>
ids
);
List
<
GoodsInfo
>
listSimpleGoodsInfoByIds
(
@Param
(
"ids"
)
Set
<
Integer
>
ids
);
void
insertMallProdSkuInfoSpec
(
MallProdSkuInfoSpecDO
mallProdSkuInfoSpecDO
);
void
insertMallProdSkuInfoSpec
(
MallProdSkuInfoSpecDO
mallProdSkuInfoSpecDO
);
void
batchUpdateMallProSpec
(
@Param
(
"list"
)
List
<
Integer
>
list
,
@Param
(
"id"
)
Integer
id
);
void
batchUpdateMallProSpec
(
@Param
(
"list"
)
List
<
Integer
>
list
,
@Param
(
"id"
)
Integer
id
);
List
<
MallProdSkuInfoSpecDO
>
listMallProdSpecInfo
(
List
<
Integer
>
mallSkuIds
);
List
<
MallProdSkuInfoSpecDO
>
listMallProdSpecInfo
(
List
<
Integer
>
mallSkuIds
);
void
batchUpdateMallProdSpec
(
List
<
Integer
>
delSpecId
);
void
batchUpdateMallProdSpec
(
List
<
Integer
>
delSpecId
);
List
<
MallGoodsSpecInfoDO
>
listProdSpecInfo
(
@Param
(
"prodIds"
)
Set
<
Integer
>
prodIds
);
List
<
MallGoodsSpecInfoDO
>
listProdSpecInfo
(
@Param
(
"prodIds"
)
Set
<
Integer
>
prodIds
);
List
<
MallGoodsSpecInfoDO
>
listIndstSpecInfo
(
@Param
(
"indstIds"
)
Set
<
Integer
>
indstIds
);
List
<
MallGoodsSpecInfoDO
>
listIndstSpecInfo
(
@Param
(
"indstIds"
)
Set
<
Integer
>
indstIds
);
List
<
GoodsServiceDO
>
listGoodsService
(
List
<
Integer
>
goodsIds
);
List
<
GoodsServiceDO
>
listGoodsService
(
List
<
Integer
>
goodsIds
);
List
<
MallGoodsInfoSimpleDO
>
listMallGoodsIndstSimpleInfo
(
@Param
(
"indstSkuSpecIds"
)
Set
<
Integer
>
indstSkuSpecIds
);
List
<
MallGoodsInfoSimpleDO
>
listMallGoodsIndstSimpleInfo
(
@Param
(
"indstSkuSpecIds"
)
Set
<
Integer
>
indstSkuSpecIds
);
List
<
Integer
>
listIndustrySpecIds
(
Set
<
Integer
>
mallIndstSkuSpecIds
);
List
<
Integer
>
listIndustrySpecIds
(
Set
<
Integer
>
mallIndstSkuSpecIds
);
List
<
MallGoodsProductDO
>
listIndustryProductList
(
List
<
Integer
>
industrySpecIds
);
List
<
MallGoodsProductDO
>
listIndustryProductList
(
List
<
Integer
>
industrySpecIds
);
List
<
GoodsInfo
>
ListGoodsInfoByCategoryId
(
Integer
pageNo
,
Integer
pageSize
,
Integer
id
,
int
type
);
List
<
GoodsInfo
>
ListGoodsInfoByCategoryId
(
Integer
pageNo
,
Integer
pageSize
,
Integer
id
,
int
type
);
List
<
MallProdSkuInfoSpecDO
>
getMallProSkuInfoSpec
(
Integer
goodsInfoId
);
List
<
MallProdSkuInfoSpecDO
>
getMallProSkuInfoSpec
(
Integer
goodsInfoId
);
List
<
MallProdSkuInfoSpecDO
>
listMallprodSpecById
(
List
<
Integer
>
goodsIds
);
List
<
MallProdSkuInfoSpecDO
>
listMallprodSpecById
(
List
<
Integer
>
goodsIds
);
List
<
SaleServiceDO
>
listSaleServiceInfo
();
List
<
SaleServiceDO
>
listSaleServiceInfo
();
int
countListGoodsInfo
(
MallGoodsQO
param
);
int
countListGoodsInfo
(
MallGoodsQO
param
);
List
<
GoodsInfo
>
listGoodsInfo
(
MallGoodsQO
param
);
List
<
GoodsInfo
>
listGoodsInfo
(
MallGoodsQO
param
);
void
batchUpOrDownWare
(
@Param
(
"ids"
)
List
<
Integer
>
ids
,
@Param
(
"status"
)
Integer
status
);
void
batchUpOrDownWare
(
@Param
(
"ids"
)
List
<
Integer
>
ids
,
@Param
(
"status"
)
Integer
status
);
void
removeWareInfo
(
List
<
Integer
>
ids
);
void
removeWareInfo
(
List
<
Integer
>
ids
);
List
<
SpecPriceVO
>
getPriceBySpecId
(
Integer
productSpecId
,
Integer
leaseTerm
);
List
<
SpecPriceVO
>
getPriceBySpecId
(
Integer
productSpecId
,
Integer
leaseTerm
);
int
countGoodsInfoByCategoryId
(
Integer
id
);
int
countGoodsInfoByCategoryId
(
Integer
id
);
void
updateMallProdSkuInfo
(
MallProdInfoDO
mallProdInfoDO
);
void
updateMallProdSkuInfo
(
MallProdInfoDO
mallProdInfoDO
);
List
<
MallProdInfoDO
>
getAllMallProSkuInfo
(
Integer
goodsInfoId
);
List
<
MallProdInfoDO
>
getAllMallProSkuInfo
(
Integer
goodsInfoId
);
int
updateGoodsInfoSort
(
Integer
id
,
Integer
sort
);
int
updateGoodsInfoSort
(
Integer
id
,
Integer
sort
);
int
countServiceByCategoryId
(
Integer
id
);
int
countServiceByCategoryId
(
Integer
id
);
}
src/main/java/com/mmc/pms/dao/category/CategoryDao.java
0 → 100644
浏览文件 @
317c12fa
package
com
.
mmc
.
pms
.
dao
.
category
;
import
com.mmc.pms.entity.ServiceDO
;
import
com.mmc.pms.entity.category.CategoryPrimaryDO
;
import
com.mmc.pms.entity.category.CategorySubDO
;
import
com.mmc.pms.model.category.qo.CategoryQO
;
import
org.apache.ibatis.annotations.Mapper
;
import
java.util.List
;
/**
* @Author small
* @Date 2023/7/21 10:20
* @Version 1.0
*/
@Mapper
public
interface
CategoryDao
{
int
getCountName
(
String
name
);
void
addPrimaryCategory
(
CategoryPrimaryDO
primaryDO
);
void
updateSort
(
Integer
id
);
void
deletePrimaryCategory
(
Integer
id
);
Integer
categoryCount
(
CategoryPrimaryDO
primaryDO
);
void
updatePrimaryCategory
(
CategoryPrimaryDO
primaryDO
);
int
getCountSubName
(
String
name
,
Integer
categoryPrimaryId
);
void
addSubCategory
(
CategorySubDO
subDO
);
Integer
categorySubCount
(
CategorySubDO
subDO
);
void
updateSubCategory
(
CategorySubDO
subDO
);
void
deleteSubCategory
(
Integer
id
);
CategorySubDO
detailSubCategory
(
Integer
id
);
List
<
CategoryPrimaryDO
>
categoryList
(
CategoryQO
param
);
List
<
CategorySubDO
>
selectSubList
(
Integer
id
);
int
categoryListCount
(
CategoryQO
param
);
void
exchange
(
ServiceDO
serviceDO
);
List
<
CategoryPrimaryDO
>
selectPrimaryList
();
List
<
CategorySubDO
>
selectCategorySubList
(
List
<
Integer
>
ids
);
Integer
selectSubMallGoods
(
Integer
id
);
Integer
selectPrimary
(
Integer
id
);
}
src/main/java/com/mmc/pms/dao/mall/AppMallGoodsDao.java
0 → 100644
浏览文件 @
317c12fa
package
com
.
mmc
.
pms
.
dao
.
mall
;
import
com.mmc.pms.entity.mall.MallGoodsDO
;
import
org.apache.ibatis.annotations.Mapper
;
import
org.apache.ibatis.annotations.Param
;
import
java.util.List
;
/**
* @Author LW
* @date 2023/7/26 14:57
* 概要:
*/
@Mapper
public
interface
AppMallGoodsDao
{
List
<
MallGoodsDO
>
queryGoodsInfo
(
@Param
(
"userAccountId"
)
Integer
userAccountId
,
@Param
(
"categorySubIds"
)
List
<
Integer
>
categorySubIds
);
}
src/main/java/com/mmc/pms/dao/mall/MallGoodsDao.java
0 → 100644
浏览文件 @
317c12fa
package
com
.
mmc
.
pms
.
dao
.
mall
;
import
com.mmc.pms.entity.SkuUnitDO
;
import
com.mmc.pms.entity.mall.GoodsSpecDO
;
import
com.mmc.pms.entity.mall.GoodsSpecValuesDO
;
import
com.mmc.pms.entity.mall.MallGoodsDO
;
import
com.mmc.pms.entity.mall.MallGoodsResourcesDO
;
import
com.mmc.pms.model.mall.MallGoodsVO
;
import
com.mmc.pms.model.sale.qo.MallGoodsInfoQO
;
import
org.apache.ibatis.annotations.Mapper
;
import
org.apache.ibatis.annotations.Param
;
import
java.util.List
;
/**
* @Author LW
* @date 2023/7/24 17:38 概要:
*/
@Mapper
public
interface
MallGoodsDao
{
int
countMallGoodsByName
(
@Param
(
"mallGoodsVO"
)
MallGoodsVO
mallGoodsVO
,
@Param
(
"userAccountId"
)
Integer
userAccountId
);
int
countMallGoods
(
Integer
userAccountId
);
void
insertMallGoodsBaseInfo
(
MallGoodsDO
mallGoodsDO
);
void
insertGoodsSpec
(
GoodsSpecDO
goodsSpecDO
);
void
batchInsertSpecValues
(
List
<
GoodsSpecValuesDO
>
goodsSpecValuesList
);
void
batchInsertMallGoodsResources
(
List
<
MallGoodsResourcesDO
>
mallGoodsResourcesList
);
MallGoodsDO
getMallGoodsBaseInfo
(
Integer
id
);
List
<
MallGoodsResourcesDO
>
getMallGoodsResources
(
Integer
id
);
List
<
GoodsSpecDO
>
getMallGoodsSpec
(
Integer
id
);
List
<
GoodsSpecValuesDO
>
getMallGoodsSpecValues
(
List
<
Integer
>
ids
);
void
updateMallGoods
(
@Param
(
"mallGoodsDO"
)
MallGoodsDO
mallGoodsDO
);
void
deleteMallGoodsResources
(
Integer
id
);
void
deleteGoodsSpec
(
List
<
Integer
>
deleteSpec
);
void
updateGoodsSpec
(
GoodsSpecDO
goodsSpecDO
);
void
deleteGoodsSpecValues
(
List
<
Integer
>
deleteSpecValueId
);
void
updateGoodsSpecValue
(
GoodsSpecValuesDO
goodsSpecValuesDO
);
List
<
SkuUnitDO
>
getSkuUnit
();
int
countListMallGoods
(
MallGoodsInfoQO
param
);
List
<
MallGoodsDO
>
listMallGoods
(
MallGoodsInfoQO
param
);
int
updateMallGoodsSort
(
Integer
id
,
Integer
sort
);
void
updateMallGoodsByShelf
(
Integer
id
,
Integer
status
);
void
removeMallGoods
(
Integer
id
);
void
feignRemoveGoodsByBackUserAccountId
(
Integer
id
);
}
src/main/java/com/mmc/pms/entity/category/CategoryPrimaryDO.java
0 → 100644
浏览文件 @
317c12fa
package
com
.
mmc
.
pms
.
entity
.
category
;
import
com.baomidou.mybatisplus.annotation.IdType
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
com.mmc.pms.model.category.dto.CategoryPrimaryDTO
;
import
com.mmc.pms.model.category.vo.CategoryPrimaryVO
;
import
com.mmc.pms.model.group.Create
;
import
com.mmc.pms.model.group.Update
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Builder
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
org.springframework.format.annotation.DateTimeFormat
;
import
javax.validation.constraints.Min
;
import
javax.validation.constraints.NotBlank
;
import
javax.validation.constraints.NotNull
;
import
javax.validation.constraints.Size
;
import
java.util.Date
;
import
java.util.List
;
/**
* @Author small
* @Date 2023/7/21 10:15
* @Version 1.0
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
public
class
CategoryPrimaryDO
{
@ApiModelProperty
(
value
=
"id"
)
@NotNull
(
message
=
"id不能为空"
,
groups
=
{
Update
.
class
})
@Min
(
value
=
1
,
groups
=
{
Update
.
class
})
@TableId
(
type
=
IdType
.
AUTO
)
private
Integer
id
;
@ApiModelProperty
(
value
=
"分类名称"
,
required
=
true
,
example
=
"无人机"
)
@Size
(
max
=
15
,
message
=
"分类名称不能超过15个字"
,
groups
=
{
Update
.
class
,
Create
.
class
})
@NotBlank
(
message
=
"分类名称不能为空或空字符"
,
groups
=
{
Update
.
class
,
Create
.
class
})
private
String
name
;
@ApiModelProperty
(
value
=
"描述"
)
@Size
(
max
=
70
,
message
=
"分类描述不能超过70个字"
,
groups
=
{
Update
.
class
,
Create
.
class
})
private
String
description
;
@ApiModelProperty
(
value
=
"icon图标"
)
private
String
icon
;
@DateTimeFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
@ApiModelProperty
(
value
=
"创建时间"
,
example
=
"2023-07-14 10:13:12"
,
required
=
true
)
private
Date
createTime
;
@DateTimeFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
@ApiModelProperty
(
value
=
"更新时间"
,
example
=
"2023-07-14 10:13:12"
,
required
=
true
)
private
Date
updateTime
;
@ApiModelProperty
(
value
=
"子分类"
)
private
List
<
CategorySubDO
>
subDOList
;
@ApiModelProperty
(
value
=
"顺序"
)
private
Integer
sort
;
public
CategoryPrimaryDO
(
CategoryPrimaryVO
primaryVO
)
{
this
.
id
=
primaryVO
.
getId
();
this
.
name
=
primaryVO
.
getName
();
this
.
description
=
primaryVO
.
getDescription
();
this
.
icon
=
primaryVO
.
getIcon
();
}
public
CategoryPrimaryDTO
buildCategoryPrimaryDTO
()
{
return
CategoryPrimaryDTO
.
builder
()
.
id
(
this
.
id
)
.
name
(
this
.
name
)
.
description
(
this
.
description
)
.
icon
(
this
.
icon
)
.
createTime
(
this
.
createTime
)
.
updateTime
(
this
.
updateTime
)
.
subDTOList
(
this
.
subDOList
)
.
sort
(
this
.
sort
)
.
build
();
}
}
src/main/java/com/mmc/pms/entity/category/CategorySubDO.java
0 → 100644
浏览文件 @
317c12fa
package
com
.
mmc
.
pms
.
entity
.
category
;
import
com.baomidou.mybatisplus.annotation.IdType
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
com.mmc.pms.model.category.dto.CategorySubDTO
;
import
com.mmc.pms.model.category.vo.CategorySubVO
;
import
com.mmc.pms.model.group.Create
;
import
com.mmc.pms.model.group.Update
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Builder
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
org.springframework.format.annotation.DateTimeFormat
;
import
javax.validation.constraints.Min
;
import
javax.validation.constraints.NotBlank
;
import
javax.validation.constraints.NotNull
;
import
javax.validation.constraints.Size
;
import
java.util.Date
;
/**
* @Author small
* @Date 2023/7/21 10:16
* @Version 1.0
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
public
class
CategorySubDO
{
@ApiModelProperty
(
value
=
"id"
)
@NotNull
(
message
=
"id不能为空"
,
groups
=
{
Update
.
class
})
@Min
(
value
=
1
,
groups
=
{
Update
.
class
})
@TableId
(
type
=
IdType
.
AUTO
)
private
Integer
id
;
@ApiModelProperty
(
value
=
"分类名称"
,
required
=
true
,
example
=
"无人机"
)
@Size
(
max
=
15
,
message
=
"分类名称不能超过15个字"
,
groups
=
{
Update
.
class
,
Create
.
class
})
@NotBlank
(
message
=
"分类名称不能为空或空字符"
,
groups
=
{
Update
.
class
,
Create
.
class
})
private
String
name
;
@ApiModelProperty
(
value
=
"描述"
)
@Size
(
max
=
70
,
message
=
"分类描述不能超过70个字"
,
groups
=
{
Update
.
class
,
Create
.
class
})
private
String
description
;
@ApiModelProperty
(
value
=
"一级id不能为空"
,
required
=
true
,
example
=
"1"
)
@NotNull
(
message
=
"一级id不能为空"
,
groups
=
{
Update
.
class
,
Create
.
class
})
private
Integer
categoryPrimaryId
;
@DateTimeFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
@ApiModelProperty
(
value
=
"创建时间"
,
example
=
"2023-07-14 10:13:12"
,
required
=
true
)
private
Date
createTime
;
@DateTimeFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
@ApiModelProperty
(
value
=
"更新时间"
,
example
=
"2023-07-14 10:13:12"
,
required
=
true
)
private
Date
updateTime
;
public
CategorySubDO
(
CategorySubVO
subVO
)
{
this
.
id
=
subVO
.
getId
();
this
.
name
=
subVO
.
getName
();
this
.
description
=
subVO
.
getDescription
();
this
.
categoryPrimaryId
=
subVO
.
getCategoryPrimaryId
();
}
public
CategorySubDTO
buildCategorySubDTO
()
{
return
CategorySubDTO
.
builder
()
.
id
(
this
.
id
)
.
name
(
this
.
name
)
.
description
(
this
.
description
)
.
categoryPrimaryId
(
this
.
categoryPrimaryId
)
.
createTime
(
this
.
createTime
)
.
updateTime
(
this
.
updateTime
)
.
build
();
}
}
src/main/java/com/mmc/pms/entity/mall/GoodsSpecDO.java
0 → 100644
浏览文件 @
317c12fa
package
com
.
mmc
.
pms
.
entity
.
mall
;
import
com.mmc.pms.model.mall.GoodsSpecVO
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
java.io.Serializable
;
import
java.util.Date
;
/**
* (GoodsSpecDO)实体类
*
* @author makejava
* @since 2023-07-24 21:16:41
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public
class
GoodsSpecDO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
381669128695968475L
;
private
Integer
id
;
/**
* 商品id
*/
private
Integer
mallGoodsId
;
/**
* 规格名称
*/
private
String
specName
;
/**
* 0单选,1多选
*/
private
Integer
chooseType
;
/**
* 0 非必选 1 必选
*/
private
Integer
must
;
/**
* 单位id
*/
private
Integer
skuUnitId
;
private
Date
createTime
;
private
Date
updateTime
;
public
GoodsSpecDO
(
GoodsSpecVO
goodsSpecVO
)
{
this
.
id
=
goodsSpecVO
.
getId
();
this
.
mallGoodsId
=
goodsSpecVO
.
getMallGoodsId
();
this
.
specName
=
goodsSpecVO
.
getSpecName
();
this
.
chooseType
=
goodsSpecVO
.
getChooseType
();
this
.
must
=
goodsSpecVO
.
getMust
();
this
.
skuUnitId
=
goodsSpecVO
.
getSkuUnitId
();
}
public
GoodsSpecVO
buildGoodsSpecVO
()
{
return
GoodsSpecVO
.
builder
().
id
(
id
).
mallGoodsId
(
mallGoodsId
).
specName
(
specName
)
.
chooseType
(
chooseType
).
must
(
must
).
skuUnitId
(
skuUnitId
).
build
();
}
}
src/main/java/com/mmc/pms/entity/mall/GoodsSpecValuesDO.java
0 → 100644
浏览文件 @
317c12fa
package
com
.
mmc
.
pms
.
entity
.
mall
;
import
com.mmc.pms.model.mall.GoodsSpecValuesVO
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
java.io.Serializable
;
import
java.math.BigDecimal
;
import
java.util.Date
;
/**
* (GoodsSpecValuesDO)实体类
*
* @author makejava
* @since 2023-07-24 21:18:28
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public
class
GoodsSpecValuesDO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
-
35192084826222973L
;
private
Integer
id
;
/**
* 规格id
*/
private
Integer
goodsSpecId
;
/**
* 选项名称
*/
private
String
specValueName
;
/**
* 料号
*/
private
String
partNo
;
/**
* 规格图片
*/
private
String
specValueImage
;
/**
* 销售价是否显示 0:否 1:是
*/
private
Integer
showPrice
;
/**
* 库存
*/
private
Integer
stock
;
/**
* 销售价格
*/
private
BigDecimal
salePrice
;
/**
* 渠道价格
*/
private
BigDecimal
channelPrice
;
private
Date
createTime
;
private
Date
updateTime
;
public
GoodsSpecValuesDO
(
GoodsSpecValuesVO
d
)
{
this
.
id
=
d
.
getId
();
this
.
goodsSpecId
=
d
.
getGoodsSpecId
();
this
.
specValueName
=
d
.
getSpecValueName
();
this
.
partNo
=
d
.
getPartNo
();
this
.
specValueImage
=
d
.
getSpecValueImage
();
this
.
showPrice
=
d
.
getShowPrice
();
this
.
channelPrice
=
d
.
getChannelPrice
();
this
.
salePrice
=
d
.
getSalePrice
();
this
.
stock
=
d
.
getStock
();
}
public
GoodsSpecValuesVO
buildGoodsSpecValuesVO
()
{
return
GoodsSpecValuesVO
.
builder
().
id
(
id
).
goodsSpecId
(
goodsSpecId
)
.
specValueName
(
specValueName
).
specValueImage
(
specValueImage
)
.
partNo
(
partNo
).
showPrice
(
showPrice
).
stock
(
stock
)
.
salePrice
(
salePrice
).
channelPrice
(
channelPrice
).
build
();
}
}
src/main/java/com/mmc/pms/entity/mall/MallGoodsDO.java
0 → 100644
浏览文件 @
317c12fa
package
com
.
mmc
.
pms
.
entity
.
mall
;
import
com.mmc.pms.model.mall.GoodsResourcesVO
;
import
com.mmc.pms.model.mall.MallGoodsVO
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
java.io.Serializable
;
import
java.util.ArrayList
;
import
java.util.Date
;
import
java.util.List
;
/**
* 商品基本信息(MallGoodsDO)实体类
*
* @author makejava
* @since 2023-07-24 21:10:02
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public
class
MallGoodsDO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
709941898403563905L
;
private
Integer
id
;
/**
* 商品编号(ID12345678)
*/
private
String
goodsNo
;
/**
* 商品名称
*/
private
String
tradeName
;
/**
* 商品描述
*/
private
String
description
;
/**
* 商品一级分类
*/
private
Integer
categoryPrimaryId
;
/**
* 商品二级分类
*/
private
Integer
categorySubId
;
/**
* 状态:0: 下架 1:上架
*/
private
Integer
shelfStatus
;
/**
* 商品标签
*/
private
String
goodsLabel
;
/**
* 标签是否显示0:否1:是
*/
private
Integer
labelShow
;
/**
* 商品详情图 富文本
*/
private
String
goodsDetails
;
/**
* 创建商品用户id
*/
private
Integer
userAccountId
;
/**
* 排序字段
*/
private
Integer
sort
;
private
Date
createTime
;
private
Date
updateTime
;
private
Integer
deleted
;
private
String
url
;
private
Integer
type
;
private
Integer
imgId
;
public
MallGoodsDO
(
MallGoodsVO
mallGoodsVO
)
{
this
.
id
=
mallGoodsVO
.
getId
();
this
.
tradeName
=
mallGoodsVO
.
getTradeName
();
this
.
description
=
mallGoodsVO
.
getDescription
();
this
.
categoryPrimaryId
=
mallGoodsVO
.
getCategoryPrimaryId
();
this
.
categorySubId
=
mallGoodsVO
.
getCategorySubId
();
this
.
shelfStatus
=
mallGoodsVO
.
getShelfStatus
();
this
.
goodsLabel
=
mallGoodsVO
.
getGoodsLabel
();
this
.
labelShow
=
mallGoodsVO
.
getLabelShow
();
this
.
goodsDetails
=
mallGoodsVO
.
getGoodsDetails
();
}
public
MallGoodsVO
buildMallGoodsVO
()
{
return
MallGoodsVO
.
builder
().
id
(
id
).
userAccountId
(
userAccountId
).
tradeName
(
tradeName
).
description
(
description
)
.
categoryPrimaryId
(
categoryPrimaryId
).
categorySubId
(
categorySubId
).
shelfStatus
(
shelfStatus
)
.
goodsLabel
(
goodsLabel
).
labelShow
(
labelShow
).
goodsDetails
(
goodsDetails
).
build
();
}
public
MallGoodsVO
buildListMallGoodsVO
()
{
List
<
GoodsResourcesVO
>
resourcesList
=
new
ArrayList
<>();
GoodsResourcesVO
goodsResourcesVO
=
new
GoodsResourcesVO
();
goodsResourcesVO
.
setId
(
imgId
);
goodsResourcesVO
.
setUrl
(
url
);
goodsResourcesVO
.
setType
(
type
);
resourcesList
.
add
(
goodsResourcesVO
);
return
MallGoodsVO
.
builder
().
id
(
id
).
userAccountId
(
userAccountId
).
tradeName
(
tradeName
).
resourcesList
(
resourcesList
)
.
categoryPrimaryId
(
categoryPrimaryId
).
labelShow
(
labelShow
).
goodsLabel
(
goodsLabel
).
categorySubId
(
categorySubId
)
.
shelfStatus
(
shelfStatus
).
createTime
(
createTime
).
description
(
description
).
build
();
}
}
src/main/java/com/mmc/pms/entity/mall/MallGoodsResourcesDO.java
0 → 100644
浏览文件 @
317c12fa
package
com
.
mmc
.
pms
.
entity
.
mall
;
import
com.mmc.pms.model.mall.GoodsResourcesVO
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
java.io.Serializable
;
import
java.util.Date
;
/**
* (MallGoodsResourcesDO)实体类
*
* @author makejava
* @since 2023-07-24 21:13:15
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public
class
MallGoodsResourcesDO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
-
98370711703270379L
;
private
Integer
id
;
private
Integer
mallGoodsId
;
/**
* 资源url
*/
private
String
url
;
/**
* 类型:0主图 1副图 2视频
*/
private
Integer
type
;
private
Date
createTime
;
private
Date
updateTime
;
public
MallGoodsResourcesDO
(
GoodsResourcesVO
d
)
{
this
.
type
=
d
.
getType
();
this
.
id
=
d
.
getId
();
this
.
url
=
d
.
getUrl
();
}
public
GoodsResourcesVO
buildGoodsResourcesVO
()
{
return
GoodsResourcesVO
.
builder
().
id
(
id
).
url
(
url
).
type
(
type
).
build
();
}
}
src/main/java/com/mmc/pms/model/category/dto/CategoryPrimaryDTO.java
0 → 100644
浏览文件 @
317c12fa
package
com
.
mmc
.
pms
.
model
.
category
.
dto
;
import
com.mmc.pms.entity.category.CategorySubDO
;
import
com.mmc.pms.model.group.Create
;
import
com.mmc.pms.model.group.Update
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Builder
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
org.springframework.format.annotation.DateTimeFormat
;
import
javax.validation.constraints.Min
;
import
javax.validation.constraints.NotBlank
;
import
javax.validation.constraints.NotNull
;
import
javax.validation.constraints.Size
;
import
java.util.Date
;
import
java.util.List
;
/**
* @Author small
* @Date 2023/7/20 16:35
* @Version 1.0
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
public
class
CategoryPrimaryDTO
{
@ApiModelProperty
(
value
=
"id"
)
@NotNull
(
message
=
"id不能为空"
,
groups
=
{
Update
.
class
})
@Min
(
value
=
1
,
groups
=
{
Update
.
class
})
private
Integer
id
;
@ApiModelProperty
(
value
=
"分类名称"
,
required
=
true
,
example
=
"无人机"
)
@Size
(
max
=
15
,
message
=
"分类名称不能超过15个字"
,
groups
=
{
Update
.
class
,
Create
.
class
})
@NotBlank
(
message
=
"分类名称不能为空或空字符"
,
groups
=
{
Update
.
class
,
Create
.
class
})
private
String
name
;
@ApiModelProperty
(
value
=
"描述"
)
@Size
(
max
=
70
,
message
=
"分类描述不能超过70个字"
,
groups
=
{
Update
.
class
,
Create
.
class
})
private
String
description
;
@ApiModelProperty
(
value
=
"icon图标"
)
private
String
icon
;
@DateTimeFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
@ApiModelProperty
(
value
=
"创建时间"
,
example
=
"2023-07-14 10:13:12"
,
required
=
true
)
private
Date
createTime
;
@DateTimeFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
@ApiModelProperty
(
value
=
"更新时间"
,
example
=
"2023-07-14 10:13:12"
,
required
=
true
)
private
Date
updateTime
;
@ApiModelProperty
(
value
=
"二级分类"
)
private
List
<
CategorySubDO
>
subDTOList
;
@ApiModelProperty
(
value
=
"顺序"
)
private
Integer
sort
;
}
src/main/java/com/mmc/pms/model/category/dto/CategorySubDTO.java
0 → 100644
浏览文件 @
317c12fa
package
com
.
mmc
.
pms
.
model
.
category
.
dto
;
import
com.mmc.pms.model.group.Create
;
import
com.mmc.pms.model.group.Update
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Builder
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
org.springframework.format.annotation.DateTimeFormat
;
import
javax.validation.constraints.Min
;
import
javax.validation.constraints.NotBlank
;
import
javax.validation.constraints.NotNull
;
import
javax.validation.constraints.Size
;
import
java.util.Date
;
/**
* @Author small
* @Date 2023/7/21 10:10
* @Version 1.0
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
public
class
CategorySubDTO
{
@ApiModelProperty
(
value
=
"id"
)
@NotNull
(
message
=
"id不能为空"
,
groups
=
{
Update
.
class
})
@Min
(
value
=
1
,
groups
=
{
Update
.
class
})
private
Integer
id
;
@ApiModelProperty
(
value
=
"分类名称"
,
required
=
true
,
example
=
"无人机"
)
@Size
(
max
=
15
,
message
=
"分类名称不能超过15个字"
,
groups
=
{
Update
.
class
,
Create
.
class
})
@NotBlank
(
message
=
"分类名称不能为空或空字符"
,
groups
=
{
Update
.
class
,
Create
.
class
})
private
String
name
;
@ApiModelProperty
(
value
=
"描述"
)
@Size
(
max
=
70
,
message
=
"分类描述不能超过70个字"
,
groups
=
{
Update
.
class
,
Create
.
class
})
private
String
description
;
@ApiModelProperty
(
value
=
"一级id不能为空"
,
required
=
true
,
example
=
"1"
)
@NotNull
(
message
=
"一级id不能为空"
,
groups
=
{
Update
.
class
,
Create
.
class
})
private
Integer
categoryPrimaryId
;
@DateTimeFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
@ApiModelProperty
(
value
=
"创建时间"
,
example
=
"2023-07-14 10:13:12"
,
required
=
true
)
private
Date
createTime
;
@DateTimeFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
@ApiModelProperty
(
value
=
"更新时间"
,
example
=
"2023-07-14 10:13:12"
,
required
=
true
)
private
Date
updateTime
;
}
src/main/java/com/mmc/pms/model/category/qo/CategoryQO.java
0 → 100644
浏览文件 @
317c12fa
package
com
.
mmc
.
pms
.
model
.
category
.
qo
;
import
com.mmc.pms.common.Page
;
import
com.mmc.pms.model.group.Freeze
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
javax.validation.constraints.Min
;
import
javax.validation.constraints.NotNull
;
/**
* @Author small
* @Date 2023/7/21 15:22
* @Version 1.0
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public
class
CategoryQO
{
private
static
final
long
serialVersionUID
=
-
3729786590325257669L
;
@ApiModelProperty
(
value
=
"一级分类id"
,
required
=
false
,
example
=
"1"
)
private
Integer
id
;
@ApiModelProperty
(
value
=
"当前页"
,
required
=
true
,
example
=
"1"
)
@NotNull
(
message
=
"当前页不能为空"
,
groups
=
{
Page
.
class
,
Freeze
.
class
})
@Min
(
value
=
1
,
groups
=
Page
.
class
)
private
Integer
pageNo
;
@ApiModelProperty
(
value
=
"页大小"
,
required
=
true
,
example
=
"10"
)
@NotNull
(
message
=
"页大小不能为空"
,
groups
=
{
Page
.
class
,
Freeze
.
class
})
@Min
(
value
=
1
,
groups
=
Page
.
class
)
private
Integer
pageSize
;
public
void
buildCurrentPage
()
{
this
.
pageNo
=
(
pageNo
-
1
)
*
pageSize
;
}
}
src/main/java/com/mmc/pms/model/category/vo/CategoryPrimaryVO.java
0 → 100644
浏览文件 @
317c12fa
package
com
.
mmc
.
pms
.
model
.
category
.
vo
;
import
com.mmc.pms.model.group.Create
;
import
com.mmc.pms.model.group.Others
;
import
com.mmc.pms.model.group.Update
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
javax.validation.constraints.Min
;
import
javax.validation.constraints.NotBlank
;
import
javax.validation.constraints.NotNull
;
import
javax.validation.constraints.Size
;
/**
* @Author small
* @Date 2023/7/20 16:34
* @Version 1.0
*/
@Data
public
class
CategoryPrimaryVO
{
@ApiModelProperty
(
value
=
"id"
,
example
=
"1"
)
@NotNull
(
message
=
"id不能为空"
,
groups
=
{
Update
.
class
,
Others
.
class
})
@Min
(
value
=
1
,
groups
=
{
Update
.
class
})
private
Integer
id
;
@ApiModelProperty
(
value
=
"分类名称"
,
required
=
true
,
example
=
"无人机"
)
@Size
(
max
=
15
,
message
=
"分类名称不能超过15个字"
,
groups
=
{
Update
.
class
,
Create
.
class
})
@NotBlank
(
message
=
"分类名称不能为空或空字符"
,
groups
=
{
Update
.
class
,
Create
.
class
})
private
String
name
;
@ApiModelProperty
(
value
=
"描述"
,
example
=
"描述一下"
)
@Size
(
max
=
70
,
message
=
"分类描述不能超过70个字"
,
groups
=
{
Update
.
class
,
Create
.
class
})
private
String
description
;
@ApiModelProperty
(
value
=
"icon图标"
,
example
=
"http://"
)
private
String
icon
;
@ApiModelProperty
(
value
=
"顺序"
)
@NotNull
(
message
=
"sort不能为空"
,
groups
=
{
Others
.
class
})
private
Integer
sort
;
}
src/main/java/com/mmc/pms/model/category/vo/CategorySubVO.java
0 → 100644
浏览文件 @
317c12fa
package
com
.
mmc
.
pms
.
model
.
category
.
vo
;
import
com.mmc.pms.model.group.Create
;
import
com.mmc.pms.model.group.Update
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
javax.validation.constraints.Min
;
import
javax.validation.constraints.NotBlank
;
import
javax.validation.constraints.NotNull
;
import
javax.validation.constraints.Size
;
/**
* @Author small
* @Date 2023/7/21 10:10
* @Version 1.0
*/
@Data
public
class
CategorySubVO
{
@ApiModelProperty
(
value
=
"id"
,
example
=
"1"
)
@NotNull
(
message
=
"id不能为空"
,
groups
=
{
Update
.
class
})
@Min
(
value
=
1
,
groups
=
{
Update
.
class
})
private
Integer
id
;
@ApiModelProperty
(
value
=
"分类名称"
,
required
=
true
,
example
=
"无人机"
)
@Size
(
max
=
15
,
message
=
"分类名称不能超过15个字"
,
groups
=
{
Update
.
class
,
Create
.
class
})
@NotBlank
(
message
=
"分类名称不能为空或空字符"
,
groups
=
{
Update
.
class
,
Create
.
class
})
private
String
name
;
@ApiModelProperty
(
value
=
"描述"
,
example
=
"描述001"
)
@Size
(
max
=
70
,
message
=
"分类描述不能超过70个字"
,
groups
=
{
Update
.
class
,
Create
.
class
})
private
String
description
;
@ApiModelProperty
(
value
=
"一级分类id不能为空"
,
required
=
true
,
example
=
"1"
)
@NotNull
(
message
=
"一级分类id不能为空"
,
groups
=
{
Update
.
class
,
Create
.
class
})
private
Integer
categoryPrimaryId
;
}
src/main/java/com/mmc/pms/model/mall/GoodsResourcesVO.java
0 → 100644
浏览文件 @
317c12fa
package
com
.
mmc
.
pms
.
model
.
mall
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Builder
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
/**
* @Author LW
* @date 2023/7/24 17:57
* 概要:
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
public
class
GoodsResourcesVO
{
@ApiModelProperty
(
value
=
"id"
)
private
Integer
id
;
@ApiModelProperty
(
value
=
"url"
)
private
String
url
;
@ApiModelProperty
(
value
=
"类型:0主图 1副图 2视频"
)
private
Integer
type
;
}
src/main/java/com/mmc/pms/model/mall/GoodsSpecVO.java
0 → 100644
浏览文件 @
317c12fa
package
com
.
mmc
.
pms
.
model
.
mall
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Builder
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
java.util.List
;
/**
* @Author LW
* @date 2023/7/24 20:16
* 概要:
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
public
class
GoodsSpecVO
{
@ApiModelProperty
(
value
=
"id"
)
private
Integer
id
;
@ApiModelProperty
(
value
=
"商品id"
)
private
Integer
mallGoodsId
;
@ApiModelProperty
(
value
=
"规格名称"
,
example
=
"规格名称"
,
required
=
true
)
private
String
specName
;
@ApiModelProperty
(
value
=
"选择方式 :0单选,1多选"
,
example
=
"1"
,
required
=
true
)
private
Integer
chooseType
;
@ApiModelProperty
(
value
=
"是否必选 : 0 非必选 1 必选"
,
example
=
"0"
,
required
=
true
)
private
Integer
must
;
@ApiModelProperty
(
value
=
"单位id"
,
example
=
"1"
,
required
=
true
)
private
Integer
skuUnitId
;
@ApiModelProperty
(
value
=
"规格值信息"
,
required
=
true
)
private
List
<
GoodsSpecValuesVO
>
goodsSpecValuesList
;
}
src/main/java/com/mmc/pms/model/mall/GoodsSpecValuesVO.java
0 → 100644
浏览文件 @
317c12fa
package
com
.
mmc
.
pms
.
model
.
mall
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Builder
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
java.math.BigDecimal
;
/**
* @Author LW
* @date 2023/7/24 20:26
* 概要:
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
public
class
GoodsSpecValuesVO
{
@ApiModelProperty
(
value
=
"id"
)
private
Integer
id
;
@ApiModelProperty
(
value
=
"规格id"
,
example
=
"1"
)
private
Integer
goodsSpecId
;
@ApiModelProperty
(
value
=
"选项名称"
,
example
=
"规格值名称"
,
required
=
true
)
private
String
specValueName
;
@ApiModelProperty
(
value
=
"料号"
,
example
=
"料号"
,
required
=
true
)
private
String
partNo
;
@ApiModelProperty
(
value
=
"规格值图片url"
,
example
=
"1.jpg"
,
required
=
true
)
private
String
specValueImage
;
@ApiModelProperty
(
value
=
"是否展示销售价格 0:否 1:是"
,
example
=
"1"
,
required
=
true
)
private
Integer
showPrice
;
@ApiModelProperty
(
value
=
"库存数量"
,
example
=
"100"
)
private
Integer
stock
;
@ApiModelProperty
(
value
=
"销售价格"
,
example
=
"100.00"
,
required
=
true
)
private
BigDecimal
salePrice
;
@ApiModelProperty
(
value
=
"渠道价格"
,
example
=
"50.00"
)
private
BigDecimal
channelPrice
;
}
src/main/java/com/mmc/pms/model/mall/MallGoodsVO.java
0 → 100644
浏览文件 @
317c12fa
package
com
.
mmc
.
pms
.
model
.
mall
;
import
com.mmc.pms.model.group.Create
;
import
com.mmc.pms.model.group.Update
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Builder
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
javax.validation.constraints.NotBlank
;
import
javax.validation.constraints.NotEmpty
;
import
javax.validation.constraints.NotNull
;
import
java.util.Date
;
import
java.util.List
;
/**
* @Author LW
* @date 2023/7/24 17:44
* 概要:
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
public
class
MallGoodsVO
{
@ApiModelProperty
(
value
=
"id"
,
example
=
"1"
)
@NotNull
(
message
=
"id不能为空"
,
groups
=
{
Update
.
class
})
private
Integer
id
;
@ApiModelProperty
(
value
=
"商品名称"
,
example
=
"这是商品名称"
,
required
=
true
)
@NotBlank
(
message
=
"商品名称不能为空"
,
groups
=
{
Update
.
class
,
Create
.
class
})
private
String
tradeName
;
@ApiModelProperty
(
value
=
"商品描述"
,
example
=
"商品描述"
,
required
=
true
)
@NotBlank
(
message
=
"商品描述不能为空"
,
groups
=
{
Update
.
class
,
Create
.
class
})
private
String
description
;
@ApiModelProperty
(
value
=
"商品资源:图片or视频及其他"
)
@NotEmpty
(
message
=
"图片不能为空"
)
private
List
<
GoodsResourcesVO
>
resourcesList
;
@ApiModelProperty
(
value
=
"一级分类id"
,
example
=
"1"
,
required
=
true
)
@NotNull
(
message
=
"一级分类id不能为空"
,
groups
=
{
Update
.
class
,
Create
.
class
})
private
Integer
categoryPrimaryId
;
@ApiModelProperty
(
value
=
"二级分类id"
,
example
=
"2"
,
required
=
true
)
@NotNull
(
message
=
"二级分类id不能为空"
,
groups
=
{
Update
.
class
,
Create
.
class
})
private
Integer
categorySubId
;
@ApiModelProperty
(
value
=
"商品状态"
,
example
=
"1"
,
required
=
true
)
@NotNull
(
message
=
"商品状态不能为空"
,
groups
=
{
Update
.
class
,
Create
.
class
})
private
Integer
shelfStatus
;
@ApiModelProperty
(
value
=
"商品标签"
)
private
String
goodsLabel
;
@ApiModelProperty
(
value
=
"标签是否显示 0否 1是"
)
private
Integer
labelShow
;
@ApiModelProperty
(
value
=
"规格"
)
@NotEmpty
(
message
=
"规格不能为空"
,
groups
=
{
Update
.
class
,
Create
.
class
})
private
List
<
GoodsSpecVO
>
goodsSpecList
;
@ApiModelProperty
(
value
=
"商品详情 富文本"
)
private
String
goodsDetails
;
@ApiModelProperty
(
value
=
"创建时间 用作列表回显"
)
private
Date
createTime
;
@ApiModelProperty
(
value
=
"店铺id 小程序用"
)
private
Integer
userAccountId
;
}
src/main/java/com/mmc/pms/model/other/dto/RoleInfoDTO.java
浏览文件 @
317c12fa
package
com
.
mmc
.
pms
.
model
.
other
.
dto
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Builder
;
...
...
@@ -10,40 +9,27 @@ import lombok.NoArgsConstructor;
import
java.io.Serializable
;
/**
* @Author small @Date 2023/5/25 9:57 @Version 1.0
* @Author small
* @Date 2023/7/10 16:03
* @Version 1.0
*/
@Builder
@Data
@AllArgsConstructor
@NoArgsConstructor
@ApiModel
(
description
=
"角色信息DTO"
)
public
class
RoleInfoDTO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
-
4791023169682602298L
;
private
static
final
long
serialVersionUID
=
-
4791023169682602298L
;
@ApiModelProperty
(
value
=
"角色ID"
)
private
Integer
id
;
@ApiModelProperty
(
value
=
"角色编号"
)
private
String
roleNo
;
@ApiModelProperty
(
value
=
"角色名称/权限角色"
)
private
String
roleName
;
@ApiModelProperty
(
value
=
"备注"
)
private
String
remark
;
@ApiModelProperty
(
value
=
"账号名称/创建人"
)
private
String
userName
;
@ApiModelProperty
(
value
=
"0不是超级管理员 1是超级管理员"
)
private
Integer
superAdmin
;
@ApiModelProperty
(
value
=
"角色ID"
)
private
Integer
id
;
@ApiModelProperty
(
value
=
"角色编号"
)
private
String
roleNo
;
@ApiModelProperty
(
value
=
"角色名称"
)
private
String
roleName
;
@ApiModelProperty
(
value
=
"是否为管理角色:0否 1是"
)
private
Integer
admin
;
// 是否为管理角色
@ApiModelProperty
(
value
=
"是否为运营角色:0否 1是"
)
private
Integer
operate
;
@ApiModelProperty
(
value
=
"是否为系统角色:0否 1是"
)
private
Integer
system
;
@ApiModelProperty
(
value
=
"是否为PMC发货角色:0否 1是"
)
private
Integer
pmc
;
// PMC发货角色
@ApiModelProperty
(
value
=
"是否可用:0否 1是"
)
private
Integer
roleStatus
;
@ApiModelProperty
(
value
=
"备注"
)
private
String
remark
;
}
src/main/java/com/mmc/pms/model/sale/qo/MallGoodsInfoQO.java
0 → 100644
浏览文件 @
317c12fa
package
com
.
mmc
.
pms
.
model
.
sale
.
qo
;
import
com.mmc.pms.common.Page
;
import
com.mmc.pms.model.group.Freeze
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Builder
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
javax.validation.constraints.Min
;
import
javax.validation.constraints.NotNull
;
/**
* @Author LW
* @date 2022/3/22 9:44 概要:商品列表查询QO
*/
@Builder
@Data
@AllArgsConstructor
@NoArgsConstructor
public
class
MallGoodsInfoQO
{
@ApiModelProperty
(
value
=
"商品名称"
,
example
=
"商品名称"
)
private
String
tradeName
;
@ApiModelProperty
(
value
=
"商品一级分类"
,
example
=
"1"
)
private
Integer
categoryPrimaryId
;
@ApiModelProperty
(
value
=
"用户id"
,
hidden
=
true
)
private
Integer
userAccountId
;
@ApiModelProperty
(
value
=
"商品状态 0:下架 1:上架"
)
private
Integer
shelfStatus
;
@ApiModelProperty
(
value
=
"页码"
,
required
=
true
,
example
=
"1"
)
@NotNull
(
message
=
"页码不能为空"
,
groups
=
{
Page
.
class
,
Freeze
.
class
})
@Min
(
value
=
1
,
groups
=
Page
.
class
)
private
Integer
pageNo
;
@ApiModelProperty
(
value
=
"每页显示数"
,
required
=
true
,
example
=
"10"
)
@NotNull
(
message
=
"每页显示数不能为空"
,
groups
=
{
Page
.
class
,
Freeze
.
class
})
@Min
(
value
=
1
,
groups
=
Page
.
class
)
private
Integer
pageSize
;
public
void
buildCurrentPage
()
{
this
.
pageNo
=
(
pageNo
-
1
)
*
pageSize
;
}
}
src/main/java/com/mmc/pms/model/sale/qo/MallGoodsQO.java
浏览文件 @
317c12fa
...
...
@@ -13,7 +13,6 @@ import javax.validation.constraints.NotNull;
/**
* @Author LW
*
* @date 2022/3/22 9:44 概要:商品列表查询QO
*/
@Builder
...
...
@@ -21,39 +20,39 @@ import javax.validation.constraints.NotNull;
@AllArgsConstructor
@NoArgsConstructor
public
class
MallGoodsQO
{
@ApiModelProperty
(
value
=
"商品名称"
,
example
=
"商品名称"
)
private
String
goodsName
;
@ApiModelProperty
(
value
=
"商品名称"
,
example
=
"商品名称"
)
private
String
goodsName
;
@ApiModelProperty
(
value
=
"商品类型 0:销售 1:租赁"
,
example
=
"0"
)
private
Integer
goodsType
;
@ApiModelProperty
(
value
=
"商品类型 0:销售 1:租赁"
,
example
=
"0"
)
private
Integer
goodsType
;
@ApiModelProperty
(
value
=
"开始时间"
,
example
=
"2023-06-09 00:00:00"
)
private
String
startTime
;
@ApiModelProperty
(
value
=
"开始时间"
,
example
=
"2023-06-09 00:00:00"
)
private
String
startTime
;
@ApiModelProperty
(
value
=
"结束时间"
,
example
=
"2023-06-11 23:59:59"
)
private
String
endTime
;
@ApiModelProperty
(
value
=
"结束时间"
,
example
=
"2023-06-11 23:59:59"
)
private
String
endTime
;
@ApiModelProperty
(
value
=
"状态 0:下架(仓库中)1:上架"
,
example
=
"1"
)
private
Integer
status
;
@ApiModelProperty
(
value
=
"状态 0:下架(仓库中)1:上架"
,
example
=
"1"
)
private
Integer
status
;
@ApiModelProperty
(
value
=
"目录id"
,
example
=
"1"
)
private
Integer
directoryId
;
@ApiModelProperty
(
value
=
"目录id"
,
example
=
"1"
)
private
Integer
directoryId
;
@ApiModelProperty
(
value
=
"页码"
,
required
=
true
,
example
=
"1"
)
@NotNull
(
message
=
"页码不能为空"
,
groups
=
{
Page
.
class
,
Freeze
.
class
})
@Min
(
value
=
1
,
groups
=
Page
.
class
)
private
Integer
pageNo
;
@ApiModelProperty
(
value
=
"页码"
,
required
=
true
,
example
=
"1"
)
@NotNull
(
message
=
"页码不能为空"
,
groups
=
{
Page
.
class
,
Freeze
.
class
})
@Min
(
value
=
1
,
groups
=
Page
.
class
)
private
Integer
pageNo
;
@ApiModelProperty
(
value
=
"每页显示数"
,
required
=
true
,
example
=
"10"
)
@NotNull
(
message
=
"每页显示数不能为空"
,
groups
=
{
Page
.
class
,
Freeze
.
class
})
@Min
(
value
=
1
,
groups
=
Page
.
class
)
private
Integer
pageSize
;
@ApiModelProperty
(
value
=
"每页显示数"
,
required
=
true
,
example
=
"10"
)
@NotNull
(
message
=
"每页显示数不能为空"
,
groups
=
{
Page
.
class
,
Freeze
.
class
})
@Min
(
value
=
1
,
groups
=
Page
.
class
)
private
Integer
pageSize
;
public
void
buildCurrentPage
()
{
this
.
pageNo
=
(
pageNo
-
1
)
*
pageSize
;
}
public
void
buildCurrentPage
()
{
this
.
pageNo
=
(
pageNo
-
1
)
*
pageSize
;
}
}
src/main/java/com/mmc/pms/model/sale/vo/GoodsSpecVO.java
deleted
100644 → 0
浏览文件 @
efc83179
package
com
.
mmc
.
pms
.
model
.
sale
.
vo
;
import
com.mmc.pms.model.sale.dto.ProductSpecVO
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
java.io.Serializable
;
import
java.util.List
;
/**
* @Author small @Date 2023/5/16 15:27 @Version 1.0
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
public
class
GoodsSpecVO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
-
8681372139970849591L
;
@ApiModelProperty
(
value
=
"id"
)
private
Integer
id
;
@ApiModelProperty
(
value
=
"规格名称"
)
private
String
goodsSpecName
;
@ApiModelProperty
(
value
=
"产品类型"
)
private
Integer
goodsTypeId
;
@ApiModelProperty
(
value
=
"产品:自定义时此字段可不用填写"
)
private
Integer
skuId
;
@ApiModelProperty
(
value
=
"规格来源 0:获取 1:自定义"
)
private
Integer
flag
;
@ApiModelProperty
(
value
=
"产品名称(自定义的时候才需要传值)"
)
private
String
productName
;
@ApiModelProperty
(
value
=
"选项来源"
)
private
List
<
MallProductSpecVO
>
specIds
;
@ApiModelProperty
(
value
=
"选择方式"
)
private
Integer
chooseType
;
@ApiModelProperty
(
value
=
"规格单位"
)
private
Integer
skuUnitId
;
@ApiModelProperty
(
value
=
"是否必选"
)
private
Integer
must
;
@ApiModelProperty
(
value
=
"自定义的信息填充"
)
private
List
<
ProductSpecVO
>
customizeInfo
;
@ApiModelProperty
(
value
=
"删除的自定义规格id"
)
private
List
<
Integer
>
delProductSpecId
;
}
src/main/java/com/mmc/pms/service/GoodsInfoService.java
浏览文件 @
317c12fa
...
...
@@ -21,31 +21,31 @@ import java.util.List;
*/
public
interface
GoodsInfoService
{
ResultBody
addGoods
(
GoodsAddVO
goodsAddVO
,
Integer
userAccountId
);
ResultBody
addGoods
(
GoodsAddVO
goodsAddVO
,
Integer
userAccountId
);
ResultBody
editGoodsInfo
(
GoodsAddVO
goodsAddVO
);
ResultBody
editGoodsInfo
(
GoodsAddVO
goodsAddVO
);
ResultBody
getGoodsInfoDetail
(
Integer
goodsInfoId
,
Integer
type
,
Integer
leaseTerm
);
ResultBody
getGoodsInfoDetail
(
Integer
goodsInfoId
,
Integer
type
,
Integer
leaseTerm
);
ResultBody
getSkuUnit
();
ResultBody
getSkuUnit
();
ResultBody
getSaleServiceInfoToList
();
ResultBody
getSaleServiceInfoToList
();
List
<
MallGoodsShopCarDTO
>
fillGoodsInfo
(
List
<
MallGoodsShopCarDTO
>
param
);
List
<
MallGoodsShopCarDTO
>
fillGoodsInfo
(
List
<
MallGoodsShopCarDTO
>
param
);
List
<
MallProductSpecPriceDTO
>
feignListProductSpecPrice
(
ProductSpecPriceQO
productSpecPriceQO
);
List
<
MallProductSpecPriceDTO
>
feignListProductSpecPrice
(
ProductSpecPriceQO
productSpecPriceQO
);
ProductSpecPriceDTO
feignGetUnitPriceByTag
(
Integer
specId
,
Integer
tagId
);
ProductSpecPriceDTO
feignGetUnitPriceByTag
(
Integer
specId
,
Integer
tagId
);
List
<
OrderGoodsProdDTO
>
feignListProdGoodsSkuInfo
(
MallOrderGoodsInfoQO
mallOrderGoodsInfoQO
);
List
<
OrderGoodsProdDTO
>
feignListProdGoodsSkuInfo
(
MallOrderGoodsInfoQO
mallOrderGoodsInfoQO
);
List
<
OrderGoodsIndstDTO
>
feignListIndstGoodsSkuInfo
(
MallOrderGoodsInfoQO
mallOrderGoodsInfoQO
);
List
<
OrderGoodsIndstDTO
>
feignListIndstGoodsSkuInfo
(
MallOrderGoodsInfoQO
mallOrderGoodsInfoQO
);
PageResult
listPageGoodsInfo
(
MallGoodsQO
param
);
PageResult
listPageGoodsInfo
(
MallGoodsQO
param
);
ResultBody
batchOnShelfOrTakeDown
(
List
<
Integer
>
goodsIds
,
Integer
status
);
ResultBody
batchOnShelfOrTakeDown
(
List
<
Integer
>
goodsIds
,
Integer
status
);
ResultBody
batchRemoveWareInfo
(
List
<
Integer
>
ids
);
ResultBody
batchRemoveWareInfo
(
List
<
Integer
>
ids
);
ResultBody
exchangeGoodsInfo
(
Integer
firstId
,
Integer
secondId
);
ResultBody
exchangeGoodsInfo
(
Integer
firstId
,
Integer
secondId
);
}
src/main/java/com/mmc/pms/service/category/CategoryService.java
0 → 100644
浏览文件 @
317c12fa
package
com
.
mmc
.
pms
.
service
.
category
;
import
com.mmc.pms.common.ResultBody
;
import
com.mmc.pms.model.category.dto.CategoryPrimaryDTO
;
import
com.mmc.pms.model.category.qo.CategoryQO
;
import
com.mmc.pms.model.category.vo.CategoryPrimaryVO
;
import
com.mmc.pms.model.category.vo.CategorySubVO
;
import
com.mmc.pms.page.PageResult
;
import
java.util.List
;
/**
* @Author small
* @Date 2023/7/20 16:26
* @Version 1.0
*/
public
interface
CategoryService
{
ResultBody
addPrimaryCategory
(
CategoryPrimaryVO
primaryVO
);
ResultBody
deletePrimaryCategory
(
Integer
id
);
ResultBody
updatePrimaryCategory
(
CategoryPrimaryVO
primaryVO
);
ResultBody
addSubCategory
(
CategorySubVO
subVO
);
ResultBody
updateSubCategory
(
CategorySubVO
subVO
);
ResultBody
deleteSubCategory
(
Integer
id
);
ResultBody
detailSubCategory
(
Integer
id
);
PageResult
<
CategoryPrimaryDTO
>
categoryList
(
CategoryQO
param
);
ResultBody
exchange
(
List
<
CategoryPrimaryVO
>
list
);
ResultBody
<
CategoryPrimaryDTO
>
appCategoryInfo
();
}
src/main/java/com/mmc/pms/service/category/impl/CategoryServiceImpl.java
0 → 100644
浏览文件 @
317c12fa
package
com
.
mmc
.
pms
.
service
.
category
.
impl
;
import
com.mmc.pms.common.ResultBody
;
import
com.mmc.pms.common.ResultEnum
;
import
com.mmc.pms.dao.category.CategoryDao
;
import
com.mmc.pms.entity.ServiceDO
;
import
com.mmc.pms.entity.category.CategoryPrimaryDO
;
import
com.mmc.pms.entity.category.CategorySubDO
;
import
com.mmc.pms.model.category.dto.CategoryPrimaryDTO
;
import
com.mmc.pms.model.category.dto.CategorySubDTO
;
import
com.mmc.pms.model.category.qo.CategoryQO
;
import
com.mmc.pms.model.category.vo.CategoryPrimaryVO
;
import
com.mmc.pms.model.category.vo.CategorySubVO
;
import
com.mmc.pms.page.PageResult
;
import
com.mmc.pms.service.category.CategoryService
;
import
org.apache.commons.collections4.CollectionUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.stream.Collectors
;
/**
* @Author small
* @Date 2023/7/20 16:26
* @Version 1.0
*/
@Service
public
class
CategoryServiceImpl
implements
CategoryService
{
@Autowired
private
CategoryDao
categoryDao
;
@Override
public
ResultBody
addPrimaryCategory
(
CategoryPrimaryVO
primaryVO
)
{
int
count
=
categoryDao
.
getCountName
(
primaryVO
.
getName
());
if
(
count
>
0
)
{
return
ResultBody
.
error
(
ResultEnum
.
THE_NAME_OF_A_CLASS_MUST_BE_UNIQUE
);
}
CategoryPrimaryDO
primaryDO
=
new
CategoryPrimaryDO
(
primaryVO
);
categoryDao
.
addPrimaryCategory
(
primaryDO
);
Integer
id
=
primaryDO
.
getId
();
categoryDao
.
updateSort
(
id
);
return
ResultBody
.
success
();
}
@Override
public
ResultBody
deletePrimaryCategory
(
Integer
id
)
{
Integer
integer
=
categoryDao
.
selectPrimary
(
id
);
if
(
integer
!=
0
)
{
return
ResultBody
.
error
(
ResultEnum
.
THE_CURRENT_CATEGORY_IS_ASSOCIATED_WITH_GOODS
);
}
categoryDao
.
deletePrimaryCategory
(
id
);
return
ResultBody
.
success
();
}
@Override
public
ResultBody
updatePrimaryCategory
(
CategoryPrimaryVO
primaryVO
)
{
CategoryPrimaryDO
primaryDO
=
new
CategoryPrimaryDO
(
primaryVO
);
Integer
count
=
categoryDao
.
categoryCount
(
primaryDO
);
if
(
count
>
0
)
{
return
ResultBody
.
error
(
ResultEnum
.
THE_NAME_OF_A_CLASS_MUST_BE_UNIQUE
);
}
categoryDao
.
updatePrimaryCategory
(
primaryDO
);
return
ResultBody
.
success
();
}
@Override
public
ResultBody
addSubCategory
(
CategorySubVO
subVO
)
{
int
count
=
categoryDao
.
getCountSubName
(
subVO
.
getName
(),
subVO
.
getCategoryPrimaryId
());
if
(
count
>
0
)
{
return
ResultBody
.
error
(
ResultEnum
.
THE_NAME_OF_THE_SECONDARY_CLASS_MUST_BE_UNIQUE
);
}
CategorySubDO
subDO
=
new
CategorySubDO
(
subVO
);
int
number
=
(
int
)
(
Math
.
random
()
*
90
+
10
);
subDO
.
setId
(
subVO
.
getCategoryPrimaryId
()
+
1
+
number
);
categoryDao
.
addSubCategory
(
subDO
);
return
ResultBody
.
success
();
}
@Override
public
ResultBody
updateSubCategory
(
CategorySubVO
subVO
)
{
CategorySubDO
subDO
=
new
CategorySubDO
(
subVO
);
Integer
count
=
categoryDao
.
categorySubCount
(
subDO
);
if
(
count
>
0
)
{
return
ResultBody
.
error
(
ResultEnum
.
THE_NAME_OF_THE_SECONDARY_CLASS_MUST_BE_UNIQUE
);
}
categoryDao
.
updateSubCategory
(
subDO
);
return
ResultBody
.
success
();
}
@Override
public
ResultBody
deleteSubCategory
(
Integer
id
)
{
Integer
integer
=
categoryDao
.
selectSubMallGoods
(
id
);
if
(
integer
!=
0
)
{
return
ResultBody
.
error
(
ResultEnum
.
THE_CURRENT_CATEGORY_IS_ASSOCIATED_WITH_GOODS
);
}
categoryDao
.
deleteSubCategory
(
id
);
return
ResultBody
.
success
();
}
@Override
public
ResultBody
<
CategorySubDTO
>
detailSubCategory
(
Integer
id
)
{
CategorySubDO
subDO
=
categoryDao
.
detailSubCategory
(
id
);
CategorySubDTO
categorySubDTO
=
null
;
if
(
subDO
!=
null
)
{
categorySubDTO
=
subDO
.
buildCategorySubDTO
();
}
return
ResultBody
.
success
(
categorySubDTO
);
}
@Override
public
PageResult
<
CategoryPrimaryDTO
>
categoryList
(
CategoryQO
param
)
{
int
count
=
categoryDao
.
categoryListCount
(
param
);
if
(
count
==
0
)
{
return
PageResult
.
buildPage
(
param
.
getPageNo
(),
param
.
getPageSize
(),
count
);
}
param
.
buildCurrentPage
();
List
<
CategoryPrimaryDO
>
categoryPrimaryDOS
=
categoryDao
.
categoryList
(
param
);
List
<
CategoryPrimaryDTO
>
collect
=
categoryPrimaryDOS
.
stream
().
map
(
t
->
t
.
buildCategoryPrimaryDTO
()).
collect
(
Collectors
.
toList
());
return
PageResult
.
buildPage
(
param
.
getPageNo
(),
param
.
getPageSize
(),
count
,
collect
);
}
@Transactional
@Override
public
ResultBody
exchange
(
List
<
CategoryPrimaryVO
>
list
)
{
Integer
sort
=
list
.
get
(
0
).
getSort
();
ServiceDO
serviceDO
=
new
ServiceDO
();
serviceDO
.
setId
(
list
.
get
(
0
).
getId
());
serviceDO
.
setSort
(
list
.
get
(
1
).
getSort
());
categoryDao
.
exchange
(
serviceDO
);
ServiceDO
serviceDO1
=
new
ServiceDO
();
serviceDO1
.
setId
(
list
.
get
(
1
).
getId
());
serviceDO1
.
setSort
(
sort
);
categoryDao
.
exchange
(
serviceDO1
);
return
ResultBody
.
success
();
}
@Override
public
ResultBody
<
CategoryPrimaryDTO
>
appCategoryInfo
()
{
// 获取所有以及分类
List
<
CategoryPrimaryDO
>
categoryPrimaryList
=
categoryDao
.
selectPrimaryList
();
if
(
CollectionUtils
.
isEmpty
(
categoryPrimaryList
))
{
return
ResultBody
.
success
();
}
List
<
CategoryPrimaryDTO
>
primaryList
=
categoryPrimaryList
.
stream
()
.
map
(
CategoryPrimaryDO:
:
buildCategoryPrimaryDTO
).
collect
(
Collectors
.
toList
());
List
<
Integer
>
ids
=
primaryList
.
stream
().
map
(
CategoryPrimaryDTO:
:
getId
).
collect
(
Collectors
.
toList
());
// 批量查找二级分类
List
<
CategorySubDO
>
categorySubList
=
categoryDao
.
selectCategorySubList
(
ids
);
if
(
CollectionUtils
.
isNotEmpty
(
categorySubList
))
{
Map
<
Integer
,
List
<
CategorySubDO
>>
subMap
=
categorySubList
.
stream
().
collect
(
Collectors
.
groupingBy
(
CategorySubDO:
:
getCategoryPrimaryId
));
for
(
CategoryPrimaryDTO
categoryPrimaryDTO
:
primaryList
)
{
List
<
CategorySubDO
>
categorySubDOList
=
subMap
.
get
(
categoryPrimaryDTO
.
getId
());
categoryPrimaryDTO
.
setSubDTOList
(
categorySubDOList
);
}
}
return
ResultBody
.
success
(
primaryList
);
}
}
src/main/java/com/mmc/pms/service/impl/GoodsInfoServiceImpl.java
浏览文件 @
317c12fa
This source diff could not be displayed because it is too large. You can
view the blob
instead.
src/main/java/com/mmc/pms/service/mall/AppMallGoodsService.java
0 → 100644
浏览文件 @
317c12fa
package
com
.
mmc
.
pms
.
service
.
mall
;
import
com.mmc.pms.common.ResultBody
;
import
com.mmc.pms.model.mall.MallGoodsVO
;
import
java.util.List
;
/**
* @Author LW
* @date 2023/7/26 14:55
* 概要:
*/
public
interface
AppMallGoodsService
{
ResultBody
<
MallGoodsVO
>
queryBrandGoods
(
Integer
userAccountId
);
ResultBody
<
MallGoodsVO
>
queryGoodsInfoByCategorySub
(
List
<
Integer
>
categorySubIds
);
}
src/main/java/com/mmc/pms/service/mall/MallGoodsService.java
0 → 100644
浏览文件 @
317c12fa
package
com
.
mmc
.
pms
.
service
.
mall
;
import
com.mmc.pms.auth.dto.LoginSuccessDTO
;
import
com.mmc.pms.common.ResultBody
;
import
com.mmc.pms.model.mall.MallGoodsVO
;
import
com.mmc.pms.model.sale.qo.MallGoodsInfoQO
;
import
com.mmc.pms.page.PageResult
;
/**
* @Author LW
* @date 2023/7/24 17:37 概要:
*/
public
interface
MallGoodsService
{
ResultBody
addMallGoods
(
MallGoodsVO
mallGoodsVO
,
Integer
userAccountId
);
ResultBody
<
MallGoodsVO
>
mallGoodsDetails
(
Integer
id
);
ResultBody
editMallGoods
(
MallGoodsVO
mallGoodsVO
,
Integer
userAccountId
);
ResultBody
getSkuUnit
();
PageResult
listPageGoodsInfo
(
MallGoodsInfoQO
param
,
LoginSuccessDTO
loginSuccessDTO
);
ResultBody
exchange
(
Integer
firstId
,
Integer
secondId
);
ResultBody
upOrDownShelf
(
Integer
id
,
Integer
status
);
ResultBody
removeMallGoods
(
Integer
id
);
ResultBody
feignRemoveGoodsByBackUserAccountId
(
Integer
id
);
}
src/main/java/com/mmc/pms/service/mall/impl/AppMallGoodsServiceImpl.java
0 → 100644
浏览文件 @
317c12fa
package
com
.
mmc
.
pms
.
service
.
mall
.
impl
;
import
com.mmc.pms.common.ResultBody
;
import
com.mmc.pms.dao.mall.AppMallGoodsDao
;
import
com.mmc.pms.entity.mall.MallGoodsDO
;
import
com.mmc.pms.model.mall.MallGoodsVO
;
import
com.mmc.pms.service.mall.AppMallGoodsService
;
import
org.apache.commons.collections4.CollectionUtils
;
import
org.springframework.stereotype.Service
;
import
javax.annotation.Resource
;
import
java.util.List
;
import
java.util.stream.Collectors
;
/**
* @Author LW
* @date 2023/7/26 14:55
* 概要:
*/
@Service
public
class
AppMallGoodsServiceImpl
implements
AppMallGoodsService
{
@Resource
private
AppMallGoodsDao
appMallGoodsDao
;
@Override
public
ResultBody
<
MallGoodsVO
>
queryBrandGoods
(
Integer
userAccountId
)
{
List
<
MallGoodsDO
>
mallGoodsList
=
appMallGoodsDao
.
queryGoodsInfo
(
userAccountId
,
null
);
return
checkGoodsInfo
(
mallGoodsList
);
}
@Override
public
ResultBody
<
MallGoodsVO
>
queryGoodsInfoByCategorySub
(
List
<
Integer
>
categorySubIds
)
{
List
<
MallGoodsDO
>
mallGoodsList
=
appMallGoodsDao
.
queryGoodsInfo
(
null
,
categorySubIds
);
return
checkGoodsInfo
(
mallGoodsList
);
}
private
ResultBody
<
MallGoodsVO
>
checkGoodsInfo
(
List
<
MallGoodsDO
>
mallGoodsList
)
{
if
(
CollectionUtils
.
isNotEmpty
(
mallGoodsList
))
{
return
ResultBody
.
success
(
mallGoodsList
.
stream
().
map
(
MallGoodsDO:
:
buildListMallGoodsVO
).
collect
(
Collectors
.
toList
()));
}
return
ResultBody
.
success
();
}
}
src/main/java/com/mmc/pms/service/mall/impl/MallGoodsServiceImpl.java
0 → 100644
浏览文件 @
317c12fa
package
com
.
mmc
.
pms
.
service
.
mall
.
impl
;
import
com.mmc.pms.auth.dto.LoginSuccessDTO
;
import
com.mmc.pms.common.ResultBody
;
import
com.mmc.pms.common.ResultEnum
;
import
com.mmc.pms.dao.mall.MallGoodsDao
;
import
com.mmc.pms.entity.SkuUnitDO
;
import
com.mmc.pms.entity.mall.GoodsSpecDO
;
import
com.mmc.pms.entity.mall.GoodsSpecValuesDO
;
import
com.mmc.pms.entity.mall.MallGoodsDO
;
import
com.mmc.pms.entity.mall.MallGoodsResourcesDO
;
import
com.mmc.pms.model.mall.GoodsResourcesVO
;
import
com.mmc.pms.model.mall.GoodsSpecVO
;
import
com.mmc.pms.model.mall.GoodsSpecValuesVO
;
import
com.mmc.pms.model.mall.MallGoodsVO
;
import
com.mmc.pms.model.sale.dto.SkuUnitDTO
;
import
com.mmc.pms.model.sale.qo.MallGoodsInfoQO
;
import
com.mmc.pms.page.PageResult
;
import
com.mmc.pms.service.mall.MallGoodsService
;
import
com.mmc.pms.util.CodeUtil
;
import
com.mmc.pms.util.TDateUtil
;
import
org.apache.commons.collections4.CollectionUtils
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.transaction.interceptor.TransactionAspectSupport
;
import
javax.annotation.Resource
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.Objects
;
import
java.util.stream.Collectors
;
/**
* @Author LW
* @date 2023/7/24 17:37 概要:
*/
@Service
public
class
MallGoodsServiceImpl
implements
MallGoodsService
{
@Resource
private
MallGoodsDao
mallGoodsDao
;
@Override
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
ResultBody
addMallGoods
(
MallGoodsVO
mallGoodsVO
,
Integer
userAccountId
)
{
ResultBody
resultError
=
checkInformation
(
mallGoodsVO
,
userAccountId
);
if
(
resultError
!=
null
)
return
resultError
;
int
count
=
mallGoodsDao
.
countMallGoods
(
userAccountId
);
MallGoodsDO
mallGoodsDO
=
new
MallGoodsDO
(
mallGoodsVO
);
mallGoodsDO
.
setGoodsNo
(
"MG"
+
TDateUtil
.
getDateStr
(
new
Date
(),
"yyyyMMddHHmmss"
)
+
CodeUtil
.
getRandomNum
(
4
));
mallGoodsDO
.
setUserAccountId
(
userAccountId
);
mallGoodsDO
.
setSort
(
count
+
1
);
// 将基础信息存储入库
mallGoodsDao
.
insertMallGoodsBaseInfo
(
mallGoodsDO
);
// 将商品图片等资源存入数据库中
insertMallGoodsResources
(
mallGoodsVO
,
mallGoodsDO
.
getId
());
// 将商品规格存入数据库
insertMallGoodsSpec
(
mallGoodsVO
.
getGoodsSpecList
(),
mallGoodsDO
.
getId
());
return
ResultBody
.
success
();
}
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
void
insertMallGoodsSpec
(
List
<
GoodsSpecVO
>
goodsSpecList
,
Integer
id
)
{
// 获取输入的规格信息
for
(
GoodsSpecVO
goodsSpecVO
:
goodsSpecList
)
{
goodsSpecVO
.
setMallGoodsId
(
id
);
GoodsSpecDO
goodsSpecDO
=
new
GoodsSpecDO
(
goodsSpecVO
);
// 插入规格信息
mallGoodsDao
.
insertGoodsSpec
(
goodsSpecDO
);
List
<
GoodsSpecValuesDO
>
goodsSpecValuesList
=
goodsSpecVO
.
getGoodsSpecValuesList
().
stream
().
map
(
d
->
{
d
.
setGoodsSpecId
(
goodsSpecDO
.
getId
());
return
new
GoodsSpecValuesDO
(
d
);
}).
collect
(
Collectors
.
toList
());
// 批量插入规格值的信息
mallGoodsDao
.
batchInsertSpecValues
(
goodsSpecValuesList
);
}
}
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
void
insertMallGoodsResources
(
MallGoodsVO
mallGoodsVO
,
Integer
id
)
{
List
<
MallGoodsResourcesDO
>
mallGoodsResourcesList
=
mallGoodsVO
.
getResourcesList
().
stream
().
map
(
d
->
{
MallGoodsResourcesDO
mallGoodsResourcesDO
=
new
MallGoodsResourcesDO
(
d
);
mallGoodsResourcesDO
.
setMallGoodsId
(
id
);
return
mallGoodsResourcesDO
;
}).
collect
(
Collectors
.
toList
());
mallGoodsDao
.
batchInsertMallGoodsResources
(
mallGoodsResourcesList
);
}
private
ResultBody
checkInformation
(
MallGoodsVO
mallGoodsVO
,
Integer
userAccountId
)
{
// 查询该账账号下是否有相同的商品名称存在
if
(
mallGoodsDao
.
countMallGoodsByName
(
mallGoodsVO
,
userAccountId
)
>
0
)
{
return
ResultBody
.
error
(
ResultEnum
.
GOODS_CATEGORY_NAME_EXIST_ERROR
);
}
// 判断主图是否为空
List
<
GoodsResourcesVO
>
resourcesList
=
mallGoodsVO
.
getResourcesList
()
.
stream
().
filter
(
d
->
d
.
getType
().
equals
(
0
))
.
collect
(
Collectors
.
toList
());
if
(
resourcesList
.
size
()
==
0
)
{
return
ResultBody
.
error
(
ResultEnum
.
GOODS_PIC_IS_NOT_NULL
);
}
return
null
;
}
@Override
public
ResultBody
<
MallGoodsVO
>
mallGoodsDetails
(
Integer
id
)
{
MallGoodsDO
mallGoodsDO
=
mallGoodsDao
.
getMallGoodsBaseInfo
(
id
);
if
(
mallGoodsDO
==
null
)
{
return
ResultBody
.
error
(
"商品不存在或已删除!"
);
}
MallGoodsVO
mallGoodsVO
=
mallGoodsDO
.
buildMallGoodsVO
();
// 获取图片及其他资源信息
List
<
MallGoodsResourcesDO
>
mallGoodsResourcesList
=
mallGoodsDao
.
getMallGoodsResources
(
id
);
mallGoodsVO
.
setResourcesList
(
mallGoodsResourcesList
.
stream
()
.
map
(
MallGoodsResourcesDO:
:
buildGoodsResourcesVO
).
collect
(
Collectors
.
toList
()));
// 获取规格信息
List
<
GoodsSpecDO
>
goodsSpecList
=
mallGoodsDao
.
getMallGoodsSpec
(
id
);
List
<
GoodsSpecVO
>
goodsSpec
=
goodsSpecList
.
stream
().
map
(
GoodsSpecDO:
:
buildGoodsSpecVO
)
.
collect
(
Collectors
.
toList
());
// 获取规格值信息
List
<
GoodsSpecValuesDO
>
goodsSpecValuesList
=
mallGoodsDao
.
getMallGoodsSpecValues
(
goodsSpec
.
stream
().
map
(
GoodsSpecVO:
:
getId
).
collect
(
Collectors
.
toList
()));
List
<
GoodsSpecValuesVO
>
goodsSpecValues
=
goodsSpecValuesList
.
stream
().
map
(
GoodsSpecValuesDO:
:
buildGoodsSpecValuesVO
).
collect
(
Collectors
.
toList
());
Map
<
Integer
,
List
<
GoodsSpecValuesVO
>>
goodsSpecValuesVO
=
goodsSpecValues
.
stream
().
collect
(
Collectors
.
groupingBy
(
GoodsSpecValuesVO:
:
getGoodsSpecId
));
for
(
GoodsSpecVO
goodsSpecVO
:
goodsSpec
)
{
goodsSpecVO
.
setGoodsSpecValuesList
(
goodsSpecValuesVO
.
get
(
goodsSpecVO
.
getId
()));
}
mallGoodsVO
.
setGoodsSpecList
(
goodsSpec
);
return
ResultBody
.
success
(
mallGoodsVO
);
}
@Override
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
ResultBody
editMallGoods
(
MallGoodsVO
mallGoodsVO
,
Integer
userAccountId
)
{
ResultBody
resultError
=
checkInformation
(
mallGoodsVO
,
userAccountId
);
if
(
resultError
!=
null
)
return
resultError
;
MallGoodsDO
mallGoodsDO
=
new
MallGoodsDO
(
mallGoodsVO
);
// 修改商城商品的基本信息
mallGoodsDao
.
updateMallGoods
(
mallGoodsDO
);
// 修改商城商品的图片等资源信息,先删除后新增
mallGoodsDao
.
deleteMallGoodsResources
(
mallGoodsVO
.
getId
());
this
.
insertMallGoodsResources
(
mallGoodsVO
,
mallGoodsVO
.
getId
());
// 从数据库获取商品规格信息
List
<
GoodsSpecDO
>
dbGoodsSpec
=
mallGoodsDao
.
getMallGoodsSpec
(
mallGoodsVO
.
getId
());
List
<
Integer
>
specIds
=
mallGoodsVO
.
getGoodsSpecList
().
stream
().
map
(
GoodsSpecVO:
:
getId
).
filter
(
Objects:
:
nonNull
).
collect
(
Collectors
.
toList
());
// 对比要删除的规格
List
<
Integer
>
deleteSpec
=
dbGoodsSpec
.
stream
().
map
(
GoodsSpecDO:
:
getId
).
filter
(
id
->
!
specIds
.
contains
(
id
)).
collect
(
Collectors
.
toList
());
if
(
deleteSpec
.
size
()
!=
0
)
{
mallGoodsDao
.
deleteGoodsSpec
(
deleteSpec
);
}
// 获取规格值信息
Map
<
Integer
,
List
<
GoodsSpecValuesDO
>>
specValuesMap
=
mallGoodsDao
.
getMallGoodsSpecValues
(
specIds
).
stream
()
.
collect
(
Collectors
.
groupingBy
(
GoodsSpecValuesDO:
:
getGoodsSpecId
));
// 修改规格信息
for
(
GoodsSpecVO
goodsSpecVO
:
mallGoodsVO
.
getGoodsSpecList
())
{
if
(
goodsSpecVO
.
getId
()
!=
null
)
{
GoodsSpecDO
goodsSpecDO
=
new
GoodsSpecDO
(
goodsSpecVO
);
mallGoodsDao
.
updateGoodsSpec
(
goodsSpecDO
);
// 数据库获取到的规格值信息
List
<
GoodsSpecValuesDO
>
dbSpecValues
=
specValuesMap
.
get
(
goodsSpecVO
.
getId
());
List
<
Integer
>
specValuesId
=
goodsSpecVO
.
getGoodsSpecValuesList
().
stream
().
map
(
GoodsSpecValuesVO:
:
getId
).
filter
(
Objects:
:
nonNull
).
collect
(
Collectors
.
toList
());
List
<
Integer
>
deleteSpecValueId
=
dbSpecValues
.
stream
().
map
(
GoodsSpecValuesDO:
:
getId
).
filter
(
id
->
!
specValuesId
.
contains
(
id
)).
collect
(
Collectors
.
toList
());
if
(
deleteSpecValueId
.
size
()
!=
0
)
{
mallGoodsDao
.
deleteGoodsSpecValues
(
deleteSpecValueId
);
}
// 修改规格值的信息
List
<
GoodsSpecValuesVO
>
updateSpecValue
=
goodsSpecVO
.
getGoodsSpecValuesList
().
stream
().
filter
(
d
->
d
.
getId
()
!=
null
).
collect
(
Collectors
.
toList
());
for
(
GoodsSpecValuesVO
goodsSpecValuesVO
:
updateSpecValue
)
{
GoodsSpecValuesDO
goodsSpecValuesDO
=
new
GoodsSpecValuesDO
(
goodsSpecValuesVO
);
goodsSpecValuesDO
.
setGoodsSpecId
(
goodsSpecVO
.
getId
());
mallGoodsDao
.
updateGoodsSpecValue
(
goodsSpecValuesDO
);
}
// 新增id为空的规格值
List
<
GoodsSpecValuesVO
>
newGoodsSpecValues
=
goodsSpecVO
.
getGoodsSpecValuesList
().
stream
().
filter
(
d
->
d
.
getId
()
==
null
).
collect
(
Collectors
.
toList
());
if
(
CollectionUtils
.
isNotEmpty
(
newGoodsSpecValues
))
{
List
<
GoodsSpecValuesDO
>
goodsSpecValuesList
=
newGoodsSpecValues
.
stream
().
map
(
d
->
{
d
.
setGoodsSpecId
(
goodsSpecVO
.
getId
());
return
new
GoodsSpecValuesDO
(
d
);
}).
collect
(
Collectors
.
toList
());
// 批量插入规格值的信息
mallGoodsDao
.
batchInsertSpecValues
(
goodsSpecValuesList
);
}
}
}
// 新增id为空的规格
List
<
GoodsSpecVO
>
newGoodsSpec
=
mallGoodsVO
.
getGoodsSpecList
().
stream
().
filter
(
d
->
d
.
getId
()
==
null
).
collect
(
Collectors
.
toList
());
if
(
CollectionUtils
.
isNotEmpty
(
newGoodsSpec
))
{
this
.
insertMallGoodsSpec
(
newGoodsSpec
,
mallGoodsVO
.
getId
());
}
return
ResultBody
.
success
();
}
@Override
public
ResultBody
getSkuUnit
()
{
List
<
SkuUnitDO
>
skuUnitList
=
mallGoodsDao
.
getSkuUnit
();
List
<
SkuUnitDTO
>
list
=
skuUnitList
.
stream
().
map
(
SkuUnitDO:
:
buildSkuUnitDTO
).
collect
(
Collectors
.
toList
());
return
ResultBody
.
success
(
list
);
}
@Override
public
PageResult
listPageGoodsInfo
(
MallGoodsInfoQO
param
,
LoginSuccessDTO
loginSuccessDTO
)
{
if
(
loginSuccessDTO
.
getRoleInfo
().
getSuperAdmin
().
equals
(
1
))
{
// 超级管理员获取所有商品信息
return
getMallGoodsInfo
(
param
);
}
else
{
// 非超级管理员获取自家的商品信息
param
.
setUserAccountId
(
loginSuccessDTO
.
getUserAccountId
());
return
getMallGoodsInfo
(
param
);
}
}
private
PageResult
getMallGoodsInfo
(
MallGoodsInfoQO
param
)
{
int
count
;
List
<
MallGoodsDO
>
mallGoodsList
;
count
=
mallGoodsDao
.
countListMallGoods
(
param
);
if
(
count
==
0
)
{
return
PageResult
.
buildPage
(
param
.
getPageNo
(),
param
.
getPageSize
(),
count
);
}
Integer
pageNo
=
param
.
getPageNo
();
param
.
buildCurrentPage
();
mallGoodsList
=
mallGoodsDao
.
listMallGoods
(
param
);
List
<
MallGoodsVO
>
pageList
=
mallGoodsList
.
stream
().
map
(
MallGoodsDO:
:
buildListMallGoodsVO
).
collect
(
Collectors
.
toList
());
return
PageResult
.
buildPage
(
pageNo
,
param
.
getPageSize
(),
count
,
pageList
);
}
@Override
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
ResultBody
exchange
(
Integer
firstId
,
Integer
secondId
)
{
MallGoodsDO
firstMallGoodsBaseInfo
=
mallGoodsDao
.
getMallGoodsBaseInfo
(
firstId
);
MallGoodsDO
secondMallGoodsBaseInfo
=
mallGoodsDao
.
getMallGoodsBaseInfo
(
secondId
);
int
updateCount1
=
mallGoodsDao
.
updateMallGoodsSort
(
firstId
,
secondMallGoodsBaseInfo
.
getSort
());
int
updateCount2
=
mallGoodsDao
.
updateMallGoodsSort
(
secondId
,
firstMallGoodsBaseInfo
.
getSort
());
if
(
updateCount1
==
updateCount2
)
{
return
ResultBody
.
success
();
}
else
{
TransactionAspectSupport
.
currentTransactionStatus
().
setRollbackOnly
();
return
ResultBody
.
error
(
"排序失败"
);
}
}
@Override
public
ResultBody
upOrDownShelf
(
Integer
id
,
Integer
status
)
{
mallGoodsDao
.
updateMallGoodsByShelf
(
id
,
status
);
return
ResultBody
.
success
();
}
@Override
public
ResultBody
removeMallGoods
(
Integer
id
)
{
mallGoodsDao
.
removeMallGoods
(
id
);
return
ResultBody
.
success
();
}
@Override
public
ResultBody
feignRemoveGoodsByBackUserAccountId
(
Integer
id
)
{
mallGoodsDao
.
feignRemoveGoodsByBackUserAccountId
(
id
);
return
ResultBody
.
success
();
}
}
src/main/java/com/mmc/pms/util/SnowFlake.java
0 → 100644
浏览文件 @
317c12fa
package
com
.
mmc
.
pms
.
util
;
/**
* @author 作者 geDuo
* @version 创建时间:2022年2月21日 下午3:55:10
* https://www.cnblogs.com/sgh1023/p/14094592.html
* @explain 雪花算法-分布式id
*/
public
class
SnowFlake
{
/**
* 起始的时间戳
*/
private
final
static
long
START_STMP
=
1480166465631L
;
/**
* 每一部分占用的位数
*/
private
final
static
long
SEQUENCE_BIT
=
12
;
// 序列号占用的位数
private
final
static
long
MACHINE_BIT
=
5
;
// 机器标识占用的位数
private
final
static
long
DATACENTER_BIT
=
5
;
// 数据中心占用的位数
/**
* 每一部分的最大值
*/
private
final
static
long
MAX_DATACENTER_NUM
=
-
1L
^
(-
1L
<<
DATACENTER_BIT
);
private
final
static
long
MAX_MACHINE_NUM
=
-
1L
^
(-
1L
<<
MACHINE_BIT
);
private
final
static
long
MAX_SEQUENCE
=
-
1L
^
(-
1L
<<
SEQUENCE_BIT
);
/**
* 每一部分向左的位移
*/
private
final
static
long
MACHINE_LEFT
=
SEQUENCE_BIT
;
private
final
static
long
DATACENTER_LEFT
=
SEQUENCE_BIT
+
MACHINE_BIT
;
private
final
static
long
TIMESTMP_LEFT
=
DATACENTER_LEFT
+
DATACENTER_BIT
;
private
long
datacenterId
;
// 数据中心
private
long
machineId
;
// 机器标识
private
long
sequence
=
0L
;
// 序列号
private
long
lastStmp
=
-
1L
;
// 上一次时间戳
public
SnowFlake
(
long
datacenterId
,
long
machineId
)
{
if
(
datacenterId
>
MAX_DATACENTER_NUM
||
datacenterId
<
0
)
{
throw
new
IllegalArgumentException
(
"datacenterId can't be greater than MAX_DATACENTER_NUM or less than 0"
);
}
if
(
machineId
>
MAX_MACHINE_NUM
||
machineId
<
0
)
{
throw
new
IllegalArgumentException
(
"machineId can't be greater than MAX_MACHINE_NUM or less than 0"
);
}
this
.
datacenterId
=
datacenterId
;
this
.
machineId
=
machineId
;
}
/**
* 产生下一个ID
*
* @return
*/
public
synchronized
long
nextId
()
{
long
currStmp
=
getNewstmp
();
if
(
currStmp
<
lastStmp
)
{
throw
new
RuntimeException
(
"Clock moved backwards. Refusing to generate id"
);
}
if
(
currStmp
==
lastStmp
)
{
// 相同毫秒内,序列号自增
sequence
=
(
sequence
+
1
)
&
MAX_SEQUENCE
;
// 同一毫秒的序列数已经达到最大
if
(
sequence
==
0L
)
{
currStmp
=
getNextMill
();
}
}
else
{
// 不同毫秒内,序列号置为0
sequence
=
0L
;
}
lastStmp
=
currStmp
;
return
(
currStmp
-
START_STMP
)
<<
TIMESTMP_LEFT
// 时间戳部分
|
datacenterId
<<
DATACENTER_LEFT
// 数据中心部分
|
machineId
<<
MACHINE_LEFT
// 机器标识部分
|
sequence
;
// 序列号部分
}
private
long
getNextMill
()
{
long
mill
=
getNewstmp
();
while
(
mill
<=
lastStmp
)
{
mill
=
getNewstmp
();
}
return
mill
;
}
private
long
getNewstmp
()
{
return
System
.
currentTimeMillis
();
}
public
static
void
main
(
String
[]
args
)
{
SnowFlake
snowFlake
=
new
SnowFlake
(
2
,
3
);
for
(
int
i
=
0
;
i
<
(
1
<<
12
);
i
++)
{
System
.
out
.
println
(
snowFlake
.
nextId
());
}
}
}
src/main/resources/mapper/category/CategoryDao.xml
0 → 100644
浏览文件 @
317c12fa
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"com.mmc.pms.dao.category.CategoryDao"
>
<resultMap
id=
"CategoryList"
type=
"com.mmc.pms.entity.category.CategoryPrimaryDO"
>
<result
property=
"id"
column=
"id"
/>
<result
property=
"name"
column=
"name"
/>
<result
property=
"description"
column=
"description"
/>
<result
property=
"icon"
column=
"icon"
/>
<result
property=
"createTime"
column=
"create_time"
/>
<result
property=
"updateTime"
column=
"update_time"
/>
<collection
property=
"subDOList"
ofType=
"com.mmc.pms.entity.category.CategorySubDO"
select=
"selectSubList"
column=
"{categoryPrimaryId=id}"
>
</collection>
</resultMap>
<select
id=
"selectSubList"
resultType=
"com.mmc.pms.entity.category.CategorySubDO"
>
select id,
`name`,
description,
category_primary_id AS categoryPrimaryId,
create_time AS createTime,
update_time AS updateTime
from category_sub
where category_primary_id = #{categoryPrimaryId}
order by create_time desc
</select>
<select
id=
"categoryListCount"
resultType=
"int"
parameterType=
"com.mmc.pms.model.category.qo.CategoryQO"
>
SELECT count(*)
FROM
category_primary
WHERE 1=1
<if
test=
" id != null and id != '' "
>
and id=#{id}
</if>
</select>
<select
id=
"getCountName"
resultType=
"java.lang.Integer"
>
select count(*)
from category_primary
where 1=1
<if
test=
" name != null and name != '' "
>
and `name` = #{name}
</if>
</select>
<update
id=
"exchange"
parameterType=
"com.mmc.pms.entity.ServiceDO"
>
update category_primary
<set>
<if
test=
" sort != null "
>
sort = #{sort}
</if>
</set>
where id = #{id}
</update>
<insert
id=
"addPrimaryCategory"
useGeneratedKeys=
"true"
keyProperty=
"id"
parameterType=
"com.mmc.pms.entity.category.CategoryPrimaryDO"
>
insert into category_primary(`name`, description, create_time, update_time, icon)
values (#{name}, #{description}, NOW(), NOW(), #{icon})
</insert>
<update
id=
"updateSort"
>
update category_primary
<set>
<if
test=
"id!=null"
>
sort = #{id}
</if>
</set>
where id=#{id}
</update>
<delete
id=
"deletePrimaryCategory"
>
delete
from category_primary
where id = #{id}
</delete>
<select
id=
"categoryCount"
resultType=
"java.lang.Integer"
>
select count(*)
from category_primary
where 1=1
<if
test=
" name != null and name != '' "
>
and `name` = #{name}
</if>
<if
test=
" id != null and id != '' "
>
and id != #{id}
</if>
</select>
<update
id=
"updatePrimaryCategory"
parameterType=
"com.mmc.pms.entity.category.CategoryPrimaryDO"
>
UPDATE category_primary
<set>
<if
test=
" name != null and name != '' "
>
`name` = #{name},
</if>
<if
test=
" description != null and description != '' "
>
description = #{description},
</if>
<if
test=
" icon != null and icon != '' "
>
icon = #{icon},
</if>
update_time=NOW()
</set>
where id = #{id}
</update>
<select
id=
"getCountSubName"
resultType=
"java.lang.Integer"
>
select count(*)
from category_sub
where 1=1
<if
test=
" name != null and name != '' "
>
and `name` = #{name}
</if>
<if
test=
" categoryPrimaryId != null and categoryPrimaryId != '' "
>
and category_primary_id = #{categoryPrimaryId}
</if>
</select>
<insert
id=
"addSubCategory"
useGeneratedKeys=
"true"
keyProperty=
"id"
parameterType=
"com.mmc.pms.entity.category.CategorySubDO"
>
insert into category_sub(id, `name`, description, create_time, update_time, category_primary_id)
values (#{id}, #{name}, #{description}, NOW(), NOW(), #{categoryPrimaryId})
</insert>
<select
id=
"categorySubCount"
resultType=
"java.lang.Integer"
>
select count(*)
from category_sub
where 1=1
<if
test=
" name != null and name != '' "
>
and `name` = #{name}
</if>
<if
test=
" id != null and id != '' "
>
and id != #{id}
</if>
<if
test=
" categoryPrimaryId != null and categoryPrimaryId != '' "
>
and category_primary_id != #{categoryPrimaryId}
</if>
</select>
<update
id=
"updateSubCategory"
parameterType=
"com.mmc.pms.entity.category.CategorySubDO"
>
UPDATE category_sub
<set>
<if
test=
" name != null and name != '' "
>
`name` = #{name},
</if>
<if
test=
" description != null and description != '' "
>
description = #{description},
</if>
update_time=NOW()
</set>
where id = #{id}
</update>
<delete
id=
"deleteSubCategory"
>
delete
from category_sub
where id = #{id}
</delete>
<select
id=
"detailSubCategory"
resultType=
"com.mmc.pms.entity.category.CategorySubDO"
>
select id,
`name`,
description,
create_time AS createTime,
update_time AS updateTime,
category_primary_id AS categoryPrimaryId
from category_sub
where id = #{id}
</select>
<select
id=
"categoryList"
resultMap=
"CategoryList"
>
select id, `name`, description, create_time, update_time, icon,sort
from category_primary where 1=1
<if
test=
" id != null and id != '' "
>
and id =#{id}
</if>
order by sort desc, update_time desc, create_time desc
limit #{pageNo},#{pageSize}
</select>
<select
id=
"selectPrimaryList"
resultType=
"com.mmc.pms.entity.category.CategoryPrimaryDO"
>
select id,
`name`,
description,
create_time,
icon,
sort
from category_primary
order by sort desc, update_time desc, create_time desc
</select>
<select
id=
"selectCategorySubList"
resultType=
"com.mmc.pms.entity.category.CategorySubDO"
>
select id,
`name`,
description,
create_time,
update_time,
category_primary_id
from category_sub
<where>
<foreach
collection=
"list"
separator=
","
item=
"item"
open=
"category_primary_id in ("
close=
")"
>
#{item}
</foreach>
</where>
</select>
<select
id=
"selectSubMallGoods"
resultType=
"java.lang.Integer"
>
select count(*)
from mall_goods
where category_sub_id = #{id}
</select>
<select
id=
"selectPrimary"
resultType=
"java.lang.Integer"
>
select count(*)
from mall_goods
where category_primary_id = #{id}
</select>
</mapper>
src/main/resources/mapper/mall/AppMallGoodsDao.xml
0 → 100644
浏览文件 @
317c12fa
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"com.mmc.pms.dao.mall.AppMallGoodsDao"
>
<select
id=
"queryGoodsInfo"
resultType=
"com.mmc.pms.entity.mall.MallGoodsDO"
>
SELECT mg.id,
mg.trade_name,
mg.shelf_status,
mg.create_time,
mg.description,
mg.category_primary_id,
mg.user_account_id,
mg.goods_label,
mg.label_show,
mg.category_sub_id,
mg.goods_label,
img.id as imgId, img.url,
img.type
FROM mall_goods mg
INNER JOIN mall_goods_resources img ON mg.id = img.mall_goods_id
AND img.type = 0
<where>
mg.is_deleted = 0 and mg.shelf_status = 1
<if
test=
"userAccountId != null"
>
and mg.user_account_id = #{userAccountId}
</if>
<if
test=
"categorySubIds != null"
>
<foreach
collection=
"categorySubIds"
item=
"item"
open=
"and mg.category_sub_id in ("
close=
")"
separator=
","
>
#{item}
</foreach>
</if>
</where>
ORDER BY
mg.sort DESC,mg.create_time DESC
</select>
</mapper>
\ No newline at end of file
src/main/resources/mapper/mall/MallGoodsDao.xml
0 → 100644
浏览文件 @
317c12fa
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"com.mmc.pms.dao.mall.MallGoodsDao"
>
<insert
id=
"insertMallGoodsBaseInfo"
keyProperty=
"id"
useGeneratedKeys=
"true"
parameterType=
"com.mmc.pms.entity.mall.MallGoodsDO"
>
insert into mall_goods(goods_no,
trade_name,
description,
category_primary_id,
category_sub_id,
shelf_status,
goods_label,
label_show,
goods_details,
user_account_id,
sort)
values ( #{goodsNo}, #{tradeName}, #{description}, #{categoryPrimaryId}, #{categorySubId}
, #{shelfStatus}, #{goodsLabel}, #{labelShow}, #{goodsDetails}, #{userAccountId}, #{sort})
</insert>
<insert
id=
"insertGoodsSpec"
parameterType=
"com.mmc.pms.entity.mall.GoodsSpecDO"
keyProperty=
"id"
useGeneratedKeys=
"true"
>
insert into goods_spec (mall_goods_id,
spec_name,
choose_type,
must,
sku_unit_id)
values (#{mallGoodsId}, #{specName}, #{chooseType}, #{must}, #{skuUnitId})
</insert>
<insert
id=
"batchInsertSpecValues"
parameterType=
"list"
>
insert into goods_spec_values (goods_spec_id,
spec_value_name,
part_no,
spec_value_image,
show_price,
stock,
sale_price,
channel_price)
values
<foreach
collection=
"list"
item=
"item"
separator=
","
>
(#{item.goodsSpecId},#{item.specValueName},#{item.partNo},#{item.specValueImage}
,#{item.showPrice},#{item.stock},#{item.salePrice},#{item.channelPrice})
</foreach>
</insert>
<insert
id=
"batchInsertMallGoodsResources"
>
insert into mall_goods_resources (mall_goods_id,
url,
`type`
)
values
<foreach
collection=
"list"
item=
"item"
separator=
","
>
(#{item.mallGoodsId},#{item.url},#{item.type})
</foreach>
</insert>
<update
id=
"updateMallGoods"
>
UPDATE mall_goods
SET trade_name = #{mallGoodsDO.tradeName},
description = #{mallGoodsDO.description},
category_primary_id = #{mallGoodsDO.categoryPrimaryId},
category_sub_id = #{mallGoodsDO.categorySubId},
shelf_status = #{mallGoodsDO.shelfStatus},
goods_label = #{mallGoodsDO.goodsLabel},
label_show = #{mallGoodsDO.labelShow},
goods_details = #{mallGoodsDO.goodsDetails}
WHERE id = #{mallGoodsDO.id}
</update>
<update
id=
"updateGoodsSpec"
>
update goods_spec
set spec_name = #{specName},
choose_type = #{chooseType},
must = #{must},
sku_unit_id = #{skuUnitId}
where id = #{id}
</update>
<update
id=
"updateGoodsSpecValue"
>
update goods_spec_values
set goods_spec_id = #{goodsSpecId},
spec_value_name = #{specValueName},
part_no =#{partNo},
spec_value_image = #{specValueImage},
show_price = #{showPrice},
stock = #{stock},
sale_price = #{salePrice},
channel_price =#{channelPrice}
where id = #{id}
</update>
<update
id=
"updateMallGoodsSort"
>
update mall_goods
set sort = #{sort}
where id = #{id}
</update>
<update
id=
"updateMallGoodsByShelf"
>
update mall_goods
set shelf_status = #{status}
where id = #{id}
</update>
<update
id=
"removeMallGoods"
>
update mall_goods
set is_deleted = 1
where id = #{id}
</update>
<update
id=
"feignRemoveGoodsByBackUserAccountId"
>
update mall_goods
set is_deleted = 1
where user_account_id = #{id}
</update>
<delete
id=
"deleteMallGoodsResources"
>
delete
from mall_goods_resources
where mall_goods_id = #{id}
</delete>
<delete
id=
"deleteGoodsSpec"
>
delete
from goods_spec
<where>
<foreach
collection=
"list"
open=
"id in ("
close=
")"
item=
"item"
separator=
","
>
#{item}
</foreach>
</where>
</delete>
<delete
id=
"deleteGoodsSpecValues"
>
delete
from goods_spec_values
<where>
<foreach
collection=
"list"
open=
"id in ("
close=
")"
item=
"item"
separator=
","
>
#{item}
</foreach>
</where>
</delete>
<select
id=
"countMallGoodsByName"
resultType=
"java.lang.Integer"
>
select count(*)
from mall_goods
where is_deleted = 0
and trade_name = #{mallGoodsVO.tradeName}
and user_account_id = #{userAccountId}
<if
test=
"mallGoodsVO.id!=null"
>
and id
<![CDATA[<>]]>
#{mallGoodsVO.id}
</if>
</select>
<select
id=
"countMallGoods"
resultType=
"java.lang.Integer"
>
select count(*)
from mall_goods
where user_account_id = #{userAccountId}
</select>
<select
id=
"getMallGoodsBaseInfo"
resultType=
"com.mmc.pms.entity.mall.MallGoodsDO"
>
SELECT id,
goods_no,
trade_name,
description,
category_primary_id,
category_sub_id,
shelf_status,
goods_label,
label_show,
goods_details,
user_account_id,
sort
FROM mall_goods
WHERE id = #{id}
and is_deleted = 0
</select>
<select
id=
"getMallGoodsResources"
resultType=
"com.mmc.pms.entity.mall.MallGoodsResourcesDO"
>
SELECT id,
mall_goods_id,
url,
`type`
from mall_goods_resources
where mall_goods_id = #{id}
</select>
<select
id=
"getMallGoodsSpec"
resultType=
"com.mmc.pms.entity.mall.GoodsSpecDO"
>
select id,
mall_goods_id,
spec_name,
choose_type,
must,
sku_unit_id
from goods_spec
where mall_goods_id = #{id}
</select>
<select
id=
"getMallGoodsSpecValues"
resultType=
"com.mmc.pms.entity.mall.GoodsSpecValuesDO"
>
select id,
goods_spec_id,
spec_value_name,
part_no,
spec_value_image,
show_price,
stock,
sale_price,
channel_price
from goods_spec_values
<where>
<foreach
collection=
"list"
separator=
","
item=
"item"
open=
"goods_spec_id in ("
close=
")"
>
#{item}
</foreach>
</where>
</select>
<select
id=
"getSkuUnit"
resultType=
"com.mmc.pms.entity.SkuUnitDO"
>
SELECT id,
unit_name unitName,
create_time createTime
FROM sku_unit
WHERE is_deleted = 0
</select>
<select
id=
"countListMallGoods"
resultType=
"java.lang.Integer"
>
SELECT
count(*)
FROM
mall_goods
<where>
is_deleted = 0
<if
test=
"tradeName != null and tradeName !=''"
>
AND (trade_name LIKE CONCAT('%',#{tradeName},'%'))
</if>
<if
test=
"categoryPrimaryId != null"
>
and category_primary_id = #{categoryPrimaryId}
</if>
<if
test=
"userAccountId != null"
>
and user_account_id = #{userAccountId}
</if>
<if
test=
"shelfStatus != null"
>
and shelf_status = #{shelfStatus}
</if>
</where>
</select>
<select
id=
"listMallGoods"
resultType=
"com.mmc.pms.entity.mall.MallGoodsDO"
>
SELECT
mg.id,
mg.trade_name,
mg.shelf_status,
mg.create_time,
mg.category_primary_id,
mg.category_sub_id,
mg.user_account_id,
mg.description,
img.id as imgId,
img.url,
img.type
FROM
mall_goods mg
INNER JOIN mall_goods_resources img ON mg.id = img.mall_goods_id
AND img.type = 0
<where>
mg.is_deleted = 0
<if
test=
"tradeName != null and tradeName !=''"
>
AND (mg.trade_name LIKE CONCAT('%',#{tradeName},'%'))
</if>
<if
test=
"categoryPrimaryId != null"
>
and mg.category_primary_id = #{categoryPrimaryId}
</if>
<if
test=
"userAccountId != null"
>
and mg.user_account_id = #{userAccountId}
</if>
<if
test=
"shelfStatus != null"
>
and mg.shelf_status = #{shelfStatus}
</if>
</where>
ORDER BY
mg.shelf_status DESC , mg.sort DESC,mg.create_time DESC
limit #{pageNo},#{pageSize}
</select>
</mapper>
src/main/resources/not-check.yml
浏览文件 @
317c12fa
...
...
@@ -18,3 +18,8 @@ data-filter:
-
/pms/webDevice/getSecondDistrictInfo
-
/pms/webDevice/ad
-
/pms/actuator/health/readiness
-
/pms/app/goods/appMallGoodsDetails
-
/pms/category/appCategoryInfo
-
/pms/app/goods/queryBrandGoods
-
/pms/app/goods/queryGoodsInfoByCategorySub
-
/pms/mall/goods/feignRemoveGoodsByBackUserAccountId
\ No newline at end of file
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论