客户管理

This commit is contained in:
luolm 2025-01-27 16:05:53 +08:00
parent a8ba1912cc
commit 1c90c9f62d
34 changed files with 893 additions and 30 deletions

View File

@ -3,4 +3,6 @@ package com.nflg.mobilebroken.admin.constant;
public class Constant {
public static final String DeviceTypeCodePrefix="DEVT";
public static final String CustomerCodePrefix="CUSM";
}

View File

@ -0,0 +1,179 @@
package com.nflg.mobilebroken.admin.controller;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.convert.Convert;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.nflg.mobilebroken.admin.constant.Constant;
import com.nflg.mobilebroken.admin.pojo.dto.BaseAreaEditDTO;
import com.nflg.mobilebroken.admin.pojo.dto.CustomerDTO;
import com.nflg.mobilebroken.admin.pojo.query.CustomerQuery;
import com.nflg.mobilebroken.admin.pojo.query.DepartmentQuery;
import com.nflg.mobilebroken.admin.pojo.vo.CustomerExcelVO;
import com.nflg.mobilebroken.admin.pojo.vo.DeviceExcelVO;
import com.nflg.mobilebroken.common.constant.STATE;
import com.nflg.mobilebroken.common.exception.NflgException;
import com.nflg.mobilebroken.common.pojo.ApiResult;
import com.nflg.mobilebroken.common.pojo.PageData;
import com.nflg.mobilebroken.common.pojo.vo.TBaseAreaVO;
import com.nflg.mobilebroken.common.util.EecExcelUtil;
import com.nflg.mobilebroken.common.util.TokenUtil;
import com.nflg.mobilebroken.common.util.UniqueSequenceGenerator;
import com.nflg.mobilebroken.common.util.VUtils;
import com.nflg.mobilebroken.repository.entity.Device;
import com.nflg.mobilebroken.repository.entity.TBaseCustomer;
import com.nflg.mobilebroken.repository.service.ITBaseAreaService;
import com.nflg.mobilebroken.repository.service.ITBaseCustomerService;
import com.nflg.mobilebroken.starter.annotation.MethodInfoMark;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import org.ttzero.excel.entity.ListSheet;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
import javax.validation.Valid;
import java.io.IOException;
import java.time.LocalDateTime;
import java.util.List;
import java.util.Objects;
/**
* 客户管理
*/
@RestController
@RequestMapping("/customer")
public class CustomerController {
@Resource
ITBaseCustomerService baseCustomerService;
@PostMapping("getList")
@MethodInfoMark(value = "获取客户列表" ,menuName = "客户管理")
public ApiResult<PageData<TBaseCustomer>> getList(@RequestBody CustomerQuery query){
Page<TBaseCustomer> result = baseCustomerService.getList(new Page<>(query.getPage(),query.getPageSize()), query);
return ApiResult.success(result.getRecords(),query,result.getTotal());
}
/**
* 新增
* @param customerDTO
* @return
*/
@PostMapping("add")
@MethodInfoMark(value = "新增" ,menuName = "客户管理")
public ApiResult<Boolean> add(@Valid @RequestBody CustomerDTO customerDTO) {
//检查公司名称是否已存在
List<TBaseCustomer> existCompany = baseCustomerService.lambdaQuery().eq(TBaseCustomer::getAgencyCompanyName, customerDTO.getAgencyCompanyName()).list();
VUtils.trueThrow(CollUtil.isNotEmpty(existCompany)).throwMessage(STATE.PageError,customerDTO.getAgencyCompanyName()+"公司名称已存在");
TBaseCustomer ent = Convert.convert(TBaseCustomer.class, customerDTO);
ent.setId(null);
ent.setAgencyCompanyCode(new UniqueSequenceGenerator().generateCode(Constant.CustomerCodePrefix));
ent.setDataCreateUserNo(TokenUtil.getUserNo());
ent.setDataCreateUserName(TokenUtil.getUserName());
ent.setDataCreateTime(LocalDateTime.now());
ent.setDataModifyUserNo(TokenUtil.getUserNo());
ent.setDataModifyUserName(TokenUtil.getUserName());
ent.setDataModifyTime(LocalDateTime.now());
baseCustomerService.save(ent);
return ApiResult.success(true);
}
/**
* 编辑
* @param customerDTO
* @return
*/
@PostMapping("updateCompany")
@MethodInfoMark(value = "编辑" ,menuName = "客户管理")
public ApiResult<Boolean> updateCompany(@Valid @RequestBody CustomerDTO customerDTO) {
//检查公司名称是否已存在
TBaseCustomer oldEnt = baseCustomerService.getById(customerDTO.getId());
VUtils.trueThrow(Objects.isNull(oldEnt)).throwMessage(STATE.PageError,customerDTO.getAgencyCompanyName()+"公司不存在");
oldEnt.setDataModifyUserNo(TokenUtil.getUserNo());
oldEnt.setDataModifyUserName(TokenUtil.getUserName());
oldEnt.setDataModifyTime(LocalDateTime.now());
baseCustomerService.updateById(oldEnt);
return ApiResult.success(true);
}
/**
* 删除
* @param ids
* @return
*/
@PostMapping("del")
@MethodInfoMark(value = "删除" ,menuName = "客户管理")
public ApiResult<Boolean> del(@RequestBody List<Long> ids){
VUtils.trueThrow(CollUtil.isEmpty(ids)).throwMessage(STATE.ParamErr,"请选择要删除的行");
baseCustomerService.delByIds(ids, TokenUtil.getUserNo(),TokenUtil.getUserName());
return ApiResult.success(true);
}
/**
* 导入模板下载
* @param response
* @throws IOException
*/
@GetMapping("downTemplate")
public void downTemplate(HttpServletResponse response) throws IOException {
EecExcelUtil.setResponseExcelHeader(response,"客户导入模板");
final ListSheet<CustomerExcelVO> listSheet = new ListSheet<CustomerExcelVO>() {
@Override
protected List<CustomerExcelVO> more() {
return null;
}
};
EecExcelUtil.eecExcel("客户导入模板", listSheet, response);
}
/**
* 导出
* @param response
* @throws IOException
*/
@GetMapping("exportData")
public void exportData(HttpServletResponse response) throws IOException {
EecExcelUtil.setResponseExcelHeader(response,"客户列表");
final ListSheet<CustomerExcelVO> listSheet = new ListSheet<CustomerExcelVO>() {
int i=0;
@Override
protected List<CustomerExcelVO> more() {
List<TBaseCustomer> list = baseCustomerService.list();
i++;
return i>1?null: Convert.toList(CustomerExcelVO.class, list);
}
};
EecExcelUtil.eecExcel("客户列表", listSheet, response);
}
/**
* 导入
* @param file
* @return
*/
@PostMapping("importData")
@MethodInfoMark(value = "导入客户",menuName = "客户列表")
public ApiResult<Boolean> importData( @RequestParam(value = "file") MultipartFile file){
// try {
// List<DeviceExcelVO> data = EecExcelUtil.getExcelContext(file.getInputStream(), DeviceExcelVO.class);
// VUtils.trueThrowBusinessError(CollUtil.isEmpty(data)).throwMessage("导入文件内容为空");
// adminDeviceService.importData(data);
// } catch (IOException e) {
// throw new NflgException(STATE.BusinessError, "导出失败:"+e.getMessage());
// }
return ApiResult.success(true);
}
}

View File

@ -128,10 +128,13 @@ public class DeviceController {
EecExcelUtil.setResponseExcelHeader(response,"设备列表");
final ListSheet<DeviceExcelVO> listSheet = new ListSheet<DeviceExcelVO>() {
int i=0;
@Override
protected List<DeviceExcelVO> more() {
List<Device> list = deviceService.list();
return Convert.toList(DeviceExcelVO.class, list);
i++;
return i>1?null : Convert.toList(DeviceExcelVO.class, list);
}
};
EecExcelUtil.eecExcel("设备列表", listSheet, response);

View File

@ -0,0 +1,74 @@
package com.nflg.mobilebroken.admin.pojo.dto;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
/**
* 客户管理-参数
*/
@Data
public class CustomerDTO {
/**
* id
*/
private Long id;
/**
* 代理公司名称
*/
@NotBlank(message = "代理公司名称不能为空")
private String agencyCompanyName;
/**
* 代理负责人
*/
@NotBlank(message = "代理负责人不能为空")
private String agencyManager;
/**
* sap客户号
*/
@NotBlank(message = "sap客户号不能为空")
private String sapCustomerNo;
/**
* 销售授权信息
*/
@NotBlank(message = "销售授权信息不能为空")
private String salesAuthorizationInfo;
/**
* 区域编码
*/
@NotBlank(message = "区域编码不能为空")
private String areaCode;
/**
* 区域
*/
@NotBlank(message = "区域名称不能为空")
private String areaName;
/**
* 服务主管
*/
@NotBlank(message = "服务主管不能为空")
private String serviceSupervisor;
/**
* 销售主管
*/
@NotBlank(message = "销售主管不能为空")
private String salesSupervisor;
/**
* 状态 0-禁用 1-启用
*/
@NotNull(message = "状态不能为空")
private Integer enableState;
}

View File

@ -0,0 +1,18 @@
package com.nflg.mobilebroken.admin.pojo.query;
import com.nflg.mobilebroken.common.pojo.query.PageBaseQuery;
import lombok.Data;
@Data
public class CustomerQuery extends PageBaseQuery {
/**
* 代理公司名
*/
private String agencyCompanyName;
/**
* 状态 0-禁用 1-启用
*/
private Integer enableState;
}

View File

@ -0,0 +1,78 @@
package com.nflg.mobilebroken.admin.pojo.vo;
import lombok.Data;
import org.ttzero.excel.annotation.ExcelColumn;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
/**
* 客户管理导出模板
*/
@Data
public class CustomerExcelVO {
@ExcelColumn( "代理公司名称")
private String agencyCompanyName;
/**
* 代理负责人
*/
@ExcelColumn( "代理负责人")
private String agencyManager;
/**
* sap客户号
*/
@ExcelColumn("sap客户号")
private String sapCustomerNo;
/**
* 销售授权信息
*/
@ExcelColumn("销售授权信息")
private String salesAuthorizationInfo;
/**
* 区域编码
*/
@ExcelColumn("区域编码")
private String areaCode;
/**
* 区域
*/
@ExcelColumn("区域名称")
private String areaName;
/**
* 服务主管
*/
@ExcelColumn("服务主管")
private String serviceSupervisor;
/**
* 销售主管
*/
@ExcelColumn("销售主管")
private String salesSupervisor;
/**
* 状态 0-禁用 1-启用
*/
private Integer enableState;
@ExcelColumn("状态")
private String enableStateName;
public String getEnableStateName() {
return enableState==0?"禁用":"启用";
}
@ExcelColumn("创建人")
private String dataCreateUserName;
@ExcelColumn(value = "创建人" ,format = "yyyy-MM-dd")
private String dataCreateTime;
}

View File

@ -3,15 +3,14 @@ package com.nflg.mobilebroken.repository.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;
import java.io.Serializable;
/**
* <p>
*
*
* </p>
*
* @author 代码生成器生成

View File

@ -3,16 +3,15 @@ package com.nflg.mobilebroken.repository.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.time.LocalDateTime;
import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.time.LocalDateTime;
/**
* <p>
*
*
* </p>
*
* @author 代码生成器生成

View File

@ -3,16 +3,15 @@ package com.nflg.mobilebroken.repository.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.time.LocalDateTime;
import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.time.LocalDateTime;
/**
* <p>
*
*
* </p>
*
* @author 代码生成器生成

View File

@ -0,0 +1,39 @@
package com.nflg.mobilebroken.repository.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;
/**
* <p>
*
* </p>
*
* @author 代码生成器生成
* @since 2025
*/
@Getter
@Setter
@Accessors(chain = true)
@TableName("admin_role_button_map")
public class AdminRoleButtonMap implements Serializable {
private static final long serialVersionUID = 1L;
@TableId(value = "id", type = IdType.AUTO)
private Integer id;
/**
* 角色id
*/
private Integer roleId;
/**
* 按钮id
*/
private Integer buttonId;
}

View File

@ -0,0 +1,39 @@
package com.nflg.mobilebroken.repository.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;
/**
* <p>
*
* </p>
*
* @author 代码生成器生成
* @since 2025
*/
@Getter
@Setter
@Accessors(chain = true)
@TableName("admin_role_menu_map")
public class AdminRoleMenuMap implements Serializable {
private static final long serialVersionUID = 1L;
@TableId(value = "id", type = IdType.AUTO)
private Integer id;
/**
* 角色id
*/
private Integer roleId;
/**
* 菜单id
*/
private Integer menuId;
}

View File

@ -3,13 +3,12 @@ package com.nflg.mobilebroken.repository.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.time.LocalDateTime;
import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.time.LocalDateTime;
/**
* <p>
* 后台-用户
@ -55,9 +54,9 @@ public class AdminUser implements Serializable {
private Integer departmentId;
/**
* 职位code
* 职位id
*/
private String titleCode;
private Integer titleId;
/**
* 邮箱地址
@ -69,6 +68,11 @@ public class AdminUser implements Serializable {
*/
private String phone;
/**
* 头像
*/
private String avatar;
/**
* 微信openid
*/

View File

@ -0,0 +1,39 @@
package com.nflg.mobilebroken.repository.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;
/**
* <p>
*
* </p>
*
* @author 代码生成器生成
* @since 2025
*/
@Getter
@Setter
@Accessors(chain = true)
@TableName("admin_user_role_map")
public class AdminUserRoleMap implements Serializable {
private static final long serialVersionUID = 1L;
@TableId(value = "id", type = IdType.AUTO)
private Integer id;
/**
* 角色id
*/
private Integer roleId;
/**
* 用户id
*/
private Integer userId;
}

View File

@ -3,16 +3,15 @@ package com.nflg.mobilebroken.repository.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.time.LocalDateTime;
import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.time.LocalDateTime;
/**
* <p>
*
*
* </p>
*
* @author 代码生成器生成

View File

@ -2,12 +2,11 @@ package com.nflg.mobilebroken.repository.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import java.io.Serializable;
import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;
import java.io.Serializable;
/**
* <p>
* 字典

View File

@ -0,0 +1,118 @@
package com.nflg.mobilebroken.repository.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.time.LocalDateTime;
import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;
/**
* <p>
* 客户管理
* </p>
*
* @author 代码生成器生成
* @since 2025
*/
@Getter
@Setter
@Accessors(chain = true)
@TableName("t_base_customer")
public class TBaseCustomer implements Serializable {
private static final long serialVersionUID = 1L;
/**
* id
*/
@TableId(value = "id", type = IdType.AUTO)
private Long id;
/**
* 代理公司编码
*/
private String agencyCompanyCode;
/**
* 代理公司名称
*/
private String agencyCompanyName;
/**
* 代理负责人
*/
private String agencyManager;
/**
* sap客户号
*/
private String sapCustomerNo;
/**
* 销售授权信息
*/
private String salesAuthorizationInfo;
/**
* 区域编码
*/
private String areaCode;
/**
* 区域
*/
private String areaName;
/**
* 服务主管
*/
private String serviceSupervisor;
/**
* 销售主管
*/
private String salesSupervisor;
/**
* 状态 0-禁用 1-启用
*/
private Integer enableState;
/**
* 创建人账号
*/
private String dataCreateUserNo;
/**
* 创建人姓名
*/
private String dataCreateUserName;
/**
* 创建时间
*/
private LocalDateTime dataCreateTime;
/**
* 修改人账号
*/
private String dataModifyUserNo;
/**
* 修改人姓名
*/
private String dataModifyUserName;
/**
* 修改时间
*/
private LocalDateTime dataModifyTime;
/**
* 是否删除 0- 1-
*/
private Integer delIs;
}

View File

@ -3,16 +3,15 @@ package com.nflg.mobilebroken.repository.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.time.LocalDateTime;
import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.time.LocalDateTime;
/**
* <p>
*
*
* </p>
*
* @author 代码生成器生成

View File

@ -1,15 +1,14 @@
package com.nflg.mobilebroken.repository.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;
import java.io.Serializable;
/**
* <p>
*
*
* </p>
*
* @author 代码生成器生成

View File

@ -0,0 +1,16 @@
package com.nflg.mobilebroken.repository.mapper;
import com.nflg.mobilebroken.repository.entity.AdminRoleButtonMap;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* <p>
* Mapper 接口
* </p>
*
* @author 代码生成器生成
* @since 2025
*/
public interface AdminRoleButtonMapMapper extends BaseMapper<AdminRoleButtonMap> {
}

View File

@ -0,0 +1,16 @@
package com.nflg.mobilebroken.repository.mapper;
import com.nflg.mobilebroken.repository.entity.AdminRoleMenuMap;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* <p>
* Mapper 接口
* </p>
*
* @author 代码生成器生成
* @since 2025
*/
public interface AdminRoleMenuMapMapper extends BaseMapper<AdminRoleMenuMap> {
}

View File

@ -0,0 +1,16 @@
package com.nflg.mobilebroken.repository.mapper;
import com.nflg.mobilebroken.repository.entity.AdminUserRoleMap;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* <p>
* Mapper 接口
* </p>
*
* @author 代码生成器生成
* @since 2025
*/
public interface AdminUserRoleMapMapper extends BaseMapper<AdminUserRoleMap> {
}

View File

@ -0,0 +1,24 @@
package com.nflg.mobilebroken.repository.mapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.nflg.mobilebroken.common.pojo.query.PageBaseQuery;
import com.nflg.mobilebroken.repository.entity.TBaseCustomer;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* <p>
* 客户管理 Mapper 接口
* </p>
*
* @author 代码生成器生成
* @since 2025
*/
public interface TBaseCustomerMapper extends BaseMapper<TBaseCustomer> {
Page<TBaseCustomer> getList(@Param("page")Page<PageBaseQuery> page,@Param("query") PageBaseQuery query);
void delByIds(@Param("ids") List<Long> ids, @Param("userNo")String userNo, @Param("userName")String userName);
}

View File

@ -0,0 +1,16 @@
package com.nflg.mobilebroken.repository.service;
import com.nflg.mobilebroken.repository.entity.AdminRoleButtonMap;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* <p>
* 服务类
* </p>
*
* @author 代码生成器生成
* @since 2025
*/
public interface IAdminRoleButtonMapService extends IService<AdminRoleButtonMap> {
}

View File

@ -0,0 +1,16 @@
package com.nflg.mobilebroken.repository.service;
import com.nflg.mobilebroken.repository.entity.AdminRoleMenuMap;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* <p>
* 服务类
* </p>
*
* @author 代码生成器生成
* @since 2025
*/
public interface IAdminRoleMenuMapService extends IService<AdminRoleMenuMap> {
}

View File

@ -0,0 +1,16 @@
package com.nflg.mobilebroken.repository.service;
import com.nflg.mobilebroken.repository.entity.AdminUserRoleMap;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* <p>
* 服务类
* </p>
*
* @author 代码生成器生成
* @since 2025
*/
public interface IAdminUserRoleMapService extends IService<AdminUserRoleMap> {
}

View File

@ -0,0 +1,25 @@
package com.nflg.mobilebroken.repository.service;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.nflg.mobilebroken.common.pojo.query.PageBaseQuery;
import com.nflg.mobilebroken.repository.entity.TBaseCustomer;
import com.baomidou.mybatisplus.extension.service.IService;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* <p>
* 客户管理 服务类
* </p>
*
* @author 代码生成器生成
* @since 2025
*/
public interface ITBaseCustomerService extends IService<TBaseCustomer> {
Page<TBaseCustomer> getList(@Param("page")Page<PageBaseQuery> page, @Param("query") PageBaseQuery query);
void delByIds(@Param("ids") List<Long> ids ,@Param("userNo")String userNo , @Param("userName") String userName);
}

View File

@ -0,0 +1,20 @@
package com.nflg.mobilebroken.repository.service.impl;
import com.nflg.mobilebroken.repository.entity.AdminRoleButtonMap;
import com.nflg.mobilebroken.repository.mapper.AdminRoleButtonMapMapper;
import com.nflg.mobilebroken.repository.service.IAdminRoleButtonMapService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
/**
* <p>
* 服务实现类
* </p>
*
* @author 代码生成器生成
* @since 2025
*/
@Service
public class AdminRoleButtonMapServiceImpl extends ServiceImpl<AdminRoleButtonMapMapper, AdminRoleButtonMap> implements IAdminRoleButtonMapService {
}

View File

@ -0,0 +1,20 @@
package com.nflg.mobilebroken.repository.service.impl;
import com.nflg.mobilebroken.repository.entity.AdminRoleMenuMap;
import com.nflg.mobilebroken.repository.mapper.AdminRoleMenuMapMapper;
import com.nflg.mobilebroken.repository.service.IAdminRoleMenuMapService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
/**
* <p>
* 服务实现类
* </p>
*
* @author 代码生成器生成
* @since 2025
*/
@Service
public class AdminRoleMenuMapServiceImpl extends ServiceImpl<AdminRoleMenuMapMapper, AdminRoleMenuMap> implements IAdminRoleMenuMapService {
}

View File

@ -0,0 +1,20 @@
package com.nflg.mobilebroken.repository.service.impl;
import com.nflg.mobilebroken.repository.entity.AdminUserRoleMap;
import com.nflg.mobilebroken.repository.mapper.AdminUserRoleMapMapper;
import com.nflg.mobilebroken.repository.service.IAdminUserRoleMapService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
/**
* <p>
* 服务实现类
* </p>
*
* @author 代码生成器生成
* @since 2025
*/
@Service
public class AdminUserRoleMapServiceImpl extends ServiceImpl<AdminUserRoleMapMapper, AdminUserRoleMap> implements IAdminUserRoleMapService {
}

View File

@ -0,0 +1,32 @@
package com.nflg.mobilebroken.repository.service.impl;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.nflg.mobilebroken.common.pojo.query.PageBaseQuery;
import com.nflg.mobilebroken.repository.entity.TBaseCustomer;
import com.nflg.mobilebroken.repository.mapper.TBaseCustomerMapper;
import com.nflg.mobilebroken.repository.service.ITBaseCustomerService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* <p>
* 客户管理 服务实现类
* </p>
*
* @author 代码生成器生成
* @since 2025
*/
@Service
public class TBaseCustomerServiceImpl extends ServiceImpl<TBaseCustomerMapper, TBaseCustomer> implements ITBaseCustomerService {
public Page<TBaseCustomer> getList(@Param("page")Page<PageBaseQuery> page, @Param("query") PageBaseQuery query){
return this.getBaseMapper().getList(page, query);
}
public void delByIds(@Param("ids") List<Long> ids ,@Param("userNo")String userNo , @Param("userName") String userName){
this.getBaseMapper().delByIds(ids,userNo,userName);
}
}

View File

@ -0,0 +1,5 @@
<?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.nflg.mobilebroken.repository.mapper.AdminRoleButtonMapMapper">
</mapper>

View File

@ -0,0 +1,5 @@
<?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.nflg.mobilebroken.repository.mapper.AdminRoleMenuMapMapper">
</mapper>

View File

@ -0,0 +1,5 @@
<?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.nflg.mobilebroken.repository.mapper.AdminUserRoleMapMapper">
</mapper>

View File

@ -0,0 +1,25 @@
<?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.nflg.mobilebroken.repository.mapper.TBaseCustomerMapper">
<sql id="whr">
<if test="query.agencyCompanyName!=null and query.agencyCompanyName!=''">
and agency_company_name like concat('%', #{query.agencyCompanyName},'%')
</if>
<if test="query.enableState!=null">
and enable_state=#{query.enableState}
</if>
</sql>
<select id="getList" resultType="com.nflg.mobilebroken.repository.entity.TBaseCustomer">
select * from t_base_customer where del_is=0
<include refid="whr"/>
</select>
<update id="delByIds">
update t_base_customer set del_is=1 ,data_modify_user_no=#{userNo}, data_modify_user_name=#{userName}, data_modify_time=now() where id in
<foreach collection="ids" item="item" open="(" close=")" separator=",">
#{item}
</foreach>
</update>
</mapper>