Merge remote-tracking branch 'origin/develop' into develop

# Conflicts:
#	nflg-mobilebroken-admin/src/main/java/com/nflg/mobilebroken/admin/service/AdminBaseAreaService.java
This commit is contained in:
大米 2025-02-07 10:45:16 +08:00
commit 8df67903e3
22 changed files with 137 additions and 49 deletions

View File

@ -163,16 +163,16 @@ public class AppUserController extends ControllerBase {
return ApiResult.success(appUserService.searchAppUserForAdmin(request)); return ApiResult.success(appUserService.searchAppUserForAdmin(request));
} }
/** // /**
* 获取代理商子账号列表 // * 获取代理商子账号列表
* // *
* @param id 主账号id // * @param id 主账号id
*/ // */
@GetMapping("getChildrenOfAppUser") // @GetMapping("getChildrenOfAppUser")
@MethodInfoMark(value = "获取代理商子账号列表", menuName = "代理商管理") // @MethodInfoMark(value = "获取代理商子账号列表", menuName = "代理商管理")
public ApiResult<List<AppUserForAdminVO>> getChildrenOfAppUser(@Valid @RequestParam Integer id) { // public ApiResult<List<AppUserForAdminVO>> getChildrenOfAppUser(@Valid @RequestParam Integer id) {
return ApiResult.success(appUserService.getChildrenOfAppUser(id)); // return ApiResult.success(appUserService.getChildrenOfAppUser(id));
} // }
/** /**
* 启用/禁用代理商 * 启用/禁用代理商

View File

@ -44,7 +44,6 @@ public class BaseAreaController extends ControllerBase {
* @return * @return
*/ */
@PostMapping("getList") @PostMapping("getList")
@MethodInfoMark(value = "获取区域列表" ,menuName = "区域管理")
public ApiResult<PageData<TBaseAreaVO>> getList(@RequestBody BaseAreaQuery query){ public ApiResult<PageData<TBaseAreaVO>> getList(@RequestBody BaseAreaQuery query){
// //
return adminBaseAreaService.getList(query); return adminBaseAreaService.getList(query);

View File

@ -1,6 +1,7 @@
package com.nflg.mobilebroken.admin.controller; package com.nflg.mobilebroken.admin.controller;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.collection.CollUtil; import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.convert.Convert; import cn.hutool.core.convert.Convert;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@ -92,6 +93,7 @@ public class CustomerController extends ControllerBase {
//检查公司名称是否已存在 //检查公司名称是否已存在
TBaseCustomer oldEnt = baseCustomerService.getById(customerDTO.getId()); TBaseCustomer oldEnt = baseCustomerService.getById(customerDTO.getId());
VUtils.trueThrow(Objects.isNull(oldEnt)).throwMessage(STATE.PageError,customerDTO.getAgencyCompanyName()+"公司不存在"); VUtils.trueThrow(Objects.isNull(oldEnt)).throwMessage(STATE.PageError,customerDTO.getAgencyCompanyName()+"公司不存在");
BeanUtil.copyProperties(customerDTO,oldEnt);
oldEnt.setDataModifyUserNo(AdminUserUtil.getUserNo()); oldEnt.setDataModifyUserNo(AdminUserUtil.getUserNo());
oldEnt.setDataModifyUserName(AdminUserUtil.getUserName()); oldEnt.setDataModifyUserName(AdminUserUtil.getUserName());
oldEnt.setDataModifyTime(LocalDateTime.now()); oldEnt.setDataModifyTime(LocalDateTime.now());

View File

@ -3,6 +3,7 @@ package com.nflg.mobilebroken.admin.controller;
import cn.hutool.core.collection.CollUtil; import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.convert.Convert; import cn.hutool.core.convert.Convert;
import cn.hutool.core.util.StrUtil;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.nflg.mobilebroken.admin.pojo.dto.PositionDetailDTO; import com.nflg.mobilebroken.admin.pojo.dto.PositionDetailDTO;
@ -24,6 +25,7 @@ import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource; import javax.annotation.Resource;
import javax.validation.Valid; import javax.validation.Valid;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@ -51,7 +53,7 @@ public class PositionController extends ControllerBase {
* @return * @return
*/ */
@PostMapping("getList") @PostMapping("getList")
@MethodInfoMark(value = "获取职位列表", menuName = "职位管理")
public ApiResult<PageData<TBasePosition>> getList(@RequestBody PositionQuery query) { public ApiResult<PageData<TBasePosition>> getList(@RequestBody PositionQuery query) {
Page<TBasePosition> result = positionService.getList(new Page<>(query.getPage(), query.getPageSize()), query); Page<TBasePosition> result = positionService.getList(new Page<>(query.getPage(), query.getPageSize()), query);
@ -65,16 +67,19 @@ public class PositionController extends ControllerBase {
* @return * @return
*/ */
@GetMapping("getPositionDetail") @GetMapping("getPositionDetail")
@MethodInfoMark(value = "获取职位明细", menuName = "职位管理")
public ApiResult<PositionDetailVO> getPositionDetail(@RequestParam("id") Integer id) { public ApiResult<PositionDetailVO> getPositionDetail(@RequestParam("id") Integer id) {
TBasePosition ent = positionService.getById(id); TBasePosition ent = positionService.getById(id);
VUtils.trueThrow(null == ent).throwMessage(STATE.ParamErr, "职位不存在"); VUtils.trueThrow(null == ent).throwMessage(STATE.ParamErr, "职位不存在");
PositionDetailVO result = Convert.convert(PositionDetailVO.class, ent); PositionDetailVO result = Convert.convert(PositionDetailVO.class, ent);
List<Language> allLanguage = languageService.lambdaQuery().eq(Language::getEnable, true).list(); List<Language> allLanguage = languageService.lambdaQuery().eq(Language::getEnable, true).list();
List<PositionLanguageVO> positionLanguage = JSON.parseArray(ent.getPositionLanguage(), PositionLanguageVO.class); Map<String, String> positionLanguageMp=new HashMap<>();
Map<String, String> positionLanguageMp = positionLanguage.stream() if(StrUtil.isNotBlank(ent.getPositionLanguage())) {
.collect(Collectors.toMap(PositionLanguageVO::getCode, PositionLanguageVO::getLanguageValue)); List<PositionLanguageVO> positionLanguage = JSON.parseArray(ent.getPositionLanguage(), PositionLanguageVO.class);
positionLanguageMp = positionLanguage.stream()
.collect(Collectors.toMap(PositionLanguageVO::getCode, PositionLanguageVO::getLanguageValue));
}
List<PositionLanguageVO> positionLanguageResult = Convert.toList(PositionLanguageVO.class, allLanguage); List<PositionLanguageVO> positionLanguageResult = Convert.toList(PositionLanguageVO.class, allLanguage);
for (PositionLanguageVO lan : positionLanguageResult) { for (PositionLanguageVO lan : positionLanguageResult) {
if (positionLanguageMp.containsKey(lan.getCode())) { if (positionLanguageMp.containsKey(lan.getCode())) {
@ -119,11 +124,12 @@ public class PositionController extends ControllerBase {
public ApiResult<Boolean> update(@Valid @RequestBody PositionDetailDTO positionDetailDto) { public ApiResult<Boolean> update(@Valid @RequestBody PositionDetailDTO positionDetailDto) {
VUtils.trueThrow(positionDetailDto.getId()<=0).throwMessage(STATE.ParamErr,"编辑时ID不能等于0"); VUtils.trueThrow(positionDetailDto.getId()<=0).throwMessage(STATE.ParamErr,"编辑时ID不能等于0");
TBasePosition ent = Convert.convert(TBasePosition.class, positionDetailDto); TBasePosition ent = Convert.convert(TBasePosition.class, positionDetailDto);
ent.setPositionCode(null);
ent.setPositionLanguage(JSON.toJSONString(positionDetailDto.getLanguage())); ent.setPositionLanguage(JSON.toJSONString(positionDetailDto.getLanguage()));
ent.setDataModifyUserNo(AdminUserUtil.getUserNo()); ent.setDataModifyUserNo(AdminUserUtil.getUserNo());
ent.setDataModifyUserName(AdminUserUtil.getUserName()); ent.setDataModifyUserName(AdminUserUtil.getUserName());
ent.setDataModifyTime(LocalDateTime.now()); ent.setDataModifyTime(LocalDateTime.now());
positionService.save(ent); positionService.updateById(ent);
return ApiResult.success(true); return ApiResult.success(true);
} }

View File

@ -5,6 +5,7 @@ import com.nflg.mobilebroken.admin.pojo.vo.PositionLanguageVO;
import lombok.Data; import lombok.Data;
import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.util.List; import java.util.List;
@ -31,7 +32,7 @@ public class PositionDetailDTO {
/** /**
* 职位属性 1-内部使用 2-外部使用 3-公用 * 职位属性 1-内部使用 2-外部使用 3-公用
*/ */
@NotBlank(message = "属性不能为空") @NotNull(message = "属性不能为空")
private Integer positionAttribute; private Integer positionAttribute;

View File

@ -31,7 +31,7 @@ public class AdminBaseAreaService {
public ApiResult<PageData<TBaseAreaVO>> getList(@RequestBody BaseAreaQuery query){ public ApiResult<PageData<TBaseAreaVO>> getList(@RequestBody BaseAreaQuery query){
Page<TBaseAreaVO> result = baseAreaService.getList(new Page<>(query.getPage(),query.getPageSize()), query); Page<TBaseAreaVO> result = baseAreaService.getList(new Page<>(query.getPage(),query.getPageSize()), query);
List<TBaseAreaVO> dataResult = Convert.toList(TBaseAreaVO.class, result); List<TBaseAreaVO> dataResult = Convert.toList(TBaseAreaVO.class, result.getRecords());
if(StrUtil.isNotBlank(query.getAreaCodeOrName())){ if(StrUtil.isNotBlank(query.getAreaCodeOrName())){
List<TBaseAreaVO> allAreaList = Convert.toList(TBaseAreaVO.class,baseAreaService.lambdaQuery().eq(TBaseArea::getDelIs,0).list()) ; List<TBaseAreaVO> allAreaList = Convert.toList(TBaseAreaVO.class,baseAreaService.lambdaQuery().eq(TBaseArea::getDelIs,0).list()) ;
Map<Long, TBaseAreaVO> collect = allAreaList.stream().collect(Collectors.toMap(TBaseAreaVO::getId, Function.identity())); Map<Long, TBaseAreaVO> collect = allAreaList.stream().collect(Collectors.toMap(TBaseAreaVO::getId, Function.identity()));

View File

@ -22,7 +22,6 @@ import java.time.Instant;
import java.util.Arrays; import java.util.Arrays;
import java.util.Collections; import java.util.Collections;
import java.util.List; import java.util.List;
import java.util.Objects;
import java.util.stream.Collectors; import java.util.stream.Collectors;
/** /**
@ -43,8 +42,10 @@ public class TiketController extends ControllerBase {
@Resource @Resource
private ITicketFollowService ticketFollowService; private ITicketFollowService ticketFollowService;
// @Resource
// private ITicketChatService ticketChatService;
@Resource @Resource
private ITicketChatService ticketChatService; private TicketChatService ticketChatService;
@Resource @Resource
private IAppUserService appUserService; private IAppUserService appUserService;
@ -107,6 +108,14 @@ public class TiketController extends ControllerBase {
@PostMapping("/addTiket") @PostMapping("/addTiket")
public ApiResult<Void> addTiket(@Valid @RequestBody TicketAddRequest request) { public ApiResult<Void> addTiket(@Valid @RequestBody TicketAddRequest request) {
Integer ticketId = ticketService.add(request, AppUserUtil.getUserId()); Integer ticketId = ticketService.add(request, AppUserUtil.getUserId());
ticketChatService.add(new TicketChat()
.setTicketId(ticketId)
.setMessages(Collections.singletonList(new ChatMessageVO()
.setFrom("system")
.setSenderId(0)
.setSenderName("服务助手")
.setCreateTime(Instant.now())
.setContent("<b>正在为您分派工程师,请稍后</b><br/>工程师将尽快回复您,如需补充信息,请继续留言。"))));
adminMessageService.addCQMNotify(ticketId); adminMessageService.addCQMNotify(ticketId);
return ApiResult.success(); return ApiResult.success();
} }
@ -171,11 +180,7 @@ public class TiketController extends ControllerBase {
**/ **/
@GetMapping("getChatMessages") @GetMapping("getChatMessages")
public ApiResult<List<ChatMessageVO>> getChatMessages(@Valid @RequestParam @NotNull Integer ticketId) { public ApiResult<List<ChatMessageVO>> getChatMessages(@Valid @RequestParam @NotNull Integer ticketId) {
TicketChat ticketChat=ticketChatService.findByTicketId(ticketId); return ApiResult.success(ticketChatService.getMessages(ticketId));
if (Objects.isNull(ticketChat)){
return ApiResult.success(Collections.emptyList());
}
return ApiResult.success(ticketChat.getMessages());
} }
/** /**
@ -185,11 +190,17 @@ public class TiketController extends ControllerBase {
@PostMapping("addChatMessage") @PostMapping("addChatMessage")
public ApiResult<Void> addChatMessage(@Valid @RequestBody AddChatMessageRequest request){ public ApiResult<Void> addChatMessage(@Valid @RequestBody AddChatMessageRequest request){
ChatMessageVO message = new ChatMessageVO() ChatMessageVO message = new ChatMessageVO()
.setSenderId(Integer.toString(AppUserUtil.getUserId())) .setFrom("app")
.setSenderId(AppUserUtil.getUserId())
.setSenderName(AppUserUtil.getUserName())
.setContent(request.getContent()) .setContent(request.getContent())
.setCreateTime(Instant.now()) .setCreateTime(Instant.now())
.setAttachments(request.getAttachments()); .setAttachments(request.getAttachments());
ticketChatService.pushMessage(request.getTicketId(),message); // ticketChatService.pushMessage(request.getTicketId(),message);
// TicketChat chat=ticketChatService.findByTicketId(request.getTicketId());
// chat.getMessages().add(message);
// ticketChatService.save(chat);
ticketChatService.addMessage(request.getTicketId(), message);
return ApiResult.success(); return ApiResult.success();
} }

View File

@ -2,31 +2,41 @@ package com.nflg.mobilebroken.common.pojo.request;
import lombok.Data; import lombok.Data;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
@Data @Data
public class AccountAddRequest { public class AccountAddRequest {
//登录名称 //登录名称
@NotBlank
private String loginName; private String loginName;
//用户名 //用户名
@NotBlank
private String userName; private String userName;
//手机号码 //手机号码
private String phone; private String phone;
//邮箱 //邮箱
@NotBlank
private String email; private String email;
//部门id //部门id
@NotNull
private Integer departmentId; private Integer departmentId;
//职位id //职位id
@NotNull
private Integer titleId; private Integer titleId;
//用户号 //用户号
@NotBlank
private String userCode; private String userCode;
//是否启用 //是否启用
@NotNull
private Boolean enabled; private Boolean enabled;
//头像 //头像

View File

@ -34,5 +34,5 @@ public class MenuAddRequest {
// 是否显示 // 是否显示
@NotNull @NotNull
private boolean isShow; private boolean show;
} }

View File

@ -5,6 +5,7 @@ import lombok.experimental.Accessors;
import java.time.LocalDate; import java.time.LocalDate;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.util.List;
@Data @Data
@Accessors(chain = true) @Accessors(chain = true)
@ -63,4 +64,7 @@ public class AppUserForAdminVO {
//是否主账号 //是否主账号
private boolean isPrimary; private boolean isPrimary;
//下级账号
private List<AppUserForAdminVO> children;
} }

View File

@ -10,8 +10,11 @@ import java.util.List;
@Accessors(chain = true) @Accessors(chain = true)
public class ChatMessageVO { public class ChatMessageVO {
//来源
private String from;
// 发送者id // 发送者id
private String senderId; private Integer senderId;
// 发送者名称 // 发送者名称
private String senderName; private String senderName;

View File

@ -27,7 +27,7 @@ public class MenuVO {
private boolean enable; private boolean enable;
// 是否显示 // 是否显示
private boolean isShow; private boolean show;
// 创建人 // 创建人
private String createBy; private String createBy;

View File

@ -41,7 +41,7 @@ public class TBaseAreaVO implements Serializable {
/** /**
* 预期名称 * 预期名称
*/ */
private Long areaName; private String areaName;
/** /**
* 状态 * 状态

View File

@ -1,14 +1,16 @@
package com.nflg.mobilebroken.repository.entity; package com.nflg.mobilebroken.repository.entity;
import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.time.LocalDateTime;
import lombok.Getter; import lombok.Getter;
import lombok.Setter; import lombok.Setter;
import lombok.experimental.Accessors; import lombok.experimental.Accessors;
import java.io.Serializable;
import java.time.LocalDateTime;
/** /**
* <p> * <p>
* 后台-菜单 * 后台-菜单
@ -56,7 +58,8 @@ public class AdminMenu implements Serializable {
/** /**
* 是否显示 * 是否显示
*/ */
private Boolean isShow; @TableField(value = "`show`")
private Boolean show;
/** /**
* 排序 * 排序

View File

@ -2,6 +2,7 @@ package com.nflg.mobilebroken.repository.entity;
import com.nflg.mobilebroken.common.pojo.vo.ChatMessageVO; import com.nflg.mobilebroken.common.pojo.vo.ChatMessageVO;
import lombok.Data; import lombok.Data;
import lombok.experimental.Accessors;
import org.springframework.data.annotation.Id; import org.springframework.data.annotation.Id;
import org.springframework.data.mongodb.core.mapping.Document; import org.springframework.data.mongodb.core.mapping.Document;
@ -9,6 +10,7 @@ import java.util.ArrayList;
import java.util.List; import java.util.List;
@Data @Data
@Accessors(chain = true)
@Document(collection = "TicketChat") @Document(collection = "TicketChat")
public class TicketChat { public class TicketChat {
@ -18,4 +20,4 @@ public class TicketChat {
private Integer ticketId; private Integer ticketId;
private List<ChatMessageVO> messages = new ArrayList<>(); private List<ChatMessageVO> messages = new ArrayList<>();
} }

View File

@ -0,0 +1,44 @@
package com.nflg.mobilebroken.repository.service;
import com.nflg.mobilebroken.common.pojo.vo.ChatMessageVO;
import com.nflg.mobilebroken.repository.entity.TicketChat;
import org.springframework.data.mongodb.core.MongoTemplate;
import org.springframework.data.mongodb.core.query.Criteria;
import org.springframework.data.mongodb.core.query.Query;
import org.springframework.data.mongodb.core.query.Update;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.Collections;
import java.util.List;
import java.util.Objects;
@Service
public class TicketChatService {
@Resource
private MongoTemplate mongoTemplate;
public void add(TicketChat ticketChat) {
mongoTemplate.save(ticketChat);
}
public List<ChatMessageVO> getMessages(Integer ticketId) {
Query query = new Query(Criteria.where("ticketId").is(ticketId));
TicketChat ticketChat = mongoTemplate.findOne(query, TicketChat.class);
if (Objects.isNull(ticketChat)) {
return Collections.emptyList();
} else {
return ticketChat.getMessages();
}
}
public void addMessage(Integer ticketId, ChatMessageVO newMessage) {
// 创建查询条件查找 ticketId = ticketId TicketChat
Query query = new Query(Criteria.where("ticketId").is(ticketId));
// 创建更新操作 messages 列表中添加新消息
Update update = new Update().push("messages", newMessage);
// 执行更新操作
mongoTemplate.findAndModify(query, update, TicketChat.class);
}
}

View File

@ -71,7 +71,7 @@ public class AdminMenuServiceImpl extends ServiceImpl<AdminMenuMapper, AdminMenu
.setUrl(request.getUrl()) .setUrl(request.getUrl())
.setSort(request.getSort()) .setSort(request.getSort())
.setEnable(request.isEnable()) .setEnable(request.isEnable())
.setIsShow(request.isShow()) .setShow(request.isShow())
.setParentId(request.getParentId()) .setParentId(request.getParentId())
.setCreateBy(AdminUserUtil.getUserName()) .setCreateBy(AdminUserUtil.getUserName())
.setCreateTime(LocalDateTime.now()); .setCreateTime(LocalDateTime.now());
@ -87,7 +87,7 @@ public class AdminMenuServiceImpl extends ServiceImpl<AdminMenuMapper, AdminMenu
.setUrl(request.getUrl()) .setUrl(request.getUrl())
.setSort(request.getSort()) .setSort(request.getSort())
.setEnable(request.isEnable()) .setEnable(request.isEnable())
.setIsShow(request.isShow()) .setShow(request.isShow())
.setParentId(request.getParentId()) .setParentId(request.getParentId())
.setUpdateBy(AdminUserUtil.getUserName()) .setUpdateBy(AdminUserUtil.getUserName())
.setUpdateTime(LocalDateTime.now()); .setUpdateTime(LocalDateTime.now());

View File

@ -31,6 +31,7 @@ import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.time.chrono.ChronoLocalDate; import java.time.chrono.ChronoLocalDate;
import java.util.Arrays;
import java.util.List; import java.util.List;
import java.util.Objects; import java.util.Objects;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@ -178,25 +179,27 @@ public class AppUserServiceImpl extends ServiceImpl<AppUserMapper, AppUser> impl
if (Objects.nonNull(d.getUpdateBy())) { if (Objects.nonNull(d.getUpdateBy())) {
updateBy = getById(d.getUpdateBy()).getName(); updateBy = getById(d.getUpdateBy()).getName();
} }
List<Integer> companyIds = Arrays.stream(d.getCompanyId().split(",")).filter(StrUtil::isNotBlank).map(Integer::valueOf).collect(Collectors.toList());
List<String> customers = customerService.listByIds(companyIds).stream().map(TBaseCustomer::getAgencyCompanyName).collect(Collectors.toList());
return new AppUserForAdminVO() return new AppUserForAdminVO()
.setId(d.getId()) .setId(d.getId())
.setAvatar(d.getAvatar()) .setAvatar(d.getAvatar())
.setLoginName(d.getLoginName()) .setLoginName(d.getLoginName())
.setUserName(d.getName()) .setUserName(d.getName())
.setCompanyName(d.getCompanyId()) .setCompanyName(StrUtil.join(",", customers))
.setName(d.getSalesUserName()) .setName(d.getSalesUserName())
.setEmail(d.getEmail()) .setEmail(d.getEmail())
.setSalesUserName(d.getSalesUserName()) .setSalesUserName(d.getSalesUserName())
.setAreaName(area.getName()) .setAreaName(area.getName())
.setEnable(d.getEnable()) .setEnable(d.getEnable())
.setEnable(d.getEnable())
.setExpireTime(d.getExpireTime()) .setExpireTime(d.getExpireTime())
.setCreateBy(appUser.getName()) .setCreateBy(appUser.getName())
.setCreateTime(d.getCreateTime()) .setCreateTime(d.getCreateTime())
.setUpdateBy(updateBy) .setUpdateBy(updateBy)
.setPrimary(true) .setPrimary(true)
.setState(d.getExpireTime().isAfter(ChronoLocalDate.from(LocalDateTime.now())) ? 1 : 2) .setState(d.getExpireTime().isAfter(ChronoLocalDate.from(LocalDateTime.now())) ? 1 : 2)
.setLastLoginTime(d.getLastLoginTime()); .setLastLoginTime(d.getLastLoginTime())
.setChildren(getChildrenOfAppUser(d.getId()));
}); });
} }

View File

@ -1,6 +1,7 @@
package com.nflg.mobilebroken.repository.service.impl; package com.nflg.mobilebroken.repository.service.impl;
import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@ -62,12 +63,10 @@ public class ParamConfigServiceImpl extends ServiceImpl<ParamConfigMapper, Param
@Override @Override
public PageData<ParamConfigVO> search(SearchConfigRequest request) { public PageData<ParamConfigVO> search(SearchConfigRequest request) {
IPage<ParamConfig> page = new Page<>(); IPage<ParamConfig> page = lambdaQuery()
page.setCurrent(request.getPage()); .like(StrUtil.isNotBlank(request.getName()), ParamConfig::getName, request.getName())
page.setSize(request.getPageSize()); .like(StrUtil.isNotBlank(request.getCode()), ParamConfig::getCode, request.getCode())
lambdaQuery().like(ParamConfig::getName, request.getName()) .page(new Page<>(request.getPage(), request.getPageSize()));
.like(ParamConfig::getCode, request.getCode())
.page(page);
if (CollectionUtil.isEmpty(page.getRecords())) { if (CollectionUtil.isEmpty(page.getRecords())) {
return new PageData<>(); return new PageData<>();
} }

View File

@ -24,7 +24,7 @@
<update id="delByIds"> <update id="delByIds">
update t_base_area set del_is=1 , data_modify_time=now(), data_modify_user_no=#{userNo}, update t_base_area set del_is=1 , data_modify_time=now(), data_modify_user_no=#{userNo},
data_modify_user_name=#{userName} where id in data_modify_user_name=#{userName} where id in
<foreach collection="ids" item="=item" open="(" close=")" separator=","> <foreach collection="ids" item="item" open="(" close=")" separator=",">
#{item} #{item}
</foreach> </foreach>
</update> </update>

View File

@ -4,7 +4,7 @@
<sql id="whr"> <sql id="whr">
<if test="query.positionCode!=null and query.positionCode!=''"> <if test="query.positionCode!=null and query.positionCode!=''">
and position_code=#{positionCode} and position_code=#{query.positionCode}
</if> </if>
<if test="query.positionName!=null and query.positionName!=''"> <if test="query.positionName!=null and query.positionName!=''">
and position_name=#{query.positionName} and position_name=#{query.positionName}

View File

@ -38,6 +38,7 @@ public class CodeGenerator {
.enableChainModel() .enableChainModel()
.enableFileOverride(); .enableFileOverride();
builder.controllerBuilder().disable(); builder.controllerBuilder().disable();
builder.addExclude("admin_menu");
}) })
.templateEngine(new FreemarkerTemplateEngine()) .templateEngine(new FreemarkerTemplateEngine())
.execute(); .execute();