|
@@ -31,11 +31,9 @@ import com.qunzhixinxi.hnqz.admin.api.entity.SysUser;
|
|
import com.qunzhixinxi.hnqz.admin.config.TaxNotifyConfig;
|
|
import com.qunzhixinxi.hnqz.admin.config.TaxNotifyConfig;
|
|
import com.qunzhixinxi.hnqz.admin.config.UpmsConfig;
|
|
import com.qunzhixinxi.hnqz.admin.config.UpmsConfig;
|
|
import com.qunzhixinxi.hnqz.admin.entity.*;
|
|
import com.qunzhixinxi.hnqz.admin.entity.*;
|
|
-import com.qunzhixinxi.hnqz.admin.entity.input.SettleAmountMonitorInput;
|
|
|
|
import com.qunzhixinxi.hnqz.admin.entity.input.SettleNoteStatusOutput;
|
|
import com.qunzhixinxi.hnqz.admin.entity.input.SettleNoteStatusOutput;
|
|
import com.qunzhixinxi.hnqz.admin.entity.output.SettleAmountMonitorOutput;
|
|
import com.qunzhixinxi.hnqz.admin.entity.output.SettleAmountMonitorOutput;
|
|
import com.qunzhixinxi.hnqz.admin.entity.output.WmTaskSettleNoteOutput;
|
|
import com.qunzhixinxi.hnqz.admin.entity.output.WmTaskSettleNoteOutput;
|
|
-import com.qunzhixinxi.hnqz.admin.enums.ChannelEnum;
|
|
|
|
import com.qunzhixinxi.hnqz.admin.enums.GigTypeEnum;
|
|
import com.qunzhixinxi.hnqz.admin.enums.GigTypeEnum;
|
|
import com.qunzhixinxi.hnqz.admin.enums.SubjectLocation;
|
|
import com.qunzhixinxi.hnqz.admin.enums.SubjectLocation;
|
|
import com.qunzhixinxi.hnqz.admin.enums.SubjectTypeEnum;
|
|
import com.qunzhixinxi.hnqz.admin.enums.SubjectTypeEnum;
|
|
@@ -75,6 +73,7 @@ import org.springframework.stereotype.Service;
|
|
import org.springframework.web.client.RestTemplate;
|
|
import org.springframework.web.client.RestTemplate;
|
|
|
|
|
|
import java.math.BigDecimal;
|
|
import java.math.BigDecimal;
|
|
|
|
+import java.math.RoundingMode;
|
|
import java.time.LocalDate;
|
|
import java.time.LocalDate;
|
|
import java.time.LocalDateTime;
|
|
import java.time.LocalDateTime;
|
|
import java.util.*;
|
|
import java.util.*;
|
|
@@ -570,7 +569,7 @@ public class WmScorePackageSettleNoteServiceImpl extends ServiceImpl<WmScorePack
|
|
config.setAppSecret(sysDeptSub.getAppSecret());
|
|
config.setAppSecret(sysDeptSub.getAppSecret());
|
|
config.setQueryUrl(sysDeptSub.getQueryUrl());
|
|
config.setQueryUrl(sysDeptSub.getQueryUrl());
|
|
String subjectName = sysDeptSub.getSubjectName();
|
|
String subjectName = sysDeptSub.getSubjectName();
|
|
- return settleByRenLiJia(note, config, wmScorePackage, subjectName);
|
|
|
|
|
|
+ return settleByRenLiJia(note, config, wmScorePackage, subjectName, sysDeptSub.getServiceCharge());
|
|
|
|
|
|
}
|
|
}
|
|
// 自由职家
|
|
// 自由职家
|
|
@@ -701,7 +700,7 @@ public class WmScorePackageSettleNoteServiceImpl extends ServiceImpl<WmScorePack
|
|
config.setAppSecret(sysDeptSub.getAppSecret());
|
|
config.setAppSecret(sysDeptSub.getAppSecret());
|
|
config.setQueryUrl(sysDeptSub.getQueryUrl());
|
|
config.setQueryUrl(sysDeptSub.getQueryUrl());
|
|
String subjectName = sysDeptSub.getSubjectName();
|
|
String subjectName = sysDeptSub.getSubjectName();
|
|
- settleByRenLiJia(note, config, wmScorePackage, subjectName);
|
|
|
|
|
|
+ settleByRenLiJia(note, config, wmScorePackage, subjectName, sysDeptSub.getServiceCharge());
|
|
|
|
|
|
}
|
|
}
|
|
// 自由职家
|
|
// 自由职家
|
|
@@ -1890,7 +1889,8 @@ public class WmScorePackageSettleNoteServiceImpl extends ServiceImpl<WmScorePack
|
|
return R.ok();
|
|
return R.ok();
|
|
}
|
|
}
|
|
|
|
|
|
- private R settleByRenLiJia(WmScorePackageSettleNote note, DingConfig config, WmScorePackage wmScorePackage, String subjectName) {
|
|
|
|
|
|
+ private R settleByRenLiJia(WmScorePackageSettleNote note, DingConfig config, WmScorePackage wmScorePackage,
|
|
|
|
+ String subjectName, BigDecimal serviceCharge) {
|
|
|
|
|
|
SysUser sysUser = sysUserService.getById(note.getUserId());
|
|
SysUser sysUser = sysUserService.getById(note.getUserId());
|
|
|
|
|
|
@@ -1910,7 +1910,11 @@ public class WmScorePackageSettleNoteServiceImpl extends ServiceImpl<WmScorePack
|
|
|
|
|
|
List jsdList = new ArrayList();
|
|
List jsdList = new ArrayList();
|
|
Map jsdMap = new HashMap();
|
|
Map jsdMap = new HashMap();
|
|
- jsdMap.put("amount", note.getSettleAmount().setScale(2, BigDecimal.ROUND_HALF_UP).toPlainString());
|
|
|
|
|
|
+ // 服务费率
|
|
|
|
+ BigDecimal _serviceCharge = serviceCharge == null ? BigDecimal.ZERO : serviceCharge;
|
|
|
|
+ // 实际结算金额(结算金额*(1+服务费率))
|
|
|
|
+ BigDecimal actualAmount = note.getSettleAmount().multiply(_serviceCharge.add(BigDecimal.ONE));
|
|
|
|
+ jsdMap.put("amount", actualAmount.setScale(2, RoundingMode.HALF_EVEN).toPlainString());
|
|
jsdMap.put("mobile", sysUser.getPhone());
|
|
jsdMap.put("mobile", sysUser.getPhone());
|
|
jsdMap.put("idCard", sysUser.getIdCardNumber());
|
|
jsdMap.put("idCard", sysUser.getIdCardNumber());
|
|
jsdMap.put("name", sysUser.getRealname());
|
|
jsdMap.put("name", sysUser.getRealname());
|