init: 代码初始化:1.用户变更记录,2.用户工作交接

dev_xiangguanfang
SondonYong 2025-12-02 14:17:33 +08:00
parent e94563be9d
commit dc9840c477
44 changed files with 2029 additions and 0 deletions

View File

@ -0,0 +1,85 @@
package com.zcloud.basic.info.web;
import com.zcloud.basic.info.api.UserChangeRecordServiceI;
import com.zcloud.basic.info.dto.UserChangeRecordAddCmd;
import com.zcloud.basic.info.dto.UserChangeRecordPageQry;
import com.zcloud.basic.info.dto.UserChangeRecordListQry;
import com.zcloud.basic.info.dto.UserChangeRecordUpdateCmd;
import com.zcloud.basic.info.dto.UserChangeRecordRemoveCmd;
import com.zcloud.basic.info.dto.clientobject.UserChangeRecordCO;
import com.alibaba.cola.dto.MultiResponse;
import com.alibaba.cola.dto.PageResponse;
import com.alibaba.cola.dto.Response;
import com.alibaba.cola.dto.SingleResponse;
import com.jjb.saas.framework.auth.model.SSOUser;
import com.jjb.saas.framework.auth.utils.AuthContext;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.AllArgsConstructor;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import java.util.ArrayList;
/**
* web-adapter
*
* @Author SondonYong
* @Date 2025-12-02 14:08:18
*/
@Api(tags = "用户变更记录")
@RequestMapping("/${application.gateway}/userChangeRecord")
@RestController
@AllArgsConstructor
public class UserChangeRecordController {
private final UserChangeRecordServiceI userChangeRecordService;
@ApiOperation("新增")
@PostMapping("/save")
public SingleResponse<UserChangeRecordCO> add(@Validated @RequestBody UserChangeRecordAddCmd cmd) {
SSOUser ssoUser = AuthContext.getCurrentUser();
return userChangeRecordService.add(cmd);
}
@ApiOperation("修改")
@PutMapping("/edit")
public SingleResponse edit(@Validated @RequestBody UserChangeRecordUpdateCmd cmd) {
userChangeRecordService.edit(cmd);
return SingleResponse.buildSuccess();
}
@ApiOperation("分页")
@PostMapping("/list")
public PageResponse<UserChangeRecordCO> page(@RequestBody UserChangeRecordPageQry qry) {
return userChangeRecordService.listPage(qry);
}
@ApiOperation("所有数据")
@PostMapping("/listAll")
public MultiResponse<UserChangeRecordCO> listAll(@RequestBody UserChangeRecordListQry qry) {
return userChangeRecordService.list(qry);
}
@ApiOperation("详情")
@GetMapping("/getInfoById")
public SingleResponse<UserChangeRecordCO> getInfoById(@RequestParam(value = "id") Long id) {
return userChangeRecordService.getInfoById(id);
}
@ApiOperation("删除")
@PutMapping("/remove")
public Response remove(@RequestParam(value = "id") Long id) {
userChangeRecordService.remove(id);
return SingleResponse.buildSuccess();
}
@ApiOperation("删除多个")
@PutMapping("/removeBatch")
public Response removeBatch(@Validated @RequestBody UserChangeRecordRemoveCmd cmd) {
userChangeRecordService.removeBatch(cmd.getIds());
return SingleResponse.buildSuccess();
}
}

View File

@ -0,0 +1,85 @@
package com.zcloud.basic.info.web;
import com.zcloud.basic.info.api.UserJobHandoverServiceI;
import com.zcloud.basic.info.dto.UserJobHandoverAddCmd;
import com.zcloud.basic.info.dto.UserJobHandoverPageQry;
import com.zcloud.basic.info.dto.UserJobHandoverListQry;
import com.zcloud.basic.info.dto.UserJobHandoverUpdateCmd;
import com.zcloud.basic.info.dto.UserJobHandoverRemoveCmd;
import com.zcloud.basic.info.dto.clientobject.UserJobHandoverCO;
import com.alibaba.cola.dto.MultiResponse;
import com.alibaba.cola.dto.PageResponse;
import com.alibaba.cola.dto.Response;
import com.alibaba.cola.dto.SingleResponse;
import com.jjb.saas.framework.auth.model.SSOUser;
import com.jjb.saas.framework.auth.utils.AuthContext;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.AllArgsConstructor;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import java.util.ArrayList;
/**
* web-adapter
*
* @Author SondonYong
* @Date 2025-12-02 14:08:56
*/
@Api(tags = "用户变更工作交接")
@RequestMapping("/${application.gateway}/userJobHandover")
@RestController
@AllArgsConstructor
public class UserJobHandoverController {
private final UserJobHandoverServiceI userJobHandoverService;
@ApiOperation("新增")
@PostMapping("/save")
public SingleResponse<UserJobHandoverCO> add(@Validated @RequestBody UserJobHandoverAddCmd cmd) {
SSOUser ssoUser = AuthContext.getCurrentUser();
return userJobHandoverService.add(cmd);
}
@ApiOperation("修改")
@PutMapping("/edit")
public SingleResponse edit(@Validated @RequestBody UserJobHandoverUpdateCmd cmd) {
userJobHandoverService.edit(cmd);
return SingleResponse.buildSuccess();
}
@ApiOperation("分页")
@PostMapping("/list")
public PageResponse<UserJobHandoverCO> page(@RequestBody UserJobHandoverPageQry qry) {
return userJobHandoverService.listPage(qry);
}
@ApiOperation("所有数据")
@PostMapping("/listAll")
public MultiResponse<UserJobHandoverCO> listAll(@RequestBody UserJobHandoverListQry qry) {
return userJobHandoverService.list(qry);
}
@ApiOperation("详情")
@GetMapping("/getInfoById")
public SingleResponse<UserJobHandoverCO> getInfoById(@RequestParam(value = "id") Long id) {
return userJobHandoverService.getInfoById(id);
}
@ApiOperation("删除")
@PutMapping("/remove")
public Response remove(@RequestParam(value = "id") Long id) {
userJobHandoverService.remove(id);
return SingleResponse.buildSuccess();
}
@ApiOperation("删除多个")
@PutMapping("/removeBatch")
public Response removeBatch(@Validated @RequestBody UserJobHandoverRemoveCmd cmd) {
userJobHandoverService.removeBatch(cmd.getIds());
return SingleResponse.buildSuccess();
}
}

View File

@ -0,0 +1,40 @@
package com.zcloud.basic.info.command;
import com.zcloud.basic.info.domain.gateway.UserChangeRecordGateway;
import com.zcloud.basic.info.domain.model.UserChangeRecordE;
import com.zcloud.basic.info.dto.UserChangeRecordAddCmd;
import com.alibaba.cola.exception.BizException;
import lombok.AllArgsConstructor;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;
/**
* web-app
*
* @Author SondonYong
* @Date 2025-12-02 14:08:18
*/
@Component
@AllArgsConstructor
public class UserChangeRecordAddExe {
private final UserChangeRecordGateway userChangeRecordGateway;
@Transactional(rollbackFor = Exception.class)
public boolean execute(UserChangeRecordAddCmd cmd) {
UserChangeRecordE userChangeRecordE = new UserChangeRecordE();
BeanUtils.copyProperties(cmd, userChangeRecordE);
boolean res = false;
try {
res = userChangeRecordGateway.add(userChangeRecordE);
} catch (Exception e) {
throw new RuntimeException(e);
}
if (!res) {
throw new BizException("保存失败");
}
return true;
}
}

View File

@ -0,0 +1,39 @@
package com.zcloud.basic.info.command;
import com.zcloud.basic.info.domain.gateway.UserChangeRecordGateway;
import com.alibaba.cola.exception.BizException;
import lombok.AllArgsConstructor;
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;
/**
* web-app
*
* @Author SondonYong
* @Date 2025-12-02 14:08:19
*/
@Component
@AllArgsConstructor
public class UserChangeRecordRemoveExe {
private final UserChangeRecordGateway userChangeRecordGateway;
@Transactional(rollbackFor = Exception.class)
public boolean execute(Long id) {
boolean res = userChangeRecordGateway.deletedUserChangeRecordById(id);
if (!res) {
throw new BizException("删除失败");
}
return true;
}
@Transactional(rollbackFor = Exception.class)
public boolean execute(Long[] ids) {
boolean res = userChangeRecordGateway.deletedUserChangeRecordByIds(ids);
if (!res) {
throw new BizException("删除失败");
}
return true;
}
}

View File

@ -0,0 +1,34 @@
package com.zcloud.basic.info.command;
import com.alibaba.cola.exception.BizException;
import com.zcloud.basic.info.domain.gateway.UserChangeRecordGateway;
import com.zcloud.basic.info.domain.model.UserChangeRecordE;
import com.zcloud.basic.info.dto.UserChangeRecordUpdateCmd;
import lombok.AllArgsConstructor;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;
/**
* web-app
*
* @Author SondonYong
* @Date 2025-12-02 14:08:19
*/
@Component
@AllArgsConstructor
public class UserChangeRecordUpdateExe {
private final UserChangeRecordGateway userChangeRecordGateway;
@Transactional(rollbackFor = Exception.class)
public void execute(UserChangeRecordUpdateCmd cmd) {
UserChangeRecordE userChangeRecordE = new UserChangeRecordE();
BeanUtils.copyProperties(cmd, userChangeRecordE);
boolean res = userChangeRecordGateway.update(userChangeRecordE);
if (!res) {
throw new BizException("修改失败");
}
}
}

View File

@ -0,0 +1,40 @@
package com.zcloud.basic.info.command;
import com.zcloud.basic.info.domain.gateway.UserJobHandoverGateway;
import com.zcloud.basic.info.domain.model.UserJobHandoverE;
import com.zcloud.basic.info.dto.UserJobHandoverAddCmd;
import com.alibaba.cola.exception.BizException;
import lombok.AllArgsConstructor;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;
/**
* web-app
*
* @Author SondonYong
* @Date 2025-12-02 14:08:56
*/
@Component
@AllArgsConstructor
public class UserJobHandoverAddExe {
private final UserJobHandoverGateway userJobHandoverGateway;
@Transactional(rollbackFor = Exception.class)
public boolean execute(UserJobHandoverAddCmd cmd) {
UserJobHandoverE userJobHandoverE = new UserJobHandoverE();
BeanUtils.copyProperties(cmd, userJobHandoverE);
boolean res = false;
try {
res = userJobHandoverGateway.add(userJobHandoverE);
} catch (Exception e) {
throw new RuntimeException(e);
}
if (!res) {
throw new BizException("保存失败");
}
return true;
}
}

View File

@ -0,0 +1,39 @@
package com.zcloud.basic.info.command;
import com.zcloud.basic.info.domain.gateway.UserJobHandoverGateway;
import com.alibaba.cola.exception.BizException;
import lombok.AllArgsConstructor;
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;
/**
* web-app
*
* @Author SondonYong
* @Date 2025-12-02 14:08:57
*/
@Component
@AllArgsConstructor
public class UserJobHandoverRemoveExe {
private final UserJobHandoverGateway userJobHandoverGateway;
@Transactional(rollbackFor = Exception.class)
public boolean execute(Long id) {
boolean res = userJobHandoverGateway.deletedUserJobHandoverById(id);
if (!res) {
throw new BizException("删除失败");
}
return true;
}
@Transactional(rollbackFor = Exception.class)
public boolean execute(Long[] ids) {
boolean res = userJobHandoverGateway.deletedUserJobHandoverByIds(ids);
if (!res) {
throw new BizException("删除失败");
}
return true;
}
}

View File

@ -0,0 +1,34 @@
package com.zcloud.basic.info.command;
import com.alibaba.cola.exception.BizException;
import com.zcloud.basic.info.domain.gateway.UserJobHandoverGateway;
import com.zcloud.basic.info.domain.model.UserJobHandoverE;
import com.zcloud.basic.info.dto.UserJobHandoverUpdateCmd;
import lombok.AllArgsConstructor;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;
/**
* web-app
*
* @Author SondonYong
* @Date 2025-12-02 14:08:57
*/
@Component
@AllArgsConstructor
public class UserJobHandoverUpdateExe {
private final UserJobHandoverGateway userJobHandoverGateway;
@Transactional(rollbackFor = Exception.class)
public void execute(UserJobHandoverUpdateCmd cmd) {
UserJobHandoverE userJobHandoverE = new UserJobHandoverE();
BeanUtils.copyProperties(cmd, userJobHandoverE);
boolean res = userJobHandoverGateway.update(userJobHandoverE);
if (!res) {
throw new BizException("修改失败");
}
}
}

View File

@ -0,0 +1,24 @@
package com.zcloud.basic.info.command.convertor;
import com.zcloud.basic.info.dto.clientobject.UserChangeRecordCO;
import com.zcloud.basic.info.persistence.dataobject.UserChangeRecordDO;
import org.mapstruct.Mapper;
import java.util.List;
/**
* web-app
*
* @Author SondonYong
* @Date 2025-12-02 14:08:18
*/
@Mapper(componentModel = "spring")
public interface UserChangeRecordCoConvertor {
/**
* @param userChangeRecordDOs
* @return
*/
List<UserChangeRecordCO> converDOsToCOs(List<UserChangeRecordDO> userChangeRecordDOs);
}

View File

@ -0,0 +1,24 @@
package com.zcloud.basic.info.command.convertor;
import com.zcloud.basic.info.dto.clientobject.UserJobHandoverCO;
import com.zcloud.basic.info.persistence.dataobject.UserJobHandoverDO;
import org.mapstruct.Mapper;
import java.util.List;
/**
* web-app
*
* @Author SondonYong
* @Date 2025-12-02 14:08:56
*/
@Mapper(componentModel = "spring")
public interface UserJobHandoverCoConvertor {
/**
* @param userJobHandoverDOs
* @return
*/
List<UserJobHandoverCO> converDOsToCOs(List<UserJobHandoverDO> userJobHandoverDOs);
}

View File

@ -0,0 +1,60 @@
package com.zcloud.basic.info.command.query;
import com.alibaba.cola.dto.MultiResponse;
import com.zcloud.basic.info.command.convertor.UserChangeRecordCoConvertor;
import com.zcloud.basic.info.dto.UserChangeRecordPageQry;
import com.zcloud.basic.info.dto.UserChangeRecordListQry;
import com.zcloud.basic.info.dto.clientobject.UserChangeRecordCO;
import com.zcloud.basic.info.persistence.dataobject.UserChangeRecordDO;
import com.zcloud.basic.info.persistence.repository.UserChangeRecordRepository;
import com.zcloud.gbscommon.utils.PageQueryHelper;
import com.alibaba.cola.dto.PageResponse;
import com.alibaba.cola.dto.SingleResponse;
import lombok.AllArgsConstructor;
import org.springframework.stereotype.Component;
import org.springframework.beans.BeanUtils;
import java.util.List;
import java.util.Map;
/**
* web-app
*
* @Author SondonYong
* @Date 2025-12-02 14:08:19
*/
@Component
@AllArgsConstructor
public class UserChangeRecordQueryExe {
private final UserChangeRecordRepository userChangeRecordRepository;
private final UserChangeRecordCoConvertor userChangeRecordCoConvertor;
/**
*
*
* @return
*/
public PageResponse<UserChangeRecordCO> execute(UserChangeRecordPageQry qry) {
Map<String, Object> params = PageQueryHelper.toHashMap(qry);
PageResponse<UserChangeRecordDO> pageResponse = userChangeRecordRepository.listPage(params);
List<UserChangeRecordCO> examCenterCOS = userChangeRecordCoConvertor.converDOsToCOs(pageResponse.getData());
return PageResponse.of(examCenterCOS, pageResponse.getTotalCount(), pageResponse.getPageSize(), pageResponse.getPageIndex());
}
public MultiResponse<UserChangeRecordCO> execute(UserChangeRecordListQry qry) {
Map<String, Object> params = PageQueryHelper.toHashMap(qry);
List<UserChangeRecordDO> list = userChangeRecordRepository.list(params);
List<UserChangeRecordCO> examCenterCOS = userChangeRecordCoConvertor.converDOsToCOs(list);
return MultiResponse.of(examCenterCOS);
}
public SingleResponse<UserChangeRecordCO> execute(Long id) {
SingleResponse<UserChangeRecordDO> userChangeRecordDO = userChangeRecordRepository.getInfoById(id);
UserChangeRecordCO co = new UserChangeRecordCO();
BeanUtils.copyProperties(userChangeRecordDO.getData(), co);
return SingleResponse.of(co);
}
}

View File

@ -0,0 +1,60 @@
package com.zcloud.basic.info.command.query;
import com.alibaba.cola.dto.MultiResponse;
import com.zcloud.basic.info.command.convertor.UserJobHandoverCoConvertor;
import com.zcloud.basic.info.dto.UserJobHandoverPageQry;
import com.zcloud.basic.info.dto.UserJobHandoverListQry;
import com.zcloud.basic.info.dto.clientobject.UserJobHandoverCO;
import com.zcloud.basic.info.persistence.dataobject.UserJobHandoverDO;
import com.zcloud.basic.info.persistence.repository.UserJobHandoverRepository;
import com.zcloud.gbscommon.utils.PageQueryHelper;
import com.alibaba.cola.dto.PageResponse;
import com.alibaba.cola.dto.SingleResponse;
import lombok.AllArgsConstructor;
import org.springframework.stereotype.Component;
import org.springframework.beans.BeanUtils;
import java.util.List;
import java.util.Map;
/**
* web-app
*
* @Author SondonYong
* @Date 2025-12-02 14:08:56
*/
@Component
@AllArgsConstructor
public class UserJobHandoverQueryExe {
private final UserJobHandoverRepository userJobHandoverRepository;
private final UserJobHandoverCoConvertor userJobHandoverCoConvertor;
/**
*
*
* @return
*/
public PageResponse<UserJobHandoverCO> execute(UserJobHandoverPageQry qry) {
Map<String, Object> params = PageQueryHelper.toHashMap(qry);
PageResponse<UserJobHandoverDO> pageResponse = userJobHandoverRepository.listPage(params);
List<UserJobHandoverCO> examCenterCOS = userJobHandoverCoConvertor.converDOsToCOs(pageResponse.getData());
return PageResponse.of(examCenterCOS, pageResponse.getTotalCount(), pageResponse.getPageSize(), pageResponse.getPageIndex());
}
public MultiResponse<UserJobHandoverCO> execute(UserJobHandoverListQry qry) {
Map<String, Object> params = PageQueryHelper.toHashMap(qry);
List<UserJobHandoverDO> list = userJobHandoverRepository.list(params);
List<UserJobHandoverCO> examCenterCOS = userJobHandoverCoConvertor.converDOsToCOs(list);
return MultiResponse.of(examCenterCOS);
}
public SingleResponse<UserJobHandoverCO> execute(Long id) {
SingleResponse<UserJobHandoverDO> userJobHandoverDO = userJobHandoverRepository.getInfoById(id);
UserJobHandoverCO co = new UserJobHandoverCO();
BeanUtils.copyProperties(userJobHandoverDO.getData(), co);
return SingleResponse.of(co);
}
}

View File

@ -0,0 +1,70 @@
package com.zcloud.basic.info.service;
import com.alibaba.cola.dto.MultiResponse;
import com.zcloud.basic.info.api.UserChangeRecordServiceI;
import com.zcloud.basic.info.command.UserChangeRecordAddExe;
import com.zcloud.basic.info.command.UserChangeRecordRemoveExe;
import com.zcloud.basic.info.command.UserChangeRecordUpdateExe;
import com.zcloud.basic.info.command.query.UserChangeRecordQueryExe;
import com.zcloud.basic.info.dto.UserChangeRecordAddCmd;
import com.zcloud.basic.info.dto.UserChangeRecordPageQry;
import com.zcloud.basic.info.dto.UserChangeRecordListQry;
import com.zcloud.basic.info.dto.UserChangeRecordUpdateCmd;
import com.zcloud.basic.info.dto.clientobject.UserChangeRecordCO;
import com.alibaba.cola.dto.PageResponse;
import com.alibaba.cola.dto.SingleResponse;
import lombok.AllArgsConstructor;
import org.springframework.stereotype.Service;
/**
* web-app
*
* @Author SondonYong
* @Date 2025-12-02 14:08:19
*/
@Service
@AllArgsConstructor
public class UserChangeRecordServiceImpl implements UserChangeRecordServiceI {
private final UserChangeRecordAddExe userChangeRecordAddExe;
private final UserChangeRecordUpdateExe userChangeRecordUpdateExe;
private final UserChangeRecordRemoveExe userChangeRecordRemoveExe;
private final UserChangeRecordQueryExe userChangeRecordQueryExe;
@Override
public PageResponse<UserChangeRecordCO> listPage(UserChangeRecordPageQry qry) {
return userChangeRecordQueryExe.execute(qry);
}
@Override
public MultiResponse<UserChangeRecordCO> list(UserChangeRecordListQry qry) {
return userChangeRecordQueryExe.execute(qry);
}
@Override
public SingleResponse<UserChangeRecordCO> getInfoById(Long id) {
return userChangeRecordQueryExe.execute(id);
}
@Override
public SingleResponse add(UserChangeRecordAddCmd cmd) {
userChangeRecordAddExe.execute(cmd);
return SingleResponse.buildSuccess();
}
@Override
public void edit(UserChangeRecordUpdateCmd cmd) {
userChangeRecordUpdateExe.execute(cmd);
}
@Override
public void remove(Long id) {
userChangeRecordRemoveExe.execute(id);
}
@Override
public void removeBatch(Long[] ids) {
userChangeRecordRemoveExe.execute(ids);
}
}

View File

@ -0,0 +1,70 @@
package com.zcloud.basic.info.service;
import com.alibaba.cola.dto.MultiResponse;
import com.zcloud.basic.info.api.UserJobHandoverServiceI;
import com.zcloud.basic.info.command.UserJobHandoverAddExe;
import com.zcloud.basic.info.command.UserJobHandoverRemoveExe;
import com.zcloud.basic.info.command.UserJobHandoverUpdateExe;
import com.zcloud.basic.info.command.query.UserJobHandoverQueryExe;
import com.zcloud.basic.info.dto.UserJobHandoverAddCmd;
import com.zcloud.basic.info.dto.UserJobHandoverPageQry;
import com.zcloud.basic.info.dto.UserJobHandoverListQry;
import com.zcloud.basic.info.dto.UserJobHandoverUpdateCmd;
import com.zcloud.basic.info.dto.clientobject.UserJobHandoverCO;
import com.alibaba.cola.dto.PageResponse;
import com.alibaba.cola.dto.SingleResponse;
import lombok.AllArgsConstructor;
import org.springframework.stereotype.Service;
/**
* web-app
*
* @Author SondonYong
* @Date 2025-12-02 14:08:57
*/
@Service
@AllArgsConstructor
public class UserJobHandoverServiceImpl implements UserJobHandoverServiceI {
private final UserJobHandoverAddExe userJobHandoverAddExe;
private final UserJobHandoverUpdateExe userJobHandoverUpdateExe;
private final UserJobHandoverRemoveExe userJobHandoverRemoveExe;
private final UserJobHandoverQueryExe userJobHandoverQueryExe;
@Override
public PageResponse<UserJobHandoverCO> listPage(UserJobHandoverPageQry qry) {
return userJobHandoverQueryExe.execute(qry);
}
@Override
public MultiResponse<UserJobHandoverCO> list(UserJobHandoverListQry qry) {
return userJobHandoverQueryExe.execute(qry);
}
@Override
public SingleResponse<UserJobHandoverCO> getInfoById(Long id) {
return userJobHandoverQueryExe.execute(id);
}
@Override
public SingleResponse add(UserJobHandoverAddCmd cmd) {
userJobHandoverAddExe.execute(cmd);
return SingleResponse.buildSuccess();
}
@Override
public void edit(UserJobHandoverUpdateCmd cmd) {
userJobHandoverUpdateExe.execute(cmd);
}
@Override
public void remove(Long id) {
userJobHandoverRemoveExe.execute(id);
}
@Override
public void removeBatch(Long[] ids) {
userJobHandoverRemoveExe.execute(ids);
}
}

View File

@ -0,0 +1,34 @@
package com.zcloud.basic.info.api;
import com.alibaba.cola.dto.MultiResponse;
import com.zcloud.basic.info.dto.UserChangeRecordAddCmd;
import com.zcloud.basic.info.dto.UserChangeRecordPageQry;
import com.zcloud.basic.info.dto.UserChangeRecordListQry;
import com.zcloud.basic.info.dto.UserChangeRecordUpdateCmd;
import com.zcloud.basic.info.dto.clientobject.UserChangeRecordCO;
import com.alibaba.cola.dto.PageResponse;
import com.alibaba.cola.dto.SingleResponse;
/**
* web-client
*
* @Author SondonYong
* @Date 2025-12-02 14:08:19
*/
public interface UserChangeRecordServiceI {
PageResponse<UserChangeRecordCO> listPage(UserChangeRecordPageQry qry);
MultiResponse<UserChangeRecordCO> list(UserChangeRecordListQry qry);
SingleResponse<UserChangeRecordCO> getInfoById(Long id);
SingleResponse<UserChangeRecordCO> add(UserChangeRecordAddCmd cmd);
void edit(UserChangeRecordUpdateCmd cmd);
void remove(Long id);
void removeBatch(Long[] ids);
}

View File

@ -0,0 +1,34 @@
package com.zcloud.basic.info.api;
import com.alibaba.cola.dto.MultiResponse;
import com.zcloud.basic.info.dto.UserJobHandoverAddCmd;
import com.zcloud.basic.info.dto.UserJobHandoverPageQry;
import com.zcloud.basic.info.dto.UserJobHandoverListQry;
import com.zcloud.basic.info.dto.UserJobHandoverUpdateCmd;
import com.zcloud.basic.info.dto.clientobject.UserJobHandoverCO;
import com.alibaba.cola.dto.PageResponse;
import com.alibaba.cola.dto.SingleResponse;
/**
* web-client
*
* @Author SondonYong
* @Date 2025-12-02 14:08:57
*/
public interface UserJobHandoverServiceI {
PageResponse<UserJobHandoverCO> listPage(UserJobHandoverPageQry qry);
MultiResponse<UserJobHandoverCO> list(UserJobHandoverListQry qry);
SingleResponse<UserJobHandoverCO> getInfoById(Long id);
SingleResponse<UserJobHandoverCO> add(UserJobHandoverAddCmd cmd);
void edit(UserJobHandoverUpdateCmd cmd);
void remove(Long id);
void removeBatch(Long[] ids);
}

View File

@ -0,0 +1,88 @@
package com.zcloud.basic.info.dto;
import com.alibaba.cola.dto.Command;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import javax.validation.constraints.*;
import java.util.Date;
/**
* web-client
*
* @Author SondonYong
* @Date 2025-12-02 14:08:18
*/
@EqualsAndHashCode(callSuper = true)
@Data
@NoArgsConstructor
@AllArgsConstructor
public class UserChangeRecordAddCmd extends Command {
@ApiModelProperty(value = "用户id", name = "userId", required = true)
@NotNull(message = "用户id不能为空")
private Long userId;
@ApiModelProperty(value = "变更时间", name = "changeTime", required = true)
@NotNull(message = "变更时间不能为空")
@JsonFormat(pattern = "yyyy-MM-dd")
private Date changeTime;
@ApiModelProperty(value = "入职状态1-在职 0-离职, 2-入职待审核, 3-离职待审核", name = "status", required = true)
@NotNull(message = "入职状态1-在职 0-离职, 2-入职待审核, 3-离职待审核不能为空")
private Integer status;
@ApiModelProperty(value = "变更前企业id", name = "corpinfoIdBefore", required = true)
@NotNull(message = "变更前企业id不能为空")
private Long corpinfoIdBefore;
@ApiModelProperty(value = "变更前企业名称", name = "corpinfoNameBefore", required = true)
@NotEmpty(message = "变更前企业名称不能为空")
private String corpinfoNameBefore;
@ApiModelProperty(value = "变更前负责部门id", name = "departmentIdBefore", required = true)
@NotNull(message = "变更前负责部门id不能为空")
private Long departmentIdBefore;
@ApiModelProperty(value = "变更前负责部门名称", name = "departmentNameBefore", required = true)
@NotEmpty(message = "变更前负责部门名称不能为空")
private String departmentNameBefore;
@ApiModelProperty(value = "变更前负责岗位id", name = "postIdBefore", required = true)
@NotNull(message = "变更前负责岗位id不能为空")
private Long postIdBefore;
@ApiModelProperty(value = "变更前负责岗位名称", name = "postNameBefore", required = true)
@NotEmpty(message = "变更前负责岗位名称不能为空")
private String postNameBefore;
@ApiModelProperty(value = "变更后企业id", name = "corpinfoIdAfter", required = true)
@NotNull(message = "变更后企业id不能为空")
private Long corpinfoIdAfter;
@ApiModelProperty(value = "变更后企业名称", name = "corpinfoNameAfter", required = true)
@NotEmpty(message = "变更后企业名称不能为空")
private String corpinfoNameAfter;
@ApiModelProperty(value = "变更后负责部门id", name = "departmentIdAfter", required = true)
@NotNull(message = "变更后负责部门id不能为空")
private Long departmentIdAfter;
@ApiModelProperty(value = "变更后负责部门名称", name = "departmentNameAfter", required = true)
@NotEmpty(message = "变更后负责部门名称不能为空")
private String departmentNameAfter;
@ApiModelProperty(value = "变更后负责岗位id", name = "postIdAfter", required = true)
@NotNull(message = "变更后负责岗位id不能为空")
private Long postIdAfter;
@ApiModelProperty(value = "变更后负责岗位名称", name = "postNameAfter", required = true)
@NotEmpty(message = "变更后负责岗位名称不能为空")
private String postNameAfter;
}

View File

@ -0,0 +1,28 @@
package com.zcloud.basic.info.dto;
import com.alibaba.cola.dto.PageQuery;
import lombok.Data;
/**
* web-client
*
* @Author SondonYong
* @Date 2025-12-02 14:08:19
*/
@Data
public class UserChangeRecordListQry extends PageQuery {
/**
* ,
* - `like`: SQLLIKE
* - `eq`: SQL=
* - `gt`:
* - `lt`:
* - `ge`:
* - `le`:
* - `ne`: SQL!=
*/
private String likeUserChangeRecordId;
}

View File

@ -0,0 +1,28 @@
package com.zcloud.basic.info.dto;
import com.alibaba.cola.dto.PageQuery;
import lombok.Data;
/**
* web-client
*
* @Author SondonYong
* @Date 2025-12-02 14:08:19
*/
@Data
public class UserChangeRecordPageQry extends PageQuery {
/**
* ,
* - `like`: SQLLIKE
* - `eq`: SQL=
* - `gt`:
* - `lt`:
* - `ge`:
* - `le`:
* - `ne`: SQL!=
*/
private String likeUserChangeRecordId;
}

View File

@ -0,0 +1,30 @@
package com.zcloud.basic.info.dto;
import com.alibaba.cola.dto.Command;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import javax.validation.constraints.*;
/**
* web-client
*
* @Author SondonYong
* @Date 2025-12-02 14:08:19
*/
@EqualsAndHashCode(callSuper = true)
@Data
@NoArgsConstructor
@AllArgsConstructor
public class UserChangeRecordRemoveCmd extends Command {
@ApiModelProperty(value = "主键", name = "ids", required = true)
@NotNull(message = "主键不能为空")
@Size(min = 1, message = "请选择数据")
private Long[] ids;
}

View File

@ -0,0 +1,79 @@
package com.zcloud.basic.info.dto;
import com.alibaba.cola.dto.Command;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import javax.validation.constraints.*;
import java.util.Date;
/**
* web-client
*
* @Author SondonYong
* @Date 2025-12-02 14:08:19
*/
@EqualsAndHashCode(callSuper = true)
@Data
@NoArgsConstructor
@AllArgsConstructor
public class UserChangeRecordUpdateCmd extends Command {
@ApiModelProperty(value = "主键", name = "id", required = true)
@NotNull(message = "主键不能为空")
private Long id;
@ApiModelProperty(value = "业务主键id", name = "userChangeRecordId", required = true)
@NotEmpty(message = "业务主键id不能为空")
private String userChangeRecordId;
@ApiModelProperty(value = "用户id", name = "userId", required = true)
@NotNull(message = "用户id不能为空")
private Long userId;
@ApiModelProperty(value = "变更时间", name = "changeTime", required = true)
@NotNull(message = "变更时间不能为空")
@JsonFormat(pattern = "yyyy-MM-dd")
private Date changeTime;
@ApiModelProperty(value = "入职状态1-在职 0-离职, 2-入职待审核, 3-离职待审核", name = "status", required = true)
@NotNull(message = "入职状态1-在职 0-离职, 2-入职待审核, 3-离职待审核不能为空")
private Integer status;
@ApiModelProperty(value = "变更前企业id", name = "corpinfoIdBefore", required = true)
@NotNull(message = "变更前企业id不能为空")
private Long corpinfoIdBefore;
@ApiModelProperty(value = "变更前企业名称", name = "corpinfoNameBefore", required = true)
@NotEmpty(message = "变更前企业名称不能为空")
private String corpinfoNameBefore;
@ApiModelProperty(value = "变更前负责部门id", name = "departmentIdBefore", required = true)
@NotNull(message = "变更前负责部门id不能为空")
private Long departmentIdBefore;
@ApiModelProperty(value = "变更前负责部门名称", name = "departmentNameBefore", required = true)
@NotEmpty(message = "变更前负责部门名称不能为空")
private String departmentNameBefore;
@ApiModelProperty(value = "变更前负责岗位id", name = "postIdBefore", required = true)
@NotNull(message = "变更前负责岗位id不能为空")
private Long postIdBefore;
@ApiModelProperty(value = "变更前负责岗位名称", name = "postNameBefore", required = true)
@NotEmpty(message = "变更前负责岗位名称不能为空")
private String postNameBefore;
@ApiModelProperty(value = "变更后企业id", name = "corpinfoIdAfter", required = true)
@NotNull(message = "变更后企业id不能为空")
private Long corpinfoIdAfter;
@ApiModelProperty(value = "变更后企业名称", name = "corpinfoNameAfter", required = true)
@NotEmpty(message = "变更后企业名称不能为空")
private String corpinfoNameAfter;
@ApiModelProperty(value = "变更后负责部门id", name = "departmentIdAfter", required = true)
@NotNull(message = "变更后负责部门id不能为空")
private Long departmentIdAfter;
@ApiModelProperty(value = "变更后负责部门名称", name = "departmentNameAfter", required = true)
@NotEmpty(message = "变更后负责部门名称不能为空")
private String departmentNameAfter;
@ApiModelProperty(value = "变更后负责岗位id", name = "postIdAfter", required = true)
@NotNull(message = "变更后负责岗位id不能为空")
private Long postIdAfter;
@ApiModelProperty(value = "变更后负责岗位名称", name = "postNameAfter", required = true)
@NotEmpty(message = "变更后负责岗位名称不能为空")
private String postNameAfter;
}

View File

@ -0,0 +1,84 @@
package com.zcloud.basic.info.dto;
import com.alibaba.cola.dto.Command;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import javax.validation.constraints.*;
import java.util.Date;
/**
* web-client
*
* @Author SondonYong
* @Date 2025-12-02 14:08:56
*/
@EqualsAndHashCode(callSuper = true)
@Data
@NoArgsConstructor
@AllArgsConstructor
public class UserJobHandoverAddCmd extends Command {
@ApiModelProperty(value = "用户变更记录id", name = "userChangeRecordId", required = true)
@NotEmpty(message = "用户变更记录id不能为空")
private String userChangeRecordId;
@ApiModelProperty(value = "用户id", name = "userId", required = true)
@NotNull(message = "用户id不能为空")
private Long userId;
@ApiModelProperty(value = "变更时间", name = "changeTime", required = true)
@NotNull(message = "变更时间不能为空")
@JsonFormat(pattern = "yyyy-MM-dd")
private Date changeTime;
@ApiModelProperty(value = "工作项目", name = "workProject", required = true)
@NotEmpty(message = "工作项目不能为空")
private String workProject;
@ApiModelProperty(value = "工作内容", name = "workContent", required = true)
@NotEmpty(message = "工作内容不能为空")
private String workContent;
@ApiModelProperty(value = "交接状态,10:关闭任务", name = "handoverStatus", required = true)
@NotNull(message = "交接状态,10:关闭任务不能为空")
private Integer handoverStatus;
@ApiModelProperty(value = "交接人企业id", name = "handoverCompanyId", required = true)
@NotNull(message = "交接人企业id不能为空")
private Long handoverCompanyId;
@ApiModelProperty(value = "交接人公司名称", name = "handoverCompanyName", required = true)
@NotEmpty(message = "交接人公司名称不能为空")
private String handoverCompanyName;
@ApiModelProperty(value = "交接人部门id", name = "handoverDepartmentId", required = true)
@NotNull(message = "交接人部门id不能为空")
private Long handoverDepartmentId;
@ApiModelProperty(value = "交接人部门名称", name = "handoverDepartmentName", required = true)
@NotEmpty(message = "交接人部门名称不能为空")
private String handoverDepartmentName;
@ApiModelProperty(value = "交接人岗位id", name = "handoverPostId", required = true)
@NotNull(message = "交接人岗位id不能为空")
private Long handoverPostId;
@ApiModelProperty(value = "交接人岗位名称", name = "handoverPostName", required = true)
@NotEmpty(message = "交接人岗位名称不能为空")
private String handoverPostName;
@ApiModelProperty(value = "交接人id", name = "handoverUserId", required = true)
@NotNull(message = "交接人id不能为空")
private Long handoverUserId;
@ApiModelProperty(value = "交接人名称", name = "handoverUserName", required = true)
@NotEmpty(message = "交接人名称不能为空")
private String handoverUserName;
}

View File

@ -0,0 +1,28 @@
package com.zcloud.basic.info.dto;
import com.alibaba.cola.dto.PageQuery;
import lombok.Data;
/**
* web-client
*
* @Author SondonYong
* @Date 2025-12-02 14:08:56
*/
@Data
public class UserJobHandoverListQry extends PageQuery {
/**
* ,
* - `like`: SQLLIKE
* - `eq`: SQL=
* - `gt`:
* - `lt`:
* - `ge`:
* - `le`:
* - `ne`: SQL!=
*/
private String likeUserJobHandoverId;
}

View File

@ -0,0 +1,28 @@
package com.zcloud.basic.info.dto;
import com.alibaba.cola.dto.PageQuery;
import lombok.Data;
/**
* web-client
*
* @Author SondonYong
* @Date 2025-12-02 14:08:56
*/
@Data
public class UserJobHandoverPageQry extends PageQuery {
/**
* ,
* - `like`: SQLLIKE
* - `eq`: SQL=
* - `gt`:
* - `lt`:
* - `ge`:
* - `le`:
* - `ne`: SQL!=
*/
private String likeUserJobHandoverId;
}

View File

@ -0,0 +1,30 @@
package com.zcloud.basic.info.dto;
import com.alibaba.cola.dto.Command;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import javax.validation.constraints.*;
/**
* web-client
*
* @Author SondonYong
* @Date 2025-12-02 14:08:57
*/
@EqualsAndHashCode(callSuper = true)
@Data
@NoArgsConstructor
@AllArgsConstructor
public class UserJobHandoverRemoveCmd extends Command {
@ApiModelProperty(value = "主键", name = "ids", required = true)
@NotNull(message = "主键不能为空")
@Size(min = 1, message = "请选择数据")
private Long[] ids;
}

View File

@ -0,0 +1,76 @@
package com.zcloud.basic.info.dto;
import com.alibaba.cola.dto.Command;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import javax.validation.constraints.*;
import java.util.Date;
/**
* web-client
*
* @Author SondonYong
* @Date 2025-12-02 14:08:57
*/
@EqualsAndHashCode(callSuper = true)
@Data
@NoArgsConstructor
@AllArgsConstructor
public class UserJobHandoverUpdateCmd extends Command {
@ApiModelProperty(value = "主键", name = "id", required = true)
@NotNull(message = "主键不能为空")
private Long id;
@ApiModelProperty(value = "业务主键id", name = "userJobHandoverId", required = true)
@NotEmpty(message = "业务主键id不能为空")
private String userJobHandoverId;
@ApiModelProperty(value = "用户变更记录id", name = "userChangeRecordId", required = true)
@NotEmpty(message = "用户变更记录id不能为空")
private String userChangeRecordId;
@ApiModelProperty(value = "用户id", name = "userId", required = true)
@NotNull(message = "用户id不能为空")
private Long userId;
@ApiModelProperty(value = "变更时间", name = "changeTime", required = true)
@NotNull(message = "变更时间不能为空")
@JsonFormat(pattern = "yyyy-MM-dd")
private Date changeTime;
@ApiModelProperty(value = "工作项目", name = "workProject", required = true)
@NotEmpty(message = "工作项目不能为空")
private String workProject;
@ApiModelProperty(value = "工作内容", name = "workContent", required = true)
@NotEmpty(message = "工作内容不能为空")
private String workContent;
@ApiModelProperty(value = "交接状态,10:关闭任务", name = "handoverStatus", required = true)
@NotNull(message = "交接状态,10:关闭任务不能为空")
private Integer handoverStatus;
@ApiModelProperty(value = "交接人企业id", name = "handoverCompanyId", required = true)
@NotNull(message = "交接人企业id不能为空")
private Long handoverCompanyId;
@ApiModelProperty(value = "交接人公司名称", name = "handoverCompanyName", required = true)
@NotEmpty(message = "交接人公司名称不能为空")
private String handoverCompanyName;
@ApiModelProperty(value = "交接人部门id", name = "handoverDepartmentId", required = true)
@NotNull(message = "交接人部门id不能为空")
private Long handoverDepartmentId;
@ApiModelProperty(value = "交接人部门名称", name = "handoverDepartmentName", required = true)
@NotEmpty(message = "交接人部门名称不能为空")
private String handoverDepartmentName;
@ApiModelProperty(value = "交接人岗位id", name = "handoverPostId", required = true)
@NotNull(message = "交接人岗位id不能为空")
private Long handoverPostId;
@ApiModelProperty(value = "交接人岗位名称", name = "handoverPostName", required = true)
@NotEmpty(message = "交接人岗位名称不能为空")
private String handoverPostName;
@ApiModelProperty(value = "交接人id", name = "handoverUserId", required = true)
@NotNull(message = "交接人id不能为空")
private Long handoverUserId;
@ApiModelProperty(value = "交接人名称", name = "handoverUserName", required = true)
@NotEmpty(message = "交接人名称不能为空")
private String handoverUserName;
}

View File

@ -0,0 +1,71 @@
package com.zcloud.basic.info.dto.clientobject;
import com.alibaba.cola.dto.ClientObject;
import io.swagger.annotations.ApiModelProperty;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import java.time.LocalDateTime;
import java.time.LocalDate;
/**
* web-client
*
* @Author SondonYong
* @Date 2025-12-02 14:08:18
*/
@Data
public class UserChangeRecordCO extends ClientObject {
//主键
@ApiModelProperty(value = "主键")
private Long id;
//业务主键id
@ApiModelProperty(value = "业务主键id")
private String userChangeRecordId;
//用户id
@ApiModelProperty(value = "用户id")
private Long userId;
//变更时间
@ApiModelProperty(value = "变更时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private LocalDateTime changeTime;
//入职状态1-在职 0-离职, 2-入职待审核, 3-离职待审核
@ApiModelProperty(value = "入职状态1-在职 0-离职, 2-入职待审核, 3-离职待审核")
private Integer status;
//变更前企业id
@ApiModelProperty(value = "变更前企业id")
private Long corpinfoIdBefore;
//变更前企业名称
@ApiModelProperty(value = "变更前企业名称")
private String corpinfoNameBefore;
//变更前负责部门id
@ApiModelProperty(value = "变更前负责部门id")
private Long departmentIdBefore;
//变更前负责部门名称
@ApiModelProperty(value = "变更前负责部门名称")
private String departmentNameBefore;
//变更前负责岗位id
@ApiModelProperty(value = "变更前负责岗位id")
private Long postIdBefore;
//变更前负责岗位名称
@ApiModelProperty(value = "变更前负责岗位名称")
private String postNameBefore;
//变更后企业id
@ApiModelProperty(value = "变更后企业id")
private Long corpinfoIdAfter;
//变更后企业名称
@ApiModelProperty(value = "变更后企业名称")
private String corpinfoNameAfter;
//变更后负责部门id
@ApiModelProperty(value = "变更后负责部门id")
private Long departmentIdAfter;
//变更后负责部门名称
@ApiModelProperty(value = "变更后负责部门名称")
private String departmentNameAfter;
//变更后负责岗位id
@ApiModelProperty(value = "变更后负责岗位id")
private Long postIdAfter;
//变更后负责岗位名称
@ApiModelProperty(value = "变更后负责岗位名称")
private String postNameAfter;
}

View File

@ -0,0 +1,68 @@
package com.zcloud.basic.info.dto.clientobject;
import com.alibaba.cola.dto.ClientObject;
import io.swagger.annotations.ApiModelProperty;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import java.time.LocalDateTime;
import java.time.LocalDate;
/**
* web-client
*
* @Author SondonYong
* @Date 2025-12-02 14:08:56
*/
@Data
public class UserJobHandoverCO extends ClientObject {
//主键
@ApiModelProperty(value = "主键")
private Long id;
//业务主键id
@ApiModelProperty(value = "业务主键id")
private String userJobHandoverId;
//用户变更记录id
@ApiModelProperty(value = "用户变更记录id")
private String userChangeRecordId;
//用户id
@ApiModelProperty(value = "用户id")
private Long userId;
//变更时间
@ApiModelProperty(value = "变更时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private LocalDateTime changeTime;
//工作项目
@ApiModelProperty(value = "工作项目")
private String workProject;
//工作内容
@ApiModelProperty(value = "工作内容")
private String workContent;
//交接状态,10:关闭任务
@ApiModelProperty(value = "交接状态,10:关闭任务")
private Integer handoverStatus;
//交接人企业id
@ApiModelProperty(value = "交接人企业id")
private Long handoverCompanyId;
//交接人公司名称
@ApiModelProperty(value = "交接人公司名称")
private String handoverCompanyName;
//交接人部门id
@ApiModelProperty(value = "交接人部门id")
private Long handoverDepartmentId;
//交接人部门名称
@ApiModelProperty(value = "交接人部门名称")
private String handoverDepartmentName;
//交接人岗位id
@ApiModelProperty(value = "交接人岗位id")
private Long handoverPostId;
//交接人岗位名称
@ApiModelProperty(value = "交接人岗位名称")
private String handoverPostName;
//交接人id
@ApiModelProperty(value = "交接人id")
private Long handoverUserId;
//交接人名称
@ApiModelProperty(value = "交接人名称")
private String handoverUserName;
}

View File

@ -0,0 +1,30 @@
package com.zcloud.basic.info.domain.gateway;
import com.zcloud.basic.info.domain.model.UserChangeRecordE;
/**
* web-domain
*
* @Author SondonYong
* @Date 2025-12-02 14:08:19
*/
public interface UserChangeRecordGateway {
/**
*
*/
Boolean add(UserChangeRecordE userChangeRecordE);
/**
*
*/
Boolean update(UserChangeRecordE userChangeRecordE);
/**
*
*/
Boolean deletedUserChangeRecordById(Long id);
Boolean deletedUserChangeRecordByIds(Long[] id);
}

View File

@ -0,0 +1,30 @@
package com.zcloud.basic.info.domain.gateway;
import com.zcloud.basic.info.domain.model.UserJobHandoverE;
/**
* web-domain
*
* @Author SondonYong
* @Date 2025-12-02 14:08:56
*/
public interface UserJobHandoverGateway {
/**
*
*/
Boolean add(UserJobHandoverE userJobHandoverE);
/**
*
*/
Boolean update(UserJobHandoverE userJobHandoverE);
/**
*
*/
Boolean deletedUserJobHandoverById(Long id);
Boolean deletedUserJobHandoverByIds(Long[] id);
}

View File

@ -0,0 +1,51 @@
package com.zcloud.basic.info.domain.model;
import com.jjb.saas.framework.domain.model.BaseE;
import lombok.Data;
import java.util.Date;
/**
* web-domain
*
* @Author SondonYong
* @Date 2025-12-02 14:08:18
*/
@Data
public class UserChangeRecordE extends BaseE {
//主键
private Long id;
//业务主键id
private String userChangeRecordId;
//用户id
private Long userId;
//变更时间
private Date changeTime;
//入职状态1-在职 0-离职, 2-入职待审核, 3-离职待审核
private Integer status;
//变更前企业id
private Long corpinfoIdBefore;
//变更前企业名称
private String corpinfoNameBefore;
//变更前负责部门id
private Long departmentIdBefore;
//变更前负责部门名称
private String departmentNameBefore;
//变更前负责岗位id
private Long postIdBefore;
//变更前负责岗位名称
private String postNameBefore;
//变更后企业id
private Long corpinfoIdAfter;
//变更后企业名称
private String corpinfoNameAfter;
//变更后负责部门id
private Long departmentIdAfter;
//变更后负责部门名称
private String departmentNameAfter;
//变更后负责岗位id
private Long postIdAfter;
//变更后负责岗位名称
private String postNameAfter;
}

View File

@ -0,0 +1,49 @@
package com.zcloud.basic.info.domain.model;
import com.jjb.saas.framework.domain.model.BaseE;
import lombok.Data;
import java.util.Date;
/**
* web-domain
*
* @Author SondonYong
* @Date 2025-12-02 14:08:56
*/
@Data
public class UserJobHandoverE extends BaseE {
//主键
private Long id;
//业务主键id
private String userJobHandoverId;
//用户变更记录id
private String userChangeRecordId;
//用户id
private Long userId;
//变更时间
private Date changeTime;
//工作项目
private String workProject;
//工作内容
private String workContent;
//交接状态,10:关闭任务
private Integer handoverStatus;
//交接人企业id
private Long handoverCompanyId;
//交接人公司名称
private String handoverCompanyName;
//交接人部门id
private Long handoverDepartmentId;
//交接人部门名称
private String handoverDepartmentName;
//交接人岗位id
private Long handoverPostId;
//交接人岗位名称
private String handoverPostName;
//交接人id
private Long handoverUserId;
//交接人名称
private String handoverUserName;
}

View File

@ -0,0 +1,50 @@
package com.zcloud.basic.info.gatewayimpl;
import com.zcloud.basic.info.domain.gateway.UserChangeRecordGateway;
import com.zcloud.basic.info.domain.model.UserChangeRecordE;
import com.zcloud.basic.info.persistence.dataobject.UserChangeRecordDO;
import com.zcloud.basic.info.persistence.repository.UserChangeRecordRepository;
import lombok.AllArgsConstructor;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
import java.util.Collections;
/**
* web-infrastructure
*
* @Author SondonYong
* @Date 2025-12-02 14:08:19
*/
@Service
@AllArgsConstructor
public class UserChangeRecordGatewayImpl implements UserChangeRecordGateway {
private final UserChangeRecordRepository userChangeRecordRepository;
@Override
public Boolean add(UserChangeRecordE userChangeRecordE) {
UserChangeRecordDO d = new UserChangeRecordDO();
BeanUtils.copyProperties(userChangeRecordE, d);
userChangeRecordRepository.save(d);
return true;
}
@Override
public Boolean update(UserChangeRecordE userChangeRecordE) {
UserChangeRecordDO d = new UserChangeRecordDO();
BeanUtils.copyProperties(userChangeRecordE, d);
userChangeRecordRepository.updateById(d);
return true;
}
@Override
public Boolean deletedUserChangeRecordById(Long id) {
return userChangeRecordRepository.removeById(id);
}
@Override
public Boolean deletedUserChangeRecordByIds(Long[] ids) {
return userChangeRecordRepository.removeByIds(Collections.singletonList(ids));
}
}

View File

@ -0,0 +1,50 @@
package com.zcloud.basic.info.gatewayimpl;
import com.zcloud.basic.info.domain.gateway.UserJobHandoverGateway;
import com.zcloud.basic.info.domain.model.UserJobHandoverE;
import com.zcloud.basic.info.persistence.dataobject.UserJobHandoverDO;
import com.zcloud.basic.info.persistence.repository.UserJobHandoverRepository;
import lombok.AllArgsConstructor;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
import java.util.Collections;
/**
* web-infrastructure
*
* @Author SondonYong
* @Date 2025-12-02 14:08:56
*/
@Service
@AllArgsConstructor
public class UserJobHandoverGatewayImpl implements UserJobHandoverGateway {
private final UserJobHandoverRepository userJobHandoverRepository;
@Override
public Boolean add(UserJobHandoverE userJobHandoverE) {
UserJobHandoverDO d = new UserJobHandoverDO();
BeanUtils.copyProperties(userJobHandoverE, d);
userJobHandoverRepository.save(d);
return true;
}
@Override
public Boolean update(UserJobHandoverE userJobHandoverE) {
UserJobHandoverDO d = new UserJobHandoverDO();
BeanUtils.copyProperties(userJobHandoverE, d);
userJobHandoverRepository.updateById(d);
return true;
}
@Override
public Boolean deletedUserJobHandoverById(Long id) {
return userJobHandoverRepository.removeById(id);
}
@Override
public Boolean deletedUserJobHandoverByIds(Long[] ids) {
return userJobHandoverRepository.removeByIds(Collections.singletonList(ids));
}
}

View File

@ -0,0 +1,77 @@
package com.zcloud.basic.info.persistence.dataobject;
import com.baomidou.mybatisplus.annotation.*;
import com.jjb.saas.framework.repository.basedo.BaseDO;
import lombok.Data;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import java.util.Date;
/**
* web-infrastructure
*
* @Author SondonYong
* @Date 2025-12-02 14:08:19
*/
@Data
@TableName("user_change_record")
@NoArgsConstructor
@EqualsAndHashCode(callSuper = true)
public class UserChangeRecordDO extends BaseDO {
//业务主键id
@ApiModelProperty(value = "业务主键id")
private String userChangeRecordId;
//用户id
@ApiModelProperty(value = "用户id")
private Long userId;
//变更时间
@ApiModelProperty(value = "变更时间")
private Date changeTime;
//入职状态1-在职 0-离职, 2-入职待审核, 3-离职待审核
@ApiModelProperty(value = "入职状态1-在职 0-离职, 2-入职待审核, 3-离职待审核")
private Integer status;
//变更前企业id
@ApiModelProperty(value = "变更前企业id")
private Long corpinfoIdBefore;
//变更前企业名称
@ApiModelProperty(value = "变更前企业名称")
private String corpinfoNameBefore;
//变更前负责部门id
@ApiModelProperty(value = "变更前负责部门id")
private Long departmentIdBefore;
//变更前负责部门名称
@ApiModelProperty(value = "变更前负责部门名称")
private String departmentNameBefore;
//变更前负责岗位id
@ApiModelProperty(value = "变更前负责岗位id")
private Long postIdBefore;
//变更前负责岗位名称
@ApiModelProperty(value = "变更前负责岗位名称")
private String postNameBefore;
//变更后企业id
@ApiModelProperty(value = "变更后企业id")
private Long corpinfoIdAfter;
//变更后企业名称
@ApiModelProperty(value = "变更后企业名称")
private String corpinfoNameAfter;
//变更后负责部门id
@ApiModelProperty(value = "变更后负责部门id")
private Long departmentIdAfter;
//变更后负责部门名称
@ApiModelProperty(value = "变更后负责部门名称")
private String departmentNameAfter;
//变更后负责岗位id
@ApiModelProperty(value = "变更后负责岗位id")
private Long postIdAfter;
//变更后负责岗位名称
@ApiModelProperty(value = "变更后负责岗位名称")
private String postNameAfter;
public UserChangeRecordDO(String userChangeRecordId) {
this.userChangeRecordId = userChangeRecordId;
}
}

View File

@ -0,0 +1,74 @@
package com.zcloud.basic.info.persistence.dataobject;
import com.baomidou.mybatisplus.annotation.*;
import com.jjb.saas.framework.repository.basedo.BaseDO;
import lombok.Data;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import java.util.Date;
/**
* web-infrastructure
*
* @Author SondonYong
* @Date 2025-12-02 14:08:56
*/
@Data
@TableName("user_job_handover")
@NoArgsConstructor
@EqualsAndHashCode(callSuper = true)
public class UserJobHandoverDO extends BaseDO {
//业务主键id
@ApiModelProperty(value = "业务主键id")
private String userJobHandoverId;
//用户变更记录id
@ApiModelProperty(value = "用户变更记录id")
private String userChangeRecordId;
//用户id
@ApiModelProperty(value = "用户id")
private Long userId;
//变更时间
@ApiModelProperty(value = "变更时间")
private Date changeTime;
//工作项目
@ApiModelProperty(value = "工作项目")
private String workProject;
//工作内容
@ApiModelProperty(value = "工作内容")
private String workContent;
//交接状态,10:关闭任务
@ApiModelProperty(value = "交接状态,10:关闭任务")
private Integer handoverStatus;
//交接人企业id
@ApiModelProperty(value = "交接人企业id")
private Long handoverCompanyId;
//交接人公司名称
@ApiModelProperty(value = "交接人公司名称")
private String handoverCompanyName;
//交接人部门id
@ApiModelProperty(value = "交接人部门id")
private Long handoverDepartmentId;
//交接人部门名称
@ApiModelProperty(value = "交接人部门名称")
private String handoverDepartmentName;
//交接人岗位id
@ApiModelProperty(value = "交接人岗位id")
private Long handoverPostId;
//交接人岗位名称
@ApiModelProperty(value = "交接人岗位名称")
private String handoverPostName;
//交接人id
@ApiModelProperty(value = "交接人id")
private Long handoverUserId;
//交接人名称
@ApiModelProperty(value = "交接人名称")
private String handoverUserName;
public UserJobHandoverDO(String userJobHandoverId) {
this.userJobHandoverId = userJobHandoverId;
}
}

View File

@ -0,0 +1,17 @@
package com.zcloud.basic.info.persistence.mapper;
import com.zcloud.basic.info.persistence.dataobject.UserChangeRecordDO;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
/**
* web-infrastructure
*
* @Author SondonYong
* @Date 2025-12-02 14:08:19
*/
@Mapper
public interface UserChangeRecordMapper extends BaseMapper<UserChangeRecordDO> {
}

View File

@ -0,0 +1,17 @@
package com.zcloud.basic.info.persistence.mapper;
import com.zcloud.basic.info.persistence.dataobject.UserJobHandoverDO;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
/**
* web-infrastructure
*
* @Author SondonYong
* @Date 2025-12-02 14:08:56
*/
@Mapper
public interface UserJobHandoverMapper extends BaseMapper<UserJobHandoverDO> {
}

View File

@ -0,0 +1,25 @@
package com.zcloud.basic.info.persistence.repository;
import com.zcloud.basic.info.persistence.dataobject.UserChangeRecordDO;
import com.alibaba.cola.dto.SingleResponse;
import com.alibaba.cola.dto.PageResponse;
import com.jjb.saas.framework.repository.repo.BaseRepository;
import java.util.Map;
import java.util.List;
/**
* web-infrastructure
*
* @Author SondonYong
* @Date 2025-12-02 14:08:19
*/
public interface UserChangeRecordRepository extends BaseRepository<UserChangeRecordDO> {
PageResponse<UserChangeRecordDO> listPage(Map<String, Object> params);
List<UserChangeRecordDO> list(Map<String, Object> params);
SingleResponse<UserChangeRecordDO> getInfoById(Long id);
}

View File

@ -0,0 +1,25 @@
package com.zcloud.basic.info.persistence.repository;
import com.zcloud.basic.info.persistence.dataobject.UserJobHandoverDO;
import com.alibaba.cola.dto.SingleResponse;
import com.alibaba.cola.dto.PageResponse;
import com.jjb.saas.framework.repository.repo.BaseRepository;
import java.util.Map;
import java.util.List;
/**
* web-infrastructure
*
* @Author SondonYong
* @Date 2025-12-02 14:08:57
*/
public interface UserJobHandoverRepository extends BaseRepository<UserJobHandoverDO> {
PageResponse<UserJobHandoverDO> listPage(Map<String, Object> params);
List<UserJobHandoverDO> list(Map<String, Object> params);
SingleResponse<UserJobHandoverDO> getInfoById(Long id);
}

View File

@ -0,0 +1,55 @@
package com.zcloud.basic.info.persistence.repository.impl;
import com.jjb.saas.framework.repository.common.PageHelper;
import com.zcloud.basic.info.persistence.dataobject.UserChangeRecordDO;
import com.zcloud.basic.info.persistence.mapper.UserChangeRecordMapper;
import com.zcloud.basic.info.persistence.repository.UserChangeRecordRepository;
import com.alibaba.cola.dto.SingleResponse;
import com.alibaba.cola.dto.PageResponse;
import com.zcloud.gbscommon.utils.PageQueryHelper;
import com.zcloud.gbscommon.utils.Query;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.jjb.saas.framework.repository.repo.impl.BaseRepositoryImpl;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
import java.util.Map;
import java.util.List;
/**
* web-infrastructure
*
* @Author SondonYong
* @Date 2025-12-02 14:08:19
*/
@Service
@RequiredArgsConstructor
public class UserChangeRecordRepositoryImpl extends BaseRepositoryImpl<UserChangeRecordMapper, UserChangeRecordDO> implements UserChangeRecordRepository {
private final UserChangeRecordMapper userChangeRecordMapper;
@Override
public PageResponse<UserChangeRecordDO> listPage(Map<String, Object> params) {
IPage<UserChangeRecordDO> iPage = new Query<UserChangeRecordDO>().getPage(params);
QueryWrapper<UserChangeRecordDO> queryWrapper = new QueryWrapper<>();
queryWrapper = PageQueryHelper.createPageQueryWrapper(queryWrapper, params);
queryWrapper.orderByDesc("create_time");
IPage<UserChangeRecordDO> result = userChangeRecordMapper.selectPage(iPage, queryWrapper);
return PageHelper.pageToResponse(result, result.getRecords());
}
@Override
public List<UserChangeRecordDO> list(Map<String, Object> params) {
QueryWrapper<UserChangeRecordDO> queryWrapper = new QueryWrapper<>();
queryWrapper = PageQueryHelper.createPageQueryWrapper(queryWrapper, params);
queryWrapper.orderByDesc("create_time");
List<UserChangeRecordDO> result = userChangeRecordMapper.selectList(queryWrapper);
return result;
}
@Override
public SingleResponse<UserChangeRecordDO> getInfoById(Long id) {
return SingleResponse.of(userChangeRecordMapper.selectById(id));
}
}

View File

@ -0,0 +1,55 @@
package com.zcloud.basic.info.persistence.repository.impl;
import com.jjb.saas.framework.repository.common.PageHelper;
import com.zcloud.basic.info.persistence.dataobject.UserJobHandoverDO;
import com.zcloud.basic.info.persistence.mapper.UserJobHandoverMapper;
import com.zcloud.basic.info.persistence.repository.UserJobHandoverRepository;
import com.alibaba.cola.dto.SingleResponse;
import com.alibaba.cola.dto.PageResponse;
import com.zcloud.gbscommon.utils.PageQueryHelper;
import com.zcloud.gbscommon.utils.Query;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.jjb.saas.framework.repository.repo.impl.BaseRepositoryImpl;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
import java.util.Map;
import java.util.List;
/**
* web-infrastructure
*
* @Author SondonYong
* @Date 2025-12-02 14:08:57
*/
@Service
@RequiredArgsConstructor
public class UserJobHandoverRepositoryImpl extends BaseRepositoryImpl<UserJobHandoverMapper, UserJobHandoverDO> implements UserJobHandoverRepository {
private final UserJobHandoverMapper userJobHandoverMapper;
@Override
public PageResponse<UserJobHandoverDO> listPage(Map<String, Object> params) {
IPage<UserJobHandoverDO> iPage = new Query<UserJobHandoverDO>().getPage(params);
QueryWrapper<UserJobHandoverDO> queryWrapper = new QueryWrapper<>();
queryWrapper = PageQueryHelper.createPageQueryWrapper(queryWrapper, params);
queryWrapper.orderByDesc("create_time");
IPage<UserJobHandoverDO> result = userJobHandoverMapper.selectPage(iPage, queryWrapper);
return PageHelper.pageToResponse(result, result.getRecords());
}
@Override
public List<UserJobHandoverDO> list(Map<String, Object> params) {
QueryWrapper<UserJobHandoverDO> queryWrapper = new QueryWrapper<>();
queryWrapper = PageQueryHelper.createPageQueryWrapper(queryWrapper, params);
queryWrapper.orderByDesc("create_time");
List<UserJobHandoverDO> result = userJobHandoverMapper.selectList(queryWrapper);
return result;
}
@Override
public SingleResponse<UserJobHandoverDO> getInfoById(Long id) {
return SingleResponse.of(userJobHandoverMapper.selectById(id));
}
}

View File

@ -0,0 +1,7 @@
<?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.zcloud.basic.info.persistence.mapper.UserChangeRecordMapper">
</mapper>

View File

@ -0,0 +1,7 @@
<?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.zcloud.basic.info.persistence.mapper.UserJobHandoverMapper">
</mapper>