Sfoglia il codice sorgente

Merge remote-tracking branch 'origin/master'

master
梁超 1 mese fa
parent
commit
20a83d119e

+ 3
- 0
gly-base-core/src/main/java/cn/com/taiji/core/repo/jpa/user/AccountInfoRepo.java Vedi File



@Query(nativeQuery = true, value = "select uai.OPEN_ID from QTK_STAFF s, USER_ACCOUNT_INFO uai where s.MOBILE=uai.ACCOUNT and s.STAFF_ID = ?1") @Query(nativeQuery = true, value = "select uai.OPEN_ID from QTK_STAFF s, USER_ACCOUNT_INFO uai where s.MOBILE=uai.ACCOUNT and s.STAFF_ID = ?1")
String getOpenIdByStaffId(String staffId); String getOpenIdByStaffId(String staffId);

@Query("SELECT openId FROM AccountInfo WHERE idNum = ?1")
List<String> findByIdNum(String idNum);
} }

+ 3
- 3
zhywpt-app-managew/src/main/java/cn/com/taiji/managew/dto/bill/title/BillTitleInfoEditRequestDTO.java Vedi File

private String bankAccount; private String bankAccount;


/** 客户id*/ /** 客户id*/
@ApiModelProperty(value = "客户id")
@NotBlank(message = "客户id不能为空")
private String customerId;
@ApiModelProperty(value = "openId")
@NotBlank(message = "openId不能为空")
private String openId;
} }

+ 33
- 11
zhywpt-app-managew/src/main/java/cn/com/taiji/managew/manager/bill/BillTitleInfoManagerImpl.java Vedi File

import cn.com.taiji.common.model.dao.Pagination; import cn.com.taiji.common.model.dao.Pagination;
import cn.com.taiji.common.pub.StringTools; import cn.com.taiji.common.pub.StringTools;
import cn.com.taiji.core.entity.bill.BillTitleInfo; import cn.com.taiji.core.entity.bill.BillTitleInfo;
import cn.com.taiji.core.repo.jpa.basic.QtkCustomerInfoRepo;
import cn.com.taiji.core.repo.jpa.bill.BillTitleInfoRepo; import cn.com.taiji.core.repo.jpa.bill.BillTitleInfoRepo;
import cn.com.taiji.core.repo.jpa.user.AccountInfoRepo;
import cn.com.taiji.managew.dto.bill.title.BillTitleInfoDeleteRequestDTO; import cn.com.taiji.managew.dto.bill.title.BillTitleInfoDeleteRequestDTO;
import cn.com.taiji.managew.dto.bill.title.BillTitleInfoDetailRequestDTO; import cn.com.taiji.managew.dto.bill.title.BillTitleInfoDetailRequestDTO;
import cn.com.taiji.managew.dto.bill.title.BillTitleInfoEditRequestDTO; import cn.com.taiji.managew.dto.bill.title.BillTitleInfoEditRequestDTO;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;


import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List; import java.util.List;


import static org.aspectj.util.LangUtil.isEmpty; import static org.aspectj.util.LangUtil.isEmpty;
private BillTitleInfoRepo billTitleInfoRepo; private BillTitleInfoRepo billTitleInfoRepo;


@Autowired @Autowired
private QtkCustomerInfoRepo customerInfoRepo;
private AccountInfoRepo accountInfoRepo;



@Override @Override
public Pagination page(BillTitleInfoPageRequestDTO request) throws ManagerException { public Pagination page(BillTitleInfoPageRequestDTO request) throws ManagerException {
BillTitleInfoPageRequest req = new BillTitleInfoPageRequest(); BillTitleInfoPageRequest req = new BillTitleInfoPageRequest();
if (StringTools.hasText(request.getCustomerNo())) { if (StringTools.hasText(request.getCustomerNo())) {
List<String> customerIds = customerInfoRepo.findCustomerIdByIdNum(request.getCustomerNo());
if (!isEmpty(customerIds)) req.setCustomerIds(customerIds);
List<String> openIds = accountInfoRepo.findByIdNum(request.getCustomerNo());
if (!isEmpty(openIds)) req.setOpenIds(openIds);
} }
BeanUtils.copyProperties(request, req); BeanUtils.copyProperties(request, req);
return billTitleInfoRepo.page(req); return billTitleInfoRepo.page(req);
if (billTitleInfo == null) throw new ManagerException("抬头不存在"); if (billTitleInfo == null) throw new ManagerException("抬头不存在");


// 查询当前客户是否有默认抬头 // 查询当前客户是否有默认抬头
List<BillTitleInfo> titles = billTitleInfoRepo.findByCIdAndIsDefaultAndTitleType(req.getCustomerId(), 1, billTitleInfo.getTitleType());
List<BillTitleInfo> titles = billTitleInfoRepo.findByCIdAndIsDefault(req.getOpenId(), 1);
if (isEmpty(titles)) { if (isEmpty(titles)) {
// 没有默认抬头,则设置当前抬头为默认 // 没有默认抬头,则设置当前抬头为默认
billTitleInfo.setIsDefault(1); billTitleInfo.setIsDefault(1);
}else if (req.getIsDefault() == 1) { }else if (req.getIsDefault() == 1) {
// 如果已经有默认抬头且修改为默认抬头,则取消其他默认抬头 // 如果已经有默认抬头且修改为默认抬头,则取消其他默认抬头
billTitleInfoRepo.updateIsDefault(req.getCustomerId(), billTitleInfo.getTitleType());
billTitleInfoRepo.updateIsDefault(req.getOpenId());
billTitleInfo.setIsDefault(1); billTitleInfo.setIsDefault(1);
} }
// 拷贝参数 // 拷贝参数
BeanUtils.copyProperties(req, billTitleInfo, "id", "isDefault", "customerinfoId");
BeanUtils.copyProperties(req, billTitleInfo, "id", "isDefault", "openId");
billTitleInfo.setUpdateTime(LocalDateTime.now()); billTitleInfo.setUpdateTime(LocalDateTime.now());
billTitleInfoRepo.saveAndFlush(billTitleInfo); billTitleInfoRepo.saveAndFlush(billTitleInfo);
} }


@Override @Override
public void delete(BillTitleInfoDeleteRequestDTO req) throws ManagerException { public void delete(BillTitleInfoDeleteRequestDTO req) throws ManagerException {
BillTitleInfo billTitleInfo = billTitleInfoRepo.findById(req.getId()).orElse(null);
if (billTitleInfo == null) throw new ManagerException("抬头不存在");
billTitleInfo.setValid(false);
billTitleInfoRepo.saveAndFlush(billTitleInfo);
BillTitleInfo titleInfo = billTitleInfoRepo.findById(req.getId()).orElse(null);
if (titleInfo == null) throw new ManagerException("抬头不存在");
//处理是否默认
if (titleInfo.getIsDefault() == 1) {
BillTitleInfoPageRequest request = new BillTitleInfoPageRequest();
request.setOpenIds(new ArrayList<>(Collections.singleton(titleInfo.getOpenId())));
List<BillTitleInfo> list = billTitleInfoRepo.list(request);
if (!list.isEmpty()) {
// 找到最新一条,并且id不是titleInfo的id
BillTitleInfo newDefaultTitle = list.stream()
.filter(t -> !t.getId().equals(titleInfo.getId()))
.findFirst().orElse( null); // 取第一个,如果没有就取null
if(newDefaultTitle != null) {
newDefaultTitle.setIsDefault(1);
newDefaultTitle.setUpdateTime(LocalDateTime.now());
billTitleInfoRepo.saveAndFlush(newDefaultTitle);
}
}
}
titleInfo.setValid(false);
titleInfo.setIsDefault(0);
titleInfo.setUpdateTime(LocalDateTime.now());
billTitleInfoRepo.saveAndFlush(titleInfo);
} }
} }

+ 2
- 2
zhywpt-app-managew/src/main/java/cn/com/taiji/managew/repo/jpa/request/bill/BillTitleInfoPageRequest.java Vedi File

private String userMobile;// 客户手机号 private String userMobile;// 客户手机号
private String buyerName;// 抬头名称 private String buyerName;// 抬头名称
private String buyerTaxNo;// 纳税人识别号 private String buyerTaxNo;// 纳税人识别号
private List<String> customerIds;// 客户信息ID
private List<String> openIds;// openId


@Override @Override
public HqlBuilder toSelectHql() { public HqlBuilder toSelectHql() {
hql.append(" and userMobile=:userMobile", userMobile); hql.append(" and userMobile=:userMobile", userMobile);
hql.append(" and buyerName like :buyerName", buyerName); hql.append(" and buyerName like :buyerName", buyerName);
hql.append(" and buyerTaxNo=:buyerTaxNo", buyerTaxNo); hql.append(" and buyerTaxNo=:buyerTaxNo", buyerTaxNo);
hql.append(" and customerId in :customerIds", customerIds);
hql.append(" and openId in :openIds", openIds);
hql.append(" and valid =:valid", true); hql.append(" and valid =:valid", true);
return hql; return hql;
} }

Loading…
Annulla
Salva