28 文件已重命名
58个文件已修改
1,083个文件已删除
275个文件已添加
| | |
| | | <artifactId>lombok</artifactId> |
| | | <optional>true</optional> |
| | | </dependency> |
| | | |
| | | <!-- lombok --> |
| | | <dependency> |
| | | <groupId>org.projectlombok</groupId> |
| | | <artifactId>lombok</artifactId> |
| | | </dependency> |
| | | |
| | | <dependency> |
| | | <groupId>com.baomidou</groupId> |
| | | <artifactId>mybatis-plus-boot-starter</artifactId> |
| | | <version>3.4.3.4</version> |
| | | <!-- pagehelper 包含该依赖存在版本冲突,因此不建议和 mp 一起混用 --> |
| | | <exclusions> |
| | | <exclusion> |
| | | <groupId>com.github.jsqlparser</groupId> |
| | | <artifactId>jsqlparser</artifactId> |
| | | </exclusion> |
| | | </exclusions> |
| | | </dependency> |
| | | <dependency> |
| | | <groupId>com.baomidou</groupId> |
| | | <artifactId>mybatis-plus-annotation</artifactId> |
| | | <version>3.4.3.4</version> |
| | | </dependency> |
| | | <dependency> |
| | | <groupId>com.baomidou</groupId> |
| | | <artifactId>mybatis-plus-generate</artifactId> |
| | | <version>2.3</version> |
| | | </dependency> |
| | | </dependencies> |
| | | |
| | | </project> |
| | |
| | | import org.springframework.web.multipart.MultipartFile; |
| | | import com.ruoyi.common.core.constant.ServiceNameConstants; |
| | | import com.ruoyi.common.core.domain.R; |
| | | import com.ruoyi.system.api.domain.SysFile; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysFile; |
| | | import com.ruoyi.system.api.factory.RemoteFileFallbackFactory; |
| | | |
| | | /** |
| | |
| | | import com.ruoyi.common.core.constant.SecurityConstants; |
| | | import com.ruoyi.common.core.constant.ServiceNameConstants; |
| | | import com.ruoyi.common.core.domain.R; |
| | | import com.ruoyi.system.api.domain.SysLogininfor; |
| | | import com.ruoyi.system.api.domain.SysOperLog; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysLogininfor; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysOperLog; |
| | | import com.ruoyi.system.api.factory.RemoteLogFallbackFactory; |
| | | |
| | | /** |
New file |
| | |
| | | package com.ruoyi.system.api; |
| | | |
| | | import com.ruoyi.common.core.constant.ServiceNameConstants; |
| | | import com.ruoyi.common.core.domain.R; |
| | | import com.ruoyi.system.api.domain.poji.member.Member; |
| | | import com.ruoyi.system.api.factory.RemoteUserFallbackFactory; |
| | | import com.ruoyi.system.api.model.AppMiniLoginDto; |
| | | import com.ruoyi.system.api.model.AppMiniLoginVo; |
| | | import org.springframework.cloud.openfeign.FeignClient; |
| | | import org.springframework.web.bind.annotation.PostMapping; |
| | | import org.springframework.web.bind.annotation.RequestBody; |
| | | |
| | | @FeignClient(contextId = "remoteMemberService", value = ServiceNameConstants.MEMBER_SERVICE, fallbackFactory = RemoteUserFallbackFactory.class) |
| | | public interface RemoteMemberService { |
| | | |
| | | @PostMapping("/member/getMember") |
| | | public R<Member> getMember(@RequestBody Long userId); |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.system.api; |
| | | |
| | | import com.ruoyi.common.core.constant.ServiceNameConstants; |
| | | import com.ruoyi.system.api.factory.RemoteUserFallbackFactory; |
| | | import org.springframework.cloud.openfeign.FeignClient; |
| | | |
| | | @FeignClient(contextId = "remoteOrderService", value = ServiceNameConstants.ORDER_SERVICE, fallbackFactory = RemoteUserFallbackFactory.class) |
| | | public interface RemoteOrderService { |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.system.api; |
| | | |
| | | import com.ruoyi.common.core.constant.ServiceNameConstants; |
| | | import com.ruoyi.system.api.factory.RemoteUserFallbackFactory; |
| | | import org.springframework.cloud.openfeign.FeignClient; |
| | | |
| | | @FeignClient(contextId = "remoteShopService", value = ServiceNameConstants.SHOP_SERVICE, fallbackFactory = RemoteUserFallbackFactory.class) |
| | | public interface RemoteShopService { |
| | | } |
| | |
| | | import com.ruoyi.common.core.constant.SecurityConstants; |
| | | import com.ruoyi.common.core.constant.ServiceNameConstants; |
| | | import com.ruoyi.common.core.domain.R; |
| | | import com.ruoyi.system.api.domain.SysUser; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysUser; |
| | | import com.ruoyi.system.api.factory.RemoteUserFallbackFactory; |
| | | import com.ruoyi.system.api.model.LoginUser; |
| | | |
New file |
| | |
| | | package com.ruoyi.system.api.constant; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppErrorContant |
| | | * @description: TODO |
| | | * @date 2023年02月13日 |
| | | * @version: 1.0 |
| | | */ |
| | | public interface AppErrorConstant { |
| | | |
| | | |
| | | String USER_NOT_LOGIN = "用户没有登录或登录已失效"; |
| | | |
| | | String AUTHORIZE_MISS = "授权信息不完整"; |
| | | |
| | | String AUTHORIZE_FAILED = "授权信息解密失败"; |
| | | |
| | | String USER_FROZE = "用户已被冻结"; |
| | | |
| | | String USER_NOT_MOBILE = "用户没有手机授权"; |
| | | |
| | | String NO_FIND_RESULT = "未找到编辑对象"; |
| | | |
| | | String NO_REQUIRED_PARAM = "缺少必要参数"; |
| | | |
| | | String CODE_EXPIRE = "验证码已过期"; |
| | | |
| | | String CODE_FAILED = "验证码错误"; |
| | | |
| | | String COUPON_NULL = "未找到优惠券"; |
| | | |
| | | String COUPON_FAILED = "未满足领取条件"; |
| | | |
| | | String NO_COUPON = "优惠券已领取完"; |
| | | |
| | | String DOUBLE_COUPON = "已拥有优惠券,请勿重复领取"; |
| | | |
| | | String REAL_NAME_FAILED = "实名认证失败,请检查上传的身份证图片"; |
| | | |
| | | String REAL_NAME_DIFF = "与资料填写姓名不符,非本人身份证"; |
| | | |
| | | String DISTRIBUTOR_APPLY_FAILED = "已经是分销员,请勿重复申请"; |
| | | |
| | | String DOUBLE_USER_BANK = "请勿重复绑定银行卡"; |
| | | |
| | | String USER_BANK_FAILED = "获取绑定银行卡失败"; |
| | | |
| | | String BEYOND_WITHDRAW = "超出可提现金额"; |
| | | |
| | | String BEYOND_WITHDRAW_time = "超出可提现金额"; |
| | | |
| | | String USER_NO_WITHDRAW = "用户没有提现权限"; |
| | | |
| | | String WX_WITHDRAW_FAILED = "用户没有提现权限"; |
| | | |
| | | String MOBILE_FAILED = "验证手机非绑定手机"; |
| | | |
| | | String AGREEMENT_FAILED = "获取协议失败"; |
| | | |
| | | String GOODS_DOWN = "商品已下架"; |
| | | } |
New file |
| | |
| | | package com.ruoyi.system.api.constant; |
| | | |
| | | import com.fasterxml.jackson.annotation.JsonFormat; |
| | | import lombok.Getter; |
| | | |
| | | import java.util.HashMap; |
| | | import java.util.Map; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName CodeEnum |
| | | * @description: TODO |
| | | * @date 2023年03月06日 |
| | | * @version: 1.0 |
| | | */ |
| | | @JsonFormat(shape = JsonFormat.Shape.OBJECT) |
| | | @Getter |
| | | public enum CodeEnum { |
| | | |
| | | SUCCESS("调用成功","200"), |
| | | NO_STOCK("没有库存","101"), |
| | | LIMIT_BUY("达到限购","102"), |
| | | NO_GOODS("商品下架","103"), |
| | | COUPON_FAILED("优惠券调用失败","111"), |
| | | INTEGRAL_FAILED("积分调用失败","112"), |
| | | HANDLE_ORDER_FAILED("订单处理失败","113"); |
| | | |
| | | |
| | | String name; |
| | | String code; |
| | | |
| | | private static Map<String, CodeEnum> valueMap = new HashMap<>(); |
| | | |
| | | static { |
| | | for(CodeEnum gender : CodeEnum.values()) { |
| | | valueMap.put(gender.name, gender); |
| | | } |
| | | } |
| | | |
| | | CodeEnum(String name, String code) { |
| | | this.code = code; |
| | | this.name=name; |
| | | } |
| | | |
| | | public static String getByName(String name) { |
| | | CodeEnum result = valueMap.get(name); |
| | | if(result == null) { |
| | | throw new IllegalArgumentException("No element matches " + name); |
| | | } |
| | | return result.code; |
| | | } |
| | | } |
New file |
| | |
| | | package com.ruoyi.system.api.constant; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName HttpStatus |
| | | * @description: TODO |
| | | * @date 2023年02月13日 |
| | | * @version: 1.0 |
| | | */ |
| | | public class HttpStatus { |
| | | |
| | | /** |
| | | * 操作成功 |
| | | */ |
| | | public static final int SUCCESS = 200; |
| | | |
| | | /** |
| | | * 对象创建成功 |
| | | */ |
| | | public static final int CREATED = 201; |
| | | |
| | | /** |
| | | * 请求已经被接受 |
| | | */ |
| | | public static final int ACCEPTED = 202; |
| | | |
| | | /** |
| | | * 操作已经执行成功,但是没有返回数据 |
| | | */ |
| | | public static final int NO_CONTENT = 204; |
| | | |
| | | /** |
| | | * 资源已被移除 |
| | | */ |
| | | public static final int MOVED_PERM = 301; |
| | | |
| | | /** |
| | | * 重定向 |
| | | */ |
| | | public static final int SEE_OTHER = 303; |
| | | |
| | | /** |
| | | * 资源没有被修改 |
| | | */ |
| | | public static final int NOT_MODIFIED = 304; |
| | | |
| | | /** |
| | | * 参数列表错误(缺少,格式不匹配) |
| | | */ |
| | | public static final int BAD_REQUEST = 400; |
| | | |
| | | /** |
| | | * 未授权 |
| | | */ |
| | | public static final int UNAUTHORIZED = 401; |
| | | |
| | | /** |
| | | * 访问受限,授权过期 |
| | | */ |
| | | public static final int FORBIDDEN = 403; |
| | | |
| | | /** |
| | | * 资源,服务未找到 |
| | | */ |
| | | public static final int NOT_FOUND = 404; |
| | | |
| | | /** |
| | | * 不允许的http方法 |
| | | */ |
| | | public static final int BAD_METHOD = 405; |
| | | |
| | | /** |
| | | * 资源冲突,或者资源被锁 |
| | | */ |
| | | public static final int CONFLICT = 409; |
| | | |
| | | /** |
| | | * 不支持的数据,媒体类型 |
| | | */ |
| | | public static final int UNSUPPORTED_TYPE = 415; |
| | | |
| | | /** |
| | | * 系统内部错误 |
| | | */ |
| | | public static final int ERROR = 500; |
| | | |
| | | /** |
| | | * 接口未实现 |
| | | */ |
| | | public static final int NOT_IMPLEMENTED = 501; |
| | | } |
New file |
| | |
| | | package com.ruoyi.system.api.constant; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName SecurityConstant |
| | | * @description: TODO |
| | | * @date 2023年02月21日 |
| | | * @version: 1.0 |
| | | */ |
| | | public interface SecurityConstant { |
| | | |
| | | |
| | | /** |
| | | * 微信sessionKey前缀 |
| | | */ |
| | | String SESSION_KEY = "SESSION_KEY:"; |
| | | |
| | | |
| | | /** |
| | | * 用户验证码前缀key |
| | | */ |
| | | String MESSAGE_CODE = "MESSAGE_CODE:"; |
| | | |
| | | /** |
| | | * 用户验证码前缀key |
| | | */ |
| | | String MINI_CODE = "MINI_CODE:"; |
| | | |
| | | /** |
| | | * 用户验证码前缀key |
| | | */ |
| | | String WX_TOKEN = "WX_TOKEN"; |
| | | } |
New file |
| | |
| | | package com.ruoyi.system.api.domain.poji.member; |
| | | |
| | | import java.util.Date; |
| | | |
| | | import com.baomidou.mybatisplus.annotation.IdType; |
| | | import com.baomidou.mybatisplus.annotation.TableId; |
| | | import com.baomidou.mybatisplus.annotation.TableField; |
| | | import com.baomidou.mybatisplus.activerecord.Model; |
| | | import com.baomidou.mybatisplus.annotation.TableName; |
| | | import java.io.Serializable; |
| | | |
| | | import lombok.Data; |
| | | import lombok.EqualsAndHashCode; |
| | | import lombok.experimental.Accessors; |
| | | |
| | | /** |
| | | * <p> |
| | | * 小程序用户 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | @Data |
| | | @EqualsAndHashCode(callSuper = false) |
| | | @Accessors(chain = true) |
| | | @TableName("t_member") |
| | | public class Member extends Model<Member> { |
| | | |
| | | private static final long serialVersionUID = 1L; |
| | | |
| | | /** |
| | | * 用户id |
| | | */ |
| | | @TableId(value = "user_id",type = IdType.AUTO) |
| | | private Long userId; |
| | | /** |
| | | * 删除标记 |
| | | */ |
| | | @TableField("del_flag") |
| | | private Integer delFlag; |
| | | /** |
| | | * 会员id |
| | | */ |
| | | @TableField("member_id") |
| | | private String memberId; |
| | | /** |
| | | * 会员编号 |
| | | */ |
| | | @TableField("member_no") |
| | | private String memberNo; |
| | | /** |
| | | * 微信openid |
| | | */ |
| | | @TableField("wx_openid") |
| | | private String wxOpenid; |
| | | /** |
| | | * 小程序openid |
| | | */ |
| | | @TableField("mini_openid") |
| | | private String miniOpenid; |
| | | /** |
| | | * 微信unionid |
| | | */ |
| | | @TableField("wx_unionid") |
| | | private String wxUnionid; |
| | | /** |
| | | * 关联商户id |
| | | */ |
| | | @TableField("realtion_shop_id") |
| | | private Long realtionShopId; |
| | | /** |
| | | * 真实姓名 |
| | | */ |
| | | @TableField("real_name") |
| | | private String realName; |
| | | /** |
| | | * 手机号 |
| | | */ |
| | | private String mobile; |
| | | /** |
| | | * 性别0未知1男2女 |
| | | */ |
| | | private Integer gender; |
| | | /** |
| | | * 推荐人 |
| | | */ |
| | | private String referrer; |
| | | /** |
| | | * 顾客来源 |
| | | */ |
| | | @TableField("customer_source") |
| | | private String customerSource; |
| | | /** |
| | | * 等级 |
| | | */ |
| | | private String level; |
| | | /** |
| | | * 生日 |
| | | */ |
| | | private String birthday; |
| | | /** |
| | | * 创建时间 |
| | | */ |
| | | @TableField("create_time") |
| | | private Date createTime; |
| | | /** |
| | | * 更新时间 |
| | | */ |
| | | @TableField("update_time") |
| | | private Date updateTime; |
| | | /** |
| | | * 更新用户id |
| | | */ |
| | | @TableField("update_user_id") |
| | | private Long updateUserId; |
| | | |
| | | |
| | | @Override |
| | | protected Serializable pkVal() { |
| | | return this.userId; |
| | | } |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.system.api.domain.poji.sys; |
| | | |
| | | import java.util.ArrayList; |
| | | import java.util.List; |
| | | import javax.validation.constraints.Email; |
| | | import javax.validation.constraints.NotBlank; |
| | | import javax.validation.constraints.NotNull; |
| | | import javax.validation.constraints.Size; |
| | | import org.apache.commons.lang3.builder.ToStringBuilder; |
| | | import org.apache.commons.lang3.builder.ToStringStyle; |
| | | import com.ruoyi.common.core.web.domain.BaseEntity; |
| | | |
| | | /** |
| | | * 部门表 sys_dept |
| | | * |
| | | * @author ruoyi |
| | | */ |
| | | public class SysDept extends BaseEntity |
| | | { |
| | | private static final long serialVersionUID = 1L; |
| | | |
| | | /** 部门ID */ |
| | | private Long deptId; |
| | | |
| | | /** 父部门ID */ |
| | | private Long parentId; |
| | | |
| | | /** 祖级列表 */ |
| | | private String ancestors; |
| | | |
| | | /** 部门名称 */ |
| | | private String deptName; |
| | | |
| | | /** 显示顺序 */ |
| | | private Integer orderNum; |
| | | |
| | | /** 负责人 */ |
| | | private String leader; |
| | | |
| | | /** 联系电话 */ |
| | | private String phone; |
| | | |
| | | /** 邮箱 */ |
| | | private String email; |
| | | |
| | | /** 部门状态:0正常,1停用 */ |
| | | private String status; |
| | | |
| | | /** 删除标志(0代表存在 2代表删除) */ |
| | | private String delFlag; |
| | | |
| | | /** 父部门名称 */ |
| | | private String parentName; |
| | | |
| | | /** 子部门 */ |
| | | private List<SysDept> children = new ArrayList<SysDept>(); |
| | | |
| | | public Long getDeptId() |
| | | { |
| | | return deptId; |
| | | } |
| | | |
| | | public void setDeptId(Long deptId) |
| | | { |
| | | this.deptId = deptId; |
| | | } |
| | | |
| | | public Long getParentId() |
| | | { |
| | | return parentId; |
| | | } |
| | | |
| | | public void setParentId(Long parentId) |
| | | { |
| | | this.parentId = parentId; |
| | | } |
| | | |
| | | public String getAncestors() |
| | | { |
| | | return ancestors; |
| | | } |
| | | |
| | | public void setAncestors(String ancestors) |
| | | { |
| | | this.ancestors = ancestors; |
| | | } |
| | | |
| | | @NotBlank(message = "部门名称不能为空") |
| | | @Size(min = 0, max = 30, message = "部门名称长度不能超过30个字符") |
| | | public String getDeptName() |
| | | { |
| | | return deptName; |
| | | } |
| | | |
| | | public void setDeptName(String deptName) |
| | | { |
| | | this.deptName = deptName; |
| | | } |
| | | |
| | | @NotNull(message = "显示顺序不能为空") |
| | | public Integer getOrderNum() |
| | | { |
| | | return orderNum; |
| | | } |
| | | |
| | | public void setOrderNum(Integer orderNum) |
| | | { |
| | | this.orderNum = orderNum; |
| | | } |
| | | |
| | | public String getLeader() |
| | | { |
| | | return leader; |
| | | } |
| | | |
| | | public void setLeader(String leader) |
| | | { |
| | | this.leader = leader; |
| | | } |
| | | |
| | | @Size(min = 0, max = 11, message = "联系电话长度不能超过11个字符") |
| | | public String getPhone() |
| | | { |
| | | return phone; |
| | | } |
| | | |
| | | public void setPhone(String phone) |
| | | { |
| | | this.phone = phone; |
| | | } |
| | | |
| | | @Email(message = "邮箱格式不正确") |
| | | @Size(min = 0, max = 50, message = "邮箱长度不能超过50个字符") |
| | | public String getEmail() |
| | | { |
| | | return email; |
| | | } |
| | | |
| | | public void setEmail(String email) |
| | | { |
| | | this.email = email; |
| | | } |
| | | |
| | | public String getStatus() |
| | | { |
| | | return status; |
| | | } |
| | | |
| | | public void setStatus(String status) |
| | | { |
| | | this.status = status; |
| | | } |
| | | |
| | | public String getDelFlag() |
| | | { |
| | | return delFlag; |
| | | } |
| | | |
| | | public void setDelFlag(String delFlag) |
| | | { |
| | | this.delFlag = delFlag; |
| | | } |
| | | |
| | | public String getParentName() |
| | | { |
| | | return parentName; |
| | | } |
| | | |
| | | public void setParentName(String parentName) |
| | | { |
| | | this.parentName = parentName; |
| | | } |
| | | |
| | | public List<SysDept> getChildren() |
| | | { |
| | | return children; |
| | | } |
| | | |
| | | public void setChildren(List<SysDept> children) |
| | | { |
| | | this.children = children; |
| | | } |
| | | |
| | | @Override |
| | | public String toString() { |
| | | return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) |
| | | .append("deptId", getDeptId()) |
| | | .append("parentId", getParentId()) |
| | | .append("ancestors", getAncestors()) |
| | | .append("deptName", getDeptName()) |
| | | .append("orderNum", getOrderNum()) |
| | | .append("leader", getLeader()) |
| | | .append("phone", getPhone()) |
| | | .append("email", getEmail()) |
| | | .append("status", getStatus()) |
| | | .append("delFlag", getDelFlag()) |
| | | .append("createBy", getCreateBy()) |
| | | .append("createTime", getCreateTime()) |
| | | .append("updateBy", getUpdateBy()) |
| | | .append("updateTime", getUpdateTime()) |
| | | .toString(); |
| | | } |
| | | } |
New file |
| | |
| | | package com.ruoyi.system.api.domain.poji.sys; |
| | | |
| | | import javax.validation.constraints.NotBlank; |
| | | import javax.validation.constraints.Size; |
| | | import org.apache.commons.lang3.builder.ToStringBuilder; |
| | | import org.apache.commons.lang3.builder.ToStringStyle; |
| | | import com.ruoyi.common.core.annotation.Excel; |
| | | import com.ruoyi.common.core.annotation.Excel.ColumnType; |
| | | import com.ruoyi.common.core.constant.UserConstants; |
| | | import com.ruoyi.common.core.web.domain.BaseEntity; |
| | | |
| | | /** |
| | | * 字典数据表 sys_dict_data |
| | | * |
| | | * @author ruoyi |
| | | */ |
| | | public class SysDictData extends BaseEntity |
| | | { |
| | | private static final long serialVersionUID = 1L; |
| | | |
| | | /** 字典编码 */ |
| | | @Excel(name = "字典编码", cellType = ColumnType.NUMERIC) |
| | | private Long dictCode; |
| | | |
| | | /** 字典排序 */ |
| | | @Excel(name = "字典排序", cellType = ColumnType.NUMERIC) |
| | | private Long dictSort; |
| | | |
| | | /** 字典标签 */ |
| | | @Excel(name = "字典标签") |
| | | private String dictLabel; |
| | | |
| | | /** 字典键值 */ |
| | | @Excel(name = "字典键值") |
| | | private String dictValue; |
| | | |
| | | /** 字典类型 */ |
| | | @Excel(name = "字典类型") |
| | | private String dictType; |
| | | |
| | | /** 样式属性(其他样式扩展) */ |
| | | private String cssClass; |
| | | |
| | | /** 表格字典样式 */ |
| | | private String listClass; |
| | | |
| | | /** 是否默认(Y是 N否) */ |
| | | @Excel(name = "是否默认", readConverterExp = "Y=是,N=否") |
| | | private String isDefault; |
| | | |
| | | /** 状态(0正常 1停用) */ |
| | | @Excel(name = "状态", readConverterExp = "0=正常,1=停用") |
| | | private String status; |
| | | |
| | | public Long getDictCode() |
| | | { |
| | | return dictCode; |
| | | } |
| | | |
| | | public void setDictCode(Long dictCode) |
| | | { |
| | | this.dictCode = dictCode; |
| | | } |
| | | |
| | | public Long getDictSort() |
| | | { |
| | | return dictSort; |
| | | } |
| | | |
| | | public void setDictSort(Long dictSort) |
| | | { |
| | | this.dictSort = dictSort; |
| | | } |
| | | |
| | | @NotBlank(message = "字典标签不能为空") |
| | | @Size(min = 0, max = 100, message = "字典标签长度不能超过100个字符") |
| | | public String getDictLabel() |
| | | { |
| | | return dictLabel; |
| | | } |
| | | |
| | | public void setDictLabel(String dictLabel) |
| | | { |
| | | this.dictLabel = dictLabel; |
| | | } |
| | | |
| | | @NotBlank(message = "字典键值不能为空") |
| | | @Size(min = 0, max = 100, message = "字典键值长度不能超过100个字符") |
| | | public String getDictValue() |
| | | { |
| | | return dictValue; |
| | | } |
| | | |
| | | public void setDictValue(String dictValue) |
| | | { |
| | | this.dictValue = dictValue; |
| | | } |
| | | |
| | | @NotBlank(message = "字典类型不能为空") |
| | | @Size(min = 0, max = 100, message = "字典类型长度不能超过100个字符") |
| | | public String getDictType() |
| | | { |
| | | return dictType; |
| | | } |
| | | |
| | | public void setDictType(String dictType) |
| | | { |
| | | this.dictType = dictType; |
| | | } |
| | | |
| | | @Size(min = 0, max = 100, message = "样式属性长度不能超过100个字符") |
| | | public String getCssClass() |
| | | { |
| | | return cssClass; |
| | | } |
| | | |
| | | public void setCssClass(String cssClass) |
| | | { |
| | | this.cssClass = cssClass; |
| | | } |
| | | |
| | | public String getListClass() |
| | | { |
| | | return listClass; |
| | | } |
| | | |
| | | public void setListClass(String listClass) |
| | | { |
| | | this.listClass = listClass; |
| | | } |
| | | |
| | | public boolean getDefault() |
| | | { |
| | | return UserConstants.YES.equals(this.isDefault); |
| | | } |
| | | |
| | | public String getIsDefault() |
| | | { |
| | | return isDefault; |
| | | } |
| | | |
| | | public void setIsDefault(String isDefault) |
| | | { |
| | | this.isDefault = isDefault; |
| | | } |
| | | |
| | | public String getStatus() |
| | | { |
| | | return status; |
| | | } |
| | | |
| | | public void setStatus(String status) |
| | | { |
| | | this.status = status; |
| | | } |
| | | |
| | | @Override |
| | | public String toString() { |
| | | return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) |
| | | .append("dictCode", getDictCode()) |
| | | .append("dictSort", getDictSort()) |
| | | .append("dictLabel", getDictLabel()) |
| | | .append("dictValue", getDictValue()) |
| | | .append("dictType", getDictType()) |
| | | .append("cssClass", getCssClass()) |
| | | .append("listClass", getListClass()) |
| | | .append("isDefault", getIsDefault()) |
| | | .append("status", getStatus()) |
| | | .append("createBy", getCreateBy()) |
| | | .append("createTime", getCreateTime()) |
| | | .append("updateBy", getUpdateBy()) |
| | | .append("updateTime", getUpdateTime()) |
| | | .append("remark", getRemark()) |
| | | .toString(); |
| | | } |
| | | } |
New file |
| | |
| | | package com.ruoyi.system.api.domain.poji.sys; |
| | | |
| | | import javax.validation.constraints.NotBlank; |
| | | import javax.validation.constraints.Pattern; |
| | | import javax.validation.constraints.Size; |
| | | import org.apache.commons.lang3.builder.ToStringBuilder; |
| | | import org.apache.commons.lang3.builder.ToStringStyle; |
| | | import com.ruoyi.common.core.annotation.Excel; |
| | | import com.ruoyi.common.core.annotation.Excel.ColumnType; |
| | | import com.ruoyi.common.core.web.domain.BaseEntity; |
| | | |
| | | /** |
| | | * 字典类型表 sys_dict_type |
| | | * |
| | | * @author ruoyi |
| | | */ |
| | | public class SysDictType extends BaseEntity |
| | | { |
| | | private static final long serialVersionUID = 1L; |
| | | |
| | | /** 字典主键 */ |
| | | @Excel(name = "字典主键", cellType = ColumnType.NUMERIC) |
| | | private Long dictId; |
| | | |
| | | /** 字典名称 */ |
| | | @Excel(name = "字典名称") |
| | | private String dictName; |
| | | |
| | | /** 字典类型 */ |
| | | @Excel(name = "字典类型") |
| | | private String dictType; |
| | | |
| | | /** 状态(0正常 1停用) */ |
| | | @Excel(name = "状态", readConverterExp = "0=正常,1=停用") |
| | | private String status; |
| | | |
| | | public Long getDictId() |
| | | { |
| | | return dictId; |
| | | } |
| | | |
| | | public void setDictId(Long dictId) |
| | | { |
| | | this.dictId = dictId; |
| | | } |
| | | |
| | | @NotBlank(message = "字典名称不能为空") |
| | | @Size(min = 0, max = 100, message = "字典类型名称长度不能超过100个字符") |
| | | public String getDictName() |
| | | { |
| | | return dictName; |
| | | } |
| | | |
| | | public void setDictName(String dictName) |
| | | { |
| | | this.dictName = dictName; |
| | | } |
| | | |
| | | @NotBlank(message = "字典类型不能为空") |
| | | @Size(min = 0, max = 100, message = "字典类型类型长度不能超过100个字符") |
| | | @Pattern(regexp = "^[a-z][a-z0-9_]*$", message = "字典类型必须以字母开头,且只能为(小写字母,数字,下滑线)") |
| | | public String getDictType() |
| | | { |
| | | return dictType; |
| | | } |
| | | |
| | | public void setDictType(String dictType) |
| | | { |
| | | this.dictType = dictType; |
| | | } |
| | | |
| | | public String getStatus() |
| | | { |
| | | return status; |
| | | } |
| | | |
| | | public void setStatus(String status) |
| | | { |
| | | this.status = status; |
| | | } |
| | | |
| | | @Override |
| | | public String toString() { |
| | | return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) |
| | | .append("dictId", getDictId()) |
| | | .append("dictName", getDictName()) |
| | | .append("dictType", getDictType()) |
| | | .append("status", getStatus()) |
| | | .append("createBy", getCreateBy()) |
| | | .append("createTime", getCreateTime()) |
| | | .append("updateBy", getUpdateBy()) |
| | | .append("updateTime", getUpdateTime()) |
| | | .append("remark", getRemark()) |
| | | .toString(); |
| | | } |
| | | } |
New file |
| | |
| | | package com.ruoyi.system.api.domain.poji.sys; |
| | | |
| | | import org.apache.commons.lang3.builder.ToStringBuilder; |
| | | import org.apache.commons.lang3.builder.ToStringStyle; |
| | | |
| | | /** |
| | | * 文件信息 |
| | | * |
| | | * @author ruoyi |
| | | */ |
| | | public class SysFile |
| | | { |
| | | /** |
| | | * 文件名称 |
| | | */ |
| | | private String name; |
| | | |
| | | /** |
| | | * 文件地址 |
| | | */ |
| | | private String url; |
| | | |
| | | public String getName() |
| | | { |
| | | return name; |
| | | } |
| | | |
| | | public void setName(String name) |
| | | { |
| | | this.name = name; |
| | | } |
| | | |
| | | public String getUrl() |
| | | { |
| | | return url; |
| | | } |
| | | |
| | | public void setUrl(String url) |
| | | { |
| | | this.url = url; |
| | | } |
| | | |
| | | @Override |
| | | public String toString() { |
| | | return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) |
| | | .append("name", getName()) |
| | | .append("url", getUrl()) |
| | | .toString(); |
| | | } |
| | | } |
New file |
| | |
| | | package com.ruoyi.system.api.domain.poji.sys; |
| | | |
| | | import java.util.Date; |
| | | import com.fasterxml.jackson.annotation.JsonFormat; |
| | | import com.ruoyi.common.core.annotation.Excel; |
| | | import com.ruoyi.common.core.annotation.Excel.ColumnType; |
| | | import com.ruoyi.common.core.web.domain.BaseEntity; |
| | | |
| | | /** |
| | | * 系统访问记录表 sys_logininfor |
| | | * |
| | | * @author ruoyi |
| | | */ |
| | | public class SysLogininfor extends BaseEntity |
| | | { |
| | | private static final long serialVersionUID = 1L; |
| | | |
| | | /** ID */ |
| | | @Excel(name = "序号", cellType = ColumnType.NUMERIC) |
| | | private Long infoId; |
| | | |
| | | /** 用户账号 */ |
| | | @Excel(name = "用户账号") |
| | | private String userName; |
| | | |
| | | /** 状态 0成功 1失败 */ |
| | | @Excel(name = "状态", readConverterExp = "0=成功,1=失败") |
| | | private String status; |
| | | |
| | | /** 地址 */ |
| | | @Excel(name = "地址") |
| | | private String ipaddr; |
| | | |
| | | /** 描述 */ |
| | | @Excel(name = "描述") |
| | | private String msg; |
| | | |
| | | /** 访问时间 */ |
| | | @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") |
| | | @Excel(name = "访问时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") |
| | | private Date accessTime; |
| | | |
| | | public Long getInfoId() |
| | | { |
| | | return infoId; |
| | | } |
| | | |
| | | public void setInfoId(Long infoId) |
| | | { |
| | | this.infoId = infoId; |
| | | } |
| | | |
| | | public String getUserName() |
| | | { |
| | | return userName; |
| | | } |
| | | |
| | | public void setUserName(String userName) |
| | | { |
| | | this.userName = userName; |
| | | } |
| | | |
| | | public String getStatus() |
| | | { |
| | | return status; |
| | | } |
| | | |
| | | public void setStatus(String status) |
| | | { |
| | | this.status = status; |
| | | } |
| | | |
| | | public String getIpaddr() |
| | | { |
| | | return ipaddr; |
| | | } |
| | | |
| | | public void setIpaddr(String ipaddr) |
| | | { |
| | | this.ipaddr = ipaddr; |
| | | } |
| | | |
| | | public String getMsg() |
| | | { |
| | | return msg; |
| | | } |
| | | |
| | | public void setMsg(String msg) |
| | | { |
| | | this.msg = msg; |
| | | } |
| | | |
| | | public Date getAccessTime() |
| | | { |
| | | return accessTime; |
| | | } |
| | | |
| | | public void setAccessTime(Date accessTime) |
| | | { |
| | | this.accessTime = accessTime; |
| | | } |
| | | } |
New file |
| | |
| | | package com.ruoyi.system.api.domain.poji.sys; |
| | | |
| | | import java.util.Date; |
| | | import com.fasterxml.jackson.annotation.JsonFormat; |
| | | import com.ruoyi.common.core.annotation.Excel; |
| | | import com.ruoyi.common.core.annotation.Excel.ColumnType; |
| | | import com.ruoyi.common.core.web.domain.BaseEntity; |
| | | |
| | | /** |
| | | * 操作日志记录表 oper_log |
| | | * |
| | | * @author ruoyi |
| | | */ |
| | | public class SysOperLog extends BaseEntity |
| | | { |
| | | private static final long serialVersionUID = 1L; |
| | | |
| | | /** 日志主键 */ |
| | | @Excel(name = "操作序号", cellType = ColumnType.NUMERIC) |
| | | private Long operId; |
| | | |
| | | /** 操作模块 */ |
| | | @Excel(name = "操作模块") |
| | | private String title; |
| | | |
| | | /** 业务类型(0其它 1新增 2修改 3删除) */ |
| | | @Excel(name = "业务类型", readConverterExp = "0=其它,1=新增,2=修改,3=删除,4=授权,5=导出,6=导入,7=强退,8=生成代码,9=清空数据") |
| | | private Integer businessType; |
| | | |
| | | /** 业务类型数组 */ |
| | | private Integer[] businessTypes; |
| | | |
| | | /** 请求方法 */ |
| | | @Excel(name = "请求方法") |
| | | private String method; |
| | | |
| | | /** 请求方式 */ |
| | | @Excel(name = "请求方式") |
| | | private String requestMethod; |
| | | |
| | | /** 操作类别(0其它 1后台用户 2手机端用户) */ |
| | | @Excel(name = "操作类别", readConverterExp = "0=其它,1=后台用户,2=手机端用户") |
| | | private Integer operatorType; |
| | | |
| | | /** 操作人员 */ |
| | | @Excel(name = "操作人员") |
| | | private String operName; |
| | | |
| | | /** 部门名称 */ |
| | | @Excel(name = "部门名称") |
| | | private String deptName; |
| | | |
| | | /** 请求url */ |
| | | @Excel(name = "请求地址") |
| | | private String operUrl; |
| | | |
| | | /** 操作地址 */ |
| | | @Excel(name = "操作地址") |
| | | private String operIp; |
| | | |
| | | /** 请求参数 */ |
| | | @Excel(name = "请求参数") |
| | | private String operParam; |
| | | |
| | | /** 返回参数 */ |
| | | @Excel(name = "返回参数") |
| | | private String jsonResult; |
| | | |
| | | /** 操作状态(0正常 1异常) */ |
| | | @Excel(name = "状态", readConverterExp = "0=正常,1=异常") |
| | | private Integer status; |
| | | |
| | | /** 错误消息 */ |
| | | @Excel(name = "错误消息") |
| | | private String errorMsg; |
| | | |
| | | /** 操作时间 */ |
| | | @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") |
| | | @Excel(name = "操作时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") |
| | | private Date operTime; |
| | | |
| | | /** 消耗时间 */ |
| | | @Excel(name = "消耗时间", suffix = "毫秒") |
| | | private Long costTime; |
| | | |
| | | public Long getOperId() |
| | | { |
| | | return operId; |
| | | } |
| | | |
| | | public void setOperId(Long operId) |
| | | { |
| | | this.operId = operId; |
| | | } |
| | | |
| | | public String getTitle() |
| | | { |
| | | return title; |
| | | } |
| | | |
| | | public void setTitle(String title) |
| | | { |
| | | this.title = title; |
| | | } |
| | | |
| | | public Integer getBusinessType() |
| | | { |
| | | return businessType; |
| | | } |
| | | |
| | | public void setBusinessType(Integer businessType) |
| | | { |
| | | this.businessType = businessType; |
| | | } |
| | | |
| | | public Integer[] getBusinessTypes() |
| | | { |
| | | return businessTypes; |
| | | } |
| | | |
| | | public void setBusinessTypes(Integer[] businessTypes) |
| | | { |
| | | this.businessTypes = businessTypes; |
| | | } |
| | | |
| | | public String getMethod() |
| | | { |
| | | return method; |
| | | } |
| | | |
| | | public void setMethod(String method) |
| | | { |
| | | this.method = method; |
| | | } |
| | | |
| | | public String getRequestMethod() |
| | | { |
| | | return requestMethod; |
| | | } |
| | | |
| | | public void setRequestMethod(String requestMethod) |
| | | { |
| | | this.requestMethod = requestMethod; |
| | | } |
| | | |
| | | public Integer getOperatorType() |
| | | { |
| | | return operatorType; |
| | | } |
| | | |
| | | public void setOperatorType(Integer operatorType) |
| | | { |
| | | this.operatorType = operatorType; |
| | | } |
| | | |
| | | public String getOperName() |
| | | { |
| | | return operName; |
| | | } |
| | | |
| | | public void setOperName(String operName) |
| | | { |
| | | this.operName = operName; |
| | | } |
| | | |
| | | public String getDeptName() |
| | | { |
| | | return deptName; |
| | | } |
| | | |
| | | public void setDeptName(String deptName) |
| | | { |
| | | this.deptName = deptName; |
| | | } |
| | | |
| | | public String getOperUrl() |
| | | { |
| | | return operUrl; |
| | | } |
| | | |
| | | public void setOperUrl(String operUrl) |
| | | { |
| | | this.operUrl = operUrl; |
| | | } |
| | | |
| | | public String getOperIp() |
| | | { |
| | | return operIp; |
| | | } |
| | | |
| | | public void setOperIp(String operIp) |
| | | { |
| | | this.operIp = operIp; |
| | | } |
| | | |
| | | public String getOperParam() |
| | | { |
| | | return operParam; |
| | | } |
| | | |
| | | public void setOperParam(String operParam) |
| | | { |
| | | this.operParam = operParam; |
| | | } |
| | | |
| | | public String getJsonResult() |
| | | { |
| | | return jsonResult; |
| | | } |
| | | |
| | | public void setJsonResult(String jsonResult) |
| | | { |
| | | this.jsonResult = jsonResult; |
| | | } |
| | | |
| | | public Integer getStatus() |
| | | { |
| | | return status; |
| | | } |
| | | |
| | | public void setStatus(Integer status) |
| | | { |
| | | this.status = status; |
| | | } |
| | | |
| | | public String getErrorMsg() |
| | | { |
| | | return errorMsg; |
| | | } |
| | | |
| | | public void setErrorMsg(String errorMsg) |
| | | { |
| | | this.errorMsg = errorMsg; |
| | | } |
| | | |
| | | public Date getOperTime() |
| | | { |
| | | return operTime; |
| | | } |
| | | |
| | | public void setOperTime(Date operTime) |
| | | { |
| | | this.operTime = operTime; |
| | | } |
| | | |
| | | public Long getCostTime() |
| | | { |
| | | return costTime; |
| | | } |
| | | |
| | | public void setCostTime(Long costTime) |
| | | { |
| | | this.costTime = costTime; |
| | | } |
| | | } |
New file |
| | |
| | | package com.ruoyi.system.api.domain.poji.sys; |
| | | |
| | | import java.util.Set; |
| | | import javax.validation.constraints.NotBlank; |
| | | import javax.validation.constraints.NotNull; |
| | | import javax.validation.constraints.Size; |
| | | import org.apache.commons.lang3.builder.ToStringBuilder; |
| | | import org.apache.commons.lang3.builder.ToStringStyle; |
| | | import com.ruoyi.common.core.annotation.Excel; |
| | | import com.ruoyi.common.core.annotation.Excel.ColumnType; |
| | | import com.ruoyi.common.core.web.domain.BaseEntity; |
| | | |
| | | /** |
| | | * 角色表 sys_role |
| | | * |
| | | * @author ruoyi |
| | | */ |
| | | public class SysRole extends BaseEntity |
| | | { |
| | | private static final long serialVersionUID = 1L; |
| | | |
| | | /** 角色ID */ |
| | | @Excel(name = "角色序号", cellType = ColumnType.NUMERIC) |
| | | private Long roleId; |
| | | |
| | | /** 角色名称 */ |
| | | @Excel(name = "角色名称") |
| | | private String roleName; |
| | | |
| | | /** 角色权限 */ |
| | | @Excel(name = "角色权限") |
| | | private String roleKey; |
| | | |
| | | /** 角色排序 */ |
| | | @Excel(name = "角色排序") |
| | | private Integer roleSort; |
| | | |
| | | /** 数据范围(1:所有数据权限;2:自定义数据权限;3:本部门数据权限;4:本部门及以下数据权限;5:仅本人数据权限) */ |
| | | @Excel(name = "数据范围", readConverterExp = "1=所有数据权限,2=自定义数据权限,3=本部门数据权限,4=本部门及以下数据权限,5=仅本人数据权限") |
| | | private String dataScope; |
| | | |
| | | /** 菜单树选择项是否关联显示( 0:父子不互相关联显示 1:父子互相关联显示) */ |
| | | private boolean menuCheckStrictly; |
| | | |
| | | /** 部门树选择项是否关联显示(0:父子不互相关联显示 1:父子互相关联显示 ) */ |
| | | private boolean deptCheckStrictly; |
| | | |
| | | /** 角色状态(0正常 1停用) */ |
| | | @Excel(name = "角色状态", readConverterExp = "0=正常,1=停用") |
| | | private String status; |
| | | |
| | | /** 删除标志(0代表存在 2代表删除) */ |
| | | private String delFlag; |
| | | |
| | | /** 用户是否存在此角色标识 默认不存在 */ |
| | | private boolean flag = false; |
| | | |
| | | /** 菜单组 */ |
| | | private Long[] menuIds; |
| | | |
| | | /** 部门组(数据权限) */ |
| | | private Long[] deptIds; |
| | | |
| | | /** 角色菜单权限 */ |
| | | private Set<String> permissions; |
| | | |
| | | public SysRole() |
| | | { |
| | | |
| | | } |
| | | |
| | | public SysRole(Long roleId) |
| | | { |
| | | this.roleId = roleId; |
| | | } |
| | | |
| | | public Long getRoleId() |
| | | { |
| | | return roleId; |
| | | } |
| | | |
| | | public void setRoleId(Long roleId) |
| | | { |
| | | this.roleId = roleId; |
| | | } |
| | | |
| | | public boolean isAdmin() |
| | | { |
| | | return isAdmin(this.roleId); |
| | | } |
| | | |
| | | public static boolean isAdmin(Long roleId) |
| | | { |
| | | return roleId != null && 1L == roleId; |
| | | } |
| | | |
| | | @NotBlank(message = "角色名称不能为空") |
| | | @Size(min = 0, max = 30, message = "角色名称长度不能超过30个字符") |
| | | public String getRoleName() |
| | | { |
| | | return roleName; |
| | | } |
| | | |
| | | public void setRoleName(String roleName) |
| | | { |
| | | this.roleName = roleName; |
| | | } |
| | | |
| | | @NotBlank(message = "权限字符不能为空") |
| | | @Size(min = 0, max = 100, message = "权限字符长度不能超过100个字符") |
| | | public String getRoleKey() |
| | | { |
| | | return roleKey; |
| | | } |
| | | |
| | | public void setRoleKey(String roleKey) |
| | | { |
| | | this.roleKey = roleKey; |
| | | } |
| | | |
| | | @NotNull(message = "显示顺序不能为空") |
| | | public Integer getRoleSort() |
| | | { |
| | | return roleSort; |
| | | } |
| | | |
| | | public void setRoleSort(Integer roleSort) |
| | | { |
| | | this.roleSort = roleSort; |
| | | } |
| | | |
| | | public String getDataScope() |
| | | { |
| | | return dataScope; |
| | | } |
| | | |
| | | public void setDataScope(String dataScope) |
| | | { |
| | | this.dataScope = dataScope; |
| | | } |
| | | |
| | | public boolean isMenuCheckStrictly() |
| | | { |
| | | return menuCheckStrictly; |
| | | } |
| | | |
| | | public void setMenuCheckStrictly(boolean menuCheckStrictly) |
| | | { |
| | | this.menuCheckStrictly = menuCheckStrictly; |
| | | } |
| | | |
| | | public boolean isDeptCheckStrictly() |
| | | { |
| | | return deptCheckStrictly; |
| | | } |
| | | |
| | | public void setDeptCheckStrictly(boolean deptCheckStrictly) |
| | | { |
| | | this.deptCheckStrictly = deptCheckStrictly; |
| | | } |
| | | |
| | | public String getStatus() |
| | | { |
| | | return status; |
| | | } |
| | | |
| | | public void setStatus(String status) |
| | | { |
| | | this.status = status; |
| | | } |
| | | |
| | | public String getDelFlag() |
| | | { |
| | | return delFlag; |
| | | } |
| | | |
| | | public void setDelFlag(String delFlag) |
| | | { |
| | | this.delFlag = delFlag; |
| | | } |
| | | |
| | | public boolean isFlag() |
| | | { |
| | | return flag; |
| | | } |
| | | |
| | | public void setFlag(boolean flag) |
| | | { |
| | | this.flag = flag; |
| | | } |
| | | |
| | | public Long[] getMenuIds() |
| | | { |
| | | return menuIds; |
| | | } |
| | | |
| | | public void setMenuIds(Long[] menuIds) |
| | | { |
| | | this.menuIds = menuIds; |
| | | } |
| | | |
| | | public Long[] getDeptIds() |
| | | { |
| | | return deptIds; |
| | | } |
| | | |
| | | public void setDeptIds(Long[] deptIds) |
| | | { |
| | | this.deptIds = deptIds; |
| | | } |
| | | |
| | | public Set<String> getPermissions() |
| | | { |
| | | return permissions; |
| | | } |
| | | |
| | | public void setPermissions(Set<String> permissions) |
| | | { |
| | | this.permissions = permissions; |
| | | } |
| | | |
| | | @Override |
| | | public String toString() { |
| | | return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) |
| | | .append("roleId", getRoleId()) |
| | | .append("roleName", getRoleName()) |
| | | .append("roleKey", getRoleKey()) |
| | | .append("roleSort", getRoleSort()) |
| | | .append("dataScope", getDataScope()) |
| | | .append("menuCheckStrictly", isMenuCheckStrictly()) |
| | | .append("deptCheckStrictly", isDeptCheckStrictly()) |
| | | .append("status", getStatus()) |
| | | .append("delFlag", getDelFlag()) |
| | | .append("createBy", getCreateBy()) |
| | | .append("createTime", getCreateTime()) |
| | | .append("updateBy", getUpdateBy()) |
| | | .append("updateTime", getUpdateTime()) |
| | | .append("remark", getRemark()) |
| | | .toString(); |
| | | } |
| | | } |
New file |
| | |
| | | package com.ruoyi.system.api.domain.poji.sys; |
| | | |
| | | import java.util.Date; |
| | | import java.util.List; |
| | | import javax.validation.constraints.*; |
| | | import org.apache.commons.lang3.builder.ToStringBuilder; |
| | | import org.apache.commons.lang3.builder.ToStringStyle; |
| | | import com.ruoyi.common.core.annotation.Excel; |
| | | import com.ruoyi.common.core.annotation.Excel.ColumnType; |
| | | import com.ruoyi.common.core.annotation.Excel.Type; |
| | | import com.ruoyi.common.core.annotation.Excels; |
| | | import com.ruoyi.common.core.web.domain.BaseEntity; |
| | | import com.ruoyi.common.core.xss.Xss; |
| | | |
| | | /** |
| | | * 用户对象 sys_user |
| | | * |
| | | * @author ruoyi |
| | | */ |
| | | public class SysUser extends BaseEntity |
| | | { |
| | | private static final long serialVersionUID = 1L; |
| | | |
| | | /** 用户ID */ |
| | | @Excel(name = "用户序号", cellType = ColumnType.NUMERIC, prompt = "用户编号") |
| | | private Long userId; |
| | | |
| | | /** 部门ID */ |
| | | @Excel(name = "部门编号", type = Type.IMPORT) |
| | | private Long deptId; |
| | | |
| | | /** 用户账号 */ |
| | | @Excel(name = "登录名称") |
| | | private String userName; |
| | | |
| | | /** 用户昵称 */ |
| | | @Excel(name = "用户名称") |
| | | private String nickName; |
| | | |
| | | /** 用户邮箱 */ |
| | | @Excel(name = "用户邮箱") |
| | | private String email; |
| | | |
| | | /** 手机号码 */ |
| | | @Excel(name = "手机号码") |
| | | private String phonenumber; |
| | | |
| | | /** 用户性别 */ |
| | | @Excel(name = "用户性别", readConverterExp = "0=男,1=女,2=未知") |
| | | private String sex; |
| | | |
| | | /** 用户头像 */ |
| | | private String avatar; |
| | | |
| | | /** 密码 */ |
| | | private String password; |
| | | |
| | | /** 帐号状态(0正常 1停用) */ |
| | | @Excel(name = "帐号状态", readConverterExp = "0=正常,1=停用") |
| | | private String status; |
| | | |
| | | /** 删除标志(0代表存在 2代表删除) */ |
| | | private String delFlag; |
| | | |
| | | /** 最后登录IP */ |
| | | @Excel(name = "最后登录IP", type = Type.EXPORT) |
| | | private String loginIp; |
| | | |
| | | /** 最后登录时间 */ |
| | | @Excel(name = "最后登录时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss", type = Type.EXPORT) |
| | | private Date loginDate; |
| | | |
| | | /** 部门对象 */ |
| | | @Excels({ |
| | | @Excel(name = "部门名称", targetAttr = "deptName", type = Type.EXPORT), |
| | | @Excel(name = "部门负责人", targetAttr = "leader", type = Type.EXPORT) |
| | | }) |
| | | private SysDept dept; |
| | | |
| | | /** 角色对象 */ |
| | | private List<SysRole> roles; |
| | | |
| | | /** 角色组 */ |
| | | private Long[] roleIds; |
| | | |
| | | /** 岗位组 */ |
| | | private Long[] postIds; |
| | | |
| | | /** 角色ID */ |
| | | private Long roleId; |
| | | |
| | | public SysUser() |
| | | { |
| | | |
| | | } |
| | | |
| | | public SysUser(Long userId) |
| | | { |
| | | this.userId = userId; |
| | | } |
| | | |
| | | public Long getUserId() |
| | | { |
| | | return userId; |
| | | } |
| | | |
| | | public void setUserId(Long userId) |
| | | { |
| | | this.userId = userId; |
| | | } |
| | | |
| | | public boolean isAdmin() |
| | | { |
| | | return isAdmin(this.userId); |
| | | } |
| | | |
| | | public static boolean isAdmin(Long userId) |
| | | { |
| | | return userId != null && 1L == userId; |
| | | } |
| | | |
| | | public Long getDeptId() |
| | | { |
| | | return deptId; |
| | | } |
| | | |
| | | public void setDeptId(Long deptId) |
| | | { |
| | | this.deptId = deptId; |
| | | } |
| | | |
| | | @Xss(message = "用户昵称不能包含脚本字符") |
| | | @Size(min = 0, max = 30, message = "用户昵称长度不能超过30个字符") |
| | | public String getNickName() |
| | | { |
| | | return nickName; |
| | | } |
| | | |
| | | public void setNickName(String nickName) |
| | | { |
| | | this.nickName = nickName; |
| | | } |
| | | |
| | | @Xss(message = "用户账号不能包含脚本字符") |
| | | @NotBlank(message = "用户账号不能为空") |
| | | @Size(min = 0, max = 30, message = "用户账号长度不能超过30个字符") |
| | | public String getUserName() |
| | | { |
| | | return userName; |
| | | } |
| | | |
| | | public void setUserName(String userName) |
| | | { |
| | | this.userName = userName; |
| | | } |
| | | |
| | | @Email(message = "邮箱格式不正确") |
| | | @Size(min = 0, max = 50, message = "邮箱长度不能超过50个字符") |
| | | public String getEmail() |
| | | { |
| | | return email; |
| | | } |
| | | |
| | | public void setEmail(String email) |
| | | { |
| | | this.email = email; |
| | | } |
| | | |
| | | @Size(min = 0, max = 11, message = "手机号码长度不能超过11个字符") |
| | | public String getPhonenumber() |
| | | { |
| | | return phonenumber; |
| | | } |
| | | |
| | | public void setPhonenumber(String phonenumber) |
| | | { |
| | | this.phonenumber = phonenumber; |
| | | } |
| | | |
| | | public String getSex() |
| | | { |
| | | return sex; |
| | | } |
| | | |
| | | public void setSex(String sex) |
| | | { |
| | | this.sex = sex; |
| | | } |
| | | |
| | | public String getAvatar() |
| | | { |
| | | return avatar; |
| | | } |
| | | |
| | | public void setAvatar(String avatar) |
| | | { |
| | | this.avatar = avatar; |
| | | } |
| | | |
| | | public String getPassword() |
| | | { |
| | | return password; |
| | | } |
| | | |
| | | public void setPassword(String password) |
| | | { |
| | | this.password = password; |
| | | } |
| | | |
| | | public String getStatus() |
| | | { |
| | | return status; |
| | | } |
| | | |
| | | public void setStatus(String status) |
| | | { |
| | | this.status = status; |
| | | } |
| | | |
| | | public String getDelFlag() |
| | | { |
| | | return delFlag; |
| | | } |
| | | |
| | | public void setDelFlag(String delFlag) |
| | | { |
| | | this.delFlag = delFlag; |
| | | } |
| | | |
| | | public String getLoginIp() |
| | | { |
| | | return loginIp; |
| | | } |
| | | |
| | | public void setLoginIp(String loginIp) |
| | | { |
| | | this.loginIp = loginIp; |
| | | } |
| | | |
| | | public Date getLoginDate() |
| | | { |
| | | return loginDate; |
| | | } |
| | | |
| | | public void setLoginDate(Date loginDate) |
| | | { |
| | | this.loginDate = loginDate; |
| | | } |
| | | |
| | | public SysDept getDept() |
| | | { |
| | | return dept; |
| | | } |
| | | |
| | | public void setDept(SysDept dept) |
| | | { |
| | | this.dept = dept; |
| | | } |
| | | |
| | | public List<SysRole> getRoles() |
| | | { |
| | | return roles; |
| | | } |
| | | |
| | | public void setRoles(List<SysRole> roles) |
| | | { |
| | | this.roles = roles; |
| | | } |
| | | |
| | | public Long[] getRoleIds() |
| | | { |
| | | return roleIds; |
| | | } |
| | | |
| | | public void setRoleIds(Long[] roleIds) |
| | | { |
| | | this.roleIds = roleIds; |
| | | } |
| | | |
| | | public Long[] getPostIds() |
| | | { |
| | | return postIds; |
| | | } |
| | | |
| | | public void setPostIds(Long[] postIds) |
| | | { |
| | | this.postIds = postIds; |
| | | } |
| | | |
| | | public Long getRoleId() |
| | | { |
| | | return roleId; |
| | | } |
| | | |
| | | public void setRoleId(Long roleId) |
| | | { |
| | | this.roleId = roleId; |
| | | } |
| | | @Override |
| | | public String toString() { |
| | | return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) |
| | | .append("userId", getUserId()) |
| | | .append("deptId", getDeptId()) |
| | | .append("userName", getUserName()) |
| | | .append("nickName", getNickName()) |
| | | .append("email", getEmail()) |
| | | .append("phonenumber", getPhonenumber()) |
| | | .append("sex", getSex()) |
| | | .append("avatar", getAvatar()) |
| | | .append("password", getPassword()) |
| | | .append("status", getStatus()) |
| | | .append("delFlag", getDelFlag()) |
| | | .append("loginIp", getLoginIp()) |
| | | .append("loginDate", getLoginDate()) |
| | | .append("createBy", getCreateBy()) |
| | | .append("createTime", getCreateTime()) |
| | | .append("updateBy", getUpdateBy()) |
| | | .append("updateTime", getUpdateTime()) |
| | | .append("remark", getRemark()) |
| | | .append("dept", getDept()) |
| | | .toString(); |
| | | } |
| | | } |
| | |
| | | import org.springframework.web.multipart.MultipartFile; |
| | | import com.ruoyi.common.core.domain.R; |
| | | import com.ruoyi.system.api.RemoteFileService; |
| | | import com.ruoyi.system.api.domain.SysFile; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysFile; |
| | | |
| | | /** |
| | | * 文件服务降级处理 |
| | |
| | | import org.springframework.stereotype.Component; |
| | | import com.ruoyi.common.core.domain.R; |
| | | import com.ruoyi.system.api.RemoteLogService; |
| | | import com.ruoyi.system.api.domain.SysLogininfor; |
| | | import com.ruoyi.system.api.domain.SysOperLog; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysLogininfor; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysOperLog; |
| | | |
| | | /** |
| | | * 日志服务降级处理 |
New file |
| | |
| | | package com.ruoyi.system.api.factory; |
| | | |
| | | import com.ruoyi.common.core.domain.R; |
| | | import com.ruoyi.system.api.RemoteMemberService; |
| | | import com.ruoyi.system.api.RemoteUserService; |
| | | import com.ruoyi.system.api.domain.poji.member.Member; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysFile; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysUser; |
| | | import com.ruoyi.system.api.model.AppMiniLoginDto; |
| | | import com.ruoyi.system.api.model.AppMiniLoginVo; |
| | | import com.ruoyi.system.api.model.LoginUser; |
| | | import org.slf4j.Logger; |
| | | import org.slf4j.LoggerFactory; |
| | | import org.springframework.cloud.openfeign.FallbackFactory; |
| | | import org.springframework.stereotype.Component; |
| | | import org.springframework.web.multipart.MultipartFile; |
| | | |
| | | /** |
| | | * 用户服务降级处理 |
| | | * |
| | | * @author ruoyi |
| | | */ |
| | | @Component |
| | | public class RemoteMemberFallbackFactory implements FallbackFactory<RemoteMemberService> |
| | | { |
| | | private static final Logger log = LoggerFactory.getLogger(RemoteMemberFallbackFactory.class); |
| | | |
| | | @Override |
| | | public RemoteMemberService create(Throwable throwable) |
| | | { |
| | | log.error("会员服务调用失败:{}", throwable.getMessage()); |
| | | return new RemoteMemberService() |
| | | { |
| | | @Override |
| | | public R<Member> getMember(Long userId) |
| | | { |
| | | return R.fail("获取会员失败:" + throwable.getMessage()); |
| | | } |
| | | }; |
| | | } |
| | | } |
New file |
| | |
| | | package com.ruoyi.system.api.factory; |
| | | |
| | | import com.ruoyi.system.api.RemoteMemberService; |
| | | import com.ruoyi.system.api.RemoteOrderService; |
| | | import org.slf4j.Logger; |
| | | import org.slf4j.LoggerFactory; |
| | | import org.springframework.cloud.openfeign.FallbackFactory; |
| | | import org.springframework.stereotype.Component; |
| | | |
| | | /** |
| | | * 用户服务降级处理 |
| | | * |
| | | * @author ruoyi |
| | | */ |
| | | @Component |
| | | public class RemoteOrderFallbackFactory implements FallbackFactory<RemoteOrderService> |
| | | { |
| | | private static final Logger log = LoggerFactory.getLogger(RemoteOrderFallbackFactory.class); |
| | | |
| | | @Override |
| | | public RemoteOrderService create(Throwable throwable) |
| | | { |
| | | log.error("订单服务调用失败:{}", throwable.getMessage()); |
| | | return new RemoteOrderService() |
| | | { |
| | | |
| | | }; |
| | | } |
| | | } |
New file |
| | |
| | | package com.ruoyi.system.api.factory; |
| | | |
| | | import com.ruoyi.system.api.RemoteMemberService; |
| | | import com.ruoyi.system.api.RemoteShopService; |
| | | import org.slf4j.Logger; |
| | | import org.slf4j.LoggerFactory; |
| | | import org.springframework.cloud.openfeign.FallbackFactory; |
| | | import org.springframework.stereotype.Component; |
| | | |
| | | /** |
| | | * 用户服务降级处理 |
| | | * |
| | | * @author ruoyi |
| | | */ |
| | | @Component |
| | | public class RemoteShopFallbackFactory implements FallbackFactory<RemoteShopService> |
| | | { |
| | | private static final Logger log = LoggerFactory.getLogger(RemoteShopFallbackFactory.class); |
| | | |
| | | @Override |
| | | public RemoteShopService create(Throwable throwable) |
| | | { |
| | | log.error("商户服务调用失败:{}", throwable.getMessage()); |
| | | return new RemoteShopService() |
| | | { |
| | | |
| | | }; |
| | | } |
| | | } |
| | |
| | | import org.springframework.stereotype.Component; |
| | | import com.ruoyi.common.core.domain.R; |
| | | import com.ruoyi.system.api.RemoteUserService; |
| | | import com.ruoyi.system.api.domain.SysUser; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysUser; |
| | | import com.ruoyi.system.api.model.LoginUser; |
| | | |
| | | /** |
| | |
| | | package com.ruoyi.system.api.model; |
| | | |
| | | import com.ruoyi.system.api.domain.SysUser; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysUser; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | |
| | | |
| | | import java.io.Serializable; |
| | | import java.util.Set; |
| | | import com.ruoyi.system.api.domain.SysUser; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysUser; |
| | | |
| | | /** |
| | | * 用户信息 |
| | |
| | | import com.ruoyi.common.redis.service.RedisService; |
| | | import com.ruoyi.common.security.utils.SecurityUtils; |
| | | import com.ruoyi.system.api.RemoteUserService; |
| | | import com.ruoyi.system.api.domain.SysUser; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysUser; |
| | | import com.ruoyi.system.api.model.LoginUser; |
| | | |
| | | /** |
| | |
| | | import com.ruoyi.common.core.exception.ServiceException; |
| | | import com.ruoyi.common.redis.service.RedisService; |
| | | import com.ruoyi.common.security.utils.SecurityUtils; |
| | | import com.ruoyi.system.api.domain.SysUser; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysUser; |
| | | |
| | | /** |
| | | * 登录密码方法 |
| | |
| | | import com.ruoyi.common.core.utils.StringUtils; |
| | | import com.ruoyi.common.core.utils.ip.IpUtils; |
| | | import com.ruoyi.system.api.RemoteLogService; |
| | | import com.ruoyi.system.api.domain.SysLogininfor; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysLogininfor; |
| | | |
| | | /** |
| | | * 记录日志方法 |
| | |
| | | import com.ruoyi.common.core.web.domain.BaseEntity; |
| | | import com.ruoyi.common.datascope.annotation.DataScope; |
| | | import com.ruoyi.common.security.utils.SecurityUtils; |
| | | import com.ruoyi.system.api.domain.SysRole; |
| | | import com.ruoyi.system.api.domain.SysUser; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysRole; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysUser; |
| | | import com.ruoyi.system.api.model.LoginUser; |
| | | |
| | | /** |
| | |
| | | import com.ruoyi.common.log.filter.PropertyPreExcludeFilter; |
| | | import com.ruoyi.common.log.service.AsyncLogService; |
| | | import com.ruoyi.common.security.utils.SecurityUtils; |
| | | import com.ruoyi.system.api.domain.SysOperLog; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysOperLog; |
| | | |
| | | /** |
| | | * 操作日志记录处理 |
| | |
| | | import org.springframework.stereotype.Service; |
| | | import com.ruoyi.common.core.constant.SecurityConstants; |
| | | import com.ruoyi.system.api.RemoteLogService; |
| | | import com.ruoyi.system.api.domain.SysOperLog; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysOperLog; |
| | | |
| | | /** |
| | | * 异步调用日志服务 |
| | |
| | | import com.ruoyi.common.core.utils.SpringUtils; |
| | | import com.ruoyi.common.core.utils.StringUtils; |
| | | import com.ruoyi.common.redis.service.RedisService; |
| | | import com.ruoyi.system.api.domain.SysDictData; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysDictData; |
| | | |
| | | /** |
| | | * 字典工具类 |
| | |
| | | import com.ruoyi.common.core.domain.R; |
| | | import com.ruoyi.common.core.utils.file.FileUtils; |
| | | import com.ruoyi.file.service.ISysFileService; |
| | | import com.ruoyi.system.api.domain.SysFile; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysFile; |
| | | |
| | | /** |
| | | * 文件请求处理 |
| | |
| | | <version>2.3</version> |
| | | </dependency> |
| | | |
| | | <!-- 小程序统一服务 --> |
| | | <dependency> |
| | | <groupId>com.github.binarywang</groupId> |
| | | <artifactId>weixin-java-miniapp</artifactId> |
| | | <version>4.1.0</version> |
| | | </dependency> |
| | | </dependencies> |
| | | |
| | | <build> |
New file |
| | |
| | | package com.ruoyi.member; |
| | | |
| | | import org.springframework.boot.SpringApplication; |
| | | import org.springframework.boot.autoconfigure.SpringBootApplication; |
| | | import com.ruoyi.common.security.annotation.EnableCustomConfig; |
| | | import com.ruoyi.common.security.annotation.EnableRyFeignClients; |
| | | import com.ruoyi.common.swagger.annotation.EnableCustomSwagger2; |
| | | |
| | | /** |
| | | * 系统模块 |
| | | * |
| | | * @author ruoyi |
| | | */ |
| | | @EnableCustomConfig |
| | | @EnableCustomSwagger2 |
| | | @EnableRyFeignClients |
| | | @SpringBootApplication |
| | | public class RuoYiSystemApplication |
| | | { |
| | | public static void main(String[] args) |
| | | { |
| | | SpringApplication.run(RuoYiSystemApplication.class, args); |
| | | System.out.println("(♥◠‿◠)ノ゙ 系统模块启动成功 ლ(´ڡ`ლ)゙ \n" + |
| | | " .-------. ____ __ \n" + |
| | | " | _ _ \\ \\ \\ / / \n" + |
| | | " | ( ' ) | \\ _. / ' \n" + |
| | | " |(_ o _) / _( )_ .' \n" + |
| | | " | (_,_).' __ ___(_ o _)' \n" + |
| | | " | |\\ \\ | || |(_,_)' \n" + |
| | | " | | \\ `' /| `-' / \n" + |
| | | " | | \\ / \\ / \n" + |
| | | " ''-' `'-' `-..-' "); |
| | | } |
| | | } |
New file |
| | |
| | | package com.ruoyi.member.config; |
| | | |
| | | import cn.binarywang.wx.miniapp.api.WxMaService; |
| | | import cn.binarywang.wx.miniapp.api.impl.WxMaServiceImpl; |
| | | import cn.binarywang.wx.miniapp.config.WxMaConfig; |
| | | import cn.binarywang.wx.miniapp.config.impl.WxMaDefaultConfigImpl; |
| | | import org.springframework.context.annotation.Bean; |
| | | import org.springframework.context.annotation.Configuration; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppConfig |
| | | * @description: TODO |
| | | * @date 2023年02月17日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Configuration |
| | | public class AppConfig { |
| | | |
| | | |
| | | @Bean |
| | | public WxMaService wxMaService() { |
| | | WxMaService service = new WxMaServiceImpl(); |
| | | service.setWxMaConfig(memberWxMaConfig()); |
| | | return service; |
| | | } |
| | | |
| | | @Bean |
| | | public WxMaConfig memberWxMaConfig(){ |
| | | WxMaDefaultConfigImpl config = new WxMaDefaultConfigImpl(); |
| | | config.setAppid("wxb7f0ea286fc4e535"); |
| | | config.setSecret("852a2512a6ab559cafc68bae5d4160ac"); |
| | | return config; |
| | | } |
| | | } |
New file |
| | |
| | | package com.ruoyi.member.controller.console; |
| | | |
| | | import com.ruoyi.common.core.domain.R; |
| | | import com.ruoyi.common.core.web.controller.BaseController; |
| | | import com.ruoyi.common.security.annotation.InnerAuth; |
| | | import com.ruoyi.member.service.member.MemberService; |
| | | import com.ruoyi.system.api.domain.poji.member.Member; |
| | | import com.ruoyi.system.api.model.AppMiniLoginDto; |
| | | import com.ruoyi.system.api.model.AppMiniLoginVo; |
| | | import io.swagger.annotations.ApiOperation; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.web.bind.annotation.GetMapping; |
| | | import org.springframework.web.bind.annotation.RequestBody; |
| | | import org.springframework.web.bind.annotation.RequestMapping; |
| | | import org.springframework.web.bind.annotation.RestController; |
| | | |
| | | @RestController |
| | | @RequestMapping("/member") |
| | | public class MemberController extends BaseController { |
| | | |
| | | @Autowired |
| | | private MemberService memberService; |
| | | |
| | | /** |
| | | * @description: getMember |
| | | * @param: userId |
| | | * @return: R<Member> |
| | | * @author jqs34 |
| | | * @date: 2023/4/30 12:49 |
| | | */ |
| | | @InnerAuth |
| | | @GetMapping("/getMember") |
| | | public R<Member> getMember(@RequestBody Long userId) |
| | | { |
| | | Member member = memberService.getByUserId(userId); |
| | | if(member ==null){ |
| | | return R.fail("获取会员失败!"); |
| | | } |
| | | return R.ok(member); |
| | | } |
| | | } |
New file |
| | |
| | | package com.ruoyi.member.controller.miniapp; |
| | | |
| | | import com.ruoyi.common.core.domain.R; |
| | | import com.ruoyi.common.security.utils.SecurityUtils; |
| | | import com.ruoyi.member.domain.dto.AppUserAuthorizeDto; |
| | | import com.ruoyi.member.domain.vo.AppUserAuthorizeVo; |
| | | import com.ruoyi.member.service.member.MemberService; |
| | | import io.swagger.annotations.Api; |
| | | import io.swagger.annotations.ApiOperation; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.web.bind.annotation.RequestBody; |
| | | import org.springframework.web.bind.annotation.RequestMapping; |
| | | import org.springframework.web.bind.annotation.RequestMethod; |
| | | import org.springframework.web.bind.annotation.RestController; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppConfigController |
| | | * @description: TODO |
| | | * @date 2023年04月19日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Api(value = "小程序配置相关接口", tags = "小程序配置相关接口", description = "小程序配置相关接口") |
| | | @RestController |
| | | @RequestMapping("/app/config") |
| | | public class AppConfigController { |
| | | |
| | | @Autowired |
| | | private MemberService memberService; |
| | | |
| | | |
| | | @RequestMapping(value = "/getAppUserAuthorize", method = RequestMethod.POST) |
| | | @ApiOperation(value = "获取用户授权信息") |
| | | public R<AppUserAuthorizeVo> getAppUserAuthorize(@RequestBody AppUserAuthorizeDto appUserAuthorizeDto) { |
| | | Long userId = SecurityUtils.getUserId(); |
| | | appUserAuthorizeDto.setUserId(userId); |
| | | AppUserAuthorizeVo appUserAuthorizeVo = memberService.getAppUserAuthorize(appUserAuthorizeDto); |
| | | return R.ok(appUserAuthorizeVo); |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.member.controller.miniapp; |
| | | |
| | | import com.ruoyi.common.core.domain.R; |
| | | import com.ruoyi.common.security.utils.SecurityUtils; |
| | | import com.ruoyi.member.domain.dto.AppBaseBathDto; |
| | | import com.ruoyi.member.domain.dto.AppGoodsInfoGetDto; |
| | | import com.ruoyi.member.domain.dto.AppShoppingCartAddDto; |
| | | import com.ruoyi.member.domain.dto.AppShoppingCartChangeDto; |
| | | import com.ruoyi.member.domain.vo.AppGoodsInfoVo; |
| | | import com.ruoyi.member.service.member.MemberService; |
| | | import com.ruoyi.system.api.domain.poji.member.Member; |
| | | import com.ruoyi.system.service.goods.GoodsService; |
| | | import com.ruoyi.system.service.order.ShoppingCartService; |
| | | import io.swagger.annotations.Api; |
| | | import io.swagger.annotations.ApiOperation; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.web.bind.annotation.RequestBody; |
| | | import org.springframework.web.bind.annotation.RequestMapping; |
| | | import org.springframework.web.bind.annotation.RequestMethod; |
| | | import org.springframework.web.bind.annotation.RestController; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppGoodsController |
| | | * @description: TODO |
| | | * @date 2023年04月20日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Api(value = "小程序商品相关接口", tags = "小程序商品相关接口", description = "小程序商品相关接口") |
| | | @RestController |
| | | @RequestMapping("/app/home") |
| | | public class AppGoodsController { |
| | | |
| | | @Autowired |
| | | private GoodsService goodsService; |
| | | |
| | | @Autowired |
| | | private MemberService memberService; |
| | | |
| | | @Autowired |
| | | private ShoppingCartService shoppingCartService; |
| | | |
| | | @RequestMapping(value = "/getGoodsInfo", method = RequestMethod.POST) |
| | | @ApiOperation(value = "获取商品详情") |
| | | |
| | | public R<AppGoodsInfoVo> getGoodsInfo(@RequestBody AppGoodsInfoGetDto appGoodsInfoGetDto) { |
| | | Long userId = SecurityUtils.getUserId(); |
| | | if(userId!=null){ |
| | | Member member = remoteMemberService.getMember(userId).getData(); |
| | | if(member!=null&&member.getRealtionShopId()!=null){ |
| | | appGoodsInfoGetDto.setShopId(member.getRealtionShopId()); |
| | | } |
| | | } |
| | | AppGoodsInfoVo appGoodsInfoVo = goodsService.getGoodsInfo(appGoodsInfoGetDto); |
| | | return R.ok(appGoodsInfoVo); |
| | | } |
| | | |
| | | @RequestMapping(value = "/addShoppingCart", method = RequestMethod.POST) |
| | | @ApiOperation(value = "添加购物车") |
| | | public R addShoppingCart(@RequestBody AppShoppingCartAddDto appShoppingCartAddDto) { |
| | | Long userId = SecurityUtils.getUserId(); |
| | | if(userId!=null){ |
| | | Member member = memberService.getById(userId); |
| | | appShoppingCartAddDto.setUserId(userId); |
| | | if(member!=null&&member.getRealtionShopId()!=null){ |
| | | appShoppingCartAddDto.setShopId(member.getRealtionShopId()); |
| | | } |
| | | } |
| | | shoppingCartService.addShoppingCart(appShoppingCartAddDto); |
| | | return R.ok(); |
| | | } |
| | | |
| | | @RequestMapping(value = "/changeShoppingCart", method = RequestMethod.POST) |
| | | @ApiOperation(value = "修改购物车") |
| | | public R changeShoppingCart(@RequestBody AppShoppingCartChangeDto appShoppingCartChangeDto) { |
| | | Long userId = SecurityUtils.getUserId(); |
| | | if(userId!=null){ |
| | | Member member = memberService.getById(userId); |
| | | appShoppingCartChangeDto.setUserId(userId); |
| | | if(member!=null&&member.getRealtionShopId()!=null){ |
| | | appShoppingCartChangeDto.setShopId(member.getRealtionShopId()); |
| | | } |
| | | } |
| | | shoppingCartService.changeShoppingCart(appShoppingCartChangeDto); |
| | | return R.ok(); |
| | | } |
| | | |
| | | @RequestMapping(value = "/deleteShoppingCart", method = RequestMethod.POST) |
| | | @ApiOperation(value = "删除购物车") |
| | | public R changeShoppingCart(@RequestBody AppBaseBathDto appBaseBathDto) { |
| | | Long userId = SecurityUtils.getUserId(); |
| | | if(userId!=null){ |
| | | Member member = memberService.getById(userId); |
| | | appBaseBathDto.setUserId(userId); |
| | | } |
| | | shoppingCartService.deleteShoppingCart(appBaseBathDto); |
| | | return R.ok(); |
| | | } |
| | | } |
New file |
| | |
| | | package com.ruoyi.member.controller.miniapp; |
| | | |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.ruoyi.common.core.domain.R; |
| | | import com.ruoyi.common.security.utils.SecurityUtils; |
| | | import com.ruoyi.member.domain.dto.*; |
| | | import com.ruoyi.member.domain.vo.*; |
| | | import com.ruoyi.member.service.member.MemberService; |
| | | import com.ruoyi.system.api.RemoteMemberService; |
| | | import com.ruoyi.system.api.domain.poji.member.Member; |
| | | import com.ruoyi.system.domain.dto.*; |
| | | import com.ruoyi.system.domain.vo.*; |
| | | import io.swagger.annotations.Api; |
| | | import io.swagger.annotations.ApiOperation; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.web.bind.annotation.RequestBody; |
| | | import org.springframework.web.bind.annotation.RequestMapping; |
| | | import org.springframework.web.bind.annotation.RequestMethod; |
| | | import org.springframework.web.bind.annotation.RestController; |
| | | |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppHomeController |
| | | * @description: TODO |
| | | * @date 2023年04月18日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Api(value = "小程序首页相关接口", tags = "小程序首页相关接口", description = "小程序首页相关接口") |
| | | @RestController |
| | | @RequestMapping("/app/home") |
| | | public class AppHomeController { |
| | | |
| | | |
| | | @Autowired |
| | | private RemoteMemberService remoteMemberService; |
| | | |
| | | @Autowired |
| | | private BannerService bannerService; |
| | | |
| | | @Autowired |
| | | private QuickEntryService quickEntryService; |
| | | |
| | | @Autowired |
| | | private AdvertService advertService; |
| | | |
| | | @Autowired |
| | | private GoodsService goodsService; |
| | | |
| | | @Autowired |
| | | private ShopService shopService; |
| | | |
| | | @RequestMapping(value = "/getNearbyShop", method = RequestMethod.POST) |
| | | @ApiOperation(value = "获取最近商户") |
| | | public R<AppNearbyShopVo> getNearbyShop(@RequestBody AppNearbyShopDto appNearbyShopDto) { |
| | | Long userId = SecurityUtils.getUserId(); |
| | | appNearbyShopDto.setUserId(userId); |
| | | AppNearbyShopVo appNearbyShopVo = memberService.getNearbyShop(appNearbyShopDto); |
| | | return R.ok(appNearbyShopVo); |
| | | } |
| | | |
| | | @RequestMapping(value = "/getHomeBanner", method = RequestMethod.POST) |
| | | @ApiOperation(value = "获取首页banner") |
| | | public R<List<AppBannerVo>> getHomeBanner() { |
| | | List<AppBannerVo> appBannerVoList = bannerService.listHomeBannerVo(); |
| | | return R.ok(appBannerVoList); |
| | | } |
| | | |
| | | @RequestMapping(value = "/getQuickEntry", method = RequestMethod.POST) |
| | | @ApiOperation(value = "获取首页快速入口") |
| | | public R<List<AppQuickEntryVo>> getQuickEntry() { |
| | | List<AppQuickEntryVo> appQuickEntryVoList = quickEntryService.listQuickEntryVo(); |
| | | return R.ok(appQuickEntryVoList); |
| | | } |
| | | |
| | | @RequestMapping(value = "/getAdvert", method = RequestMethod.POST) |
| | | @ApiOperation(value = "获取首页广告") |
| | | public R<AppAdvertVo> getAdvert() { |
| | | AppAdvertVo appAdvertVo = advertService.getAdvertVo(); |
| | | return R.ok(appAdvertVo); |
| | | } |
| | | |
| | | @RequestMapping(value = "/pageRecommendGoods", method = RequestMethod.POST) |
| | | @ApiOperation(value = "推荐商品") |
| | | public R<Page<AppSimpleGoodsVo>> pageRecommendGoods(@RequestBody AppPageDto appPageDto) { |
| | | Long userId = SecurityUtils.getUserId(); |
| | | Long shopId = null; |
| | | if(userId!=null){ |
| | | Member member = remoteMemberService.getMember(userId).getData(); |
| | | if(member!=null&&member.getRealtionShopId()!=null){ |
| | | shopId = member.getRealtionShopId(); |
| | | } |
| | | } |
| | | Page<AppSimpleGoodsVo> page = new Page<>(); |
| | | page.setSize(appPageDto.getPageSize()); |
| | | page.setCurrent(appPageDto.getPageNum()); |
| | | List<AppSimpleGoodsVo> appSimpleGoodsVoList = goodsService.pageRecommendGoods(page,shopId); |
| | | return R.ok(page.setRecords(appSimpleGoodsVoList)); |
| | | } |
| | | |
| | | @RequestMapping(value = "/pageShopGoods", method = RequestMethod.POST) |
| | | @ApiOperation(value = "商城商品") |
| | | public R<Page<AppSimpleGoodsVo>> pageShopGoods(@RequestBody AppShopGoodsPageDto appShopGoodsPageDto) { |
| | | Long userId = SecurityUtils.getUserId(); |
| | | if(userId!=null){ |
| | | Member member = remoteMemberService.getMember(userId).getData(); |
| | | if(member!=null&&member.getRealtionShopId()!=null){ |
| | | appShopGoodsPageDto.setShopId(member.getRealtionShopId()); |
| | | } |
| | | } |
| | | Page<AppSimpleGoodsVo> page = new Page<>(); |
| | | page.setSize(appShopGoodsPageDto.getPageSize()); |
| | | page.setCurrent(appShopGoodsPageDto.getPageNum()); |
| | | List<AppSimpleGoodsVo> appSimpleGoodsVoList = goodsService.pageShopGoods(page,appShopGoodsPageDto); |
| | | return R.ok(page.setRecords(appSimpleGoodsVoList)); |
| | | } |
| | | |
| | | @RequestMapping(value = "/pageSearchGoods", method = RequestMethod.POST) |
| | | @ApiOperation(value = "搜索商品") |
| | | public R<Page<AppSimpleGoodsVo>> pageSearchGoods(@RequestBody AppSearchGoodsPageDto appSearchGoodsPageDto) { |
| | | Long userId = SecurityUtils.getUserId(); |
| | | if(userId!=null){ |
| | | Member member = remoteMemberService.getMember(userId).getData(); |
| | | if(member!=null&&member.getRealtionShopId()!=null){ |
| | | appSearchGoodsPageDto.setShopId(member.getRealtionShopId()); |
| | | } |
| | | } |
| | | Page<AppSimpleGoodsVo> page = new Page<>(); |
| | | page.setSize(appSearchGoodsPageDto.getPageSize()); |
| | | page.setCurrent(appSearchGoodsPageDto.getPageNum()); |
| | | List<AppSimpleGoodsVo> appSimpleGoodsVoList = goodsService.pageSearchGoods(page,appSearchGoodsPageDto); |
| | | return R.ok(page.setRecords(appSimpleGoodsVoList)); |
| | | } |
| | | |
| | | @RequestMapping(value = "/pageSearchActivityGoods", method = RequestMethod.POST) |
| | | @ApiOperation(value = "搜索活动商品") |
| | | public R<Page<AppSimpleActivityGoodsVo>> pageSearchActivityGoods(@RequestBody AppSearchGoodsPageDto appSearchGoodsPageDto) { |
| | | Long userId = SecurityUtils.getUserId(); |
| | | if(userId!=null){ |
| | | Member member = remoteMemberService.getMember(userId).getData(); |
| | | if(member!=null&&member.getRealtionShopId()!=null){ |
| | | appSearchGoodsPageDto.setShopId(member.getRealtionShopId()); |
| | | } |
| | | } |
| | | Page<AppSimpleActivityGoodsVo> page = new Page<>(); |
| | | page.setSize(appSearchGoodsPageDto.getPageSize()); |
| | | page.setCurrent(appSearchGoodsPageDto.getPageNum()); |
| | | List<AppSimpleActivityGoodsVo> appSimpleGoodsVoList = goodsService.pageSearchActivityGoods(page,appSearchGoodsPageDto); |
| | | return R.ok(page.setRecords(appSimpleGoodsVoList)); |
| | | } |
| | | |
| | | @RequestMapping(value = "/getShopInfo", method = RequestMethod.POST) |
| | | @ApiOperation(value = "获取商户详情") |
| | | public R<AppShopInfoVo> getShopInfo(@RequestBody AppBaseGetDto appBaseGetDto) { |
| | | AppShopInfoVo appShopInfoVo = shopService.getAppShopInfo(Long.valueOf(appBaseGetDto.getId())); |
| | | return R.ok(appShopInfoVo); |
| | | } |
| | | |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.member.domain.dto; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppAgreementDto |
| | | * @description: TODO |
| | | * @date 2023年03月07日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class AppAgreementDto extends AppBaseDto{ |
| | | |
| | | |
| | | @ApiModelProperty(value = "协议类型1用户协议 2隐私协议") |
| | | private Integer type; |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.member.domain.dto; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppBaseBathDto |
| | | * @description: TODO |
| | | * @date 2023年04月26日 |
| | | * @version: 1.0 |
| | | */ |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | @Data |
| | | public class AppBaseBathDto extends AppBaseDto{ |
| | | |
| | | @ApiModelProperty(value = "请求对象id集合 多个用,隔开") |
| | | private String ids; |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.member.domain.dto; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppBaseDto |
| | | * @description: TODO |
| | | * @date 2023年04月19日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class AppBaseDto { |
| | | |
| | | @ApiModelProperty(value = "userId",hidden = true) |
| | | private Long userId; |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.member.domain.dto; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppBaseGetDto |
| | | * @description: TODO |
| | | * @date 2023年04月19日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class AppBaseGetDto extends AppBaseDto{ |
| | | |
| | | @ApiModelProperty(value = "请求对象id") |
| | | private String id; |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.member.domain.dto; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppGoodsInfoGetDto |
| | | * @description: TODO |
| | | * @date 2023年04月20日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class AppGoodsInfoGetDto extends AppBaseGetDto { |
| | | |
| | | @ApiModelProperty(value = "是否活动跳转0否1是") |
| | | private Integer activityFlag; |
| | | |
| | | @ApiModelProperty(value = "商户id",hidden = true) |
| | | private Long shopId; |
| | | } |
New file |
| | |
| | | package com.ruoyi.member.domain.dto; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppNearbyShopDto |
| | | * @description: TODO |
| | | * @date 2023年04月19日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class AppNearbyShopDto extends AppBaseDto{ |
| | | |
| | | |
| | | @ApiModelProperty(value = "经度") |
| | | private String longitude; |
| | | |
| | | @ApiModelProperty(value = "维度") |
| | | private String latitude; |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.member.domain.dto; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppPageDto |
| | | * @description: TODO |
| | | * @date 2023年04月20日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class AppPageDto extends AppBaseDto{ |
| | | |
| | | @ApiModelProperty(name = "pagenum", value = "页码") |
| | | private Integer pageNum = 1; |
| | | |
| | | |
| | | @ApiModelProperty(name = "pagesize", value = "每页显示条数") |
| | | private Integer pageSize = 20; |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.member.domain.dto; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppShopGoodsPageDto |
| | | * @description: TODO |
| | | * @date 2023年04月20日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class AppSearchGoodsPageDto extends AppPageDto { |
| | | |
| | | @ApiModelProperty(value = "shopId",hidden = true) |
| | | private Long shopId; |
| | | |
| | | @ApiModelProperty(value = "搜索关键词") |
| | | private String keyword; |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.member.domain.dto; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppShopGoodsPageDto |
| | | * @description: TODO |
| | | * @date 2023年04月20日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class AppShopGoodsPageDto extends AppPageDto{ |
| | | |
| | | @ApiModelProperty(value = "shopId",hidden = true) |
| | | private Long shopId; |
| | | |
| | | @ApiModelProperty(value = "搜索关键词") |
| | | private String keyword; |
| | | |
| | | @ApiModelProperty(value = "商品类型1周期2服务3体验4单品") |
| | | private Integer goodsType; |
| | | |
| | | @ApiModelProperty(value = "商品分类id") |
| | | private Long goodsClassId; |
| | | |
| | | @ApiModelProperty(value = "排序方式1.全部2.价格正序3.价格倒序4.销量正序5.销量倒序") |
| | | private Integer sort; |
| | | } |
New file |
| | |
| | | package com.ruoyi.member.domain.dto; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppShoppingCartAddDto |
| | | * @description: TODO |
| | | * @date 2023年04月26日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class AppShoppingCartAddDto extends AppBaseDto{ |
| | | |
| | | @ApiModelProperty(value = "shopId",hidden = true) |
| | | private Long shopId; |
| | | |
| | | @ApiModelProperty(value = "商品id") |
| | | private Long goodsId; |
| | | |
| | | @ApiModelProperty(value = "购买数量") |
| | | private Integer buyNum; |
| | | } |
New file |
| | |
| | | package com.ruoyi.member.domain.dto; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppShoppingCartAddDto |
| | | * @description: TODO |
| | | * @date 2023年04月26日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class AppShoppingCartChangeDto extends AppBaseDto{ |
| | | |
| | | @ApiModelProperty(value = "shopId",hidden = true) |
| | | private Long shopId; |
| | | |
| | | @ApiModelProperty(value = "商品id") |
| | | private Long goodsId; |
| | | |
| | | @ApiModelProperty(value = "变化后数量") |
| | | private Integer buyNum; |
| | | } |
New file |
| | |
| | | package com.ruoyi.member.domain.dto; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppUserAuthorizeDto |
| | | * @description: TODO |
| | | * @date 2023年02月13日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class AppUserAuthorizeDto extends AppBaseDto{ |
| | | |
| | | @ApiModelProperty(value = "手机iv") |
| | | private String phoneIv; |
| | | |
| | | @ApiModelProperty(value = "手机encryptedData") |
| | | private String phoneEncryptedData; |
| | | |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.member.domain.dto; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName MGTBaseDto |
| | | * @description: TODO |
| | | * @date 2023年04月21日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class MgtBaseDto { |
| | | |
| | | @ApiModelProperty(value = "userId",hidden = true) |
| | | private Long userId; |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.member.domain.dto; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName MgtBaseGetDto |
| | | * @description: TODO |
| | | * @date 2023年04月21日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class MgtBaseGetDto extends MgtBaseDto{ |
| | | |
| | | @ApiModelProperty(value = "请求对象id") |
| | | private String id; |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.member.domain.dto; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName MGTChangeCooperDto |
| | | * @description: TODO |
| | | * @date 2023年04月21日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class MgtChangeCoopDto extends MgtBaseDto { |
| | | |
| | | @ApiModelProperty(value = "商户id") |
| | | private Long shopId; |
| | | |
| | | @ApiModelProperty("合作开始时间") |
| | | private String coopStartTime; |
| | | |
| | | @ApiModelProperty("合作结束时间") |
| | | private String coopEndTime; |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.member.domain.dto; |
| | | |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName ManageCreateShopDto |
| | | * @description: TODO |
| | | * @date 2023年04月21日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class MgtEditShopDto extends MgtBaseDto{ |
| | | |
| | | |
| | | @ApiModelProperty(value = "商户id,新增不传") |
| | | private Long shopId; |
| | | |
| | | @ApiModelProperty("商户名称") |
| | | private String shopName; |
| | | |
| | | @ApiModelProperty("商户类型1.经销商2.代理商") |
| | | private Integer shopType; |
| | | |
| | | @ApiModelProperty("营业开始时间") |
| | | private String businessStartTime; |
| | | |
| | | @ApiModelProperty("营业结束时间") |
| | | private String businessEndTime; |
| | | |
| | | @ApiModelProperty("店主姓名") |
| | | private String shopownerName; |
| | | |
| | | @ApiModelProperty("店主联系方式") |
| | | private String shopownerPhone; |
| | | |
| | | @ApiModelProperty("签约区域") |
| | | private String signAreaCode; |
| | | |
| | | @ApiModelProperty("商户服务电话") |
| | | private String shopServicePhone; |
| | | |
| | | @ApiModelProperty("管辖员工") |
| | | private Long belongUserId; |
| | | |
| | | @ApiModelProperty("所属经销商") |
| | | private Long belongShopId; |
| | | |
| | | @ApiModelProperty("扶持能力1.有2.没有") |
| | | private Integer supportingCapacityFlag; |
| | | |
| | | @ApiModelProperty("店面操作人数1.1人2.1人以上") |
| | | private Integer operationPersonFlag; |
| | | |
| | | @ApiModelProperty("执行力1.强2.弱") |
| | | private Integer executiveForceFlag; |
| | | |
| | | @ApiModelProperty("格局1.大2.小") |
| | | private Integer patternFlag; |
| | | |
| | | @ApiModelProperty("人脉1.宽2.窄") |
| | | private Integer connectionFlag; |
| | | |
| | | @ApiModelProperty("经济能力1.强2.差") |
| | | private Integer economicAbilityFlag; |
| | | |
| | | @ApiModelProperty("与合作商关系1.好2.差") |
| | | private Integer relationPartner; |
| | | |
| | | @ApiModelProperty("曾从事事业") |
| | | private String businessHistory; |
| | | |
| | | @ApiModelProperty("店铺地址省code") |
| | | private String shopProvinceCode; |
| | | |
| | | @ApiModelProperty("店铺地址市code") |
| | | private String shopCityCode; |
| | | |
| | | @ApiModelProperty("店铺地址区code") |
| | | private String shopAreaCode; |
| | | |
| | | @ApiModelProperty("店铺区域全称") |
| | | private String shopAreaName; |
| | | |
| | | @ApiModelProperty("店铺详细地址") |
| | | private String shopAddress; |
| | | |
| | | @ApiModelProperty("店铺经度") |
| | | private String shopLongitude; |
| | | |
| | | @ApiModelProperty("店铺维度") |
| | | private String shopLatitude; |
| | | |
| | | @ApiModelProperty("店铺详情") |
| | | private String shopDetail; |
| | | |
| | | @ApiModelProperty("营销功能1开2关") |
| | | private Integer marketingFunctionFlag; |
| | | |
| | | @ApiModelProperty("领券1开2关") |
| | | private Integer platformCouponFlag; |
| | | |
| | | @ApiModelProperty("生日卡1开2关") |
| | | private Integer platformBirthdayFlag; |
| | | |
| | | @ApiModelProperty("推荐人") |
| | | private String recommendPerson; |
| | | |
| | | @ApiModelProperty("商户标签id 多个用,隔开") |
| | | private String shopTagIds; |
| | | |
| | | @ApiModelProperty("关联用户id 多个用,隔开") |
| | | private String relUserIds; |
| | | |
| | | @ApiModelProperty("商户封面") |
| | | private String shopPicture; |
| | | |
| | | @ApiModelProperty("商户banner 多个用,隔开") |
| | | private String shopBanners; |
| | | } |
New file |
| | |
| | | package com.ruoyi.member.domain.dto; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName MgtEditShopTagDto |
| | | * @description: TODO |
| | | * @date 2023年04月21日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class MgtEditShopTagDto extends MgtBaseGetDto { |
| | | |
| | | @ApiModelProperty("商户标签id 多个用,隔开") |
| | | private String shopTagIds; |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.member.domain.dto; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppPageDto |
| | | * @description: TODO |
| | | * @date 2023年04月20日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class MgtPageDto extends MgtBaseDto{ |
| | | |
| | | @ApiModelProperty(name = "pagenum", value = "页码") |
| | | private Integer pageNum = 1; |
| | | |
| | | |
| | | @ApiModelProperty(name = "pagesize", value = "每页显示条数") |
| | | private Integer pageSize = 20; |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.member.domain.dto; |
| | | |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName MgtShopPageDto |
| | | * @description: TODO |
| | | * @date 2023年04月21日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class MgtShopPageDto extends MgtPageDto { |
| | | |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.member.domain.pojo.member; |
| | | |
| | | import com.baomidou.mybatisplus.annotation.IdType; |
| | | import com.baomidou.mybatisplus.annotation.TableId; |
| | | import com.baomidou.mybatisplus.annotation.TableField; |
| | | import com.baomidou.mybatisplus.activerecord.Model; |
| | | import com.baomidou.mybatisplus.annotation.TableName; |
| | | import java.io.Serializable; |
| | | |
| | | import lombok.Data; |
| | | import lombok.EqualsAndHashCode; |
| | | import lombok.experimental.Accessors; |
| | | |
| | | /** |
| | | * <p> |
| | | * 会员档案信息 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | @Data |
| | | @EqualsAndHashCode(callSuper = false) |
| | | @Accessors(chain = true) |
| | | @TableName("t_member_archive") |
| | | public class MemberArchive extends Model<MemberArchive> { |
| | | |
| | | private static final long serialVersionUID = 1L; |
| | | |
| | | @TableId(value = "id", type = IdType.AUTO) |
| | | private Long id; |
| | | /** |
| | | * 删除标记 |
| | | */ |
| | | @TableField("del_flag") |
| | | private Integer delFlag; |
| | | /** |
| | | * 用户id |
| | | */ |
| | | @TableField("user_id") |
| | | private Long userId; |
| | | /** |
| | | * 字段id |
| | | */ |
| | | @TableField("field_id") |
| | | private Long fieldId; |
| | | /** |
| | | * 值 |
| | | */ |
| | | @TableField("field_value") |
| | | private String fieldValue; |
| | | |
| | | |
| | | @Override |
| | | protected Serializable pkVal() { |
| | | return this.id; |
| | | } |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.member.domain.pojo.member; |
| | | |
| | | import com.baomidou.mybatisplus.annotation.IdType; |
| | | import com.baomidou.mybatisplus.annotation.TableId; |
| | | import com.baomidou.mybatisplus.annotation.TableField; |
| | | import com.baomidou.mybatisplus.activerecord.Model; |
| | | import com.baomidou.mybatisplus.annotation.TableName; |
| | | import java.io.Serializable; |
| | | |
| | | import lombok.Data; |
| | | import lombok.EqualsAndHashCode; |
| | | import lombok.experimental.Accessors; |
| | | |
| | | /** |
| | | * <p> |
| | | * 档案字段 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | @Data |
| | | @EqualsAndHashCode(callSuper = false) |
| | | @Accessors(chain = true) |
| | | @TableName("t_member_archive_fields") |
| | | public class MemberArchiveFields extends Model<MemberArchiveFields> { |
| | | |
| | | private static final long serialVersionUID = 1L; |
| | | |
| | | @TableId(value = "id", type = IdType.AUTO) |
| | | private Long id; |
| | | /** |
| | | * 删除标记 |
| | | */ |
| | | @TableField("del_flag") |
| | | private String delFlag; |
| | | /** |
| | | * 字段名称 |
| | | */ |
| | | @TableField("field_name") |
| | | private String fieldName; |
| | | /** |
| | | * 字段类型1.文字输入2.数字输入3.字母输入4.无限制输入5.年月日选择6.选项 |
| | | */ |
| | | @TableField("field_type") |
| | | private Integer fieldType; |
| | | /** |
| | | * 是否必填0否1是 |
| | | */ |
| | | @TableField("required_flag") |
| | | private Integer requiredFlag; |
| | | /** |
| | | * 字段排序 |
| | | */ |
| | | @TableField("field_sort") |
| | | private String fieldSort; |
| | | /** |
| | | * 输入提示 |
| | | */ |
| | | @TableField("input_tip") |
| | | private String inputTip; |
| | | /** |
| | | * 选项集合 |
| | | */ |
| | | @TableField("option_values") |
| | | private String optionValues; |
| | | |
| | | |
| | | @Override |
| | | protected Serializable pkVal() { |
| | | return this.id; |
| | | } |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.member.domain.pojo.member; |
| | | |
| | | import com.baomidou.mybatisplus.annotation.IdType; |
| | | import com.baomidou.mybatisplus.annotation.TableId; |
| | | import com.baomidou.mybatisplus.annotation.TableField; |
| | | import com.baomidou.mybatisplus.activerecord.Model; |
| | | import com.baomidou.mybatisplus.annotation.TableName; |
| | | import java.io.Serializable; |
| | | |
| | | import lombok.Data; |
| | | import lombok.EqualsAndHashCode; |
| | | import lombok.experimental.Accessors; |
| | | |
| | | /** |
| | | * <p> |
| | | * 用户调理问题 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | @Data |
| | | @EqualsAndHashCode(callSuper = false) |
| | | @Accessors(chain = true) |
| | | @TableName("t_member_nurse") |
| | | public class MemberNurse extends Model<MemberNurse> { |
| | | |
| | | private static final long serialVersionUID = 1L; |
| | | |
| | | @TableId(value = "id", type = IdType.AUTO) |
| | | private Long id; |
| | | /** |
| | | * 删除标记 |
| | | */ |
| | | @TableField("del_flag") |
| | | private Integer delFlag; |
| | | /** |
| | | * 用户id |
| | | */ |
| | | @TableField("user_id") |
| | | private Long userId; |
| | | /** |
| | | * 调理问题 |
| | | */ |
| | | private String nurse; |
| | | |
| | | |
| | | @Override |
| | | protected Serializable pkVal() { |
| | | return this.id; |
| | | } |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.member.domain.pojo.member; |
| | | |
| | | import com.baomidou.mybatisplus.annotation.IdType; |
| | | import java.math.BigDecimal; |
| | | import java.util.Date; |
| | | import com.baomidou.mybatisplus.annotation.TableId; |
| | | import com.baomidou.mybatisplus.annotation.TableField; |
| | | import com.baomidou.mybatisplus.activerecord.Model; |
| | | import com.baomidou.mybatisplus.annotation.TableName; |
| | | import java.io.Serializable; |
| | | |
| | | import lombok.Data; |
| | | import lombok.EqualsAndHashCode; |
| | | import lombok.experimental.Accessors; |
| | | |
| | | /** |
| | | * <p> |
| | | * 用户关联优惠券 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | @Data |
| | | @EqualsAndHashCode(callSuper = false) |
| | | @Accessors(chain = true) |
| | | @TableName("t_user_coupon") |
| | | public class UserCoupon extends Model<UserCoupon> { |
| | | |
| | | private static final long serialVersionUID = 1L; |
| | | |
| | | @TableId(value = "id", type = IdType.AUTO) |
| | | private Long id; |
| | | /** |
| | | * 删除标记 |
| | | */ |
| | | @TableField("del_flag") |
| | | private Integer delFlag; |
| | | /** |
| | | * 优惠券id |
| | | */ |
| | | @TableField("coupon_id") |
| | | private String couponId; |
| | | /** |
| | | * 用户id |
| | | */ |
| | | @TableField("user_id") |
| | | private Long userId; |
| | | /** |
| | | * 优惠券类型1.满减2.折扣3.代金4.商品 |
| | | */ |
| | | @TableField("coupon_type") |
| | | private Integer couponType; |
| | | /** |
| | | * 优惠券状态-1删除0已过期1已领取2已使用 |
| | | */ |
| | | @TableField("coupon_status") |
| | | private Integer couponStatus; |
| | | /** |
| | | * 优惠券名称 |
| | | */ |
| | | @TableField("coupon_name") |
| | | private String couponName; |
| | | /** |
| | | * 发送类型1.手动领取2.全部用户3.会员用户4非会员用户5自定义 |
| | | */ |
| | | @TableField("send_type") |
| | | private Integer sendType; |
| | | /** |
| | | * 发送时间类型1立即2定时 |
| | | */ |
| | | @TableField("send_time_type") |
| | | private Integer sendTimeType; |
| | | /** |
| | | * 发送时间 |
| | | */ |
| | | @TableField("send_time") |
| | | private Date sendTime; |
| | | /** |
| | | * 门槛金额 |
| | | */ |
| | | @TableField("money_threshold") |
| | | private BigDecimal moneyThreshold; |
| | | /** |
| | | * 折扣金额 |
| | | */ |
| | | @TableField("dicount_money") |
| | | private BigDecimal dicountMoney; |
| | | /** |
| | | * 折扣百分比 |
| | | */ |
| | | @TableField("discout_percent") |
| | | private BigDecimal discoutPercent; |
| | | /** |
| | | * 使用范围1.全场2.指定商品 |
| | | */ |
| | | @TableField("use_scope") |
| | | private Integer useScope; |
| | | /** |
| | | * 有效期类型 |
| | | */ |
| | | @TableField("valid_time_type") |
| | | private Integer validTimeType; |
| | | /** |
| | | * 有效开始时间 |
| | | */ |
| | | @TableField("valid_start_time") |
| | | private Date validStartTime; |
| | | /** |
| | | * 有效截止时间 |
| | | */ |
| | | @TableField("valid_end_time") |
| | | private Date validEndTime; |
| | | /** |
| | | * 有效期 |
| | | */ |
| | | @TableField("valid_day") |
| | | private Integer validDay; |
| | | /** |
| | | * 获取时间 |
| | | */ |
| | | @TableField("receive_time") |
| | | private Date receiveTime; |
| | | /** |
| | | * 使用时间 |
| | | */ |
| | | @TableField("user_time") |
| | | private Date userTime; |
| | | /** |
| | | * 使用有效期 |
| | | */ |
| | | @TableField("deadline_time") |
| | | private Date deadlineTime; |
| | | |
| | | |
| | | @Override |
| | | protected Serializable pkVal() { |
| | | return this.id; |
| | | } |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.member.domain.vo; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppQuickEntryVo |
| | | * @description: TODO |
| | | * @date 2023年04月20日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class AppAdvertVo { |
| | | |
| | | @ApiModelProperty(value = "广告入口") |
| | | private Long adId; |
| | | |
| | | @ApiModelProperty(value = "广告图片地址") |
| | | private String adUrl; |
| | | |
| | | @ApiModelProperty(value = "广告语") |
| | | private String adContent; |
| | | |
| | | @ApiModelProperty(value = "对象类型1.外链2.内链3.无") |
| | | private Integer targetType; |
| | | |
| | | @ApiModelProperty(value = "链接地址") |
| | | private String linkUrl; |
| | | |
| | | @ApiModelProperty(value = "跳转id") |
| | | private String jumpId; |
| | | |
| | | @ApiModelProperty(value = "logo地址") |
| | | private String logoUrl; |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.member.domain.vo; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppAgreementVo |
| | | * @description: TODO |
| | | * @date 2023年03月07日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class AppAgreementVo { |
| | | |
| | | @ApiModelProperty(value = "协议id") |
| | | private Long agreementId; |
| | | |
| | | @ApiModelProperty(value = "协议内容") |
| | | private String agreementContent; |
| | | } |
New file |
| | |
| | | package com.ruoyi.member.domain.vo; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppBannerVo |
| | | * @description: TODO |
| | | * @date 2023年04月20日 |
| | | * @version: 1.0 |
| | | */ |
| | | |
| | | @Data |
| | | public class AppBannerVo { |
| | | |
| | | @ApiModelProperty(value = "bannerid") |
| | | private Long bannerId; |
| | | |
| | | @ApiModelProperty(value = "banner图片地址") |
| | | private String bannerUrl; |
| | | |
| | | @ApiModelProperty(value = "链接类型1.外部2.内部3.无") |
| | | private Integer targetType; |
| | | |
| | | @ApiModelProperty(value = "链接类型1.手动输入2.选择已有") |
| | | private Integer linkType; |
| | | |
| | | @ApiModelProperty(value = "链接地址") |
| | | private String linkUrl; |
| | | |
| | | @ApiModelProperty(value = "跳转类型1.门店详情2.秒杀活动3领券中心4.商城列表5.关于洪瑞堂") |
| | | private Integer jumpType; |
| | | |
| | | @ApiModelProperty(value = "跳转id") |
| | | private String jumpId; |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.member.domain.vo; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | import java.math.BigDecimal; |
| | | import java.util.Date; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppGoodsInfoVo |
| | | * @description: TODO |
| | | * @date 2023年04月20日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class AppGoodsInfoVo { |
| | | |
| | | @ApiModelProperty(value = "商品id") |
| | | private Long goodsId; |
| | | |
| | | @ApiModelProperty(value = "商品名称") |
| | | private String goodsName; |
| | | |
| | | @ApiModelProperty(value = "商品简介") |
| | | private String goodsIntroduction; |
| | | |
| | | @ApiModelProperty(value = "商品视频") |
| | | private String goodsVideo; |
| | | |
| | | @ApiModelProperty(value = "商品banner") |
| | | private String goodsBanners; |
| | | |
| | | @ApiModelProperty(value = "商品类型1周期2服务3体验4单品") |
| | | private Integer goodsType; |
| | | |
| | | @ApiModelProperty(value = "商品标签") |
| | | private String goodsTag; |
| | | |
| | | @ApiModelProperty(value = "商品调理问题") |
| | | private BigDecimal goodsNurses; |
| | | |
| | | @ApiModelProperty("服务次数") |
| | | private Integer serviceNum; |
| | | |
| | | @ApiModelProperty(value = "商品售价") |
| | | private BigDecimal salesPrice; |
| | | |
| | | @ApiModelProperty(value = "商品详情") |
| | | private String goodsDetail; |
| | | |
| | | @ApiModelProperty(value = "销售数量") |
| | | private Integer salesNum; |
| | | |
| | | @ApiModelProperty(value = "是否活动跳转0否1是") |
| | | private Integer activityFlag; |
| | | |
| | | @ApiModelProperty(value = "商品活动价") |
| | | private BigDecimal activityPrice; |
| | | |
| | | @ApiModelProperty(value = "售罄标记0否1是") |
| | | private Integer sellOutFlag; |
| | | |
| | | @ApiModelProperty(value = "活动截止时间") |
| | | private Date activityDeadline; |
| | | } |
New file |
| | |
| | | package com.ruoyi.member.domain.vo; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppNearbyShopDto |
| | | * @description: TODO |
| | | * @date 2023年04月19日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class AppNearbyShopVo { |
| | | |
| | | |
| | | @ApiModelProperty(value = "商户id") |
| | | private Long shopId; |
| | | |
| | | @ApiModelProperty(value = "商户名称") |
| | | private String shopName; |
| | | |
| | | @ApiModelProperty(value = "商户地址") |
| | | private String shopAddress; |
| | | |
| | | @ApiModelProperty(value = "经度") |
| | | private String shopLongitude; |
| | | |
| | | @ApiModelProperty(value = "维度") |
| | | private String shopLatitude; |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.member.domain.vo; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppQuickEntryVo |
| | | * @description: TODO |
| | | * @date 2023年04月20日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class AppQuickEntryVo { |
| | | |
| | | @ApiModelProperty(value = "快速入口") |
| | | private Long entryId; |
| | | |
| | | @ApiModelProperty(value = "入口图片地址") |
| | | private String entryUrl; |
| | | |
| | | @ApiModelProperty(value = "入口名称") |
| | | private String entryName; |
| | | |
| | | @ApiModelProperty(value = "对象类型1.外链2.内链3.无") |
| | | private Integer targetType; |
| | | |
| | | @ApiModelProperty(value = "链接地址") |
| | | private String linkUrl; |
| | | |
| | | @ApiModelProperty(value = "跳转id") |
| | | private String jumpId; |
| | | |
| | | |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.member.domain.vo; |
| | | |
| | | import com.ruoyi.system.domain.pojo.shop.ShopCertificate; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppShopInfoVo |
| | | * @description: TODO |
| | | * @date 2023年04月20日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class AppShopInfoVo { |
| | | |
| | | @ApiModelProperty(value = "商户id") |
| | | private Long shopId; |
| | | |
| | | @ApiModelProperty(value = "商户名称") |
| | | private String shopName; |
| | | |
| | | @ApiModelProperty(value = "商户地址") |
| | | private String shopAddress; |
| | | |
| | | @ApiModelProperty(value = "经度") |
| | | private String shopLongitude; |
| | | |
| | | @ApiModelProperty(value = "维度") |
| | | private String shopLatitude; |
| | | |
| | | @ApiModelProperty("营业开始时间") |
| | | private String businessStartTime; |
| | | |
| | | @ApiModelProperty("营业结束时间") |
| | | private String businessEndTime; |
| | | |
| | | @ApiModelProperty("商户标签") |
| | | private String shopTags; |
| | | |
| | | @ApiModelProperty("商户服务电话") |
| | | private String shopServicePhone; |
| | | |
| | | @ApiModelProperty("商户封面") |
| | | private String shopPicture; |
| | | |
| | | @ApiModelProperty("商户banners") |
| | | private String shopBanners; |
| | | |
| | | @ApiModelProperty("店铺详情") |
| | | private String shopDetail; |
| | | |
| | | @ApiModelProperty("店铺证书") |
| | | private List<ShopCertificate> shopCertificateList; |
| | | } |
New file |
| | |
| | | package com.ruoyi.member.domain.vo; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | import java.math.BigDecimal; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppSimpleGoodsVo |
| | | * @description: TODO |
| | | * @date 2023年04月20日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class AppSimpleActivityGoodsVo { |
| | | |
| | | @ApiModelProperty(value = "商品id") |
| | | private Long goodsId; |
| | | |
| | | @ApiModelProperty(value = "商品名称") |
| | | private String goodsName; |
| | | |
| | | @ApiModelProperty(value = "商品简介") |
| | | private String goodsIntroduction; |
| | | |
| | | @ApiModelProperty(value = "商品图片") |
| | | private String goodsPicture; |
| | | |
| | | @ApiModelProperty(value = "商品类型1周期2服务3体验4单品") |
| | | private Integer goodsType; |
| | | |
| | | @ApiModelProperty(value = "商品标签") |
| | | private String goodsTag; |
| | | |
| | | @ApiModelProperty(value = "商品调理问题") |
| | | private BigDecimal goodsNurses; |
| | | |
| | | @ApiModelProperty(value = "商品售价") |
| | | private BigDecimal salesPrice; |
| | | |
| | | @ApiModelProperty(value = "商品活动价") |
| | | private BigDecimal activityPrice; |
| | | |
| | | @ApiModelProperty(value = "活动销售数量") |
| | | private Integer activityNumber; |
| | | |
| | | @ApiModelProperty(value = "已售数量") |
| | | private Integer salesNumber; |
| | | |
| | | @ApiModelProperty(value = "已售比例") |
| | | private BigDecimal salesPercent; |
| | | |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.member.domain.vo; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | import java.math.BigDecimal; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppSimpleGoodsVo |
| | | * @description: TODO |
| | | * @date 2023年04月20日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class AppSimpleGoodsVo { |
| | | |
| | | @ApiModelProperty(value = "商品id") |
| | | private Long goodsId; |
| | | |
| | | @ApiModelProperty(value = "商品名称") |
| | | private String goodsName; |
| | | |
| | | @ApiModelProperty(value = "商品简介") |
| | | private String goodsIntroduction; |
| | | |
| | | @ApiModelProperty(value = "商品图片") |
| | | private String goodsPicture; |
| | | |
| | | @ApiModelProperty(value = "商品类型1周期2服务3体验4单品") |
| | | private Integer goodsType; |
| | | |
| | | @ApiModelProperty(value = "商品标签") |
| | | private String goodsTag; |
| | | |
| | | @ApiModelProperty(value = "商品调理问题") |
| | | private BigDecimal goodsNurses; |
| | | |
| | | @ApiModelProperty(value = "商品售价") |
| | | private BigDecimal salesPrice; |
| | | |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.member.domain.vo; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppUserAuthorizeDto |
| | | * @description: TODO |
| | | * @date 2023年02月13日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class AppUserAuthorizeVo { |
| | | |
| | | @ApiModelProperty(value = "微信openid") |
| | | private String openid; |
| | | |
| | | @ApiModelProperty(value = "微信unionid") |
| | | private String unionid; |
| | | |
| | | @ApiModelProperty(value = "微信昵称") |
| | | private String nickName; |
| | | |
| | | @ApiModelProperty(value = "用户手机") |
| | | private String mobile; |
| | | } |
New file |
| | |
| | | package com.ruoyi.member.domain.vo; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | import java.math.BigDecimal; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName MerHomeShopTotalVo |
| | | * @description: TODO |
| | | * @date 2023年04月21日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class MerHomeShopTotalVo { |
| | | |
| | | @ApiModelProperty(value = "商户id") |
| | | private Long shopId; |
| | | |
| | | @ApiModelProperty(value = "今日到店") |
| | | private Integer todayShop; |
| | | |
| | | @ApiModelProperty(value = "待处理订单") |
| | | private Integer unHandleOrder; |
| | | |
| | | @ApiModelProperty(value = "跟进任务") |
| | | private Integer task; |
| | | |
| | | @ApiModelProperty(value = "店铺营业额") |
| | | private BigDecimal shopTurnover; |
| | | |
| | | @ApiModelProperty(value = "剩余周期人数") |
| | | private Integer cycleSurp; |
| | | |
| | | @ApiModelProperty(value = "剩余体验人数") |
| | | private Integer explorationSurp; |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.member.domain.vo; |
| | | |
| | | import com.ruoyi.system.domain.pojo.shop.ShopCertificate; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName MerShopInfoVo |
| | | * @description: TODO |
| | | * @date 2023年04月21日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class MerShopInfoVo { |
| | | |
| | | @ApiModelProperty(value = "商户id") |
| | | private Long shopId; |
| | | |
| | | @ApiModelProperty("商户名称") |
| | | private String shopName; |
| | | |
| | | @ApiModelProperty("商户类型1.经销商2.代理商") |
| | | private Integer shopType; |
| | | |
| | | @ApiModelProperty("营业开始时间") |
| | | private String businessStartTime; |
| | | |
| | | @ApiModelProperty("营业结束时间") |
| | | private String businessEndTime; |
| | | |
| | | @ApiModelProperty("店主姓名") |
| | | private String shopownerName; |
| | | |
| | | @ApiModelProperty("店主联系方式") |
| | | private String shopownerPhone; |
| | | |
| | | @ApiModelProperty("签约区域") |
| | | private String signAreaCode; |
| | | |
| | | @ApiModelProperty("商户服务电话") |
| | | private String shopServicePhone; |
| | | |
| | | @ApiModelProperty("管辖员工") |
| | | private Long belongUserId; |
| | | |
| | | @ApiModelProperty("所属经销商") |
| | | private Long belongShopId; |
| | | |
| | | @ApiModelProperty("扶持能力1.有2.没有") |
| | | private Integer supportingCapacityFlag; |
| | | |
| | | @ApiModelProperty("店面操作人数1.1人2.1人以上") |
| | | private Integer operationPersonFlag; |
| | | |
| | | @ApiModelProperty("执行力1.强2.弱") |
| | | private Integer executiveForceFlag; |
| | | |
| | | @ApiModelProperty("格局1.大2.小") |
| | | private Integer patternFlag; |
| | | |
| | | @ApiModelProperty("人脉1.宽2.窄") |
| | | private Integer connectionFlag; |
| | | |
| | | @ApiModelProperty("经济能力1.强2.差") |
| | | private Integer economicAbilityFlag; |
| | | |
| | | @ApiModelProperty("与合作商关系1.好2.差") |
| | | private Integer relationPartner; |
| | | |
| | | @ApiModelProperty("曾从事事业") |
| | | private String businessHistory; |
| | | |
| | | @ApiModelProperty("店铺地址省code") |
| | | private String shopProvinceCode; |
| | | |
| | | @ApiModelProperty("店铺地址市code") |
| | | private String shopCityCode; |
| | | |
| | | @ApiModelProperty("店铺地址区code") |
| | | private String shopAreaCode; |
| | | |
| | | @ApiModelProperty("店铺区域全称") |
| | | private String shopAreaName; |
| | | |
| | | @ApiModelProperty("店铺详细地址") |
| | | private String shopAddress; |
| | | |
| | | @ApiModelProperty("店铺经度") |
| | | private String shopLongitude; |
| | | |
| | | @ApiModelProperty("店铺维度") |
| | | private String shopLatitude; |
| | | |
| | | @ApiModelProperty("店铺详情") |
| | | private String shopDetail; |
| | | |
| | | @ApiModelProperty("营销功能1开2关") |
| | | private Integer marketingFunctionFlag; |
| | | |
| | | @ApiModelProperty("领券1开2关") |
| | | private Integer platformCouponFlag; |
| | | |
| | | @ApiModelProperty("生日卡1开2关") |
| | | private Integer platformBirthdayFlag; |
| | | |
| | | @ApiModelProperty("推荐人") |
| | | private String recommendPerson; |
| | | |
| | | @ApiModelProperty("商户标签id 多个用,隔开") |
| | | private String shopTagIds; |
| | | |
| | | @ApiModelProperty("商户标签") |
| | | private String shopTags; |
| | | |
| | | @ApiModelProperty("关联用户id 多个用,隔开") |
| | | private String relUserIds; |
| | | |
| | | @ApiModelProperty("关联用户") |
| | | private String relUsers; |
| | | |
| | | @ApiModelProperty("商户封面") |
| | | private String shopPicture; |
| | | |
| | | @ApiModelProperty("商户banner 多个用,隔开") |
| | | private String shopBanners; |
| | | |
| | | @ApiModelProperty("证书list") |
| | | private List<ShopCertificate> shopCertificateList; |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.member.domain.vo; |
| | | |
| | | import com.ruoyi.common.core.utils.StringUtils; |
| | | |
| | | /** |
| | | * 路由显示信息 |
| | | * |
| | | * @author ruoyi |
| | | */ |
| | | public class MetaVo |
| | | { |
| | | /** |
| | | * 设置该路由在侧边栏和面包屑中展示的名字 |
| | | */ |
| | | private String title; |
| | | |
| | | /** |
| | | * 设置该路由的图标,对应路径src/assets/icons/svg |
| | | */ |
| | | private String icon; |
| | | |
| | | /** |
| | | * 设置为true,则不会被 <keep-alive>缓存 |
| | | */ |
| | | private boolean noCache; |
| | | |
| | | /** |
| | | * 内链地址(http(s)://开头) |
| | | */ |
| | | private String link; |
| | | |
| | | public MetaVo() |
| | | { |
| | | } |
| | | |
| | | public MetaVo(String title, String icon) |
| | | { |
| | | this.title = title; |
| | | this.icon = icon; |
| | | } |
| | | |
| | | public MetaVo(String title, String icon, boolean noCache) |
| | | { |
| | | this.title = title; |
| | | this.icon = icon; |
| | | this.noCache = noCache; |
| | | } |
| | | |
| | | public MetaVo(String title, String icon, String link) |
| | | { |
| | | this.title = title; |
| | | this.icon = icon; |
| | | this.link = link; |
| | | } |
| | | |
| | | public MetaVo(String title, String icon, boolean noCache, String link) |
| | | { |
| | | this.title = title; |
| | | this.icon = icon; |
| | | this.noCache = noCache; |
| | | if (StringUtils.ishttp(link)) |
| | | { |
| | | this.link = link; |
| | | } |
| | | } |
| | | |
| | | public boolean isNoCache() |
| | | { |
| | | return noCache; |
| | | } |
| | | |
| | | public void setNoCache(boolean noCache) |
| | | { |
| | | this.noCache = noCache; |
| | | } |
| | | |
| | | public String getTitle() |
| | | { |
| | | return title; |
| | | } |
| | | |
| | | public void setTitle(String title) |
| | | { |
| | | this.title = title; |
| | | } |
| | | |
| | | public String getIcon() |
| | | { |
| | | return icon; |
| | | } |
| | | |
| | | public void setIcon(String icon) |
| | | { |
| | | this.icon = icon; |
| | | } |
| | | |
| | | public String getLink() |
| | | { |
| | | return link; |
| | | } |
| | | |
| | | public void setLink(String link) |
| | | { |
| | | this.link = link; |
| | | } |
| | | } |
New file |
| | |
| | | package com.ruoyi.member.domain.vo; |
| | | |
| | | import com.ruoyi.system.domain.pojo.shop.ShopCertificate; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName MgtShopInfoVo |
| | | * @description: TODO |
| | | * @date 2023年04月21日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class MgtShopInfoVo { |
| | | |
| | | @ApiModelProperty(value = "商户id") |
| | | private Long shopId; |
| | | |
| | | @ApiModelProperty("商户名称") |
| | | private String shopName; |
| | | |
| | | @ApiModelProperty("商户类型1.经销商2.代理商") |
| | | private Integer shopType; |
| | | |
| | | @ApiModelProperty("营业开始时间") |
| | | private String businessStartTime; |
| | | |
| | | @ApiModelProperty("营业结束时间") |
| | | private String businessEndTime; |
| | | |
| | | @ApiModelProperty("店主姓名") |
| | | private String shopownerName; |
| | | |
| | | @ApiModelProperty("店主联系方式") |
| | | private String shopownerPhone; |
| | | |
| | | @ApiModelProperty("签约区域") |
| | | private String signAreaCode; |
| | | |
| | | @ApiModelProperty("商户服务电话") |
| | | private String shopServicePhone; |
| | | |
| | | @ApiModelProperty("管辖员工") |
| | | private Long belongUserId; |
| | | |
| | | @ApiModelProperty("所属经销商") |
| | | private Long belongShopId; |
| | | |
| | | @ApiModelProperty("扶持能力1.有2.没有") |
| | | private Integer supportingCapacityFlag; |
| | | |
| | | @ApiModelProperty("店面操作人数1.1人2.1人以上") |
| | | private Integer operationPersonFlag; |
| | | |
| | | @ApiModelProperty("执行力1.强2.弱") |
| | | private Integer executiveForceFlag; |
| | | |
| | | @ApiModelProperty("格局1.大2.小") |
| | | private Integer patternFlag; |
| | | |
| | | @ApiModelProperty("人脉1.宽2.窄") |
| | | private Integer connectionFlag; |
| | | |
| | | @ApiModelProperty("经济能力1.强2.差") |
| | | private Integer economicAbilityFlag; |
| | | |
| | | @ApiModelProperty("与合作商关系1.好2.差") |
| | | private Integer relationPartner; |
| | | |
| | | @ApiModelProperty("曾从事事业") |
| | | private String businessHistory; |
| | | |
| | | @ApiModelProperty("店铺地址省code") |
| | | private String shopProvinceCode; |
| | | |
| | | @ApiModelProperty("店铺地址市code") |
| | | private String shopCityCode; |
| | | |
| | | @ApiModelProperty("店铺地址区code") |
| | | private String shopAreaCode; |
| | | |
| | | @ApiModelProperty("店铺区域全称") |
| | | private String shopAreaName; |
| | | |
| | | @ApiModelProperty("店铺详细地址") |
| | | private String shopAddress; |
| | | |
| | | @ApiModelProperty("店铺经度") |
| | | private String shopLongitude; |
| | | |
| | | @ApiModelProperty("店铺维度") |
| | | private String shopLatitude; |
| | | |
| | | @ApiModelProperty("店铺详情") |
| | | private String shopDetail; |
| | | |
| | | @ApiModelProperty("营销功能1开2关") |
| | | private Integer marketingFunctionFlag; |
| | | |
| | | @ApiModelProperty("领券1开2关") |
| | | private Integer platformCouponFlag; |
| | | |
| | | @ApiModelProperty("生日卡1开2关") |
| | | private Integer platformBirthdayFlag; |
| | | |
| | | @ApiModelProperty("推荐人") |
| | | private String recommendPerson; |
| | | |
| | | @ApiModelProperty("商户标签id 多个用,隔开") |
| | | private String shopTagIds; |
| | | |
| | | @ApiModelProperty("商户标签") |
| | | private String shopTags; |
| | | |
| | | @ApiModelProperty("关联用户id 多个用,隔开") |
| | | private String relUserIds; |
| | | |
| | | @ApiModelProperty("关联用户") |
| | | private String relUsers; |
| | | |
| | | @ApiModelProperty("商户封面") |
| | | private String shopPicture; |
| | | |
| | | @ApiModelProperty("商户banner 多个用,隔开") |
| | | private String shopBanners; |
| | | |
| | | @ApiModelProperty("证书list") |
| | | private List<ShopCertificate> shopCertificateList; |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.member.domain.vo; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | import java.math.BigDecimal; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName MgtShopPageVo |
| | | * @description: TODO |
| | | * @date 2023年04月21日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class MgtShopPageVo { |
| | | |
| | | @ApiModelProperty(value = "商户id") |
| | | private Long shopId; |
| | | |
| | | @ApiModelProperty("签约时间") |
| | | private String signTime; |
| | | |
| | | @ApiModelProperty("商户名称") |
| | | private String shopName; |
| | | |
| | | @ApiModelProperty("商户编号") |
| | | private String shopNumber; |
| | | |
| | | @ApiModelProperty("商户标签") |
| | | private String shopTags; |
| | | |
| | | @ApiModelProperty("签约人") |
| | | private String signUser; |
| | | |
| | | @ApiModelProperty("首提金额") |
| | | private BigDecimal firstWithdraw; |
| | | |
| | | @ApiModelProperty("关联员工") |
| | | private BigDecimal belongUser; |
| | | |
| | | @ApiModelProperty("关联部门") |
| | | private BigDecimal belongDept; |
| | | |
| | | @ApiModelProperty("来源渠道") |
| | | private String shopSource; |
| | | |
| | | @ApiModelProperty("签约区域") |
| | | private String signAreaName; |
| | | |
| | | @ApiModelProperty("合作期限") |
| | | private String cooperationTime; |
| | | |
| | | @ApiModelProperty("店铺地址") |
| | | private String shopAddress; |
| | | |
| | | @ApiModelProperty("店主姓名") |
| | | private String shopownerName; |
| | | |
| | | @ApiModelProperty("店主联系方式") |
| | | private String shopownerPhone; |
| | | |
| | | @ApiModelProperty("商户状态-1删除0冻结1正常2终止合作") |
| | | private Integer shopStatus; |
| | | |
| | | @ApiModelProperty("商户活动次数") |
| | | private Integer shopActivityCount; |
| | | |
| | | @ApiModelProperty("店铺设置状态") |
| | | private String shopCustomStatus; |
| | | } |
New file |
| | |
| | | package com.ruoyi.member.domain.vo; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName MgtShopTagVo |
| | | * @description: TODO |
| | | * @date 2023年04月21日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class MgtShopTagVo { |
| | | |
| | | @ApiModelProperty(value = "标签id") |
| | | private Long tagId; |
| | | |
| | | @ApiModelProperty(value = "标签名称") |
| | | private String tagName; |
| | | |
| | | @ApiModelProperty(value = "是否选择0否1是") |
| | | private Integer selectFlag; |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.member.domain.vo; |
| | | |
| | | import com.fasterxml.jackson.annotation.JsonInclude; |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * 路由配置信息 |
| | | * |
| | | * @author ruoyi |
| | | */ |
| | | @JsonInclude(JsonInclude.Include.NON_EMPTY) |
| | | public class RouterVo |
| | | { |
| | | /** |
| | | * 路由名字 |
| | | */ |
| | | private String name; |
| | | |
| | | /** |
| | | * 路由地址 |
| | | */ |
| | | private String path; |
| | | |
| | | /** |
| | | * 是否隐藏路由,当设置 true 的时候该路由不会再侧边栏出现 |
| | | */ |
| | | private boolean hidden; |
| | | |
| | | /** |
| | | * 重定向地址,当设置 noRedirect 的时候该路由在面包屑导航中不可被点击 |
| | | */ |
| | | private String redirect; |
| | | |
| | | /** |
| | | * 组件地址 |
| | | */ |
| | | private String component; |
| | | |
| | | /** |
| | | * 路由参数:如 {"id": 1, "name": "ry"} |
| | | */ |
| | | private String query; |
| | | |
| | | /** |
| | | * 当你一个路由下面的 children 声明的路由大于1个时,自动会变成嵌套的模式--如组件页面 |
| | | */ |
| | | private Boolean alwaysShow; |
| | | |
| | | /** |
| | | * 其他元素 |
| | | */ |
| | | private MetaVo meta; |
| | | |
| | | /** |
| | | * 子路由 |
| | | */ |
| | | private List<RouterVo> children; |
| | | |
| | | public String getName() |
| | | { |
| | | return name; |
| | | } |
| | | |
| | | public void setName(String name) |
| | | { |
| | | this.name = name; |
| | | } |
| | | |
| | | public String getPath() |
| | | { |
| | | return path; |
| | | } |
| | | |
| | | public void setPath(String path) |
| | | { |
| | | this.path = path; |
| | | } |
| | | |
| | | public boolean getHidden() |
| | | { |
| | | return hidden; |
| | | } |
| | | |
| | | public void setHidden(boolean hidden) |
| | | { |
| | | this.hidden = hidden; |
| | | } |
| | | |
| | | public String getRedirect() |
| | | { |
| | | return redirect; |
| | | } |
| | | |
| | | public void setRedirect(String redirect) |
| | | { |
| | | this.redirect = redirect; |
| | | } |
| | | |
| | | public String getComponent() |
| | | { |
| | | return component; |
| | | } |
| | | |
| | | public void setComponent(String component) |
| | | { |
| | | this.component = component; |
| | | } |
| | | |
| | | public String getQuery() |
| | | { |
| | | return query; |
| | | } |
| | | |
| | | public void setQuery(String query) |
| | | { |
| | | this.query = query; |
| | | } |
| | | |
| | | public Boolean getAlwaysShow() |
| | | { |
| | | return alwaysShow; |
| | | } |
| | | |
| | | public void setAlwaysShow(Boolean alwaysShow) |
| | | { |
| | | this.alwaysShow = alwaysShow; |
| | | } |
| | | |
| | | public MetaVo getMeta() |
| | | { |
| | | return meta; |
| | | } |
| | | |
| | | public void setMeta(MetaVo meta) |
| | | { |
| | | this.meta = meta; |
| | | } |
| | | |
| | | public List<RouterVo> getChildren() |
| | | { |
| | | return children; |
| | | } |
| | | |
| | | public void setChildren(List<RouterVo> children) |
| | | { |
| | | this.children = children; |
| | | } |
| | | } |
New file |
| | |
| | | package com.ruoyi.member.domain.vo; |
| | | |
| | | import java.io.Serializable; |
| | | import java.util.List; |
| | | import java.util.stream.Collectors; |
| | | import com.fasterxml.jackson.annotation.JsonInclude; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysDept; |
| | | import com.ruoyi.system.domain.pojo.sys.SysMenu; |
| | | |
| | | /** |
| | | * Treeselect树结构实体类 |
| | | * |
| | | * @author ruoyi |
| | | */ |
| | | public class TreeSelect implements Serializable |
| | | { |
| | | private static final long serialVersionUID = 1L; |
| | | |
| | | /** 节点ID */ |
| | | private Long id; |
| | | |
| | | /** 节点名称 */ |
| | | private String label; |
| | | |
| | | /** 子节点 */ |
| | | @JsonInclude(JsonInclude.Include.NON_EMPTY) |
| | | private List<TreeSelect> children; |
| | | |
| | | public TreeSelect() |
| | | { |
| | | |
| | | } |
| | | |
| | | public TreeSelect(SysDept dept) |
| | | { |
| | | this.id = dept.getDeptId(); |
| | | this.label = dept.getDeptName(); |
| | | this.children = dept.getChildren().stream().map(TreeSelect::new).collect(Collectors.toList()); |
| | | } |
| | | |
| | | public TreeSelect(SysMenu menu) |
| | | { |
| | | this.id = menu.getMenuId(); |
| | | this.label = menu.getMenuName(); |
| | | this.children = menu.getChildren().stream().map(TreeSelect::new).collect(Collectors.toList()); |
| | | } |
| | | |
| | | public Long getId() |
| | | { |
| | | return id; |
| | | } |
| | | |
| | | public void setId(Long id) |
| | | { |
| | | this.id = id; |
| | | } |
| | | |
| | | public String getLabel() |
| | | { |
| | | return label; |
| | | } |
| | | |
| | | public void setLabel(String label) |
| | | { |
| | | this.label = label; |
| | | } |
| | | |
| | | public List<TreeSelect> getChildren() |
| | | { |
| | | return children; |
| | | } |
| | | |
| | | public void setChildren(List<TreeSelect> children) |
| | | { |
| | | this.children = children; |
| | | } |
| | | } |
New file |
| | |
| | | package com.ruoyi.member.mapper.member; |
| | | |
| | | import com.ruoyi.member.domain.pojo.member.MemberArchiveFields; |
| | | import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
| | | |
| | | /** |
| | | * <p> |
| | | * 档案字段 Mapper 接口 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | public interface MemberArchiveFieldsMapper extends BaseMapper<MemberArchiveFields> { |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.member.mapper.member; |
| | | |
| | | import com.ruoyi.member.domain.pojo.member.MemberArchive; |
| | | import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
| | | |
| | | /** |
| | | * <p> |
| | | * 会员档案信息 Mapper 接口 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | public interface MemberArchiveMapper extends BaseMapper<MemberArchive> { |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.member.mapper.member; |
| | | |
| | | import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
| | | import com.ruoyi.system.api.domain.poji.member.Member; |
| | | import org.apache.ibatis.annotations.Param; |
| | | |
| | | /** |
| | | * <p> |
| | | * 小程序用户 Mapper 接口 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | public interface MemberMapper extends BaseMapper<Member> { |
| | | |
| | | /** |
| | | * @description: TODO |
| | | * @author jqs34 |
| | | * @date 2023/4/30 12:41 |
| | | * @version 1.0 |
| | | */ |
| | | Member selectMemberByUserId(Long userId); |
| | | /** |
| | | * |
| | | * @param miniOpenid |
| | | * @return |
| | | */ |
| | | Member getOneByMiniOpenid(@Param("miniOpenid")String miniOpenid); |
| | | } |
New file |
| | |
| | | package com.ruoyi.member.mapper.member; |
| | | |
| | | import com.ruoyi.member.domain.pojo.member.MemberNurse; |
| | | import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
| | | |
| | | /** |
| | | * <p> |
| | | * 用户调理问题 Mapper 接口 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | public interface MemberNurseMapper extends BaseMapper<MemberNurse> { |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.member.mapper.member; |
| | | |
| | | import com.ruoyi.member.domain.pojo.member.UserCoupon; |
| | | import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
| | | |
| | | /** |
| | | * <p> |
| | | * 用户关联优惠券 Mapper 接口 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | public interface UserCouponMapper extends BaseMapper<UserCoupon> { |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.member.service.impl.member; |
| | | |
| | | import com.ruoyi.member.domain.pojo.member.MemberArchiveFields; |
| | | import com.ruoyi.member.mapper.member.MemberArchiveFieldsMapper; |
| | | import com.ruoyi.member.service.member.MemberArchiveFieldsService; |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | /** |
| | | * <p> |
| | | * 档案字段 服务实现类 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | @Service |
| | | public class MemberArchiveFieldsServiceImpl extends ServiceImpl<MemberArchiveFieldsMapper, MemberArchiveFields> implements MemberArchiveFieldsService { |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.member.service.impl.member; |
| | | |
| | | import com.ruoyi.member.domain.pojo.member.MemberArchive; |
| | | import com.ruoyi.member.mapper.member.MemberArchiveMapper; |
| | | import com.ruoyi.member.service.member.MemberArchiveService; |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | /** |
| | | * <p> |
| | | * 会员档案信息 服务实现类 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | @Service |
| | | public class MemberArchiveServiceImpl extends ServiceImpl<MemberArchiveMapper, MemberArchive> implements MemberArchiveService { |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.member.service.impl.member; |
| | | |
| | | import com.ruoyi.member.domain.pojo.member.MemberNurse; |
| | | import com.ruoyi.member.mapper.member.MemberNurseMapper; |
| | | import com.ruoyi.member.service.member.MemberNurseService; |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | /** |
| | | * <p> |
| | | * 用户调理问题 服务实现类 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | @Service |
| | | public class MemberNurseServiceImpl extends ServiceImpl<MemberNurseMapper, MemberNurse> implements MemberNurseService { |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.member.service.impl.member; |
| | | |
| | | import cn.binarywang.wx.miniapp.api.WxMaService; |
| | | import cn.binarywang.wx.miniapp.bean.WxMaJscode2SessionResult; |
| | | import cn.binarywang.wx.miniapp.bean.WxMaPhoneNumberInfo; |
| | | import com.ruoyi.common.core.exception.ServiceException; |
| | | import com.ruoyi.common.security.utils.SecurityUtils; |
| | | import com.ruoyi.member.domain.dto.AppNearbyShopDto; |
| | | import com.ruoyi.member.domain.dto.AppUserAuthorizeDto; |
| | | import com.ruoyi.member.domain.vo.AppNearbyShopVo; |
| | | import com.ruoyi.member.domain.vo.AppUserAuthorizeVo; |
| | | import com.ruoyi.member.mapper.member.MemberMapper; |
| | | import com.ruoyi.member.service.member.MemberService; |
| | | import com.ruoyi.system.api.domain.poji.member.Member; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysUser; |
| | | import com.ruoyi.system.api.model.AppMiniLoginDto; |
| | | import com.ruoyi.system.api.model.AppMiniLoginVo; |
| | | import com.ruoyi.system.api.constant.AppErrorConstant; |
| | | import com.ruoyi.system.api.constant.SecurityConstant; |
| | | import com.ruoyi.system.domain.pojo.shop.Shop; |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import com.ruoyi.system.service.shop.ShopService; |
| | | import com.ruoyi.system.service.sys.ISysUserService; |
| | | import org.apache.commons.lang3.StringUtils; |
| | | import org.springframework.data.redis.core.StringRedisTemplate; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | import javax.annotation.Resource; |
| | | import java.util.Date; |
| | | import java.util.UUID; |
| | | |
| | | /** |
| | | * <p> |
| | | * 小程序用户 服务实现类 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | @Service |
| | | public class MemberServiceImpl extends ServiceImpl<MemberMapper, Member> implements MemberService { |
| | | @Resource |
| | | private WxMaService wxMaService; |
| | | |
| | | @Resource |
| | | private ISysUserService sysUserService; |
| | | |
| | | @Resource |
| | | private MemberMapper memberMapper; |
| | | |
| | | @Resource |
| | | private ShopService shopService; |
| | | |
| | | @Resource |
| | | private StringRedisTemplate stringRedisTemplate; |
| | | |
| | | /** |
| | | * @description: TODO |
| | | * @author jqs34 |
| | | * @date 2023/4/30 12:40 |
| | | * @version 1.0 |
| | | */ |
| | | @Override |
| | | public Member getByUserId(Long userId){ |
| | | Member member = memberMapper.selectMemberByUserId(userId); |
| | | return member; |
| | | } |
| | | |
| | | /** |
| | | * |
| | | * @param appMiniLoginDto |
| | | * @return |
| | | */ |
| | | @Override |
| | | public AppMiniLoginVo getMemberByCode(AppMiniLoginDto appMiniLoginDto){ |
| | | |
| | | AppMiniLoginVo appMiniLoginVo = new AppMiniLoginVo(); |
| | | WxMaJscode2SessionResult session = null; |
| | | String unionid; |
| | | String openid; |
| | | String sessionKey = null; |
| | | //获取session |
| | | try { |
| | | session = wxMaService.getUserService().getSessionInfo(appMiniLoginDto.getCode()); |
| | | } catch (Exception e) { |
| | | e.printStackTrace(); |
| | | return null; |
| | | } |
| | | if(session!=null&& StringUtils.isNotBlank(session.getOpenid())){ |
| | | unionid = session.getUnionid(); |
| | | openid = session.getOpenid(); |
| | | sessionKey = session.getSessionKey(); |
| | | //获取用户 |
| | | Member member = memberMapper.getOneByMiniOpenid(openid); |
| | | SysUser sysUser; |
| | | if(member==null){ |
| | | //创建新用户 |
| | | String memberId = UUID.randomUUID().toString(); |
| | | sysUser = new SysUser(); |
| | | sysUser.setUserName(memberId); |
| | | sysUser.setNickName("微信用户"); |
| | | String password = "hongruitang"; |
| | | sysUser.setPassword(SecurityUtils.encryptPassword(password)); |
| | | sysUserService.registerUser(sysUser); |
| | | member = new Member(); |
| | | member.setUserId(sysUser.getUserId()); |
| | | member.setDelFlag(0); |
| | | member.setMemberId(memberId); |
| | | member.setWxUnionid(unionid); |
| | | member.setMiniOpenid(openid); |
| | | member.setCreateTime(new Date()); |
| | | this.save(member); |
| | | }else{ |
| | | sysUser = sysUserService.selectUserById(member.getUserId()); |
| | | } |
| | | appMiniLoginVo.setMiniOpenid(openid); |
| | | appMiniLoginVo.setWxUnionid(unionid); |
| | | appMiniLoginVo.setSysUser(sysUser); |
| | | appMiniLoginVo.setSessionKey(sessionKey); |
| | | //sessionKey |
| | | stringRedisTemplate.opsForValue().set(SecurityConstant.SESSION_KEY+openid,sessionKey); |
| | | }else{ |
| | | return null; |
| | | } |
| | | return appMiniLoginVo; |
| | | } |
| | | |
| | | /** |
| | | * 获取授权信息 |
| | | * @param appUserAuthorizeDto |
| | | * @return |
| | | */ |
| | | @Override |
| | | public AppUserAuthorizeVo getAppUserAuthorize(AppUserAuthorizeDto appUserAuthorizeDto){ |
| | | Member member = this.getById(appUserAuthorizeDto.getUserId()); |
| | | AppUserAuthorizeVo appUserAuthorizeVo = new AppUserAuthorizeVo(); |
| | | //获取code接口在redis里存放的sessionkey用于解密 |
| | | String sessionkey = stringRedisTemplate.opsForValue().get(SecurityConstant.SESSION_KEY+ member.getMiniOpenid()); |
| | | if(StringUtils.isBlank(sessionkey)){ |
| | | throw new ServiceException(AppErrorConstant.USER_NOT_LOGIN); |
| | | } |
| | | String mobile = null; |
| | | try { |
| | | //解密微信加密用户信息和手机号 |
| | | WxMaPhoneNumberInfo wxPhoneInfo; |
| | | if(StringUtils.isNotBlank(appUserAuthorizeDto.getPhoneEncryptedData())&&StringUtils.isNotBlank(appUserAuthorizeDto.getPhoneIv())){ |
| | | wxPhoneInfo = wxMaService.getUserService().getPhoneNoInfo(sessionkey, appUserAuthorizeDto.getPhoneEncryptedData(), appUserAuthorizeDto.getPhoneIv()); |
| | | }else{ |
| | | throw new ServiceException(AppErrorConstant.AUTHORIZE_MISS); |
| | | } |
| | | if(StringUtils.isBlank(wxPhoneInfo.getPhoneNumber())){ |
| | | throw new ServiceException(AppErrorConstant.AUTHORIZE_FAILED); |
| | | } |
| | | mobile = wxPhoneInfo.getPhoneNumber(); |
| | | } catch (Exception e) { |
| | | e.printStackTrace(); |
| | | } |
| | | //更新用户手机信息 |
| | | SysUser sysUser = sysUserService.selectUserById(appUserAuthorizeDto.getUserId()); |
| | | sysUser.setPhonenumber(mobile); |
| | | sysUserService.updateUser(sysUser); |
| | | member.setMobile(mobile); |
| | | this.saveOrUpdate(member); |
| | | appUserAuthorizeVo.setMobile(mobile); |
| | | appUserAuthorizeVo.setNickName(sysUser.getNickName()); |
| | | appUserAuthorizeVo.setOpenid(member.getMiniOpenid()); |
| | | appUserAuthorizeVo.setUnionid(member.getWxUnionid()); |
| | | return appUserAuthorizeVo; |
| | | } |
| | | |
| | | /** |
| | | * 获取附近门店 |
| | | * @param appNearbyShopDto |
| | | * @return |
| | | */ |
| | | @Override |
| | | public AppNearbyShopVo getNearbyShop(AppNearbyShopDto appNearbyShopDto){ |
| | | Member member = this.getById(appNearbyShopDto.getUserId()); |
| | | AppNearbyShopVo appNearbyShopVo = new AppNearbyShopVo(); |
| | | Shop shop = null; |
| | | if(member.getRealtionShopId()!=null){ |
| | | //获取绑定商户 |
| | | shop = shopService.getById(member.getRealtionShopId()); |
| | | }else{ |
| | | //获取附近商户 |
| | | shop = shopService.getById(1L); |
| | | } |
| | | appNearbyShopVo.setShopId(shop.getShopId()); |
| | | appNearbyShopVo.setShopName(shop.getShopName()); |
| | | appNearbyShopVo.setShopAddress(shop.getShopAreaName()+shop.getShopAddress()); |
| | | appNearbyShopVo.setShopLatitude(shop.getShopLatitude()); |
| | | appNearbyShopVo.setShopLongitude(shop.getShopLongitude()); |
| | | return appNearbyShopVo; |
| | | } |
| | | } |
New file |
| | |
| | | package com.ruoyi.member.service.impl.member; |
| | | |
| | | import com.ruoyi.member.domain.pojo.member.UserCoupon; |
| | | import com.ruoyi.member.mapper.member.UserCouponMapper; |
| | | import com.ruoyi.member.service.member.UserCouponService; |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | /** |
| | | * <p> |
| | | * 用户关联优惠券 服务实现类 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | @Service |
| | | public class UserCouponServiceImpl extends ServiceImpl<UserCouponMapper, UserCoupon> implements UserCouponService { |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.member.service.member; |
| | | |
| | | import com.ruoyi.member.domain.pojo.member.MemberArchiveFields; |
| | | import com.baomidou.mybatisplus.extension.service.IService; |
| | | |
| | | /** |
| | | * <p> |
| | | * 档案字段 服务类 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | public interface MemberArchiveFieldsService extends IService<MemberArchiveFields> { |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.member.service.member; |
| | | |
| | | import com.ruoyi.member.domain.pojo.member.MemberArchive; |
| | | import com.baomidou.mybatisplus.extension.service.IService; |
| | | |
| | | /** |
| | | * <p> |
| | | * 会员档案信息 服务类 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | public interface MemberArchiveService extends IService<MemberArchive> { |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.member.service.member; |
| | | |
| | | import com.ruoyi.member.domain.pojo.member.MemberNurse; |
| | | import com.baomidou.mybatisplus.extension.service.IService; |
| | | |
| | | /** |
| | | * <p> |
| | | * 用户调理问题 服务类 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | public interface MemberNurseService extends IService<MemberNurse> { |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.member.service.member; |
| | | |
| | | import com.ruoyi.member.domain.vo.AppNearbyShopVo; |
| | | import com.ruoyi.member.domain.vo.AppUserAuthorizeVo; |
| | | import com.ruoyi.system.api.domain.poji.member.Member; |
| | | import com.ruoyi.system.api.model.AppMiniLoginDto; |
| | | import com.ruoyi.system.api.model.AppMiniLoginVo; |
| | | import com.ruoyi.member.domain.dto.AppNearbyShopDto; |
| | | import com.ruoyi.member.domain.dto.AppUserAuthorizeDto; |
| | | import com.baomidou.mybatisplus.extension.service.IService; |
| | | |
| | | /** |
| | | * <p> |
| | | * 小程序用户 服务类 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | public interface MemberService extends IService<Member> { |
| | | |
| | | /** |
| | | * @description: TODO |
| | | * @author jqs34 |
| | | * @date 2023/4/30 12:41 |
| | | * @version 1.0 |
| | | */ |
| | | Member getByUserId(Long userId); |
| | | /** |
| | | * 小程序登录 |
| | | * @param appMiniLoginDto |
| | | * @return |
| | | */ |
| | | AppMiniLoginVo getMemberByCode(AppMiniLoginDto appMiniLoginDto); |
| | | |
| | | /** |
| | | * 获取授权信息 |
| | | * @param appUserAuthorizeDto |
| | | * @return |
| | | */ |
| | | AppUserAuthorizeVo getAppUserAuthorize(AppUserAuthorizeDto appUserAuthorizeDto); |
| | | |
| | | /** |
| | | * 获取附近门店 |
| | | * @param appNearbyShopDto |
| | | * @return |
| | | */ |
| | | AppNearbyShopVo getNearbyShop(AppNearbyShopDto appNearbyShopDto); |
| | | } |
New file |
| | |
| | | package com.ruoyi.member.service.member; |
| | | |
| | | import com.ruoyi.member.domain.pojo.member.UserCoupon; |
| | | import com.baomidou.mybatisplus.extension.service.IService; |
| | | |
| | | /** |
| | | * <p> |
| | | * 用户关联优惠券 服务类 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | public interface UserCouponService extends IService<UserCoupon> { |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.member.util; |
| | | |
| | | |
| | | |
| | | import com.ruoyi.common.core.utils.DateUtils; |
| | | |
| | | import java.security.SecureRandom; |
| | | import java.util.Date; |
| | | import java.util.Random; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName CodeFactoryUtil |
| | | * @description: TODO |
| | | * @date 2023年02月13日 |
| | | * @version: 1.0 |
| | | */ |
| | | public class CodeFactoryUtil { |
| | | |
| | | /** |
| | | * APP用户编码 |
| | | */ |
| | | private static final String APP_USER_PREFIX = "HRT_M"; |
| | | |
| | | /** |
| | | * 商户编号 |
| | | */ |
| | | private static final String SHOP_PREFIX = "HRT_S"; |
| | | |
| | | /** |
| | | * 订单前缀 |
| | | */ |
| | | private static final String ORDER_PREFIX = "BO"; |
| | | |
| | | /** |
| | | * 退款订单前缀 |
| | | */ |
| | | private static final String ORDER_REFUND_PREFIX = "RO"; |
| | | |
| | | /** |
| | | * 用户id和随机数总长度 |
| | | */ |
| | | |
| | | private static final int maxLength = 4; |
| | | |
| | | /** |
| | | * 更具id进行加密+加随机数组成固定长度编码 |
| | | */ |
| | | |
| | | public static void main(String[] args) { |
| | | Long orderId = 1L; |
| | | String userNo = getShopNo(orderId); |
| | | System.out.println(userNo); |
| | | } |
| | | |
| | | /** |
| | | * 获取商户编号 |
| | | * |
| | | * @param shopId |
| | | * @return |
| | | */ |
| | | public static String getShopNo(Long shopId) { |
| | | String prefix = SHOP_PREFIX; |
| | | return toFillZeroCode(prefix, maxLength, shopId); |
| | | } |
| | | |
| | | /** |
| | | * 获取会员编号 |
| | | * @param userId |
| | | * @return |
| | | */ |
| | | public static String getMemberNo(Long userId) { |
| | | String prefix = APP_USER_PREFIX; |
| | | return toFillZeroCode(prefix, maxLength, userId); |
| | | } |
| | | |
| | | /** |
| | | * 获取订单编号 |
| | | * |
| | | * @param userId |
| | | * @return |
| | | */ |
| | | public static String getOrderNo(Long userId) { |
| | | |
| | | String prefix = DateUtils.parseDateToStr( "yyyyMMddHHmmss",new Date()); |
| | | prefix = ORDER_PREFIX + prefix; |
| | | return toFillZeroCode(prefix, maxLength, userId); |
| | | } |
| | | |
| | | |
| | | |
| | | /** |
| | | * 获取用户编号 |
| | | * |
| | | * @param userId |
| | | * @return |
| | | */ |
| | | public static String getAppUserNo(Long userId) { |
| | | return toFillZeroCode(APP_USER_PREFIX, 9, userId); |
| | | } |
| | | |
| | | /** |
| | | * 0补位 |
| | | * |
| | | * @param prefix |
| | | * @param totalLength |
| | | * @param id |
| | | * @return |
| | | */ |
| | | private static String toFillZeroCode(String prefix, int totalLength, Long id) { |
| | | String idStr = id.toString(); |
| | | int length = idStr.length(); |
| | | |
| | | int fillLength = totalLength - length; |
| | | StringBuilder idsbs = new StringBuilder(prefix); |
| | | for (int i = 0; i < fillLength; i++) { |
| | | idsbs.append("0"); |
| | | } |
| | | return idsbs.append(idStr).toString(); |
| | | } |
| | | |
| | | /** |
| | | * 随机6位数生成 |
| | | */ |
| | | public static String getRandStr(int num) { |
| | | // 默认6位 |
| | | num = num != 0 ? num : 6; |
| | | Random r = new SecureRandom(); |
| | | StringBuffer str = new StringBuffer(); |
| | | int i = 0; |
| | | while (i < num) { |
| | | str.append(r.nextInt(10)); |
| | | i++; |
| | | } |
| | | return str.toString(); |
| | | } |
| | | } |
New file |
| | |
| | | package com.ruoyi.member.util; |
| | | |
| | | import java.io.UnsupportedEncodingException; |
| | | import java.net.URLDecoder; |
| | | import java.net.URLEncoder; |
| | | import java.util.regex.Matcher; |
| | | import java.util.regex.Pattern; |
| | | |
| | | public class EmojiUtil { |
| | | /** |
| | | * 编码 |
| | | * |
| | | * @param str 待转换字符串 |
| | | * @return 转换后字符串 |
| | | * @throws UnsupportedEncodingException exception |
| | | * @Description 将字符串中的emoji表情转换成可以在utf-8字符集数据库中保存的格式(表情占4个字节,需要utf8mb4字符集) |
| | | */ |
| | | public static String emojiEncode(String str) |
| | | throws UnsupportedEncodingException { |
| | | String patternString = "([\\x{10000}-\\x{10ffff}\ud800-\udfff])"; |
| | | |
| | | Pattern pattern = Pattern.compile(patternString); |
| | | Matcher matcher = pattern.matcher(str); |
| | | StringBuffer sb = new StringBuffer(); |
| | | while (matcher.find()) { |
| | | try { |
| | | matcher.appendReplacement( |
| | | sb, |
| | | "[[" |
| | | + URLEncoder.encode(matcher.group(1), |
| | | "UTF-8") + "]]"); |
| | | } catch (UnsupportedEncodingException e) { |
| | | // LOG.error("emojiConvert error", e); |
| | | throw e; |
| | | } |
| | | } |
| | | matcher.appendTail(sb); |
| | | // LOG.debug("emojiConvert " + str + " to " + sb.toString() |
| | | // + ", len:" + sb.length()); |
| | | return sb.toString(); |
| | | } |
| | | |
| | | /** |
| | | * 解码 |
| | | * |
| | | * @param str 转换后的字符串 |
| | | * @return 转换前的字符串 |
| | | * @throws UnsupportedEncodingException exception |
| | | * @Description 还原utf8数据库中保存的含转换后emoji表情的字符串 |
| | | */ |
| | | public static String emojiDecode(String str) |
| | | throws UnsupportedEncodingException { |
| | | String patternString = "\\[\\[(.*?)\\]\\]"; |
| | | |
| | | Pattern pattern = Pattern.compile(patternString); |
| | | if (str == null) { |
| | | return str; |
| | | } |
| | | Matcher matcher = pattern.matcher(str); |
| | | |
| | | StringBuffer sb = new StringBuffer(); |
| | | while (matcher.find()) { |
| | | try { |
| | | matcher.appendReplacement(sb, |
| | | URLDecoder.decode(matcher.group(1), "UTF-8")); |
| | | } catch (UnsupportedEncodingException e) { |
| | | // LOG.error("emojiRecovery error", e); |
| | | throw e; |
| | | } |
| | | } |
| | | matcher.appendTail(sb); |
| | | // LOG.debug("emojiRecovery " + str + " to " + sb.toString()); |
| | | // System.out.println("emojiRecovery " + str + " to " + sb.toString()); |
| | | return sb.toString(); |
| | | } |
| | | |
| | | /** |
| | | * @param str 待过滤字符串 |
| | | * @return 过滤后字符串 |
| | | * exception |
| | | * @Description 将字符串中的emoji表情过滤掉 |
| | | */ |
| | | public static String emojiSub(String str) { |
| | | String patternString = "([\\x{10000}-\\x{10ffff}\ud800-\udfff])"; |
| | | Pattern pattern = Pattern.compile(patternString); |
| | | Matcher matcher = pattern.matcher(str); |
| | | StringBuffer sb = new StringBuffer(); |
| | | while (matcher.find()) { |
| | | matcher.appendReplacement(sb, ""); |
| | | } |
| | | matcher.appendTail(sb); |
| | | return sb.toString(); |
| | | } |
| | | |
| | | } |
New file |
| | |
| | | <?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.ruoyi.member.mapper.member.MemberArchiveFieldsMapper"> |
| | | |
| | | <resultMap type="MemberArchiveFields" id="MemberArchiveFieldsResult"> |
| | | <result property="id" column="id" /> |
| | | <result property="delFlag" column="del_flag" /> |
| | | <result property="fieldName" column="field_name" /> |
| | | <result property="fieldType" column="field_type" /> |
| | | <result property="requiredFlag" column="required_flag" /> |
| | | <result property="fieldSort" column="field_sort" /> |
| | | <result property="inputTip" column="input_tip" /> |
| | | <result property="optionValues" column="option_values" /> |
| | | </resultMap> |
| | | |
| | | <sql id="selectMemberArchiveFieldsVo"> |
| | | select id, del_flag, field_name, field_type, required_flag, field_sort, input_tip, option_values from t_member_archive_fields |
| | | </sql> |
| | | |
| | | <select id="selectMemberArchiveFieldsList" parameterType="MemberArchiveFields" resultMap="MemberArchiveFieldsResult"> |
| | | <include refid="selectMemberArchiveFieldsVo"/> |
| | | <where> |
| | | <if test="fieldName != null and fieldName != ''"> and field_name like concat('%', #{fieldName}, '%')</if> |
| | | <if test="fieldType != null "> and field_type = #{fieldType}</if> |
| | | <if test="requiredFlag != null "> and required_flag = #{requiredFlag}</if> |
| | | <if test="fieldSort != null and fieldSort != ''"> and field_sort = #{fieldSort}</if> |
| | | <if test="inputTip != null and inputTip != ''"> and input_tip = #{inputTip}</if> |
| | | <if test="optionValues != null and optionValues != ''"> and option_values = #{optionValues}</if> |
| | | </where> |
| | | </select> |
| | | |
| | | <select id="selectMemberArchiveFieldsById" parameterType="Long" resultMap="MemberArchiveFieldsResult"> |
| | | <include refid="selectMemberArchiveFieldsVo"/> |
| | | where id = #{id} |
| | | </select> |
| | | |
| | | <insert id="insertMemberArchiveFields" parameterType="MemberArchiveFields" useGeneratedKeys="true" keyProperty="id"> |
| | | insert into t_member_archive_fields |
| | | <trim prefix="(" suffix=")" suffixOverrides=","> |
| | | <if test="delFlag != null">del_flag,</if> |
| | | <if test="fieldName != null">field_name,</if> |
| | | <if test="fieldType != null">field_type,</if> |
| | | <if test="requiredFlag != null">required_flag,</if> |
| | | <if test="fieldSort != null">field_sort,</if> |
| | | <if test="inputTip != null">input_tip,</if> |
| | | <if test="optionValues != null">option_values,</if> |
| | | </trim> |
| | | <trim prefix="values (" suffix=")" suffixOverrides=","> |
| | | <if test="delFlag != null">#{delFlag},</if> |
| | | <if test="fieldName != null">#{fieldName},</if> |
| | | <if test="fieldType != null">#{fieldType},</if> |
| | | <if test="requiredFlag != null">#{requiredFlag},</if> |
| | | <if test="fieldSort != null">#{fieldSort},</if> |
| | | <if test="inputTip != null">#{inputTip},</if> |
| | | <if test="optionValues != null">#{optionValues},</if> |
| | | </trim> |
| | | </insert> |
| | | |
| | | <update id="updateMemberArchiveFields" parameterType="MemberArchiveFields"> |
| | | update t_member_archive_fields |
| | | <trim prefix="SET" suffixOverrides=","> |
| | | <if test="delFlag != null">del_flag = #{delFlag},</if> |
| | | <if test="fieldName != null">field_name = #{fieldName},</if> |
| | | <if test="fieldType != null">field_type = #{fieldType},</if> |
| | | <if test="requiredFlag != null">required_flag = #{requiredFlag},</if> |
| | | <if test="fieldSort != null">field_sort = #{fieldSort},</if> |
| | | <if test="inputTip != null">input_tip = #{inputTip},</if> |
| | | <if test="optionValues != null">option_values = #{optionValues},</if> |
| | | </trim> |
| | | where id = #{id} |
| | | </update> |
| | | |
| | | <delete id="deleteMemberArchiveFieldsById" parameterType="Long"> |
| | | delete from t_member_archive_fields where id = #{id} |
| | | </delete> |
| | | |
| | | <delete id="deleteMemberArchiveFieldsByIds" parameterType="String"> |
| | | delete from t_member_archive_fields where id in |
| | | <foreach item="id" collection="array" open="(" separator="," close=")"> |
| | | #{id} |
| | | </foreach> |
| | | </delete> |
| | | |
| | | </mapper> |
New file |
| | |
| | | <?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.ruoyi.member.mapper.member.MemberArchiveMapper"> |
| | | |
| | | <resultMap type="MemberArchive" id="MemberArchiveResult"> |
| | | <result property="id" column="id" /> |
| | | <result property="delFlag" column="del_flag" /> |
| | | <result property="userId" column="user_id" /> |
| | | <result property="fieldId" column="field_id" /> |
| | | <result property="fieldValue" column="field_value" /> |
| | | </resultMap> |
| | | |
| | | <sql id="selectMemberArchiveVo"> |
| | | select id, del_flag, user_id, field_id, field_value from t_member_archive |
| | | </sql> |
| | | |
| | | <select id="selectMemberArchiveList" parameterType="MemberArchive" resultMap="MemberArchiveResult"> |
| | | <include refid="selectMemberArchiveVo"/> |
| | | <where> |
| | | <if test="userId != null "> and user_id = #{userId}</if> |
| | | <if test="fieldId != null "> and field_id = #{fieldId}</if> |
| | | <if test="fieldValue != null and fieldValue != ''"> and field_value = #{fieldValue}</if> |
| | | </where> |
| | | </select> |
| | | |
| | | <select id="selectMemberArchiveById" parameterType="Long" resultMap="MemberArchiveResult"> |
| | | <include refid="selectMemberArchiveVo"/> |
| | | where id = #{id} |
| | | </select> |
| | | |
| | | <insert id="insertMemberArchive" parameterType="MemberArchive" useGeneratedKeys="true" keyProperty="id"> |
| | | insert into t_member_archive |
| | | <trim prefix="(" suffix=")" suffixOverrides=","> |
| | | <if test="delFlag != null">del_flag,</if> |
| | | <if test="userId != null">user_id,</if> |
| | | <if test="fieldId != null">field_id,</if> |
| | | <if test="fieldValue != null">field_value,</if> |
| | | </trim> |
| | | <trim prefix="values (" suffix=")" suffixOverrides=","> |
| | | <if test="delFlag != null">#{delFlag},</if> |
| | | <if test="userId != null">#{userId},</if> |
| | | <if test="fieldId != null">#{fieldId},</if> |
| | | <if test="fieldValue != null">#{fieldValue},</if> |
| | | </trim> |
| | | </insert> |
| | | |
| | | <update id="updateMemberArchive" parameterType="MemberArchive"> |
| | | update t_member_archive |
| | | <trim prefix="SET" suffixOverrides=","> |
| | | <if test="delFlag != null">del_flag = #{delFlag},</if> |
| | | <if test="userId != null">user_id = #{userId},</if> |
| | | <if test="fieldId != null">field_id = #{fieldId},</if> |
| | | <if test="fieldValue != null">field_value = #{fieldValue},</if> |
| | | </trim> |
| | | where id = #{id} |
| | | </update> |
| | | |
| | | <delete id="deleteMemberArchiveById" parameterType="Long"> |
| | | delete from t_member_archive where id = #{id} |
| | | </delete> |
| | | |
| | | <delete id="deleteMemberArchiveByIds" parameterType="String"> |
| | | delete from t_member_archive where id in |
| | | <foreach item="id" collection="array" open="(" separator="," close=")"> |
| | | #{id} |
| | | </foreach> |
| | | </delete> |
| | | |
| | | </mapper> |
New file |
| | |
| | | <?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.ruoyi.member.mapper.member.MemberMapper"> |
| | | |
| | | <resultMap type="Member" id="MemberResult"> |
| | | <result property="userId" column="user_id" /> |
| | | <result property="delFlag" column="del_flag" /> |
| | | <result property="memberId" column="member_id" /> |
| | | <result property="memberNo" column="member_no" /> |
| | | <result property="wxOpenid" column="wx_openid" /> |
| | | <result property="miniOpenid" column="mini_openid" /> |
| | | <result property="wxUnionid" column="wx_unionid" /> |
| | | <result property="relationShopId" column="relation_shop_id" /> |
| | | <result property="realName" column="real_name" /> |
| | | <result property="mobile" column="mobile" /> |
| | | <result property="gender" column="gender" /> |
| | | <result property="referrer" column="referrer" /> |
| | | <result property="customerSource" column="customer_source" /> |
| | | <result property="level" column="level" /> |
| | | <result property="birthday" column="birthday" /> |
| | | <result property="createTime" column="create_time" /> |
| | | <result property="updateime" column="update_time" /> |
| | | <result property="updateUserId" column="update_user_id" /> |
| | | </resultMap> |
| | | |
| | | <sql id="selectMemberVo"> |
| | | select user_id, del_flag, member_id, member_no, wx_openid, mini_openid, wx_unionid, realtion_shop_id, real_name, mobile, gender, referrer, customer_source, level, birthday, create_time, update_time, update_user_id from t_member |
| | | </sql> |
| | | |
| | | <select id="selectMemberList" parameterType="Member" resultMap="MemberResult"> |
| | | <include refid="selectMemberVo"/> |
| | | <where> |
| | | <if test="memberId != null and memberId != ''"> and member_id = #{memberId}</if> |
| | | <if test="memberNo != null and memberNo != ''"> and member_no = #{memberNo}</if> |
| | | <if test="wxOpenid != null and wxOpenid != ''"> and wx_openid = #{wxOpenid}</if> |
| | | <if test="miniOpenid != null and miniOpenid != ''"> and mini_openid = #{miniOpenid}</if> |
| | | <if test="wxUnionid != null and wxUnionid != ''"> and wx_unionid = #{wxUnionid}</if> |
| | | <if test="realtionShopId != null "> and realtion_shop_id = #{realtionShopId}</if> |
| | | <if test="realName != null and realName != ''"> and real_name like concat('%', #{realName}, '%')</if> |
| | | <if test="mobile != null and mobile != ''"> and mobile = #{mobile}</if> |
| | | <if test="gender != null "> and gender = #{gender}</if> |
| | | <if test="referrer != null and referrer != ''"> and referrer = #{referrer}</if> |
| | | <if test="customerSource != null and customerSource != ''"> and customer_source = #{customerSource}</if> |
| | | <if test="level != null and level != ''"> and level = #{level}</if> |
| | | <if test="birthday != null and birthday != ''"> and birthday = #{birthday}</if> |
| | | <if test="updateUserId != null "> and update_user_id = #{updateUserId}</if> |
| | | </where> |
| | | </select> |
| | | |
| | | <select id="selectMemberByUserId" parameterType="Long" resultMap="MemberResult"> |
| | | <include refid="selectMemberVo"/> |
| | | where user_id = #{userId} |
| | | </select> |
| | | |
| | | <insert id="insertMember" parameterType="Member"> |
| | | insert into t_member |
| | | <trim prefix="(" suffix=")" suffixOverrides=","> |
| | | <if test="userId != null">user_id,</if> |
| | | <if test="delFlag != null">del_flag,</if> |
| | | <if test="memberId != null">member_id,</if> |
| | | <if test="memberNo != null">member_no,</if> |
| | | <if test="wxOpenid != null">wx_openid,</if> |
| | | <if test="miniOpenid != null">mini_openid,</if> |
| | | <if test="wxUnionid != null">wx_unionid,</if> |
| | | <if test="realtionShopId != null">realtion_shop_id,</if> |
| | | <if test="realName != null">real_name,</if> |
| | | <if test="mobile != null">mobile,</if> |
| | | <if test="gender != null">gender,</if> |
| | | <if test="referrer != null">referrer,</if> |
| | | <if test="customerSource != null">customer_source,</if> |
| | | <if test="level != null">level,</if> |
| | | <if test="birthday != null">birthday,</if> |
| | | <if test="createTime != null">create_time,</if> |
| | | <if test="updateime != null">update_time,</if> |
| | | <if test="updateUserId != null">update_user_id,</if> |
| | | </trim> |
| | | <trim prefix="values (" suffix=")" suffixOverrides=","> |
| | | <if test="userId != null">#{userId},</if> |
| | | <if test="delFlag != null">#{delFlag},</if> |
| | | <if test="memberId != null">#{memberId},</if> |
| | | <if test="memberNo != null">#{memberNo},</if> |
| | | <if test="wxOpenid != null">#{wxOpenid},</if> |
| | | <if test="miniOpenid != null">#{miniOpenid},</if> |
| | | <if test="wxUnionid != null">#{wxUnionid},</if> |
| | | <if test="realtionShopId != null">#{realtionShopId},</if> |
| | | <if test="realName != null">#{realName},</if> |
| | | <if test="mobile != null">#{mobile},</if> |
| | | <if test="gender != null">#{gender},</if> |
| | | <if test="referrer != null">#{referrer},</if> |
| | | <if test="customerSource != null">#{customerSource},</if> |
| | | <if test="level != null">#{level},</if> |
| | | <if test="birthday != null">#{birthday},</if> |
| | | <if test="createTime != null">#{createTime},</if> |
| | | <if test="updateime != null">#{updateime},</if> |
| | | <if test="updateUserId != null">#{updateUserId},</if> |
| | | </trim> |
| | | </insert> |
| | | |
| | | <update id="updateMember" parameterType="Member"> |
| | | update t_member |
| | | <trim prefix="SET" suffixOverrides=","> |
| | | <if test="delFlag != null">del_flag = #{delFlag},</if> |
| | | <if test="memberId != null">member_id = #{memberId},</if> |
| | | <if test="memberNo != null">member_no = #{memberNo},</if> |
| | | <if test="wxOpenid != null">wx_openid = #{wxOpenid},</if> |
| | | <if test="miniOpenid != null">mini_openid = #{miniOpenid},</if> |
| | | <if test="wxUnionid != null">wx_unionid = #{wxUnionid},</if> |
| | | <if test="realtionShopId != null">realtion_shop_id = #{realtionShopId},</if> |
| | | <if test="realName != null">real_name = #{realName},</if> |
| | | <if test="mobile != null">mobile = #{mobile},</if> |
| | | <if test="gender != null">gender = #{gender},</if> |
| | | <if test="referrer != null">referrer = #{referrer},</if> |
| | | <if test="customerSource != null">customer_source = #{customerSource},</if> |
| | | <if test="level != null">level = #{level},</if> |
| | | <if test="birthday != null">birthday = #{birthday},</if> |
| | | <if test="createTime != null">create_time = #{createTime},</if> |
| | | <if test="updateime != null">update_time = #{updateime},</if> |
| | | <if test="updateUserId != null">update_user_id = #{updateUserId},</if> |
| | | </trim> |
| | | where user_id = #{userId} |
| | | </update> |
| | | |
| | | <delete id="deleteMemberByUserId" parameterType="Long"> |
| | | delete from t_member where user_id = #{userId} |
| | | </delete> |
| | | |
| | | <delete id="deleteMemberByUserIds" parameterType="String"> |
| | | delete from t_member where user_id in |
| | | <foreach item="userId" collection="array" open="(" separator="," close=")"> |
| | | #{userId} |
| | | </foreach> |
| | | </delete> |
| | | |
| | | |
| | | <select id="getOneByMiniOpenid" parameterType="Member"> |
| | | SELECT * FROM t_member WHERE mini_openid = #{miniOpenid} |
| | | </select> |
| | | |
| | | </mapper> |
New file |
| | |
| | | <?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.ruoyi.member.mapper.member.MemberNurseMapper"> |
| | | |
| | | <resultMap type="MemberNurse" id="MemberNurseResult"> |
| | | <result property="id" column="id" /> |
| | | <result property="delFlag" column="del_flag" /> |
| | | <result property="userId" column="user_id" /> |
| | | <result property="nurse" column="nurse" /> |
| | | </resultMap> |
| | | |
| | | <sql id="selectMemberNurseVo"> |
| | | select id, del_flag, user_id, nurse from t_member_nurse |
| | | </sql> |
| | | |
| | | <select id="selectMemberNurseList" parameterType="MemberNurse" resultMap="MemberNurseResult"> |
| | | <include refid="selectMemberNurseVo"/> |
| | | <where> |
| | | <if test="userId != null "> and user_id = #{userId}</if> |
| | | <if test="nurse != null and nurse != ''"> and nurse = #{nurse}</if> |
| | | </where> |
| | | </select> |
| | | |
| | | <select id="selectMemberNurseById" parameterType="Long" resultMap="MemberNurseResult"> |
| | | <include refid="selectMemberNurseVo"/> |
| | | where id = #{id} |
| | | </select> |
| | | |
| | | <insert id="insertMemberNurse" parameterType="MemberNurse" useGeneratedKeys="true" keyProperty="id"> |
| | | insert into t_member_nurse |
| | | <trim prefix="(" suffix=")" suffixOverrides=","> |
| | | <if test="delFlag != null">del_flag,</if> |
| | | <if test="userId != null">user_id,</if> |
| | | <if test="nurse != null">nurse,</if> |
| | | </trim> |
| | | <trim prefix="values (" suffix=")" suffixOverrides=","> |
| | | <if test="delFlag != null">#{delFlag},</if> |
| | | <if test="userId != null">#{userId},</if> |
| | | <if test="nurse != null">#{nurse},</if> |
| | | </trim> |
| | | </insert> |
| | | |
| | | <update id="updateMemberNurse" parameterType="MemberNurse"> |
| | | update t_member_nurse |
| | | <trim prefix="SET" suffixOverrides=","> |
| | | <if test="delFlag != null">del_flag = #{delFlag},</if> |
| | | <if test="userId != null">user_id = #{userId},</if> |
| | | <if test="nurse != null">nurse = #{nurse},</if> |
| | | </trim> |
| | | where id = #{id} |
| | | </update> |
| | | |
| | | <delete id="deleteMemberNurseById" parameterType="Long"> |
| | | delete from t_member_nurse where id = #{id} |
| | | </delete> |
| | | |
| | | <delete id="deleteMemberNurseByIds" parameterType="String"> |
| | | delete from t_member_nurse where id in |
| | | <foreach item="id" collection="array" open="(" separator="," close=")"> |
| | | #{id} |
| | | </foreach> |
| | | </delete> |
| | | |
| | | </mapper> |
New file |
| | |
| | | <?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.ruoyi.member.mapper.member.UserCouponMapper"> |
| | | |
| | | <resultMap type="UserCoupon" id="UserCouponResult"> |
| | | <result property="id" column="id" /> |
| | | <result property="delFlag" column="del_flag" /> |
| | | <result property="couponId" column="coupon_id" /> |
| | | <result property="userId" column="user_id" /> |
| | | <result property="couponType" column="coupon_type" /> |
| | | <result property="couponStatus" column="coupon_status" /> |
| | | <result property="couponName" column="coupon_name" /> |
| | | <result property="sendType" column="send_type" /> |
| | | <result property="sendTimeType" column="send_time_type" /> |
| | | <result property="sendTime" column="send_time" /> |
| | | <result property="moneyThreshold" column="money_threshold" /> |
| | | <result property="dicountMoney" column="dicount_money" /> |
| | | <result property="discoutPercent" column="discout_percent" /> |
| | | <result property="useScope" column="use_scope" /> |
| | | <result property="validTimeType" column="valid_time_type" /> |
| | | <result property="validStartTime" column="valid_start_time" /> |
| | | <result property="validEndTime" column="valid_end_time" /> |
| | | <result property="validDay" column="valid_day" /> |
| | | <result property="receiveTime" column="receive_time" /> |
| | | <result property="userTime" column="user_time" /> |
| | | <result property="deadlineTime" column="deadline_time" /> |
| | | </resultMap> |
| | | |
| | | <sql id="selectUserCouponVo"> |
| | | select id, del_flag, coupon_id, user_id, coupon_type, coupon_status, coupon_name, send_type, send_time_type, send_time, money_threshold, dicount_money, discout_percent, use_scope, valid_time_type, valid_start_time, valid_end_time, valid_day, receive_time, user_time, deadline_time from t_user_coupon |
| | | </sql> |
| | | |
| | | <select id="selectUserCouponList" parameterType="UserCoupon" resultMap="UserCouponResult"> |
| | | <include refid="selectUserCouponVo"/> |
| | | <where> |
| | | <if test="couponId != null and couponId != ''"> and coupon_id = #{couponId}</if> |
| | | <if test="userId != null "> and user_id = #{userId}</if> |
| | | <if test="couponType != null "> and coupon_type = #{couponType}</if> |
| | | <if test="couponStatus != null "> and coupon_status = #{couponStatus}</if> |
| | | <if test="couponName != null and couponName != ''"> and coupon_name like concat('%', #{couponName}, '%')</if> |
| | | <if test="sendType != null "> and send_type = #{sendType}</if> |
| | | <if test="sendTimeType != null "> and send_time_type = #{sendTimeType}</if> |
| | | <if test="sendTime != null "> and send_time = #{sendTime}</if> |
| | | <if test="moneyThreshold != null "> and money_threshold = #{moneyThreshold}</if> |
| | | <if test="dicountMoney != null "> and dicount_money = #{dicountMoney}</if> |
| | | <if test="discoutPercent != null "> and discout_percent = #{discoutPercent}</if> |
| | | <if test="useScope != null "> and use_scope = #{useScope}</if> |
| | | <if test="validTimeType != null "> and valid_time_type = #{validTimeType}</if> |
| | | <if test="validStartTime != null "> and valid_start_time = #{validStartTime}</if> |
| | | <if test="validEndTime != null "> and valid_end_time = #{validEndTime}</if> |
| | | <if test="validDay != null "> and valid_day = #{validDay}</if> |
| | | <if test="receiveTime != null "> and receive_time = #{receiveTime}</if> |
| | | <if test="userTime != null "> and user_time = #{userTime}</if> |
| | | <if test="deadlineTime != null "> and deadline_time = #{deadlineTime}</if> |
| | | </where> |
| | | </select> |
| | | |
| | | <select id="selectUserCouponById" parameterType="Long" resultMap="UserCouponResult"> |
| | | <include refid="selectUserCouponVo"/> |
| | | where id = #{id} |
| | | </select> |
| | | |
| | | <insert id="insertUserCoupon" parameterType="UserCoupon" useGeneratedKeys="true" keyProperty="id"> |
| | | insert into t_user_coupon |
| | | <trim prefix="(" suffix=")" suffixOverrides=","> |
| | | <if test="delFlag != null">del_flag,</if> |
| | | <if test="couponId != null">coupon_id,</if> |
| | | <if test="userId != null">user_id,</if> |
| | | <if test="couponType != null">coupon_type,</if> |
| | | <if test="couponStatus != null">coupon_status,</if> |
| | | <if test="couponName != null">coupon_name,</if> |
| | | <if test="sendType != null">send_type,</if> |
| | | <if test="sendTimeType != null">send_time_type,</if> |
| | | <if test="sendTime != null">send_time,</if> |
| | | <if test="moneyThreshold != null">money_threshold,</if> |
| | | <if test="dicountMoney != null">dicount_money,</if> |
| | | <if test="discoutPercent != null">discout_percent,</if> |
| | | <if test="useScope != null">use_scope,</if> |
| | | <if test="validTimeType != null">valid_time_type,</if> |
| | | <if test="validStartTime != null">valid_start_time,</if> |
| | | <if test="validEndTime != null">valid_end_time,</if> |
| | | <if test="validDay != null">valid_day,</if> |
| | | <if test="receiveTime != null">receive_time,</if> |
| | | <if test="userTime != null">user_time,</if> |
| | | <if test="deadlineTime != null">deadline_time,</if> |
| | | </trim> |
| | | <trim prefix="values (" suffix=")" suffixOverrides=","> |
| | | <if test="delFlag != null">#{delFlag},</if> |
| | | <if test="couponId != null">#{couponId},</if> |
| | | <if test="userId != null">#{userId},</if> |
| | | <if test="couponType != null">#{couponType},</if> |
| | | <if test="couponStatus != null">#{couponStatus},</if> |
| | | <if test="couponName != null">#{couponName},</if> |
| | | <if test="sendType != null">#{sendType},</if> |
| | | <if test="sendTimeType != null">#{sendTimeType},</if> |
| | | <if test="sendTime != null">#{sendTime},</if> |
| | | <if test="moneyThreshold != null">#{moneyThreshold},</if> |
| | | <if test="dicountMoney != null">#{dicountMoney},</if> |
| | | <if test="discoutPercent != null">#{discoutPercent},</if> |
| | | <if test="useScope != null">#{useScope},</if> |
| | | <if test="validTimeType != null">#{validTimeType},</if> |
| | | <if test="validStartTime != null">#{validStartTime},</if> |
| | | <if test="validEndTime != null">#{validEndTime},</if> |
| | | <if test="validDay != null">#{validDay},</if> |
| | | <if test="receiveTime != null">#{receiveTime},</if> |
| | | <if test="userTime != null">#{userTime},</if> |
| | | <if test="deadlineTime != null">#{deadlineTime},</if> |
| | | </trim> |
| | | </insert> |
| | | |
| | | <update id="updateUserCoupon" parameterType="UserCoupon"> |
| | | update t_user_coupon |
| | | <trim prefix="SET" suffixOverrides=","> |
| | | <if test="delFlag != null">del_flag = #{delFlag},</if> |
| | | <if test="couponId != null">coupon_id = #{couponId},</if> |
| | | <if test="userId != null">user_id = #{userId},</if> |
| | | <if test="couponType != null">coupon_type = #{couponType},</if> |
| | | <if test="couponStatus != null">coupon_status = #{couponStatus},</if> |
| | | <if test="couponName != null">coupon_name = #{couponName},</if> |
| | | <if test="sendType != null">send_type = #{sendType},</if> |
| | | <if test="sendTimeType != null">send_time_type = #{sendTimeType},</if> |
| | | <if test="sendTime != null">send_time = #{sendTime},</if> |
| | | <if test="moneyThreshold != null">money_threshold = #{moneyThreshold},</if> |
| | | <if test="dicountMoney != null">dicount_money = #{dicountMoney},</if> |
| | | <if test="discoutPercent != null">discout_percent = #{discoutPercent},</if> |
| | | <if test="useScope != null">use_scope = #{useScope},</if> |
| | | <if test="validTimeType != null">valid_time_type = #{validTimeType},</if> |
| | | <if test="validStartTime != null">valid_start_time = #{validStartTime},</if> |
| | | <if test="validEndTime != null">valid_end_time = #{validEndTime},</if> |
| | | <if test="validDay != null">valid_day = #{validDay},</if> |
| | | <if test="receiveTime != null">receive_time = #{receiveTime},</if> |
| | | <if test="userTime != null">user_time = #{userTime},</if> |
| | | <if test="deadlineTime != null">deadline_time = #{deadlineTime},</if> |
| | | </trim> |
| | | where id = #{id} |
| | | </update> |
| | | |
| | | <delete id="deleteUserCouponById" parameterType="Long"> |
| | | delete from t_user_coupon where id = #{id} |
| | | </delete> |
| | | |
| | | <delete id="deleteUserCouponByIds" parameterType="String"> |
| | | delete from t_user_coupon where id in |
| | | <foreach item="id" collection="array" open="(" separator="," close=")"> |
| | | #{id} |
| | | </foreach> |
| | | </delete> |
| | | |
| | | </mapper> |
| | |
| | | <version>2.3</version> |
| | | </dependency> |
| | | |
| | | <!-- 小程序统一服务 --> |
| | | <dependency> |
| | | <groupId>com.github.binarywang</groupId> |
| | | <artifactId>weixin-java-miniapp</artifactId> |
| | | <version>4.1.0</version> |
| | | </dependency> |
| | | |
| | | </dependencies> |
| | | |
| | | <build> |
New file |
| | |
| | | package com.ruoyi.order; |
| | | |
| | | import org.springframework.boot.SpringApplication; |
| | | import org.springframework.boot.autoconfigure.SpringBootApplication; |
| | | import com.ruoyi.common.security.annotation.EnableCustomConfig; |
| | | import com.ruoyi.common.security.annotation.EnableRyFeignClients; |
| | | import com.ruoyi.common.swagger.annotation.EnableCustomSwagger2; |
| | | |
| | | /** |
| | | * 系统模块 |
| | | * |
| | | * @author ruoyi |
| | | */ |
| | | @EnableCustomConfig |
| | | @EnableCustomSwagger2 |
| | | @EnableRyFeignClients |
| | | @SpringBootApplication |
| | | public class RuoYiSystemApplication |
| | | { |
| | | public static void main(String[] args) |
| | | { |
| | | SpringApplication.run(RuoYiSystemApplication.class, args); |
| | | System.out.println("(♥◠‿◠)ノ゙ 系统模块启动成功 ლ(´ڡ`ლ)゙ \n" + |
| | | " .-------. ____ __ \n" + |
| | | " | _ _ \\ \\ \\ / / \n" + |
| | | " | ( ' ) | \\ _. / ' \n" + |
| | | " |(_ o _) / _( )_ .' \n" + |
| | | " | (_,_).' __ ___(_ o _)' \n" + |
| | | " | |\\ \\ | || |(_,_)' \n" + |
| | | " | | \\ `' /| `-' / \n" + |
| | | " | | \\ / \\ / \n" + |
| | | " ''-' `'-' `-..-' "); |
| | | } |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.domain.dto; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppAgreementDto |
| | | * @description: TODO |
| | | * @date 2023年03月07日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class AppAgreementDto extends AppBaseDto{ |
| | | |
| | | |
| | | @ApiModelProperty(value = "协议类型1用户协议 2隐私协议") |
| | | private Integer type; |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.domain.dto; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppBaseBathDto |
| | | * @description: TODO |
| | | * @date 2023年04月26日 |
| | | * @version: 1.0 |
| | | */ |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | @Data |
| | | public class AppBaseBathDto extends AppBaseDto{ |
| | | |
| | | @ApiModelProperty(value = "请求对象id集合 多个用,隔开") |
| | | private String ids; |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.domain.dto; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppBaseDto |
| | | * @description: TODO |
| | | * @date 2023年04月19日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class AppBaseDto { |
| | | |
| | | @ApiModelProperty(value = "userId",hidden = true) |
| | | private Long userId; |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.domain.dto; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppBaseGetDto |
| | | * @description: TODO |
| | | * @date 2023年04月19日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class AppBaseGetDto extends AppBaseDto{ |
| | | |
| | | @ApiModelProperty(value = "请求对象id") |
| | | private String id; |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.domain.dto; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppGoodsInfoGetDto |
| | | * @description: TODO |
| | | * @date 2023年04月20日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class AppGoodsInfoGetDto extends AppBaseGetDto { |
| | | |
| | | @ApiModelProperty(value = "是否活动跳转0否1是") |
| | | private Integer activityFlag; |
| | | |
| | | @ApiModelProperty(value = "商户id",hidden = true) |
| | | private Long shopId; |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.domain.dto; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppNearbyShopDto |
| | | * @description: TODO |
| | | * @date 2023年04月19日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class AppNearbyShopDto extends AppBaseDto{ |
| | | |
| | | |
| | | @ApiModelProperty(value = "经度") |
| | | private String longitude; |
| | | |
| | | @ApiModelProperty(value = "维度") |
| | | private String latitude; |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.domain.dto; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppPageDto |
| | | * @description: TODO |
| | | * @date 2023年04月20日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class AppPageDto extends AppBaseDto{ |
| | | |
| | | @ApiModelProperty(name = "pagenum", value = "页码") |
| | | private Integer pageNum = 1; |
| | | |
| | | |
| | | @ApiModelProperty(name = "pagesize", value = "每页显示条数") |
| | | private Integer pageSize = 20; |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.domain.dto; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppShopGoodsPageDto |
| | | * @description: TODO |
| | | * @date 2023年04月20日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class AppSearchGoodsPageDto extends AppPageDto { |
| | | |
| | | @ApiModelProperty(value = "shopId",hidden = true) |
| | | private Long shopId; |
| | | |
| | | @ApiModelProperty(value = "搜索关键词") |
| | | private String keyword; |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.domain.dto; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppShopGoodsPageDto |
| | | * @description: TODO |
| | | * @date 2023年04月20日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class AppShopGoodsPageDto extends AppPageDto{ |
| | | |
| | | @ApiModelProperty(value = "shopId",hidden = true) |
| | | private Long shopId; |
| | | |
| | | @ApiModelProperty(value = "搜索关键词") |
| | | private String keyword; |
| | | |
| | | @ApiModelProperty(value = "商品类型1周期2服务3体验4单品") |
| | | private Integer goodsType; |
| | | |
| | | @ApiModelProperty(value = "商品分类id") |
| | | private Long goodsClassId; |
| | | |
| | | @ApiModelProperty(value = "排序方式1.全部2.价格正序3.价格倒序4.销量正序5.销量倒序") |
| | | private Integer sort; |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.domain.dto; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppShoppingCartAddDto |
| | | * @description: TODO |
| | | * @date 2023年04月26日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class AppShoppingCartAddDto extends AppBaseDto{ |
| | | |
| | | @ApiModelProperty(value = "shopId",hidden = true) |
| | | private Long shopId; |
| | | |
| | | @ApiModelProperty(value = "商品id") |
| | | private Long goodsId; |
| | | |
| | | @ApiModelProperty(value = "购买数量") |
| | | private Integer buyNum; |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.domain.dto; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppShoppingCartAddDto |
| | | * @description: TODO |
| | | * @date 2023年04月26日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class AppShoppingCartChangeDto extends AppBaseDto{ |
| | | |
| | | @ApiModelProperty(value = "shopId",hidden = true) |
| | | private Long shopId; |
| | | |
| | | @ApiModelProperty(value = "商品id") |
| | | private Long goodsId; |
| | | |
| | | @ApiModelProperty(value = "变化后数量") |
| | | private Integer buyNum; |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.domain.dto; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppUserAuthorizeDto |
| | | * @description: TODO |
| | | * @date 2023年02月13日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class AppUserAuthorizeDto extends AppBaseDto{ |
| | | |
| | | @ApiModelProperty(value = "手机iv") |
| | | private String phoneIv; |
| | | |
| | | @ApiModelProperty(value = "手机encryptedData") |
| | | private String phoneEncryptedData; |
| | | |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.domain.dto; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName MGTBaseDto |
| | | * @description: TODO |
| | | * @date 2023年04月21日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class MgtBaseDto { |
| | | |
| | | @ApiModelProperty(value = "userId",hidden = true) |
| | | private Long userId; |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.domain.dto; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName MgtBaseGetDto |
| | | * @description: TODO |
| | | * @date 2023年04月21日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class MgtBaseGetDto extends MgtBaseDto{ |
| | | |
| | | @ApiModelProperty(value = "请求对象id") |
| | | private String id; |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.domain.dto; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName MGTChangeCooperDto |
| | | * @description: TODO |
| | | * @date 2023年04月21日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class MgtChangeCoopDto extends MgtBaseDto { |
| | | |
| | | @ApiModelProperty(value = "商户id") |
| | | private Long shopId; |
| | | |
| | | @ApiModelProperty("合作开始时间") |
| | | private String coopStartTime; |
| | | |
| | | @ApiModelProperty("合作结束时间") |
| | | private String coopEndTime; |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.domain.dto; |
| | | |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName ManageCreateShopDto |
| | | * @description: TODO |
| | | * @date 2023年04月21日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class MgtEditShopDto extends MgtBaseDto{ |
| | | |
| | | |
| | | @ApiModelProperty(value = "商户id,新增不传") |
| | | private Long shopId; |
| | | |
| | | @ApiModelProperty("商户名称") |
| | | private String shopName; |
| | | |
| | | @ApiModelProperty("商户类型1.经销商2.代理商") |
| | | private Integer shopType; |
| | | |
| | | @ApiModelProperty("营业开始时间") |
| | | private String businessStartTime; |
| | | |
| | | @ApiModelProperty("营业结束时间") |
| | | private String businessEndTime; |
| | | |
| | | @ApiModelProperty("店主姓名") |
| | | private String shopownerName; |
| | | |
| | | @ApiModelProperty("店主联系方式") |
| | | private String shopownerPhone; |
| | | |
| | | @ApiModelProperty("签约区域") |
| | | private String signAreaCode; |
| | | |
| | | @ApiModelProperty("商户服务电话") |
| | | private String shopServicePhone; |
| | | |
| | | @ApiModelProperty("管辖员工") |
| | | private Long belongUserId; |
| | | |
| | | @ApiModelProperty("所属经销商") |
| | | private Long belongShopId; |
| | | |
| | | @ApiModelProperty("扶持能力1.有2.没有") |
| | | private Integer supportingCapacityFlag; |
| | | |
| | | @ApiModelProperty("店面操作人数1.1人2.1人以上") |
| | | private Integer operationPersonFlag; |
| | | |
| | | @ApiModelProperty("执行力1.强2.弱") |
| | | private Integer executiveForceFlag; |
| | | |
| | | @ApiModelProperty("格局1.大2.小") |
| | | private Integer patternFlag; |
| | | |
| | | @ApiModelProperty("人脉1.宽2.窄") |
| | | private Integer connectionFlag; |
| | | |
| | | @ApiModelProperty("经济能力1.强2.差") |
| | | private Integer economicAbilityFlag; |
| | | |
| | | @ApiModelProperty("与合作商关系1.好2.差") |
| | | private Integer relationPartner; |
| | | |
| | | @ApiModelProperty("曾从事事业") |
| | | private String businessHistory; |
| | | |
| | | @ApiModelProperty("店铺地址省code") |
| | | private String shopProvinceCode; |
| | | |
| | | @ApiModelProperty("店铺地址市code") |
| | | private String shopCityCode; |
| | | |
| | | @ApiModelProperty("店铺地址区code") |
| | | private String shopAreaCode; |
| | | |
| | | @ApiModelProperty("店铺区域全称") |
| | | private String shopAreaName; |
| | | |
| | | @ApiModelProperty("店铺详细地址") |
| | | private String shopAddress; |
| | | |
| | | @ApiModelProperty("店铺经度") |
| | | private String shopLongitude; |
| | | |
| | | @ApiModelProperty("店铺维度") |
| | | private String shopLatitude; |
| | | |
| | | @ApiModelProperty("店铺详情") |
| | | private String shopDetail; |
| | | |
| | | @ApiModelProperty("营销功能1开2关") |
| | | private Integer marketingFunctionFlag; |
| | | |
| | | @ApiModelProperty("领券1开2关") |
| | | private Integer platformCouponFlag; |
| | | |
| | | @ApiModelProperty("生日卡1开2关") |
| | | private Integer platformBirthdayFlag; |
| | | |
| | | @ApiModelProperty("推荐人") |
| | | private String recommendPerson; |
| | | |
| | | @ApiModelProperty("商户标签id 多个用,隔开") |
| | | private String shopTagIds; |
| | | |
| | | @ApiModelProperty("关联用户id 多个用,隔开") |
| | | private String relUserIds; |
| | | |
| | | @ApiModelProperty("商户封面") |
| | | private String shopPicture; |
| | | |
| | | @ApiModelProperty("商户banner 多个用,隔开") |
| | | private String shopBanners; |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.domain.dto; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName MgtEditShopTagDto |
| | | * @description: TODO |
| | | * @date 2023年04月21日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class MgtEditShopTagDto extends MgtBaseGetDto { |
| | | |
| | | @ApiModelProperty("商户标签id 多个用,隔开") |
| | | private String shopTagIds; |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.domain.dto; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppPageDto |
| | | * @description: TODO |
| | | * @date 2023年04月20日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class MgtPageDto extends MgtBaseDto{ |
| | | |
| | | @ApiModelProperty(name = "pagenum", value = "页码") |
| | | private Integer pageNum = 1; |
| | | |
| | | |
| | | @ApiModelProperty(name = "pagesize", value = "每页显示条数") |
| | | private Integer pageSize = 20; |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.domain.dto; |
| | | |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName MgtShopPageDto |
| | | * @description: TODO |
| | | * @date 2023年04月21日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class MgtShopPageDto extends MgtPageDto { |
| | | |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.domain.pojo.goods; |
| | | |
| | | import java.math.BigDecimal; |
| | | import java.util.Date; |
| | | import com.baomidou.mybatisplus.annotation.TableId; |
| | | import com.baomidou.mybatisplus.annotation.TableField; |
| | | import com.baomidou.mybatisplus.activerecord.Model; |
| | | import com.baomidou.mybatisplus.annotation.TableName; |
| | | import java.io.Serializable; |
| | | |
| | | import lombok.Data; |
| | | import lombok.EqualsAndHashCode; |
| | | import lombok.experimental.Accessors; |
| | | |
| | | /** |
| | | * <p> |
| | | * 商品表 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | @Data |
| | | @EqualsAndHashCode(callSuper = false) |
| | | @Accessors(chain = true) |
| | | @TableName("t_goods") |
| | | public class Goods extends Model<Goods> { |
| | | |
| | | private static final long serialVersionUID = 1L; |
| | | |
| | | /** |
| | | * 商品id |
| | | */ |
| | | @TableId("goods_id") |
| | | private String goodsId; |
| | | /** |
| | | * 删除标记 |
| | | */ |
| | | @TableField("del_flag") |
| | | private Integer delFlag; |
| | | /** |
| | | * 商品状态-1删除1上架2下架 |
| | | */ |
| | | @TableField("goods_status") |
| | | private Integer goodsStatus; |
| | | /** |
| | | * 商品类型1周期2服务3体验4单品 |
| | | */ |
| | | @TableField("goods_type") |
| | | private Integer goodsType; |
| | | @TableField("create_time") |
| | | private Date createTime; |
| | | @TableField("create_user_id") |
| | | private Long createUserId; |
| | | @TableField("update_time") |
| | | private Date updateTime; |
| | | @TableField("update_user_id") |
| | | private Long updateUserId; |
| | | /** |
| | | * 商品分类id |
| | | */ |
| | | @TableField("goods_class_id") |
| | | private Long goodsClassId; |
| | | /** |
| | | * 商品名称 |
| | | */ |
| | | @TableField("goods_name") |
| | | private String goodsName; |
| | | /** |
| | | * 周期次数标记0否1是 |
| | | */ |
| | | @TableField("cycle_num_flag") |
| | | private Integer cycleNumFlag; |
| | | /** |
| | | * 服务次数 |
| | | */ |
| | | @TableField("service_num") |
| | | private Integer serviceNum; |
| | | /** |
| | | * 商品简介 |
| | | */ |
| | | @TableField("goods_introduction") |
| | | private String goodsIntroduction; |
| | | /** |
| | | * 建议售价 |
| | | */ |
| | | @TableField("sales_price") |
| | | private BigDecimal salesPrice; |
| | | /** |
| | | * 最低售价 |
| | | */ |
| | | @TableField("mininum_price") |
| | | private BigDecimal mininumPrice; |
| | | /** |
| | | * 订金标记0否1是 |
| | | */ |
| | | @TableField("subscription_flag") |
| | | private Integer subscriptionFlag; |
| | | /** |
| | | * 订金 |
| | | */ |
| | | private BigDecimal subscription; |
| | | /** |
| | | * 商品详情 |
| | | */ |
| | | @TableField("goods_detail") |
| | | private String goodsDetail; |
| | | /** |
| | | * 是否推荐0否1是 |
| | | */ |
| | | @TableField("recommend_flag") |
| | | private Integer recommendFlag; |
| | | /** |
| | | * 商品调理问题 |
| | | */ |
| | | @TableField("goods_nurses") |
| | | private String goodsNurses; |
| | | /** |
| | | * 商品标签 |
| | | */ |
| | | @TableField("goods_tags") |
| | | private String goodsTags; |
| | | |
| | | |
| | | @Override |
| | | protected Serializable pkVal() { |
| | | return this.goodsId; |
| | | } |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.domain.pojo.goods; |
| | | |
| | | import com.baomidou.mybatisplus.annotation.IdType; |
| | | import com.baomidou.mybatisplus.annotation.TableId; |
| | | import com.baomidou.mybatisplus.annotation.TableField; |
| | | import com.baomidou.mybatisplus.activerecord.Model; |
| | | import com.baomidou.mybatisplus.annotation.TableName; |
| | | import java.io.Serializable; |
| | | |
| | | import lombok.Data; |
| | | import lombok.EqualsAndHashCode; |
| | | import lombok.experimental.Accessors; |
| | | |
| | | /** |
| | | * <p> |
| | | * 商品图片 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | @Data |
| | | @EqualsAndHashCode(callSuper = false) |
| | | @Accessors(chain = true) |
| | | @TableName("t_goods_file") |
| | | public class GoodsFile extends Model<GoodsFile> { |
| | | |
| | | private static final long serialVersionUID = 1L; |
| | | |
| | | @TableId(value = "id", type = IdType.AUTO) |
| | | private Long id; |
| | | /** |
| | | * 删除标记 |
| | | */ |
| | | @TableField("del_flag") |
| | | private Integer delFlag; |
| | | /** |
| | | * 商品id |
| | | */ |
| | | @TableField("goods_id") |
| | | private String goodsId; |
| | | /** |
| | | * 图片类型1封面2视频3banner |
| | | */ |
| | | @TableField("file_type") |
| | | private Integer fileType; |
| | | /** |
| | | * 图片地址 |
| | | */ |
| | | @TableField("file_url") |
| | | private String fileUrl; |
| | | |
| | | |
| | | @Override |
| | | protected Serializable pkVal() { |
| | | return this.id; |
| | | } |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.domain.pojo.goods; |
| | | |
| | | import com.baomidou.mybatisplus.annotation.IdType; |
| | | import com.baomidou.mybatisplus.annotation.TableId; |
| | | import com.baomidou.mybatisplus.annotation.TableField; |
| | | import com.baomidou.mybatisplus.activerecord.Model; |
| | | import com.baomidou.mybatisplus.annotation.TableName; |
| | | import java.io.Serializable; |
| | | |
| | | import lombok.Data; |
| | | import lombok.EqualsAndHashCode; |
| | | import lombok.experimental.Accessors; |
| | | |
| | | /** |
| | | * <p> |
| | | * 商品调理问题 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | @Data |
| | | @EqualsAndHashCode(callSuper = false) |
| | | @Accessors(chain = true) |
| | | @TableName("t_goods_rel_nurse") |
| | | public class GoodsRelNurse extends Model<GoodsRelNurse> { |
| | | |
| | | private static final long serialVersionUID = 1L; |
| | | |
| | | @TableId(value = "id", type = IdType.AUTO) |
| | | private Long id; |
| | | /** |
| | | * 删除标记 |
| | | */ |
| | | @TableField("del_flag") |
| | | private Integer delFlag; |
| | | /** |
| | | * 商品id |
| | | */ |
| | | @TableField("goods_id") |
| | | private String goodsId; |
| | | /** |
| | | * 调理问题id |
| | | */ |
| | | private String nurse; |
| | | |
| | | |
| | | @Override |
| | | protected Serializable pkVal() { |
| | | return this.id; |
| | | } |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.domain.pojo.goods; |
| | | |
| | | import com.baomidou.mybatisplus.annotation.IdType; |
| | | import com.baomidou.mybatisplus.annotation.TableId; |
| | | import com.baomidou.mybatisplus.annotation.TableField; |
| | | import com.baomidou.mybatisplus.activerecord.Model; |
| | | import com.baomidou.mybatisplus.annotation.TableName; |
| | | import java.io.Serializable; |
| | | |
| | | import lombok.Data; |
| | | import lombok.EqualsAndHashCode; |
| | | import lombok.experimental.Accessors; |
| | | |
| | | /** |
| | | * <p> |
| | | * 商品标签 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | @Data |
| | | @EqualsAndHashCode(callSuper = false) |
| | | @Accessors(chain = true) |
| | | @TableName("t_goods_rel_tag") |
| | | public class GoodsRelTag extends Model<GoodsRelTag> { |
| | | |
| | | private static final long serialVersionUID = 1L; |
| | | |
| | | @TableId(value = "id", type = IdType.AUTO) |
| | | private Long id; |
| | | /** |
| | | * 删除标记 |
| | | */ |
| | | @TableField("del_flag") |
| | | private Integer delFlag; |
| | | @TableField("goods_id") |
| | | private String goodsId; |
| | | @TableField("tag_id") |
| | | private Long tagId; |
| | | |
| | | |
| | | @Override |
| | | protected Serializable pkVal() { |
| | | return this.id; |
| | | } |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.domain.pojo.goods; |
| | | |
| | | import com.baomidou.mybatisplus.annotation.TableId; |
| | | import com.baomidou.mybatisplus.annotation.TableField; |
| | | import com.baomidou.mybatisplus.activerecord.Model; |
| | | import com.baomidou.mybatisplus.annotation.TableName; |
| | | import java.io.Serializable; |
| | | |
| | | import lombok.Data; |
| | | import lombok.EqualsAndHashCode; |
| | | import lombok.experimental.Accessors; |
| | | |
| | | /** |
| | | * <p> |
| | | * 商品统计 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | @Data |
| | | @EqualsAndHashCode(callSuper = false) |
| | | @Accessors(chain = true) |
| | | @TableName("t_goods_total") |
| | | public class GoodsTotal extends Model<GoodsTotal> { |
| | | |
| | | private static final long serialVersionUID = 1L; |
| | | |
| | | @TableId("goods_id") |
| | | private String goodsId; |
| | | /** |
| | | * 购买次数统计 |
| | | */ |
| | | @TableField("buy_count") |
| | | private Integer buyCount; |
| | | /** |
| | | * 购买数量统计 |
| | | */ |
| | | @TableField("buy_num_count") |
| | | private Integer buyNumCount; |
| | | /** |
| | | * 购买人数统计 |
| | | */ |
| | | @TableField("buy_user_count") |
| | | private Integer buyUserCount; |
| | | |
| | | |
| | | @Override |
| | | protected Serializable pkVal() { |
| | | return this.goodsId; |
| | | } |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.domain.pojo.order; |
| | | |
| | | import java.util.Date; |
| | | import com.baomidou.mybatisplus.annotation.TableId; |
| | | import com.baomidou.mybatisplus.annotation.TableField; |
| | | import com.baomidou.mybatisplus.activerecord.Model; |
| | | import com.baomidou.mybatisplus.annotation.TableName; |
| | | import java.io.Serializable; |
| | | |
| | | import lombok.Data; |
| | | import lombok.EqualsAndHashCode; |
| | | import lombok.experimental.Accessors; |
| | | |
| | | /** |
| | | * <p> |
| | | * 服务 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | @Data |
| | | @EqualsAndHashCode(callSuper = false) |
| | | @Accessors(chain = true) |
| | | @TableName("t_consumer_goods") |
| | | public class ConsumerGoods extends Model<ConsumerGoods> { |
| | | |
| | | private static final long serialVersionUID = 1L; |
| | | |
| | | /** |
| | | * 服务id |
| | | */ |
| | | @TableId("consumer_goods_id") |
| | | private String consumerGoodsId; |
| | | /** |
| | | * 删除标记 |
| | | */ |
| | | @TableField("del_flag") |
| | | private Integer delFlag; |
| | | /** |
| | | * 服务状态-1删除1未完成2完成 |
| | | */ |
| | | @TableField("service_status") |
| | | private Integer serviceStatus; |
| | | /** |
| | | * 商户id |
| | | */ |
| | | @TableField("shop_id") |
| | | private Long shopId; |
| | | /** |
| | | * 用户id |
| | | */ |
| | | @TableField("user_id") |
| | | private Long userId; |
| | | /** |
| | | * 订单id |
| | | */ |
| | | @TableField("order_id") |
| | | private String orderId; |
| | | /** |
| | | * 订单商品id |
| | | */ |
| | | @TableField("order_goods_id") |
| | | private String orderGoodsId; |
| | | /** |
| | | * 商品id |
| | | */ |
| | | @TableField("goods_id") |
| | | private String goodsId; |
| | | /** |
| | | * 商品名称 |
| | | */ |
| | | @TableField("goods_name") |
| | | private String goodsName; |
| | | /** |
| | | * 周期标记 |
| | | */ |
| | | @TableField("cycle_num_flag") |
| | | private Integer cycleNumFlag; |
| | | /** |
| | | * 服务次数 |
| | | */ |
| | | @TableField("service_num") |
| | | private Integer serviceNum; |
| | | /** |
| | | * 消耗次数 |
| | | */ |
| | | @TableField("used_num") |
| | | private Integer usedNum; |
| | | /** |
| | | * 完成时间 |
| | | */ |
| | | @TableField("complete_time") |
| | | private Date completeTime; |
| | | /** |
| | | * 创建时间 |
| | | */ |
| | | @TableField("create_time") |
| | | private Date createTime; |
| | | /** |
| | | * 使用时间 |
| | | */ |
| | | @TableField("use_time") |
| | | private String useTime; |
| | | |
| | | |
| | | @Override |
| | | protected Serializable pkVal() { |
| | | return this.consumerGoodsId; |
| | | } |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.domain.pojo.order; |
| | | |
| | | import java.math.BigDecimal; |
| | | import java.util.Date; |
| | | import com.baomidou.mybatisplus.annotation.TableId; |
| | | import com.baomidou.mybatisplus.annotation.TableField; |
| | | import com.baomidou.mybatisplus.activerecord.Model; |
| | | import com.baomidou.mybatisplus.annotation.TableName; |
| | | import java.io.Serializable; |
| | | |
| | | import lombok.Data; |
| | | import lombok.EqualsAndHashCode; |
| | | import lombok.experimental.Accessors; |
| | | |
| | | /** |
| | | * <p> |
| | | * 订单 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | @Data |
| | | @EqualsAndHashCode(callSuper = false) |
| | | @Accessors(chain = true) |
| | | @TableName("t_order") |
| | | public class Order extends Model<Order> { |
| | | |
| | | private static final long serialVersionUID = 1L; |
| | | |
| | | /** |
| | | * 订单id |
| | | */ |
| | | @TableId("order_id") |
| | | private String orderId; |
| | | /** |
| | | * 删除标记 |
| | | */ |
| | | @TableField("del_flag") |
| | | private Integer delFlag; |
| | | /** |
| | | * 订单状态-1.删除0.已取消1.待支付2.待核销3.已完成 |
| | | */ |
| | | @TableField("order_status") |
| | | private Integer orderStatus; |
| | | /** |
| | | * 订单编号 |
| | | */ |
| | | @TableField("order_no") |
| | | private String orderNo; |
| | | /** |
| | | * 订单来源1.商城2.秒杀活动3.线下创建 |
| | | */ |
| | | @TableField("order_from") |
| | | private Integer orderFrom; |
| | | /** |
| | | * 商户id |
| | | */ |
| | | @TableField("shop_id") |
| | | private Long shopId; |
| | | /** |
| | | * 购买用户id |
| | | */ |
| | | @TableField("user_id") |
| | | private Long userId; |
| | | /** |
| | | * 订单金额 |
| | | */ |
| | | @TableField("order_money") |
| | | private BigDecimal orderMoney; |
| | | /** |
| | | * 优惠券金额 |
| | | */ |
| | | @TableField("coupon_money") |
| | | private BigDecimal couponMoney; |
| | | /** |
| | | * 优惠金额 |
| | | */ |
| | | @TableField("discount_money") |
| | | private BigDecimal discountMoney; |
| | | /** |
| | | * 应收金额 |
| | | */ |
| | | @TableField("receivable_money") |
| | | private BigDecimal receivableMoney; |
| | | /** |
| | | * 支付类型1.全款2.订金 |
| | | */ |
| | | @TableField("pay_type") |
| | | private Integer payType; |
| | | /** |
| | | * 支付金额 |
| | | */ |
| | | @TableField("pay_money") |
| | | private BigDecimal payMoney; |
| | | /** |
| | | * 线上支付金额 |
| | | */ |
| | | @TableField("online_pay_money") |
| | | private BigDecimal onlinePayMoney; |
| | | /** |
| | | * 线下支付金额 |
| | | */ |
| | | @TableField("offline_pay_money") |
| | | private BigDecimal offlinePayMoney; |
| | | /** |
| | | * 订单备注 |
| | | */ |
| | | @TableField("order_remark") |
| | | private String orderRemark; |
| | | /** |
| | | * 商品信息 |
| | | */ |
| | | @TableField("goods_info") |
| | | private String goodsInfo; |
| | | /** |
| | | * 创建时间 |
| | | */ |
| | | @TableField("create_time") |
| | | private Date createTime; |
| | | /** |
| | | * 支付时间 |
| | | */ |
| | | @TableField("pay_time") |
| | | private Date payTime; |
| | | /** |
| | | * 核销时间 |
| | | */ |
| | | @TableField("use_time") |
| | | private Date useTime; |
| | | /** |
| | | * 取消时间 |
| | | */ |
| | | @TableField("cancel_time") |
| | | private Date cancelTime; |
| | | /** |
| | | * 核销用户id |
| | | */ |
| | | @TableField("use_user_id") |
| | | private Long useUserId; |
| | | |
| | | |
| | | @Override |
| | | protected Serializable pkVal() { |
| | | return this.orderId; |
| | | } |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.domain.pojo.order; |
| | | |
| | | import java.math.BigDecimal; |
| | | import com.baomidou.mybatisplus.annotation.TableId; |
| | | import com.baomidou.mybatisplus.annotation.TableField; |
| | | import com.baomidou.mybatisplus.activerecord.Model; |
| | | import com.baomidou.mybatisplus.annotation.TableName; |
| | | import java.io.Serializable; |
| | | |
| | | import lombok.Data; |
| | | import lombok.EqualsAndHashCode; |
| | | import lombok.experimental.Accessors; |
| | | |
| | | /** |
| | | * <p> |
| | | * 订单商品 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | @Data |
| | | @EqualsAndHashCode(callSuper = false) |
| | | @Accessors(chain = true) |
| | | @TableName("t_order_goods") |
| | | public class OrderGoods extends Model<OrderGoods> { |
| | | |
| | | private static final long serialVersionUID = 1L; |
| | | |
| | | /** |
| | | * 订单商品id |
| | | */ |
| | | @TableId("order_goods_id") |
| | | private String orderGoodsId; |
| | | /** |
| | | * 删除标记 |
| | | */ |
| | | @TableField("del_flag") |
| | | private Integer delFlag; |
| | | /** |
| | | * 订单id |
| | | */ |
| | | @TableField("order_id") |
| | | private String orderId; |
| | | /** |
| | | * 商品id |
| | | */ |
| | | @TableField("goods_id") |
| | | private String goodsId; |
| | | /** |
| | | * 购买数量 |
| | | */ |
| | | @TableField("buy_num") |
| | | private Integer buyNum; |
| | | /** |
| | | * 优惠券id |
| | | */ |
| | | @TableField("coupon_id") |
| | | private String couponId; |
| | | /** |
| | | * 商品售价 |
| | | */ |
| | | @TableField("goods_price") |
| | | private BigDecimal goodsPrice; |
| | | /** |
| | | * 商品总价 |
| | | */ |
| | | @TableField("goods_total_money") |
| | | private BigDecimal goodsTotalMoney; |
| | | /** |
| | | * 商品应收金额 |
| | | */ |
| | | @TableField("goods_receivable_money") |
| | | private BigDecimal goodsReceivableMoney; |
| | | /** |
| | | * 周期次数标记 |
| | | */ |
| | | @TableField("cycle_num_flag") |
| | | private Integer cycleNumFlag; |
| | | /** |
| | | * 服务次数 |
| | | */ |
| | | @TableField("service_num") |
| | | private Integer serviceNum; |
| | | /** |
| | | * 商品类型1周期2服务3体验4单品 |
| | | */ |
| | | @TableField("goods_type") |
| | | private Integer goodsType; |
| | | |
| | | |
| | | @Override |
| | | protected Serializable pkVal() { |
| | | return this.orderGoodsId; |
| | | } |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.domain.pojo.order; |
| | | |
| | | import com.baomidou.mybatisplus.annotation.IdType; |
| | | import java.util.Date; |
| | | import com.baomidou.mybatisplus.annotation.TableId; |
| | | import com.baomidou.mybatisplus.annotation.TableField; |
| | | import com.baomidou.mybatisplus.activerecord.Model; |
| | | import com.baomidou.mybatisplus.annotation.TableName; |
| | | import java.io.Serializable; |
| | | |
| | | import lombok.Data; |
| | | import lombok.EqualsAndHashCode; |
| | | import lombok.experimental.Accessors; |
| | | |
| | | /** |
| | | * <p> |
| | | * 购物车 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | @Data |
| | | @EqualsAndHashCode(callSuper = false) |
| | | @Accessors(chain = true) |
| | | @TableName("t_shopping_cart") |
| | | public class ShoppingCart extends Model<ShoppingCart> { |
| | | |
| | | private static final long serialVersionUID = 1L; |
| | | |
| | | @TableId(value = "id", type = IdType.AUTO) |
| | | private Long id; |
| | | /** |
| | | * 删除标记0否1是 |
| | | */ |
| | | @TableField("del_flag") |
| | | private Integer delFlag; |
| | | /** |
| | | * 用户id |
| | | */ |
| | | @TableField("user_id") |
| | | private Long userId; |
| | | /** |
| | | * 商户id |
| | | */ |
| | | @TableField("shop_id") |
| | | private Long shopId; |
| | | /** |
| | | * 商品id |
| | | */ |
| | | @TableField("goods_id") |
| | | private String goodsId; |
| | | /** |
| | | * 购买数量 |
| | | */ |
| | | @TableField("buy_num") |
| | | private Integer buyNum; |
| | | /** |
| | | * 创建时间 |
| | | */ |
| | | @TableField("create_time") |
| | | private Date createTime; |
| | | /** |
| | | * 更新时间 |
| | | */ |
| | | @TableField("update_time") |
| | | private Date updateTime; |
| | | |
| | | |
| | | @Override |
| | | protected Serializable pkVal() { |
| | | return this.id; |
| | | } |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.domain.pojo.order; |
| | | |
| | | import com.baomidou.mybatisplus.annotation.IdType; |
| | | import java.util.Date; |
| | | import com.baomidou.mybatisplus.annotation.TableId; |
| | | import com.baomidou.mybatisplus.annotation.TableField; |
| | | import com.baomidou.mybatisplus.activerecord.Model; |
| | | import com.baomidou.mybatisplus.annotation.TableName; |
| | | import java.io.Serializable; |
| | | |
| | | import lombok.Data; |
| | | import lombok.EqualsAndHashCode; |
| | | import lombok.experimental.Accessors; |
| | | |
| | | /** |
| | | * <p> |
| | | * 服务记录 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | @Data |
| | | @EqualsAndHashCode(callSuper = false) |
| | | @Accessors(chain = true) |
| | | @TableName("t_user_service_record") |
| | | public class UserServiceRecord extends Model<UserServiceRecord> { |
| | | |
| | | private static final long serialVersionUID = 1L; |
| | | |
| | | @TableId(value = "id", type = IdType.AUTO) |
| | | private Long id; |
| | | /** |
| | | * 删除标记 |
| | | */ |
| | | @TableField("del_flag") |
| | | private Integer delFlag; |
| | | /** |
| | | * 用户id |
| | | */ |
| | | @TableField("user_id") |
| | | private Long userId; |
| | | /** |
| | | * 服务id |
| | | */ |
| | | @TableField("consumer_goods_ids") |
| | | private String consumerGoodsIds; |
| | | /** |
| | | * 服务名称 |
| | | */ |
| | | @TableField("consumer_goods_names") |
| | | private String consumerGoodsNames; |
| | | /** |
| | | * 创建时间 |
| | | */ |
| | | @TableField("create_time") |
| | | private Date createTime; |
| | | /** |
| | | * 服务类型1.周期2.服务3.体验 |
| | | */ |
| | | @TableField("service_type") |
| | | private Integer serviceType; |
| | | |
| | | |
| | | @Override |
| | | protected Serializable pkVal() { |
| | | return this.id; |
| | | } |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.domain.vo; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppQuickEntryVo |
| | | * @description: TODO |
| | | * @date 2023年04月20日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class AppAdvertVo { |
| | | |
| | | @ApiModelProperty(value = "广告入口") |
| | | private Long adId; |
| | | |
| | | @ApiModelProperty(value = "广告图片地址") |
| | | private String adUrl; |
| | | |
| | | @ApiModelProperty(value = "广告语") |
| | | private String adContent; |
| | | |
| | | @ApiModelProperty(value = "对象类型1.外链2.内链3.无") |
| | | private Integer targetType; |
| | | |
| | | @ApiModelProperty(value = "链接地址") |
| | | private String linkUrl; |
| | | |
| | | @ApiModelProperty(value = "跳转id") |
| | | private String jumpId; |
| | | |
| | | @ApiModelProperty(value = "logo地址") |
| | | private String logoUrl; |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.domain.vo; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppAgreementVo |
| | | * @description: TODO |
| | | * @date 2023年03月07日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class AppAgreementVo { |
| | | |
| | | @ApiModelProperty(value = "协议id") |
| | | private Long agreementId; |
| | | |
| | | @ApiModelProperty(value = "协议内容") |
| | | private String agreementContent; |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.domain.vo; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppBannerVo |
| | | * @description: TODO |
| | | * @date 2023年04月20日 |
| | | * @version: 1.0 |
| | | */ |
| | | |
| | | @Data |
| | | public class AppBannerVo { |
| | | |
| | | @ApiModelProperty(value = "bannerid") |
| | | private Long bannerId; |
| | | |
| | | @ApiModelProperty(value = "banner图片地址") |
| | | private String bannerUrl; |
| | | |
| | | @ApiModelProperty(value = "链接类型1.外部2.内部3.无") |
| | | private Integer targetType; |
| | | |
| | | @ApiModelProperty(value = "链接类型1.手动输入2.选择已有") |
| | | private Integer linkType; |
| | | |
| | | @ApiModelProperty(value = "链接地址") |
| | | private String linkUrl; |
| | | |
| | | @ApiModelProperty(value = "跳转类型1.门店详情2.秒杀活动3领券中心4.商城列表5.关于洪瑞堂") |
| | | private Integer jumpType; |
| | | |
| | | @ApiModelProperty(value = "跳转id") |
| | | private String jumpId; |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.domain.vo; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | import java.math.BigDecimal; |
| | | import java.util.Date; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppGoodsInfoVo |
| | | * @description: TODO |
| | | * @date 2023年04月20日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class AppGoodsInfoVo { |
| | | |
| | | @ApiModelProperty(value = "商品id") |
| | | private Long goodsId; |
| | | |
| | | @ApiModelProperty(value = "商品名称") |
| | | private String goodsName; |
| | | |
| | | @ApiModelProperty(value = "商品简介") |
| | | private String goodsIntroduction; |
| | | |
| | | @ApiModelProperty(value = "商品视频") |
| | | private String goodsVideo; |
| | | |
| | | @ApiModelProperty(value = "商品banner") |
| | | private String goodsBanners; |
| | | |
| | | @ApiModelProperty(value = "商品类型1周期2服务3体验4单品") |
| | | private Integer goodsType; |
| | | |
| | | @ApiModelProperty(value = "商品标签") |
| | | private String goodsTag; |
| | | |
| | | @ApiModelProperty(value = "商品调理问题") |
| | | private BigDecimal goodsNurses; |
| | | |
| | | @ApiModelProperty("服务次数") |
| | | private Integer serviceNum; |
| | | |
| | | @ApiModelProperty(value = "商品售价") |
| | | private BigDecimal salesPrice; |
| | | |
| | | @ApiModelProperty(value = "商品详情") |
| | | private String goodsDetail; |
| | | |
| | | @ApiModelProperty(value = "销售数量") |
| | | private Integer salesNum; |
| | | |
| | | @ApiModelProperty(value = "是否活动跳转0否1是") |
| | | private Integer activityFlag; |
| | | |
| | | @ApiModelProperty(value = "商品活动价") |
| | | private BigDecimal activityPrice; |
| | | |
| | | @ApiModelProperty(value = "售罄标记0否1是") |
| | | private Integer sellOutFlag; |
| | | |
| | | @ApiModelProperty(value = "活动截止时间") |
| | | private Date activityDeadline; |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.domain.vo; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppNearbyShopDto |
| | | * @description: TODO |
| | | * @date 2023年04月19日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class AppNearbyShopVo { |
| | | |
| | | |
| | | @ApiModelProperty(value = "商户id") |
| | | private Long shopId; |
| | | |
| | | @ApiModelProperty(value = "商户名称") |
| | | private String shopName; |
| | | |
| | | @ApiModelProperty(value = "商户地址") |
| | | private String shopAddress; |
| | | |
| | | @ApiModelProperty(value = "经度") |
| | | private String shopLongitude; |
| | | |
| | | @ApiModelProperty(value = "维度") |
| | | private String shopLatitude; |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.domain.vo; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppQuickEntryVo |
| | | * @description: TODO |
| | | * @date 2023年04月20日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class AppQuickEntryVo { |
| | | |
| | | @ApiModelProperty(value = "快速入口") |
| | | private Long entryId; |
| | | |
| | | @ApiModelProperty(value = "入口图片地址") |
| | | private String entryUrl; |
| | | |
| | | @ApiModelProperty(value = "入口名称") |
| | | private String entryName; |
| | | |
| | | @ApiModelProperty(value = "对象类型1.外链2.内链3.无") |
| | | private Integer targetType; |
| | | |
| | | @ApiModelProperty(value = "链接地址") |
| | | private String linkUrl; |
| | | |
| | | @ApiModelProperty(value = "跳转id") |
| | | private String jumpId; |
| | | |
| | | |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.domain.vo; |
| | | |
| | | import com.ruoyi.system.domain.pojo.shop.ShopCertificate; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppShopInfoVo |
| | | * @description: TODO |
| | | * @date 2023年04月20日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class AppShopInfoVo { |
| | | |
| | | @ApiModelProperty(value = "商户id") |
| | | private Long shopId; |
| | | |
| | | @ApiModelProperty(value = "商户名称") |
| | | private String shopName; |
| | | |
| | | @ApiModelProperty(value = "商户地址") |
| | | private String shopAddress; |
| | | |
| | | @ApiModelProperty(value = "经度") |
| | | private String shopLongitude; |
| | | |
| | | @ApiModelProperty(value = "维度") |
| | | private String shopLatitude; |
| | | |
| | | @ApiModelProperty("营业开始时间") |
| | | private String businessStartTime; |
| | | |
| | | @ApiModelProperty("营业结束时间") |
| | | private String businessEndTime; |
| | | |
| | | @ApiModelProperty("商户标签") |
| | | private String shopTags; |
| | | |
| | | @ApiModelProperty("商户服务电话") |
| | | private String shopServicePhone; |
| | | |
| | | @ApiModelProperty("商户封面") |
| | | private String shopPicture; |
| | | |
| | | @ApiModelProperty("商户banners") |
| | | private String shopBanners; |
| | | |
| | | @ApiModelProperty("店铺详情") |
| | | private String shopDetail; |
| | | |
| | | @ApiModelProperty("店铺证书") |
| | | private List<ShopCertificate> shopCertificateList; |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.domain.vo; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | import java.math.BigDecimal; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppSimpleGoodsVo |
| | | * @description: TODO |
| | | * @date 2023年04月20日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class AppSimpleActivityGoodsVo { |
| | | |
| | | @ApiModelProperty(value = "商品id") |
| | | private Long goodsId; |
| | | |
| | | @ApiModelProperty(value = "商品名称") |
| | | private String goodsName; |
| | | |
| | | @ApiModelProperty(value = "商品简介") |
| | | private String goodsIntroduction; |
| | | |
| | | @ApiModelProperty(value = "商品图片") |
| | | private String goodsPicture; |
| | | |
| | | @ApiModelProperty(value = "商品类型1周期2服务3体验4单品") |
| | | private Integer goodsType; |
| | | |
| | | @ApiModelProperty(value = "商品标签") |
| | | private String goodsTag; |
| | | |
| | | @ApiModelProperty(value = "商品调理问题") |
| | | private BigDecimal goodsNurses; |
| | | |
| | | @ApiModelProperty(value = "商品售价") |
| | | private BigDecimal salesPrice; |
| | | |
| | | @ApiModelProperty(value = "商品活动价") |
| | | private BigDecimal activityPrice; |
| | | |
| | | @ApiModelProperty(value = "活动销售数量") |
| | | private Integer activityNumber; |
| | | |
| | | @ApiModelProperty(value = "已售数量") |
| | | private Integer salesNumber; |
| | | |
| | | @ApiModelProperty(value = "已售比例") |
| | | private BigDecimal salesPercent; |
| | | |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.domain.vo; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | import java.math.BigDecimal; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppSimpleGoodsVo |
| | | * @description: TODO |
| | | * @date 2023年04月20日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class AppSimpleGoodsVo { |
| | | |
| | | @ApiModelProperty(value = "商品id") |
| | | private Long goodsId; |
| | | |
| | | @ApiModelProperty(value = "商品名称") |
| | | private String goodsName; |
| | | |
| | | @ApiModelProperty(value = "商品简介") |
| | | private String goodsIntroduction; |
| | | |
| | | @ApiModelProperty(value = "商品图片") |
| | | private String goodsPicture; |
| | | |
| | | @ApiModelProperty(value = "商品类型1周期2服务3体验4单品") |
| | | private Integer goodsType; |
| | | |
| | | @ApiModelProperty(value = "商品标签") |
| | | private String goodsTag; |
| | | |
| | | @ApiModelProperty(value = "商品调理问题") |
| | | private BigDecimal goodsNurses; |
| | | |
| | | @ApiModelProperty(value = "商品售价") |
| | | private BigDecimal salesPrice; |
| | | |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.domain.vo; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppUserAuthorizeDto |
| | | * @description: TODO |
| | | * @date 2023年02月13日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class AppUserAuthorizeVo { |
| | | |
| | | @ApiModelProperty(value = "微信openid") |
| | | private String openid; |
| | | |
| | | @ApiModelProperty(value = "微信unionid") |
| | | private String unionid; |
| | | |
| | | @ApiModelProperty(value = "微信昵称") |
| | | private String nickName; |
| | | |
| | | @ApiModelProperty(value = "用户手机") |
| | | private String mobile; |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.domain.vo; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | import java.math.BigDecimal; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName MerHomeShopTotalVo |
| | | * @description: TODO |
| | | * @date 2023年04月21日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class MerHomeShopTotalVo { |
| | | |
| | | @ApiModelProperty(value = "商户id") |
| | | private Long shopId; |
| | | |
| | | @ApiModelProperty(value = "今日到店") |
| | | private Integer todayShop; |
| | | |
| | | @ApiModelProperty(value = "待处理订单") |
| | | private Integer unHandleOrder; |
| | | |
| | | @ApiModelProperty(value = "跟进任务") |
| | | private Integer task; |
| | | |
| | | @ApiModelProperty(value = "店铺营业额") |
| | | private BigDecimal shopTurnover; |
| | | |
| | | @ApiModelProperty(value = "剩余周期人数") |
| | | private Integer cycleSurp; |
| | | |
| | | @ApiModelProperty(value = "剩余体验人数") |
| | | private Integer explorationSurp; |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.domain.vo; |
| | | |
| | | import com.ruoyi.system.domain.pojo.shop.ShopCertificate; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName MerShopInfoVo |
| | | * @description: TODO |
| | | * @date 2023年04月21日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class MerShopInfoVo { |
| | | |
| | | @ApiModelProperty(value = "商户id") |
| | | private Long shopId; |
| | | |
| | | @ApiModelProperty("商户名称") |
| | | private String shopName; |
| | | |
| | | @ApiModelProperty("商户类型1.经销商2.代理商") |
| | | private Integer shopType; |
| | | |
| | | @ApiModelProperty("营业开始时间") |
| | | private String businessStartTime; |
| | | |
| | | @ApiModelProperty("营业结束时间") |
| | | private String businessEndTime; |
| | | |
| | | @ApiModelProperty("店主姓名") |
| | | private String shopownerName; |
| | | |
| | | @ApiModelProperty("店主联系方式") |
| | | private String shopownerPhone; |
| | | |
| | | @ApiModelProperty("签约区域") |
| | | private String signAreaCode; |
| | | |
| | | @ApiModelProperty("商户服务电话") |
| | | private String shopServicePhone; |
| | | |
| | | @ApiModelProperty("管辖员工") |
| | | private Long belongUserId; |
| | | |
| | | @ApiModelProperty("所属经销商") |
| | | private Long belongShopId; |
| | | |
| | | @ApiModelProperty("扶持能力1.有2.没有") |
| | | private Integer supportingCapacityFlag; |
| | | |
| | | @ApiModelProperty("店面操作人数1.1人2.1人以上") |
| | | private Integer operationPersonFlag; |
| | | |
| | | @ApiModelProperty("执行力1.强2.弱") |
| | | private Integer executiveForceFlag; |
| | | |
| | | @ApiModelProperty("格局1.大2.小") |
| | | private Integer patternFlag; |
| | | |
| | | @ApiModelProperty("人脉1.宽2.窄") |
| | | private Integer connectionFlag; |
| | | |
| | | @ApiModelProperty("经济能力1.强2.差") |
| | | private Integer economicAbilityFlag; |
| | | |
| | | @ApiModelProperty("与合作商关系1.好2.差") |
| | | private Integer relationPartner; |
| | | |
| | | @ApiModelProperty("曾从事事业") |
| | | private String businessHistory; |
| | | |
| | | @ApiModelProperty("店铺地址省code") |
| | | private String shopProvinceCode; |
| | | |
| | | @ApiModelProperty("店铺地址市code") |
| | | private String shopCityCode; |
| | | |
| | | @ApiModelProperty("店铺地址区code") |
| | | private String shopAreaCode; |
| | | |
| | | @ApiModelProperty("店铺区域全称") |
| | | private String shopAreaName; |
| | | |
| | | @ApiModelProperty("店铺详细地址") |
| | | private String shopAddress; |
| | | |
| | | @ApiModelProperty("店铺经度") |
| | | private String shopLongitude; |
| | | |
| | | @ApiModelProperty("店铺维度") |
| | | private String shopLatitude; |
| | | |
| | | @ApiModelProperty("店铺详情") |
| | | private String shopDetail; |
| | | |
| | | @ApiModelProperty("营销功能1开2关") |
| | | private Integer marketingFunctionFlag; |
| | | |
| | | @ApiModelProperty("领券1开2关") |
| | | private Integer platformCouponFlag; |
| | | |
| | | @ApiModelProperty("生日卡1开2关") |
| | | private Integer platformBirthdayFlag; |
| | | |
| | | @ApiModelProperty("推荐人") |
| | | private String recommendPerson; |
| | | |
| | | @ApiModelProperty("商户标签id 多个用,隔开") |
| | | private String shopTagIds; |
| | | |
| | | @ApiModelProperty("商户标签") |
| | | private String shopTags; |
| | | |
| | | @ApiModelProperty("关联用户id 多个用,隔开") |
| | | private String relUserIds; |
| | | |
| | | @ApiModelProperty("关联用户") |
| | | private String relUsers; |
| | | |
| | | @ApiModelProperty("商户封面") |
| | | private String shopPicture; |
| | | |
| | | @ApiModelProperty("商户banner 多个用,隔开") |
| | | private String shopBanners; |
| | | |
| | | @ApiModelProperty("证书list") |
| | | private List<ShopCertificate> shopCertificateList; |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.domain.vo; |
| | | |
| | | import com.ruoyi.common.core.utils.StringUtils; |
| | | |
| | | /** |
| | | * 路由显示信息 |
| | | * |
| | | * @author ruoyi |
| | | */ |
| | | public class MetaVo |
| | | { |
| | | /** |
| | | * 设置该路由在侧边栏和面包屑中展示的名字 |
| | | */ |
| | | private String title; |
| | | |
| | | /** |
| | | * 设置该路由的图标,对应路径src/assets/icons/svg |
| | | */ |
| | | private String icon; |
| | | |
| | | /** |
| | | * 设置为true,则不会被 <keep-alive>缓存 |
| | | */ |
| | | private boolean noCache; |
| | | |
| | | /** |
| | | * 内链地址(http(s)://开头) |
| | | */ |
| | | private String link; |
| | | |
| | | public MetaVo() |
| | | { |
| | | } |
| | | |
| | | public MetaVo(String title, String icon) |
| | | { |
| | | this.title = title; |
| | | this.icon = icon; |
| | | } |
| | | |
| | | public MetaVo(String title, String icon, boolean noCache) |
| | | { |
| | | this.title = title; |
| | | this.icon = icon; |
| | | this.noCache = noCache; |
| | | } |
| | | |
| | | public MetaVo(String title, String icon, String link) |
| | | { |
| | | this.title = title; |
| | | this.icon = icon; |
| | | this.link = link; |
| | | } |
| | | |
| | | public MetaVo(String title, String icon, boolean noCache, String link) |
| | | { |
| | | this.title = title; |
| | | this.icon = icon; |
| | | this.noCache = noCache; |
| | | if (StringUtils.ishttp(link)) |
| | | { |
| | | this.link = link; |
| | | } |
| | | } |
| | | |
| | | public boolean isNoCache() |
| | | { |
| | | return noCache; |
| | | } |
| | | |
| | | public void setNoCache(boolean noCache) |
| | | { |
| | | this.noCache = noCache; |
| | | } |
| | | |
| | | public String getTitle() |
| | | { |
| | | return title; |
| | | } |
| | | |
| | | public void setTitle(String title) |
| | | { |
| | | this.title = title; |
| | | } |
| | | |
| | | public String getIcon() |
| | | { |
| | | return icon; |
| | | } |
| | | |
| | | public void setIcon(String icon) |
| | | { |
| | | this.icon = icon; |
| | | } |
| | | |
| | | public String getLink() |
| | | { |
| | | return link; |
| | | } |
| | | |
| | | public void setLink(String link) |
| | | { |
| | | this.link = link; |
| | | } |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.domain.vo; |
| | | |
| | | import com.ruoyi.system.domain.pojo.shop.ShopCertificate; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName MgtShopInfoVo |
| | | * @description: TODO |
| | | * @date 2023年04月21日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class MgtShopInfoVo { |
| | | |
| | | @ApiModelProperty(value = "商户id") |
| | | private Long shopId; |
| | | |
| | | @ApiModelProperty("商户名称") |
| | | private String shopName; |
| | | |
| | | @ApiModelProperty("商户类型1.经销商2.代理商") |
| | | private Integer shopType; |
| | | |
| | | @ApiModelProperty("营业开始时间") |
| | | private String businessStartTime; |
| | | |
| | | @ApiModelProperty("营业结束时间") |
| | | private String businessEndTime; |
| | | |
| | | @ApiModelProperty("店主姓名") |
| | | private String shopownerName; |
| | | |
| | | @ApiModelProperty("店主联系方式") |
| | | private String shopownerPhone; |
| | | |
| | | @ApiModelProperty("签约区域") |
| | | private String signAreaCode; |
| | | |
| | | @ApiModelProperty("商户服务电话") |
| | | private String shopServicePhone; |
| | | |
| | | @ApiModelProperty("管辖员工") |
| | | private Long belongUserId; |
| | | |
| | | @ApiModelProperty("所属经销商") |
| | | private Long belongShopId; |
| | | |
| | | @ApiModelProperty("扶持能力1.有2.没有") |
| | | private Integer supportingCapacityFlag; |
| | | |
| | | @ApiModelProperty("店面操作人数1.1人2.1人以上") |
| | | private Integer operationPersonFlag; |
| | | |
| | | @ApiModelProperty("执行力1.强2.弱") |
| | | private Integer executiveForceFlag; |
| | | |
| | | @ApiModelProperty("格局1.大2.小") |
| | | private Integer patternFlag; |
| | | |
| | | @ApiModelProperty("人脉1.宽2.窄") |
| | | private Integer connectionFlag; |
| | | |
| | | @ApiModelProperty("经济能力1.强2.差") |
| | | private Integer economicAbilityFlag; |
| | | |
| | | @ApiModelProperty("与合作商关系1.好2.差") |
| | | private Integer relationPartner; |
| | | |
| | | @ApiModelProperty("曾从事事业") |
| | | private String businessHistory; |
| | | |
| | | @ApiModelProperty("店铺地址省code") |
| | | private String shopProvinceCode; |
| | | |
| | | @ApiModelProperty("店铺地址市code") |
| | | private String shopCityCode; |
| | | |
| | | @ApiModelProperty("店铺地址区code") |
| | | private String shopAreaCode; |
| | | |
| | | @ApiModelProperty("店铺区域全称") |
| | | private String shopAreaName; |
| | | |
| | | @ApiModelProperty("店铺详细地址") |
| | | private String shopAddress; |
| | | |
| | | @ApiModelProperty("店铺经度") |
| | | private String shopLongitude; |
| | | |
| | | @ApiModelProperty("店铺维度") |
| | | private String shopLatitude; |
| | | |
| | | @ApiModelProperty("店铺详情") |
| | | private String shopDetail; |
| | | |
| | | @ApiModelProperty("营销功能1开2关") |
| | | private Integer marketingFunctionFlag; |
| | | |
| | | @ApiModelProperty("领券1开2关") |
| | | private Integer platformCouponFlag; |
| | | |
| | | @ApiModelProperty("生日卡1开2关") |
| | | private Integer platformBirthdayFlag; |
| | | |
| | | @ApiModelProperty("推荐人") |
| | | private String recommendPerson; |
| | | |
| | | @ApiModelProperty("商户标签id 多个用,隔开") |
| | | private String shopTagIds; |
| | | |
| | | @ApiModelProperty("商户标签") |
| | | private String shopTags; |
| | | |
| | | @ApiModelProperty("关联用户id 多个用,隔开") |
| | | private String relUserIds; |
| | | |
| | | @ApiModelProperty("关联用户") |
| | | private String relUsers; |
| | | |
| | | @ApiModelProperty("商户封面") |
| | | private String shopPicture; |
| | | |
| | | @ApiModelProperty("商户banner 多个用,隔开") |
| | | private String shopBanners; |
| | | |
| | | @ApiModelProperty("证书list") |
| | | private List<ShopCertificate> shopCertificateList; |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.domain.vo; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | import java.math.BigDecimal; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName MgtShopPageVo |
| | | * @description: TODO |
| | | * @date 2023年04月21日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class MgtShopPageVo { |
| | | |
| | | @ApiModelProperty(value = "商户id") |
| | | private Long shopId; |
| | | |
| | | @ApiModelProperty("签约时间") |
| | | private String signTime; |
| | | |
| | | @ApiModelProperty("商户名称") |
| | | private String shopName; |
| | | |
| | | @ApiModelProperty("商户编号") |
| | | private String shopNumber; |
| | | |
| | | @ApiModelProperty("商户标签") |
| | | private String shopTags; |
| | | |
| | | @ApiModelProperty("签约人") |
| | | private String signUser; |
| | | |
| | | @ApiModelProperty("首提金额") |
| | | private BigDecimal firstWithdraw; |
| | | |
| | | @ApiModelProperty("关联员工") |
| | | private BigDecimal belongUser; |
| | | |
| | | @ApiModelProperty("关联部门") |
| | | private BigDecimal belongDept; |
| | | |
| | | @ApiModelProperty("来源渠道") |
| | | private String shopSource; |
| | | |
| | | @ApiModelProperty("签约区域") |
| | | private String signAreaName; |
| | | |
| | | @ApiModelProperty("合作期限") |
| | | private String cooperationTime; |
| | | |
| | | @ApiModelProperty("店铺地址") |
| | | private String shopAddress; |
| | | |
| | | @ApiModelProperty("店主姓名") |
| | | private String shopownerName; |
| | | |
| | | @ApiModelProperty("店主联系方式") |
| | | private String shopownerPhone; |
| | | |
| | | @ApiModelProperty("商户状态-1删除0冻结1正常2终止合作") |
| | | private Integer shopStatus; |
| | | |
| | | @ApiModelProperty("商户活动次数") |
| | | private Integer shopActivityCount; |
| | | |
| | | @ApiModelProperty("店铺设置状态") |
| | | private String shopCustomStatus; |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.domain.vo; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName MgtShopTagVo |
| | | * @description: TODO |
| | | * @date 2023年04月21日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class MgtShopTagVo { |
| | | |
| | | @ApiModelProperty(value = "标签id") |
| | | private Long tagId; |
| | | |
| | | @ApiModelProperty(value = "标签名称") |
| | | private String tagName; |
| | | |
| | | @ApiModelProperty(value = "是否选择0否1是") |
| | | private Integer selectFlag; |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.domain.vo; |
| | | |
| | | import com.fasterxml.jackson.annotation.JsonInclude; |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * 路由配置信息 |
| | | * |
| | | * @author ruoyi |
| | | */ |
| | | @JsonInclude(JsonInclude.Include.NON_EMPTY) |
| | | public class RouterVo |
| | | { |
| | | /** |
| | | * 路由名字 |
| | | */ |
| | | private String name; |
| | | |
| | | /** |
| | | * 路由地址 |
| | | */ |
| | | private String path; |
| | | |
| | | /** |
| | | * 是否隐藏路由,当设置 true 的时候该路由不会再侧边栏出现 |
| | | */ |
| | | private boolean hidden; |
| | | |
| | | /** |
| | | * 重定向地址,当设置 noRedirect 的时候该路由在面包屑导航中不可被点击 |
| | | */ |
| | | private String redirect; |
| | | |
| | | /** |
| | | * 组件地址 |
| | | */ |
| | | private String component; |
| | | |
| | | /** |
| | | * 路由参数:如 {"id": 1, "name": "ry"} |
| | | */ |
| | | private String query; |
| | | |
| | | /** |
| | | * 当你一个路由下面的 children 声明的路由大于1个时,自动会变成嵌套的模式--如组件页面 |
| | | */ |
| | | private Boolean alwaysShow; |
| | | |
| | | /** |
| | | * 其他元素 |
| | | */ |
| | | private MetaVo meta; |
| | | |
| | | /** |
| | | * 子路由 |
| | | */ |
| | | private List<RouterVo> children; |
| | | |
| | | public String getName() |
| | | { |
| | | return name; |
| | | } |
| | | |
| | | public void setName(String name) |
| | | { |
| | | this.name = name; |
| | | } |
| | | |
| | | public String getPath() |
| | | { |
| | | return path; |
| | | } |
| | | |
| | | public void setPath(String path) |
| | | { |
| | | this.path = path; |
| | | } |
| | | |
| | | public boolean getHidden() |
| | | { |
| | | return hidden; |
| | | } |
| | | |
| | | public void setHidden(boolean hidden) |
| | | { |
| | | this.hidden = hidden; |
| | | } |
| | | |
| | | public String getRedirect() |
| | | { |
| | | return redirect; |
| | | } |
| | | |
| | | public void setRedirect(String redirect) |
| | | { |
| | | this.redirect = redirect; |
| | | } |
| | | |
| | | public String getComponent() |
| | | { |
| | | return component; |
| | | } |
| | | |
| | | public void setComponent(String component) |
| | | { |
| | | this.component = component; |
| | | } |
| | | |
| | | public String getQuery() |
| | | { |
| | | return query; |
| | | } |
| | | |
| | | public void setQuery(String query) |
| | | { |
| | | this.query = query; |
| | | } |
| | | |
| | | public Boolean getAlwaysShow() |
| | | { |
| | | return alwaysShow; |
| | | } |
| | | |
| | | public void setAlwaysShow(Boolean alwaysShow) |
| | | { |
| | | this.alwaysShow = alwaysShow; |
| | | } |
| | | |
| | | public MetaVo getMeta() |
| | | { |
| | | return meta; |
| | | } |
| | | |
| | | public void setMeta(MetaVo meta) |
| | | { |
| | | this.meta = meta; |
| | | } |
| | | |
| | | public List<RouterVo> getChildren() |
| | | { |
| | | return children; |
| | | } |
| | | |
| | | public void setChildren(List<RouterVo> children) |
| | | { |
| | | this.children = children; |
| | | } |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.domain.vo; |
| | | |
| | | import java.io.Serializable; |
| | | import java.util.List; |
| | | import java.util.stream.Collectors; |
| | | import com.fasterxml.jackson.annotation.JsonInclude; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysDept; |
| | | import com.ruoyi.system.domain.pojo.sys.SysMenu; |
| | | |
| | | /** |
| | | * Treeselect树结构实体类 |
| | | * |
| | | * @author ruoyi |
| | | */ |
| | | public class TreeSelect implements Serializable |
| | | { |
| | | private static final long serialVersionUID = 1L; |
| | | |
| | | /** 节点ID */ |
| | | private Long id; |
| | | |
| | | /** 节点名称 */ |
| | | private String label; |
| | | |
| | | /** 子节点 */ |
| | | @JsonInclude(JsonInclude.Include.NON_EMPTY) |
| | | private List<TreeSelect> children; |
| | | |
| | | public TreeSelect() |
| | | { |
| | | |
| | | } |
| | | |
| | | public TreeSelect(SysDept dept) |
| | | { |
| | | this.id = dept.getDeptId(); |
| | | this.label = dept.getDeptName(); |
| | | this.children = dept.getChildren().stream().map(TreeSelect::new).collect(Collectors.toList()); |
| | | } |
| | | |
| | | public TreeSelect(SysMenu menu) |
| | | { |
| | | this.id = menu.getMenuId(); |
| | | this.label = menu.getMenuName(); |
| | | this.children = menu.getChildren().stream().map(TreeSelect::new).collect(Collectors.toList()); |
| | | } |
| | | |
| | | public Long getId() |
| | | { |
| | | return id; |
| | | } |
| | | |
| | | public void setId(Long id) |
| | | { |
| | | this.id = id; |
| | | } |
| | | |
| | | public String getLabel() |
| | | { |
| | | return label; |
| | | } |
| | | |
| | | public void setLabel(String label) |
| | | { |
| | | this.label = label; |
| | | } |
| | | |
| | | public List<TreeSelect> getChildren() |
| | | { |
| | | return children; |
| | | } |
| | | |
| | | public void setChildren(List<TreeSelect> children) |
| | | { |
| | | this.children = children; |
| | | } |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.mapper.goods; |
| | | |
| | | import com.ruoyi.order.domain.pojo.goods.GoodsFile; |
| | | import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
| | | |
| | | /** |
| | | * <p> |
| | | * 商品图片 Mapper 接口 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | public interface GoodsFileMapper extends BaseMapper<GoodsFile> { |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.mapper.goods; |
| | | |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.ruoyi.order.domain.vo.AppSimpleActivityGoodsVo; |
| | | import com.ruoyi.order.domain.vo.AppSimpleGoodsVo; |
| | | import com.ruoyi.order.domain.dto.AppSearchGoodsPageDto; |
| | | import com.ruoyi.order.domain.dto.AppShopGoodsPageDto; |
| | | import com.ruoyi.order.domain.pojo.goods.Goods; |
| | | import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
| | | import org.apache.ibatis.annotations.Param; |
| | | |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * <p> |
| | | * 商品表 Mapper 接口 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | public interface GoodsMapper extends BaseMapper<Goods> { |
| | | /** |
| | | * 获取推荐商品列表 |
| | | * @param page |
| | | * @return |
| | | */ |
| | | List<AppSimpleGoodsVo> pageRecommendGoods(Page page, @Param("shopId")Long shopId); |
| | | |
| | | /** |
| | | * 获取商城商品列表 |
| | | * @param page |
| | | * @param appShopGoodsPageDto |
| | | * @return |
| | | */ |
| | | List<AppSimpleGoodsVo> pageShopGoods(Page page, @Param("param") AppShopGoodsPageDto appShopGoodsPageDto); |
| | | |
| | | /** |
| | | * 获取搜索商品列表 |
| | | * @param page |
| | | * @param appSearchGoodsPageDto |
| | | * @return |
| | | */ |
| | | List<AppSimpleGoodsVo> pageSearchGoods(Page page, @Param("param") AppSearchGoodsPageDto appSearchGoodsPageDto); |
| | | |
| | | /** |
| | | * 获取搜索商品列表 |
| | | * @param page |
| | | * @param appSearchGoodsPageDto |
| | | * @return |
| | | */ |
| | | List<AppSimpleActivityGoodsVo> pageSearchActivityGoods(Page page, @Param("param")AppSearchGoodsPageDto appSearchGoodsPageDto); |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.mapper.goods; |
| | | |
| | | import com.ruoyi.order.domain.pojo.goods.GoodsRelNurse; |
| | | import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
| | | |
| | | /** |
| | | * <p> |
| | | * 商品调理问题 Mapper 接口 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | public interface GoodsRelNurseMapper extends BaseMapper<GoodsRelNurse> { |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.mapper.goods; |
| | | |
| | | import com.ruoyi.order.domain.pojo.goods.GoodsRelTag; |
| | | import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
| | | |
| | | /** |
| | | * <p> |
| | | * 商品标签 Mapper 接口 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | public interface GoodsRelTagMapper extends BaseMapper<GoodsRelTag> { |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.mapper.goods; |
| | | |
| | | import com.ruoyi.order.domain.pojo.goods.GoodsTotal; |
| | | import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
| | | |
| | | /** |
| | | * <p> |
| | | * 商品统计 Mapper 接口 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | public interface GoodsTotalMapper extends BaseMapper<GoodsTotal> { |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.mapper.order; |
| | | |
| | | import com.ruoyi.order.domain.pojo.order.ConsumerGoods; |
| | | import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
| | | |
| | | /** |
| | | * <p> |
| | | * 服务 Mapper 接口 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | public interface ConsumerGoodsMapper extends BaseMapper<ConsumerGoods> { |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.mapper.order; |
| | | |
| | | import com.ruoyi.order.domain.pojo.order.OrderGoods; |
| | | import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
| | | |
| | | /** |
| | | * <p> |
| | | * 订单商品 Mapper 接口 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | public interface OrderGoodsMapper extends BaseMapper<OrderGoods> { |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.mapper.order; |
| | | |
| | | import com.ruoyi.order.domain.pojo.order.Order; |
| | | import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
| | | |
| | | /** |
| | | * <p> |
| | | * 订单 Mapper 接口 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | public interface OrderMapper extends BaseMapper<Order> { |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.mapper.order; |
| | | |
| | | import com.ruoyi.order.domain.pojo.order.ShoppingCart; |
| | | import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
| | | |
| | | /** |
| | | * <p> |
| | | * 购物车 Mapper 接口 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | public interface ShoppingCartMapper extends BaseMapper<ShoppingCart> { |
| | | |
| | | /** |
| | | * 批量删除 |
| | | * @param ids |
| | | */ |
| | | void deleteShoppingCartByIds(String ids); |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.mapper.order; |
| | | |
| | | import com.ruoyi.order.domain.pojo.order.UserServiceRecord; |
| | | import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
| | | |
| | | /** |
| | | * <p> |
| | | * 服务记录 Mapper 接口 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | public interface UserServiceRecordMapper extends BaseMapper<UserServiceRecord> { |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.service.goods; |
| | | |
| | | import com.ruoyi.order.domain.pojo.goods.GoodsFile; |
| | | import com.baomidou.mybatisplus.extension.service.IService; |
| | | |
| | | /** |
| | | * <p> |
| | | * 商品图片 服务类 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | public interface GoodsFileService extends IService<GoodsFile> { |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.service.goods; |
| | | |
| | | import com.ruoyi.order.domain.pojo.goods.GoodsRelNurse; |
| | | import com.baomidou.mybatisplus.extension.service.IService; |
| | | |
| | | /** |
| | | * <p> |
| | | * 商品调理问题 服务类 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | public interface GoodsRelNurseService extends IService<GoodsRelNurse> { |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.service.goods; |
| | | |
| | | import com.ruoyi.order.domain.pojo.goods.GoodsRelTag; |
| | | import com.baomidou.mybatisplus.extension.service.IService; |
| | | |
| | | /** |
| | | * <p> |
| | | * 商品标签 服务类 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | public interface GoodsRelTagService extends IService<GoodsRelTag> { |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.service.goods; |
| | | |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.ruoyi.order.domain.vo.AppGoodsInfoVo; |
| | | import com.ruoyi.order.domain.vo.AppSimpleActivityGoodsVo; |
| | | import com.ruoyi.order.domain.vo.AppSimpleGoodsVo; |
| | | import com.ruoyi.order.domain.dto.AppGoodsInfoGetDto; |
| | | import com.ruoyi.order.domain.dto.AppSearchGoodsPageDto; |
| | | import com.ruoyi.order.domain.dto.AppShopGoodsPageDto; |
| | | import com.ruoyi.order.domain.pojo.goods.Goods; |
| | | import com.baomidou.mybatisplus.extension.service.IService; |
| | | |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * <p> |
| | | * 商品表 服务类 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | public interface GoodsService extends IService<Goods> { |
| | | /** |
| | | * 获取推荐商品列表 |
| | | * @param page |
| | | * @return |
| | | */ |
| | | List<AppSimpleGoodsVo> pageRecommendGoods(Page page, Long shopId); |
| | | |
| | | /** |
| | | * 获取商城商品列表 |
| | | * @param page |
| | | * @param appShopGoodsPageDto |
| | | * @return |
| | | */ |
| | | List<AppSimpleGoodsVo> pageShopGoods(Page page, AppShopGoodsPageDto appShopGoodsPageDto); |
| | | |
| | | /** |
| | | * 获取搜索商品列表 |
| | | * @param page |
| | | * @param appSearchGoodsPageDto |
| | | * @return |
| | | */ |
| | | List<AppSimpleGoodsVo> pageSearchGoods(Page page, AppSearchGoodsPageDto appSearchGoodsPageDto); |
| | | |
| | | /** |
| | | * 获取搜索商品列表 |
| | | * @param page |
| | | * @param appSearchGoodsPageDto |
| | | * @return |
| | | */ |
| | | List<AppSimpleActivityGoodsVo> pageSearchActivityGoods(Page page, AppSearchGoodsPageDto appSearchGoodsPageDto); |
| | | |
| | | /** |
| | | * 获取商品详情 |
| | | * @param appGoodsInfoGetDto |
| | | * @return |
| | | */ |
| | | AppGoodsInfoVo getGoodsInfo(AppGoodsInfoGetDto appGoodsInfoGetDto); |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.service.goods; |
| | | |
| | | import com.ruoyi.order.domain.pojo.goods.GoodsTotal; |
| | | import com.baomidou.mybatisplus.extension.service.IService; |
| | | |
| | | /** |
| | | * <p> |
| | | * 商品统计 服务类 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | public interface GoodsTotalService extends IService<GoodsTotal> { |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.service.order; |
| | | |
| | | import com.ruoyi.order.domain.pojo.order.ConsumerGoods; |
| | | import com.baomidou.mybatisplus.extension.service.IService; |
| | | |
| | | /** |
| | | * <p> |
| | | * 服务 服务类 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | public interface ConsumerGoodsService extends IService<ConsumerGoods> { |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.service.order; |
| | | |
| | | import com.ruoyi.order.domain.pojo.order.OrderGoods; |
| | | import com.baomidou.mybatisplus.extension.service.IService; |
| | | |
| | | /** |
| | | * <p> |
| | | * 订单商品 服务类 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | public interface OrderGoodsService extends IService<OrderGoods> { |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.service.order; |
| | | |
| | | import com.ruoyi.order.domain.pojo.order.Order; |
| | | import com.baomidou.mybatisplus.extension.service.IService; |
| | | |
| | | /** |
| | | * <p> |
| | | * 订单 服务类 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | public interface OrderService extends IService<Order> { |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.service.order; |
| | | |
| | | import com.ruoyi.order.domain.dto.AppBaseBathDto; |
| | | import com.ruoyi.order.domain.dto.AppShoppingCartAddDto; |
| | | import com.ruoyi.order.domain.dto.AppShoppingCartChangeDto; |
| | | import com.ruoyi.order.domain.pojo.order.ShoppingCart; |
| | | import com.baomidou.mybatisplus.extension.service.IService; |
| | | |
| | | /** |
| | | * <p> |
| | | * 购物车 服务类 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | public interface ShoppingCartService extends IService<ShoppingCart> { |
| | | |
| | | /** |
| | | * 添加购物车 |
| | | * @param appShoppingCartAddDto |
| | | */ |
| | | void addShoppingCart(AppShoppingCartAddDto appShoppingCartAddDto); |
| | | |
| | | /** |
| | | * 修改购物车数量 |
| | | * @param appShoppingCartChangeDto |
| | | */ |
| | | void changeShoppingCart(AppShoppingCartChangeDto appShoppingCartChangeDto); |
| | | |
| | | /** |
| | | * 删除购物车 |
| | | * @param appBaseBathDto |
| | | */ |
| | | void deleteShoppingCart(AppBaseBathDto appBaseBathDto); |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.service.order; |
| | | |
| | | import com.ruoyi.order.domain.pojo.order.UserServiceRecord; |
| | | import com.baomidou.mybatisplus.extension.service.IService; |
| | | |
| | | /** |
| | | * <p> |
| | | * 服务记录 服务类 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | public interface UserServiceRecordService extends IService<UserServiceRecord> { |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.util; |
| | | |
| | | |
| | | |
| | | import com.ruoyi.common.core.utils.DateUtils; |
| | | |
| | | import java.security.SecureRandom; |
| | | import java.util.Date; |
| | | import java.util.Random; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName CodeFactoryUtil |
| | | * @description: TODO |
| | | * @date 2023年02月13日 |
| | | * @version: 1.0 |
| | | */ |
| | | public class CodeFactoryUtil { |
| | | |
| | | /** |
| | | * APP用户编码 |
| | | */ |
| | | private static final String APP_USER_PREFIX = "HRT_M"; |
| | | |
| | | /** |
| | | * 商户编号 |
| | | */ |
| | | private static final String SHOP_PREFIX = "HRT_S"; |
| | | |
| | | /** |
| | | * 订单前缀 |
| | | */ |
| | | private static final String ORDER_PREFIX = "BO"; |
| | | |
| | | /** |
| | | * 退款订单前缀 |
| | | */ |
| | | private static final String ORDER_REFUND_PREFIX = "RO"; |
| | | |
| | | /** |
| | | * 用户id和随机数总长度 |
| | | */ |
| | | |
| | | private static final int maxLength = 4; |
| | | |
| | | /** |
| | | * 更具id进行加密+加随机数组成固定长度编码 |
| | | */ |
| | | |
| | | public static void main(String[] args) { |
| | | Long orderId = 1L; |
| | | String userNo = getShopNo(orderId); |
| | | System.out.println(userNo); |
| | | } |
| | | |
| | | /** |
| | | * 获取商户编号 |
| | | * |
| | | * @param shopId |
| | | * @return |
| | | */ |
| | | public static String getShopNo(Long shopId) { |
| | | String prefix = SHOP_PREFIX; |
| | | return toFillZeroCode(prefix, maxLength, shopId); |
| | | } |
| | | |
| | | /** |
| | | * 获取会员编号 |
| | | * @param userId |
| | | * @return |
| | | */ |
| | | public static String getMemberNo(Long userId) { |
| | | String prefix = APP_USER_PREFIX; |
| | | return toFillZeroCode(prefix, maxLength, userId); |
| | | } |
| | | |
| | | /** |
| | | * 获取订单编号 |
| | | * |
| | | * @param userId |
| | | * @return |
| | | */ |
| | | public static String getOrderNo(Long userId) { |
| | | |
| | | String prefix = DateUtils.parseDateToStr( "yyyyMMddHHmmss",new Date()); |
| | | prefix = ORDER_PREFIX + prefix; |
| | | return toFillZeroCode(prefix, maxLength, userId); |
| | | } |
| | | |
| | | |
| | | |
| | | /** |
| | | * 获取用户编号 |
| | | * |
| | | * @param userId |
| | | * @return |
| | | */ |
| | | public static String getAppUserNo(Long userId) { |
| | | return toFillZeroCode(APP_USER_PREFIX, 9, userId); |
| | | } |
| | | |
| | | /** |
| | | * 0补位 |
| | | * |
| | | * @param prefix |
| | | * @param totalLength |
| | | * @param id |
| | | * @return |
| | | */ |
| | | private static String toFillZeroCode(String prefix, int totalLength, Long id) { |
| | | String idStr = id.toString(); |
| | | int length = idStr.length(); |
| | | |
| | | int fillLength = totalLength - length; |
| | | StringBuilder idsbs = new StringBuilder(prefix); |
| | | for (int i = 0; i < fillLength; i++) { |
| | | idsbs.append("0"); |
| | | } |
| | | return idsbs.append(idStr).toString(); |
| | | } |
| | | |
| | | /** |
| | | * 随机6位数生成 |
| | | */ |
| | | public static String getRandStr(int num) { |
| | | // 默认6位 |
| | | num = num != 0 ? num : 6; |
| | | Random r = new SecureRandom(); |
| | | StringBuffer str = new StringBuffer(); |
| | | int i = 0; |
| | | while (i < num) { |
| | | str.append(r.nextInt(10)); |
| | | i++; |
| | | } |
| | | return str.toString(); |
| | | } |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.util; |
| | | |
| | | import java.io.UnsupportedEncodingException; |
| | | import java.net.URLDecoder; |
| | | import java.net.URLEncoder; |
| | | import java.util.regex.Matcher; |
| | | import java.util.regex.Pattern; |
| | | |
| | | public class EmojiUtil { |
| | | /** |
| | | * 编码 |
| | | * |
| | | * @param str 待转换字符串 |
| | | * @return 转换后字符串 |
| | | * @throws UnsupportedEncodingException exception |
| | | * @Description 将字符串中的emoji表情转换成可以在utf-8字符集数据库中保存的格式(表情占4个字节,需要utf8mb4字符集) |
| | | */ |
| | | public static String emojiEncode(String str) |
| | | throws UnsupportedEncodingException { |
| | | String patternString = "([\\x{10000}-\\x{10ffff}\ud800-\udfff])"; |
| | | |
| | | Pattern pattern = Pattern.compile(patternString); |
| | | Matcher matcher = pattern.matcher(str); |
| | | StringBuffer sb = new StringBuffer(); |
| | | while (matcher.find()) { |
| | | try { |
| | | matcher.appendReplacement( |
| | | sb, |
| | | "[[" |
| | | + URLEncoder.encode(matcher.group(1), |
| | | "UTF-8") + "]]"); |
| | | } catch (UnsupportedEncodingException e) { |
| | | // LOG.error("emojiConvert error", e); |
| | | throw e; |
| | | } |
| | | } |
| | | matcher.appendTail(sb); |
| | | // LOG.debug("emojiConvert " + str + " to " + sb.toString() |
| | | // + ", len:" + sb.length()); |
| | | return sb.toString(); |
| | | } |
| | | |
| | | /** |
| | | * 解码 |
| | | * |
| | | * @param str 转换后的字符串 |
| | | * @return 转换前的字符串 |
| | | * @throws UnsupportedEncodingException exception |
| | | * @Description 还原utf8数据库中保存的含转换后emoji表情的字符串 |
| | | */ |
| | | public static String emojiDecode(String str) |
| | | throws UnsupportedEncodingException { |
| | | String patternString = "\\[\\[(.*?)\\]\\]"; |
| | | |
| | | Pattern pattern = Pattern.compile(patternString); |
| | | if (str == null) { |
| | | return str; |
| | | } |
| | | Matcher matcher = pattern.matcher(str); |
| | | |
| | | StringBuffer sb = new StringBuffer(); |
| | | while (matcher.find()) { |
| | | try { |
| | | matcher.appendReplacement(sb, |
| | | URLDecoder.decode(matcher.group(1), "UTF-8")); |
| | | } catch (UnsupportedEncodingException e) { |
| | | // LOG.error("emojiRecovery error", e); |
| | | throw e; |
| | | } |
| | | } |
| | | matcher.appendTail(sb); |
| | | // LOG.debug("emojiRecovery " + str + " to " + sb.toString()); |
| | | // System.out.println("emojiRecovery " + str + " to " + sb.toString()); |
| | | return sb.toString(); |
| | | } |
| | | |
| | | /** |
| | | * @param str 待过滤字符串 |
| | | * @return 过滤后字符串 |
| | | * exception |
| | | * @Description 将字符串中的emoji表情过滤掉 |
| | | */ |
| | | public static String emojiSub(String str) { |
| | | String patternString = "([\\x{10000}-\\x{10ffff}\ud800-\udfff])"; |
| | | Pattern pattern = Pattern.compile(patternString); |
| | | Matcher matcher = pattern.matcher(str); |
| | | StringBuffer sb = new StringBuffer(); |
| | | while (matcher.find()) { |
| | | matcher.appendReplacement(sb, ""); |
| | | } |
| | | matcher.appendTail(sb); |
| | | return sb.toString(); |
| | | } |
| | | |
| | | } |
New file |
| | |
| | | <?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.ruoyi.order.mapper.goods.GoodsFileMapper"> |
| | | |
| | | <resultMap type="GoodsFile" id="GoodsFileResult"> |
| | | <result property="id" column="id" /> |
| | | <result property="delFlag" column="del_flag" /> |
| | | <result property="goodsId" column="goods_id" /> |
| | | <result property="fileType" column="file_type" /> |
| | | <result property="fileUrl" column="file_url" /> |
| | | </resultMap> |
| | | |
| | | <sql id="selectGoodsFileVo"> |
| | | select id, del_flag, goods_id, file_type, file_url from t_goods_file |
| | | </sql> |
| | | |
| | | <select id="selectGoodsFileList" parameterType="GoodsFile" resultMap="GoodsFileResult"> |
| | | <include refid="selectGoodsFileVo"/> |
| | | <where> |
| | | <if test="goodsId != null and goodsId != ''"> and goods_id = #{goodsId}</if> |
| | | <if test="fileType != null "> and file_type = #{fileType}</if> |
| | | <if test="fileUrl != null and fileUrl != ''"> and file_url = #{fileUrl}</if> |
| | | </where> |
| | | </select> |
| | | |
| | | <select id="selectGoodsFileById" parameterType="Long" resultMap="GoodsFileResult"> |
| | | <include refid="selectGoodsFileVo"/> |
| | | where id = #{id} |
| | | </select> |
| | | |
| | | <insert id="insertGoodsFile" parameterType="GoodsFile" useGeneratedKeys="true" keyProperty="id"> |
| | | insert into t_goods_file |
| | | <trim prefix="(" suffix=")" suffixOverrides=","> |
| | | <if test="delFlag != null">del_flag,</if> |
| | | <if test="goodsId != null">goods_id,</if> |
| | | <if test="fileType != null">file_type,</if> |
| | | <if test="fileUrl != null">file_url,</if> |
| | | </trim> |
| | | <trim prefix="values (" suffix=")" suffixOverrides=","> |
| | | <if test="delFlag != null">#{delFlag},</if> |
| | | <if test="goodsId != null">#{goodsId},</if> |
| | | <if test="fileType != null">#{fileType},</if> |
| | | <if test="fileUrl != null">#{fileUrl},</if> |
| | | </trim> |
| | | </insert> |
| | | |
| | | <update id="updateGoodsFile" parameterType="GoodsFile"> |
| | | update t_goods_file |
| | | <trim prefix="SET" suffixOverrides=","> |
| | | <if test="delFlag != null">del_flag = #{delFlag},</if> |
| | | <if test="goodsId != null">goods_id = #{goodsId},</if> |
| | | <if test="fileType != null">file_type = #{fileType},</if> |
| | | <if test="fileUrl != null">file_url = #{fileUrl},</if> |
| | | </trim> |
| | | where id = #{id} |
| | | </update> |
| | | |
| | | <delete id="deleteGoodsFileById" parameterType="Long"> |
| | | delete from t_goods_file where id = #{id} |
| | | </delete> |
| | | |
| | | <delete id="deleteGoodsFileByIds" parameterType="String"> |
| | | delete from t_goods_file where id in |
| | | <foreach item="id" collection="array" open="(" separator="," close=")"> |
| | | #{id} |
| | | </foreach> |
| | | </delete> |
| | | |
| | | </mapper> |
New file |
| | |
| | | <?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.ruoyi.order.mapper.goods.GoodsMapper"> |
| | | |
| | | <resultMap type="Goods" id="GoodsResult"> |
| | | <result property="goodsId" column="goods_id" /> |
| | | <result property="delFlag" column="del_flag" /> |
| | | <result property="goodsStatus" column="goods_status" /> |
| | | <result property="goodsType" column="goods_type" /> |
| | | <result property="createTime" column="create_time" /> |
| | | <result property="createUserId" column="create_user_id" /> |
| | | <result property="updateime" column="update_time" /> |
| | | <result property="updateUserId" column="update_user_id" /> |
| | | <result property="goodsClassId" column="goods_class_id" /> |
| | | <result property="goodsName" column="goods_name" /> |
| | | <result property="cycleNumFlag" column="cycle_num_flag" /> |
| | | <result property="serviceNum" column="service_num" /> |
| | | <result property="goodsIntroduction" column="goods_introduction" /> |
| | | <result property="salesPrice" column="sales_price" /> |
| | | <result property="mininumPrice" column="mininum_price" /> |
| | | <result property="subscriptionFlag" column="subscription_flag" /> |
| | | <result property="subscription" column="subscription" /> |
| | | <result property="goodsDetail" column="goods_detail" /> |
| | | <result property="recommendFlag" column="recommend_flag" /> |
| | | <result property="goodsNurses" column="goods_nurses" /> |
| | | <result property="goodsTags" column="goods_tags" /> |
| | | </resultMap> |
| | | |
| | | <sql id="selectGoodsVo"> |
| | | select goods_id, del_flag, goods_status, goods_type, create_time, create_user_id, update_time, update_user_id, goods_class_id, goods_name, cycle_num_flag, service_num, goods_introduction, sales_price, mininum_price, subscription_flag, subscription, goods_detail, recommend_flag, goods_nurses, goods_tags from t_goods |
| | | </sql> |
| | | |
| | | <select id="selectGoodsList" parameterType="Goods" resultMap="GoodsResult"> |
| | | <include refid="selectGoodsVo"/> |
| | | <where> |
| | | <if test="goodsStatus != null "> and goods_status = #{goodsStatus}</if> |
| | | <if test="goodsType != null "> and goods_type = #{goodsType}</if> |
| | | <if test="createUserId != null "> and create_user_id = #{createUserId}</if> |
| | | <if test="updateUserId != null "> and update_user_id = #{updateUserId}</if> |
| | | <if test="goodsClassId != null "> and goods_class_id = #{goodsClassId}</if> |
| | | <if test="goodsName != null and goodsName != ''"> and goods_name like concat('%', #{goodsName}, '%')</if> |
| | | <if test="cycleNumFlag != null "> and cycle_num_flag = #{cycleNumFlag}</if> |
| | | <if test="serviceNum != null "> and service_num = #{serviceNum}</if> |
| | | <if test="goodsIntroduction != null and goodsIntroduction != ''"> and goods_introduction = #{goodsIntroduction}</if> |
| | | <if test="salesPrice != null "> and sales_price = #{salesPrice}</if> |
| | | <if test="mininumPrice != null "> and mininum_price = #{mininumPrice}</if> |
| | | <if test="subscriptionFlag != null "> and subscription_flag = #{subscriptionFlag}</if> |
| | | <if test="subscription != null "> and subscription = #{subscription}</if> |
| | | <if test="goodsDetail != null and goodsDetail != ''"> and goods_detail = #{goodsDetail}</if> |
| | | <if test="recommendFlag != null "> and recommend_flag = #{recommendFlag}</if> |
| | | <if test="goodsNurses != null and goodsNurses != ''"> and goods_nurses = #{goodsNurses}</if> |
| | | <if test="goodsTags != null and goodsTags != ''"> and goods_tags = #{goodsTags}</if> |
| | | </where> |
| | | </select> |
| | | |
| | | <select id="selectGoodsByGoodsId" parameterType="String" resultMap="GoodsResult"> |
| | | <include refid="selectGoodsVo"/> |
| | | where goods_id = #{goodsId} |
| | | </select> |
| | | |
| | | <insert id="insertGoods" parameterType="Goods"> |
| | | insert into t_goods |
| | | <trim prefix="(" suffix=")" suffixOverrides=","> |
| | | <if test="goodsId != null">goods_id,</if> |
| | | <if test="delFlag != null">del_flag,</if> |
| | | <if test="goodsStatus != null">goods_status,</if> |
| | | <if test="goodsType != null">goods_type,</if> |
| | | <if test="createTime != null">create_time,</if> |
| | | <if test="createUserId != null">create_user_id,</if> |
| | | <if test="updateime != null">update_time,</if> |
| | | <if test="updateUserId != null">update_user_id,</if> |
| | | <if test="goodsClassId != null">goods_class_id,</if> |
| | | <if test="goodsName != null">goods_name,</if> |
| | | <if test="cycleNumFlag != null">cycle_num_flag,</if> |
| | | <if test="serviceNum != null">service_num,</if> |
| | | <if test="goodsIntroduction != null">goods_introduction,</if> |
| | | <if test="salesPrice != null">sales_price,</if> |
| | | <if test="mininumPrice != null">mininum_price,</if> |
| | | <if test="subscriptionFlag != null">subscription_flag,</if> |
| | | <if test="subscription != null">subscription,</if> |
| | | <if test="goodsDetail != null">goods_detail,</if> |
| | | <if test="recommendFlag != null">recommend_flag,</if> |
| | | <if test="goodsNurses != null">goods_nurses,</if> |
| | | <if test="goodsTags != null">goods_tags,</if> |
| | | </trim> |
| | | <trim prefix="values (" suffix=")" suffixOverrides=","> |
| | | <if test="goodsId != null">#{goodsId},</if> |
| | | <if test="delFlag != null">#{delFlag},</if> |
| | | <if test="goodsStatus != null">#{goodsStatus},</if> |
| | | <if test="goodsType != null">#{goodsType},</if> |
| | | <if test="createTime != null">#{createTime},</if> |
| | | <if test="createUserId != null">#{createUserId},</if> |
| | | <if test="updateime != null">#{updateime},</if> |
| | | <if test="updateUserId != null">#{updateUserId},</if> |
| | | <if test="goodsClassId != null">#{goodsClassId},</if> |
| | | <if test="goodsName != null">#{goodsName},</if> |
| | | <if test="cycleNumFlag != null">#{cycleNumFlag},</if> |
| | | <if test="serviceNum != null">#{serviceNum},</if> |
| | | <if test="goodsIntroduction != null">#{goodsIntroduction},</if> |
| | | <if test="salesPrice != null">#{salesPrice},</if> |
| | | <if test="mininumPrice != null">#{mininumPrice},</if> |
| | | <if test="subscriptionFlag != null">#{subscriptionFlag},</if> |
| | | <if test="subscription != null">#{subscription},</if> |
| | | <if test="goodsDetail != null">#{goodsDetail},</if> |
| | | <if test="recommendFlag != null">#{recommendFlag},</if> |
| | | <if test="goodsNurses != null">#{goodsNurses},</if> |
| | | <if test="goodsTags != null">#{goodsTags},</if> |
| | | </trim> |
| | | </insert> |
| | | |
| | | <update id="updateGoods" parameterType="Goods"> |
| | | update t_goods |
| | | <trim prefix="SET" suffixOverrides=","> |
| | | <if test="delFlag != null">del_flag = #{delFlag},</if> |
| | | <if test="goodsStatus != null">goods_status = #{goodsStatus},</if> |
| | | <if test="goodsType != null">goods_type = #{goodsType},</if> |
| | | <if test="createTime != null">create_time = #{createTime},</if> |
| | | <if test="createUserId != null">create_user_id = #{createUserId},</if> |
| | | <if test="updateime != null">update_time = #{updateime},</if> |
| | | <if test="updateUserId != null">update_user_id = #{updateUserId},</if> |
| | | <if test="goodsClassId != null">goods_class_id = #{goodsClassId},</if> |
| | | <if test="goodsName != null">goods_name = #{goodsName},</if> |
| | | <if test="cycleNumFlag != null">cycle_num_flag = #{cycleNumFlag},</if> |
| | | <if test="serviceNum != null">service_num = #{serviceNum},</if> |
| | | <if test="goodsIntroduction != null">goods_introduction = #{goodsIntroduction},</if> |
| | | <if test="salesPrice != null">sales_price = #{salesPrice},</if> |
| | | <if test="mininumPrice != null">mininum_price = #{mininumPrice},</if> |
| | | <if test="subscriptionFlag != null">subscription_flag = #{subscriptionFlag},</if> |
| | | <if test="subscription != null">subscription = #{subscription},</if> |
| | | <if test="goodsDetail != null">goods_detail = #{goodsDetail},</if> |
| | | <if test="recommendFlag != null">recommend_flag = #{recommendFlag},</if> |
| | | <if test="goodsNurses != null">goods_nurses = #{goodsNurses},</if> |
| | | <if test="goodsTags != null">goods_tags = #{goodsTags},</if> |
| | | </trim> |
| | | where goods_id = #{goodsId} |
| | | </update> |
| | | |
| | | <delete id="deleteGoodsByGoodsId" parameterType="String"> |
| | | delete from t_goods where goods_id = #{goodsId} |
| | | </delete> |
| | | |
| | | <delete id="deleteGoodsByGoodsIds" parameterType="String"> |
| | | delete from t_goods where goods_id in |
| | | <foreach item="goodsId" collection="array" open="(" separator="," close=")"> |
| | | #{goodsId} |
| | | </foreach> |
| | | </delete> |
| | | |
| | | <!--分页获取推荐商品--> |
| | | <select id="pageRecommendGoods" resultType="com.ruoyi.order.domain.vo.AppSimpleGoodsVo"> |
| | | SELECT |
| | | tg.goods_id goodsId, |
| | | tg.goods_name goodsName, |
| | | tg.goods_introduction goodsIntroduction, |
| | | tg.goods_type goodsType, |
| | | CASE tg.goods_type |
| | | WHEN 1 THEN "周期" |
| | | WHEN 2 THEN "服务" |
| | | WHEN 3 THEN "体验" |
| | | WHEN 4 THEN "单品" |
| | | END goodsTag, |
| | | IFNULL(tsg.sales_price,tg.sales_price) salesPrice, |
| | | tgf.file_url goodsPicture, |
| | | tg.goods_nurses goodsNurses |
| | | FROM t_goods tg |
| | | LEFT JOIN t_goods_file tgf ON tg.goods_id = tgf.goods_id AND tgf.del_flag = 0 AND tgf.file_type = 1 |
| | | LEFT JOIN t_shop_goods tsg ON tg.goods_id = tsg.goods_id AND tsg.shop_id = #{shopId} |
| | | WHERE tg.del_flag = 0 AND tg.goods_status = 1 AND tg.recommend_flag = 1 |
| | | ORDER BY tg.create_time DESC |
| | | </select> |
| | | |
| | | <!--分页获取商城商品列表--> |
| | | <select id="pageShopGoods" resultType="com.ruoyi.order.domain.vo.AppSimpleGoodsVo"> |
| | | SELECT |
| | | tg.goods_id goodsId, |
| | | tg.goods_name goodsName, |
| | | tg.goods_introduction goodsIntroduction, |
| | | tg.goods_type goodsType, |
| | | CASE tg.goods_type |
| | | WHEN 1 THEN "周期" |
| | | WHEN 2 THEN "服务" |
| | | WHEN 3 THEN "体验" |
| | | WHEN 4 THEN "单品" |
| | | END goodsTag, |
| | | IFNULL(tsg.sales_price,tg.sales_price) salesPrice, |
| | | tgf.file_url goodsPicture, |
| | | tg.goods_nurses goodsNurses |
| | | FROM t_goods tg |
| | | INNER JOIN t_goods_total tgt ON tg.goods_id = tgt.goods_id |
| | | LEFT JOIN t_goods_file tgf ON tg.goods_id = tgf.goods_id AND tgf.del_flag = 0 AND tgf.file_type = 1 |
| | | LEFT JOIN t_shop_goods tsg ON tg.goods_id = tsg.goods_id AND tsg.shop_id = #{shopId} |
| | | WHERE tg.del_flag = 0 AND tg.goods_status = 1 |
| | | <if test="param.goodsType!=null and param.goodsType != ''"> |
| | | AND tg.goods_type = #{param.goodsType} |
| | | </if> |
| | | <if test="param.goodsClassId!=null and param.goodsClassId != ''"> |
| | | AND tg.goods_class_id = #{param.goodsClassId} |
| | | </if> |
| | | <if test="param.keyword!=null and param.keyword != ''"> |
| | | AND tg.goods_name LIKE CONCAT('%',#{param.keyword},'%') |
| | | </if> |
| | | ORDER BY |
| | | <if test="param.sort != null and param.sort != ''"> |
| | | <choose> |
| | | <when test="param.sort==1"> |
| | | salesPrice DESC,tg.create_time DESC |
| | | </when> |
| | | <when test="param.sort==2"> |
| | | salesPrice ASC,tg.create_time DESC |
| | | </when> |
| | | <when test="param.sort==3"> |
| | | tgt.buy_num_count ASC,tg.create_time DESC |
| | | </when> |
| | | <when test="param.sort==4"> |
| | | tgt.buy_num_count DESC,tg.create_time DESC |
| | | </when> |
| | | <when test="param.sort==5"> |
| | | tg.create_time DESC |
| | | </when> |
| | | <otherwise> |
| | | tg.create_time DESC |
| | | </otherwise> |
| | | </choose> |
| | | </if> |
| | | </select> |
| | | |
| | | <!--分页获取搜索商品列表--> |
| | | <select id="pageSearchGoods" resultType="com.ruoyi.order.domain.vo.AppSimpleGoodsVo"> |
| | | SELECT |
| | | tg.goods_id goodsId, |
| | | tg.goods_name goodsName, |
| | | tg.goods_introduction goodsIntroduction, |
| | | tg.goods_type goodsType, |
| | | CASE tg.goods_type |
| | | WHEN 1 THEN "周期" |
| | | WHEN 2 THEN "服务" |
| | | WHEN 3 THEN "体验" |
| | | WHEN 4 THEN "单品" |
| | | END goodsTag, |
| | | IFNULL(tsg.sales_price,tg.sales_price) salesPrice, |
| | | tgf.file_url goodsPicture, |
| | | tg.goods_tags goodsNurses |
| | | FROM t_goods tg |
| | | LEFT JOIN t_goods_file tgf ON tg.goods_id = tgf.goods_id AND tgf.del_flag = 0 AND tgf.file_type = 1 |
| | | LEFT JOIN t_shop_goods tsg ON tg.goods_id = tsg.goods_id AND tsg.shop_id = #{shopId} |
| | | WHERE tg.del_flag = 0 AND tg.goods_status = 1 |
| | | <if test="param.keyword!=null and param.keyword != ''"> |
| | | AND tg.goods_name LIKE CONCAT('%',#{param.keyword},'%') |
| | | </if> |
| | | ORDER BY tg.create_time DESC |
| | | </select> |
| | | |
| | | <!--分页获取搜索活动商品列表--> |
| | | <select id="pageSearchActivityGoods" resultType="com.ruoyi.order.domain.vo.AppSimpleActivityGoodsVo"> |
| | | SELECT |
| | | tg.goods_id goodsId, |
| | | tg.goods_name goodsName, |
| | | tg.goods_introduction goodsIntroduction, |
| | | tg.goods_type goodsType, |
| | | CASE tg.goods_type |
| | | WHEN 1 THEN "周期" |
| | | WHEN 2 THEN "服务" |
| | | WHEN 3 THEN "体验" |
| | | WHEN 4 THEN "单品" |
| | | END goodsTag, |
| | | GREATEST(tg.sales_price,IFNULL(tsg.sales_price,'0.00')) salesPrice, |
| | | tag.activity_price activityPrice, |
| | | tgf.file_url goodsPicture, |
| | | tg.goods_tags goodsNurses, |
| | | tag.activity_number activityNumber, |
| | | tag.sales_number salesNumber |
| | | FROM t_goods tg |
| | | INNER JOIN t_activity_goods tag ON tg.goods_id = tag.goods_id |
| | | LEFT JOIN t_goods_file tgf ON tg.goods_id = tgf.goods_id AND tgf.del_flag = 0 AND tgf.file_type = 1 |
| | | LEFT JOIN t_shop_goods tsg ON tg.goods_id = tsg.goods_id AND tsg.shop_id = #{shopId} |
| | | WHERE tg.del_flag = 0 AND tg.goods_status = 1 |
| | | <if test="param.keyword!=null and param.keyword != ''"> |
| | | AND tg.goods_name LIKE CONCAT('%',#{param.keyword},'%') |
| | | </if> |
| | | ORDER BY tg.create_time DESC |
| | | </select> |
| | | </mapper> |
New file |
| | |
| | | <?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.ruoyi.order.mapper.goods.GoodsRelNurseMapper"> |
| | | |
| | | <resultMap type="GoodsRelNurse" id="GoodsRelNurseResult"> |
| | | <result property="id" column="id" /> |
| | | <result property="delFlag" column="del_flag" /> |
| | | <result property="goodsId" column="goods_id" /> |
| | | <result property="nurse" column="nurse" /> |
| | | </resultMap> |
| | | |
| | | <sql id="selectGoodsRelNurseVo"> |
| | | select id, del_flag, goods_id, nurse from t_goods_rel_nurse |
| | | </sql> |
| | | |
| | | <select id="selectGoodsRelNurseList" parameterType="GoodsRelNurse" resultMap="GoodsRelNurseResult"> |
| | | <include refid="selectGoodsRelNurseVo"/> |
| | | <where> |
| | | <if test="goodsId != null and goodsId != ''"> and goods_id = #{goodsId}</if> |
| | | <if test="nurse != null and nurse != ''"> and nurse = #{nurse}</if> |
| | | </where> |
| | | </select> |
| | | |
| | | <select id="selectGoodsRelNurseById" parameterType="Long" resultMap="GoodsRelNurseResult"> |
| | | <include refid="selectGoodsRelNurseVo"/> |
| | | where id = #{id} |
| | | </select> |
| | | |
| | | <insert id="insertGoodsRelNurse" parameterType="GoodsRelNurse" useGeneratedKeys="true" keyProperty="id"> |
| | | insert into t_goods_rel_nurse |
| | | <trim prefix="(" suffix=")" suffixOverrides=","> |
| | | <if test="delFlag != null">del_flag,</if> |
| | | <if test="goodsId != null">goods_id,</if> |
| | | <if test="nurse != null">nurse,</if> |
| | | </trim> |
| | | <trim prefix="values (" suffix=")" suffixOverrides=","> |
| | | <if test="delFlag != null">#{delFlag},</if> |
| | | <if test="goodsId != null">#{goodsId},</if> |
| | | <if test="nurse != null">#{nurse},</if> |
| | | </trim> |
| | | </insert> |
| | | |
| | | <update id="updateGoodsRelNurse" parameterType="GoodsRelNurse"> |
| | | update t_goods_rel_nurse |
| | | <trim prefix="SET" suffixOverrides=","> |
| | | <if test="delFlag != null">del_flag = #{delFlag},</if> |
| | | <if test="goodsId != null">goods_id = #{goodsId},</if> |
| | | <if test="nurse != null">nurse = #{nurse},</if> |
| | | </trim> |
| | | where id = #{id} |
| | | </update> |
| | | |
| | | <delete id="deleteGoodsRelNurseById" parameterType="Long"> |
| | | delete from t_goods_rel_nurse where id = #{id} |
| | | </delete> |
| | | |
| | | <delete id="deleteGoodsRelNurseByIds" parameterType="String"> |
| | | delete from t_goods_rel_nurse where id in |
| | | <foreach item="id" collection="array" open="(" separator="," close=")"> |
| | | #{id} |
| | | </foreach> |
| | | </delete> |
| | | |
| | | </mapper> |
New file |
| | |
| | | <?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.ruoyi.order.mapper.goods.GoodsRelTagMapper"> |
| | | |
| | | <resultMap type="GoodsRelTag" id="GoodsRelTagResult"> |
| | | <result property="id" column="id" /> |
| | | <result property="delFlag" column="del_flag" /> |
| | | <result property="goodsId" column="goods_id" /> |
| | | <result property="tagId" column="tag_id" /> |
| | | </resultMap> |
| | | |
| | | <sql id="selectGoodsRelTagVo"> |
| | | select id, del_flag, goods_id, tag_id from t_goods_rel_tag |
| | | </sql> |
| | | |
| | | <select id="selectGoodsRelTagList" parameterType="GoodsRelTag" resultMap="GoodsRelTagResult"> |
| | | <include refid="selectGoodsRelTagVo"/> |
| | | <where> |
| | | <if test="goodsId != null and goodsId != ''"> and goods_id = #{goodsId}</if> |
| | | <if test="tagId != null "> and tag_id = #{tagId}</if> |
| | | </where> |
| | | </select> |
| | | |
| | | <select id="selectGoodsRelTagById" parameterType="Long" resultMap="GoodsRelTagResult"> |
| | | <include refid="selectGoodsRelTagVo"/> |
| | | where id = #{id} |
| | | </select> |
| | | |
| | | <insert id="insertGoodsRelTag" parameterType="GoodsRelTag" useGeneratedKeys="true" keyProperty="id"> |
| | | insert into t_goods_rel_tag |
| | | <trim prefix="(" suffix=")" suffixOverrides=","> |
| | | <if test="delFlag != null">del_flag,</if> |
| | | <if test="goodsId != null">goods_id,</if> |
| | | <if test="tagId != null">tag_id,</if> |
| | | </trim> |
| | | <trim prefix="values (" suffix=")" suffixOverrides=","> |
| | | <if test="delFlag != null">#{delFlag},</if> |
| | | <if test="goodsId != null">#{goodsId},</if> |
| | | <if test="tagId != null">#{tagId},</if> |
| | | </trim> |
| | | </insert> |
| | | |
| | | <update id="updateGoodsRelTag" parameterType="GoodsRelTag"> |
| | | update t_goods_rel_tag |
| | | <trim prefix="SET" suffixOverrides=","> |
| | | <if test="delFlag != null">del_flag = #{delFlag},</if> |
| | | <if test="goodsId != null">goods_id = #{goodsId},</if> |
| | | <if test="tagId != null">tag_id = #{tagId},</if> |
| | | </trim> |
| | | where id = #{id} |
| | | </update> |
| | | |
| | | <delete id="deleteGoodsRelTagById" parameterType="Long"> |
| | | delete from t_goods_rel_tag where id = #{id} |
| | | </delete> |
| | | |
| | | <delete id="deleteGoodsRelTagByIds" parameterType="String"> |
| | | delete from t_goods_rel_tag where id in |
| | | <foreach item="id" collection="array" open="(" separator="," close=")"> |
| | | #{id} |
| | | </foreach> |
| | | </delete> |
| | | |
| | | </mapper> |
New file |
| | |
| | | <?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.ruoyi.order.mapper.goods.GoodsTotalMapper"> |
| | | |
| | | <resultMap type="GoodsTotal" id="GoodsTotalResult"> |
| | | <result property="goodsId" column="goods_id" /> |
| | | <result property="buyCount" column="buy_count" /> |
| | | <result property="buyNumCount" column="buy_num_count" /> |
| | | <result property="buyUserCount" column="buy_user_count" /> |
| | | </resultMap> |
| | | |
| | | <sql id="selectGoodsTotalVo"> |
| | | select goods_id, buy_count, buy_num_count, buy_user_count from t_goods_total |
| | | </sql> |
| | | |
| | | <select id="selectGoodsTotalList" parameterType="GoodsTotal" resultMap="GoodsTotalResult"> |
| | | <include refid="selectGoodsTotalVo"/> |
| | | <where> |
| | | <if test="buyCount != null "> and buy_count = #{buyCount}</if> |
| | | <if test="buyNumCount != null "> and buy_num_count = #{buyNumCount}</if> |
| | | <if test="buyUserCount != null "> and buy_user_count = #{buyUserCount}</if> |
| | | </where> |
| | | </select> |
| | | |
| | | <select id="selectGoodsTotalByGoodsId" parameterType="String" resultMap="GoodsTotalResult"> |
| | | <include refid="selectGoodsTotalVo"/> |
| | | where goods_id = #{goodsId} |
| | | </select> |
| | | |
| | | <insert id="insertGoodsTotal" parameterType="GoodsTotal"> |
| | | insert into t_goods_total |
| | | <trim prefix="(" suffix=")" suffixOverrides=","> |
| | | <if test="goodsId != null">goods_id,</if> |
| | | <if test="buyCount != null">buy_count,</if> |
| | | <if test="buyNumCount != null">buy_num_count,</if> |
| | | <if test="buyUserCount != null">buy_user_count,</if> |
| | | </trim> |
| | | <trim prefix="values (" suffix=")" suffixOverrides=","> |
| | | <if test="goodsId != null">#{goodsId},</if> |
| | | <if test="buyCount != null">#{buyCount},</if> |
| | | <if test="buyNumCount != null">#{buyNumCount},</if> |
| | | <if test="buyUserCount != null">#{buyUserCount},</if> |
| | | </trim> |
| | | </insert> |
| | | |
| | | <update id="updateGoodsTotal" parameterType="GoodsTotal"> |
| | | update t_goods_total |
| | | <trim prefix="SET" suffixOverrides=","> |
| | | <if test="buyCount != null">buy_count = #{buyCount},</if> |
| | | <if test="buyNumCount != null">buy_num_count = #{buyNumCount},</if> |
| | | <if test="buyUserCount != null">buy_user_count = #{buyUserCount},</if> |
| | | </trim> |
| | | where goods_id = #{goodsId} |
| | | </update> |
| | | |
| | | <delete id="deleteGoodsTotalByGoodsId" parameterType="String"> |
| | | delete from t_goods_total where goods_id = #{goodsId} |
| | | </delete> |
| | | |
| | | <delete id="deleteGoodsTotalByGoodsIds" parameterType="String"> |
| | | delete from t_goods_total where goods_id in |
| | | <foreach item="goodsId" collection="array" open="(" separator="," close=")"> |
| | | #{goodsId} |
| | | </foreach> |
| | | </delete> |
| | | |
| | | </mapper> |
New file |
| | |
| | | <?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.ruoyi.order.mapper.order.ConsumerGoodsMapper"> |
| | | |
| | | <resultMap type="ConsumerGoods" id="ConsumerGoodsResult"> |
| | | <result property="consumerGoodsId" column="consumer_goods_id" /> |
| | | <result property="delFlag" column="del_flag" /> |
| | | <result property="serviceStatus" column="service_status" /> |
| | | <result property="shopId" column="shop_id" /> |
| | | <result property="userId" column="user_id" /> |
| | | <result property="orderId" column="order_id" /> |
| | | <result property="orderGoodsId" column="order_goods_id" /> |
| | | <result property="goodsId" column="goods_id" /> |
| | | <result property="goodsName" column="goods_name" /> |
| | | <result property="cycleNumFlag" column="cycle_num_flag" /> |
| | | <result property="serviceNum" column="service_num" /> |
| | | <result property="usedNum" column="used_num" /> |
| | | <result property="completeTime" column="complete_time" /> |
| | | <result property="createTime" column="create_time" /> |
| | | <result property="useTime" column="use_time" /> |
| | | </resultMap> |
| | | |
| | | <sql id="selectConsumerGoodsVo"> |
| | | select consumer_goods_id, del_flag, service_status, shop_id, user_id, order_id, order_goods_id, goods_id, goods_name, cycle_num_flag, service_num, used_num, complete_time, create_time, use_time from t_consumer_goods |
| | | </sql> |
| | | |
| | | <select id="selectConsumerGoodsList" parameterType="ConsumerGoods" resultMap="ConsumerGoodsResult"> |
| | | <include refid="selectConsumerGoodsVo"/> |
| | | <where> |
| | | <if test="serviceStatus != null "> and service_status = #{serviceStatus}</if> |
| | | <if test="shopId != null "> and shop_id = #{shopId}</if> |
| | | <if test="userId != null "> and user_id = #{userId}</if> |
| | | <if test="orderId != null and orderId != ''"> and order_id = #{orderId}</if> |
| | | <if test="orderGoodsId != null and orderGoodsId != ''"> and order_goods_id = #{orderGoodsId}</if> |
| | | <if test="goodsId != null and goodsId != ''"> and goods_id = #{goodsId}</if> |
| | | <if test="goodsName != null and goodsName != ''"> and goods_name like concat('%', #{goodsName}, '%')</if> |
| | | <if test="cycleNumFlag != null "> and cycle_num_flag = #{cycleNumFlag}</if> |
| | | <if test="serviceNum != null "> and service_num = #{serviceNum}</if> |
| | | <if test="usedNum != null "> and used_num = #{usedNum}</if> |
| | | <if test="completeTime != null "> and complete_time = #{completeTime}</if> |
| | | <if test="useTime != null and useTime != ''"> and use_time = #{useTime}</if> |
| | | </where> |
| | | </select> |
| | | |
| | | <select id="selectConsumerGoodsByConsumerGoodsId" parameterType="String" resultMap="ConsumerGoodsResult"> |
| | | <include refid="selectConsumerGoodsVo"/> |
| | | where consumer_goods_id = #{consumerGoodsId} |
| | | </select> |
| | | |
| | | <insert id="insertConsumerGoods" parameterType="ConsumerGoods"> |
| | | insert into t_consumer_goods |
| | | <trim prefix="(" suffix=")" suffixOverrides=","> |
| | | <if test="consumerGoodsId != null">consumer_goods_id,</if> |
| | | <if test="delFlag != null">del_flag,</if> |
| | | <if test="serviceStatus != null">service_status,</if> |
| | | <if test="shopId != null">shop_id,</if> |
| | | <if test="userId != null">user_id,</if> |
| | | <if test="orderId != null">order_id,</if> |
| | | <if test="orderGoodsId != null">order_goods_id,</if> |
| | | <if test="goodsId != null">goods_id,</if> |
| | | <if test="goodsName != null">goods_name,</if> |
| | | <if test="cycleNumFlag != null">cycle_num_flag,</if> |
| | | <if test="serviceNum != null">service_num,</if> |
| | | <if test="usedNum != null">used_num,</if> |
| | | <if test="completeTime != null">complete_time,</if> |
| | | <if test="createTime != null">create_time,</if> |
| | | <if test="useTime != null">use_time,</if> |
| | | </trim> |
| | | <trim prefix="values (" suffix=")" suffixOverrides=","> |
| | | <if test="consumerGoodsId != null">#{consumerGoodsId},</if> |
| | | <if test="delFlag != null">#{delFlag},</if> |
| | | <if test="serviceStatus != null">#{serviceStatus},</if> |
| | | <if test="shopId != null">#{shopId},</if> |
| | | <if test="userId != null">#{userId},</if> |
| | | <if test="orderId != null">#{orderId},</if> |
| | | <if test="orderGoodsId != null">#{orderGoodsId},</if> |
| | | <if test="goodsId != null">#{goodsId},</if> |
| | | <if test="goodsName != null">#{goodsName},</if> |
| | | <if test="cycleNumFlag != null">#{cycleNumFlag},</if> |
| | | <if test="serviceNum != null">#{serviceNum},</if> |
| | | <if test="usedNum != null">#{usedNum},</if> |
| | | <if test="completeTime != null">#{completeTime},</if> |
| | | <if test="createTime != null">#{createTime},</if> |
| | | <if test="useTime != null">#{useTime},</if> |
| | | </trim> |
| | | </insert> |
| | | |
| | | <update id="updateConsumerGoods" parameterType="ConsumerGoods"> |
| | | update t_consumer_goods |
| | | <trim prefix="SET" suffixOverrides=","> |
| | | <if test="delFlag != null">del_flag = #{delFlag},</if> |
| | | <if test="serviceStatus != null">service_status = #{serviceStatus},</if> |
| | | <if test="shopId != null">shop_id = #{shopId},</if> |
| | | <if test="userId != null">user_id = #{userId},</if> |
| | | <if test="orderId != null">order_id = #{orderId},</if> |
| | | <if test="orderGoodsId != null">order_goods_id = #{orderGoodsId},</if> |
| | | <if test="goodsId != null">goods_id = #{goodsId},</if> |
| | | <if test="goodsName != null">goods_name = #{goodsName},</if> |
| | | <if test="cycleNumFlag != null">cycle_num_flag = #{cycleNumFlag},</if> |
| | | <if test="serviceNum != null">service_num = #{serviceNum},</if> |
| | | <if test="usedNum != null">used_num = #{usedNum},</if> |
| | | <if test="completeTime != null">complete_time = #{completeTime},</if> |
| | | <if test="createTime != null">create_time = #{createTime},</if> |
| | | <if test="useTime != null">use_time = #{useTime},</if> |
| | | </trim> |
| | | where consumer_goods_id = #{consumerGoodsId} |
| | | </update> |
| | | |
| | | <delete id="deleteConsumerGoodsByConsumerGoodsId" parameterType="String"> |
| | | delete from t_consumer_goods where consumer_goods_id = #{consumerGoodsId} |
| | | </delete> |
| | | |
| | | <delete id="deleteConsumerGoodsByConsumerGoodsIds" parameterType="String"> |
| | | delete from t_consumer_goods where consumer_goods_id in |
| | | <foreach item="consumerGoodsId" collection="array" open="(" separator="," close=")"> |
| | | #{consumerGoodsId} |
| | | </foreach> |
| | | </delete> |
| | | |
| | | </mapper> |
New file |
| | |
| | | <?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.ruoyi.order.mapper.order.OrderGoodsMapper"> |
| | | |
| | | <resultMap type="OrderGoods" id="OrderGoodsResult"> |
| | | <result property="orderGoodsId" column="order_goods_id" /> |
| | | <result property="delFlag" column="del_flag" /> |
| | | <result property="orderId" column="order_id" /> |
| | | <result property="goodsId" column="goods_id" /> |
| | | <result property="buyNum" column="buy_num" /> |
| | | <result property="couponId" column="coupon_id" /> |
| | | <result property="goodsPrice" column="goods_price" /> |
| | | <result property="goodsTotalMoney" column="goods_total_money" /> |
| | | <result property="goodsReceivableMoney" column="goods_receivable_money" /> |
| | | <result property="cycleNumFlag" column="cycle_num_flag" /> |
| | | <result property="serviceNum" column="service_num" /> |
| | | <result property="goodsType" column="goods_type" /> |
| | | </resultMap> |
| | | |
| | | <sql id="selectOrderGoodsVo"> |
| | | select order_goods_id, del_flag, order_id, goods_id, buy_num, coupon_id, goods_price, goods_total_money, goods_receivable_money, cycle_num_flag, service_num, goods_type from t_order_goods |
| | | </sql> |
| | | |
| | | <select id="selectOrderGoodsList" parameterType="OrderGoods" resultMap="OrderGoodsResult"> |
| | | <include refid="selectOrderGoodsVo"/> |
| | | <where> |
| | | <if test="orderId != null and orderId != ''"> and order_id = #{orderId}</if> |
| | | <if test="goodsId != null and goodsId != ''"> and goods_id = #{goodsId}</if> |
| | | <if test="buyNum != null "> and buy_num = #{buyNum}</if> |
| | | <if test="couponId != null and couponId != ''"> and coupon_id = #{couponId}</if> |
| | | <if test="goodsPrice != null "> and goods_price = #{goodsPrice}</if> |
| | | <if test="goodsTotalMoney != null "> and goods_total_money = #{goodsTotalMoney}</if> |
| | | <if test="goodsReceivableMoney != null "> and goods_receivable_money = #{goodsReceivableMoney}</if> |
| | | <if test="cycleNumFlag != null "> and cycle_num_flag = #{cycleNumFlag}</if> |
| | | <if test="serviceNum != null "> and service_num = #{serviceNum}</if> |
| | | <if test="goodsType != null "> and goods_type = #{goodsType}</if> |
| | | </where> |
| | | </select> |
| | | |
| | | <select id="selectOrderGoodsByOrderGoodsId" parameterType="String" resultMap="OrderGoodsResult"> |
| | | <include refid="selectOrderGoodsVo"/> |
| | | where order_goods_id = #{orderGoodsId} |
| | | </select> |
| | | |
| | | <insert id="insertOrderGoods" parameterType="OrderGoods"> |
| | | insert into t_order_goods |
| | | <trim prefix="(" suffix=")" suffixOverrides=","> |
| | | <if test="orderGoodsId != null">order_goods_id,</if> |
| | | <if test="delFlag != null">del_flag,</if> |
| | | <if test="orderId != null">order_id,</if> |
| | | <if test="goodsId != null">goods_id,</if> |
| | | <if test="buyNum != null">buy_num,</if> |
| | | <if test="couponId != null">coupon_id,</if> |
| | | <if test="goodsPrice != null">goods_price,</if> |
| | | <if test="goodsTotalMoney != null">goods_total_money,</if> |
| | | <if test="goodsReceivableMoney != null">goods_receivable_money,</if> |
| | | <if test="cycleNumFlag != null">cycle_num_flag,</if> |
| | | <if test="serviceNum != null">service_num,</if> |
| | | <if test="goodsType != null">goods_type,</if> |
| | | </trim> |
| | | <trim prefix="values (" suffix=")" suffixOverrides=","> |
| | | <if test="orderGoodsId != null">#{orderGoodsId},</if> |
| | | <if test="delFlag != null">#{delFlag},</if> |
| | | <if test="orderId != null">#{orderId},</if> |
| | | <if test="goodsId != null">#{goodsId},</if> |
| | | <if test="buyNum != null">#{buyNum},</if> |
| | | <if test="couponId != null">#{couponId},</if> |
| | | <if test="goodsPrice != null">#{goodsPrice},</if> |
| | | <if test="goodsTotalMoney != null">#{goodsTotalMoney},</if> |
| | | <if test="goodsReceivableMoney != null">#{goodsReceivableMoney},</if> |
| | | <if test="cycleNumFlag != null">#{cycleNumFlag},</if> |
| | | <if test="serviceNum != null">#{serviceNum},</if> |
| | | <if test="goodsType != null">#{goodsType},</if> |
| | | </trim> |
| | | </insert> |
| | | |
| | | <update id="updateOrderGoods" parameterType="OrderGoods"> |
| | | update t_order_goods |
| | | <trim prefix="SET" suffixOverrides=","> |
| | | <if test="delFlag != null">del_flag = #{delFlag},</if> |
| | | <if test="orderId != null">order_id = #{orderId},</if> |
| | | <if test="goodsId != null">goods_id = #{goodsId},</if> |
| | | <if test="buyNum != null">buy_num = #{buyNum},</if> |
| | | <if test="couponId != null">coupon_id = #{couponId},</if> |
| | | <if test="goodsPrice != null">goods_price = #{goodsPrice},</if> |
| | | <if test="goodsTotalMoney != null">goods_total_money = #{goodsTotalMoney},</if> |
| | | <if test="goodsReceivableMoney != null">goods_receivable_money = #{goodsReceivableMoney},</if> |
| | | <if test="cycleNumFlag != null">cycle_num_flag = #{cycleNumFlag},</if> |
| | | <if test="serviceNum != null">service_num = #{serviceNum},</if> |
| | | <if test="goodsType != null">goods_type = #{goodsType},</if> |
| | | </trim> |
| | | where order_goods_id = #{orderGoodsId} |
| | | </update> |
| | | |
| | | <delete id="deleteOrderGoodsByOrderGoodsId" parameterType="String"> |
| | | delete from t_order_goods where order_goods_id = #{orderGoodsId} |
| | | </delete> |
| | | |
| | | <delete id="deleteOrderGoodsByOrderGoodsIds" parameterType="String"> |
| | | delete from t_order_goods where order_goods_id in |
| | | <foreach item="orderGoodsId" collection="array" open="(" separator="," close=")"> |
| | | #{orderGoodsId} |
| | | </foreach> |
| | | </delete> |
| | | |
| | | </mapper> |
New file |
| | |
| | | <?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.ruoyi.order.mapper.order.OrderMapper"> |
| | | |
| | | <resultMap type="Order" id="OrderResult"> |
| | | <result property="orderId" column="order_id" /> |
| | | <result property="delFlag" column="del_flag" /> |
| | | <result property="orderStatus" column="order_status" /> |
| | | <result property="orderNo" column="order_no" /> |
| | | <result property="orderFrom" column="order_from" /> |
| | | <result property="shopId" column="shop_id" /> |
| | | <result property="userId" column="user_id" /> |
| | | <result property="orderMoney" column="order_money" /> |
| | | <result property="couponMoney" column="coupon_money" /> |
| | | <result property="discountMoney" column="discount_money" /> |
| | | <result property="receivableMoney" column="receivable_money" /> |
| | | <result property="payType" column="pay_type" /> |
| | | <result property="payMoney" column="pay_money" /> |
| | | <result property="onlinePayMoney" column="online_pay_money" /> |
| | | <result property="offlinePayMoney" column="offline_pay_money" /> |
| | | <result property="orderRemark" column="order_remark" /> |
| | | <result property="goodsInfo" column="goods_info" /> |
| | | <result property="createTime" column="create_time" /> |
| | | <result property="payTime" column="pay_time" /> |
| | | <result property="useTime" column="use_time" /> |
| | | <result property="cancelTime" column="cancel_time" /> |
| | | <result property="useUserId" column="use_user_id" /> |
| | | </resultMap> |
| | | |
| | | <sql id="selectOrderVo"> |
| | | select order_id, del_flag, order_status, order_no, order_from, shop_id, user_id, order_money, coupon_money, discount_money, receivable_money, pay_type, pay_money, online_pay_money, offline_pay_money, order_remark, goods_info, create_time, pay_time, use_time, cancel_time, use_user_id from t_order |
| | | </sql> |
| | | |
| | | <select id="selectOrderList" parameterType="Order" resultMap="OrderResult"> |
| | | <include refid="selectOrderVo"/> |
| | | <where> |
| | | <if test="orderStatus != null "> and order_status = #{orderStatus}</if> |
| | | <if test="orderNo != null and orderNo != ''"> and order_no = #{orderNo}</if> |
| | | <if test="orderFrom != null "> and order_from = #{orderFrom}</if> |
| | | <if test="shopId != null "> and shop_id = #{shopId}</if> |
| | | <if test="userId != null "> and user_id = #{userId}</if> |
| | | <if test="orderMoney != null "> and order_money = #{orderMoney}</if> |
| | | <if test="couponMoney != null "> and coupon_money = #{couponMoney}</if> |
| | | <if test="discountMoney != null "> and discount_money = #{discountMoney}</if> |
| | | <if test="receivableMoney != null "> and receivable_money = #{receivableMoney}</if> |
| | | <if test="payType != null "> and pay_type = #{payType}</if> |
| | | <if test="payMoney != null "> and pay_money = #{payMoney}</if> |
| | | <if test="onlinePayMoney != null "> and online_pay_money = #{onlinePayMoney}</if> |
| | | <if test="offlinePayMoney != null "> and offline_pay_money = #{offlinePayMoney}</if> |
| | | <if test="orderRemark != null and orderRemark != ''"> and order_remark = #{orderRemark}</if> |
| | | <if test="goodsInfo != null and goodsInfo != ''"> and goods_info = #{goodsInfo}</if> |
| | | <if test="payTime != null "> and pay_time = #{payTime}</if> |
| | | <if test="useTime != null "> and use_time = #{useTime}</if> |
| | | <if test="cancelTime != null "> and cancel_time = #{cancelTime}</if> |
| | | <if test="useUserId != null "> and use_user_id = #{useUserId}</if> |
| | | </where> |
| | | </select> |
| | | |
| | | <select id="selectOrderByOrderId" parameterType="String" resultMap="OrderResult"> |
| | | <include refid="selectOrderVo"/> |
| | | where order_id = #{orderId} |
| | | </select> |
| | | |
| | | <insert id="insertOrder" parameterType="Order"> |
| | | insert into t_order |
| | | <trim prefix="(" suffix=")" suffixOverrides=","> |
| | | <if test="orderId != null">order_id,</if> |
| | | <if test="delFlag != null">del_flag,</if> |
| | | <if test="orderStatus != null">order_status,</if> |
| | | <if test="orderNo != null">order_no,</if> |
| | | <if test="orderFrom != null">order_from,</if> |
| | | <if test="shopId != null">shop_id,</if> |
| | | <if test="userId != null">user_id,</if> |
| | | <if test="orderMoney != null">order_money,</if> |
| | | <if test="couponMoney != null">coupon_money,</if> |
| | | <if test="discountMoney != null">discount_money,</if> |
| | | <if test="receivableMoney != null">receivable_money,</if> |
| | | <if test="payType != null">pay_type,</if> |
| | | <if test="payMoney != null">pay_money,</if> |
| | | <if test="onlinePayMoney != null">online_pay_money,</if> |
| | | <if test="offlinePayMoney != null">offline_pay_money,</if> |
| | | <if test="orderRemark != null">order_remark,</if> |
| | | <if test="goodsInfo != null">goods_info,</if> |
| | | <if test="createTime != null">create_time,</if> |
| | | <if test="payTime != null">pay_time,</if> |
| | | <if test="useTime != null">use_time,</if> |
| | | <if test="cancelTime != null">cancel_time,</if> |
| | | <if test="useUserId != null">use_user_id,</if> |
| | | </trim> |
| | | <trim prefix="values (" suffix=")" suffixOverrides=","> |
| | | <if test="orderId != null">#{orderId},</if> |
| | | <if test="delFlag != null">#{delFlag},</if> |
| | | <if test="orderStatus != null">#{orderStatus},</if> |
| | | <if test="orderNo != null">#{orderNo},</if> |
| | | <if test="orderFrom != null">#{orderFrom},</if> |
| | | <if test="shopId != null">#{shopId},</if> |
| | | <if test="userId != null">#{userId},</if> |
| | | <if test="orderMoney != null">#{orderMoney},</if> |
| | | <if test="couponMoney != null">#{couponMoney},</if> |
| | | <if test="discountMoney != null">#{discountMoney},</if> |
| | | <if test="receivableMoney != null">#{receivableMoney},</if> |
| | | <if test="payType != null">#{payType},</if> |
| | | <if test="payMoney != null">#{payMoney},</if> |
| | | <if test="onlinePayMoney != null">#{onlinePayMoney},</if> |
| | | <if test="offlinePayMoney != null">#{offlinePayMoney},</if> |
| | | <if test="orderRemark != null">#{orderRemark},</if> |
| | | <if test="goodsInfo != null">#{goodsInfo},</if> |
| | | <if test="createTime != null">#{createTime},</if> |
| | | <if test="payTime != null">#{payTime},</if> |
| | | <if test="useTime != null">#{useTime},</if> |
| | | <if test="cancelTime != null">#{cancelTime},</if> |
| | | <if test="useUserId != null">#{useUserId},</if> |
| | | </trim> |
| | | </insert> |
| | | |
| | | <update id="updateOrder" parameterType="Order"> |
| | | update t_order |
| | | <trim prefix="SET" suffixOverrides=","> |
| | | <if test="delFlag != null">del_flag = #{delFlag},</if> |
| | | <if test="orderStatus != null">order_status = #{orderStatus},</if> |
| | | <if test="orderNo != null">order_no = #{orderNo},</if> |
| | | <if test="orderFrom != null">order_from = #{orderFrom},</if> |
| | | <if test="shopId != null">shop_id = #{shopId},</if> |
| | | <if test="userId != null">user_id = #{userId},</if> |
| | | <if test="orderMoney != null">order_money = #{orderMoney},</if> |
| | | <if test="couponMoney != null">coupon_money = #{couponMoney},</if> |
| | | <if test="discountMoney != null">discount_money = #{discountMoney},</if> |
| | | <if test="receivableMoney != null">receivable_money = #{receivableMoney},</if> |
| | | <if test="payType != null">pay_type = #{payType},</if> |
| | | <if test="payMoney != null">pay_money = #{payMoney},</if> |
| | | <if test="onlinePayMoney != null">online_pay_money = #{onlinePayMoney},</if> |
| | | <if test="offlinePayMoney != null">offline_pay_money = #{offlinePayMoney},</if> |
| | | <if test="orderRemark != null">order_remark = #{orderRemark},</if> |
| | | <if test="goodsInfo != null">goods_info = #{goodsInfo},</if> |
| | | <if test="createTime != null">create_time = #{createTime},</if> |
| | | <if test="payTime != null">pay_time = #{payTime},</if> |
| | | <if test="useTime != null">use_time = #{useTime},</if> |
| | | <if test="cancelTime != null">cancel_time = #{cancelTime},</if> |
| | | <if test="useUserId != null">use_user_id = #{useUserId},</if> |
| | | </trim> |
| | | where order_id = #{orderId} |
| | | </update> |
| | | |
| | | <delete id="deleteOrderByOrderId" parameterType="String"> |
| | | delete from t_order where order_id = #{orderId} |
| | | </delete> |
| | | |
| | | <delete id="deleteOrderByOrderIds" parameterType="String"> |
| | | delete from t_order where order_id in |
| | | <foreach item="orderId" collection="array" open="(" separator="," close=")"> |
| | | #{orderId} |
| | | </foreach> |
| | | </delete> |
| | | |
| | | </mapper> |
New file |
| | |
| | | <?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.ruoyi.order.mapper.order.ShoppingCartMapper"> |
| | | |
| | | <resultMap type="ShoppingCart" id="ShoppingCartResult"> |
| | | <result property="id" column="id" /> |
| | | <result property="delFlag" column="del_flag" /> |
| | | <result property="userId" column="user_id" /> |
| | | <result property="shopId" column="shop_id" /> |
| | | <result property="goodsId" column="goods_id" /> |
| | | <result property="buyNum" column="buy_num" /> |
| | | <result property="createTime" column="create_time" /> |
| | | <result property="updateime" column="update_time" /> |
| | | </resultMap> |
| | | |
| | | <sql id="selectShoppingCartVo"> |
| | | select id, del_flag, user_id, shop_id, goods_id, buy_num, create_time, update_time from t_shopping_cart |
| | | </sql> |
| | | |
| | | <select id="selectShoppingCartList" parameterType="ShoppingCart" resultMap="ShoppingCartResult"> |
| | | <include refid="selectShoppingCartVo"/> |
| | | <where> |
| | | <if test="userId != null "> and user_id = #{userId}</if> |
| | | <if test="shopId != null "> and shop_id = #{shopId}</if> |
| | | <if test="goodsId != null and goodsId != ''"> and goods_id = #{goodsId}</if> |
| | | <if test="buyNum != null "> and buy_num = #{buyNum}</if> |
| | | </where> |
| | | </select> |
| | | |
| | | <select id="selectShoppingCartById" parameterType="Long" resultMap="ShoppingCartResult"> |
| | | <include refid="selectShoppingCartVo"/> |
| | | where id = #{id} |
| | | </select> |
| | | |
| | | <insert id="insertShoppingCart" parameterType="ShoppingCart" useGeneratedKeys="true" keyProperty="id"> |
| | | insert into t_shopping_cart |
| | | <trim prefix="(" suffix=")" suffixOverrides=","> |
| | | <if test="delFlag != null">del_flag,</if> |
| | | <if test="userId != null">user_id,</if> |
| | | <if test="shopId != null">shop_id,</if> |
| | | <if test="goodsId != null">goods_id,</if> |
| | | <if test="buyNum != null">buy_num,</if> |
| | | <if test="createTime != null">create_time,</if> |
| | | <if test="updateime != null">update_time,</if> |
| | | </trim> |
| | | <trim prefix="values (" suffix=")" suffixOverrides=","> |
| | | <if test="delFlag != null">#{delFlag},</if> |
| | | <if test="userId != null">#{userId},</if> |
| | | <if test="shopId != null">#{shopId},</if> |
| | | <if test="goodsId != null">#{goodsId},</if> |
| | | <if test="buyNum != null">#{buyNum},</if> |
| | | <if test="createTime != null">#{createTime},</if> |
| | | <if test="updateime != null">#{updateime},</if> |
| | | </trim> |
| | | </insert> |
| | | |
| | | <update id="updateShoppingCart" parameterType="ShoppingCart"> |
| | | update t_shopping_cart |
| | | <trim prefix="SET" suffixOverrides=","> |
| | | <if test="delFlag != null">del_flag = #{delFlag},</if> |
| | | <if test="userId != null">user_id = #{userId},</if> |
| | | <if test="shopId != null">shop_id = #{shopId},</if> |
| | | <if test="goodsId != null">goods_id = #{goodsId},</if> |
| | | <if test="buyNum != null">buy_num = #{buyNum},</if> |
| | | <if test="createTime != null">create_time = #{createTime},</if> |
| | | <if test="updateime != null">update_time = #{updateime},</if> |
| | | </trim> |
| | | where id = #{id} |
| | | </update> |
| | | |
| | | <delete id="deleteShoppingCartById" parameterType="Long"> |
| | | update t_shopping_cart set del_flag = 1 where id = #{id} |
| | | </delete> |
| | | |
| | | <delete id="deleteShoppingCartByIds" parameterType="String"> |
| | | update t_shopping_cart set del_flag = 1 where id in |
| | | <foreach item="ids" collection="array" open="(" separator="," close=")"> |
| | | #{id} |
| | | </foreach> |
| | | </delete> |
| | | |
| | | </mapper> |
New file |
| | |
| | | <?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.ruoyi.order.mapper.order.UserServiceRecordMapper"> |
| | | |
| | | <resultMap type="UserServiceRecord" id="UserServiceRecordResult"> |
| | | <result property="id" column="id" /> |
| | | <result property="delFlag" column="del_flag" /> |
| | | <result property="userId" column="user_id" /> |
| | | <result property="consumerGoodsIds" column="consumer_goods_ids" /> |
| | | <result property="consumerGoodsNames" column="consumer_goods_names" /> |
| | | <result property="createTime" column="create_time" /> |
| | | <result property="serviceType" column="service_type" /> |
| | | </resultMap> |
| | | |
| | | <sql id="selectUserServiceRecordVo"> |
| | | select id, del_flag, user_id, consumer_goods_ids, consumer_goods_names, create_time, service_type from t_user_service_record |
| | | </sql> |
| | | |
| | | <select id="selectUserServiceRecordList" parameterType="UserServiceRecord" resultMap="UserServiceRecordResult"> |
| | | <include refid="selectUserServiceRecordVo"/> |
| | | <where> |
| | | <if test="userId != null "> and user_id = #{userId}</if> |
| | | <if test="consumerGoodsIds != null and consumerGoodsIds != ''"> and consumer_goods_ids = #{consumerGoodsIds}</if> |
| | | <if test="consumerGoodsNames != null and consumerGoodsNames != ''"> and consumer_goods_names = #{consumerGoodsNames}</if> |
| | | <if test="serviceType != null "> and service_type = #{serviceType}</if> |
| | | </where> |
| | | </select> |
| | | |
| | | <select id="selectUserServiceRecordById" parameterType="Long" resultMap="UserServiceRecordResult"> |
| | | <include refid="selectUserServiceRecordVo"/> |
| | | where id = #{id} |
| | | </select> |
| | | |
| | | <insert id="insertUserServiceRecord" parameterType="UserServiceRecord" useGeneratedKeys="true" keyProperty="id"> |
| | | insert into t_user_service_record |
| | | <trim prefix="(" suffix=")" suffixOverrides=","> |
| | | <if test="delFlag != null">del_flag,</if> |
| | | <if test="userId != null">user_id,</if> |
| | | <if test="consumerGoodsIds != null">consumer_goods_ids,</if> |
| | | <if test="consumerGoodsNames != null">consumer_goods_names,</if> |
| | | <if test="createTime != null">create_time,</if> |
| | | <if test="serviceType != null">service_type,</if> |
| | | </trim> |
| | | <trim prefix="values (" suffix=")" suffixOverrides=","> |
| | | <if test="delFlag != null">#{delFlag},</if> |
| | | <if test="userId != null">#{userId},</if> |
| | | <if test="consumerGoodsIds != null">#{consumerGoodsIds},</if> |
| | | <if test="consumerGoodsNames != null">#{consumerGoodsNames},</if> |
| | | <if test="createTime != null">#{createTime},</if> |
| | | <if test="serviceType != null">#{serviceType},</if> |
| | | </trim> |
| | | </insert> |
| | | |
| | | <update id="updateUserServiceRecord" parameterType="UserServiceRecord"> |
| | | update t_user_service_record |
| | | <trim prefix="SET" suffixOverrides=","> |
| | | <if test="delFlag != null">del_flag = #{delFlag},</if> |
| | | <if test="userId != null">user_id = #{userId},</if> |
| | | <if test="consumerGoodsIds != null">consumer_goods_ids = #{consumerGoodsIds},</if> |
| | | <if test="consumerGoodsNames != null">consumer_goods_names = #{consumerGoodsNames},</if> |
| | | <if test="createTime != null">create_time = #{createTime},</if> |
| | | <if test="serviceType != null">service_type = #{serviceType},</if> |
| | | </trim> |
| | | where id = #{id} |
| | | </update> |
| | | |
| | | <delete id="deleteUserServiceRecordById" parameterType="Long"> |
| | | delete from t_user_service_record where id = #{id} |
| | | </delete> |
| | | |
| | | <delete id="deleteUserServiceRecordByIds" parameterType="String"> |
| | | delete from t_user_service_record where id in |
| | | <foreach item="id" collection="array" open="(" separator="," close=")"> |
| | | #{id} |
| | | </foreach> |
| | | </delete> |
| | | |
| | | </mapper> |
| | |
| | | <version>2.3</version> |
| | | </dependency> |
| | | |
| | | <!-- 小程序统一服务 --> |
| | | <dependency> |
| | | <groupId>com.github.binarywang</groupId> |
| | | <artifactId>weixin-java-miniapp</artifactId> |
| | | <version>4.1.0</version> |
| | | </dependency> |
| | | |
| | | </dependencies> |
| | | |
| | | <build> |
New file |
| | |
| | | package com.ruoyi.shop; |
| | | |
| | | import org.springframework.boot.SpringApplication; |
| | | import org.springframework.boot.autoconfigure.SpringBootApplication; |
| | | import com.ruoyi.common.security.annotation.EnableCustomConfig; |
| | | import com.ruoyi.common.security.annotation.EnableRyFeignClients; |
| | | import com.ruoyi.common.swagger.annotation.EnableCustomSwagger2; |
| | | |
| | | /** |
| | | * 系统模块 |
| | | * |
| | | * @author ruoyi |
| | | */ |
| | | @EnableCustomConfig |
| | | @EnableCustomSwagger2 |
| | | @EnableRyFeignClients |
| | | @SpringBootApplication |
| | | public class RuoYiSystemApplication |
| | | { |
| | | public static void main(String[] args) |
| | | { |
| | | SpringApplication.run(RuoYiSystemApplication.class, args); |
| | | System.out.println("(♥◠‿◠)ノ゙ 系统模块启动成功 ლ(´ڡ`ლ)゙ \n" + |
| | | " .-------. ____ __ \n" + |
| | | " | _ _ \\ \\ \\ / / \n" + |
| | | " | ( ' ) | \\ _. / ' \n" + |
| | | " |(_ o _) / _( )_ .' \n" + |
| | | " | (_,_).' __ ___(_ o _)' \n" + |
| | | " | |\\ \\ | || |(_,_)' \n" + |
| | | " | | \\ `' /| `-' / \n" + |
| | | " | | \\ / \\ / \n" + |
| | | " ''-' `'-' `-..-' "); |
| | | } |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.controller.management; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName MgtGoodsController |
| | | * @description: TODO |
| | | * @date 2023年04月26日 |
| | | * @version: 1.0 |
| | | */ |
| | | public class MgtGoodsController { |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.controller.management; |
| | | |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.ruoyi.common.core.domain.R; |
| | | import com.ruoyi.common.security.utils.SecurityUtils; |
| | | import com.ruoyi.shop.domain.dto.*; |
| | | import com.ruoyi.system.domain.dto.*; |
| | | import com.ruoyi.shop.domain.vo.MgtShopInfoVo; |
| | | import com.ruoyi.shop.domain.vo.MgtShopPageVo; |
| | | import com.ruoyi.shop.domain.vo.MgtShopTagVo; |
| | | import com.ruoyi.shop.service.shop.ShopRelTagService; |
| | | import com.ruoyi.shop.service.shop.ShopService; |
| | | import io.swagger.annotations.Api; |
| | | import io.swagger.annotations.ApiOperation; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.web.bind.annotation.RequestBody; |
| | | import org.springframework.web.bind.annotation.RequestMapping; |
| | | import org.springframework.web.bind.annotation.RequestMethod; |
| | | import org.springframework.web.bind.annotation.RestController; |
| | | |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName ShopController |
| | | * @description: TODO |
| | | * @date 2023年04月21日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Api(value = "管理台商户相关接口", tags = "管理台商户相关接口", description = "管理台商户相关接口") |
| | | @RestController |
| | | @RequestMapping("/mgt/shop") |
| | | public class MgtShopController { |
| | | |
| | | @Autowired |
| | | private ShopService shopService; |
| | | |
| | | @Autowired |
| | | private ShopRelTagService shopRelTagService; |
| | | |
| | | @RequestMapping(value = "/pageShop", method = RequestMethod.POST) |
| | | @ApiOperation(value = "分页获取商户列表") |
| | | public R<Page<MgtShopPageVo>> pageShop(@RequestBody MgtShopPageDto mgtShopPageDto) { |
| | | Page<MgtShopPageVo> page = new Page<>(); |
| | | page.setSize(mgtShopPageDto.getPageSize()); |
| | | page.setCurrent(mgtShopPageDto.getPageNum()); |
| | | List<MgtShopPageVo> mgtShopPageVoList = shopService.pageShop(page,mgtShopPageDto); |
| | | return R.ok(page.setRecords(mgtShopPageVoList)); |
| | | } |
| | | |
| | | @RequestMapping(value = "/createShop", method = RequestMethod.POST) |
| | | @ApiOperation(value = "创建商户") |
| | | public R createShop(@RequestBody MgtEditShopDto mgtEditShopDto) { |
| | | Long userId = SecurityUtils.getUserId(); |
| | | mgtEditShopDto.setUserId(userId); |
| | | shopService.createShop(mgtEditShopDto); |
| | | return R.ok(); |
| | | } |
| | | |
| | | @RequestMapping(value = "/getShopInfo", method = RequestMethod.POST) |
| | | @ApiOperation(value = "获取商户详情") |
| | | public R<MgtShopInfoVo> getShopInfo(@RequestBody MgtBaseGetDto mgtBaseGetDto) { |
| | | MgtShopInfoVo mgtShopInfoVo = shopService.getMgtShopInfo(Long.valueOf(mgtBaseGetDto.getId())); |
| | | return R.ok(mgtShopInfoVo); |
| | | } |
| | | |
| | | @RequestMapping(value = "/getShopTag", method = RequestMethod.POST) |
| | | @ApiOperation(value = "获取商户标签") |
| | | public R<List<MgtShopTagVo>> getShopTag(@RequestBody MgtBaseGetDto mgtBaseGetDto) { |
| | | List<MgtShopTagVo> mgtShopInfoVoList = shopRelTagService.listShopTagVo(Long.valueOf(mgtBaseGetDto.getId())); |
| | | return R.ok(mgtShopInfoVoList); |
| | | } |
| | | |
| | | @RequestMapping(value = "/editShopTag", method = RequestMethod.POST) |
| | | @ApiOperation(value = "修改商户标签") |
| | | public R editShopTag(@RequestBody MgtEditShopTagDto mgtEditShopTagDto) { |
| | | shopService.editShopTag(mgtEditShopTagDto); |
| | | return R.ok(); |
| | | } |
| | | |
| | | @RequestMapping(value = "/changeCooperationTime", method = RequestMethod.POST) |
| | | @ApiOperation(value = "修改合作时间") |
| | | public R changeCooperationTime(@RequestBody MgtChangeCoopDto mgtChangeCoopDto) { |
| | | Long userId = SecurityUtils.getUserId(); |
| | | mgtChangeCoopDto.setUserId(userId); |
| | | shopService.changeCooperationTime(mgtChangeCoopDto); |
| | | return R.ok(); |
| | | } |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.controller.miniapp; |
| | | |
| | | import com.ruoyi.common.core.domain.R; |
| | | import com.ruoyi.common.security.utils.SecurityUtils; |
| | | import com.ruoyi.member.domain.dto.AppBaseBathDto; |
| | | import com.ruoyi.member.domain.dto.AppGoodsInfoGetDto; |
| | | import com.ruoyi.member.domain.dto.AppShoppingCartAddDto; |
| | | import com.ruoyi.member.domain.dto.AppShoppingCartChangeDto; |
| | | import com.ruoyi.member.domain.pojo.member.Member; |
| | | import com.ruoyi.member.domain.vo.AppGoodsInfoVo; |
| | | import com.ruoyi.member.service.member.MemberService; |
| | | import com.ruoyi.system.service.goods.GoodsService; |
| | | import com.ruoyi.system.service.order.ShoppingCartService; |
| | | import io.swagger.annotations.Api; |
| | | import io.swagger.annotations.ApiOperation; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.web.bind.annotation.RequestBody; |
| | | import org.springframework.web.bind.annotation.RequestMapping; |
| | | import org.springframework.web.bind.annotation.RequestMethod; |
| | | import org.springframework.web.bind.annotation.RestController; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppGoodsController |
| | | * @description: TODO |
| | | * @date 2023年04月20日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Api(value = "小程序商品相关接口", tags = "小程序商品相关接口", description = "小程序商品相关接口") |
| | | @RestController |
| | | @RequestMapping("/app/home") |
| | | public class AppGoodsController { |
| | | |
| | | @Autowired |
| | | private GoodsService goodsService; |
| | | |
| | | @Autowired |
| | | private MemberService memberService; |
| | | |
| | | @Autowired |
| | | private ShoppingCartService shoppingCartService; |
| | | |
| | | @RequestMapping(value = "/getGoodsInfo", method = RequestMethod.POST) |
| | | @ApiOperation(value = "获取商品详情") |
| | | public R<AppGoodsInfoVo> getGoodsInfo(@RequestBody AppGoodsInfoGetDto appGoodsInfoGetDto) { |
| | | Long userId = SecurityUtils.getUserId(); |
| | | if(userId!=null){ |
| | | Member member = memberService.getById(userId); |
| | | if(member!=null&&member.getRealtionShopId()!=null){ |
| | | appGoodsInfoGetDto.setShopId(member.getRealtionShopId()); |
| | | } |
| | | } |
| | | AppGoodsInfoVo appGoodsInfoVo = goodsService.getGoodsInfo(appGoodsInfoGetDto); |
| | | return R.ok(appGoodsInfoVo); |
| | | } |
| | | |
| | | @RequestMapping(value = "/addShoppingCart", method = RequestMethod.POST) |
| | | @ApiOperation(value = "添加购物车") |
| | | public R addShoppingCart(@RequestBody AppShoppingCartAddDto appShoppingCartAddDto) { |
| | | Long userId = SecurityUtils.getUserId(); |
| | | if(userId!=null){ |
| | | Member member = memberService.getById(userId); |
| | | appShoppingCartAddDto.setUserId(userId); |
| | | if(member!=null&&member.getRealtionShopId()!=null){ |
| | | appShoppingCartAddDto.setShopId(member.getRealtionShopId()); |
| | | } |
| | | } |
| | | shoppingCartService.addShoppingCart(appShoppingCartAddDto); |
| | | return R.ok(); |
| | | } |
| | | |
| | | @RequestMapping(value = "/changeShoppingCart", method = RequestMethod.POST) |
| | | @ApiOperation(value = "修改购物车") |
| | | public R changeShoppingCart(@RequestBody AppShoppingCartChangeDto appShoppingCartChangeDto) { |
| | | Long userId = SecurityUtils.getUserId(); |
| | | if(userId!=null){ |
| | | Member member = memberService.getById(userId); |
| | | appShoppingCartChangeDto.setUserId(userId); |
| | | if(member!=null&&member.getRealtionShopId()!=null){ |
| | | appShoppingCartChangeDto.setShopId(member.getRealtionShopId()); |
| | | } |
| | | } |
| | | shoppingCartService.changeShoppingCart(appShoppingCartChangeDto); |
| | | return R.ok(); |
| | | } |
| | | |
| | | @RequestMapping(value = "/deleteShoppingCart", method = RequestMethod.POST) |
| | | @ApiOperation(value = "删除购物车") |
| | | public R changeShoppingCart(@RequestBody AppBaseBathDto appBaseBathDto) { |
| | | Long userId = SecurityUtils.getUserId(); |
| | | if(userId!=null){ |
| | | Member member = memberService.getById(userId); |
| | | appBaseBathDto.setUserId(userId); |
| | | } |
| | | shoppingCartService.deleteShoppingCart(appBaseBathDto); |
| | | return R.ok(); |
| | | } |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.controller.miniapp; |
| | | |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.ruoyi.common.core.domain.R; |
| | | import com.ruoyi.common.security.utils.SecurityUtils; |
| | | import com.ruoyi.member.domain.pojo.member.Member; |
| | | import com.ruoyi.member.service.member.MemberService; |
| | | import com.ruoyi.system.service.config.AdvertService; |
| | | import com.ruoyi.system.service.config.BannerService; |
| | | import com.ruoyi.system.service.config.QuickEntryService; |
| | | import com.ruoyi.system.service.goods.GoodsService; |
| | | import com.ruoyi.system.service.shop.ShopService; |
| | | import io.swagger.annotations.Api; |
| | | import io.swagger.annotations.ApiOperation; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.web.bind.annotation.RequestBody; |
| | | import org.springframework.web.bind.annotation.RequestMapping; |
| | | import org.springframework.web.bind.annotation.RequestMethod; |
| | | import org.springframework.web.bind.annotation.RestController; |
| | | |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppHomeController |
| | | * @description: TODO |
| | | * @date 2023年04月18日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Api(value = "小程序首页相关接口", tags = "小程序首页相关接口", description = "小程序首页相关接口") |
| | | @RestController |
| | | @RequestMapping("/app/home") |
| | | public class AppHomeController { |
| | | |
| | | |
| | | @Autowired |
| | | private MemberService memberService; |
| | | |
| | | @Autowired |
| | | private BannerService bannerService; |
| | | |
| | | @Autowired |
| | | private QuickEntryService quickEntryService; |
| | | |
| | | @Autowired |
| | | private AdvertService advertService; |
| | | |
| | | @Autowired |
| | | private GoodsService goodsService; |
| | | |
| | | @Autowired |
| | | private ShopService shopService; |
| | | |
| | | @RequestMapping(value = "/getNearbyShop", method = RequestMethod.POST) |
| | | @ApiOperation(value = "获取最近商户") |
| | | public R<AppNearbyShopVo> getNearbyShop(@RequestBody AppNearbyShopDto appNearbyShopDto) { |
| | | Long userId = SecurityUtils.getUserId(); |
| | | appNearbyShopDto.setUserId(userId); |
| | | AppNearbyShopVo appNearbyShopVo = memberService.getNearbyShop(appNearbyShopDto); |
| | | return R.ok(appNearbyShopVo); |
| | | } |
| | | |
| | | @RequestMapping(value = "/getHomeBanner", method = RequestMethod.POST) |
| | | @ApiOperation(value = "获取首页banner") |
| | | public R<List<AppBannerVo>> getHomeBanner() { |
| | | List<AppBannerVo> appBannerVoList = bannerService.listHomeBannerVo(); |
| | | return R.ok(appBannerVoList); |
| | | } |
| | | |
| | | @RequestMapping(value = "/getQuickEntry", method = RequestMethod.POST) |
| | | @ApiOperation(value = "获取首页快速入口") |
| | | public R<List<AppQuickEntryVo>> getQuickEntry() { |
| | | List<AppQuickEntryVo> appQuickEntryVoList = quickEntryService.listQuickEntryVo(); |
| | | return R.ok(appQuickEntryVoList); |
| | | } |
| | | |
| | | @RequestMapping(value = "/getAdvert", method = RequestMethod.POST) |
| | | @ApiOperation(value = "获取首页广告") |
| | | public R<AppAdvertVo> getAdvert() { |
| | | AppAdvertVo appAdvertVo = advertService.getAdvertVo(); |
| | | return R.ok(appAdvertVo); |
| | | } |
| | | |
| | | @RequestMapping(value = "/pageRecommendGoods", method = RequestMethod.POST) |
| | | @ApiOperation(value = "推荐商品") |
| | | public R<Page<AppSimpleGoodsVo>> pageRecommendGoods(@RequestBody AppPageDto appPageDto) { |
| | | Long userId = SecurityUtils.getUserId(); |
| | | Long shopId = null; |
| | | if(userId!=null){ |
| | | Member member = memberService.getById(userId); |
| | | if(member!=null&&member.getRealtionShopId()!=null){ |
| | | shopId = member.getRealtionShopId(); |
| | | } |
| | | } |
| | | Page<AppSimpleGoodsVo> page = new Page<>(); |
| | | page.setSize(appPageDto.getPageSize()); |
| | | page.setCurrent(appPageDto.getPageNum()); |
| | | List<AppSimpleGoodsVo> appSimpleGoodsVoList = goodsService.pageRecommendGoods(page,shopId); |
| | | return R.ok(page.setRecords(appSimpleGoodsVoList)); |
| | | } |
| | | |
| | | @RequestMapping(value = "/pageShopGoods", method = RequestMethod.POST) |
| | | @ApiOperation(value = "商城商品") |
| | | public R<Page<AppSimpleGoodsVo>> pageShopGoods(@RequestBody AppShopGoodsPageDto appShopGoodsPageDto) { |
| | | Long userId = SecurityUtils.getUserId(); |
| | | if(userId!=null){ |
| | | Member member = memberService.getById(userId); |
| | | if(member!=null&&member.getRealtionShopId()!=null){ |
| | | appShopGoodsPageDto.setShopId(member.getRealtionShopId()); |
| | | } |
| | | } |
| | | Page<AppSimpleGoodsVo> page = new Page<>(); |
| | | page.setSize(appShopGoodsPageDto.getPageSize()); |
| | | page.setCurrent(appShopGoodsPageDto.getPageNum()); |
| | | List<AppSimpleGoodsVo> appSimpleGoodsVoList = goodsService.pageShopGoods(page,appShopGoodsPageDto); |
| | | return R.ok(page.setRecords(appSimpleGoodsVoList)); |
| | | } |
| | | |
| | | @RequestMapping(value = "/pageSearchGoods", method = RequestMethod.POST) |
| | | @ApiOperation(value = "搜索商品") |
| | | public R<Page<AppSimpleGoodsVo>> pageSearchGoods(@RequestBody AppSearchGoodsPageDto appSearchGoodsPageDto) { |
| | | Long userId = SecurityUtils.getUserId(); |
| | | if(userId!=null){ |
| | | Member member = memberService.getById(userId); |
| | | if(member!=null&&member.getRealtionShopId()!=null){ |
| | | appSearchGoodsPageDto.setShopId(member.getRealtionShopId()); |
| | | } |
| | | } |
| | | Page<AppSimpleGoodsVo> page = new Page<>(); |
| | | page.setSize(appSearchGoodsPageDto.getPageSize()); |
| | | page.setCurrent(appSearchGoodsPageDto.getPageNum()); |
| | | List<AppSimpleGoodsVo> appSimpleGoodsVoList = goodsService.pageSearchGoods(page,appSearchGoodsPageDto); |
| | | return R.ok(page.setRecords(appSimpleGoodsVoList)); |
| | | } |
| | | |
| | | @RequestMapping(value = "/pageSearchActivityGoods", method = RequestMethod.POST) |
| | | @ApiOperation(value = "搜索活动商品") |
| | | public R<Page<AppSimpleActivityGoodsVo>> pageSearchActivityGoods(@RequestBody AppSearchGoodsPageDto appSearchGoodsPageDto) { |
| | | Long userId = SecurityUtils.getUserId(); |
| | | if(userId!=null){ |
| | | Member member = memberService.getById(userId); |
| | | if(member!=null&&member.getRealtionShopId()!=null){ |
| | | appSearchGoodsPageDto.setShopId(member.getRealtionShopId()); |
| | | } |
| | | } |
| | | Page<AppSimpleActivityGoodsVo> page = new Page<>(); |
| | | page.setSize(appSearchGoodsPageDto.getPageSize()); |
| | | page.setCurrent(appSearchGoodsPageDto.getPageNum()); |
| | | List<AppSimpleActivityGoodsVo> appSimpleGoodsVoList = goodsService.pageSearchActivityGoods(page,appSearchGoodsPageDto); |
| | | return R.ok(page.setRecords(appSimpleGoodsVoList)); |
| | | } |
| | | |
| | | @RequestMapping(value = "/getShopInfo", method = RequestMethod.POST) |
| | | @ApiOperation(value = "获取商户详情") |
| | | public R<AppShopInfoVo> getShopInfo(@RequestBody AppBaseGetDto appBaseGetDto) { |
| | | AppShopInfoVo appShopInfoVo = shopService.getAppShopInfo(Long.valueOf(appBaseGetDto.getId())); |
| | | return R.ok(appShopInfoVo); |
| | | } |
| | | |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.domain.dto; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppAgreementDto |
| | | * @description: TODO |
| | | * @date 2023年03月07日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class AppAgreementDto extends AppBaseDto{ |
| | | |
| | | |
| | | @ApiModelProperty(value = "协议类型1用户协议 2隐私协议") |
| | | private Integer type; |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.domain.dto; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppBaseBathDto |
| | | * @description: TODO |
| | | * @date 2023年04月26日 |
| | | * @version: 1.0 |
| | | */ |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | @Data |
| | | public class AppBaseBathDto extends AppBaseDto{ |
| | | |
| | | @ApiModelProperty(value = "请求对象id集合 多个用,隔开") |
| | | private String ids; |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.domain.dto; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppBaseDto |
| | | * @description: TODO |
| | | * @date 2023年04月19日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class AppBaseDto { |
| | | |
| | | @ApiModelProperty(value = "userId",hidden = true) |
| | | private Long userId; |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.domain.dto; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppBaseGetDto |
| | | * @description: TODO |
| | | * @date 2023年04月19日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class AppBaseGetDto extends AppBaseDto{ |
| | | |
| | | @ApiModelProperty(value = "请求对象id") |
| | | private String id; |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.domain.dto; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppGoodsInfoGetDto |
| | | * @description: TODO |
| | | * @date 2023年04月20日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class AppGoodsInfoGetDto extends AppBaseGetDto { |
| | | |
| | | @ApiModelProperty(value = "是否活动跳转0否1是") |
| | | private Integer activityFlag; |
| | | |
| | | @ApiModelProperty(value = "商户id",hidden = true) |
| | | private Long shopId; |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.domain.dto; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppNearbyShopDto |
| | | * @description: TODO |
| | | * @date 2023年04月19日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class AppNearbyShopDto extends AppBaseDto{ |
| | | |
| | | |
| | | @ApiModelProperty(value = "经度") |
| | | private String longitude; |
| | | |
| | | @ApiModelProperty(value = "维度") |
| | | private String latitude; |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.domain.dto; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppPageDto |
| | | * @description: TODO |
| | | * @date 2023年04月20日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class AppPageDto extends AppBaseDto{ |
| | | |
| | | @ApiModelProperty(name = "pagenum", value = "页码") |
| | | private Integer pageNum = 1; |
| | | |
| | | |
| | | @ApiModelProperty(name = "pagesize", value = "每页显示条数") |
| | | private Integer pageSize = 20; |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.domain.dto; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppShopGoodsPageDto |
| | | * @description: TODO |
| | | * @date 2023年04月20日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class AppSearchGoodsPageDto extends AppPageDto { |
| | | |
| | | @ApiModelProperty(value = "shopId",hidden = true) |
| | | private Long shopId; |
| | | |
| | | @ApiModelProperty(value = "搜索关键词") |
| | | private String keyword; |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.domain.dto; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppShopGoodsPageDto |
| | | * @description: TODO |
| | | * @date 2023年04月20日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class AppShopGoodsPageDto extends AppPageDto{ |
| | | |
| | | @ApiModelProperty(value = "shopId",hidden = true) |
| | | private Long shopId; |
| | | |
| | | @ApiModelProperty(value = "搜索关键词") |
| | | private String keyword; |
| | | |
| | | @ApiModelProperty(value = "商品类型1周期2服务3体验4单品") |
| | | private Integer goodsType; |
| | | |
| | | @ApiModelProperty(value = "商品分类id") |
| | | private Long goodsClassId; |
| | | |
| | | @ApiModelProperty(value = "排序方式1.全部2.价格正序3.价格倒序4.销量正序5.销量倒序") |
| | | private Integer sort; |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.domain.dto; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppShoppingCartAddDto |
| | | * @description: TODO |
| | | * @date 2023年04月26日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class AppShoppingCartAddDto extends AppBaseDto{ |
| | | |
| | | @ApiModelProperty(value = "shopId",hidden = true) |
| | | private Long shopId; |
| | | |
| | | @ApiModelProperty(value = "商品id") |
| | | private Long goodsId; |
| | | |
| | | @ApiModelProperty(value = "购买数量") |
| | | private Integer buyNum; |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.domain.dto; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppShoppingCartAddDto |
| | | * @description: TODO |
| | | * @date 2023年04月26日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class AppShoppingCartChangeDto extends AppBaseDto{ |
| | | |
| | | @ApiModelProperty(value = "shopId",hidden = true) |
| | | private Long shopId; |
| | | |
| | | @ApiModelProperty(value = "商品id") |
| | | private Long goodsId; |
| | | |
| | | @ApiModelProperty(value = "变化后数量") |
| | | private Integer buyNum; |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.domain.dto; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppUserAuthorizeDto |
| | | * @description: TODO |
| | | * @date 2023年02月13日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class AppUserAuthorizeDto extends AppBaseDto{ |
| | | |
| | | @ApiModelProperty(value = "手机iv") |
| | | private String phoneIv; |
| | | |
| | | @ApiModelProperty(value = "手机encryptedData") |
| | | private String phoneEncryptedData; |
| | | |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.domain.dto; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName MGTBaseDto |
| | | * @description: TODO |
| | | * @date 2023年04月21日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class MgtBaseDto { |
| | | |
| | | @ApiModelProperty(value = "userId",hidden = true) |
| | | private Long userId; |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.domain.dto; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName MgtBaseGetDto |
| | | * @description: TODO |
| | | * @date 2023年04月21日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class MgtBaseGetDto extends MgtBaseDto{ |
| | | |
| | | @ApiModelProperty(value = "请求对象id") |
| | | private String id; |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.domain.dto; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName MGTChangeCooperDto |
| | | * @description: TODO |
| | | * @date 2023年04月21日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class MgtChangeCoopDto extends MgtBaseDto { |
| | | |
| | | @ApiModelProperty(value = "商户id") |
| | | private Long shopId; |
| | | |
| | | @ApiModelProperty("合作开始时间") |
| | | private String coopStartTime; |
| | | |
| | | @ApiModelProperty("合作结束时间") |
| | | private String coopEndTime; |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.domain.dto; |
| | | |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName ManageCreateShopDto |
| | | * @description: TODO |
| | | * @date 2023年04月21日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class MgtEditShopDto extends MgtBaseDto{ |
| | | |
| | | |
| | | @ApiModelProperty(value = "商户id,新增不传") |
| | | private Long shopId; |
| | | |
| | | @ApiModelProperty("商户名称") |
| | | private String shopName; |
| | | |
| | | @ApiModelProperty("商户类型1.经销商2.代理商") |
| | | private Integer shopType; |
| | | |
| | | @ApiModelProperty("营业开始时间") |
| | | private String businessStartTime; |
| | | |
| | | @ApiModelProperty("营业结束时间") |
| | | private String businessEndTime; |
| | | |
| | | @ApiModelProperty("店主姓名") |
| | | private String shopownerName; |
| | | |
| | | @ApiModelProperty("店主联系方式") |
| | | private String shopownerPhone; |
| | | |
| | | @ApiModelProperty("签约区域") |
| | | private String signAreaCode; |
| | | |
| | | @ApiModelProperty("商户服务电话") |
| | | private String shopServicePhone; |
| | | |
| | | @ApiModelProperty("管辖员工") |
| | | private Long belongUserId; |
| | | |
| | | @ApiModelProperty("所属经销商") |
| | | private Long belongShopId; |
| | | |
| | | @ApiModelProperty("扶持能力1.有2.没有") |
| | | private Integer supportingCapacityFlag; |
| | | |
| | | @ApiModelProperty("店面操作人数1.1人2.1人以上") |
| | | private Integer operationPersonFlag; |
| | | |
| | | @ApiModelProperty("执行力1.强2.弱") |
| | | private Integer executiveForceFlag; |
| | | |
| | | @ApiModelProperty("格局1.大2.小") |
| | | private Integer patternFlag; |
| | | |
| | | @ApiModelProperty("人脉1.宽2.窄") |
| | | private Integer connectionFlag; |
| | | |
| | | @ApiModelProperty("经济能力1.强2.差") |
| | | private Integer economicAbilityFlag; |
| | | |
| | | @ApiModelProperty("与合作商关系1.好2.差") |
| | | private Integer relationPartner; |
| | | |
| | | @ApiModelProperty("曾从事事业") |
| | | private String businessHistory; |
| | | |
| | | @ApiModelProperty("店铺地址省code") |
| | | private String shopProvinceCode; |
| | | |
| | | @ApiModelProperty("店铺地址市code") |
| | | private String shopCityCode; |
| | | |
| | | @ApiModelProperty("店铺地址区code") |
| | | private String shopAreaCode; |
| | | |
| | | @ApiModelProperty("店铺区域全称") |
| | | private String shopAreaName; |
| | | |
| | | @ApiModelProperty("店铺详细地址") |
| | | private String shopAddress; |
| | | |
| | | @ApiModelProperty("店铺经度") |
| | | private String shopLongitude; |
| | | |
| | | @ApiModelProperty("店铺维度") |
| | | private String shopLatitude; |
| | | |
| | | @ApiModelProperty("店铺详情") |
| | | private String shopDetail; |
| | | |
| | | @ApiModelProperty("营销功能1开2关") |
| | | private Integer marketingFunctionFlag; |
| | | |
| | | @ApiModelProperty("领券1开2关") |
| | | private Integer platformCouponFlag; |
| | | |
| | | @ApiModelProperty("生日卡1开2关") |
| | | private Integer platformBirthdayFlag; |
| | | |
| | | @ApiModelProperty("推荐人") |
| | | private String recommendPerson; |
| | | |
| | | @ApiModelProperty("商户标签id 多个用,隔开") |
| | | private String shopTagIds; |
| | | |
| | | @ApiModelProperty("关联用户id 多个用,隔开") |
| | | private String relUserIds; |
| | | |
| | | @ApiModelProperty("商户封面") |
| | | private String shopPicture; |
| | | |
| | | @ApiModelProperty("商户banner 多个用,隔开") |
| | | private String shopBanners; |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.domain.dto; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName MgtEditShopTagDto |
| | | * @description: TODO |
| | | * @date 2023年04月21日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class MgtEditShopTagDto extends MgtBaseGetDto { |
| | | |
| | | @ApiModelProperty("商户标签id 多个用,隔开") |
| | | private String shopTagIds; |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.domain.dto; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppPageDto |
| | | * @description: TODO |
| | | * @date 2023年04月20日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class MgtPageDto extends MgtBaseDto{ |
| | | |
| | | @ApiModelProperty(name = "pagenum", value = "页码") |
| | | private Integer pageNum = 1; |
| | | |
| | | |
| | | @ApiModelProperty(name = "pagesize", value = "每页显示条数") |
| | | private Integer pageSize = 20; |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.domain.dto; |
| | | |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName MgtShopPageDto |
| | | * @description: TODO |
| | | * @date 2023年04月21日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class MgtShopPageDto extends MgtPageDto { |
| | | |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.domain.pojo.shop; |
| | | |
| | | import java.util.Date; |
| | | import com.baomidou.mybatisplus.annotation.TableId; |
| | | import com.baomidou.mybatisplus.annotation.TableField; |
| | | import com.baomidou.mybatisplus.activerecord.Model; |
| | | import com.baomidou.mybatisplus.annotation.TableName; |
| | | import java.io.Serializable; |
| | | |
| | | import lombok.Data; |
| | | import lombok.EqualsAndHashCode; |
| | | import lombok.experimental.Accessors; |
| | | |
| | | /** |
| | | * <p> |
| | | * 会员跟进任务 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | @Data |
| | | @EqualsAndHashCode(callSuper = false) |
| | | @Accessors(chain = true) |
| | | @TableName("t_member_task") |
| | | public class MemberTask extends Model<MemberTask> { |
| | | |
| | | private static final long serialVersionUID = 1L; |
| | | |
| | | @TableId("task_id") |
| | | private String taskId; |
| | | @TableField("del_flag") |
| | | private Integer delFlag; |
| | | @TableField("shop_id") |
| | | private Long shopId; |
| | | @TableField("user_id") |
| | | private Long userId; |
| | | @TableField("task_date") |
| | | private Date taskDate; |
| | | @TableField("task_content") |
| | | private String taskContent; |
| | | @TableField("create_time") |
| | | private Date createTime; |
| | | |
| | | |
| | | @Override |
| | | protected Serializable pkVal() { |
| | | return this.taskId; |
| | | } |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.domain.pojo.shop; |
| | | |
| | | import com.baomidou.mybatisplus.annotation.IdType; |
| | | import java.util.Date; |
| | | import com.baomidou.mybatisplus.annotation.TableId; |
| | | import com.baomidou.mybatisplus.annotation.TableField; |
| | | import com.baomidou.mybatisplus.activerecord.Model; |
| | | import com.baomidou.mybatisplus.annotation.TableName; |
| | | import java.io.Serializable; |
| | | |
| | | import lombok.Data; |
| | | import lombok.EqualsAndHashCode; |
| | | import lombok.experimental.Accessors; |
| | | |
| | | /** |
| | | * <p> |
| | | * 会员跟进任务记录 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | @Data |
| | | @EqualsAndHashCode(callSuper = false) |
| | | @Accessors(chain = true) |
| | | @TableName("t_member_task_record") |
| | | public class MemberTaskRecord extends Model<MemberTaskRecord> { |
| | | |
| | | private static final long serialVersionUID = 1L; |
| | | |
| | | @TableId(value = "id", type = IdType.AUTO) |
| | | private Long id; |
| | | /** |
| | | * 删除标记 |
| | | */ |
| | | @TableField("del_flag") |
| | | private Integer delFlag; |
| | | /** |
| | | * 任务id |
| | | */ |
| | | @TableField("task_id") |
| | | private String taskId; |
| | | /** |
| | | * 用户id |
| | | */ |
| | | @TableField("user_id") |
| | | private Long userId; |
| | | /** |
| | | * 跟踪类型 |
| | | */ |
| | | @TableField("follow_type") |
| | | private Integer followType; |
| | | /** |
| | | * 电话时间 |
| | | */ |
| | | @TableField("call_time") |
| | | private Date callTime; |
| | | /** |
| | | * 跟踪内容 |
| | | */ |
| | | @TableField("follow_content") |
| | | private String followContent; |
| | | |
| | | |
| | | @Override |
| | | protected Serializable pkVal() { |
| | | return this.id; |
| | | } |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.domain.pojo.shop; |
| | | |
| | | import com.baomidou.mybatisplus.annotation.IdType; |
| | | import java.util.Date; |
| | | import com.baomidou.mybatisplus.annotation.TableId; |
| | | import com.baomidou.mybatisplus.annotation.TableField; |
| | | import com.baomidou.mybatisplus.activerecord.Model; |
| | | import com.baomidou.mybatisplus.annotation.TableName; |
| | | import java.io.Serializable; |
| | | |
| | | import lombok.Data; |
| | | import lombok.EqualsAndHashCode; |
| | | import lombok.experimental.Accessors; |
| | | |
| | | /** |
| | | * <p> |
| | | * 商户表 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | @Data |
| | | @EqualsAndHashCode(callSuper = false) |
| | | @Accessors(chain = true) |
| | | @TableName("t_shop") |
| | | public class Shop extends Model<Shop> { |
| | | |
| | | private static final long serialVersionUID = 1L; |
| | | |
| | | /** |
| | | * 商户id |
| | | */ |
| | | @TableId(value = "shop_id", type = IdType.AUTO) |
| | | private Long shopId; |
| | | /** |
| | | * 删除标记 |
| | | */ |
| | | @TableField("del_flag") |
| | | private Integer delFlag; |
| | | /** |
| | | * 商户状态-1删除0冻结1正常2终止合作 |
| | | */ |
| | | @TableField("shop_status") |
| | | private Integer shopStatus; |
| | | @TableField("create_time") |
| | | private Date createTime; |
| | | @TableField("create_user_id") |
| | | private Long createUserId; |
| | | @TableField("update_time") |
| | | private Date updateTime; |
| | | @TableField("update_user_id") |
| | | private Long updateUserId; |
| | | /** |
| | | * 商户名称 |
| | | */ |
| | | @TableField("shop_name") |
| | | private String shopName; |
| | | /** |
| | | * 商户编号 |
| | | */ |
| | | @TableField("shop_number") |
| | | private String shopNumber; |
| | | /** |
| | | * 商户类型1.经销商2.代理商 |
| | | */ |
| | | @TableField("shop_type") |
| | | private Integer shopType; |
| | | /** |
| | | * 营业开始时间 |
| | | */ |
| | | @TableField("business_start_time") |
| | | private String businessStartTime; |
| | | /** |
| | | * 营业结束时间 |
| | | */ |
| | | @TableField("business_end_time") |
| | | private String businessEndTime; |
| | | /** |
| | | * 店主姓名 |
| | | */ |
| | | @TableField("shopowner_name") |
| | | private String shopownerName; |
| | | /** |
| | | * 店主联系方式 |
| | | */ |
| | | @TableField("shopowner_phone") |
| | | private String shopownerPhone; |
| | | /** |
| | | * 签约时间 |
| | | */ |
| | | @TableField("sign_time") |
| | | private Date signTime; |
| | | /** |
| | | * 签约省code |
| | | */ |
| | | @TableField("sign_province_code") |
| | | private String signProvinceCode; |
| | | /** |
| | | * 签约市code |
| | | */ |
| | | @TableField("sign_city_code") |
| | | private String signCityCode; |
| | | /** |
| | | * 签约区域code |
| | | */ |
| | | @TableField("sign_area_code") |
| | | private String signAreaCode; |
| | | /** |
| | | * 签约区域全称 |
| | | */ |
| | | @TableField("sign_area_name") |
| | | private String signAreaName; |
| | | /** |
| | | * 商户服务电话 |
| | | */ |
| | | @TableField("shop_service_phone") |
| | | private String shopServicePhone; |
| | | /** |
| | | * 归属员工 |
| | | */ |
| | | @TableField("belong_user_id") |
| | | private Long belongUserId; |
| | | /** |
| | | * 归属经销商 |
| | | */ |
| | | @TableField("belong_shop_id") |
| | | private Long belongShopId; |
| | | /** |
| | | * 扶持能力1.有2.没有 |
| | | */ |
| | | @TableField("supporting_capacity_flag") |
| | | private Integer supportingCapacityFlag; |
| | | /** |
| | | * 店面操作人数1.1人2.1人以上 |
| | | */ |
| | | @TableField("operation_person_flag") |
| | | private Integer operationPersonFlag; |
| | | /** |
| | | * 执行力1.强2.弱 |
| | | */ |
| | | @TableField("executive_force_flag") |
| | | private Integer executiveForceFlag; |
| | | /** |
| | | * 格局1.大2.小 |
| | | */ |
| | | @TableField("pattern_flag") |
| | | private Integer patternFlag; |
| | | /** |
| | | * 人脉1.宽2.窄 |
| | | */ |
| | | @TableField("connection_flag") |
| | | private Integer connectionFlag; |
| | | /** |
| | | * 经济能力1.强2.差 |
| | | */ |
| | | @TableField("economic_ability_flag") |
| | | private Integer economicAbilityFlag; |
| | | /** |
| | | * 与合作商关系1.好2.差 |
| | | */ |
| | | @TableField("relation_partner") |
| | | private Integer relationPartner; |
| | | /** |
| | | * 曾从事事业 |
| | | */ |
| | | @TableField("business_history") |
| | | private String businessHistory; |
| | | /** |
| | | * 店铺地址省code |
| | | */ |
| | | @TableField("shop_province_code") |
| | | private String shopProvinceCode; |
| | | /** |
| | | * 店铺地址市code |
| | | */ |
| | | @TableField("shop_city_code") |
| | | private String shopCityCode; |
| | | /** |
| | | * 店铺地址区code |
| | | */ |
| | | @TableField("shop_area_code") |
| | | private String shopAreaCode; |
| | | /** |
| | | * 店铺区域全称 |
| | | */ |
| | | @TableField("shop_area_name") |
| | | private String shopAreaName; |
| | | /** |
| | | * 店铺详细地址 |
| | | */ |
| | | @TableField("shop_address") |
| | | private String shopAddress; |
| | | /** |
| | | * 店铺经度 |
| | | */ |
| | | @TableField("shop_longitude") |
| | | private String shopLongitude; |
| | | /** |
| | | * 店铺维度 |
| | | */ |
| | | @TableField("shop_latitude") |
| | | private String shopLatitude; |
| | | /** |
| | | * 店铺详情 |
| | | */ |
| | | @TableField("shop_detail") |
| | | private String shopDetail; |
| | | /** |
| | | * 营销功能1开2关 |
| | | */ |
| | | @TableField("marketing_function_flag") |
| | | private Integer marketingFunctionFlag; |
| | | /** |
| | | * 领券1开2关 |
| | | */ |
| | | @TableField("platform_coupon_flag") |
| | | private Integer platformCouponFlag; |
| | | /** |
| | | * 生日卡1开2关 |
| | | */ |
| | | @TableField("platform_birthday_flag") |
| | | private Integer platformBirthdayFlag; |
| | | /** |
| | | * 店铺设置状态 |
| | | */ |
| | | @TableField("shop_custom_status") |
| | | private String shopCustomStatus; |
| | | /** |
| | | * 推荐人 |
| | | */ |
| | | @TableField("recommend_person") |
| | | private String recommendPerson; |
| | | /** |
| | | * 合作截止时间 |
| | | */ |
| | | @TableField("cooperation_end_time") |
| | | private Date cooperationEndTime; |
| | | /** |
| | | * 合作开始时间 |
| | | */ |
| | | @TableField("cooperation_start_time") |
| | | private Date cooperationStartTime; |
| | | /** |
| | | * 商户标签 |
| | | */ |
| | | @TableField("shop_tags") |
| | | private String shopTags; |
| | | /** |
| | | * 签约人 |
| | | */ |
| | | @TableField("sign_user_id") |
| | | private Long signUserId; |
| | | /** |
| | | * 来源渠道 |
| | | */ |
| | | @TableField("shop_source") |
| | | private String shopSource; |
| | | |
| | | |
| | | @Override |
| | | protected Serializable pkVal() { |
| | | return this.shopId; |
| | | } |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.domain.pojo.shop; |
| | | |
| | | import com.baomidou.mybatisplus.annotation.IdType; |
| | | import com.baomidou.mybatisplus.annotation.TableId; |
| | | import com.baomidou.mybatisplus.annotation.TableField; |
| | | import com.baomidou.mybatisplus.activerecord.Model; |
| | | import com.baomidou.mybatisplus.annotation.TableName; |
| | | import java.io.Serializable; |
| | | |
| | | import lombok.Data; |
| | | import lombok.EqualsAndHashCode; |
| | | import lombok.experimental.Accessors; |
| | | |
| | | /** |
| | | * <p> |
| | | * 商户证书 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | @Data |
| | | @EqualsAndHashCode(callSuper = false) |
| | | @Accessors(chain = true) |
| | | @TableName("t_shop_certificate") |
| | | public class ShopCertificate extends Model<ShopCertificate> { |
| | | |
| | | private static final long serialVersionUID = 1L; |
| | | |
| | | /** |
| | | * 证书id |
| | | */ |
| | | @TableId(value = "cer_id", type = IdType.AUTO) |
| | | private Long cerId; |
| | | /** |
| | | * 删除标记 |
| | | */ |
| | | @TableField("del_flag") |
| | | private Integer delFlag; |
| | | /** |
| | | * 证书状态-1删除0待审核1审核通过2审核拒绝 |
| | | */ |
| | | @TableField("cer_status") |
| | | private Integer cerStatus; |
| | | /** |
| | | * 商户id |
| | | */ |
| | | @TableField("shop_id") |
| | | private Long shopId; |
| | | /** |
| | | * 证书名字 |
| | | */ |
| | | @TableField("cer_name") |
| | | private String cerName; |
| | | /** |
| | | * 证书编号 |
| | | */ |
| | | @TableField("cer_number") |
| | | private String cerNumber; |
| | | /** |
| | | * 证书图片 |
| | | */ |
| | | @TableField("cer_picture") |
| | | private String cerPicture; |
| | | |
| | | |
| | | @Override |
| | | protected Serializable pkVal() { |
| | | return this.cerId; |
| | | } |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.domain.pojo.shop; |
| | | |
| | | import com.baomidou.mybatisplus.annotation.IdType; |
| | | import com.baomidou.mybatisplus.annotation.TableId; |
| | | import com.baomidou.mybatisplus.annotation.TableField; |
| | | import com.baomidou.mybatisplus.activerecord.Model; |
| | | import com.baomidou.mybatisplus.annotation.TableName; |
| | | import java.io.Serializable; |
| | | |
| | | import lombok.Data; |
| | | import lombok.EqualsAndHashCode; |
| | | import lombok.experimental.Accessors; |
| | | |
| | | /** |
| | | * <p> |
| | | * 商户图片 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | @Data |
| | | @EqualsAndHashCode(callSuper = false) |
| | | @Accessors(chain = true) |
| | | @TableName("t_shop_file") |
| | | public class ShopFile extends Model<ShopFile> { |
| | | |
| | | private static final long serialVersionUID = 1L; |
| | | |
| | | @TableId(value = "id", type = IdType.AUTO) |
| | | private Long id; |
| | | /** |
| | | * 删除标记 |
| | | */ |
| | | @TableField("del_flag") |
| | | private Integer delFlag; |
| | | /** |
| | | * 商户id |
| | | */ |
| | | @TableField("shop_id") |
| | | private Long shopId; |
| | | /** |
| | | * 文件类型1.封面2.图片 |
| | | */ |
| | | @TableField("file_type") |
| | | private Integer fileType; |
| | | /** |
| | | * 文件地址 |
| | | */ |
| | | @TableField("file_url") |
| | | private String fileUrl; |
| | | |
| | | |
| | | @Override |
| | | protected Serializable pkVal() { |
| | | return this.id; |
| | | } |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.domain.pojo.shop; |
| | | |
| | | import com.baomidou.mybatisplus.annotation.IdType; |
| | | import java.math.BigDecimal; |
| | | import java.util.Date; |
| | | import com.baomidou.mybatisplus.annotation.TableId; |
| | | import com.baomidou.mybatisplus.annotation.TableField; |
| | | import com.baomidou.mybatisplus.activerecord.Model; |
| | | import com.baomidou.mybatisplus.annotation.TableName; |
| | | import java.io.Serializable; |
| | | |
| | | import lombok.Data; |
| | | import lombok.EqualsAndHashCode; |
| | | import lombok.experimental.Accessors; |
| | | |
| | | /** |
| | | * <p> |
| | | * 商户定制商品 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | @Data |
| | | @EqualsAndHashCode(callSuper = false) |
| | | @Accessors(chain = true) |
| | | @TableName("t_shop_goods") |
| | | public class ShopGoods extends Model<ShopGoods> { |
| | | |
| | | private static final long serialVersionUID = 1L; |
| | | |
| | | @TableId(value = "id", type = IdType.AUTO) |
| | | private Long id; |
| | | /** |
| | | * 删除标记 |
| | | */ |
| | | @TableField("del_flag") |
| | | private Integer delFlag; |
| | | /** |
| | | * 商户id |
| | | */ |
| | | @TableField("shop_id") |
| | | private Long shopId; |
| | | /** |
| | | * 商品id |
| | | */ |
| | | @TableField("goods_id") |
| | | private Long goodsId; |
| | | /** |
| | | * 商户售价 |
| | | */ |
| | | @TableField("sales_price") |
| | | private BigDecimal salesPrice; |
| | | /** |
| | | * 商户服务次数 |
| | | */ |
| | | @TableField("service_num") |
| | | private Integer serviceNum; |
| | | /** |
| | | * 更新时间 |
| | | */ |
| | | @TableField("update_time") |
| | | private Date updateTime; |
| | | /** |
| | | * 更新用户id |
| | | */ |
| | | @TableField("update_user_id") |
| | | private Long updateUserId; |
| | | |
| | | |
| | | @Override |
| | | protected Serializable pkVal() { |
| | | return this.id; |
| | | } |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.domain.pojo.shop; |
| | | |
| | | import com.baomidou.mybatisplus.annotation.IdType; |
| | | import com.baomidou.mybatisplus.annotation.TableId; |
| | | import com.baomidou.mybatisplus.annotation.TableField; |
| | | import com.baomidou.mybatisplus.activerecord.Model; |
| | | import com.baomidou.mybatisplus.annotation.TableName; |
| | | import java.io.Serializable; |
| | | |
| | | import lombok.Data; |
| | | import lombok.EqualsAndHashCode; |
| | | import lombok.experimental.Accessors; |
| | | |
| | | /** |
| | | * <p> |
| | | * 商户营销 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | @Data |
| | | @EqualsAndHashCode(callSuper = false) |
| | | @Accessors(chain = true) |
| | | @TableName("t_shop_marketing") |
| | | public class ShopMarketing extends Model<ShopMarketing> { |
| | | |
| | | private static final long serialVersionUID = 1L; |
| | | |
| | | @TableId(value = "shop_id", type = IdType.AUTO) |
| | | private Long shopId; |
| | | /** |
| | | * 删除标记 |
| | | */ |
| | | @TableField("del_flag") |
| | | private Integer delFlag; |
| | | /** |
| | | * 店铺生日活动开关1开2关 |
| | | */ |
| | | @TableField("shop_birthday_flag") |
| | | private Integer shopBirthdayFlag; |
| | | /** |
| | | * 领卷活动次数 |
| | | */ |
| | | @TableField("shop_coupon_count") |
| | | private Integer shopCouponCount; |
| | | /** |
| | | * 营销活动总计 |
| | | */ |
| | | @TableField("shop_marketing_total") |
| | | private Integer shopMarketingTotal; |
| | | |
| | | |
| | | @Override |
| | | protected Serializable pkVal() { |
| | | return this.shopId; |
| | | } |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.domain.pojo.shop; |
| | | |
| | | import com.baomidou.mybatisplus.annotation.IdType; |
| | | import com.baomidou.mybatisplus.annotation.TableId; |
| | | import com.baomidou.mybatisplus.annotation.TableField; |
| | | import com.baomidou.mybatisplus.activerecord.Model; |
| | | import com.baomidou.mybatisplus.annotation.TableName; |
| | | import java.io.Serializable; |
| | | |
| | | import lombok.Data; |
| | | import lombok.EqualsAndHashCode; |
| | | import lombok.experimental.Accessors; |
| | | |
| | | /** |
| | | * <p> |
| | | * 商户标签 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | @Data |
| | | @EqualsAndHashCode(callSuper = false) |
| | | @Accessors(chain = true) |
| | | @TableName("t_shop_rel_tag") |
| | | public class ShopRelTag extends Model<ShopRelTag> { |
| | | |
| | | private static final long serialVersionUID = 1L; |
| | | |
| | | @TableId(value = "id", type = IdType.AUTO) |
| | | private Long id; |
| | | /** |
| | | * 删除标记 |
| | | */ |
| | | @TableField("del_flag") |
| | | private Integer delFlag; |
| | | /** |
| | | * 商户id |
| | | */ |
| | | @TableField("shop_id") |
| | | private Long shopId; |
| | | /** |
| | | * 标签id |
| | | */ |
| | | @TableField("tag_id") |
| | | private Long tagId; |
| | | |
| | | |
| | | @Override |
| | | protected Serializable pkVal() { |
| | | return this.id; |
| | | } |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.domain.pojo.shop; |
| | | |
| | | import com.baomidou.mybatisplus.annotation.IdType; |
| | | import com.baomidou.mybatisplus.annotation.TableId; |
| | | import com.baomidou.mybatisplus.annotation.TableField; |
| | | import com.baomidou.mybatisplus.activerecord.Model; |
| | | import com.baomidou.mybatisplus.annotation.TableName; |
| | | import java.io.Serializable; |
| | | |
| | | import lombok.Data; |
| | | import lombok.EqualsAndHashCode; |
| | | import lombok.experimental.Accessors; |
| | | |
| | | /** |
| | | * <p> |
| | | * 商户关联员工 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | @Data |
| | | @EqualsAndHashCode(callSuper = false) |
| | | @Accessors(chain = true) |
| | | @TableName("t_shop_rel_user") |
| | | public class ShopRelUser extends Model<ShopRelUser> { |
| | | |
| | | private static final long serialVersionUID = 1L; |
| | | |
| | | @TableId(value = "id", type = IdType.AUTO) |
| | | private Long id; |
| | | /** |
| | | * 删除标记 |
| | | */ |
| | | @TableField("del_flag") |
| | | private Integer delFlag; |
| | | /** |
| | | * 商户id |
| | | */ |
| | | @TableField("shop_id") |
| | | private Long shopId; |
| | | /** |
| | | * 用户id |
| | | */ |
| | | @TableField("user_id") |
| | | private Long userId; |
| | | /** |
| | | * 用户手机 |
| | | */ |
| | | @TableField("user_mobile") |
| | | private String userMobile; |
| | | /** |
| | | * 用户部门id |
| | | */ |
| | | @TableField("user_dept_id") |
| | | private Long userDeptId; |
| | | /** |
| | | * 用户姓名 |
| | | */ |
| | | @TableField("user_name") |
| | | private String userName; |
| | | |
| | | |
| | | @Override |
| | | protected Serializable pkVal() { |
| | | return this.id; |
| | | } |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.domain.pojo.shop; |
| | | |
| | | import java.util.Date; |
| | | import com.baomidou.mybatisplus.annotation.TableId; |
| | | import com.baomidou.mybatisplus.annotation.TableField; |
| | | import com.baomidou.mybatisplus.activerecord.Model; |
| | | import com.baomidou.mybatisplus.annotation.TableName; |
| | | import java.io.Serializable; |
| | | |
| | | import lombok.Data; |
| | | import lombok.EqualsAndHashCode; |
| | | import lombok.experimental.Accessors; |
| | | |
| | | /** |
| | | * <p> |
| | | * 商户跟进任务 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | @Data |
| | | @EqualsAndHashCode(callSuper = false) |
| | | @Accessors(chain = true) |
| | | @TableName("t_shop_task") |
| | | public class ShopTask extends Model<ShopTask> { |
| | | |
| | | private static final long serialVersionUID = 1L; |
| | | |
| | | @TableId("task_id") |
| | | private String taskId; |
| | | /** |
| | | * 删除标记 |
| | | */ |
| | | @TableField("del_flag") |
| | | private Integer delFlag; |
| | | /** |
| | | * 商户id |
| | | */ |
| | | @TableField("shop_id") |
| | | private Long shopId; |
| | | /** |
| | | * 跟进类型id |
| | | */ |
| | | @TableField("follow_type_id") |
| | | private Long followTypeId; |
| | | /** |
| | | * 跟进内容 |
| | | */ |
| | | @TableField("follow_content") |
| | | private String followContent; |
| | | /** |
| | | * 下次跟进时间 |
| | | */ |
| | | @TableField("next_follow_date") |
| | | private Date nextFollowDate; |
| | | /** |
| | | * 任务标题 |
| | | */ |
| | | @TableField("task_title") |
| | | private String taskTitle; |
| | | /** |
| | | * 紧急情况id |
| | | */ |
| | | @TableField("emergency_state_id") |
| | | private Long emergencyStateId; |
| | | /** |
| | | * 创建时间 |
| | | */ |
| | | @TableField("create_time") |
| | | private Date createTime; |
| | | |
| | | |
| | | @Override |
| | | protected Serializable pkVal() { |
| | | return this.taskId; |
| | | } |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.domain.pojo.shop; |
| | | |
| | | import com.baomidou.mybatisplus.annotation.IdType; |
| | | import com.baomidou.mybatisplus.annotation.TableId; |
| | | import com.baomidou.mybatisplus.annotation.TableField; |
| | | import com.baomidou.mybatisplus.activerecord.Model; |
| | | import com.baomidou.mybatisplus.annotation.TableName; |
| | | import java.io.Serializable; |
| | | |
| | | import lombok.Data; |
| | | import lombok.EqualsAndHashCode; |
| | | import lombok.experimental.Accessors; |
| | | |
| | | /** |
| | | * <p> |
| | | * 商户员工转移记录 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | @Data |
| | | @EqualsAndHashCode(callSuper = false) |
| | | @Accessors(chain = true) |
| | | @TableName("t_shop_transfer_record") |
| | | public class ShopTransferRecord extends Model<ShopTransferRecord> { |
| | | |
| | | private static final long serialVersionUID = 1L; |
| | | |
| | | @TableId(value = "id", type = IdType.AUTO) |
| | | private Long id; |
| | | /** |
| | | * 删除标记 |
| | | */ |
| | | @TableField("del_flag") |
| | | private Integer delFlag; |
| | | /** |
| | | * 商户id |
| | | */ |
| | | @TableField("shop_id") |
| | | private Long shopId; |
| | | /** |
| | | * 转移前用户id |
| | | */ |
| | | @TableField("before_user_id") |
| | | private Long beforeUserId; |
| | | /** |
| | | * 转移后用户id |
| | | */ |
| | | @TableField("after_user_id") |
| | | private Long afterUserId; |
| | | /** |
| | | * 备注 |
| | | */ |
| | | @TableField("transfer_remark") |
| | | private String transferRemark; |
| | | |
| | | |
| | | @Override |
| | | protected Serializable pkVal() { |
| | | return this.id; |
| | | } |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.domain.pojo.shop; |
| | | |
| | | import com.baomidou.mybatisplus.annotation.IdType; |
| | | import com.baomidou.mybatisplus.annotation.TableId; |
| | | import com.baomidou.mybatisplus.annotation.TableField; |
| | | import com.baomidou.mybatisplus.activerecord.Model; |
| | | import com.baomidou.mybatisplus.annotation.TableName; |
| | | import java.io.Serializable; |
| | | |
| | | import lombok.Data; |
| | | import lombok.EqualsAndHashCode; |
| | | import lombok.experimental.Accessors; |
| | | |
| | | /** |
| | | * <p> |
| | | * 跟进附件 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | @Data |
| | | @EqualsAndHashCode(callSuper = false) |
| | | @Accessors(chain = true) |
| | | @TableName("t_task_file") |
| | | public class TaskFile extends Model<TaskFile> { |
| | | |
| | | private static final long serialVersionUID = 1L; |
| | | |
| | | @TableId(value = "id", type = IdType.AUTO) |
| | | private Long id; |
| | | /** |
| | | * 删除标记 |
| | | */ |
| | | @TableField("del_flag") |
| | | private Integer delFlag; |
| | | /** |
| | | * 跟进id |
| | | */ |
| | | @TableField("follow_id") |
| | | private Long followId; |
| | | /** |
| | | * 跟进来源1商户2客户 |
| | | */ |
| | | @TableField("follow_from") |
| | | private Integer followFrom; |
| | | /** |
| | | * 文件地址 |
| | | */ |
| | | @TableField("file_url") |
| | | private String fileUrl; |
| | | /** |
| | | * 文件类型1.图片2.视频3.音频 |
| | | */ |
| | | @TableField("file_type") |
| | | private Integer fileType; |
| | | |
| | | |
| | | @Override |
| | | protected Serializable pkVal() { |
| | | return this.id; |
| | | } |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.domain.vo; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppQuickEntryVo |
| | | * @description: TODO |
| | | * @date 2023年04月20日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class AppAdvertVo { |
| | | |
| | | @ApiModelProperty(value = "广告入口") |
| | | private Long adId; |
| | | |
| | | @ApiModelProperty(value = "广告图片地址") |
| | | private String adUrl; |
| | | |
| | | @ApiModelProperty(value = "广告语") |
| | | private String adContent; |
| | | |
| | | @ApiModelProperty(value = "对象类型1.外链2.内链3.无") |
| | | private Integer targetType; |
| | | |
| | | @ApiModelProperty(value = "链接地址") |
| | | private String linkUrl; |
| | | |
| | | @ApiModelProperty(value = "跳转id") |
| | | private String jumpId; |
| | | |
| | | @ApiModelProperty(value = "logo地址") |
| | | private String logoUrl; |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.domain.vo; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppAgreementVo |
| | | * @description: TODO |
| | | * @date 2023年03月07日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class AppAgreementVo { |
| | | |
| | | @ApiModelProperty(value = "协议id") |
| | | private Long agreementId; |
| | | |
| | | @ApiModelProperty(value = "协议内容") |
| | | private String agreementContent; |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.domain.vo; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppBannerVo |
| | | * @description: TODO |
| | | * @date 2023年04月20日 |
| | | * @version: 1.0 |
| | | */ |
| | | |
| | | @Data |
| | | public class AppBannerVo { |
| | | |
| | | @ApiModelProperty(value = "bannerid") |
| | | private Long bannerId; |
| | | |
| | | @ApiModelProperty(value = "banner图片地址") |
| | | private String bannerUrl; |
| | | |
| | | @ApiModelProperty(value = "链接类型1.外部2.内部3.无") |
| | | private Integer targetType; |
| | | |
| | | @ApiModelProperty(value = "链接类型1.手动输入2.选择已有") |
| | | private Integer linkType; |
| | | |
| | | @ApiModelProperty(value = "链接地址") |
| | | private String linkUrl; |
| | | |
| | | @ApiModelProperty(value = "跳转类型1.门店详情2.秒杀活动3领券中心4.商城列表5.关于洪瑞堂") |
| | | private Integer jumpType; |
| | | |
| | | @ApiModelProperty(value = "跳转id") |
| | | private String jumpId; |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.domain.vo; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | import java.math.BigDecimal; |
| | | import java.util.Date; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppGoodsInfoVo |
| | | * @description: TODO |
| | | * @date 2023年04月20日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class AppGoodsInfoVo { |
| | | |
| | | @ApiModelProperty(value = "商品id") |
| | | private Long goodsId; |
| | | |
| | | @ApiModelProperty(value = "商品名称") |
| | | private String goodsName; |
| | | |
| | | @ApiModelProperty(value = "商品简介") |
| | | private String goodsIntroduction; |
| | | |
| | | @ApiModelProperty(value = "商品视频") |
| | | private String goodsVideo; |
| | | |
| | | @ApiModelProperty(value = "商品banner") |
| | | private String goodsBanners; |
| | | |
| | | @ApiModelProperty(value = "商品类型1周期2服务3体验4单品") |
| | | private Integer goodsType; |
| | | |
| | | @ApiModelProperty(value = "商品标签") |
| | | private String goodsTag; |
| | | |
| | | @ApiModelProperty(value = "商品调理问题") |
| | | private BigDecimal goodsNurses; |
| | | |
| | | @ApiModelProperty("服务次数") |
| | | private Integer serviceNum; |
| | | |
| | | @ApiModelProperty(value = "商品售价") |
| | | private BigDecimal salesPrice; |
| | | |
| | | @ApiModelProperty(value = "商品详情") |
| | | private String goodsDetail; |
| | | |
| | | @ApiModelProperty(value = "销售数量") |
| | | private Integer salesNum; |
| | | |
| | | @ApiModelProperty(value = "是否活动跳转0否1是") |
| | | private Integer activityFlag; |
| | | |
| | | @ApiModelProperty(value = "商品活动价") |
| | | private BigDecimal activityPrice; |
| | | |
| | | @ApiModelProperty(value = "售罄标记0否1是") |
| | | private Integer sellOutFlag; |
| | | |
| | | @ApiModelProperty(value = "活动截止时间") |
| | | private Date activityDeadline; |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.domain.vo; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppNearbyShopDto |
| | | * @description: TODO |
| | | * @date 2023年04月19日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class AppNearbyShopVo { |
| | | |
| | | |
| | | @ApiModelProperty(value = "商户id") |
| | | private Long shopId; |
| | | |
| | | @ApiModelProperty(value = "商户名称") |
| | | private String shopName; |
| | | |
| | | @ApiModelProperty(value = "商户地址") |
| | | private String shopAddress; |
| | | |
| | | @ApiModelProperty(value = "经度") |
| | | private String shopLongitude; |
| | | |
| | | @ApiModelProperty(value = "维度") |
| | | private String shopLatitude; |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.domain.vo; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppQuickEntryVo |
| | | * @description: TODO |
| | | * @date 2023年04月20日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class AppQuickEntryVo { |
| | | |
| | | @ApiModelProperty(value = "快速入口") |
| | | private Long entryId; |
| | | |
| | | @ApiModelProperty(value = "入口图片地址") |
| | | private String entryUrl; |
| | | |
| | | @ApiModelProperty(value = "入口名称") |
| | | private String entryName; |
| | | |
| | | @ApiModelProperty(value = "对象类型1.外链2.内链3.无") |
| | | private Integer targetType; |
| | | |
| | | @ApiModelProperty(value = "链接地址") |
| | | private String linkUrl; |
| | | |
| | | @ApiModelProperty(value = "跳转id") |
| | | private String jumpId; |
| | | |
| | | |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.domain.vo; |
| | | |
| | | import com.ruoyi.shop.domain.pojo.shop.ShopCertificate; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppShopInfoVo |
| | | * @description: TODO |
| | | * @date 2023年04月20日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class AppShopInfoVo { |
| | | |
| | | @ApiModelProperty(value = "商户id") |
| | | private Long shopId; |
| | | |
| | | @ApiModelProperty(value = "商户名称") |
| | | private String shopName; |
| | | |
| | | @ApiModelProperty(value = "商户地址") |
| | | private String shopAddress; |
| | | |
| | | @ApiModelProperty(value = "经度") |
| | | private String shopLongitude; |
| | | |
| | | @ApiModelProperty(value = "维度") |
| | | private String shopLatitude; |
| | | |
| | | @ApiModelProperty("营业开始时间") |
| | | private String businessStartTime; |
| | | |
| | | @ApiModelProperty("营业结束时间") |
| | | private String businessEndTime; |
| | | |
| | | @ApiModelProperty("商户标签") |
| | | private String shopTags; |
| | | |
| | | @ApiModelProperty("商户服务电话") |
| | | private String shopServicePhone; |
| | | |
| | | @ApiModelProperty("商户封面") |
| | | private String shopPicture; |
| | | |
| | | @ApiModelProperty("商户banners") |
| | | private String shopBanners; |
| | | |
| | | @ApiModelProperty("店铺详情") |
| | | private String shopDetail; |
| | | |
| | | @ApiModelProperty("店铺证书") |
| | | private List<ShopCertificate> shopCertificateList; |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.domain.vo; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | import java.math.BigDecimal; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppSimpleGoodsVo |
| | | * @description: TODO |
| | | * @date 2023年04月20日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class AppSimpleActivityGoodsVo { |
| | | |
| | | @ApiModelProperty(value = "商品id") |
| | | private Long goodsId; |
| | | |
| | | @ApiModelProperty(value = "商品名称") |
| | | private String goodsName; |
| | | |
| | | @ApiModelProperty(value = "商品简介") |
| | | private String goodsIntroduction; |
| | | |
| | | @ApiModelProperty(value = "商品图片") |
| | | private String goodsPicture; |
| | | |
| | | @ApiModelProperty(value = "商品类型1周期2服务3体验4单品") |
| | | private Integer goodsType; |
| | | |
| | | @ApiModelProperty(value = "商品标签") |
| | | private String goodsTag; |
| | | |
| | | @ApiModelProperty(value = "商品调理问题") |
| | | private BigDecimal goodsNurses; |
| | | |
| | | @ApiModelProperty(value = "商品售价") |
| | | private BigDecimal salesPrice; |
| | | |
| | | @ApiModelProperty(value = "商品活动价") |
| | | private BigDecimal activityPrice; |
| | | |
| | | @ApiModelProperty(value = "活动销售数量") |
| | | private Integer activityNumber; |
| | | |
| | | @ApiModelProperty(value = "已售数量") |
| | | private Integer salesNumber; |
| | | |
| | | @ApiModelProperty(value = "已售比例") |
| | | private BigDecimal salesPercent; |
| | | |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.domain.vo; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | import java.math.BigDecimal; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppSimpleGoodsVo |
| | | * @description: TODO |
| | | * @date 2023年04月20日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class AppSimpleGoodsVo { |
| | | |
| | | @ApiModelProperty(value = "商品id") |
| | | private Long goodsId; |
| | | |
| | | @ApiModelProperty(value = "商品名称") |
| | | private String goodsName; |
| | | |
| | | @ApiModelProperty(value = "商品简介") |
| | | private String goodsIntroduction; |
| | | |
| | | @ApiModelProperty(value = "商品图片") |
| | | private String goodsPicture; |
| | | |
| | | @ApiModelProperty(value = "商品类型1周期2服务3体验4单品") |
| | | private Integer goodsType; |
| | | |
| | | @ApiModelProperty(value = "商品标签") |
| | | private String goodsTag; |
| | | |
| | | @ApiModelProperty(value = "商品调理问题") |
| | | private BigDecimal goodsNurses; |
| | | |
| | | @ApiModelProperty(value = "商品售价") |
| | | private BigDecimal salesPrice; |
| | | |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.domain.vo; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppUserAuthorizeDto |
| | | * @description: TODO |
| | | * @date 2023年02月13日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class AppUserAuthorizeVo { |
| | | |
| | | @ApiModelProperty(value = "微信openid") |
| | | private String openid; |
| | | |
| | | @ApiModelProperty(value = "微信unionid") |
| | | private String unionid; |
| | | |
| | | @ApiModelProperty(value = "微信昵称") |
| | | private String nickName; |
| | | |
| | | @ApiModelProperty(value = "用户手机") |
| | | private String mobile; |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.domain.vo; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | import java.math.BigDecimal; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName MerHomeShopTotalVo |
| | | * @description: TODO |
| | | * @date 2023年04月21日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class MerHomeShopTotalVo { |
| | | |
| | | @ApiModelProperty(value = "商户id") |
| | | private Long shopId; |
| | | |
| | | @ApiModelProperty(value = "今日到店") |
| | | private Integer todayShop; |
| | | |
| | | @ApiModelProperty(value = "待处理订单") |
| | | private Integer unHandleOrder; |
| | | |
| | | @ApiModelProperty(value = "跟进任务") |
| | | private Integer task; |
| | | |
| | | @ApiModelProperty(value = "店铺营业额") |
| | | private BigDecimal shopTurnover; |
| | | |
| | | @ApiModelProperty(value = "剩余周期人数") |
| | | private Integer cycleSurp; |
| | | |
| | | @ApiModelProperty(value = "剩余体验人数") |
| | | private Integer explorationSurp; |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.domain.vo; |
| | | |
| | | import com.ruoyi.shop.domain.pojo.shop.ShopCertificate; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName MerShopInfoVo |
| | | * @description: TODO |
| | | * @date 2023年04月21日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class MerShopInfoVo { |
| | | |
| | | @ApiModelProperty(value = "商户id") |
| | | private Long shopId; |
| | | |
| | | @ApiModelProperty("商户名称") |
| | | private String shopName; |
| | | |
| | | @ApiModelProperty("商户类型1.经销商2.代理商") |
| | | private Integer shopType; |
| | | |
| | | @ApiModelProperty("营业开始时间") |
| | | private String businessStartTime; |
| | | |
| | | @ApiModelProperty("营业结束时间") |
| | | private String businessEndTime; |
| | | |
| | | @ApiModelProperty("店主姓名") |
| | | private String shopownerName; |
| | | |
| | | @ApiModelProperty("店主联系方式") |
| | | private String shopownerPhone; |
| | | |
| | | @ApiModelProperty("签约区域") |
| | | private String signAreaCode; |
| | | |
| | | @ApiModelProperty("商户服务电话") |
| | | private String shopServicePhone; |
| | | |
| | | @ApiModelProperty("管辖员工") |
| | | private Long belongUserId; |
| | | |
| | | @ApiModelProperty("所属经销商") |
| | | private Long belongShopId; |
| | | |
| | | @ApiModelProperty("扶持能力1.有2.没有") |
| | | private Integer supportingCapacityFlag; |
| | | |
| | | @ApiModelProperty("店面操作人数1.1人2.1人以上") |
| | | private Integer operationPersonFlag; |
| | | |
| | | @ApiModelProperty("执行力1.强2.弱") |
| | | private Integer executiveForceFlag; |
| | | |
| | | @ApiModelProperty("格局1.大2.小") |
| | | private Integer patternFlag; |
| | | |
| | | @ApiModelProperty("人脉1.宽2.窄") |
| | | private Integer connectionFlag; |
| | | |
| | | @ApiModelProperty("经济能力1.强2.差") |
| | | private Integer economicAbilityFlag; |
| | | |
| | | @ApiModelProperty("与合作商关系1.好2.差") |
| | | private Integer relationPartner; |
| | | |
| | | @ApiModelProperty("曾从事事业") |
| | | private String businessHistory; |
| | | |
| | | @ApiModelProperty("店铺地址省code") |
| | | private String shopProvinceCode; |
| | | |
| | | @ApiModelProperty("店铺地址市code") |
| | | private String shopCityCode; |
| | | |
| | | @ApiModelProperty("店铺地址区code") |
| | | private String shopAreaCode; |
| | | |
| | | @ApiModelProperty("店铺区域全称") |
| | | private String shopAreaName; |
| | | |
| | | @ApiModelProperty("店铺详细地址") |
| | | private String shopAddress; |
| | | |
| | | @ApiModelProperty("店铺经度") |
| | | private String shopLongitude; |
| | | |
| | | @ApiModelProperty("店铺维度") |
| | | private String shopLatitude; |
| | | |
| | | @ApiModelProperty("店铺详情") |
| | | private String shopDetail; |
| | | |
| | | @ApiModelProperty("营销功能1开2关") |
| | | private Integer marketingFunctionFlag; |
| | | |
| | | @ApiModelProperty("领券1开2关") |
| | | private Integer platformCouponFlag; |
| | | |
| | | @ApiModelProperty("生日卡1开2关") |
| | | private Integer platformBirthdayFlag; |
| | | |
| | | @ApiModelProperty("推荐人") |
| | | private String recommendPerson; |
| | | |
| | | @ApiModelProperty("商户标签id 多个用,隔开") |
| | | private String shopTagIds; |
| | | |
| | | @ApiModelProperty("商户标签") |
| | | private String shopTags; |
| | | |
| | | @ApiModelProperty("关联用户id 多个用,隔开") |
| | | private String relUserIds; |
| | | |
| | | @ApiModelProperty("关联用户") |
| | | private String relUsers; |
| | | |
| | | @ApiModelProperty("商户封面") |
| | | private String shopPicture; |
| | | |
| | | @ApiModelProperty("商户banner 多个用,隔开") |
| | | private String shopBanners; |
| | | |
| | | @ApiModelProperty("证书list") |
| | | private List<ShopCertificate> shopCertificateList; |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.domain.vo; |
| | | |
| | | import com.ruoyi.common.core.utils.StringUtils; |
| | | |
| | | /** |
| | | * 路由显示信息 |
| | | * |
| | | * @author ruoyi |
| | | */ |
| | | public class MetaVo |
| | | { |
| | | /** |
| | | * 设置该路由在侧边栏和面包屑中展示的名字 |
| | | */ |
| | | private String title; |
| | | |
| | | /** |
| | | * 设置该路由的图标,对应路径src/assets/icons/svg |
| | | */ |
| | | private String icon; |
| | | |
| | | /** |
| | | * 设置为true,则不会被 <keep-alive>缓存 |
| | | */ |
| | | private boolean noCache; |
| | | |
| | | /** |
| | | * 内链地址(http(s)://开头) |
| | | */ |
| | | private String link; |
| | | |
| | | public MetaVo() |
| | | { |
| | | } |
| | | |
| | | public MetaVo(String title, String icon) |
| | | { |
| | | this.title = title; |
| | | this.icon = icon; |
| | | } |
| | | |
| | | public MetaVo(String title, String icon, boolean noCache) |
| | | { |
| | | this.title = title; |
| | | this.icon = icon; |
| | | this.noCache = noCache; |
| | | } |
| | | |
| | | public MetaVo(String title, String icon, String link) |
| | | { |
| | | this.title = title; |
| | | this.icon = icon; |
| | | this.link = link; |
| | | } |
| | | |
| | | public MetaVo(String title, String icon, boolean noCache, String link) |
| | | { |
| | | this.title = title; |
| | | this.icon = icon; |
| | | this.noCache = noCache; |
| | | if (StringUtils.ishttp(link)) |
| | | { |
| | | this.link = link; |
| | | } |
| | | } |
| | | |
| | | public boolean isNoCache() |
| | | { |
| | | return noCache; |
| | | } |
| | | |
| | | public void setNoCache(boolean noCache) |
| | | { |
| | | this.noCache = noCache; |
| | | } |
| | | |
| | | public String getTitle() |
| | | { |
| | | return title; |
| | | } |
| | | |
| | | public void setTitle(String title) |
| | | { |
| | | this.title = title; |
| | | } |
| | | |
| | | public String getIcon() |
| | | { |
| | | return icon; |
| | | } |
| | | |
| | | public void setIcon(String icon) |
| | | { |
| | | this.icon = icon; |
| | | } |
| | | |
| | | public String getLink() |
| | | { |
| | | return link; |
| | | } |
| | | |
| | | public void setLink(String link) |
| | | { |
| | | this.link = link; |
| | | } |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.domain.vo; |
| | | |
| | | import com.ruoyi.shop.domain.pojo.shop.ShopCertificate; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName MgtShopInfoVo |
| | | * @description: TODO |
| | | * @date 2023年04月21日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class MgtShopInfoVo { |
| | | |
| | | @ApiModelProperty(value = "商户id") |
| | | private Long shopId; |
| | | |
| | | @ApiModelProperty("商户名称") |
| | | private String shopName; |
| | | |
| | | @ApiModelProperty("商户类型1.经销商2.代理商") |
| | | private Integer shopType; |
| | | |
| | | @ApiModelProperty("营业开始时间") |
| | | private String businessStartTime; |
| | | |
| | | @ApiModelProperty("营业结束时间") |
| | | private String businessEndTime; |
| | | |
| | | @ApiModelProperty("店主姓名") |
| | | private String shopownerName; |
| | | |
| | | @ApiModelProperty("店主联系方式") |
| | | private String shopownerPhone; |
| | | |
| | | @ApiModelProperty("签约区域") |
| | | private String signAreaCode; |
| | | |
| | | @ApiModelProperty("商户服务电话") |
| | | private String shopServicePhone; |
| | | |
| | | @ApiModelProperty("管辖员工") |
| | | private Long belongUserId; |
| | | |
| | | @ApiModelProperty("所属经销商") |
| | | private Long belongShopId; |
| | | |
| | | @ApiModelProperty("扶持能力1.有2.没有") |
| | | private Integer supportingCapacityFlag; |
| | | |
| | | @ApiModelProperty("店面操作人数1.1人2.1人以上") |
| | | private Integer operationPersonFlag; |
| | | |
| | | @ApiModelProperty("执行力1.强2.弱") |
| | | private Integer executiveForceFlag; |
| | | |
| | | @ApiModelProperty("格局1.大2.小") |
| | | private Integer patternFlag; |
| | | |
| | | @ApiModelProperty("人脉1.宽2.窄") |
| | | private Integer connectionFlag; |
| | | |
| | | @ApiModelProperty("经济能力1.强2.差") |
| | | private Integer economicAbilityFlag; |
| | | |
| | | @ApiModelProperty("与合作商关系1.好2.差") |
| | | private Integer relationPartner; |
| | | |
| | | @ApiModelProperty("曾从事事业") |
| | | private String businessHistory; |
| | | |
| | | @ApiModelProperty("店铺地址省code") |
| | | private String shopProvinceCode; |
| | | |
| | | @ApiModelProperty("店铺地址市code") |
| | | private String shopCityCode; |
| | | |
| | | @ApiModelProperty("店铺地址区code") |
| | | private String shopAreaCode; |
| | | |
| | | @ApiModelProperty("店铺区域全称") |
| | | private String shopAreaName; |
| | | |
| | | @ApiModelProperty("店铺详细地址") |
| | | private String shopAddress; |
| | | |
| | | @ApiModelProperty("店铺经度") |
| | | private String shopLongitude; |
| | | |
| | | @ApiModelProperty("店铺维度") |
| | | private String shopLatitude; |
| | | |
| | | @ApiModelProperty("店铺详情") |
| | | private String shopDetail; |
| | | |
| | | @ApiModelProperty("营销功能1开2关") |
| | | private Integer marketingFunctionFlag; |
| | | |
| | | @ApiModelProperty("领券1开2关") |
| | | private Integer platformCouponFlag; |
| | | |
| | | @ApiModelProperty("生日卡1开2关") |
| | | private Integer platformBirthdayFlag; |
| | | |
| | | @ApiModelProperty("推荐人") |
| | | private String recommendPerson; |
| | | |
| | | @ApiModelProperty("商户标签id 多个用,隔开") |
| | | private String shopTagIds; |
| | | |
| | | @ApiModelProperty("商户标签") |
| | | private String shopTags; |
| | | |
| | | @ApiModelProperty("关联用户id 多个用,隔开") |
| | | private String relUserIds; |
| | | |
| | | @ApiModelProperty("关联用户") |
| | | private String relUsers; |
| | | |
| | | @ApiModelProperty("商户封面") |
| | | private String shopPicture; |
| | | |
| | | @ApiModelProperty("商户banner 多个用,隔开") |
| | | private String shopBanners; |
| | | |
| | | @ApiModelProperty("证书list") |
| | | private List<ShopCertificate> shopCertificateList; |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.domain.vo; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | import java.math.BigDecimal; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName MgtShopPageVo |
| | | * @description: TODO |
| | | * @date 2023年04月21日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class MgtShopPageVo { |
| | | |
| | | @ApiModelProperty(value = "商户id") |
| | | private Long shopId; |
| | | |
| | | @ApiModelProperty("签约时间") |
| | | private String signTime; |
| | | |
| | | @ApiModelProperty("商户名称") |
| | | private String shopName; |
| | | |
| | | @ApiModelProperty("商户编号") |
| | | private String shopNumber; |
| | | |
| | | @ApiModelProperty("商户标签") |
| | | private String shopTags; |
| | | |
| | | @ApiModelProperty("签约人") |
| | | private String signUser; |
| | | |
| | | @ApiModelProperty("首提金额") |
| | | private BigDecimal firstWithdraw; |
| | | |
| | | @ApiModelProperty("关联员工") |
| | | private BigDecimal belongUser; |
| | | |
| | | @ApiModelProperty("关联部门") |
| | | private BigDecimal belongDept; |
| | | |
| | | @ApiModelProperty("来源渠道") |
| | | private String shopSource; |
| | | |
| | | @ApiModelProperty("签约区域") |
| | | private String signAreaName; |
| | | |
| | | @ApiModelProperty("合作期限") |
| | | private String cooperationTime; |
| | | |
| | | @ApiModelProperty("店铺地址") |
| | | private String shopAddress; |
| | | |
| | | @ApiModelProperty("店主姓名") |
| | | private String shopownerName; |
| | | |
| | | @ApiModelProperty("店主联系方式") |
| | | private String shopownerPhone; |
| | | |
| | | @ApiModelProperty("商户状态-1删除0冻结1正常2终止合作") |
| | | private Integer shopStatus; |
| | | |
| | | @ApiModelProperty("商户活动次数") |
| | | private Integer shopActivityCount; |
| | | |
| | | @ApiModelProperty("店铺设置状态") |
| | | private String shopCustomStatus; |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.domain.vo; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName MgtShopTagVo |
| | | * @description: TODO |
| | | * @date 2023年04月21日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class MgtShopTagVo { |
| | | |
| | | @ApiModelProperty(value = "标签id") |
| | | private Long tagId; |
| | | |
| | | @ApiModelProperty(value = "标签名称") |
| | | private String tagName; |
| | | |
| | | @ApiModelProperty(value = "是否选择0否1是") |
| | | private Integer selectFlag; |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.domain.vo; |
| | | |
| | | import com.fasterxml.jackson.annotation.JsonInclude; |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * 路由配置信息 |
| | | * |
| | | * @author ruoyi |
| | | */ |
| | | @JsonInclude(JsonInclude.Include.NON_EMPTY) |
| | | public class RouterVo |
| | | { |
| | | /** |
| | | * 路由名字 |
| | | */ |
| | | private String name; |
| | | |
| | | /** |
| | | * 路由地址 |
| | | */ |
| | | private String path; |
| | | |
| | | /** |
| | | * 是否隐藏路由,当设置 true 的时候该路由不会再侧边栏出现 |
| | | */ |
| | | private boolean hidden; |
| | | |
| | | /** |
| | | * 重定向地址,当设置 noRedirect 的时候该路由在面包屑导航中不可被点击 |
| | | */ |
| | | private String redirect; |
| | | |
| | | /** |
| | | * 组件地址 |
| | | */ |
| | | private String component; |
| | | |
| | | /** |
| | | * 路由参数:如 {"id": 1, "name": "ry"} |
| | | */ |
| | | private String query; |
| | | |
| | | /** |
| | | * 当你一个路由下面的 children 声明的路由大于1个时,自动会变成嵌套的模式--如组件页面 |
| | | */ |
| | | private Boolean alwaysShow; |
| | | |
| | | /** |
| | | * 其他元素 |
| | | */ |
| | | private MetaVo meta; |
| | | |
| | | /** |
| | | * 子路由 |
| | | */ |
| | | private List<RouterVo> children; |
| | | |
| | | public String getName() |
| | | { |
| | | return name; |
| | | } |
| | | |
| | | public void setName(String name) |
| | | { |
| | | this.name = name; |
| | | } |
| | | |
| | | public String getPath() |
| | | { |
| | | return path; |
| | | } |
| | | |
| | | public void setPath(String path) |
| | | { |
| | | this.path = path; |
| | | } |
| | | |
| | | public boolean getHidden() |
| | | { |
| | | return hidden; |
| | | } |
| | | |
| | | public void setHidden(boolean hidden) |
| | | { |
| | | this.hidden = hidden; |
| | | } |
| | | |
| | | public String getRedirect() |
| | | { |
| | | return redirect; |
| | | } |
| | | |
| | | public void setRedirect(String redirect) |
| | | { |
| | | this.redirect = redirect; |
| | | } |
| | | |
| | | public String getComponent() |
| | | { |
| | | return component; |
| | | } |
| | | |
| | | public void setComponent(String component) |
| | | { |
| | | this.component = component; |
| | | } |
| | | |
| | | public String getQuery() |
| | | { |
| | | return query; |
| | | } |
| | | |
| | | public void setQuery(String query) |
| | | { |
| | | this.query = query; |
| | | } |
| | | |
| | | public Boolean getAlwaysShow() |
| | | { |
| | | return alwaysShow; |
| | | } |
| | | |
| | | public void setAlwaysShow(Boolean alwaysShow) |
| | | { |
| | | this.alwaysShow = alwaysShow; |
| | | } |
| | | |
| | | public MetaVo getMeta() |
| | | { |
| | | return meta; |
| | | } |
| | | |
| | | public void setMeta(MetaVo meta) |
| | | { |
| | | this.meta = meta; |
| | | } |
| | | |
| | | public List<RouterVo> getChildren() |
| | | { |
| | | return children; |
| | | } |
| | | |
| | | public void setChildren(List<RouterVo> children) |
| | | { |
| | | this.children = children; |
| | | } |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.domain.vo; |
| | | |
| | | import java.io.Serializable; |
| | | import java.util.List; |
| | | import java.util.stream.Collectors; |
| | | import com.fasterxml.jackson.annotation.JsonInclude; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysDept; |
| | | import com.ruoyi.system.domain.pojo.sys.SysMenu; |
| | | |
| | | /** |
| | | * Treeselect树结构实体类 |
| | | * |
| | | * @author ruoyi |
| | | */ |
| | | public class TreeSelect implements Serializable |
| | | { |
| | | private static final long serialVersionUID = 1L; |
| | | |
| | | /** 节点ID */ |
| | | private Long id; |
| | | |
| | | /** 节点名称 */ |
| | | private String label; |
| | | |
| | | /** 子节点 */ |
| | | @JsonInclude(JsonInclude.Include.NON_EMPTY) |
| | | private List<TreeSelect> children; |
| | | |
| | | public TreeSelect() |
| | | { |
| | | |
| | | } |
| | | |
| | | public TreeSelect(SysDept dept) |
| | | { |
| | | this.id = dept.getDeptId(); |
| | | this.label = dept.getDeptName(); |
| | | this.children = dept.getChildren().stream().map(TreeSelect::new).collect(Collectors.toList()); |
| | | } |
| | | |
| | | public TreeSelect(SysMenu menu) |
| | | { |
| | | this.id = menu.getMenuId(); |
| | | this.label = menu.getMenuName(); |
| | | this.children = menu.getChildren().stream().map(TreeSelect::new).collect(Collectors.toList()); |
| | | } |
| | | |
| | | public Long getId() |
| | | { |
| | | return id; |
| | | } |
| | | |
| | | public void setId(Long id) |
| | | { |
| | | this.id = id; |
| | | } |
| | | |
| | | public String getLabel() |
| | | { |
| | | return label; |
| | | } |
| | | |
| | | public void setLabel(String label) |
| | | { |
| | | this.label = label; |
| | | } |
| | | |
| | | public List<TreeSelect> getChildren() |
| | | { |
| | | return children; |
| | | } |
| | | |
| | | public void setChildren(List<TreeSelect> children) |
| | | { |
| | | this.children = children; |
| | | } |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.mapper.shop; |
| | | |
| | | import com.ruoyi.shop.domain.pojo.shop.MemberTask; |
| | | import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
| | | |
| | | /** |
| | | * <p> |
| | | * 会员跟进任务 Mapper 接口 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | public interface MemberTaskMapper extends BaseMapper<MemberTask> { |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.mapper.shop; |
| | | |
| | | import com.ruoyi.shop.domain.pojo.shop.MemberTaskRecord; |
| | | import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
| | | |
| | | /** |
| | | * <p> |
| | | * 会员跟进任务记录 Mapper 接口 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | public interface MemberTaskRecordMapper extends BaseMapper<MemberTaskRecord> { |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.mapper.shop; |
| | | |
| | | import com.ruoyi.shop.domain.pojo.shop.ShopCertificate; |
| | | import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
| | | |
| | | /** |
| | | * <p> |
| | | * 商户证书 Mapper 接口 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | public interface ShopCertificateMapper extends BaseMapper<ShopCertificate> { |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.mapper.shop; |
| | | |
| | | import com.ruoyi.shop.domain.pojo.shop.ShopFile; |
| | | import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
| | | |
| | | /** |
| | | * <p> |
| | | * 商户图片 Mapper 接口 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | public interface ShopFileMapper extends BaseMapper<ShopFile> { |
| | | /** |
| | | * 通过商户id删除关联 |
| | | * @param shopId |
| | | */ |
| | | void deleteByShopId(Long shopId); |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.mapper.shop; |
| | | |
| | | import com.ruoyi.shop.domain.pojo.shop.ShopGoods; |
| | | import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
| | | |
| | | /** |
| | | * <p> |
| | | * 商户定制商品 Mapper 接口 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | public interface ShopGoodsMapper extends BaseMapper<ShopGoods> { |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.mapper.shop; |
| | | |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.ruoyi.shop.domain.pojo.shop.Shop; |
| | | import com.ruoyi.shop.domain.dto.MgtShopPageDto; |
| | | import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
| | | import com.ruoyi.shop.domain.vo.MgtShopPageVo; |
| | | |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * <p> |
| | | * 商户表 Mapper 接口 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | public interface ShopMapper extends BaseMapper<Shop> { |
| | | /** |
| | | * 分页获取商户 |
| | | * @param page |
| | | * @param mgtShopPageDto |
| | | * @return |
| | | */ |
| | | List<MgtShopPageVo> pageShop(Page page, MgtShopPageDto mgtShopPageDto); |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.mapper.shop; |
| | | |
| | | import com.ruoyi.shop.domain.pojo.shop.ShopMarketing; |
| | | import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
| | | |
| | | /** |
| | | * <p> |
| | | * 商户营销 Mapper 接口 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | public interface ShopMarketingMapper extends BaseMapper<ShopMarketing> { |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.mapper.shop; |
| | | |
| | | import com.ruoyi.shop.domain.pojo.shop.ShopRelTag; |
| | | import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
| | | import com.ruoyi.shop.domain.vo.MgtShopTagVo; |
| | | import org.apache.ibatis.annotations.Param; |
| | | |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * <p> |
| | | * 商户标签 Mapper 接口 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | public interface ShopRelTagMapper extends BaseMapper<ShopRelTag> { |
| | | |
| | | /** |
| | | * 通过商户id删除关联 |
| | | * @param shopId |
| | | */ |
| | | void deleteByShopId(@Param("param") Long shopId); |
| | | |
| | | /** |
| | | * 获取商户标签 |
| | | * @param shopId |
| | | * @return |
| | | */ |
| | | List<MgtShopTagVo> listShopTagVo(@Param("param")Long shopId); |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.mapper.shop; |
| | | |
| | | import com.ruoyi.shop.domain.pojo.shop.ShopRelUser; |
| | | import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
| | | |
| | | /** |
| | | * <p> |
| | | * 商户关联员工 Mapper 接口 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | public interface ShopRelUserMapper extends BaseMapper<ShopRelUser> { |
| | | |
| | | /** |
| | | * 通过商户id删除关联 |
| | | * @param shopId |
| | | */ |
| | | void deleteByShopId(Long shopId); |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.mapper.shop; |
| | | |
| | | import com.ruoyi.shop.domain.pojo.shop.ShopTask; |
| | | import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
| | | |
| | | /** |
| | | * <p> |
| | | * 商户跟进任务 Mapper 接口 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | public interface ShopTaskMapper extends BaseMapper<ShopTask> { |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.mapper.shop; |
| | | |
| | | import com.ruoyi.shop.domain.pojo.shop.ShopTransferRecord; |
| | | import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
| | | |
| | | /** |
| | | * <p> |
| | | * 商户员工转移记录 Mapper 接口 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | public interface ShopTransferRecordMapper extends BaseMapper<ShopTransferRecord> { |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.mapper.shop; |
| | | |
| | | import com.ruoyi.shop.domain.pojo.shop.TaskFile; |
| | | import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
| | | |
| | | /** |
| | | * <p> |
| | | * 跟进附件 Mapper 接口 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | public interface TaskFileMapper extends BaseMapper<TaskFile> { |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.service.impl.shop; |
| | | |
| | | import com.ruoyi.shop.domain.pojo.shop.MemberTaskRecord; |
| | | import com.ruoyi.shop.mapper.shop.MemberTaskRecordMapper; |
| | | import com.ruoyi.shop.service.shop.MemberTaskRecordService; |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | /** |
| | | * <p> |
| | | * 会员跟进任务记录 服务实现类 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | @Service |
| | | public class MemberTaskRecordServiceImpl extends ServiceImpl<MemberTaskRecordMapper, MemberTaskRecord> implements MemberTaskRecordService { |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.service.impl.shop; |
| | | |
| | | import com.ruoyi.shop.domain.pojo.shop.MemberTask; |
| | | import com.ruoyi.shop.mapper.shop.MemberTaskMapper; |
| | | import com.ruoyi.shop.service.shop.MemberTaskService; |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | /** |
| | | * <p> |
| | | * 会员跟进任务 服务实现类 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | @Service |
| | | public class MemberTaskServiceImpl extends ServiceImpl<MemberTaskMapper, MemberTask> implements MemberTaskService { |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.service.impl.shop; |
| | | |
| | | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
| | | import com.baomidou.mybatisplus.core.toolkit.Wrappers; |
| | | import com.ruoyi.shop.domain.pojo.shop.ShopCertificate; |
| | | import com.ruoyi.shop.mapper.shop.ShopCertificateMapper; |
| | | import com.ruoyi.shop.service.shop.ShopCertificateService; |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * <p> |
| | | * 商户证书 服务实现类 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | @Service |
| | | public class ShopCertificateServiceImpl extends ServiceImpl<ShopCertificateMapper, ShopCertificate> implements ShopCertificateService { |
| | | |
| | | /** |
| | | * 通过商户id获取商户证书 |
| | | * @param shopId |
| | | * @return |
| | | */ |
| | | @Override |
| | | public List<ShopCertificate> listShopCertificateByShopId(Long shopId){ |
| | | LambdaQueryWrapper<ShopCertificate> queryWrapper = Wrappers.lambdaQuery(); |
| | | queryWrapper.eq(ShopCertificate::getDelFlag, 0).eq(ShopCertificate::getShopId, shopId).eq(ShopCertificate::getCerStatus,1); |
| | | return this.list(queryWrapper); |
| | | } |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.service.impl.shop; |
| | | |
| | | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
| | | import com.baomidou.mybatisplus.core.toolkit.Wrappers; |
| | | import com.ruoyi.shop.domain.pojo.shop.ShopFile; |
| | | import com.ruoyi.shop.mapper.shop.ShopFileMapper; |
| | | import com.ruoyi.shop.service.shop.ShopFileService; |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | import javax.annotation.Resource; |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * <p> |
| | | * 商户图片 服务实现类 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | @Service |
| | | public class ShopFileServiceImpl extends ServiceImpl<ShopFileMapper, ShopFile> implements ShopFileService { |
| | | @Resource |
| | | private ShopFileMapper shopFileMapper; |
| | | |
| | | /** |
| | | * 通过商户id获取商户文件 |
| | | * @param shopId |
| | | * @return |
| | | */ |
| | | @Override |
| | | public List<ShopFile> listShopFileByShopId(Long shopId){ |
| | | LambdaQueryWrapper<ShopFile> queryWrapper = Wrappers.lambdaQuery(); |
| | | queryWrapper.eq(ShopFile::getDelFlag, 0).eq(ShopFile::getShopId, shopId); |
| | | return this.list(queryWrapper); |
| | | } |
| | | |
| | | /** |
| | | * 通过商户id删除关联 |
| | | * @param shopId |
| | | */ |
| | | @Override |
| | | public void deleteByShopId(Long shopId){ |
| | | shopFileMapper.deleteByShopId(shopId); |
| | | } |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.service.impl.shop; |
| | | |
| | | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
| | | import com.baomidou.mybatisplus.core.toolkit.Wrappers; |
| | | import com.ruoyi.shop.domain.pojo.shop.ShopGoods; |
| | | import com.ruoyi.shop.mapper.shop.ShopGoodsMapper; |
| | | import com.ruoyi.shop.service.shop.ShopGoodsService; |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | /** |
| | | * <p> |
| | | * 商户定制商品 服务实现类 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | @Service |
| | | public class ShopGoodsServiceImpl extends ServiceImpl<ShopGoodsMapper, ShopGoods> implements ShopGoodsService { |
| | | /** |
| | | * 通过商户id和商品id获取 |
| | | * @param shopId |
| | | * @param goodsId |
| | | * @return |
| | | */ |
| | | @Override |
| | | public ShopGoods getByShopIdAndGoodsId(Long shopId,String goodsId){ |
| | | LambdaQueryWrapper<ShopGoods> queryWrapper = Wrappers.lambdaQuery(); |
| | | queryWrapper.eq(ShopGoods::getDelFlag, 0).eq(ShopGoods::getShopId, shopId).eq(ShopGoods::getGoodsId, goodsId); |
| | | ShopGoods shopGoods = this.getOne(queryWrapper); |
| | | return shopGoods; |
| | | } |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.service.impl.shop; |
| | | |
| | | import com.ruoyi.shop.domain.pojo.shop.ShopMarketing; |
| | | import com.ruoyi.shop.mapper.shop.ShopMarketingMapper; |
| | | import com.ruoyi.shop.service.shop.ShopMarketingService; |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | /** |
| | | * <p> |
| | | * 商户营销 服务实现类 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | @Service |
| | | public class ShopMarketingServiceImpl extends ServiceImpl<ShopMarketingMapper, ShopMarketing> implements ShopMarketingService { |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.service.impl.shop; |
| | | |
| | | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
| | | import com.baomidou.mybatisplus.core.toolkit.Wrappers; |
| | | import com.ruoyi.shop.domain.pojo.shop.ShopRelTag; |
| | | import com.ruoyi.shop.domain.vo.MgtShopTagVo; |
| | | import com.ruoyi.shop.mapper.shop.ShopRelTagMapper; |
| | | import com.ruoyi.shop.service.shop.ShopRelTagService; |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | import javax.annotation.Resource; |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * <p> |
| | | * 商户标签 服务实现类 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | @Service |
| | | public class ShopRelTagServiceImpl extends ServiceImpl<ShopRelTagMapper, ShopRelTag> implements ShopRelTagService { |
| | | @Resource |
| | | private ShopRelTagMapper shopRelTagMapper; |
| | | |
| | | /** |
| | | * 通过商户id获取标签 |
| | | * @param shopId |
| | | * @return |
| | | */ |
| | | @Override |
| | | public List<ShopRelTag> listShopRelTagByShopId(Long shopId){ |
| | | LambdaQueryWrapper<ShopRelTag> queryWrapper = Wrappers.lambdaQuery(); |
| | | queryWrapper.eq(ShopRelTag::getDelFlag, 0).eq(ShopRelTag::getShopId, shopId); |
| | | return this.list(queryWrapper); |
| | | } |
| | | |
| | | /** |
| | | * 通过商户id删除关联 |
| | | * @param shopId |
| | | */ |
| | | @Override |
| | | public void deleteByShopId(Long shopId){ |
| | | shopRelTagMapper.deleteByShopId(shopId); |
| | | } |
| | | |
| | | /** |
| | | * 获取商户标签 |
| | | * @param shopId |
| | | * @return |
| | | */ |
| | | @Override |
| | | public List<MgtShopTagVo> listShopTagVo(Long shopId){ |
| | | return shopRelTagMapper.listShopTagVo(shopId); |
| | | } |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.service.impl.shop; |
| | | |
| | | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
| | | import com.baomidou.mybatisplus.core.toolkit.Wrappers; |
| | | import com.ruoyi.shop.domain.pojo.shop.ShopRelUser; |
| | | import com.ruoyi.shop.mapper.shop.ShopRelUserMapper; |
| | | import com.ruoyi.shop.service.shop.ShopRelUserService; |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | import javax.annotation.Resource; |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * <p> |
| | | * 商户关联员工 服务实现类 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | @Service |
| | | public class ShopRelUserServiceImpl extends ServiceImpl<ShopRelUserMapper, ShopRelUser> implements ShopRelUserService { |
| | | |
| | | @Resource |
| | | private ShopRelUserMapper shopRelUserMapper; |
| | | |
| | | /** |
| | | * 通过商户id删除关联 |
| | | * @param shopId |
| | | */ |
| | | @Override |
| | | public void deleteByShopId(Long shopId){ |
| | | shopRelUserMapper.deleteByShopId(shopId); |
| | | } |
| | | |
| | | /** |
| | | * 通过商户id获取关联用户 |
| | | * @param shopId |
| | | * @return |
| | | */ |
| | | @Override |
| | | public List<ShopRelUser> listByShopId(Long shopId){ |
| | | LambdaQueryWrapper<ShopRelUser> queryWrapper = Wrappers.lambdaQuery(); |
| | | queryWrapper.eq(ShopRelUser::getDelFlag, 0).eq(ShopRelUser::getShopId, shopId); |
| | | return this.list(queryWrapper); |
| | | } |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.service.impl.shop; |
| | | |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.ruoyi.shop.domain.pojo.shop.*; |
| | | import com.ruoyi.shop.mapper.shop.ShopMapper; |
| | | import com.ruoyi.shop.service.shop.*; |
| | | import com.ruoyi.shop.util.CodeFactoryUtil; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysUser; |
| | | import com.ruoyi.shop.domain.dto.MgtChangeCoopDto; |
| | | import com.ruoyi.shop.domain.dto.MgtEditShopDto; |
| | | import com.ruoyi.shop.domain.dto.MgtEditShopTagDto; |
| | | import com.ruoyi.shop.domain.dto.MgtShopPageDto; |
| | | import com.ruoyi.system.domain.pojo.config.SysTag; |
| | | import com.ruoyi.system.domain.pojo.shop.*; |
| | | import com.ruoyi.shop.domain.vo.AppShopInfoVo; |
| | | import com.ruoyi.shop.domain.vo.MgtShopInfoVo; |
| | | import com.ruoyi.shop.domain.vo.MgtShopPageVo; |
| | | import com.ruoyi.system.service.config.SysTagService; |
| | | import com.ruoyi.system.service.shop.*; |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import com.ruoyi.system.service.sys.ISysUserService; |
| | | import org.apache.commons.lang3.StringUtils; |
| | | import org.springframework.beans.BeanUtils; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | import javax.annotation.Resource; |
| | | import java.text.ParseException; |
| | | import java.text.SimpleDateFormat; |
| | | import java.util.Date; |
| | | import java.util.List; |
| | | import java.util.StringJoiner; |
| | | |
| | | /** |
| | | * <p> |
| | | * 商户表 服务实现类 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | @Service |
| | | public class ShopServiceImpl extends ServiceImpl<ShopMapper, Shop> implements ShopService { |
| | | |
| | | @Resource |
| | | private ShopMapper shopMapper; |
| | | |
| | | @Resource |
| | | private ShopFileService shopFileService; |
| | | |
| | | @Resource |
| | | private ShopCertificateService shopCertificateService; |
| | | |
| | | @Resource |
| | | private SysTagService sysTagService; |
| | | |
| | | @Resource |
| | | private ShopRelTagService shopRelTagService; |
| | | |
| | | @Resource |
| | | private ShopRelUserService shopRelUserService; |
| | | |
| | | @Resource |
| | | private ISysUserService sysUserService; |
| | | |
| | | /** |
| | | * 获取商户详情 |
| | | * @param shopId |
| | | * @return |
| | | */ |
| | | @Override |
| | | public AppShopInfoVo getAppShopInfo(Long shopId){ |
| | | AppShopInfoVo appShopInfoVo = new AppShopInfoVo(); |
| | | Shop shop = this.getById(shopId); |
| | | BeanUtils.copyProperties(shop,appShopInfoVo); |
| | | //商户地址 |
| | | appShopInfoVo.setShopAddress(shop.getShopAreaName()+shop.getShopAddress()); |
| | | //商品图片 |
| | | List<ShopFile> shopFileList = shopFileService.listShopFileByShopId(shopId); |
| | | String shopPicture = null; |
| | | StringJoiner shopBanners = new StringJoiner(","); |
| | | if(shopFileList!=null&&!shopFileList.isEmpty()){ |
| | | for(ShopFile shopFile : shopFileList){ |
| | | if(shopFile.getFileType()==1){ |
| | | shopPicture = shopFile.getFileUrl(); |
| | | }else{ |
| | | shopBanners.add(shopFile.getFileUrl()); |
| | | } |
| | | } |
| | | } |
| | | appShopInfoVo.setShopPicture(shopPicture); |
| | | appShopInfoVo.setShopBanners(shopBanners.toString()); |
| | | //商户证书 |
| | | List<ShopCertificate> shopCertificateList = shopCertificateService.listShopCertificateByShopId(shopId); |
| | | if(shopCertificateList!=null&&!shopCertificateList.isEmpty()){ |
| | | appShopInfoVo.setShopCertificateList(shopCertificateList); |
| | | } |
| | | return appShopInfoVo; |
| | | } |
| | | |
| | | /** |
| | | * 创建商户 |
| | | * @param MGTEditShopDto |
| | | */ |
| | | @Override |
| | | public void createShop(MgtEditShopDto MGTEditShopDto){ |
| | | Shop shop = new Shop(); |
| | | if(MGTEditShopDto.getShopId()!=null){ |
| | | shop = this.getById(MGTEditShopDto.getShopId()); |
| | | shop.setUpdateTime(new Date()); |
| | | shop.setUpdateUserId(MGTEditShopDto.getUserId()); |
| | | shop.setShopTags(null); |
| | | //清空关联记录 |
| | | shopFileService.deleteByShopId(shop.getShopId()); |
| | | shopRelTagService.deleteByShopId(shop.getShopId()); |
| | | shopRelUserService.deleteByShopId(shop.getShopId()); |
| | | }else{ |
| | | shop.setShopStatus(2); |
| | | shop.setCreateTime(new Date()); |
| | | shop.setCreateUserId(MGTEditShopDto.getUserId()); |
| | | } |
| | | BeanUtils.copyProperties(MGTEditShopDto,shop); |
| | | this.saveOrUpdate(shop); |
| | | //商户编号 |
| | | if(MGTEditShopDto.getShopId()==null){ |
| | | String shopNo = CodeFactoryUtil.getShopNo(shop.getShopId()); |
| | | shop.setShopNumber(shopNo); |
| | | } |
| | | //商户标签 |
| | | String shopTagIds = MGTEditShopDto.getShopTagIds(); |
| | | if(StringUtils.isNotBlank(shopTagIds)){ |
| | | String[] shopTagIdArray = shopTagIds.split(","); |
| | | ShopRelTag shopRelTag; |
| | | Long tagid; |
| | | StringJoiner shopTagSj = new StringJoiner(","); |
| | | SysTag sysTag; |
| | | for(String str : shopTagIdArray){ |
| | | shopRelTag = new ShopRelTag(); |
| | | tagid = Long.valueOf(str); |
| | | sysTag = sysTagService.getById(tagid); |
| | | shopRelTag.setDelFlag(0); |
| | | shopRelTag.setShopId(shop.getShopId()); |
| | | shopRelTag.setTagId(tagid); |
| | | shopRelTagService.save(shopRelTag); |
| | | shopTagSj.add(sysTag.getTagName()); |
| | | } |
| | | shop.setShopTags(shopTagSj.toString()); |
| | | this.saveOrUpdate(shop); |
| | | } |
| | | //商户关联人员 |
| | | String relUserIds = MGTEditShopDto.getRelUserIds(); |
| | | if(StringUtils.isNotBlank(relUserIds)){ |
| | | String[] relUserIdArray = relUserIds.split(","); |
| | | ShopRelUser shopRelUser; |
| | | Long userId; |
| | | SysUser sysUser; |
| | | for(String str : relUserIdArray){ |
| | | shopRelUser = new ShopRelUser(); |
| | | userId = Long.valueOf(str); |
| | | sysUser = sysUserService.selectUserById(userId); |
| | | shopRelUser.setDelFlag(0); |
| | | shopRelUser.setShopId(shop.getShopId()); |
| | | shopRelUser.setUserId(userId); |
| | | shopRelUser.setUserName(sysUser.getNickName()); |
| | | shopRelUser.setUserMobile(sysUser.getPhonenumber()); |
| | | shopRelUser.setUserDeptId(sysUser.getDeptId()); |
| | | shopRelUserService.save(shopRelUser); |
| | | } |
| | | } |
| | | //商户封面 |
| | | ShopFile shopFile = new ShopFile(); |
| | | shopFile.setDelFlag(0); |
| | | shopFile.setFileType(1); |
| | | shopFile.setFileUrl(MGTEditShopDto.getShopPicture()); |
| | | shopFile.setShopId(shop.getShopId()); |
| | | shopFileService.save(shopFile); |
| | | //商户banner |
| | | if(StringUtils.isNotBlank(MGTEditShopDto.getShopBanners())){ |
| | | String shopBanners= MGTEditShopDto.getShopBanners(); |
| | | String[] shopBannerArray = shopBanners.split(","); |
| | | for(String str : shopBannerArray){ |
| | | shopFile = new ShopFile(); |
| | | shopFile.setDelFlag(0); |
| | | shopFile.setFileType(2); |
| | | shopFile.setFileUrl(str); |
| | | shopFile.setShopId(shop.getShopId()); |
| | | shopFileService.save(shopFile); |
| | | } |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 修改合作时间 |
| | | * @param mgtChangeCoopDto |
| | | */ |
| | | @Override |
| | | public void changeCooperationTime(MgtChangeCoopDto mgtChangeCoopDto){ |
| | | Shop shop = this.getById(mgtChangeCoopDto.getShopId()); |
| | | String coopStartTime = mgtChangeCoopDto.getCoopStartTime(); |
| | | String coopEndTime = mgtChangeCoopDto.getCoopEndTime(); |
| | | SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); |
| | | try { |
| | | Date coopStartDate = simpleDateFormat.parse(coopStartTime); |
| | | Date coopEndDate = simpleDateFormat.parse(coopEndTime); |
| | | Date nowTime = new Date(); |
| | | shop.setCooperationStartTime(coopStartDate); |
| | | shop.setCooperationEndTime(coopEndDate); |
| | | Boolean inTime = false; |
| | | if(coopStartDate.compareTo(nowTime)<0&&coopEndDate.compareTo(nowTime)>0){ |
| | | inTime = true; |
| | | } |
| | | if(shop.getShopStatus()==2&&inTime){ |
| | | shop.setShopStatus(1); |
| | | } |
| | | shop.setUpdateTime(nowTime); |
| | | shop.setUpdateUserId(mgtChangeCoopDto.getUserId()); |
| | | this.saveOrUpdate(shop); |
| | | } catch (ParseException e) { |
| | | e.printStackTrace(); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 分页获取商户 |
| | | * @param page |
| | | * @param mgtShopPageDto |
| | | * @return |
| | | */ |
| | | @Override |
| | | public List<MgtShopPageVo> pageShop(Page page, MgtShopPageDto mgtShopPageDto){ |
| | | List<MgtShopPageVo> mgtShopPageVoList = shopMapper.pageShop(page, mgtShopPageDto); |
| | | return mgtShopPageVoList; |
| | | } |
| | | |
| | | /** |
| | | * 获取商户详情 |
| | | * @param shopId |
| | | * @return |
| | | */ |
| | | @Override |
| | | public MgtShopInfoVo getMgtShopInfo(Long shopId){ |
| | | MgtShopInfoVo mgtShopInfoVo = new MgtShopInfoVo(); |
| | | Shop shop = this.getById(shopId); |
| | | //基本信息拷贝 |
| | | BeanUtils.copyProperties(shop,mgtShopInfoVo); |
| | | //商户标签 |
| | | List<ShopRelTag> shopRelTagList = shopRelTagService.listShopRelTagByShopId(shopId); |
| | | if(shopRelTagList!=null&&!shopRelTagList.isEmpty()){ |
| | | StringJoiner shopTagJs = new StringJoiner(","); |
| | | for(ShopRelTag shopRelTag : shopRelTagList){ |
| | | shopTagJs.add(shopRelTag.getTagId().toString()); |
| | | } |
| | | mgtShopInfoVo.setShopTagIds(shopTagJs.toString()); |
| | | } |
| | | //商户关联用户 |
| | | List<ShopRelUser> shopRelUserList = shopRelUserService.listByShopId(shopId); |
| | | if(shopRelUserList!=null&&!shopRelUserList.isEmpty()){ |
| | | StringJoiner shopUserJs = new StringJoiner(","); |
| | | StringJoiner shopUserNameJs = new StringJoiner(","); |
| | | for(ShopRelUser shopRelUser : shopRelUserList){ |
| | | shopUserJs.add(shopRelUser.getUserId().toString()); |
| | | shopUserNameJs.add(shopRelUser.getUserName()); |
| | | } |
| | | mgtShopInfoVo.setRelUserIds(shopUserJs.toString()); |
| | | mgtShopInfoVo.setRelUsers(shopUserNameJs.toString()); |
| | | } |
| | | //商户图片 |
| | | List<ShopFile> shopFileList = shopFileService.listShopFileByShopId(shopId); |
| | | if(shopFileList!=null&&!shopFileList.isEmpty()){ |
| | | StringJoiner shopBannerJs = new StringJoiner(","); |
| | | for(ShopFile shopFile : shopFileList){ |
| | | if(shopFile.getFileType()==1){ |
| | | mgtShopInfoVo.setShopPicture(shopFile.getFileUrl()); |
| | | }else{ |
| | | shopBannerJs.add(shopFile.getFileUrl()); |
| | | } |
| | | } |
| | | mgtShopInfoVo.setShopBanners(shopBannerJs.toString()); |
| | | } |
| | | //商户证书 |
| | | List<ShopCertificate> shopCertificateList = shopCertificateService.listShopCertificateByShopId(shopId); |
| | | mgtShopInfoVo.setShopCertificateList(shopCertificateList); |
| | | return mgtShopInfoVo; |
| | | } |
| | | |
| | | /** |
| | | * 修改商户标签 |
| | | * @param mgtEditShopTagDto |
| | | */ |
| | | @Override |
| | | public void editShopTag(MgtEditShopTagDto mgtEditShopTagDto){ |
| | | Long shopId = Long.valueOf(mgtEditShopTagDto.getId()); |
| | | String shopTagIds = mgtEditShopTagDto.getShopTagIds(); |
| | | String shopTags = null; |
| | | //删除以前的标签 |
| | | shopRelTagService.deleteByShopId(shopId); |
| | | if(StringUtils.isNotBlank(shopTagIds)){ |
| | | ShopRelTag shopRelTag; |
| | | SysTag sysTag; |
| | | Long tagId; |
| | | String[] shopTagIdArray = shopTagIds.split(","); |
| | | StringJoiner shopTagSj = new StringJoiner(","); |
| | | for(String str : shopTagIdArray){ |
| | | tagId = Long.valueOf(str); |
| | | sysTag = sysTagService.getById(tagId); |
| | | shopRelTag = new ShopRelTag(); |
| | | shopRelTag.setDelFlag(0); |
| | | shopRelTag.setShopId(shopId); |
| | | shopRelTag.setTagId(tagId); |
| | | shopRelTagService.save(shopRelTag); |
| | | shopTagSj.add(sysTag.getTagName()); |
| | | } |
| | | shopTags = shopTagSj.toString(); |
| | | } |
| | | Shop shop = this.getById(shopId); |
| | | shop.setShopTags(shopTags); |
| | | this.saveOrUpdate(shop); |
| | | } |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.service.impl.shop; |
| | | |
| | | import com.ruoyi.shop.domain.pojo.shop.ShopTask; |
| | | import com.ruoyi.shop.mapper.shop.ShopTaskMapper; |
| | | import com.ruoyi.shop.service.shop.ShopTaskService; |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | /** |
| | | * <p> |
| | | * 商户跟进任务 服务实现类 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | @Service |
| | | public class ShopTaskServiceImpl extends ServiceImpl<ShopTaskMapper, ShopTask> implements ShopTaskService { |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.service.impl.shop; |
| | | |
| | | import com.ruoyi.shop.domain.pojo.shop.ShopTransferRecord; |
| | | import com.ruoyi.shop.mapper.shop.ShopTransferRecordMapper; |
| | | import com.ruoyi.shop.service.shop.ShopTransferRecordService; |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | /** |
| | | * <p> |
| | | * 商户员工转移记录 服务实现类 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | @Service |
| | | public class ShopTransferRecordServiceImpl extends ServiceImpl<ShopTransferRecordMapper, ShopTransferRecord> implements ShopTransferRecordService { |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.service.impl.shop; |
| | | |
| | | import com.ruoyi.shop.domain.pojo.shop.TaskFile; |
| | | import com.ruoyi.shop.mapper.shop.TaskFileMapper; |
| | | import com.ruoyi.shop.service.shop.TaskFileService; |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | /** |
| | | * <p> |
| | | * 跟进附件 服务实现类 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | @Service |
| | | public class TaskFileServiceImpl extends ServiceImpl<TaskFileMapper, TaskFile> implements TaskFileService { |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.service.shop; |
| | | |
| | | import com.ruoyi.shop.domain.pojo.shop.MemberTaskRecord; |
| | | import com.baomidou.mybatisplus.extension.service.IService; |
| | | |
| | | /** |
| | | * <p> |
| | | * 会员跟进任务记录 服务类 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | public interface MemberTaskRecordService extends IService<MemberTaskRecord> { |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.service.shop; |
| | | |
| | | import com.ruoyi.shop.domain.pojo.shop.MemberTask; |
| | | import com.baomidou.mybatisplus.extension.service.IService; |
| | | |
| | | /** |
| | | * <p> |
| | | * 会员跟进任务 服务类 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | public interface MemberTaskService extends IService<MemberTask> { |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.service.shop; |
| | | |
| | | import com.ruoyi.shop.domain.pojo.shop.ShopCertificate; |
| | | import com.baomidou.mybatisplus.extension.service.IService; |
| | | |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * <p> |
| | | * 商户证书 服务类 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | public interface ShopCertificateService extends IService<ShopCertificate> { |
| | | /** |
| | | * 通过商户id获取商户证书 |
| | | * @param shopId |
| | | * @return |
| | | */ |
| | | List<ShopCertificate> listShopCertificateByShopId(Long shopId); |
| | | |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.service.shop; |
| | | |
| | | import com.ruoyi.shop.domain.pojo.shop.ShopFile; |
| | | import com.baomidou.mybatisplus.extension.service.IService; |
| | | |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * <p> |
| | | * 商户图片 服务类 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | public interface ShopFileService extends IService<ShopFile> { |
| | | |
| | | /** |
| | | * 通过商户id获取商户文件 |
| | | * @param shopId |
| | | * @return |
| | | */ |
| | | List<ShopFile> listShopFileByShopId(Long shopId); |
| | | |
| | | /** |
| | | * 通过商户id删除关联 |
| | | * @param shopId |
| | | */ |
| | | void deleteByShopId(Long shopId); |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.service.shop; |
| | | |
| | | import com.ruoyi.shop.domain.pojo.shop.ShopGoods; |
| | | import com.baomidou.mybatisplus.extension.service.IService; |
| | | |
| | | /** |
| | | * <p> |
| | | * 商户定制商品 服务类 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | public interface ShopGoodsService extends IService<ShopGoods> { |
| | | |
| | | /** |
| | | * 通过商户id和商品id获取 |
| | | * @param shopId |
| | | * @param goodsId |
| | | * @return |
| | | */ |
| | | ShopGoods getByShopIdAndGoodsId(Long shopId,String goodsId); |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.service.shop; |
| | | |
| | | import com.ruoyi.shop.domain.pojo.shop.ShopMarketing; |
| | | import com.baomidou.mybatisplus.extension.service.IService; |
| | | |
| | | /** |
| | | * <p> |
| | | * 商户营销 服务类 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | public interface ShopMarketingService extends IService<ShopMarketing> { |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.service.shop; |
| | | |
| | | import com.ruoyi.shop.domain.pojo.shop.ShopRelTag; |
| | | import com.baomidou.mybatisplus.extension.service.IService; |
| | | import com.ruoyi.shop.domain.vo.MgtShopTagVo; |
| | | |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * <p> |
| | | * 商户标签 服务类 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | public interface ShopRelTagService extends IService<ShopRelTag> { |
| | | /** |
| | | * 通过商户id获取标签 |
| | | * @param shopId |
| | | * @return |
| | | */ |
| | | List<ShopRelTag> listShopRelTagByShopId(Long shopId); |
| | | |
| | | /** |
| | | * 通过商户id删除关联 |
| | | * @param shopId |
| | | */ |
| | | void deleteByShopId(Long shopId); |
| | | |
| | | /** |
| | | * 获取商户标签 |
| | | * @param shopId |
| | | * @return |
| | | */ |
| | | List<MgtShopTagVo> listShopTagVo(Long shopId); |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.service.shop; |
| | | |
| | | import com.ruoyi.shop.domain.pojo.shop.ShopRelUser; |
| | | import com.baomidou.mybatisplus.extension.service.IService; |
| | | |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * <p> |
| | | * 商户关联员工 服务类 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | public interface ShopRelUserService extends IService<ShopRelUser> { |
| | | |
| | | /** |
| | | * 通过商户id删除关联 |
| | | * @param shopId |
| | | */ |
| | | void deleteByShopId(Long shopId); |
| | | |
| | | /** |
| | | * 通过商户id获取关联用户 |
| | | * @param shopId |
| | | * @return |
| | | */ |
| | | List<ShopRelUser> listByShopId(Long shopId); |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.service.shop; |
| | | |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.ruoyi.shop.domain.dto.MgtChangeCoopDto; |
| | | import com.ruoyi.shop.domain.dto.MgtEditShopDto; |
| | | import com.ruoyi.shop.domain.dto.MgtEditShopTagDto; |
| | | import com.ruoyi.shop.domain.dto.MgtShopPageDto; |
| | | import com.ruoyi.shop.domain.pojo.shop.Shop; |
| | | import com.baomidou.mybatisplus.extension.service.IService; |
| | | import com.ruoyi.shop.domain.vo.AppShopInfoVo; |
| | | import com.ruoyi.shop.domain.vo.MgtShopInfoVo; |
| | | import com.ruoyi.shop.domain.vo.MgtShopPageVo; |
| | | |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * <p> |
| | | * 商户表 服务类 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | public interface ShopService extends IService<Shop> { |
| | | |
| | | /** |
| | | * 获取商户详情 |
| | | * @param shopId |
| | | * @return |
| | | */ |
| | | AppShopInfoVo getAppShopInfo(Long shopId); |
| | | |
| | | /** |
| | | * 创建商户 |
| | | * @param MGTEditShopDto |
| | | */ |
| | | void createShop(MgtEditShopDto MGTEditShopDto); |
| | | |
| | | /** |
| | | * 修改合作时间 |
| | | * @param mgtChangeCoopDto |
| | | */ |
| | | void changeCooperationTime(MgtChangeCoopDto mgtChangeCoopDto); |
| | | |
| | | /** |
| | | * 分页获取商户 |
| | | * @param page |
| | | * @param mgtShopPageDto |
| | | * @return |
| | | */ |
| | | List<MgtShopPageVo> pageShop(Page page, MgtShopPageDto mgtShopPageDto); |
| | | |
| | | /** |
| | | * 获取商户详情 |
| | | * @param shopId |
| | | * @return |
| | | */ |
| | | MgtShopInfoVo getMgtShopInfo(Long shopId); |
| | | |
| | | /** |
| | | * 修改商户标签 |
| | | * @param mgtEditShopTagDto |
| | | */ |
| | | void editShopTag(MgtEditShopTagDto mgtEditShopTagDto); |
| | | |
| | | /** |
| | | * 获取商户详情 |
| | | * @param userId |
| | | * @return |
| | | */ |
| | | //MgtShopInfoVo getMerShopInfo(Long userId); |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.service.shop; |
| | | |
| | | import com.ruoyi.shop.domain.pojo.shop.ShopTask; |
| | | import com.baomidou.mybatisplus.extension.service.IService; |
| | | |
| | | /** |
| | | * <p> |
| | | * 商户跟进任务 服务类 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | public interface ShopTaskService extends IService<ShopTask> { |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.service.shop; |
| | | |
| | | import com.ruoyi.shop.domain.pojo.shop.ShopTransferRecord; |
| | | import com.baomidou.mybatisplus.extension.service.IService; |
| | | |
| | | /** |
| | | * <p> |
| | | * 商户员工转移记录 服务类 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | public interface ShopTransferRecordService extends IService<ShopTransferRecord> { |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.service.shop; |
| | | |
| | | import com.ruoyi.shop.domain.pojo.shop.TaskFile; |
| | | import com.baomidou.mybatisplus.extension.service.IService; |
| | | |
| | | /** |
| | | * <p> |
| | | * 跟进附件 服务类 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-04-25 |
| | | */ |
| | | public interface TaskFileService extends IService<TaskFile> { |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.util; |
| | | |
| | | |
| | | |
| | | import com.ruoyi.common.core.utils.DateUtils; |
| | | |
| | | import java.security.SecureRandom; |
| | | import java.util.Date; |
| | | import java.util.Random; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName CodeFactoryUtil |
| | | * @description: TODO |
| | | * @date 2023年02月13日 |
| | | * @version: 1.0 |
| | | */ |
| | | public class CodeFactoryUtil { |
| | | |
| | | /** |
| | | * APP用户编码 |
| | | */ |
| | | private static final String APP_USER_PREFIX = "HRT_M"; |
| | | |
| | | /** |
| | | * 商户编号 |
| | | */ |
| | | private static final String SHOP_PREFIX = "HRT_S"; |
| | | |
| | | /** |
| | | * 订单前缀 |
| | | */ |
| | | private static final String ORDER_PREFIX = "BO"; |
| | | |
| | | /** |
| | | * 退款订单前缀 |
| | | */ |
| | | private static final String ORDER_REFUND_PREFIX = "RO"; |
| | | |
| | | /** |
| | | * 用户id和随机数总长度 |
| | | */ |
| | | |
| | | private static final int maxLength = 4; |
| | | |
| | | /** |
| | | * 更具id进行加密+加随机数组成固定长度编码 |
| | | */ |
| | | |
| | | public static void main(String[] args) { |
| | | Long orderId = 1L; |
| | | String userNo = getShopNo(orderId); |
| | | System.out.println(userNo); |
| | | } |
| | | |
| | | /** |
| | | * 获取商户编号 |
| | | * |
| | | * @param shopId |
| | | * @return |
| | | */ |
| | | public static String getShopNo(Long shopId) { |
| | | String prefix = SHOP_PREFIX; |
| | | return toFillZeroCode(prefix, maxLength, shopId); |
| | | } |
| | | |
| | | /** |
| | | * 获取会员编号 |
| | | * @param userId |
| | | * @return |
| | | */ |
| | | public static String getMemberNo(Long userId) { |
| | | String prefix = APP_USER_PREFIX; |
| | | return toFillZeroCode(prefix, maxLength, userId); |
| | | } |
| | | |
| | | /** |
| | | * 获取订单编号 |
| | | * |
| | | * @param userId |
| | | * @return |
| | | */ |
| | | public static String getOrderNo(Long userId) { |
| | | |
| | | String prefix = DateUtils.parseDateToStr( "yyyyMMddHHmmss",new Date()); |
| | | prefix = ORDER_PREFIX + prefix; |
| | | return toFillZeroCode(prefix, maxLength, userId); |
| | | } |
| | | |
| | | |
| | | |
| | | /** |
| | | * 获取用户编号 |
| | | * |
| | | * @param userId |
| | | * @return |
| | | */ |
| | | public static String getAppUserNo(Long userId) { |
| | | return toFillZeroCode(APP_USER_PREFIX, 9, userId); |
| | | } |
| | | |
| | | /** |
| | | * 0补位 |
| | | * |
| | | * @param prefix |
| | | * @param totalLength |
| | | * @param id |
| | | * @return |
| | | */ |
| | | private static String toFillZeroCode(String prefix, int totalLength, Long id) { |
| | | String idStr = id.toString(); |
| | | int length = idStr.length(); |
| | | |
| | | int fillLength = totalLength - length; |
| | | StringBuilder idsbs = new StringBuilder(prefix); |
| | | for (int i = 0; i < fillLength; i++) { |
| | | idsbs.append("0"); |
| | | } |
| | | return idsbs.append(idStr).toString(); |
| | | } |
| | | |
| | | /** |
| | | * 随机6位数生成 |
| | | */ |
| | | public static String getRandStr(int num) { |
| | | // 默认6位 |
| | | num = num != 0 ? num : 6; |
| | | Random r = new SecureRandom(); |
| | | StringBuffer str = new StringBuffer(); |
| | | int i = 0; |
| | | while (i < num) { |
| | | str.append(r.nextInt(10)); |
| | | i++; |
| | | } |
| | | return str.toString(); |
| | | } |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.util; |
| | | |
| | | import java.io.UnsupportedEncodingException; |
| | | import java.net.URLDecoder; |
| | | import java.net.URLEncoder; |
| | | import java.util.regex.Matcher; |
| | | import java.util.regex.Pattern; |
| | | |
| | | public class EmojiUtil { |
| | | /** |
| | | * 编码 |
| | | * |
| | | * @param str 待转换字符串 |
| | | * @return 转换后字符串 |
| | | * @throws UnsupportedEncodingException exception |
| | | * @Description 将字符串中的emoji表情转换成可以在utf-8字符集数据库中保存的格式(表情占4个字节,需要utf8mb4字符集) |
| | | */ |
| | | public static String emojiEncode(String str) |
| | | throws UnsupportedEncodingException { |
| | | String patternString = "([\\x{10000}-\\x{10ffff}\ud800-\udfff])"; |
| | | |
| | | Pattern pattern = Pattern.compile(patternString); |
| | | Matcher matcher = pattern.matcher(str); |
| | | StringBuffer sb = new StringBuffer(); |
| | | while (matcher.find()) { |
| | | try { |
| | | matcher.appendReplacement( |
| | | sb, |
| | | "[[" |
| | | + URLEncoder.encode(matcher.group(1), |
| | | "UTF-8") + "]]"); |
| | | } catch (UnsupportedEncodingException e) { |
| | | // LOG.error("emojiConvert error", e); |
| | | throw e; |
| | | } |
| | | } |
| | | matcher.appendTail(sb); |
| | | // LOG.debug("emojiConvert " + str + " to " + sb.toString() |
| | | // + ", len:" + sb.length()); |
| | | return sb.toString(); |
| | | } |
| | | |
| | | /** |
| | | * 解码 |
| | | * |
| | | * @param str 转换后的字符串 |
| | | * @return 转换前的字符串 |
| | | * @throws UnsupportedEncodingException exception |
| | | * @Description 还原utf8数据库中保存的含转换后emoji表情的字符串 |
| | | */ |
| | | public static String emojiDecode(String str) |
| | | throws UnsupportedEncodingException { |
| | | String patternString = "\\[\\[(.*?)\\]\\]"; |
| | | |
| | | Pattern pattern = Pattern.compile(patternString); |
| | | if (str == null) { |
| | | return str; |
| | | } |
| | | Matcher matcher = pattern.matcher(str); |
| | | |
| | | StringBuffer sb = new StringBuffer(); |
| | | while (matcher.find()) { |
| | | try { |
| | | matcher.appendReplacement(sb, |
| | | URLDecoder.decode(matcher.group(1), "UTF-8")); |
| | | } catch (UnsupportedEncodingException e) { |
| | | // LOG.error("emojiRecovery error", e); |
| | | throw e; |
| | | } |
| | | } |
| | | matcher.appendTail(sb); |
| | | // LOG.debug("emojiRecovery " + str + " to " + sb.toString()); |
| | | // System.out.println("emojiRecovery " + str + " to " + sb.toString()); |
| | | return sb.toString(); |
| | | } |
| | | |
| | | /** |
| | | * @param str 待过滤字符串 |
| | | * @return 过滤后字符串 |
| | | * exception |
| | | * @Description 将字符串中的emoji表情过滤掉 |
| | | */ |
| | | public static String emojiSub(String str) { |
| | | String patternString = "([\\x{10000}-\\x{10ffff}\ud800-\udfff])"; |
| | | Pattern pattern = Pattern.compile(patternString); |
| | | Matcher matcher = pattern.matcher(str); |
| | | StringBuffer sb = new StringBuffer(); |
| | | while (matcher.find()) { |
| | | matcher.appendReplacement(sb, ""); |
| | | } |
| | | matcher.appendTail(sb); |
| | | return sb.toString(); |
| | | } |
| | | |
| | | } |
New file |
| | |
| | | <?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.ruoyi.shop.mapper.shop.MemberTaskMapper"> |
| | | |
| | | <resultMap type="MemberTask" id="MemberTaskResult"> |
| | | <result property="taskId" column="task_id" /> |
| | | <result property="delFlag" column="del_flag" /> |
| | | <result property="shopId" column="shop_id" /> |
| | | <result property="userId" column="user_id" /> |
| | | <result property="taskDate" column="task_date" /> |
| | | <result property="taskContent" column="task_content" /> |
| | | <result property="createTime" column="create_time" /> |
| | | </resultMap> |
| | | |
| | | <sql id="selectMemberTaskVo"> |
| | | select task_id, del_flag, shop_id, user_id, task_date, task_content, create_time from t_member_task |
| | | </sql> |
| | | |
| | | <select id="selectMemberTaskList" parameterType="MemberTask" resultMap="MemberTaskResult"> |
| | | <include refid="selectMemberTaskVo"/> |
| | | <where> |
| | | <if test="shopId != null "> and shop_id = #{shopId}</if> |
| | | <if test="userId != null "> and user_id = #{userId}</if> |
| | | <if test="taskDate != null "> and task_date = #{taskDate}</if> |
| | | <if test="taskContent != null and taskContent != ''"> and task_content = #{taskContent}</if> |
| | | </where> |
| | | </select> |
| | | |
| | | <select id="selectMemberTaskByTaskId" parameterType="String" resultMap="MemberTaskResult"> |
| | | <include refid="selectMemberTaskVo"/> |
| | | where task_id = #{taskId} |
| | | </select> |
| | | |
| | | <insert id="insertMemberTask" parameterType="MemberTask"> |
| | | insert into t_member_task |
| | | <trim prefix="(" suffix=")" suffixOverrides=","> |
| | | <if test="taskId != null">task_id,</if> |
| | | <if test="delFlag != null">del_flag,</if> |
| | | <if test="shopId != null">shop_id,</if> |
| | | <if test="userId != null">user_id,</if> |
| | | <if test="taskDate != null">task_date,</if> |
| | | <if test="taskContent != null">task_content,</if> |
| | | <if test="createTime != null">create_time,</if> |
| | | </trim> |
| | | <trim prefix="values (" suffix=")" suffixOverrides=","> |
| | | <if test="taskId != null">#{taskId},</if> |
| | | <if test="delFlag != null">#{delFlag},</if> |
| | | <if test="shopId != null">#{shopId},</if> |
| | | <if test="userId != null">#{userId},</if> |
| | | <if test="taskDate != null">#{taskDate},</if> |
| | | <if test="taskContent != null">#{taskContent},</if> |
| | | <if test="createTime != null">#{createTime},</if> |
| | | </trim> |
| | | </insert> |
| | | |
| | | <update id="updateMemberTask" parameterType="MemberTask"> |
| | | update t_member_task |
| | | <trim prefix="SET" suffixOverrides=","> |
| | | <if test="delFlag != null">del_flag = #{delFlag},</if> |
| | | <if test="shopId != null">shop_id = #{shopId},</if> |
| | | <if test="userId != null">user_id = #{userId},</if> |
| | | <if test="taskDate != null">task_date = #{taskDate},</if> |
| | | <if test="taskContent != null">task_content = #{taskContent},</if> |
| | | <if test="createTime != null">create_time = #{createTime},</if> |
| | | </trim> |
| | | where task_id = #{taskId} |
| | | </update> |
| | | |
| | | <delete id="deleteMemberTaskByTaskId" parameterType="String"> |
| | | delete from t_member_task where task_id = #{taskId} |
| | | </delete> |
| | | |
| | | <delete id="deleteMemberTaskByTaskIds" parameterType="String"> |
| | | delete from t_member_task where task_id in |
| | | <foreach item="taskId" collection="array" open="(" separator="," close=")"> |
| | | #{taskId} |
| | | </foreach> |
| | | </delete> |
| | | |
| | | </mapper> |
New file |
| | |
| | | <?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.ruoyi.shop.mapper.shop.MemberTaskRecordMapper"> |
| | | |
| | | <resultMap type="MemberTaskRecord" id="MemberTaskRecordResult"> |
| | | <result property="id" column="id" /> |
| | | <result property="delFlag" column="del_flag" /> |
| | | <result property="taskId" column="task_id" /> |
| | | <result property="userId" column="user_id" /> |
| | | <result property="followType" column="follow_type" /> |
| | | <result property="callTime" column="call_time" /> |
| | | <result property="followContent" column="follow_content" /> |
| | | </resultMap> |
| | | |
| | | <sql id="selectMemberTaskRecordVo"> |
| | | select id, del_flag, task_id, user_id, follow_type, call_time, follow_content from t_member_task_record |
| | | </sql> |
| | | |
| | | <select id="selectMemberTaskRecordList" parameterType="MemberTaskRecord" resultMap="MemberTaskRecordResult"> |
| | | <include refid="selectMemberTaskRecordVo"/> |
| | | <where> |
| | | <if test="taskId != null and taskId != ''"> and task_id = #{taskId}</if> |
| | | <if test="userId != null "> and user_id = #{userId}</if> |
| | | <if test="followType != null "> and follow_type = #{followType}</if> |
| | | <if test="callTime != null "> and call_time = #{callTime}</if> |
| | | <if test="followContent != null and followContent != ''"> and follow_content = #{followContent}</if> |
| | | </where> |
| | | </select> |
| | | |
| | | <select id="selectMemberTaskRecordById" parameterType="Long" resultMap="MemberTaskRecordResult"> |
| | | <include refid="selectMemberTaskRecordVo"/> |
| | | where id = #{id} |
| | | </select> |
| | | |
| | | <insert id="insertMemberTaskRecord" parameterType="MemberTaskRecord" useGeneratedKeys="true" keyProperty="id"> |
| | | insert into t_member_task_record |
| | | <trim prefix="(" suffix=")" suffixOverrides=","> |
| | | <if test="delFlag != null">del_flag,</if> |
| | | <if test="taskId != null">task_id,</if> |
| | | <if test="userId != null">user_id,</if> |
| | | <if test="followType != null">follow_type,</if> |
| | | <if test="callTime != null">call_time,</if> |
| | | <if test="followContent != null">follow_content,</if> |
| | | </trim> |
| | | <trim prefix="values (" suffix=")" suffixOverrides=","> |
| | | <if test="delFlag != null">#{delFlag},</if> |
| | | <if test="taskId != null">#{taskId},</if> |
| | | <if test="userId != null">#{userId},</if> |
| | | <if test="followType != null">#{followType},</if> |
| | | <if test="callTime != null">#{callTime},</if> |
| | | <if test="followContent != null">#{followContent},</if> |
| | | </trim> |
| | | </insert> |
| | | |
| | | <update id="updateMemberTaskRecord" parameterType="MemberTaskRecord"> |
| | | update t_member_task_record |
| | | <trim prefix="SET" suffixOverrides=","> |
| | | <if test="delFlag != null">del_flag = #{delFlag},</if> |
| | | <if test="taskId != null">task_id = #{taskId},</if> |
| | | <if test="userId != null">user_id = #{userId},</if> |
| | | <if test="followType != null">follow_type = #{followType},</if> |
| | | <if test="callTime != null">call_time = #{callTime},</if> |
| | | <if test="followContent != null">follow_content = #{followContent},</if> |
| | | </trim> |
| | | where id = #{id} |
| | | </update> |
| | | |
| | | <delete id="deleteMemberTaskRecordById" parameterType="Long"> |
| | | delete from t_member_task_record where id = #{id} |
| | | </delete> |
| | | |
| | | <delete id="deleteMemberTaskRecordByIds" parameterType="String"> |
| | | delete from t_member_task_record where id in |
| | | <foreach item="id" collection="array" open="(" separator="," close=")"> |
| | | #{id} |
| | | </foreach> |
| | | </delete> |
| | | |
| | | </mapper> |
New file |
| | |
| | | <?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.ruoyi.shop.mapper.shop.ShopCertificateMapper"> |
| | | |
| | | <resultMap type="ShopCertificate" id="ShopCertificateResult"> |
| | | <result property="cerId" column="cer_id" /> |
| | | <result property="delFlag" column="del_flag" /> |
| | | <result property="cerStatus" column="cer_status" /> |
| | | <result property="shopId" column="shop_id" /> |
| | | <result property="cerName" column="cer_name" /> |
| | | <result property="cerNumber" column="cer_number" /> |
| | | <result property="cerPicture" column="cer_picture" /> |
| | | </resultMap> |
| | | |
| | | <sql id="selectShopCertificateVo"> |
| | | select cer_id, del_flag, cer_status, shop_id, cer_name, cer_number, cer_picture from t_shop_certificate |
| | | </sql> |
| | | |
| | | <select id="selectShopCertificateList" parameterType="ShopCertificate" resultMap="ShopCertificateResult"> |
| | | <include refid="selectShopCertificateVo"/> |
| | | <where> |
| | | <if test="cerStatus != null "> and cer_status = #{cerStatus}</if> |
| | | <if test="shopId != null "> and shop_id = #{shopId}</if> |
| | | <if test="cerName != null and cerName != ''"> and cer_name like concat('%', #{cerName}, '%')</if> |
| | | <if test="cerNumber != null "> and cer_number = #{cerNumber}</if> |
| | | <if test="cerPicture != null and cerPicture != ''"> and cer_picture = #{cerPicture}</if> |
| | | </where> |
| | | </select> |
| | | |
| | | <select id="selectShopCertificateByCerId" parameterType="Long" resultMap="ShopCertificateResult"> |
| | | <include refid="selectShopCertificateVo"/> |
| | | where cer_id = #{cerId} |
| | | </select> |
| | | |
| | | <insert id="insertShopCertificate" parameterType="ShopCertificate" useGeneratedKeys="true" keyProperty="cerId"> |
| | | insert into t_shop_certificate |
| | | <trim prefix="(" suffix=")" suffixOverrides=","> |
| | | <if test="delFlag != null">del_flag,</if> |
| | | <if test="cerStatus != null">cer_status,</if> |
| | | <if test="shopId != null">shop_id,</if> |
| | | <if test="cerName != null">cer_name,</if> |
| | | <if test="cerNumber != null">cer_number,</if> |
| | | <if test="cerPicture != null">cer_picture,</if> |
| | | </trim> |
| | | <trim prefix="values (" suffix=")" suffixOverrides=","> |
| | | <if test="delFlag != null">#{delFlag},</if> |
| | | <if test="cerStatus != null">#{cerStatus},</if> |
| | | <if test="shopId != null">#{shopId},</if> |
| | | <if test="cerName != null">#{cerName},</if> |
| | | <if test="cerNumber != null">#{cerNumber},</if> |
| | | <if test="cerPicture != null">#{cerPicture},</if> |
| | | </trim> |
| | | </insert> |
| | | |
| | | <update id="updateShopCertificate" parameterType="ShopCertificate"> |
| | | update t_shop_certificate |
| | | <trim prefix="SET" suffixOverrides=","> |
| | | <if test="delFlag != null">del_flag = #{delFlag},</if> |
| | | <if test="cerStatus != null">cer_status = #{cerStatus},</if> |
| | | <if test="shopId != null">shop_id = #{shopId},</if> |
| | | <if test="cerName != null">cer_name = #{cerName},</if> |
| | | <if test="cerNumber != null">cer_number = #{cerNumber},</if> |
| | | <if test="cerPicture != null">cer_picture = #{cerPicture},</if> |
| | | </trim> |
| | | where cer_id = #{cerId} |
| | | </update> |
| | | |
| | | <delete id="deleteShopCertificateByCerId" parameterType="Long"> |
| | | delete from t_shop_certificate where cer_id = #{cerId} |
| | | </delete> |
| | | |
| | | <delete id="deleteShopCertificateByCerIds" parameterType="String"> |
| | | delete from t_shop_certificate where cer_id in |
| | | <foreach item="cerId" collection="array" open="(" separator="," close=")"> |
| | | #{cerId} |
| | | </foreach> |
| | | </delete> |
| | | |
| | | </mapper> |
New file |
| | |
| | | <?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.ruoyi.shop.mapper.shop.ShopFileMapper"> |
| | | |
| | | <resultMap type="ShopFile" id="ShopFileResult"> |
| | | <result property="id" column="id" /> |
| | | <result property="delFlag" column="del_flag" /> |
| | | <result property="shopId" column="shop_id" /> |
| | | <result property="fileType" column="file_type" /> |
| | | <result property="fileUrl" column="file_url" /> |
| | | </resultMap> |
| | | |
| | | <sql id="selectShopFileVo"> |
| | | select id, del_flag, shop_id, file_type, file_url from t_shop_file |
| | | </sql> |
| | | |
| | | <select id="selectShopFileList" parameterType="ShopFile" resultMap="ShopFileResult"> |
| | | <include refid="selectShopFileVo"/> |
| | | <where> |
| | | <if test="shopId != null "> and shop_id = #{shopId}</if> |
| | | <if test="fileType != null "> and file_type = #{fileType}</if> |
| | | <if test="fileUrl != null and fileUrl != ''"> and file_url = #{fileUrl}</if> |
| | | </where> |
| | | </select> |
| | | |
| | | <select id="selectShopFileById" parameterType="Long" resultMap="ShopFileResult"> |
| | | <include refid="selectShopFileVo"/> |
| | | where id = #{id} |
| | | </select> |
| | | |
| | | <insert id="insertShopFile" parameterType="ShopFile" useGeneratedKeys="true" keyProperty="id"> |
| | | insert into t_shop_file |
| | | <trim prefix="(" suffix=")" suffixOverrides=","> |
| | | <if test="delFlag != null">del_flag,</if> |
| | | <if test="shopId != null">shop_id,</if> |
| | | <if test="fileType != null">file_type,</if> |
| | | <if test="fileUrl != null">file_url,</if> |
| | | </trim> |
| | | <trim prefix="values (" suffix=")" suffixOverrides=","> |
| | | <if test="delFlag != null">#{delFlag},</if> |
| | | <if test="shopId != null">#{shopId},</if> |
| | | <if test="fileType != null">#{fileType},</if> |
| | | <if test="fileUrl != null">#{fileUrl},</if> |
| | | </trim> |
| | | </insert> |
| | | |
| | | <update id="updateShopFile" parameterType="ShopFile"> |
| | | update t_shop_file |
| | | <trim prefix="SET" suffixOverrides=","> |
| | | <if test="delFlag != null">del_flag = #{delFlag},</if> |
| | | <if test="shopId != null">shop_id = #{shopId},</if> |
| | | <if test="fileType != null">file_type = #{fileType},</if> |
| | | <if test="fileUrl != null">file_url = #{fileUrl},</if> |
| | | </trim> |
| | | where id = #{id} |
| | | </update> |
| | | |
| | | <delete id="deleteShopFileById" parameterType="Long"> |
| | | delete from t_shop_file where id = #{id} |
| | | </delete> |
| | | |
| | | <delete id="deleteShopFileByIds" parameterType="String"> |
| | | delete from t_shop_file where id in |
| | | <foreach item="id" collection="array" open="(" separator="," close=")"> |
| | | #{id} |
| | | </foreach> |
| | | </delete> |
| | | |
| | | <update id="deleteByShopId"> |
| | | UPDATE shop_file SET del_flag = 1 WHERE shop_id = #{shopId} |
| | | </update> |
| | | |
| | | </mapper> |
New file |
| | |
| | | <?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.ruoyi.shop.mapper.shop.ShopGoodsMapper"> |
| | | |
| | | <resultMap type="ShopGoods" id="ShopGoodsResult"> |
| | | <result property="id" column="id" /> |
| | | <result property="delFlag" column="del_flag" /> |
| | | <result property="shopId" column="shop_id" /> |
| | | <result property="goodsId" column="goods_id" /> |
| | | <result property="salesPrice" column="sales_price" /> |
| | | <result property="serviceNum" column="service_num" /> |
| | | <result property="updateime" column="update_time" /> |
| | | <result property="updateUserId" column="update_user_id" /> |
| | | </resultMap> |
| | | |
| | | <sql id="selectShopGoodsVo"> |
| | | select id, del_flag, shop_id, goods_id, sales_price, service_num, update_time, update_user_id from t_shop_goods |
| | | </sql> |
| | | |
| | | <select id="selectShopGoodsList" parameterType="ShopGoods" resultMap="ShopGoodsResult"> |
| | | <include refid="selectShopGoodsVo"/> |
| | | <where> |
| | | <if test="shopId != null "> and shop_id = #{shopId}</if> |
| | | <if test="goodsId != null "> and goods_id = #{goodsId}</if> |
| | | <if test="salesPrice != null "> and sales_price = #{salesPrice}</if> |
| | | <if test="serviceNum != null "> and service_num = #{serviceNum}</if> |
| | | <if test="updateUserId != null "> and update_user_id = #{updateUserId}</if> |
| | | </where> |
| | | </select> |
| | | |
| | | <select id="selectShopGoodsById" parameterType="Long" resultMap="ShopGoodsResult"> |
| | | <include refid="selectShopGoodsVo"/> |
| | | where id = #{id} |
| | | </select> |
| | | |
| | | <insert id="insertShopGoods" parameterType="ShopGoods" useGeneratedKeys="true" keyProperty="id"> |
| | | insert into t_shop_goods |
| | | <trim prefix="(" suffix=")" suffixOverrides=","> |
| | | <if test="delFlag != null">del_flag,</if> |
| | | <if test="shopId != null">shop_id,</if> |
| | | <if test="goodsId != null">goods_id,</if> |
| | | <if test="salesPrice != null">sales_price,</if> |
| | | <if test="serviceNum != null">service_num,</if> |
| | | <if test="updateime != null">update_time,</if> |
| | | <if test="updateUserId != null">update_user_id,</if> |
| | | </trim> |
| | | <trim prefix="values (" suffix=")" suffixOverrides=","> |
| | | <if test="delFlag != null">#{delFlag},</if> |
| | | <if test="shopId != null">#{shopId},</if> |
| | | <if test="goodsId != null">#{goodsId},</if> |
| | | <if test="salesPrice != null">#{salesPrice},</if> |
| | | <if test="serviceNum != null">#{serviceNum},</if> |
| | | <if test="updateime != null">#{updateime},</if> |
| | | <if test="updateUserId != null">#{updateUserId},</if> |
| | | </trim> |
| | | </insert> |
| | | |
| | | <update id="updateShopGoods" parameterType="ShopGoods"> |
| | | update t_shop_goods |
| | | <trim prefix="SET" suffixOverrides=","> |
| | | <if test="delFlag != null">del_flag = #{delFlag},</if> |
| | | <if test="shopId != null">shop_id = #{shopId},</if> |
| | | <if test="goodsId != null">goods_id = #{goodsId},</if> |
| | | <if test="salesPrice != null">sales_price = #{salesPrice},</if> |
| | | <if test="serviceNum != null">service_num = #{serviceNum},</if> |
| | | <if test="updateime != null">update_time = #{updateime},</if> |
| | | <if test="updateUserId != null">update_user_id = #{updateUserId},</if> |
| | | </trim> |
| | | where id = #{id} |
| | | </update> |
| | | |
| | | <delete id="deleteShopGoodsById" parameterType="Long"> |
| | | delete from t_shop_goods where id = #{id} |
| | | </delete> |
| | | |
| | | <delete id="deleteShopGoodsByIds" parameterType="String"> |
| | | delete from t_shop_goods where id in |
| | | <foreach item="id" collection="array" open="(" separator="," close=")"> |
| | | #{id} |
| | | </foreach> |
| | | </delete> |
| | | |
| | | </mapper> |
New file |
| | |
| | | <?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.ruoyi.shop.mapper.shop.ShopMapper"> |
| | | |
| | | <resultMap type="Shop" id="ShopResult"> |
| | | <result property="shopId" column="shop_id" /> |
| | | <result property="delFlag" column="del_flag" /> |
| | | <result property="shopStatus" column="shop_status" /> |
| | | <result property="createTime" column="create_time" /> |
| | | <result property="createUserId" column="create_user_id" /> |
| | | <result property="updateime" column="update_time" /> |
| | | <result property="updateUserId" column="update_user_id" /> |
| | | <result property="shopName" column="shop_name" /> |
| | | <result property="shopNumber" column="shop_number" /> |
| | | <result property="shopType" column="shop_type" /> |
| | | <result property="businessStartTime" column="business_start_time" /> |
| | | <result property="businessEndTime" column="business_end_time" /> |
| | | <result property="shopownerName" column="shopowner_name" /> |
| | | <result property="shopownerPhone" column="shopowner_phone" /> |
| | | <result property="signTime" column="sign_time" /> |
| | | <result property="signProvinceCode" column="sign_province_code" /> |
| | | <result property="signCityCode" column="sign_city_code" /> |
| | | <result property="signAreaCode" column="sign_area_code" /> |
| | | <result property="signAreaName" column="sign_area_name" /> |
| | | <result property="shopServicePhone" column="shop_service_phone" /> |
| | | <result property="belongUserId" column="belong_user_id" /> |
| | | <result property="belongShopId" column="belong_shop_id" /> |
| | | <result property="supportingCapacityFlag" column="supporting_capacity_flag" /> |
| | | <result property="operationPersonFlag" column="operation_person_flag" /> |
| | | <result property="executiveForceFlag" column="executive_force_flag" /> |
| | | <result property="patternFlag" column="pattern_flag" /> |
| | | <result property="connectionFlag" column="connection_flag" /> |
| | | <result property="economicAbilityFlag" column="economic_ability_flag" /> |
| | | <result property="relationPartner" column="relation_partner" /> |
| | | <result property="businessHistory" column="business_history" /> |
| | | <result property="shopProvinceCode" column="shop_province_code" /> |
| | | <result property="shopCityCode" column="shop_city_code" /> |
| | | <result property="shopAreaCode" column="shop_area_code" /> |
| | | <result property="shopAreaName" column="shop_area_name" /> |
| | | <result property="shopAddress" column="shop_address" /> |
| | | <result property="shopLongitude" column="shop_longitude" /> |
| | | <result property="shopLatitude" column="shop_latitude" /> |
| | | <result property="shopDetail" column="shop_detail" /> |
| | | <result property="marketingFunctionFlag" column="marketing_function_flag" /> |
| | | <result property="platformCouponFlag" column="platform_coupon_flag" /> |
| | | <result property="platformBirthdayFlag" column="platform_birthday_flag" /> |
| | | <result property="shopCustomStatus" column="shop_custom_status" /> |
| | | <result property="recommendPerson" column="recommend_person" /> |
| | | <result property="cooperationEndTime" column="cooperation_end_time" /> |
| | | <result property="cooperationStartTime" column="cooperation_start_time" /> |
| | | <result property="shopTags" column="shop_tags" /> |
| | | <result property="signUserId" column="sign_user_id" /> |
| | | <result property="shopSource" column="shop_source" /> |
| | | </resultMap> |
| | | |
| | | <sql id="selectShopVo"> |
| | | select shop_id, del_flag, shop_status, create_time, create_user_id, update_time, update_user_id, shop_name, shop_number, shop_type, business_start_time, business_end_time, shopowner_name, shopowner_phone, sign_time, sign_province_code, sign_city_code, sign_area_code, sign_area_name, shop_service_phone, belong_user_id, belong_shop_id, supporting_capacity_flag, operation_person_flag, executive_force_flag, pattern_flag, connection_flag, economic_ability_flag, relation_partner, business_history, shop_province_code, shop_city_code, shop_area_code, shop_area_name, shop_address, shop_longitude, shop_latitude, shop_detail, marketing_function_flag, platform_coupon_flag, platform_birthday_flag, shop_custom_status, recommend_person, cooperation_end_time, cooperation_start_time, shop_tags, sign_user_id, shop_source from t_shop |
| | | </sql> |
| | | |
| | | <select id="selectShopList" parameterType="Shop" resultMap="ShopResult"> |
| | | <include refid="selectShopVo"/> |
| | | <where> |
| | | <if test="shopStatus != null "> and shop_status = #{shopStatus}</if> |
| | | <if test="createUserId != null "> and create_user_id = #{createUserId}</if> |
| | | <if test="updateUserId != null "> and update_user_id = #{updateUserId}</if> |
| | | <if test="shopName != null and shopName != ''"> and shop_name like concat('%', #{shopName}, '%')</if> |
| | | <if test="shopNumber != null and shopNumber != ''"> and shop_number = #{shopNumber}</if> |
| | | <if test="shopType != null "> and shop_type = #{shopType}</if> |
| | | <if test="businessStartTime != null and businessStartTime != ''"> and business_start_time = #{businessStartTime}</if> |
| | | <if test="businessEndTime != null and businessEndTime != ''"> and business_end_time = #{businessEndTime}</if> |
| | | <if test="shopownerName != null and shopownerName != ''"> and shopowner_name like concat('%', #{shopownerName}, '%')</if> |
| | | <if test="shopownerPhone != null and shopownerPhone != ''"> and shopowner_phone = #{shopownerPhone}</if> |
| | | <if test="signTime != null "> and sign_time = #{signTime}</if> |
| | | <if test="signProvinceCode != null and signProvinceCode != ''"> and sign_province_code = #{signProvinceCode}</if> |
| | | <if test="signCityCode != null and signCityCode != ''"> and sign_city_code = #{signCityCode}</if> |
| | | <if test="signAreaCode != null and signAreaCode != ''"> and sign_area_code = #{signAreaCode}</if> |
| | | <if test="signAreaName != null and signAreaName != ''"> and sign_area_name like concat('%', #{signAreaName}, '%')</if> |
| | | <if test="shopServicePhone != null and shopServicePhone != ''"> and shop_service_phone = #{shopServicePhone}</if> |
| | | <if test="belongUserId != null "> and belong_user_id = #{belongUserId}</if> |
| | | <if test="belongShopId != null "> and belong_shop_id = #{belongShopId}</if> |
| | | <if test="supportingCapacityFlag != null "> and supporting_capacity_flag = #{supportingCapacityFlag}</if> |
| | | <if test="operationPersonFlag != null "> and operation_person_flag = #{operationPersonFlag}</if> |
| | | <if test="executiveForceFlag != null "> and executive_force_flag = #{executiveForceFlag}</if> |
| | | <if test="patternFlag != null "> and pattern_flag = #{patternFlag}</if> |
| | | <if test="connectionFlag != null "> and connection_flag = #{connectionFlag}</if> |
| | | <if test="economicAbilityFlag != null "> and economic_ability_flag = #{economicAbilityFlag}</if> |
| | | <if test="relationPartner != null "> and relation_partner = #{relationPartner}</if> |
| | | <if test="businessHistory != null and businessHistory != ''"> and business_history = #{businessHistory}</if> |
| | | <if test="shopProvinceCode != null and shopProvinceCode != ''"> and shop_province_code = #{shopProvinceCode}</if> |
| | | <if test="shopCityCode != null and shopCityCode != ''"> and shop_city_code = #{shopCityCode}</if> |
| | | <if test="shopAreaCode != null and shopAreaCode != ''"> and shop_area_code = #{shopAreaCode}</if> |
| | | <if test="shopAreaName != null and shopAreaName != ''"> and shop_area_name like concat('%', #{shopAreaName}, '%')</if> |
| | | <if test="shopAddress != null and shopAddress != ''"> and shop_address = #{shopAddress}</if> |
| | | <if test="shopLongitude != null and shopLongitude != ''"> and shop_longitude = #{shopLongitude}</if> |
| | | <if test="shopLatitude != null and shopLatitude != ''"> and shop_latitude = #{shopLatitude}</if> |
| | | <if test="shopDetail != null and shopDetail != ''"> and shop_detail = #{shopDetail}</if> |
| | | <if test="marketingFunctionFlag != null "> and marketing_function_flag = #{marketingFunctionFlag}</if> |
| | | <if test="platformCouponFlag != null "> and platform_coupon_flag = #{platformCouponFlag}</if> |
| | | <if test="platformBirthdayFlag != null "> and platform_birthday_flag = #{platformBirthdayFlag}</if> |
| | | <if test="shopCustomStatus != null and shopCustomStatus != ''"> and shop_custom_status = #{shopCustomStatus}</if> |
| | | <if test="recommendPerson != null and recommendPerson != ''"> and recommend_person = #{recommendPerson}</if> |
| | | <if test="cooperationEndTime != null "> and cooperation_end_time = #{cooperationEndTime}</if> |
| | | <if test="cooperationStartTime != null "> and cooperation_start_time = #{cooperationStartTime}</if> |
| | | <if test="shopTags != null and shopTags != ''"> and shop_tags = #{shopTags}</if> |
| | | <if test="signUserId != null "> and sign_user_id = #{signUserId}</if> |
| | | <if test="shopSource != null and shopSource != ''"> and shop_source = #{shopSource}</if> |
| | | </where> |
| | | </select> |
| | | |
| | | <select id="selectShopByShopId" parameterType="Long" resultMap="ShopResult"> |
| | | <include refid="selectShopVo"/> |
| | | where shop_id = #{shopId} |
| | | </select> |
| | | |
| | | <insert id="insertShop" parameterType="Shop" useGeneratedKeys="true" keyProperty="shopId"> |
| | | insert into t_shop |
| | | <trim prefix="(" suffix=")" suffixOverrides=","> |
| | | <if test="delFlag != null">del_flag,</if> |
| | | <if test="shopStatus != null">shop_status,</if> |
| | | <if test="createTime != null">create_time,</if> |
| | | <if test="createUserId != null">create_user_id,</if> |
| | | <if test="updateime != null">update_time,</if> |
| | | <if test="updateUserId != null">update_user_id,</if> |
| | | <if test="shopName != null">shop_name,</if> |
| | | <if test="shopNumber != null">shop_number,</if> |
| | | <if test="shopType != null">shop_type,</if> |
| | | <if test="businessStartTime != null">business_start_time,</if> |
| | | <if test="businessEndTime != null">business_end_time,</if> |
| | | <if test="shopownerName != null">shopowner_name,</if> |
| | | <if test="shopownerPhone != null">shopowner_phone,</if> |
| | | <if test="signTime != null">sign_time,</if> |
| | | <if test="signProvinceCode != null">sign_province_code,</if> |
| | | <if test="signCityCode != null">sign_city_code,</if> |
| | | <if test="signAreaCode != null">sign_area_code,</if> |
| | | <if test="signAreaName != null">sign_area_name,</if> |
| | | <if test="shopServicePhone != null">shop_service_phone,</if> |
| | | <if test="belongUserId != null">belong_user_id,</if> |
| | | <if test="belongShopId != null">belong_shop_id,</if> |
| | | <if test="supportingCapacityFlag != null">supporting_capacity_flag,</if> |
| | | <if test="operationPersonFlag != null">operation_person_flag,</if> |
| | | <if test="executiveForceFlag != null">executive_force_flag,</if> |
| | | <if test="patternFlag != null">pattern_flag,</if> |
| | | <if test="connectionFlag != null">connection_flag,</if> |
| | | <if test="economicAbilityFlag != null">economic_ability_flag,</if> |
| | | <if test="relationPartner != null">relation_partner,</if> |
| | | <if test="businessHistory != null">business_history,</if> |
| | | <if test="shopProvinceCode != null">shop_province_code,</if> |
| | | <if test="shopCityCode != null">shop_city_code,</if> |
| | | <if test="shopAreaCode != null">shop_area_code,</if> |
| | | <if test="shopAreaName != null">shop_area_name,</if> |
| | | <if test="shopAddress != null">shop_address,</if> |
| | | <if test="shopLongitude != null">shop_longitude,</if> |
| | | <if test="shopLatitude != null">shop_latitude,</if> |
| | | <if test="shopDetail != null">shop_detail,</if> |
| | | <if test="marketingFunctionFlag != null">marketing_function_flag,</if> |
| | | <if test="platformCouponFlag != null">platform_coupon_flag,</if> |
| | | <if test="platformBirthdayFlag != null">platform_birthday_flag,</if> |
| | | <if test="shopCustomStatus != null">shop_custom_status,</if> |
| | | <if test="recommendPerson != null">recommend_person,</if> |
| | | <if test="cooperationEndTime != null">cooperation_end_time,</if> |
| | | <if test="cooperationStartTime != null">cooperation_start_time,</if> |
| | | <if test="shopTags != null">shop_tags,</if> |
| | | <if test="signUserId != null">sign_user_id,</if> |
| | | <if test="shopSource != null">shop_source,</if> |
| | | </trim> |
| | | <trim prefix="values (" suffix=")" suffixOverrides=","> |
| | | <if test="delFlag != null">#{delFlag},</if> |
| | | <if test="shopStatus != null">#{shopStatus},</if> |
| | | <if test="createTime != null">#{createTime},</if> |
| | | <if test="createUserId != null">#{createUserId},</if> |
| | | <if test="updateime != null">#{updateime},</if> |
| | | <if test="updateUserId != null">#{updateUserId},</if> |
| | | <if test="shopName != null">#{shopName},</if> |
| | | <if test="shopNumber != null">#{shopNumber},</if> |
| | | <if test="shopType != null">#{shopType},</if> |
| | | <if test="businessStartTime != null">#{businessStartTime},</if> |
| | | <if test="businessEndTime != null">#{businessEndTime},</if> |
| | | <if test="shopownerName != null">#{shopownerName},</if> |
| | | <if test="shopownerPhone != null">#{shopownerPhone},</if> |
| | | <if test="signTime != null">#{signTime},</if> |
| | | <if test="signProvinceCode != null">#{signProvinceCode},</if> |
| | | <if test="signCityCode != null">#{signCityCode},</if> |
| | | <if test="signAreaCode != null">#{signAreaCode},</if> |
| | | <if test="signAreaName != null">#{signAreaName},</if> |
| | | <if test="shopServicePhone != null">#{shopServicePhone},</if> |
| | | <if test="belongUserId != null">#{belongUserId},</if> |
| | | <if test="belongShopId != null">#{belongShopId},</if> |
| | | <if test="supportingCapacityFlag != null">#{supportingCapacityFlag},</if> |
| | | <if test="operationPersonFlag != null">#{operationPersonFlag},</if> |
| | | <if test="executiveForceFlag != null">#{executiveForceFlag},</if> |
| | | <if test="patternFlag != null">#{patternFlag},</if> |
| | | <if test="connectionFlag != null">#{connectionFlag},</if> |
| | | <if test="economicAbilityFlag != null">#{economicAbilityFlag},</if> |
| | | <if test="relationPartner != null">#{relationPartner},</if> |
| | | <if test="businessHistory != null">#{businessHistory},</if> |
| | | <if test="shopProvinceCode != null">#{shopProvinceCode},</if> |
| | | <if test="shopCityCode != null">#{shopCityCode},</if> |
| | | <if test="shopAreaCode != null">#{shopAreaCode},</if> |
| | | <if test="shopAreaName != null">#{shopAreaName},</if> |
| | | <if test="shopAddress != null">#{shopAddress},</if> |
| | | <if test="shopLongitude != null">#{shopLongitude},</if> |
| | | <if test="shopLatitude != null">#{shopLatitude},</if> |
| | | <if test="shopDetail != null">#{shopDetail},</if> |
| | | <if test="marketingFunctionFlag != null">#{marketingFunctionFlag},</if> |
| | | <if test="platformCouponFlag != null">#{platformCouponFlag},</if> |
| | | <if test="platformBirthdayFlag != null">#{platformBirthdayFlag},</if> |
| | | <if test="shopCustomStatus != null">#{shopCustomStatus},</if> |
| | | <if test="recommendPerson != null">#{recommendPerson},</if> |
| | | <if test="cooperationEndTime != null">#{cooperationEndTime},</if> |
| | | <if test="cooperationStartTime != null">#{cooperationStartTime},</if> |
| | | <if test="shopTags != null">#{shopTags},</if> |
| | | <if test="signUserId != null">#{signUserId},</if> |
| | | <if test="shopSource != null">#{shopSource},</if> |
| | | </trim> |
| | | </insert> |
| | | |
| | | <update id="updateShop" parameterType="Shop"> |
| | | update t_shop |
| | | <trim prefix="SET" suffixOverrides=","> |
| | | <if test="delFlag != null">del_flag = #{delFlag},</if> |
| | | <if test="shopStatus != null">shop_status = #{shopStatus},</if> |
| | | <if test="createTime != null">create_time = #{createTime},</if> |
| | | <if test="createUserId != null">create_user_id = #{createUserId},</if> |
| | | <if test="updateime != null">update_time = #{updateime},</if> |
| | | <if test="updateUserId != null">update_user_id = #{updateUserId},</if> |
| | | <if test="shopName != null">shop_name = #{shopName},</if> |
| | | <if test="shopNumber != null">shop_number = #{shopNumber},</if> |
| | | <if test="shopType != null">shop_type = #{shopType},</if> |
| | | <if test="businessStartTime != null">business_start_time = #{businessStartTime},</if> |
| | | <if test="businessEndTime != null">business_end_time = #{businessEndTime},</if> |
| | | <if test="shopownerName != null">shopowner_name = #{shopownerName},</if> |
| | | <if test="shopownerPhone != null">shopowner_phone = #{shopownerPhone},</if> |
| | | <if test="signTime != null">sign_time = #{signTime},</if> |
| | | <if test="signProvinceCode != null">sign_province_code = #{signProvinceCode},</if> |
| | | <if test="signCityCode != null">sign_city_code = #{signCityCode},</if> |
| | | <if test="signAreaCode != null">sign_area_code = #{signAreaCode},</if> |
| | | <if test="signAreaName != null">sign_area_name = #{signAreaName},</if> |
| | | <if test="shopServicePhone != null">shop_service_phone = #{shopServicePhone},</if> |
| | | <if test="belongUserId != null">belong_user_id = #{belongUserId},</if> |
| | | <if test="belongShopId != null">belong_shop_id = #{belongShopId},</if> |
| | | <if test="supportingCapacityFlag != null">supporting_capacity_flag = #{supportingCapacityFlag},</if> |
| | | <if test="operationPersonFlag != null">operation_person_flag = #{operationPersonFlag},</if> |
| | | <if test="executiveForceFlag != null">executive_force_flag = #{executiveForceFlag},</if> |
| | | <if test="patternFlag != null">pattern_flag = #{patternFlag},</if> |
| | | <if test="connectionFlag != null">connection_flag = #{connectionFlag},</if> |
| | | <if test="economicAbilityFlag != null">economic_ability_flag = #{economicAbilityFlag},</if> |
| | | <if test="relationPartner != null">relation_partner = #{relationPartner},</if> |
| | | <if test="businessHistory != null">business_history = #{businessHistory},</if> |
| | | <if test="shopProvinceCode != null">shop_province_code = #{shopProvinceCode},</if> |
| | | <if test="shopCityCode != null">shop_city_code = #{shopCityCode},</if> |
| | | <if test="shopAreaCode != null">shop_area_code = #{shopAreaCode},</if> |
| | | <if test="shopAreaName != null">shop_area_name = #{shopAreaName},</if> |
| | | <if test="shopAddress != null">shop_address = #{shopAddress},</if> |
| | | <if test="shopLongitude != null">shop_longitude = #{shopLongitude},</if> |
| | | <if test="shopLatitude != null">shop_latitude = #{shopLatitude},</if> |
| | | <if test="shopDetail != null">shop_detail = #{shopDetail},</if> |
| | | <if test="marketingFunctionFlag != null">marketing_function_flag = #{marketingFunctionFlag},</if> |
| | | <if test="platformCouponFlag != null">platform_coupon_flag = #{platformCouponFlag},</if> |
| | | <if test="platformBirthdayFlag != null">platform_birthday_flag = #{platformBirthdayFlag},</if> |
| | | <if test="shopCustomStatus != null">shop_custom_status = #{shopCustomStatus},</if> |
| | | <if test="recommendPerson != null">recommend_person = #{recommendPerson},</if> |
| | | <if test="cooperationEndTime != null">cooperation_end_time = #{cooperationEndTime},</if> |
| | | <if test="cooperationStartTime != null">cooperation_start_time = #{cooperationStartTime},</if> |
| | | <if test="shopTags != null">shop_tags = #{shopTags},</if> |
| | | <if test="signUserId != null">sign_user_id = #{signUserId},</if> |
| | | <if test="shopSource != null">shop_source = #{shopSource},</if> |
| | | </trim> |
| | | where shop_id = #{shopId} |
| | | </update> |
| | | |
| | | <delete id="deleteShopByShopId" parameterType="Long"> |
| | | delete from t_shop where shop_id = #{shopId} |
| | | </delete> |
| | | |
| | | <delete id="deleteShopByShopIds" parameterType="String"> |
| | | delete from t_shop where shop_id in |
| | | <foreach item="shopId" collection="array" open="(" separator="," close=")"> |
| | | #{shopId} |
| | | </foreach> |
| | | </delete> |
| | | |
| | | <select id="pageShop" resultType="com.ruoyi.shop.domain.vo.MgtShopPageVo"> |
| | | SELECT |
| | | ts.shop_id shopId, |
| | | ts.sign_time signTime, |
| | | ts.shop_name shopName, |
| | | ts.shop_number shopNumber, |
| | | ts.shop_tags shopTags, |
| | | sus.nick_name signUser, |
| | | null firstWithdraw, |
| | | sub.nick_name belongUser, |
| | | sd.dept_name belongDept, |
| | | ts.shop_source shopSource, |
| | | ts.sign_area_name signAreaName, |
| | | CONCAT(ts.cooperation_start_time,'-',ts.cooperation_end_time) cooperationTime, |
| | | CONCAT(ts.shop_area_name,ts.shop_address) shopAddress, |
| | | ts.shopowner_name shopownerName, |
| | | ts.shopowner_phone shopownerPhone, |
| | | ts.shop_status shopStatus, |
| | | tsm.shop_marketing_total shopActivityCount, |
| | | ts.shop_custom_status shopCustomStatus |
| | | FROM t_shop ts |
| | | LEFT JOIN sys_user sus ON sus.user_id = ts.sign_user_id |
| | | LEFT JOIN sys_user sub ON sub.user_id = ts.belong_user_id |
| | | LEFT JOIN sys_dept sd ON sub.dept_id = sd.dept_id |
| | | LEFT JOIN t_shop_marketing tsm ON tsm.shop_id = ts.shop_id |
| | | |
| | | </select> |
| | | |
| | | </mapper> |
New file |
| | |
| | | <?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.ruoyi.shop.mapper.shop.ShopMarketingMapper"> |
| | | |
| | | <resultMap type="ShopMarketing" id="ShopMarketingResult"> |
| | | <result property="shopId" column="shop_id" /> |
| | | <result property="delFlag" column="del_flag" /> |
| | | <result property="shopBirthdayFlag" column="shop_birthday_flag" /> |
| | | <result property="shopCouponCount" column="shop_coupon_count" /> |
| | | <result property="shopMarketingTotal" column="shop_marketing_total" /> |
| | | </resultMap> |
| | | |
| | | <sql id="selectShopMarketingVo"> |
| | | select shop_id, del_flag, shop_birthday_flag, shop_coupon_count, shop_marketing_total from t_shop_marketing |
| | | </sql> |
| | | |
| | | <select id="selectShopMarketingList" parameterType="ShopMarketing" resultMap="ShopMarketingResult"> |
| | | <include refid="selectShopMarketingVo"/> |
| | | <where> |
| | | <if test="shopBirthdayFlag != null "> and shop_birthday_flag = #{shopBirthdayFlag}</if> |
| | | <if test="shopCouponCount != null "> and shop_coupon_count = #{shopCouponCount}</if> |
| | | <if test="shopMarketingTotal != null "> and shop_marketing_total = #{shopMarketingTotal}</if> |
| | | </where> |
| | | </select> |
| | | |
| | | <select id="selectShopMarketingByShopId" parameterType="Long" resultMap="ShopMarketingResult"> |
| | | <include refid="selectShopMarketingVo"/> |
| | | where shop_id = #{shopId} |
| | | </select> |
| | | |
| | | <insert id="insertShopMarketing" parameterType="ShopMarketing" useGeneratedKeys="true" keyProperty="shopId"> |
| | | insert into t_shop_marketing |
| | | <trim prefix="(" suffix=")" suffixOverrides=","> |
| | | <if test="delFlag != null">del_flag,</if> |
| | | <if test="shopBirthdayFlag != null">shop_birthday_flag,</if> |
| | | <if test="shopCouponCount != null">shop_coupon_count,</if> |
| | | <if test="shopMarketingTotal != null">shop_marketing_total,</if> |
| | | </trim> |
| | | <trim prefix="values (" suffix=")" suffixOverrides=","> |
| | | <if test="delFlag != null">#{delFlag},</if> |
| | | <if test="shopBirthdayFlag != null">#{shopBirthdayFlag},</if> |
| | | <if test="shopCouponCount != null">#{shopCouponCount},</if> |
| | | <if test="shopMarketingTotal != null">#{shopMarketingTotal},</if> |
| | | </trim> |
| | | </insert> |
| | | |
| | | <update id="updateShopMarketing" parameterType="ShopMarketing"> |
| | | update t_shop_marketing |
| | | <trim prefix="SET" suffixOverrides=","> |
| | | <if test="delFlag != null">del_flag = #{delFlag},</if> |
| | | <if test="shopBirthdayFlag != null">shop_birthday_flag = #{shopBirthdayFlag},</if> |
| | | <if test="shopCouponCount != null">shop_coupon_count = #{shopCouponCount},</if> |
| | | <if test="shopMarketingTotal != null">shop_marketing_total = #{shopMarketingTotal},</if> |
| | | </trim> |
| | | where shop_id = #{shopId} |
| | | </update> |
| | | |
| | | <delete id="deleteShopMarketingByShopId" parameterType="Long"> |
| | | delete from t_shop_marketing where shop_id = #{shopId} |
| | | </delete> |
| | | |
| | | <delete id="deleteShopMarketingByShopIds" parameterType="String"> |
| | | delete from t_shop_marketing where shop_id in |
| | | <foreach item="shopId" collection="array" open="(" separator="," close=")"> |
| | | #{shopId} |
| | | </foreach> |
| | | </delete> |
| | | |
| | | </mapper> |
New file |
| | |
| | | <?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.ruoyi.shop.mapper.shop.ShopRelTagMapper"> |
| | | |
| | | <resultMap type="ShopRelTag" id="ShopRelTagResult"> |
| | | <result property="id" column="id" /> |
| | | <result property="delFlag" column="del_flag" /> |
| | | <result property="shopId" column="shop_id" /> |
| | | <result property="tagId" column="tag_id" /> |
| | | </resultMap> |
| | | |
| | | <sql id="selectShopRelTagVo"> |
| | | select id, del_flag, shop_id, tag_id from t_shop_rel_tag |
| | | </sql> |
| | | |
| | | <select id="selectShopRelTagList" parameterType="ShopRelTag" resultMap="ShopRelTagResult"> |
| | | <include refid="selectShopRelTagVo"/> |
| | | <where> |
| | | <if test="shopId != null "> and shop_id = #{shopId}</if> |
| | | <if test="tagId != null "> and tag_id = #{tagId}</if> |
| | | </where> |
| | | </select> |
| | | |
| | | <select id="selectShopRelTagById" parameterType="Long" resultMap="ShopRelTagResult"> |
| | | <include refid="selectShopRelTagVo"/> |
| | | where id = #{id} |
| | | </select> |
| | | |
| | | <insert id="insertShopRelTag" parameterType="ShopRelTag" useGeneratedKeys="true" keyProperty="id"> |
| | | insert into t_shop_rel_tag |
| | | <trim prefix="(" suffix=")" suffixOverrides=","> |
| | | <if test="delFlag != null">del_flag,</if> |
| | | <if test="shopId != null">shop_id,</if> |
| | | <if test="tagId != null">tag_id,</if> |
| | | </trim> |
| | | <trim prefix="values (" suffix=")" suffixOverrides=","> |
| | | <if test="delFlag != null">#{delFlag},</if> |
| | | <if test="shopId != null">#{shopId},</if> |
| | | <if test="tagId != null">#{tagId},</if> |
| | | </trim> |
| | | </insert> |
| | | |
| | | <update id="updateShopRelTag" parameterType="ShopRelTag"> |
| | | update t_shop_rel_tag |
| | | <trim prefix="SET" suffixOverrides=","> |
| | | <if test="delFlag != null">del_flag = #{delFlag},</if> |
| | | <if test="shopId != null">shop_id = #{shopId},</if> |
| | | <if test="tagId != null">tag_id = #{tagId},</if> |
| | | </trim> |
| | | where id = #{id} |
| | | </update> |
| | | |
| | | <delete id="deleteShopRelTagById" parameterType="Long"> |
| | | delete from t_shop_rel_tag where id = #{id} |
| | | </delete> |
| | | |
| | | <delete id="deleteShopRelTagByIds" parameterType="String"> |
| | | delete from t_shop_rel_tag where id in |
| | | <foreach item="id" collection="array" open="(" separator="," close=")"> |
| | | #{id} |
| | | </foreach> |
| | | </delete> |
| | | |
| | | <update id="deleteByShopId"> |
| | | UPDATE shop_rel_tag SET del_flag = 1 WHERE shop_id = #{shopId} |
| | | </update> |
| | | |
| | | <select id="listShopTagVo" resultType="com.ruoyi.shop.domain.vo.MgtShopTagVo"> |
| | | SELECT |
| | | srt.tag_id tagId, |
| | | st.tag_name tagName, |
| | | CASE WHEN srt.id IS NULL THEN 0 ELSE 1 END selectFlag |
| | | FROM sys_tag st |
| | | LEFT JOIN shop_rel_tag srt ON srt.tag_id = st.tag_id |
| | | WHERE srt.del_flag = 0 AND shop_id = #{shopId} |
| | | </select> |
| | | </mapper> |
New file |
| | |
| | | <?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.ruoyi.shop.mapper.shop.ShopRelUserMapper"> |
| | | |
| | | <resultMap type="ShopRelUser" id="ShopRelUserResult"> |
| | | <result property="id" column="id" /> |
| | | <result property="delFlag" column="del_flag" /> |
| | | <result property="shopId" column="shop_id" /> |
| | | <result property="userId" column="user_id" /> |
| | | <result property="userMobile" column="user_mobile" /> |
| | | <result property="userDeptId" column="user_dept_id" /> |
| | | </resultMap> |
| | | |
| | | <sql id="selectShopRelUserVo"> |
| | | select id, del_flag, shop_id, user_id, user_mobile, user_dept_id from t_shop_rel_user |
| | | </sql> |
| | | |
| | | <select id="selectShopRelUserList" parameterType="ShopRelUser" resultMap="ShopRelUserResult"> |
| | | <include refid="selectShopRelUserVo"/> |
| | | <where> |
| | | <if test="shopId != null "> and shop_id = #{shopId}</if> |
| | | <if test="userId != null "> and user_id = #{userId}</if> |
| | | <if test="userMobile != null and userMobile != ''"> and user_mobile = #{userMobile}</if> |
| | | <if test="userDeptId != null "> and user_dept_id = #{userDeptId}</if> |
| | | </where> |
| | | </select> |
| | | |
| | | <select id="selectShopRelUserById" parameterType="Long" resultMap="ShopRelUserResult"> |
| | | <include refid="selectShopRelUserVo"/> |
| | | where id = #{id} |
| | | </select> |
| | | |
| | | <insert id="insertShopRelUser" parameterType="ShopRelUser" useGeneratedKeys="true" keyProperty="id"> |
| | | insert into t_shop_rel_user |
| | | <trim prefix="(" suffix=")" suffixOverrides=","> |
| | | <if test="delFlag != null">del_flag,</if> |
| | | <if test="shopId != null">shop_id,</if> |
| | | <if test="userId != null">user_id,</if> |
| | | <if test="userMobile != null">user_mobile,</if> |
| | | <if test="userDeptId != null">user_dept_id,</if> |
| | | </trim> |
| | | <trim prefix="values (" suffix=")" suffixOverrides=","> |
| | | <if test="delFlag != null">#{delFlag},</if> |
| | | <if test="shopId != null">#{shopId},</if> |
| | | <if test="userId != null">#{userId},</if> |
| | | <if test="userMobile != null">#{userMobile},</if> |
| | | <if test="userDeptId != null">#{userDeptId},</if> |
| | | </trim> |
| | | </insert> |
| | | |
| | | <update id="updateShopRelUser" parameterType="ShopRelUser"> |
| | | update t_shop_rel_user |
| | | <trim prefix="SET" suffixOverrides=","> |
| | | <if test="delFlag != null">del_flag = #{delFlag},</if> |
| | | <if test="shopId != null">shop_id = #{shopId},</if> |
| | | <if test="userId != null">user_id = #{userId},</if> |
| | | <if test="userMobile != null">user_mobile = #{userMobile},</if> |
| | | <if test="userDeptId != null">user_dept_id = #{userDeptId},</if> |
| | | </trim> |
| | | where id = #{id} |
| | | </update> |
| | | |
| | | <delete id="deleteShopRelUserById" parameterType="Long"> |
| | | delete from t_shop_rel_user where id = #{id} |
| | | </delete> |
| | | |
| | | <delete id="deleteShopRelUserByIds" parameterType="String"> |
| | | delete from t_shop_rel_user where id in |
| | | <foreach item="id" collection="array" open="(" separator="," close=")"> |
| | | #{id} |
| | | </foreach> |
| | | </delete> |
| | | |
| | | <update id="deleteByShopId"> |
| | | UPDATE shop_rel_user SET del_flag = 1 WHERE shop_id = #{shopId} |
| | | </update> |
| | | </mapper> |
New file |
| | |
| | | <?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.ruoyi.shop.mapper.shop.ShopTaskMapper"> |
| | | |
| | | <resultMap type="ShopTask" id="ShopTaskResult"> |
| | | <result property="taskId" column="task_id" /> |
| | | <result property="delFlag" column="del_flag" /> |
| | | <result property="shopId" column="shop_id" /> |
| | | <result property="followTypeId" column="follow_type_id" /> |
| | | <result property="followContent" column="follow_content" /> |
| | | <result property="nextFollowDate" column="next_follow_date" /> |
| | | <result property="taskTitle" column="task_title" /> |
| | | <result property="emergencyStateId" column="emergency_state_id" /> |
| | | <result property="createTime" column="create_time" /> |
| | | </resultMap> |
| | | |
| | | <sql id="selectShopTaskVo"> |
| | | select task_id, del_flag, shop_id, follow_type_id, follow_content, next_follow_date, task_title, emergency_state_id, create_time from t_shop_task |
| | | </sql> |
| | | |
| | | <select id="selectShopTaskList" parameterType="ShopTask" resultMap="ShopTaskResult"> |
| | | <include refid="selectShopTaskVo"/> |
| | | <where> |
| | | <if test="shopId != null "> and shop_id = #{shopId}</if> |
| | | <if test="followTypeId != null "> and follow_type_id = #{followTypeId}</if> |
| | | <if test="followContent != null and followContent != ''"> and follow_content = #{followContent}</if> |
| | | <if test="nextFollowDate != null "> and next_follow_date = #{nextFollowDate}</if> |
| | | <if test="taskTitle != null and taskTitle != ''"> and task_title = #{taskTitle}</if> |
| | | <if test="emergencyStateId != null "> and emergency_state_id = #{emergencyStateId}</if> |
| | | </where> |
| | | </select> |
| | | |
| | | <select id="selectShopTaskByTaskId" parameterType="String" resultMap="ShopTaskResult"> |
| | | <include refid="selectShopTaskVo"/> |
| | | where task_id = #{taskId} |
| | | </select> |
| | | |
| | | <insert id="insertShopTask" parameterType="ShopTask"> |
| | | insert into t_shop_task |
| | | <trim prefix="(" suffix=")" suffixOverrides=","> |
| | | <if test="taskId != null">task_id,</if> |
| | | <if test="delFlag != null">del_flag,</if> |
| | | <if test="shopId != null">shop_id,</if> |
| | | <if test="followTypeId != null">follow_type_id,</if> |
| | | <if test="followContent != null">follow_content,</if> |
| | | <if test="nextFollowDate != null">next_follow_date,</if> |
| | | <if test="taskTitle != null">task_title,</if> |
| | | <if test="emergencyStateId != null">emergency_state_id,</if> |
| | | <if test="createTime != null">create_time,</if> |
| | | </trim> |
| | | <trim prefix="values (" suffix=")" suffixOverrides=","> |
| | | <if test="taskId != null">#{taskId},</if> |
| | | <if test="delFlag != null">#{delFlag},</if> |
| | | <if test="shopId != null">#{shopId},</if> |
| | | <if test="followTypeId != null">#{followTypeId},</if> |
| | | <if test="followContent != null">#{followContent},</if> |
| | | <if test="nextFollowDate != null">#{nextFollowDate},</if> |
| | | <if test="taskTitle != null">#{taskTitle},</if> |
| | | <if test="emergencyStateId != null">#{emergencyStateId},</if> |
| | | <if test="createTime != null">#{createTime},</if> |
| | | </trim> |
| | | </insert> |
| | | |
| | | <update id="updateShopTask" parameterType="ShopTask"> |
| | | update t_shop_task |
| | | <trim prefix="SET" suffixOverrides=","> |
| | | <if test="delFlag != null">del_flag = #{delFlag},</if> |
| | | <if test="shopId != null">shop_id = #{shopId},</if> |
| | | <if test="followTypeId != null">follow_type_id = #{followTypeId},</if> |
| | | <if test="followContent != null">follow_content = #{followContent},</if> |
| | | <if test="nextFollowDate != null">next_follow_date = #{nextFollowDate},</if> |
| | | <if test="taskTitle != null">task_title = #{taskTitle},</if> |
| | | <if test="emergencyStateId != null">emergency_state_id = #{emergencyStateId},</if> |
| | | <if test="createTime != null">create_time = #{createTime},</if> |
| | | </trim> |
| | | where task_id = #{taskId} |
| | | </update> |
| | | |
| | | <delete id="deleteShopTaskByTaskId" parameterType="String"> |
| | | delete from t_shop_task where task_id = #{taskId} |
| | | </delete> |
| | | |
| | | <delete id="deleteShopTaskByTaskIds" parameterType="String"> |
| | | delete from t_shop_task where task_id in |
| | | <foreach item="taskId" collection="array" open="(" separator="," close=")"> |
| | | #{taskId} |
| | | </foreach> |
| | | </delete> |
| | | |
| | | </mapper> |
New file |
| | |
| | | <?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.ruoyi.shop.mapper.shop.ShopTransferRecordMapper"> |
| | | |
| | | <resultMap type="ShopTransferRecord" id="ShopTransferRecordResult"> |
| | | <result property="id" column="id" /> |
| | | <result property="delFlag" column="del_flag" /> |
| | | <result property="shopId" column="shop_id" /> |
| | | <result property="beforeUserId" column="before_user_id" /> |
| | | <result property="afterUserId" column="after_user_id" /> |
| | | <result property="transferRemark" column="transfer_remark" /> |
| | | </resultMap> |
| | | |
| | | <sql id="selectShopTransferRecordVo"> |
| | | select id, del_flag, shop_id, before_user_id, after_user_id, transfer_remark from t_shop_transfer_record |
| | | </sql> |
| | | |
| | | <select id="selectShopTransferRecordList" parameterType="ShopTransferRecord" resultMap="ShopTransferRecordResult"> |
| | | <include refid="selectShopTransferRecordVo"/> |
| | | <where> |
| | | <if test="shopId != null "> and shop_id = #{shopId}</if> |
| | | <if test="beforeUserId != null "> and before_user_id = #{beforeUserId}</if> |
| | | <if test="afterUserId != null "> and after_user_id = #{afterUserId}</if> |
| | | <if test="transferRemark != null and transferRemark != ''"> and transfer_remark = #{transferRemark}</if> |
| | | </where> |
| | | </select> |
| | | |
| | | <select id="selectShopTransferRecordById" parameterType="Long" resultMap="ShopTransferRecordResult"> |
| | | <include refid="selectShopTransferRecordVo"/> |
| | | where id = #{id} |
| | | </select> |
| | | |
| | | <insert id="insertShopTransferRecord" parameterType="ShopTransferRecord" useGeneratedKeys="true" keyProperty="id"> |
| | | insert into t_shop_transfer_record |
| | | <trim prefix="(" suffix=")" suffixOverrides=","> |
| | | <if test="delFlag != null">del_flag,</if> |
| | | <if test="shopId != null">shop_id,</if> |
| | | <if test="beforeUserId != null">before_user_id,</if> |
| | | <if test="afterUserId != null">after_user_id,</if> |
| | | <if test="transferRemark != null">transfer_remark,</if> |
| | | </trim> |
| | | <trim prefix="values (" suffix=")" suffixOverrides=","> |
| | | <if test="delFlag != null">#{delFlag},</if> |
| | | <if test="shopId != null">#{shopId},</if> |
| | | <if test="beforeUserId != null">#{beforeUserId},</if> |
| | | <if test="afterUserId != null">#{afterUserId},</if> |
| | | <if test="transferRemark != null">#{transferRemark},</if> |
| | | </trim> |
| | | </insert> |
| | | |
| | | <update id="updateShopTransferRecord" parameterType="ShopTransferRecord"> |
| | | update t_shop_transfer_record |
| | | <trim prefix="SET" suffixOverrides=","> |
| | | <if test="delFlag != null">del_flag = #{delFlag},</if> |
| | | <if test="shopId != null">shop_id = #{shopId},</if> |
| | | <if test="beforeUserId != null">before_user_id = #{beforeUserId},</if> |
| | | <if test="afterUserId != null">after_user_id = #{afterUserId},</if> |
| | | <if test="transferRemark != null">transfer_remark = #{transferRemark},</if> |
| | | </trim> |
| | | where id = #{id} |
| | | </update> |
| | | |
| | | <delete id="deleteShopTransferRecordById" parameterType="Long"> |
| | | delete from t_shop_transfer_record where id = #{id} |
| | | </delete> |
| | | |
| | | <delete id="deleteShopTransferRecordByIds" parameterType="String"> |
| | | delete from t_shop_transfer_record where id in |
| | | <foreach item="id" collection="array" open="(" separator="," close=")"> |
| | | #{id} |
| | | </foreach> |
| | | </delete> |
| | | |
| | | </mapper> |
New file |
| | |
| | | <?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.ruoyi.shop.mapper.shop.TaskFileMapper"> |
| | | |
| | | <resultMap type="TaskFile" id="TaskFileResult"> |
| | | <result property="id" column="id" /> |
| | | <result property="delFlag" column="del_flag" /> |
| | | <result property="followId" column="follow_id" /> |
| | | <result property="followFrom" column="follow_from" /> |
| | | <result property="fileUrl" column="file_url" /> |
| | | <result property="fileType" column="file_type" /> |
| | | </resultMap> |
| | | |
| | | <sql id="selectTaskFileVo"> |
| | | select id, del_flag, follow_id, follow_from, file_url, file_type from t_task_file |
| | | </sql> |
| | | |
| | | <select id="selectTaskFileList" parameterType="TaskFile" resultMap="TaskFileResult"> |
| | | <include refid="selectTaskFileVo"/> |
| | | <where> |
| | | <if test="followId != null "> and follow_id = #{followId}</if> |
| | | <if test="followFrom != null "> and follow_from = #{followFrom}</if> |
| | | <if test="fileUrl != null and fileUrl != ''"> and file_url = #{fileUrl}</if> |
| | | <if test="fileType != null "> and file_type = #{fileType}</if> |
| | | </where> |
| | | </select> |
| | | |
| | | <select id="selectTaskFileById" parameterType="Long" resultMap="TaskFileResult"> |
| | | <include refid="selectTaskFileVo"/> |
| | | where id = #{id} |
| | | </select> |
| | | |
| | | <insert id="insertTaskFile" parameterType="TaskFile" useGeneratedKeys="true" keyProperty="id"> |
| | | insert into t_task_file |
| | | <trim prefix="(" suffix=")" suffixOverrides=","> |
| | | <if test="delFlag != null">del_flag,</if> |
| | | <if test="followId != null">follow_id,</if> |
| | | <if test="followFrom != null">follow_from,</if> |
| | | <if test="fileUrl != null">file_url,</if> |
| | | <if test="fileType != null">file_type,</if> |
| | | </trim> |
| | | <trim prefix="values (" suffix=")" suffixOverrides=","> |
| | | <if test="delFlag != null">#{delFlag},</if> |
| | | <if test="followId != null">#{followId},</if> |
| | | <if test="followFrom != null">#{followFrom},</if> |
| | | <if test="fileUrl != null">#{fileUrl},</if> |
| | | <if test="fileType != null">#{fileType},</if> |
| | | </trim> |
| | | </insert> |
| | | |
| | | <update id="updateTaskFile" parameterType="TaskFile"> |
| | | update t_task_file |
| | | <trim prefix="SET" suffixOverrides=","> |
| | | <if test="delFlag != null">del_flag = #{delFlag},</if> |
| | | <if test="followId != null">follow_id = #{followId},</if> |
| | | <if test="followFrom != null">follow_from = #{followFrom},</if> |
| | | <if test="fileUrl != null">file_url = #{fileUrl},</if> |
| | | <if test="fileType != null">file_type = #{fileType},</if> |
| | | </trim> |
| | | where id = #{id} |
| | | </update> |
| | | |
| | | <delete id="deleteTaskFileById" parameterType="Long"> |
| | | delete from t_task_file where id = #{id} |
| | | </delete> |
| | | |
| | | <delete id="deleteTaskFileByIds" parameterType="String"> |
| | | delete from t_task_file where id in |
| | | <foreach item="id" collection="array" open="(" separator="," close=")"> |
| | | #{id} |
| | | </foreach> |
| | | </delete> |
| | | |
| | | </mapper> |
| | |
| | | <artifactId>mybatis-plus-generate</artifactId> |
| | | <version>2.3</version> |
| | | </dependency> |
| | | |
| | | <!-- 小程序统一服务 --> |
| | | <dependency> |
| | | <groupId>com.github.binarywang</groupId> |
| | | <artifactId>weixin-java-miniapp</artifactId> |
| | | <version>4.1.0</version> |
| | | </dependency> |
| | | </dependencies> |
| | | |
| | | <build> |
New file |
| | |
| | | package com.ruoyi.system.controller.miniapp; |
| | | |
| | | import com.ruoyi.common.core.domain.R; |
| | | import com.ruoyi.common.security.utils.SecurityUtils; |
| | | import com.ruoyi.system.domain.dto.AppAgreementDto; |
| | | import com.ruoyi.system.domain.vo.AppAgreementVo; |
| | | import com.ruoyi.system.service.config.AgreementService; |
| | | import io.swagger.annotations.Api; |
| | | import io.swagger.annotations.ApiOperation; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.web.bind.annotation.RequestBody; |
| | | import org.springframework.web.bind.annotation.RequestMapping; |
| | | import org.springframework.web.bind.annotation.RequestMethod; |
| | | import org.springframework.web.bind.annotation.RestController; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppConfigController |
| | | * @description: TODO |
| | | * @date 2023年04月19日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Api(value = "小程序配置相关接口", tags = "小程序配置相关接口", description = "小程序配置相关接口") |
| | | @RestController |
| | | @RequestMapping("/app/config") |
| | | public class AppConfigController { |
| | | |
| | | |
| | | @Autowired |
| | | private AgreementService agreementService; |
| | | |
| | | |
| | | |
| | | @RequestMapping(value = "/getAppAgreement", method = RequestMethod.POST) |
| | | @ApiOperation(value = "获取协议") |
| | | public R<AppAgreementVo> getAppAgreement(@RequestBody AppAgreementDto appAgreementDto){ |
| | | AppAgreementVo appAgreementVo = agreementService.getAppAgreement(appAgreementDto); |
| | | return R.ok(appAgreementVo); |
| | | } |
| | | |
| | | |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.system.controller.miniapp; |
| | | |
| | | import com.ruoyi.common.core.domain.R; |
| | | import com.ruoyi.common.security.utils.SecurityUtils; |
| | | import com.ruoyi.member.domain.dto.AppBaseBathDto; |
| | | import com.ruoyi.member.domain.dto.AppGoodsInfoGetDto; |
| | | import com.ruoyi.member.domain.dto.AppShoppingCartAddDto; |
| | | import com.ruoyi.member.domain.dto.AppShoppingCartChangeDto; |
| | | import com.ruoyi.member.domain.pojo.member.Member; |
| | | import com.ruoyi.member.domain.vo.AppGoodsInfoVo; |
| | | import com.ruoyi.member.service.member.MemberService; |
| | | import com.ruoyi.system.service.goods.GoodsService; |
| | | import com.ruoyi.system.service.order.ShoppingCartService; |
| | | import io.swagger.annotations.Api; |
| | | import io.swagger.annotations.ApiOperation; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.web.bind.annotation.RequestBody; |
| | | import org.springframework.web.bind.annotation.RequestMapping; |
| | | import org.springframework.web.bind.annotation.RequestMethod; |
| | | import org.springframework.web.bind.annotation.RestController; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppGoodsController |
| | | * @description: TODO |
| | | * @date 2023年04月20日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Api(value = "小程序商品相关接口", tags = "小程序商品相关接口", description = "小程序商品相关接口") |
| | | @RestController |
| | | @RequestMapping("/app/home") |
| | | public class AppGoodsController { |
| | | |
| | | @Autowired |
| | | private GoodsService goodsService; |
| | | |
| | | @Autowired |
| | | private MemberService memberService; |
| | | |
| | | @Autowired |
| | | private ShoppingCartService shoppingCartService; |
| | | |
| | | @RequestMapping(value = "/getGoodsInfo", method = RequestMethod.POST) |
| | | @ApiOperation(value = "获取商品详情") |
| | | public R<AppGoodsInfoVo> getGoodsInfo(@RequestBody AppGoodsInfoGetDto appGoodsInfoGetDto) { |
| | | Long userId = SecurityUtils.getUserId(); |
| | | if(userId!=null){ |
| | | Member member = memberService.getById(userId); |
| | | if(member!=null&&member.getRealtionShopId()!=null){ |
| | | appGoodsInfoGetDto.setShopId(member.getRealtionShopId()); |
| | | } |
| | | } |
| | | AppGoodsInfoVo appGoodsInfoVo = goodsService.getGoodsInfo(appGoodsInfoGetDto); |
| | | return R.ok(appGoodsInfoVo); |
| | | } |
| | | |
| | | @RequestMapping(value = "/addShoppingCart", method = RequestMethod.POST) |
| | | @ApiOperation(value = "添加购物车") |
| | | public R addShoppingCart(@RequestBody AppShoppingCartAddDto appShoppingCartAddDto) { |
| | | Long userId = SecurityUtils.getUserId(); |
| | | if(userId!=null){ |
| | | Member member = memberService.getById(userId); |
| | | appShoppingCartAddDto.setUserId(userId); |
| | | if(member!=null&&member.getRealtionShopId()!=null){ |
| | | appShoppingCartAddDto.setShopId(member.getRealtionShopId()); |
| | | } |
| | | } |
| | | shoppingCartService.addShoppingCart(appShoppingCartAddDto); |
| | | return R.ok(); |
| | | } |
| | | |
| | | @RequestMapping(value = "/changeShoppingCart", method = RequestMethod.POST) |
| | | @ApiOperation(value = "修改购物车") |
| | | public R changeShoppingCart(@RequestBody AppShoppingCartChangeDto appShoppingCartChangeDto) { |
| | | Long userId = SecurityUtils.getUserId(); |
| | | if(userId!=null){ |
| | | Member member = memberService.getById(userId); |
| | | appShoppingCartChangeDto.setUserId(userId); |
| | | if(member!=null&&member.getRealtionShopId()!=null){ |
| | | appShoppingCartChangeDto.setShopId(member.getRealtionShopId()); |
| | | } |
| | | } |
| | | shoppingCartService.changeShoppingCart(appShoppingCartChangeDto); |
| | | return R.ok(); |
| | | } |
| | | |
| | | @RequestMapping(value = "/deleteShoppingCart", method = RequestMethod.POST) |
| | | @ApiOperation(value = "删除购物车") |
| | | public R changeShoppingCart(@RequestBody AppBaseBathDto appBaseBathDto) { |
| | | Long userId = SecurityUtils.getUserId(); |
| | | if(userId!=null){ |
| | | Member member = memberService.getById(userId); |
| | | appBaseBathDto.setUserId(userId); |
| | | } |
| | | shoppingCartService.deleteShoppingCart(appBaseBathDto); |
| | | return R.ok(); |
| | | } |
| | | } |
New file |
| | |
| | | package com.ruoyi.system.controller.miniapp; |
| | | |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.ruoyi.common.core.domain.R; |
| | | import com.ruoyi.common.security.utils.SecurityUtils; |
| | | import com.ruoyi.member.domain.pojo.member.Member; |
| | | import com.ruoyi.member.service.member.MemberService; |
| | | import com.ruoyi.system.domain.dto.*; |
| | | import com.ruoyi.system.domain.vo.*; |
| | | import com.ruoyi.system.service.config.AdvertService; |
| | | import com.ruoyi.system.service.config.BannerService; |
| | | import com.ruoyi.system.service.config.QuickEntryService; |
| | | import com.ruoyi.system.service.goods.GoodsService; |
| | | import com.ruoyi.system.service.shop.ShopService; |
| | | import io.swagger.annotations.Api; |
| | | import io.swagger.annotations.ApiOperation; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.web.bind.annotation.RequestBody; |
| | | import org.springframework.web.bind.annotation.RequestMapping; |
| | | import org.springframework.web.bind.annotation.RequestMethod; |
| | | import org.springframework.web.bind.annotation.RestController; |
| | | |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName AppHomeController |
| | | * @description: TODO |
| | | * @date 2023年04月18日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Api(value = "小程序首页相关接口", tags = "小程序首页相关接口", description = "小程序首页相关接口") |
| | | @RestController |
| | | @RequestMapping("/app/home") |
| | | public class AppHomeController { |
| | | |
| | | |
| | | |
| | | @Autowired |
| | | private BannerService bannerService; |
| | | |
| | | @Autowired |
| | | private QuickEntryService quickEntryService; |
| | | |
| | | @Autowired |
| | | private AdvertService advertService; |
| | | |
| | | |
| | | @RequestMapping(value = "/getNearbyShop", method = RequestMethod.POST) |
| | | @ApiOperation(value = "获取最近商户") |
| | | public R<AppNearbyShopVo> getNearbyShop(@RequestBody AppNearbyShopDto appNearbyShopDto) { |
| | | Long userId = SecurityUtils.getUserId(); |
| | | appNearbyShopDto.setUserId(userId); |
| | | AppNearbyShopVo appNearbyShopVo = memberService.getNearbyShop(appNearbyShopDto); |
| | | return R.ok(appNearbyShopVo); |
| | | } |
| | | |
| | | @RequestMapping(value = "/getHomeBanner", method = RequestMethod.POST) |
| | | @ApiOperation(value = "获取首页banner") |
| | | public R<List<AppBannerVo>> getHomeBanner() { |
| | | List<AppBannerVo> appBannerVoList = bannerService.listHomeBannerVo(); |
| | | return R.ok(appBannerVoList); |
| | | } |
| | | |
| | | @RequestMapping(value = "/getQuickEntry", method = RequestMethod.POST) |
| | | @ApiOperation(value = "获取首页快速入口") |
| | | public R<List<AppQuickEntryVo>> getQuickEntry() { |
| | | List<AppQuickEntryVo> appQuickEntryVoList = quickEntryService.listQuickEntryVo(); |
| | | return R.ok(appQuickEntryVoList); |
| | | } |
| | | |
| | | @RequestMapping(value = "/getAdvert", method = RequestMethod.POST) |
| | | @ApiOperation(value = "获取首页广告") |
| | | public R<AppAdvertVo> getAdvert() { |
| | | AppAdvertVo appAdvertVo = advertService.getAdvertVo(); |
| | | return R.ok(appAdvertVo); |
| | | } |
| | | |
| | | @RequestMapping(value = "/pageRecommendGoods", method = RequestMethod.POST) |
| | | @ApiOperation(value = "推荐商品") |
| | | public R<Page<AppSimpleGoodsVo>> pageRecommendGoods(@RequestBody AppPageDto appPageDto) { |
| | | Long userId = SecurityUtils.getUserId(); |
| | | Long shopId = null; |
| | | if(userId!=null){ |
| | | Member member = memberService.getById(userId); |
| | | if(member!=null&&member.getRealtionShopId()!=null){ |
| | | shopId = member.getRealtionShopId(); |
| | | } |
| | | } |
| | | Page<AppSimpleGoodsVo> page = new Page<>(); |
| | | page.setSize(appPageDto.getPageSize()); |
| | | page.setCurrent(appPageDto.getPageNum()); |
| | | List<AppSimpleGoodsVo> appSimpleGoodsVoList = goodsService.pageRecommendGoods(page,shopId); |
| | | return R.ok(page.setRecords(appSimpleGoodsVoList)); |
| | | } |
| | | |
| | | @RequestMapping(value = "/pageShopGoods", method = RequestMethod.POST) |
| | | @ApiOperation(value = "商城商品") |
| | | public R<Page<AppSimpleGoodsVo>> pageShopGoods(@RequestBody AppShopGoodsPageDto appShopGoodsPageDto) { |
| | | Long userId = SecurityUtils.getUserId(); |
| | | if(userId!=null){ |
| | | Member member = memberService.getById(userId); |
| | | if(member!=null&&member.getRealtionShopId()!=null){ |
| | | appShopGoodsPageDto.setShopId(member.getRealtionShopId()); |
| | | } |
| | | } |
| | | Page<AppSimpleGoodsVo> page = new Page<>(); |
| | | page.setSize(appShopGoodsPageDto.getPageSize()); |
| | | page.setCurrent(appShopGoodsPageDto.getPageNum()); |
| | | List<AppSimpleGoodsVo> appSimpleGoodsVoList = goodsService.pageShopGoods(page,appShopGoodsPageDto); |
| | | return R.ok(page.setRecords(appSimpleGoodsVoList)); |
| | | } |
| | | |
| | | @RequestMapping(value = "/pageSearchGoods", method = RequestMethod.POST) |
| | | @ApiOperation(value = "搜索商品") |
| | | public R<Page<AppSimpleGoodsVo>> pageSearchGoods(@RequestBody AppSearchGoodsPageDto appSearchGoodsPageDto) { |
| | | Long userId = SecurityUtils.getUserId(); |
| | | if(userId!=null){ |
| | | Member member = memberService.getById(userId); |
| | | if(member!=null&&member.getRealtionShopId()!=null){ |
| | | appSearchGoodsPageDto.setShopId(member.getRealtionShopId()); |
| | | } |
| | | } |
| | | Page<AppSimpleGoodsVo> page = new Page<>(); |
| | | page.setSize(appSearchGoodsPageDto.getPageSize()); |
| | | page.setCurrent(appSearchGoodsPageDto.getPageNum()); |
| | | List<AppSimpleGoodsVo> appSimpleGoodsVoList = goodsService.pageSearchGoods(page,appSearchGoodsPageDto); |
| | | return R.ok(page.setRecords(appSimpleGoodsVoList)); |
| | | } |
| | | |
| | | @RequestMapping(value = "/pageSearchActivityGoods", method = RequestMethod.POST) |
| | | @ApiOperation(value = "搜索活动商品") |
| | | public R<Page<AppSimpleActivityGoodsVo>> pageSearchActivityGoods(@RequestBody AppSearchGoodsPageDto appSearchGoodsPageDto) { |
| | | Long userId = SecurityUtils.getUserId(); |
| | | if(userId!=null){ |
| | | Member member = memberService.getById(userId); |
| | | if(member!=null&&member.getRealtionShopId()!=null){ |
| | | appSearchGoodsPageDto.setShopId(member.getRealtionShopId()); |
| | | } |
| | | } |
| | | Page<AppSimpleActivityGoodsVo> page = new Page<>(); |
| | | page.setSize(appSearchGoodsPageDto.getPageSize()); |
| | | page.setCurrent(appSearchGoodsPageDto.getPageNum()); |
| | | List<AppSimpleActivityGoodsVo> appSimpleGoodsVoList = goodsService.pageSearchActivityGoods(page,appSearchGoodsPageDto); |
| | | return R.ok(page.setRecords(appSimpleGoodsVoList)); |
| | | } |
| | | |
| | | @RequestMapping(value = "/getShopInfo", method = RequestMethod.POST) |
| | | @ApiOperation(value = "获取商户详情") |
| | | public R<AppShopInfoVo> getShopInfo(@RequestBody AppBaseGetDto appBaseGetDto) { |
| | | AppShopInfoVo appShopInfoVo = shopService.getAppShopInfo(Long.valueOf(appBaseGetDto.getId())); |
| | | return R.ok(appShopInfoVo); |
| | | } |
| | | |
| | | |
| | | } |
| | |
| | | import com.ruoyi.common.log.enums.BusinessType; |
| | | import com.ruoyi.common.security.annotation.RequiresPermissions; |
| | | import com.ruoyi.common.security.utils.SecurityUtils; |
| | | import com.ruoyi.system.api.domain.SysDept; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysDept; |
| | | import com.ruoyi.system.service.sys.ISysDeptService; |
| | | |
| | | /** |
| | |
| | | import com.ruoyi.common.log.enums.BusinessType; |
| | | import com.ruoyi.common.security.annotation.RequiresPermissions; |
| | | import com.ruoyi.common.security.utils.SecurityUtils; |
| | | import com.ruoyi.system.api.domain.SysDictData; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysDictData; |
| | | import com.ruoyi.system.service.sys.ISysDictDataService; |
| | | import com.ruoyi.system.service.sys.ISysDictTypeService; |
| | | |
| | |
| | | import com.ruoyi.common.log.enums.BusinessType; |
| | | import com.ruoyi.common.security.annotation.RequiresPermissions; |
| | | import com.ruoyi.common.security.utils.SecurityUtils; |
| | | import com.ruoyi.system.api.domain.SysDictType; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysDictType; |
| | | import com.ruoyi.system.service.sys.ISysDictTypeService; |
| | | |
| | | /** |
| | |
| | | import com.ruoyi.common.redis.service.RedisService; |
| | | import com.ruoyi.common.security.annotation.InnerAuth; |
| | | import com.ruoyi.common.security.annotation.RequiresPermissions; |
| | | import com.ruoyi.system.api.domain.SysLogininfor; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysLogininfor; |
| | | import com.ruoyi.system.service.sys.ISysLogininforService; |
| | | |
| | | /** |
| | |
| | | import com.ruoyi.common.log.enums.BusinessType; |
| | | import com.ruoyi.common.security.annotation.InnerAuth; |
| | | import com.ruoyi.common.security.annotation.RequiresPermissions; |
| | | import com.ruoyi.system.api.domain.SysOperLog; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysOperLog; |
| | | import com.ruoyi.system.service.sys.ISysOperLogService; |
| | | |
| | | /** |
| | |
| | | import com.ruoyi.common.security.service.TokenService; |
| | | import com.ruoyi.common.security.utils.SecurityUtils; |
| | | import com.ruoyi.system.api.RemoteFileService; |
| | | import com.ruoyi.system.api.domain.SysFile; |
| | | import com.ruoyi.system.api.domain.SysUser; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysFile; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysUser; |
| | | import com.ruoyi.system.api.model.LoginUser; |
| | | import com.ruoyi.system.service.sys.ISysUserService; |
| | | |
| | |
| | | import com.ruoyi.common.log.enums.BusinessType; |
| | | import com.ruoyi.common.security.annotation.RequiresPermissions; |
| | | import com.ruoyi.common.security.utils.SecurityUtils; |
| | | import com.ruoyi.system.api.domain.SysDept; |
| | | import com.ruoyi.system.api.domain.SysRole; |
| | | import com.ruoyi.system.api.domain.SysUser; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysDept; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysRole; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysUser; |
| | | import com.ruoyi.system.domain.pojo.sys.SysUserRole; |
| | | import com.ruoyi.system.service.sys.ISysDeptService; |
| | | import com.ruoyi.system.service.sys.ISysRoleService; |
| | |
| | | import com.ruoyi.common.security.annotation.InnerAuth; |
| | | import com.ruoyi.common.security.annotation.RequiresPermissions; |
| | | import com.ruoyi.common.security.utils.SecurityUtils; |
| | | import com.ruoyi.system.api.domain.SysDept; |
| | | import com.ruoyi.system.api.domain.SysRole; |
| | | import com.ruoyi.system.api.domain.SysUser; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysDept; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysRole; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysUser; |
| | | import com.ruoyi.system.api.model.LoginUser; |
| | | import com.ruoyi.system.service.sys.ISysConfigService; |
| | | import com.ruoyi.system.service.sys.ISysDeptService; |
| | |
| | | package com.ruoyi.system.domain.pojo.coupon; |
| | | |
| | | import java.math.BigDecimal; |
| | | import java.util.Date; |
| | | import com.baomidou.mybatisplus.annotation.TableId; |
| | | import com.baomidou.mybatisplus.annotation.TableField; |
| | | import com.baomidou.mybatisplus.activerecord.Model; |
| | | import com.baomidou.mybatisplus.annotation.TableField; |
| | | import com.baomidou.mybatisplus.annotation.TableId; |
| | | import com.baomidou.mybatisplus.annotation.TableName; |
| | | import java.io.Serializable; |
| | | |
| | | import lombok.Data; |
| | | import lombok.EqualsAndHashCode; |
| | | import lombok.experimental.Accessors; |
| | | |
| | | import java.io.Serializable; |
| | | import java.math.BigDecimal; |
| | | import java.util.Date; |
| | | |
| | | /** |
| | | * <p> |
| | | * 优惠券 |
| | |
| | | package com.ruoyi.system.domain.pojo.coupon; |
| | | |
| | | import com.baomidou.mybatisplus.annotation.IdType; |
| | | import com.baomidou.mybatisplus.annotation.TableId; |
| | | import com.baomidou.mybatisplus.annotation.TableField; |
| | | import com.baomidou.mybatisplus.activerecord.Model; |
| | | import com.baomidou.mybatisplus.annotation.IdType; |
| | | import com.baomidou.mybatisplus.annotation.TableField; |
| | | import com.baomidou.mybatisplus.annotation.TableId; |
| | | import com.baomidou.mybatisplus.annotation.TableName; |
| | | import java.io.Serializable; |
| | | |
| | | import lombok.Data; |
| | | import lombok.EqualsAndHashCode; |
| | | import lombok.experimental.Accessors; |
| | | |
| | | import java.io.Serializable; |
| | | |
| | | /** |
| | | * <p> |
| | | * 优惠券商品关联 |
| | |
| | | package com.ruoyi.system.domain.pojo.coupon; |
| | | |
| | | import com.baomidou.mybatisplus.annotation.IdType; |
| | | import com.baomidou.mybatisplus.annotation.TableId; |
| | | import com.baomidou.mybatisplus.annotation.TableField; |
| | | import com.baomidou.mybatisplus.activerecord.Model; |
| | | import com.baomidou.mybatisplus.annotation.IdType; |
| | | import com.baomidou.mybatisplus.annotation.TableField; |
| | | import com.baomidou.mybatisplus.annotation.TableId; |
| | | import com.baomidou.mybatisplus.annotation.TableName; |
| | | import java.io.Serializable; |
| | | |
| | | import lombok.Data; |
| | | import lombok.EqualsAndHashCode; |
| | | import lombok.experimental.Accessors; |
| | | |
| | | import java.io.Serializable; |
| | | |
| | | /** |
| | | * <p> |
| | | * 优惠券用户关联 |
| | |
| | | package com.ruoyi.system.domain.pojo.coupon; |
| | | |
| | | import com.baomidou.mybatisplus.annotation.TableId; |
| | | import com.baomidou.mybatisplus.annotation.TableField; |
| | | import com.baomidou.mybatisplus.activerecord.Model; |
| | | import com.baomidou.mybatisplus.annotation.TableField; |
| | | import com.baomidou.mybatisplus.annotation.TableId; |
| | | import com.baomidou.mybatisplus.annotation.TableName; |
| | | import java.io.Serializable; |
| | | |
| | | import lombok.Data; |
| | | import lombok.EqualsAndHashCode; |
| | | import lombok.experimental.Accessors; |
| | | |
| | | import java.io.Serializable; |
| | | |
| | | /** |
| | | * <p> |
| | | * 优惠券统计 |
| | |
| | | import java.util.List; |
| | | import java.util.stream.Collectors; |
| | | import com.fasterxml.jackson.annotation.JsonInclude; |
| | | import com.ruoyi.system.api.domain.SysDept; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysDept; |
| | | import com.ruoyi.system.domain.pojo.sys.SysMenu; |
| | | |
| | | /** |
| | |
| | | |
| | | import java.util.List; |
| | | import org.apache.ibatis.annotations.Param; |
| | | import com.ruoyi.system.api.domain.SysDept; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysDept; |
| | | |
| | | /** |
| | | * 部门管理 数据层 |
| | |
| | | |
| | | import java.util.List; |
| | | import org.apache.ibatis.annotations.Param; |
| | | import com.ruoyi.system.api.domain.SysDictData; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysDictData; |
| | | |
| | | /** |
| | | * 字典表 数据层 |
| | |
| | | package com.ruoyi.system.mapper.sys; |
| | | |
| | | import java.util.List; |
| | | import com.ruoyi.system.api.domain.SysDictType; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysDictType; |
| | | |
| | | /** |
| | | * 字典表 数据层 |
| | |
| | | package com.ruoyi.system.mapper.sys; |
| | | |
| | | import java.util.List; |
| | | import com.ruoyi.system.api.domain.SysLogininfor; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysLogininfor; |
| | | |
| | | /** |
| | | * 系统访问日志情况信息 数据层 |
| | |
| | | package com.ruoyi.system.mapper.sys; |
| | | |
| | | import java.util.List; |
| | | import com.ruoyi.system.api.domain.SysOperLog; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysOperLog; |
| | | |
| | | /** |
| | | * 操作日志 数据层 |
| | |
| | | package com.ruoyi.system.mapper.sys; |
| | | |
| | | import java.util.List; |
| | | import com.ruoyi.system.api.domain.SysRole; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysRole; |
| | | |
| | | /** |
| | | * 角色表 数据层 |
| | |
| | | |
| | | import java.util.List; |
| | | import org.apache.ibatis.annotations.Param; |
| | | import com.ruoyi.system.api.domain.SysUser; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysUser; |
| | | |
| | | /** |
| | | * 用户表 数据层 |
| | |
| | | import com.ruoyi.common.core.utils.StringUtils; |
| | | import com.ruoyi.common.datascope.annotation.DataScope; |
| | | import com.ruoyi.common.security.utils.SecurityUtils; |
| | | import com.ruoyi.system.api.domain.SysDept; |
| | | import com.ruoyi.system.api.domain.SysRole; |
| | | import com.ruoyi.system.api.domain.SysUser; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysDept; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysRole; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysUser; |
| | | import com.ruoyi.system.domain.vo.TreeSelect; |
| | | import com.ruoyi.system.mapper.sys.SysDeptMapper; |
| | | import com.ruoyi.system.mapper.sys.SysRoleMapper; |
| | |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Service; |
| | | import com.ruoyi.common.security.utils.DictUtils; |
| | | import com.ruoyi.system.api.domain.SysDictData; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysDictData; |
| | | import com.ruoyi.system.mapper.sys.SysDictDataMapper; |
| | | import com.ruoyi.system.service.sys.ISysDictDataService; |
| | | |
| | |
| | | import com.ruoyi.common.core.exception.ServiceException; |
| | | import com.ruoyi.common.core.utils.StringUtils; |
| | | import com.ruoyi.common.security.utils.DictUtils; |
| | | import com.ruoyi.system.api.domain.SysDictData; |
| | | import com.ruoyi.system.api.domain.SysDictType; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysDictData; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysDictType; |
| | | import com.ruoyi.system.mapper.sys.SysDictDataMapper; |
| | | import com.ruoyi.system.mapper.sys.SysDictTypeMapper; |
| | | import com.ruoyi.system.service.sys.ISysDictTypeService; |
| | |
| | | import java.util.List; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Service; |
| | | import com.ruoyi.system.api.domain.SysLogininfor; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysLogininfor; |
| | | import com.ruoyi.system.mapper.sys.SysLogininforMapper; |
| | | import com.ruoyi.system.service.sys.ISysLogininforService; |
| | | |
| | |
| | | import com.ruoyi.common.core.constant.UserConstants; |
| | | import com.ruoyi.common.core.utils.StringUtils; |
| | | import com.ruoyi.common.security.utils.SecurityUtils; |
| | | import com.ruoyi.system.api.domain.SysRole; |
| | | import com.ruoyi.system.api.domain.SysUser; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysRole; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysUser; |
| | | import com.ruoyi.system.domain.pojo.sys.SysMenu; |
| | | import com.ruoyi.system.domain.vo.MetaVo; |
| | | import com.ruoyi.system.domain.vo.RouterVo; |
| | |
| | | import java.util.List; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Service; |
| | | import com.ruoyi.system.api.domain.SysOperLog; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysOperLog; |
| | | import com.ruoyi.system.mapper.sys.SysOperLogMapper; |
| | | import com.ruoyi.system.service.sys.ISysOperLogService; |
| | | |
| | |
| | | import java.util.Set; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Service; |
| | | import com.ruoyi.system.api.domain.SysRole; |
| | | import com.ruoyi.system.api.domain.SysUser; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysRole; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysUser; |
| | | import com.ruoyi.system.service.sys.ISysMenuService; |
| | | import com.ruoyi.system.service.sys.ISysPermissionService; |
| | | import com.ruoyi.system.service.sys.ISysRoleService; |
| | |
| | | import com.ruoyi.common.core.utils.StringUtils; |
| | | import com.ruoyi.common.datascope.annotation.DataScope; |
| | | import com.ruoyi.common.security.utils.SecurityUtils; |
| | | import com.ruoyi.system.api.domain.SysRole; |
| | | import com.ruoyi.system.api.domain.SysUser; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysRole; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysUser; |
| | | import com.ruoyi.system.domain.pojo.sys.SysRoleDept; |
| | | import com.ruoyi.system.domain.pojo.sys.SysRoleMenu; |
| | | import com.ruoyi.system.domain.pojo.sys.SysUserRole; |
| | |
| | | import com.ruoyi.common.core.utils.bean.BeanValidators; |
| | | import com.ruoyi.common.datascope.annotation.DataScope; |
| | | import com.ruoyi.common.security.utils.SecurityUtils; |
| | | import com.ruoyi.system.api.domain.SysRole; |
| | | import com.ruoyi.system.api.domain.SysUser; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysRole; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysUser; |
| | | import com.ruoyi.system.domain.pojo.sys.SysPost; |
| | | import com.ruoyi.system.domain.pojo.sys.SysUserPost; |
| | | import com.ruoyi.system.domain.pojo.sys.SysUserRole; |
| | |
| | | package com.ruoyi.system.service.sys; |
| | | |
| | | import java.util.List; |
| | | import com.ruoyi.system.api.domain.SysDept; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysDept; |
| | | import com.ruoyi.system.domain.vo.TreeSelect; |
| | | |
| | | /** |
| | |
| | | package com.ruoyi.system.service.sys; |
| | | |
| | | import java.util.List; |
| | | import com.ruoyi.system.api.domain.SysDictData; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysDictData; |
| | | |
| | | /** |
| | | * 字典 业务层 |
| | |
| | | package com.ruoyi.system.service.sys; |
| | | |
| | | import java.util.List; |
| | | import com.ruoyi.system.api.domain.SysDictData; |
| | | import com.ruoyi.system.api.domain.SysDictType; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysDictData; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysDictType; |
| | | |
| | | /** |
| | | * 字典 业务层 |
| | |
| | | package com.ruoyi.system.service.sys; |
| | | |
| | | import java.util.List; |
| | | import com.ruoyi.system.api.domain.SysLogininfor; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysLogininfor; |
| | | |
| | | /** |
| | | * 系统访问日志情况信息 服务层 |
| | |
| | | package com.ruoyi.system.service.sys; |
| | | |
| | | import java.util.List; |
| | | import com.ruoyi.system.api.domain.SysOperLog; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysOperLog; |
| | | |
| | | /** |
| | | * 操作日志 服务层 |
| | |
| | | |
| | | import java.util.Set; |
| | | |
| | | import com.ruoyi.system.api.domain.SysUser; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysUser; |
| | | |
| | | /** |
| | | * 权限信息 服务层 |
| | |
| | | |
| | | import java.util.List; |
| | | import java.util.Set; |
| | | import com.ruoyi.system.api.domain.SysRole; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysRole; |
| | | import com.ruoyi.system.domain.pojo.sys.SysUserRole; |
| | | |
| | | /** |
| | |
| | | package com.ruoyi.system.service.sys; |
| | | |
| | | import java.util.List; |
| | | import com.ruoyi.system.api.domain.SysUser; |
| | | import com.ruoyi.system.api.domain.poji.sys.SysUser; |
| | | |
| | | /** |
| | | * 用户 业务层 |