修改账号 公司信息
parent
277b61518b
commit
c048af80aa
@ -0,0 +1,15 @@
|
||||
package com.baiye.model.dto;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @author Enzo
|
||||
* @date : 2022/1/21
|
||||
*/
|
||||
@Data
|
||||
public class ThreeUserDTO extends UserDto {
|
||||
|
||||
private List<ThreeUserDTO> children;
|
||||
}
|
@ -0,0 +1,62 @@
|
||||
package com.baiye.modules.system.domain;
|
||||
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
|
||||
import javax.persistence.*;
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* @author Enzo
|
||||
* @date : 2022/1/21
|
||||
*/
|
||||
@Setter
|
||||
@Getter
|
||||
@Entity
|
||||
@Table(name = "sys_company")
|
||||
@ApiModel(value = "公司")
|
||||
public class Company implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 4841596215574045065L;
|
||||
|
||||
@Id
|
||||
@ApiModelProperty(value = "公司id")
|
||||
@Column(name = "id")
|
||||
@GeneratedValue(strategy = GenerationType.IDENTITY)
|
||||
private Long id;
|
||||
|
||||
@ApiModelProperty("AppID")
|
||||
@Column(name = "appid")
|
||||
private String appid;
|
||||
|
||||
@ApiModelProperty("公司名称")
|
||||
@Column(name = "company_name")
|
||||
private String companyName;
|
||||
|
||||
@ApiModelProperty("公司编码")
|
||||
@Column(name = "company_code")
|
||||
private String companyCode;
|
||||
|
||||
@ApiModelProperty("营业执照反面")
|
||||
@Column(name = "business_license_front")
|
||||
private String businessLicenseFront;
|
||||
|
||||
@ApiModelProperty("营业执照反面")
|
||||
@Column(name = "business_license_reverse")
|
||||
private String businessLicenseReverse;
|
||||
|
||||
@ApiModelProperty("用户id")
|
||||
@Column(name = "user_id")
|
||||
private Long userId;
|
||||
|
||||
@ApiModelProperty("是否已经注册")
|
||||
@Column(name = "is_registered")
|
||||
private Integer isRegistered;
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
@ -0,0 +1,35 @@
|
||||
/*
|
||||
* Copyright 2019-2020 Zheng Jie
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
package com.baiye.modules.system.repository;
|
||||
|
||||
import com.baiye.modules.system.domain.Company;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
|
||||
|
||||
/**
|
||||
* @author Enzo
|
||||
* @date 2022-1-21
|
||||
*/
|
||||
public interface CompanyRepository extends JpaRepository<Company, Long>, JpaSpecificationExecutor<Company> {
|
||||
|
||||
|
||||
/**
|
||||
* id查找公司
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
Company findByUserId(Long id);
|
||||
}
|
@ -0,0 +1,42 @@
|
||||
package com.baiye.modules.system.rest;
|
||||
|
||||
import com.baiye.modules.system.service.CompanyService;
|
||||
import com.baiye.modules.system.service.dto.CompanyDto;
|
||||
import com.baiye.modules.system.service.dto.CompanyQueryCriteria;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
import org.springframework.http.HttpStatus;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
/**
|
||||
* @author Enzo
|
||||
* @date : 2022/1/21
|
||||
*/
|
||||
@RestController
|
||||
@Api(tags = "公司管理")
|
||||
@RequiredArgsConstructor
|
||||
@RequestMapping("/api/company")
|
||||
public class CompanyController {
|
||||
|
||||
private final CompanyService companyService;
|
||||
|
||||
@ApiOperation("新增公司")
|
||||
@PostMapping
|
||||
public ResponseEntity<Object> create(@Validated @RequestBody CompanyDto companyDto) {
|
||||
companyService.saveCompany(companyDto);
|
||||
return new ResponseEntity<>(HttpStatus.CREATED);
|
||||
}
|
||||
|
||||
|
||||
@ApiOperation("公司列表")
|
||||
@GetMapping
|
||||
public ResponseEntity<Object> create(CompanyQueryCriteria criteria, Pageable pageable) {
|
||||
return new ResponseEntity<>(companyService.queryAll(criteria, pageable),HttpStatus.OK);
|
||||
}
|
||||
|
||||
|
||||
}
|
@ -0,0 +1,35 @@
|
||||
package com.baiye.modules.system.service;
|
||||
|
||||
import com.baiye.modules.system.domain.Company;
|
||||
import com.baiye.modules.system.service.dto.CompanyDto;
|
||||
import com.baiye.modules.system.service.dto.CompanyQueryCriteria;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* @author Enzo
|
||||
* @date : 2022/1/21
|
||||
*/
|
||||
public interface CompanyService {
|
||||
/**
|
||||
* 保存公司资料
|
||||
* @param companyDto
|
||||
*/
|
||||
void saveCompany(CompanyDto companyDto);
|
||||
|
||||
/**
|
||||
* 条件分页
|
||||
* @param criteria
|
||||
* @param pageable
|
||||
* @return
|
||||
*/
|
||||
Map<String,Object> queryAll(CompanyQueryCriteria criteria, Pageable pageable);
|
||||
|
||||
/**
|
||||
* 用户id查找公司
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
Company findCompanyByUserId(Long id);
|
||||
}
|
@ -0,0 +1,59 @@
|
||||
/*
|
||||
* Copyright 2019-2020 Zheng Jie
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
package com.baiye.modules.system.service.dto;
|
||||
|
||||
import com.baiye.model.base.BaseDTO;
|
||||
import lombok.Getter;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.Setter;
|
||||
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* @author Zheng Jie
|
||||
* @date 2019-03-25
|
||||
*/
|
||||
@Getter
|
||||
@Setter
|
||||
@NoArgsConstructor
|
||||
public class CompanyDto extends BaseDTO implements Serializable {
|
||||
|
||||
|
||||
private static final long serialVersionUID = 2427763395487448366L;
|
||||
|
||||
private Long id;
|
||||
|
||||
@NotBlank
|
||||
private String appid;
|
||||
|
||||
@NotBlank
|
||||
private String companyName;
|
||||
|
||||
@NotBlank
|
||||
private String companyCode;
|
||||
|
||||
@NotBlank
|
||||
private String businessLicenseFront;
|
||||
|
||||
@NotBlank
|
||||
private String businessLicenseReverse;
|
||||
|
||||
private Long userId;
|
||||
|
||||
private Integer isRegistered;
|
||||
|
||||
}
|
@ -0,0 +1,30 @@
|
||||
/*
|
||||
* Copyright 2019-2020 Zheng Jie
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
package com.baiye.modules.system.service.dto;
|
||||
|
||||
import com.baiye.annotation.Query;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* @author Zheng Jie
|
||||
* @date 2019-04-10
|
||||
*/
|
||||
@Data
|
||||
public class CompanyQueryCriteria {
|
||||
|
||||
@Query
|
||||
private Long userId;
|
||||
}
|
@ -0,0 +1,85 @@
|
||||
package com.baiye.modules.system.service.dto;
|
||||
|
||||
import com.baiye.model.base.BaseEntity;
|
||||
import com.baiye.modules.system.domain.Job;
|
||||
import com.baiye.modules.system.domain.Role;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
import javax.validation.constraints.Email;
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.util.Date;
|
||||
import java.util.Objects;
|
||||
import java.util.Set;
|
||||
|
||||
/**
|
||||
* @author Enzo
|
||||
* @date : 2022/1/21
|
||||
*
|
||||
*/
|
||||
@Data
|
||||
public class CreateUserDTO {
|
||||
@NotNull(groups = BaseEntity.Update.class)
|
||||
private Long id;
|
||||
|
||||
@ApiModelProperty(value = "用户角色")
|
||||
private Set<Role> roles;
|
||||
|
||||
@ApiModelProperty(value = "用户岗位")
|
||||
private Set<Job> jobs;
|
||||
|
||||
|
||||
@NotBlank
|
||||
@ApiModelProperty(value = "用户名称")
|
||||
private String username;
|
||||
|
||||
@NotBlank
|
||||
@ApiModelProperty(value = "用户昵称")
|
||||
private String nickName;
|
||||
|
||||
@Email
|
||||
@NotBlank
|
||||
@ApiModelProperty(value = "邮箱")
|
||||
private String email;
|
||||
|
||||
@NotBlank
|
||||
@ApiModelProperty(value = "电话号码")
|
||||
private String phone;
|
||||
|
||||
@ApiModelProperty(value = "用户性别")
|
||||
private String gender;
|
||||
|
||||
@ApiModelProperty(value = "头像真实名称",hidden = true)
|
||||
private String avatarName;
|
||||
|
||||
@ApiModelProperty(value = "头像存储的路径", hidden = true)
|
||||
private String avatarPath;
|
||||
|
||||
@ApiModelProperty(value = "密码")
|
||||
private String password;
|
||||
|
||||
@NotNull
|
||||
@ApiModelProperty(value = "是否启用")
|
||||
private Boolean enabled;
|
||||
|
||||
|
||||
@ApiModelProperty(value = "最后修改密码的时间", hidden = true)
|
||||
private Date pwdResetTime;
|
||||
|
||||
@ApiModelProperty(value = "创建者id")
|
||||
private Long whichUserId;
|
||||
|
||||
@ApiModelProperty(value = "文件地址")
|
||||
private MultipartFile file;
|
||||
|
||||
|
||||
|
||||
@Override
|
||||
public int hashCode() {
|
||||
return Objects.hash(id, username);
|
||||
}
|
||||
|
||||
|
||||
}
|
@ -0,0 +1,56 @@
|
||||
package com.baiye.modules.system.service.impl;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import com.baiye.constant.DefaultNumberConstants;
|
||||
import com.baiye.modules.system.domain.Company;
|
||||
import com.baiye.modules.system.repository.CompanyRepository;
|
||||
import com.baiye.modules.system.service.CompanyService;
|
||||
import com.baiye.modules.system.service.dto.CompanyDto;
|
||||
import com.baiye.modules.system.service.dto.CompanyQueryCriteria;
|
||||
import com.baiye.modules.system.service.mapstruct.CompanyMapper;
|
||||
import com.baiye.util.PageUtil;
|
||||
import com.baiye.util.QueryHelp;
|
||||
import com.baiye.util.SecurityUtils;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.data.domain.Page;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* @author Enzo
|
||||
* @date : 2022/1/21
|
||||
*/
|
||||
@Service
|
||||
@RequiredArgsConstructor
|
||||
public class CompanyServiceImpl implements CompanyService {
|
||||
|
||||
private final CompanyRepository companyRepository;
|
||||
|
||||
private final CompanyMapper companyMapper;
|
||||
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public void saveCompany(CompanyDto companyDto) {
|
||||
Company company = new Company();
|
||||
BeanUtil.copyProperties(companyDto, company);
|
||||
company.setUserId(SecurityUtils.getCurrentUserId());
|
||||
company.setIsRegistered(DefaultNumberConstants.ONE_NUMBER);
|
||||
companyRepository.save(company);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Map<String, Object> queryAll(CompanyQueryCriteria criteria, Pageable pageable) {
|
||||
Page<Company> page = companyRepository.findAll
|
||||
((root, criteriaQuery, criteriaBuilder) -> QueryHelp.getPredicate(root, criteria, criteriaBuilder), pageable);
|
||||
return PageUtil.toPage(page.map(companyMapper::toDto).getContent(), page.getTotalElements());
|
||||
}
|
||||
|
||||
@Override
|
||||
public Company findCompanyByUserId(Long id) {
|
||||
return companyRepository.findByUserId(id);
|
||||
}
|
||||
}
|
@ -0,0 +1,15 @@
|
||||
package com.baiye.modules.system.service.mapstruct;
|
||||
|
||||
import com.baiye.model.base.BaseMapper;
|
||||
import com.baiye.modules.system.domain.Company;
|
||||
import com.baiye.modules.system.service.dto.CompanyDto;
|
||||
import org.mapstruct.Mapper;
|
||||
import org.mapstruct.ReportingPolicy;
|
||||
|
||||
/**
|
||||
* @author Zheng Jie
|
||||
* @date 2019-03-25
|
||||
*/
|
||||
@Mapper(componentModel = "spring",unmappedTargetPolicy = ReportingPolicy.IGNORE)
|
||||
public interface CompanyMapper extends BaseMapper<CompanyDto, Company> {
|
||||
}
|
Loading…
Reference in New Issue