feature 1.如果组织信息用户信息没有则使用订单的数据

release
zhenghaiyang@ele-cloud.com 2 years ago
parent 667cfa7a54
commit 45e1f1d3c2
  1. 3
      order-management-base-service/src/main/java/com/dxhy/order/baseservice/module/thirdservice/user/service/UserInfoService.java
  2. 24
      order-management-base-service/src/main/java/com/dxhy/order/baseservice/module/thirdservice/user/service/impl/UserInfoServiceImpl.java
  3. 3
      order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/order/service/impl/GenerateReadyOpenOrderServiceImpl.java
  4. 3
      order-management-consumer/src/main/java/com/dxhy/order/consumer/openapi/api/InvoiceRestApiV6.java

@ -104,4 +104,7 @@ public interface UserInfoService {
*/
DeptEntity querySysDeptEntityFromUrl(String taxpayerCode, String taxpayerName, String entId);
DeptEntity querySysDeptEntity(DeptEntity deptEntity);
}

@ -23,6 +23,7 @@ import com.dxhy.order.constant.OrderManagementConstant;
import com.dxhy.order.model.R;
import com.dxhy.order.utils.HttpUtils;
import com.dxhy.order.utils.JsonUtils;
import com.google.common.collect.Lists;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
@ -437,6 +438,29 @@ public class UserInfoServiceImpl implements UserInfoService {
return null;
}
@Override
public DeptEntity querySysDeptEntity(DeptEntity deptEntity) {
List<String> groupIdList = Lists.newArrayList();
groupIdList.add(deptEntity.getDeptId());
List<GroupManagementEntity> entityList = groupManagementService.queryByGroupIdList(groupIdList);
if (entityList != null && entityList.size() > 0) {
//选出默认项
Optional<GroupManagementEntity> groupManagementEntityOptional = entityList.stream()
.filter(groupManagementEntity -> OrderInfoEnum.ORDER_KPZZGL_SFMRX_0.getKey().equals(groupManagementEntity.getDefaultItem()))
.findFirst();
GroupManagementEntity groupManagementEntity = groupManagementEntityOptional.orElseGet(() -> entityList.get(0));
deptEntity.setTaxpayerCode(groupManagementEntity.getXhfNsrsbh());
//todo 虚拟组织:组织名称和销方名称公用此字段会有问题,后期优化
deptEntity.setName(groupManagementEntity.getGroupName());
deptEntity.setTaxpayerName(groupManagementEntity.getXhfMc());
deptEntity.setTaxpayerAddress(groupManagementEntity.getXhfDz());
deptEntity.setTaxpayerPhone(groupManagementEntity.getXhfDh());
deptEntity.setTaxpayerBank(groupManagementEntity.getXhfYh());
deptEntity.setTaxpayerAccount(groupManagementEntity.getXhfZh());
}
return deptEntity;
}
public UserEntity ssoUserTransUserEntity(SsoUser ssoUser) {
UserEntity userEntity = new UserEntity();

@ -462,13 +462,14 @@ public class GenerateReadyOpenOrderServiceImpl implements GenerateReadyOpenOrder
if (StringUtils.isBlank(customLimit)) {
limit = taxDiskLimit;
} else {
//不含稅
if (StringUtils.equals("0", hsbz)) {
if (new BigDecimal(customLimit).compareTo(new BigDecimal(taxDiskLimit)) > 0) {
throw new OrderSplitException(ConfigureConstant.STRING_9999, "自定义限额必须小于等于票种的单张开票限额");
}
limit = customLimit;
} else {
//计算含税金额,将明细行所有金额和税额相加
//计算含税金额,将明细行所有金额和税额相加
OrderInfo orderInfo = common.getOrderInfo();
String hjbhsje = orderInfo.getHjbhsje();
if (new BigDecimal(hjbhsje).compareTo(new BigDecimal(taxDiskLimit)) > 0) {

@ -232,6 +232,9 @@ public class InvoiceRestApiV6 {
poCommonResponseParam.setES_OUTPUT(esOutput);
return JsonUtils.getInstance().toJsonString(poCommonResponseParam);
}else {
if(StringUtils.isBlank(deptEntity.getInvoiceNsrsbh()) && StringUtils.isNotBlank(deptEntity.getDeptId())){
deptEntity = userInfoService.querySysDeptEntity(deptEntity);
}
DdpcxxReqBO ddpcxxReq = BeanTransitionUtils.transitionPoKpReq(poCommonRequestParam,deptEntity);
DdpcxxRspV5 ddpcxxRspV5 = interfaceServiceV6.generateQdInvoiceV6(ddpcxxReq, secretId, null);
PoCommonResponseParam poCommonResponseParam = BeanTransitionUtils.transitionPoKpResp(ddpcxxRspV5);

Loading…
Cancel
Save