Browse Source

1.借阅模块 新增借还记录、借阅者管理

master
xia 3 years ago
parent
commit
ae4d6500ee
  1. 8
      archives/src/main/java/com/storeroom/modules/archives/controller/BorrowController.java
  2. 4
      archives/src/main/java/com/storeroom/modules/archives/domain/Borrower.java
  3. 8
      archives/src/main/java/com/storeroom/modules/archives/repository/BorrowerRepository.java
  4. 2
      archives/src/main/java/com/storeroom/modules/archives/service/BorrowService.java
  5. 2
      archives/src/main/java/com/storeroom/modules/archives/service/dto/BorrowerDTO.java
  6. 23
      archives/src/main/java/com/storeroom/modules/archives/service/impl/BorrowServiceImpl.java

8
archives/src/main/java/com/storeroom/modules/archives/controller/BorrowController.java

@ -202,4 +202,12 @@ public class BorrowController {
return ApiResponse.success(borrowService.editBorrower(dto));
}
@ApiOperation("删除借阅者")
@PostMapping("/deleteBorrower")
public ApiResponse<Object> deleteBorrower(
@Validated @RequestBody List<String> borrowersId
){
return ApiResponse.success(borrowService.deleteBorrower(borrowersId));
}
}

4
archives/src/main/java/com/storeroom/modules/archives/domain/Borrower.java

@ -45,4 +45,8 @@ public class Borrower extends BaseEntity implements Serializable {
@ApiModelProperty(value = "证件号")
private String idcard;
@Column(name = "is_delete")
@ApiModelProperty(value = "是否删除")
private Boolean isDelete;
}

8
archives/src/main/java/com/storeroom/modules/archives/repository/BorrowerRepository.java

@ -4,6 +4,7 @@ import com.storeroom.modules.archives.domain.Borrower;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.Modifying;
import org.springframework.data.jpa.repository.Query;
import java.util.List;
@ -18,8 +19,13 @@ public interface BorrowerRepository extends JpaRepository<Borrower, String> {
Borrower findBorrowerByNameAndPhone(String borrowerName,String phone);
@Query(nativeQuery = true,
value = "select * from borrower where if(?1 is null,1=1,(borrower_name like ?1 or borrower_name_py like ?1)) " +
value = "select * from borrower where is_delete = false " +
"and if(?1 is null,1=1,(borrower_name like ?1 or borrower_name_py like ?1)) " +
"and if(?2 is null,1=1,phone like ?2) order by create_by desc ")
Page<Borrower> initBorrower(String query, String phone, Pageable page);
@Modifying
@Query("update Borrower set isDelete = true where id in ?1 ")
void deleteAllByIds(List<String> borrowerIds);
}

2
archives/src/main/java/com/storeroom/modules/archives/service/BorrowService.java

@ -57,5 +57,7 @@ public interface BorrowService {
Object initBorrower(String query,String phone,Pageable page);
//编辑借阅者信息
Object editBorrower(BorrowerDTO dto);
//批量删除借阅者
Object deleteBorrower(List<String> borrowerIds);
}

2
archives/src/main/java/com/storeroom/modules/archives/service/dto/BorrowerDTO.java

@ -18,5 +18,7 @@ public class BorrowerDTO {
private String cardType;
//证件号
private String idcard;
//是否删除
private Boolean isDelete;
}

23
archives/src/main/java/com/storeroom/modules/archives/service/impl/BorrowServiceImpl.java

@ -80,6 +80,7 @@ public class BorrowServiceImpl implements BorrowService {
if(null != query)
return query;
borrower.setBorrowerNamePy(ChinesePinyinUtil.getPinYinHeadChar(borrower.getBorrowerName()));
borrower.setIsDelete(false);
return borrowerRepository.save(borrower);
}
@ -248,8 +249,28 @@ public class BorrowServiceImpl implements BorrowService {
@Transactional
public Object editBorrower(BorrowerDTO dto) {
Borrower borrower = null;
if(!StringUtils.isEmpty(dto.getId())){
borrower = borrowerRepository.findById(dto.getId()).get();
}else {
borrower = borrowerRepository.findBorrowerByNameAndPhone(dto.getBorrowerName(),dto.getPhone());
if(null == borrower){
borrower = new Borrower();
}
}
borrower.setBorrowerName(dto.getBorrowerName());
borrower.setBorrowerNamePy(ChinesePinyinUtil.getPinYinHeadChar(dto.getBorrowerName()));
borrower.setDepartment(dto.getDepartment());
borrower.setCardType(dto.getCardType());
borrower.setIdcard(dto.getIdcard());
borrower.setIsDelete(false);
return borrowerRepository.saveAndFlush(borrower);
}
return null;
@Override
@Transactional
public Object deleteBorrower(List<String> borrowerIds) {
borrowerRepository.deleteAllByIds(borrowerIds);
return borrowerIds.size();
}

Loading…
Cancel
Save