| | |
| | | import com.ruoyi.common.utils.StringUtils; |
| | | import com.ruoyi.framework.web.service.TokenService; |
| | | import com.ruoyi.system.dto.*; |
| | | import com.ruoyi.system.model.*; |
| | | import com.ruoyi.system.query.SysUserQuery; |
| | | import com.ruoyi.system.service.*; |
| | | import com.ruoyi.system.vo.SysUserVO; |
| | |
| | | import org.springframework.validation.annotation.Validated; |
| | | import org.springframework.web.bind.annotation.*; |
| | | |
| | | import javax.annotation.Resource; |
| | | import java.time.LocalDateTime; |
| | | import java.util.*; |
| | | import java.util.stream.Collectors; |
| | |
| | | private ISysDeptService deptService; |
| | | @Autowired |
| | | private TokenService tokenService; |
| | | @Resource |
| | | private TBreedingAndPreservationService breedingAndPreservationService; |
| | | @Resource |
| | | private TCulturePreservationService culturePreservationService; |
| | | @Resource |
| | | private TNoticeService noticeService; |
| | | @Resource |
| | | private TObservationOfPetriDishesService observationOfPetriDishesService; |
| | | @Resource |
| | | private TPedigreeChartDetailService pedigreeChartDetailService; |
| | | @Resource |
| | | private TPedigreeChartService pedigreeChartService; |
| | | |
| | | @Resource |
| | | private TSeparationOfCultureDishesService separationOfCultureDishesService; |
| | | @Resource |
| | | private TStrainReportService strainReportService; |
| | | @Resource |
| | | private TStrainReportDetailService strainReportDetailService; |
| | | @Resource |
| | | private TStrainValidationDataService strainValidationDataService; |
| | | @Resource |
| | | private TTrainLibraryService tTrainLibraryService; |
| | | @Resource |
| | | private TTrainLibraryWarehousingService tTrainLibraryWarehousingService; |
| | | @Resource |
| | | private TVaccinationSlopeService vaccinationSlopeService; |
| | | @Resource |
| | | private TProjectTeamStaffService projectTeamStaffService; |
| | | |
| | | /** |
| | | * 获取用户列表 |
| | |
| | | user.setUserName(user.getUserName()); |
| | | if (!userService.checkUserNameUnique(user)) |
| | | { |
| | | return error("新增用户'" + user.getUserName() + "'失败,登录账号已存在"); |
| | | return AjaxResult.error("新增用户'" + user.getUserName() + "'失败,登录账号已存在"); |
| | | } |
| | | else if (StringUtils.isNotEmpty(user.getPhonenumber()) && !userService.checkPhoneUnique(user)) |
| | | { |
| | | return error("新增用户'" + user.getUserName() + "'失败,手机号码已存在"); |
| | | return AjaxResult.error("新增用户'" + user.getUserName() + "'失败,手机号码已存在"); |
| | | } |
| | | user.setCreateBy(getUsername()); |
| | | user.setPassword(SecurityUtils.encryptPassword("123456")); |
| | |
| | | } |
| | | return AjaxResult.success(userService.updateUser(sysUser)); |
| | | } |
| | | @ApiOperation(value = "账号继承") |
| | | @ApiOperation(value = "账号继承",response = SysUserInheritDTO.class) |
| | | @Log(title = "用户信息-账号继承", businessType = BusinessType.UPDATE) |
| | | @PostMapping("/api/system/user/inherit") |
| | | public AjaxResult inherit(@RequestBody String param) |
| | | { |
| | | SysUserInheritDTO dto = JSON.parseObject(param,SysUserInheritDTO.class); |
| | | Long currentUserId = dto.getCurrentUserId(); |
| | | Long userId = dto.getUserId(); |
| | | SysUser currentUser = userService.selectUserById(dto.getCurrentUserId()); |
| | | SysUser user = userService.selectUserById(dto.getUserId()); |
| | | user.setUserId(currentUser.getUserId()); |
| | | userService.deleteUserById(dto.getCurrentUserId()); |
| | | // 将user的userId换成currentUser的userId |
| | | userService.inherit(user); |
| | | // 将user所有数据 替换为当前账号id |
| | | List<TCulturePreservation> culturePreservationsHandle = culturePreservationService.lambdaQuery().eq(TCulturePreservation::getHandleId, userId).list(); |
| | | for (TCulturePreservation tCulturePreservation : culturePreservationsHandle) { |
| | | tCulturePreservation.setHandleId(currentUserId+""); |
| | | } |
| | | culturePreservationService.updateBatchById( culturePreservationsHandle); |
| | | List<TCulturePreservation> culturePreservationsPreserve = culturePreservationService.lambdaQuery().eq(TCulturePreservation::getPreserveId, userId).list(); |
| | | for (TCulturePreservation tCulturePreservation : culturePreservationsPreserve) { |
| | | tCulturePreservation.setPreserveId(currentUserId+""); |
| | | } |
| | | culturePreservationService.updateBatchById( culturePreservationsPreserve); |
| | | List<TNotice> notices = noticeService.lambdaQuery().eq(TNotice::getUserId, userId).list(); |
| | | for (TNotice tNotice : notices) { |
| | | tNotice.setUserId(currentUserId+""); |
| | | } |
| | | noticeService.updateBatchById( notices); |
| | | List<TPedigreeChartDetail> pedigreeChartDetailsVaccinate = pedigreeChartDetailService.lambdaQuery().eq(TPedigreeChartDetail::getVaccinateId, userId).list(); |
| | | for (TPedigreeChartDetail tPedigreeChartDetail : pedigreeChartDetailsVaccinate) { |
| | | tPedigreeChartDetail.setVaccinateId(currentUserId+""); |
| | | } |
| | | pedigreeChartDetailService.updateBatchById( pedigreeChartDetailsVaccinate); |
| | | List<TPedigreeChartDetail> pedigreeChartDetailsPreserve = pedigreeChartDetailService.lambdaQuery().eq(TPedigreeChartDetail::getPreserveId, userId).list(); |
| | | for (TPedigreeChartDetail tPedigreeChartDetail : pedigreeChartDetailsPreserve) { |
| | | tPedigreeChartDetail.setPreserveId(currentUserId+""); |
| | | } |
| | | pedigreeChartDetailService.updateBatchById(pedigreeChartDetailsPreserve); |
| | | List<TProjectTeamStaff> projectTeamStaffs = projectTeamStaffService.lambdaQuery().eq(TProjectTeamStaff::getUserId, userId).list(); |
| | | for (TProjectTeamStaff tProjectTeamStaff : projectTeamStaffs) { |
| | | tProjectTeamStaff.setUserId(currentUserId+""); |
| | | } |
| | | projectTeamStaffService.updateBatchById(projectTeamStaffs); |
| | | List<TStrainReport> strainReports = strainReportService.lambdaQuery().eq(TStrainReport::getCommitId, userId).list(); |
| | | for (TStrainReport tStrainReport : strainReports) { |
| | | tStrainReport.setCommitId(currentUserId+""); |
| | | } |
| | | strainReportService.updateBatchById(strainReports); |
| | | List<TStrainReportDetail> strainReportDetailsExperiment = strainReportDetailService.lambdaQuery().eq(TStrainReportDetail::getExperimentId, userId).list(); |
| | | for (TStrainReportDetail tStrainReportDetail : strainReportDetailsExperiment) { |
| | | tStrainReportDetail.setExperimentId(currentUserId+""); |
| | | } |
| | | strainReportDetailService.updateBatchById(strainReportDetailsExperiment); |
| | | List<TStrainReportDetail> strainReportDetailsEvaluate = strainReportDetailService.lambdaQuery().eq(TStrainReportDetail::getEvaluateId, userId).list(); |
| | | for (TStrainReportDetail tStrainReportDetail : strainReportDetailsEvaluate) { |
| | | tStrainReportDetail.setEvaluateId(currentUserId+""); |
| | | } |
| | | strainReportDetailService.updateBatchById(strainReportDetailsEvaluate); |
| | | List<TTrainLibraryWarehousing> tTrainLibraryWarehousingsHandle = tTrainLibraryWarehousingService.lambdaQuery().eq(TTrainLibraryWarehousing::getHandleId, userId).list(); |
| | | for (TTrainLibraryWarehousing tTrainLibraryWarehousing : tTrainLibraryWarehousingsHandle) { |
| | | tTrainLibraryWarehousing.setHandleId(currentUserId); |
| | | } |
| | | tTrainLibraryWarehousingService.updateBatchById(tTrainLibraryWarehousingsHandle); |
| | | List<TTrainLibraryWarehousing> tTrainLibraryWarehousingsPreserve = tTrainLibraryWarehousingService.lambdaQuery().eq(TTrainLibraryWarehousing::getPreserveId, userId).list(); |
| | | for (TTrainLibraryWarehousing tTrainLibraryWarehousing : tTrainLibraryWarehousingsPreserve) { |
| | | tTrainLibraryWarehousing.setPreserveId(currentUserId); |
| | | } |
| | | tTrainLibraryWarehousingService.updateBatchById(tTrainLibraryWarehousingsPreserve); |
| | | List<TVaccinationSlope> vaccinationSlopesHandle = vaccinationSlopeService.lambdaQuery().eq(TVaccinationSlope::getHandleId, userId).list(); |
| | | for (TVaccinationSlope tVaccinationSlope : vaccinationSlopesHandle) { |
| | | tVaccinationSlope.setHandleId(currentUserId+""); |
| | | } |
| | | vaccinationSlopeService.updateBatchById(vaccinationSlopesHandle); |
| | | List<TVaccinationSlope> vaccinationSlopesPreserve = vaccinationSlopeService.lambdaQuery().eq(TVaccinationSlope::getPreserveId, userId).list(); |
| | | for (TVaccinationSlope tVaccinationSlope : vaccinationSlopesPreserve) { |
| | | tVaccinationSlope.setPreserveId(currentUserId+""); |
| | | } |
| | | return AjaxResult.success(); |
| | | } |
| | | @ApiOperation(value = "启用/禁用") |