From f89b75723288bcda1666168450575af663eea07e Mon Sep 17 00:00:00 2001 From: sxu <602087911@qq.com> Date: Mon, 14 Apr 2025 17:00:21 +0800 Subject: [PATCH] =?UTF-8?q?=E5=9C=B0=E5=9D=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../user/controller/UserAddrController.java | 119 ++++++++++++++++ .../canteen/core/user/domain/UserAddr.java | 89 ++++++++++++ .../core/user/mapper/UserAddrMapper.java | 60 ++++++++ .../core/user/service/IUserAddrService.java | 60 ++++++++ .../service/impl/UserAddrServiceImpl.java | 98 +++++++++++++ .../resources/mapper/user/UserAddrMapper.xml | 130 ++++++++++++++++++ 6 files changed, 556 insertions(+) create mode 100644 bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/user/controller/UserAddrController.java create mode 100644 bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/user/domain/UserAddr.java create mode 100644 bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/user/mapper/UserAddrMapper.java create mode 100644 bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/user/service/IUserAddrService.java create mode 100644 bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/user/service/impl/UserAddrServiceImpl.java create mode 100644 bonus-modules/bonus-smart-canteen/src/main/resources/mapper/user/UserAddrMapper.xml diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/user/controller/UserAddrController.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/user/controller/UserAddrController.java new file mode 100644 index 0000000..790aeff --- /dev/null +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/user/controller/UserAddrController.java @@ -0,0 +1,119 @@ +package com.bonus.canteen.core.user.controller; + +import java.util.List; +import javax.servlet.http.HttpServletResponse; +import com.bonus.common.log.enums.OperaType; +import com.bonus.canteen.core.common.annotation.PreventRepeatSubmit; +import io.swagger.annotations.Api; +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.PostMapping; +import org.springframework.web.bind.annotation.PutMapping; +import org.springframework.web.bind.annotation.DeleteMapping; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; +import com.bonus.common.log.annotation.SysLog; +import com.bonus.common.security.annotation.RequiresPermissions; +import com.bonus.canteen.core.user.domain.UserAddr; +import com.bonus.canteen.core.user.service.IUserAddrService; +import com.bonus.common.core.web.controller.BaseController; +import com.bonus.common.core.web.domain.AjaxResult; +import com.bonus.common.core.utils.poi.ExcelUtil; +import com.bonus.common.core.web.page.TableDataInfo; + +/** + * 地址信息Controller + * + * @author xsheng + * @date 2025-04-14 + */ +@Api(tags = "地址信息接口") +@RestController +@RequestMapping("/user_addr") +public class UserAddrController extends BaseController { + @Autowired + private IUserAddrService userAddrService; + + /** + * 查询地址信息列表 + */ + @ApiOperation(value = "查询地址信息列表") + //@RequiresPermissions("user:addr:list") + @GetMapping("/list") + public TableDataInfo list(UserAddr userAddr) { + startPage(); + List list = userAddrService.selectUserAddrList(userAddr); + return getDataTable(list); + } + + /** + * 导出地址信息列表 + */ + @ApiOperation(value = "导出地址信息列表") + //@PreventRepeatSubmit + //@RequiresPermissions("user:addr:export") + @SysLog(title = "地址信息", businessType = OperaType.EXPORT, logType = 1,module = "仓储管理->导出地址信息") + @PostMapping("/export") + public void export(HttpServletResponse response, UserAddr userAddr) { + List list = userAddrService.selectUserAddrList(userAddr); + ExcelUtil util = new ExcelUtil(UserAddr.class); + util.exportExcel(response, list, "地址信息数据"); + } + + /** + * 获取地址信息详细信息 + */ + @ApiOperation(value = "获取地址信息详细信息") + //@RequiresPermissions("user:addr:query") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) { + return success(userAddrService.selectUserAddrById(id)); + } + + /** + * 新增地址信息 + */ + @ApiOperation(value = "新增地址信息") + //@PreventRepeatSubmit + //@RequiresPermissions("user:addr:add") + @SysLog(title = "地址信息", businessType = OperaType.INSERT, logType = 1,module = "仓储管理->新增地址信息") + @PostMapping + public AjaxResult add(@RequestBody UserAddr userAddr) { + try { + return toAjax(userAddrService.insertUserAddr(userAddr)); + } catch (Exception e) { + return error("系统错误, " + e.getMessage()); + } + } + + /** + * 修改地址信息 + */ + @ApiOperation(value = "修改地址信息") + //@PreventRepeatSubmit + //@RequiresPermissions("user:addr:edit") + @SysLog(title = "地址信息", businessType = OperaType.UPDATE, logType = 1,module = "仓储管理->修改地址信息") + @PostMapping("/edit") + public AjaxResult edit(@RequestBody UserAddr userAddr) { + try { + return toAjax(userAddrService.updateUserAddr(userAddr)); + } catch (Exception e) { + return error("系统错误, " + e.getMessage()); + } + } + + /** + * 删除地址信息 + */ + @ApiOperation(value = "删除地址信息") + //@PreventRepeatSubmit + //@RequiresPermissions("user:addr:remove") + @SysLog(title = "地址信息", businessType = OperaType.DELETE, logType = 1,module = "仓储管理->删除地址信息") + @PostMapping("/del/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) { + return toAjax(userAddrService.deleteUserAddrByIds(ids)); + } +} diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/user/domain/UserAddr.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/user/domain/UserAddr.java new file mode 100644 index 0000000..75fdfec --- /dev/null +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/user/domain/UserAddr.java @@ -0,0 +1,89 @@ +package com.bonus.canteen.core.user.domain; + +import com.bonus.common.core.annotation.Excel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.ToString; +import com.bonus.common.core.web.domain.BaseEntity; + +/** + * 地址信息对象 user_addr + * + * @author xsheng + * @date 2025-04-14 + */ + + +@Data +@ToString +public class UserAddr extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** 主键自增 */ + private Long id; + + /** 人员id */ + @Excel(name = "人员id") + @ApiModelProperty(value = "人员id") + private Long userId; + + /** 地址id */ + @Excel(name = "地址id") + @ApiModelProperty(value = "地址id") + private Long addrId; + + /** 联系人姓名 */ + @Excel(name = "联系人姓名") + @ApiModelProperty(value = "联系人姓名") + private String contactName; + + /** 手机号 */ + @Excel(name = "手机号") + @ApiModelProperty(value = "手机号") + private String mobile; + + /** 地区代码 国家统一地区代码,到县级别 */ + @Excel(name = "地区代码 国家统一地区代码,到县级别") + @ApiModelProperty(value = "地区代码 国家统一地区代码,到县级别") + private String areaCode; + + /** 详细地址 */ + @Excel(name = "详细地址") + @ApiModelProperty(value = "详细地址") + private String detailAddr; + + /** 地址全称 */ + @Excel(name = "地址全称") + @ApiModelProperty(value = "地址全称") + private String addrFullName; + + /** openid */ + @Excel(name = "openid") + @ApiModelProperty(value = "openid") + private String openid; + + /** 来源类型 1-钉钉 2-微信 3-小程序 */ + @Excel(name = "来源类型 1-钉钉 2-微信 3-小程序") + @ApiModelProperty(value = "来源类型 1-钉钉 2-微信 3-小程序") + private Long sourceType; + + /** 是否默认 1-是,2-否 */ + @Excel(name = "是否默认 1-是,2-否") + @ApiModelProperty(value = "是否默认 1-是,2-否") + private Long ifDefault; + + /** 乐观锁 */ + @Excel(name = "乐观锁") + @ApiModelProperty(value = "乐观锁") + private Long revision; + + /** 位置信息id */ + @Excel(name = "位置信息id") + @ApiModelProperty(value = "位置信息id") + private Long placeId; + + /** 删除标志(0代表存在 2代表删除) */ + private String delFlag; + + +} diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/user/mapper/UserAddrMapper.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/user/mapper/UserAddrMapper.java new file mode 100644 index 0000000..1fcd8ea --- /dev/null +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/user/mapper/UserAddrMapper.java @@ -0,0 +1,60 @@ +package com.bonus.canteen.core.user.mapper; + +import java.util.List; +import com.bonus.canteen.core.user.domain.UserAddr; + +/** + * 地址信息Mapper接口 + * + * @author xsheng + * @date 2025-04-14 + */ +public interface UserAddrMapper { + /** + * 查询地址信息 + * + * @param id 地址信息主键 + * @return 地址信息 + */ + public UserAddr selectUserAddrById(Long id); + + /** + * 查询地址信息列表 + * + * @param userAddr 地址信息 + * @return 地址信息集合 + */ + public List selectUserAddrList(UserAddr userAddr); + + /** + * 新增地址信息 + * + * @param userAddr 地址信息 + * @return 结果 + */ + public int insertUserAddr(UserAddr userAddr); + + /** + * 修改地址信息 + * + * @param userAddr 地址信息 + * @return 结果 + */ + public int updateUserAddr(UserAddr userAddr); + + /** + * 删除地址信息 + * + * @param id 地址信息主键 + * @return 结果 + */ + public int deleteUserAddrById(Long id); + + /** + * 批量删除地址信息 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteUserAddrByIds(Long[] ids); +} diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/user/service/IUserAddrService.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/user/service/IUserAddrService.java new file mode 100644 index 0000000..95874a2 --- /dev/null +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/user/service/IUserAddrService.java @@ -0,0 +1,60 @@ +package com.bonus.canteen.core.user.service; + +import java.util.List; +import com.bonus.canteen.core.user.domain.UserAddr; + +/** + * 地址信息Service接口 + * + * @author xsheng + * @date 2025-04-14 + */ +public interface IUserAddrService { + /** + * 查询地址信息 + * + * @param id 地址信息主键 + * @return 地址信息 + */ + public UserAddr selectUserAddrById(Long id); + + /** + * 查询地址信息列表 + * + * @param userAddr 地址信息 + * @return 地址信息集合 + */ + public List selectUserAddrList(UserAddr userAddr); + + /** + * 新增地址信息 + * + * @param userAddr 地址信息 + * @return 结果 + */ + public int insertUserAddr(UserAddr userAddr); + + /** + * 修改地址信息 + * + * @param userAddr 地址信息 + * @return 结果 + */ + public int updateUserAddr(UserAddr userAddr); + + /** + * 批量删除地址信息 + * + * @param ids 需要删除的地址信息主键集合 + * @return 结果 + */ + public int deleteUserAddrByIds(Long[] ids); + + /** + * 删除地址信息信息 + * + * @param id 地址信息主键 + * @return 结果 + */ + public int deleteUserAddrById(Long id); +} diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/user/service/impl/UserAddrServiceImpl.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/user/service/impl/UserAddrServiceImpl.java new file mode 100644 index 0000000..e001299 --- /dev/null +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/user/service/impl/UserAddrServiceImpl.java @@ -0,0 +1,98 @@ +package com.bonus.canteen.core.user.service.impl; + +import java.util.List; +import com.bonus.common.core.exception.ServiceException; +import com.bonus.common.core.utils.DateUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import com.bonus.canteen.core.user.mapper.UserAddrMapper; +import com.bonus.canteen.core.user.domain.UserAddr; +import com.bonus.canteen.core.user.service.IUserAddrService; + +/** + * 地址信息Service业务层处理 + * + * @author xsheng + * @date 2025-04-14 + */ +@Service +public class UserAddrServiceImpl implements IUserAddrService { + @Autowired + private UserAddrMapper userAddrMapper; + + /** + * 查询地址信息 + * + * @param id 地址信息主键 + * @return 地址信息 + */ + @Override + public UserAddr selectUserAddrById(Long id) { + return userAddrMapper.selectUserAddrById(id); + } + + /** + * 查询地址信息列表 + * + * @param userAddr 地址信息 + * @return 地址信息 + */ + @Override + public List selectUserAddrList(UserAddr userAddr) { + return userAddrMapper.selectUserAddrList(userAddr); + } + + /** + * 新增地址信息 + * + * @param userAddr 地址信息 + * @return 结果 + */ + @Override + public int insertUserAddr(UserAddr userAddr) { + userAddr.setCreateTime(DateUtils.getNowDate()); + try { + return userAddrMapper.insertUserAddr(userAddr); + } catch (Exception e) { + throw new ServiceException("错误信息描述"); + } + } + + /** + * 修改地址信息 + * + * @param userAddr 地址信息 + * @return 结果 + */ + @Override + public int updateUserAddr(UserAddr userAddr) { + userAddr.setUpdateTime(DateUtils.getNowDate()); + try { + return userAddrMapper.updateUserAddr(userAddr); + } catch (Exception e) { + throw new ServiceException("错误信息描述"); + } + } + + /** + * 批量删除地址信息 + * + * @param ids 需要删除的地址信息主键 + * @return 结果 + */ + @Override + public int deleteUserAddrByIds(Long[] ids) { + return userAddrMapper.deleteUserAddrByIds(ids); + } + + /** + * 删除地址信息信息 + * + * @param id 地址信息主键 + * @return 结果 + */ + @Override + public int deleteUserAddrById(Long id) { + return userAddrMapper.deleteUserAddrById(id); + } +} diff --git a/bonus-modules/bonus-smart-canteen/src/main/resources/mapper/user/UserAddrMapper.xml b/bonus-modules/bonus-smart-canteen/src/main/resources/mapper/user/UserAddrMapper.xml new file mode 100644 index 0000000..6685d2b --- /dev/null +++ b/bonus-modules/bonus-smart-canteen/src/main/resources/mapper/user/UserAddrMapper.xml @@ -0,0 +1,130 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + select id, user_id, addr_id, contact_name, mobile, area_code, detail_addr, addr_full_name, openid, source_type, if_default, revision, place_id, create_by, create_time, update_by, update_time, del_flag from user_addr + + + + + + + + insert into user_addr + + user_id, + addr_id, + contact_name, + mobile, + area_code, + detail_addr, + addr_full_name, + openid, + source_type, + if_default, + revision, + place_id, + create_by, + create_time, + update_by, + update_time, + del_flag, + + + #{userId}, + #{addrId}, + #{contactName}, + #{mobile}, + #{areaCode}, + #{detailAddr}, + #{addrFullName}, + #{openid}, + #{sourceType}, + #{ifDefault}, + #{revision}, + #{placeId}, + #{createBy}, + #{createTime}, + #{updateBy}, + #{updateTime}, + #{delFlag}, + + + + + update user_addr + + user_id = #{userId}, + addr_id = #{addrId}, + contact_name = #{contactName}, + mobile = #{mobile}, + area_code = #{areaCode}, + detail_addr = #{detailAddr}, + addr_full_name = #{addrFullName}, + openid = #{openid}, + source_type = #{sourceType}, + if_default = #{ifDefault}, + revision = #{revision}, + place_id = #{placeId}, + create_by = #{createBy}, + create_time = #{createTime}, + update_by = #{updateBy}, + update_time = #{updateTime}, + del_flag = #{delFlag}, + + where id = #{id} + + + + delete from user_addr where id = #{id} + + + + delete from user_addr where id in + + #{id} + + + \ No newline at end of file