Commit a632d1d3 by jianan

银盾在线佣金关联保单列表

parent 504be0cf
......@@ -479,7 +479,7 @@ public class PractitionerController {
}
/**
* 经纪人薪资单明细查询接口
* 薪资单明细保单列表查询接口
* @param requestVO 请求信息
* @return PolicyInfoQueryResponseVO
*/
......@@ -493,7 +493,7 @@ public class PractitionerController {
}
/**
* 薪资单明细保单列表查询接口
* 经纪人薪资单明细查询接口
* @param requestVO 请求信息
* @return PolicyInfoQueryResponseVO
*/
......
......@@ -20,6 +20,9 @@ import com.yd.api.practitioner.vo.subordinate.QueryTeamMemberDetailRequestVO;
import com.yd.api.practitioner.vo.subordinate.QueryTeamMemberDetailResponseVO;
import com.yd.api.practitioner.vo.subordinate.TeamMemberDetail;
import com.yd.api.result.CommonResult;
import com.yd.dal.entity.agms.fortune.FortunePayToOrderInfo;
import com.yd.dal.entity.agms.fortune.WithdrawLabelInfo;
import com.yd.dal.entity.agms.fortune.WithdrawQueryInfo;
import com.yd.dal.entity.customer.AclFileUpload;
import com.yd.dal.entity.customer.AclPractitioner;
import com.yd.dal.entity.customer.practitioner.PractitionerBasicInfo;
......@@ -35,6 +38,7 @@ import com.yd.dal.entity.product.ProductE;
import com.yd.dal.entity.product.ProductPlan;
import com.yd.dal.mapper.practitioner.AgAclLifePractitionerSalaryMapper;
import com.yd.dal.mapper.customer.AclPractitionerMapper;
import com.yd.dal.service.agms.AgmsFortuneDALService;
import com.yd.dal.service.customer.AclFileUploadDALService;
import com.yd.dal.service.customer.AclPractitionerDALService;
import com.yd.dal.service.meta.MdDropOptionsDALService;
......@@ -55,6 +59,7 @@ import com.yd.rmi.n22.salary.pojo.SalaryDetails;
import com.yd.rmi.n22.salary.pojo.SalaryDetailsSearchRequestBody;
import com.yd.rmi.n22.salary.pojo.SalaryDetailsSearchResponseBody;
import com.yd.rmi.n22.salary.pojo.SalaryDetailsSearchResponseVO;
import com.yd.rmi.n22.salary.pojo.searchstaffsalarydetails.OtherCommission;
import com.yd.rmi.n22.salary.pojo.searchstaffsalarydetails.SearchStaffSalaryDetailsRequestBody;
import com.yd.rmi.n22.salary.pojo.searchstaffsalarydetails.SearchStaffSalaryDetailsResponseBody;
import com.yd.rmi.n22.salary.pojo.searchstaffsalarydetails.SearchStaffSalaryDetailsResponseVO;
......@@ -107,6 +112,8 @@ public class PractitionerBasicInfoServiceImpl implements PractitionerBasicInfoSe
private N22SalaryService n22SalaryService;
@Autowired
private AclPractitionerMapper practitionerMapper;
@Autowired
private AgmsFortuneDALService agmsFortuneDalService;
@Override
public PolicyListQueryResponseVO policyListQuery(PolicyListQueryRequestVO requestVO) {
......@@ -697,6 +704,8 @@ public class PractitionerBasicInfoServiceImpl implements PractitionerBasicInfoSe
SearchStaffSalaryDetailsResponseVO searchStaffSalaryDetailsResponseVO = n22SalaryService.searchStaffSalaryDetails(requestVO);
if ("查询成功".equals(searchStaffSalaryDetailsResponseVO.getResponseHead().getMessage())) {
responseBody = searchStaffSalaryDetailsResponseVO.getResponseBody();
// 查询银盾在线佣金的保单列表
this.queryYdOnlineCommission(requestVO, responseBody);
responseBody.setCommonResult(new CommonResult(true, ZHBErrorConfig.getErrorInfo("800000")));
} else {
......@@ -705,6 +714,51 @@ public class PractitionerBasicInfoServiceImpl implements PractitionerBasicInfoSe
return responseBody;
}
private void queryYdOnlineCommission(SearchStaffSalaryDetailsRequestBody requestVO, SearchStaffSalaryDetailsResponseBody responseBody) {
WithdrawQueryInfo info = new WithdrawQueryInfo();
info.setPractitionerId(requestVO.getPractitionerId());
info.setPayoutYearmonth(this.getPayoutYearmonth(requestVO));
info.setCommissionPayoutStatus(Long.valueOf("2"));
List<WithdrawLabelInfo> withdraws = agmsFortuneDalService.transformForWithdrawLabel(info);
// 有银盾在线佣金
if (CollectionUtils.isNotEmpty(withdraws)) {
Long payId = withdraws.get(0).getPayId();
//查询所有订单,并根据支付id标记本次提现订单
List<FortunePayToOrderInfo> fortunePayToOrderInfos = agmsFortuneDalService.fortunePayToOrder(new Long[]{payId});
List<OtherCommission> otherCommissionList = this.createOtherCommissionList(fortunePayToOrderInfos);
responseBody.setOtherCommissionList(otherCommissionList);
}
}
private List<OtherCommission> createOtherCommissionList(List<FortunePayToOrderInfo> fortunePayToOrderInfos) {
List<OtherCommission> list = new ArrayList<>();
for (FortunePayToOrderInfo orderInfo : fortunePayToOrderInfos) {
OtherCommission otherCommission = new OtherCommission();
otherCommission.setCommissionName("银盾在线佣金");
otherCommission.setCommission(String.valueOf(orderInfo.getReferralAmount()));
list.add(otherCommission);
}
return list;
}
private String getPayoutYearmonth(SearchStaffSalaryDetailsRequestBody requestVO) {
String years = requestVO.getYears();
String month = requestVO.getMonth();
String payoutYearmonth = "";
if (month.length() == 2) {
payoutYearmonth = years + "-" + month;
} else if (month.length() == 1) {
payoutYearmonth = years + "-0" + month;
}
return payoutYearmonth;
}
private QuerySalaryDetailResponseVO createQuerySalaryDetailResponseVO(
QuerySalaryDetailResponseVO responseVO, SalaryDetailsSearchResponseBody staffSalaryDetails) {
......@@ -721,8 +775,8 @@ public class PractitionerBasicInfoServiceImpl implements PractitionerBasicInfoSe
if (CollectionUtils.isNotEmpty(salaryDetailsList)) {
// 代扣个人所得税
Double tax_free_comis = salaryDetailsList.get(0).getTax_free_comis();
responseVO.setD(tax_free_comis.toString());
Double total_tax = salaryDetailsList.get(0).getTotal_tax();
responseVO.setD(total_tax.toString());
// 佣金合计
for (SalaryDetails item : salaryDetailsList) {
abc = abc.add(BigDecimal.valueOf(item.getCommission()));
......
......@@ -12,5 +12,7 @@ public class SalaryDetail {
private Double total_commission;//年度累计应税所得
private Double total_personal_tax;//累计应扣所得税
private Double total_paid;//累计已扣所得税
private Double tax_free_comis;//本期应扣所得税
private Double total_tax;//本期应扣所得税
private Double after_tax_comis;//税后应发
}
......@@ -60,5 +60,6 @@ public class SalaryDetails {
private Double total_commission;
private Double total_personal_tax;
private Double total_paid;
private Double total_tax;
private Double after_tax_comis;
}
......@@ -6,6 +6,7 @@ import java.util.List;
@Data
public class SearchStaffSalaryDetailsRequestBody {
private String Epid;
private String agent_id;
......@@ -14,5 +15,6 @@ public class SearchStaffSalaryDetailsRequestBody {
private String month;
private Long practitionerId;
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment