来款同步
This commit is contained in:
+37
-3
@@ -1,7 +1,11 @@
|
||||
package com.jero.payment.controller;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.text.ParseException;
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import javax.annotation.Resource;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
|
||||
@@ -12,11 +16,13 @@ import com.jero.common.system.query.QueryGenerator;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.jero.common.util.AuthenticationUtils;
|
||||
import com.jero.mail.entity.PayMailBill;
|
||||
import com.jero.mail.service.IPayMailBillService;
|
||||
import com.jero.payment.entity.PayPaymentRecord;
|
||||
import com.jero.payment.service.IPayPaymentRecordService;
|
||||
import com.jero.project.entity.PayCommonProject;
|
||||
import com.jero.project.vo.PayCommonProjectOutput;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
@@ -39,6 +45,8 @@ public class PayPaymentRecordController extends JeroController<PayPaymentRecord,
|
||||
private IPayPaymentRecordService payPaymentRecordService;
|
||||
@Autowired
|
||||
private IPayMailBillService payMailBillService;
|
||||
@Resource
|
||||
private AuthenticationUtils authenticationUtils;
|
||||
|
||||
|
||||
|
||||
@@ -65,8 +73,34 @@ public class PayPaymentRecordController extends JeroController<PayPaymentRecord,
|
||||
@ApiOperation(value="添加来款", notes="添加来款")
|
||||
@PostMapping(value = "/addAmountReceived")
|
||||
public Result<?> addAmountReceived(@RequestBody PayPaymentRecord payPaymentRecord) {
|
||||
return payPaymentRecordService.addPhase(payPaymentRecord);
|
||||
return payPaymentRecordService.addAmountReceived(payPaymentRecord);
|
||||
}
|
||||
|
||||
/**
|
||||
* 标协会员添加来款
|
||||
* @return
|
||||
*/
|
||||
@ApiOperation(value="标协会员添加来款", notes="标协会员添加来款")
|
||||
@PostMapping(value = "/standardsAddAR")
|
||||
public Result<?> standardsAddAR(@RequestParam(name="token")String token,
|
||||
@RequestParam(name="publicKey")String publicKey,
|
||||
@RequestParam(name="amountReceived")String amountReceived,
|
||||
@RequestParam(name="paymentDate")String paymentDate,
|
||||
@RequestParam(name="tbPaymentId")String tbPaymentId,
|
||||
@RequestParam(name="remark",required = false)String remark) {
|
||||
//身份校验
|
||||
authenticationUtils.check(token, publicKey);
|
||||
|
||||
PayPaymentRecord payPaymentRecord=new PayPaymentRecord();
|
||||
payPaymentRecord.setAmountReceived(new BigDecimal(amountReceived));
|
||||
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
|
||||
try {
|
||||
payPaymentRecord.setPaymentDate(simpleDateFormat.parse(paymentDate));
|
||||
} catch (ParseException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
payPaymentRecord.setRemark(remark);
|
||||
return payPaymentRecordService.standardsAddAR(tbPaymentId,payPaymentRecord);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -148,8 +182,8 @@ public class PayPaymentRecordController extends JeroController<PayPaymentRecord,
|
||||
*/
|
||||
@ApiOperation(value="导出excel", notes="导出excel")
|
||||
@GetMapping(value = "/exportXls")
|
||||
public ModelAndView exportXls(HttpServletRequest request, PayCommonProject payCommonProject) {
|
||||
return payPaymentRecordService.exportXls(request, payCommonProject, PayCommonProject.class, "pay_payment_record");
|
||||
public ModelAndView exportXls(HttpServletRequest request, PayCommonProject payCommonProject,String paymentDate) {
|
||||
return payPaymentRecordService.exportXls(request, payCommonProject, paymentDate, PayCommonProjectOutput.class, "到账开票");
|
||||
}
|
||||
|
||||
|
||||
|
||||
+4
-3
@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.jero.payment.entity.PayPaymentRecord;
|
||||
import com.jero.project.entity.PayCommonProject;
|
||||
import com.jero.project.vo.PayCommonProjectOutput;
|
||||
import io.lettuce.core.dynamic.annotation.Param;
|
||||
|
||||
import java.util.List;
|
||||
@@ -30,7 +31,7 @@ public interface PayPaymentRecordMapper extends BaseMapper<PayPaymentRecord> {
|
||||
* 到账开票导出
|
||||
* @return
|
||||
*/
|
||||
List<PayCommonProject> mainListExportXls(@Param("principalId")String principalId,
|
||||
@Param("chargeProject")String chargeProject,
|
||||
@Param("chargeCompanyTemporaryName")String chargeCompanyTemporaryName);
|
||||
List<PayCommonProjectOutput> mainListExportXls(
|
||||
@Param("payCommonProject")PayCommonProject payCommonProject,
|
||||
@Param("paymentDate") String paymentDate);
|
||||
}
|
||||
|
||||
+40
-31
@@ -97,21 +97,23 @@
|
||||
</select>
|
||||
|
||||
<!-- 到账开票导出-->
|
||||
<select id="mainListExportXls" resultType="com.jero.project.entity.PayCommonProject">
|
||||
<!-- 普通项目-->
|
||||
<select id="mainListExportXls" resultType="com.jero.project.vo.PayCommonProjectOutput">
|
||||
select p.id,p.charge_project, p.charge_use, p.principal_id,p.principal_name,p.charge_company_temporary_name,p.receivable_amount,p.paid_amount,p.need_invoice,p.pack,p.in_account,p.make_invoice,p.mail,p.create_time,1 as projectType
|
||||
from
|
||||
(<!-- 普通项目-->
|
||||
select c.id,c.charge_project, c.charge_use, c.principal_id,c.principal_name,c.charge_company_temporary_name,c.receivable_amount,c.paid_amount,c.need_invoice,c.pack,c.in_account,c.make_invoice,c.mail,c.create_time,1 as projectType
|
||||
from pay_common_project c
|
||||
where
|
||||
c.receivable_amount <![CDATA[<>]]> 0
|
||||
and c.receivable_amount is not null
|
||||
<if test="principalId != null and principalId != ''">
|
||||
AND c.principal_id = #{principalId}
|
||||
<if test="payCommonProject.principalId != null and payCommonProject.principalId != ''">
|
||||
AND c.principal_id = #{payCommonProject.principalId}
|
||||
</if>
|
||||
<if test="chargeProject != null and chargeProject != ''">
|
||||
AND c.charge_project = #{chargeProject}
|
||||
<if test="payCommonProject.chargeProject != null and payCommonProject.chargeProject != ''">
|
||||
AND c.charge_project = #{payCommonProject.chargeProject}
|
||||
</if>
|
||||
<if test="chargeCompanyTemporaryName != null and chargeCompanyTemporaryName != ''">
|
||||
AND c.charge_company_temporary_name = #{chargeCompanyTemporaryName}
|
||||
<if test="payCommonProject.chargeCompanyTemporaryName != null and payCommonProject.chargeCompanyTemporaryName != ''">
|
||||
AND c.charge_company_temporary_name = #{payCommonProject.chargeCompanyTemporaryName}
|
||||
</if>
|
||||
<!--工作组项目-->
|
||||
UNION ALL
|
||||
@@ -121,14 +123,14 @@
|
||||
where
|
||||
gsub.receivable_amount <![CDATA[<>]]> 0
|
||||
and gsub.receivable_amount is not null
|
||||
<if test="principalId != null and principalId != ''">
|
||||
AND g.principal_id_a = #{principalId}
|
||||
<if test="payCommonProject.principalId != null and payCommonProject.principalId != ''">
|
||||
AND g.principal_id_a = #{payCommonProject.principalId}
|
||||
</if>
|
||||
<if test="chargeProject != null and chargeProject != ''">
|
||||
AND g.working_group_project = #{chargeProject}
|
||||
<if test="payCommonProject.chargeProject != null and payCommonProject.chargeProject != ''">
|
||||
AND g.working_group_project = #{payCommonProject.chargeProject}
|
||||
</if>
|
||||
<if test="chargeCompanyTemporaryName != null and chargeCompanyTemporaryName != ''">
|
||||
AND gsub.charge_company_temporary_name = #{chargeCompanyTemporaryName}
|
||||
<if test="payCommonProject.chargeCompanyTemporaryName != null and payCommonProject.chargeCompanyTemporaryName != ''">
|
||||
AND gsub.charge_company_temporary_name = #{payCommonProject.chargeCompanyTemporaryName}
|
||||
</if>
|
||||
<!-- 会议项目-->
|
||||
UNION ALL
|
||||
@@ -138,14 +140,14 @@
|
||||
where
|
||||
sit.amount_receivable <![CDATA[<>]]> 0
|
||||
and sit.amount_receivable is not null
|
||||
<if test="principalId != null and principalId != ''">
|
||||
AND meeting.director_id = #{principalId}
|
||||
<if test="payCommonProject.principalId != null and payCommonProject.principalId != ''">
|
||||
AND meeting.director_id = #{payCommonProject.principalId}
|
||||
</if>
|
||||
<if test="chargeProject != null and chargeProject != ''">
|
||||
AND meeting.meeting_name = #{chargeProject}
|
||||
<if test="payCommonProject.chargeProject != null and payCommonProject.chargeProject != ''">
|
||||
AND meeting.meeting_name = #{payCommonProject.chargeProject}
|
||||
</if>
|
||||
<if test="chargeCompanyTemporaryName != null and chargeCompanyTemporaryName != ''">
|
||||
AND sit.company_name = #{chargeCompanyTemporaryName}
|
||||
<if test="payCommonProject.chargeCompanyTemporaryName != null and payCommonProject.chargeCompanyTemporaryName != ''">
|
||||
AND sit.company_name = #{payCommonProject.chargeCompanyTemporaryName}
|
||||
</if>
|
||||
<!-- 会员项目-->
|
||||
UNION ALL
|
||||
@@ -155,14 +157,14 @@
|
||||
where
|
||||
msub.amount_receivable <![CDATA[<>]]> 0
|
||||
and msub.amount_receivable is not null
|
||||
<if test="principalId != null and principalId != ''">
|
||||
AND member.director_id = #{principalId}
|
||||
<if test="payCommonProject.principalId != null and payCommonProject.principalId != ''">
|
||||
AND member.director_id = #{payCommonProject.principalId}
|
||||
</if>
|
||||
<if test="chargeProject != null and chargeProject != ''">
|
||||
AND member.project_name = #{chargeProject}
|
||||
<if test="payCommonProject.chargeProject != null and payCommonProject.chargeProject != ''">
|
||||
AND member.project_name = #{payCommonProject.chargeProject}
|
||||
</if>
|
||||
<if test="chargeCompanyTemporaryName != null and chargeCompanyTemporaryName != ''">
|
||||
AND msub.company_name = #{chargeCompanyTemporaryName}
|
||||
<if test="payCommonProject.chargeCompanyTemporaryName != null and payCommonProject.chargeCompanyTemporaryName != ''">
|
||||
AND msub.company_name = #{payCommonProject.chargeCompanyTemporaryName}
|
||||
</if>
|
||||
<!-- 标协会员项目-->
|
||||
UNION ALL
|
||||
@@ -172,13 +174,20 @@
|
||||
where
|
||||
tmsub.amount_receivable <![CDATA[<>]]> 0
|
||||
and tmsub.amount_receivable is not null
|
||||
<if test="chargeProject != null and chargeProject != ''">
|
||||
AND tmember.project_name = #{chargeProject}
|
||||
<if test="payCommonProject.chargeProject != null and payCommonProject.chargeProject != ''">
|
||||
AND tmember.project_name = #{payCommonProject.chargeProject}
|
||||
</if>
|
||||
<if test="chargeCompanyTemporaryName != null and chargeCompanyTemporaryName != ''">
|
||||
AND tmsub.company_name = #{chargeCompanyTemporaryName}
|
||||
<if test="payCommonProject.chargeCompanyTemporaryName != null and payCommonProject.chargeCompanyTemporaryName != ''">
|
||||
AND tmsub.company_name = #{payCommonProject.chargeCompanyTemporaryName}
|
||||
</if>
|
||||
order by create_time DESC
|
||||
)p
|
||||
LEFT JOIN pay_payment_record ppr ON ppr.project_id = p.id
|
||||
where
|
||||
1=1
|
||||
<if test="paymentDate != null and paymentDate != ''">
|
||||
AND DATE_FORMAT(ppr.payment_date,'%Y') = #{paymentDate}
|
||||
</if>
|
||||
GROUP BY p.id ORDER BY p.create_time
|
||||
|
||||
</select>
|
||||
</mapper>
|
||||
+11
-3
@@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.jero.common.api.vo.Result;
|
||||
import com.jero.payment.entity.PayPaymentRecord;
|
||||
import com.jero.project.entity.PayCommonProject;
|
||||
import com.jero.project.vo.PayCommonProjectOutput;
|
||||
import org.springframework.web.servlet.ModelAndView;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
@@ -27,10 +28,17 @@ public interface IPayPaymentRecordService extends IService<PayPaymentRecord> {
|
||||
List<PayCommonProject> mainList(Page page, PayCommonProject payCommonProject,String paymentDate);
|
||||
|
||||
/**
|
||||
* 添加阶段
|
||||
* 添加来款
|
||||
* @param payPaymentRecord
|
||||
*/
|
||||
Result<?> addPhase(PayPaymentRecord payPaymentRecord);
|
||||
Result<?> addAmountReceived(PayPaymentRecord payPaymentRecord);
|
||||
|
||||
/**
|
||||
* 标协会员添加来款
|
||||
* @param payPaymentRecord
|
||||
*/
|
||||
Result<?> standardsAddAR(String tbPaymentId,PayPaymentRecord payPaymentRecord);
|
||||
|
||||
/**
|
||||
* 导出
|
||||
* @param request
|
||||
@@ -39,5 +47,5 @@ public interface IPayPaymentRecordService extends IService<PayPaymentRecord> {
|
||||
* @param title
|
||||
* @return
|
||||
*/
|
||||
public ModelAndView exportXls(HttpServletRequest request, PayCommonProject payCommonProject, Class<PayCommonProject> clazz, String title);
|
||||
public ModelAndView exportXls(HttpServletRequest request, PayCommonProject payCommonProject, String paymentDate, Class<PayCommonProjectOutput> clazz, String title);
|
||||
}
|
||||
|
||||
+52
-6
@@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.jero.common.api.vo.Result;
|
||||
import com.jero.common.exception.JeroBootException;
|
||||
import com.jero.common.system.api.ISysBaseAPI;
|
||||
import com.jero.common.util.oConvertUtils;
|
||||
import com.jero.contract.common.PayIncomeContractCommon;
|
||||
import com.jero.meeting.entity.PayMeetingSituation;
|
||||
@@ -22,10 +23,12 @@ import com.jero.project.entity.PayWorkingGroupSubItem;
|
||||
import com.jero.project.mapper.PayCommonProjectMapper;
|
||||
import com.jero.project.mapper.PayWorkingGroupSubItemMapper;
|
||||
import com.jero.common.util.AuthenticationUtils;
|
||||
import com.jero.project.vo.PayCommonProjectOutput;
|
||||
import org.apache.commons.beanutils.PropertyUtils;
|
||||
import org.jeecgframework.poi.excel.def.NormalExcelConstants;
|
||||
import org.jeecgframework.poi.excel.entity.ExportParams;
|
||||
import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.beans.factory.annotation.Value;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.web.servlet.ModelAndView;
|
||||
@@ -56,6 +59,8 @@ public class PayPaymentRecordServiceImpl extends ServiceImpl<PayPaymentRecordMap
|
||||
private PayMemberProjectSubitemMapper payMemberProjectSubitemMapper;
|
||||
@Resource
|
||||
private TbMemberProjectSubitemMapper tbMemberProjectSubitemMapper;
|
||||
@Autowired
|
||||
private ISysBaseAPI sysBaseAPI;
|
||||
|
||||
@Value("${jero.path.upload}")
|
||||
private String upLoadPath;
|
||||
@@ -68,6 +73,7 @@ public class PayPaymentRecordServiceImpl extends ServiceImpl<PayPaymentRecordMap
|
||||
* @param payCommonProject
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public List<PayCommonProject> mainList(Page page, PayCommonProject payCommonProject,String paymentDate){
|
||||
return payPaymentRecordMapper.mainList(page, payCommonProject, paymentDate);
|
||||
}
|
||||
@@ -77,7 +83,8 @@ public class PayPaymentRecordServiceImpl extends ServiceImpl<PayPaymentRecordMap
|
||||
* 添加来款记录
|
||||
* @param payPaymentRecord
|
||||
*/
|
||||
public Result<?> addPhase(PayPaymentRecord payPaymentRecord){
|
||||
@Override
|
||||
public Result<?> addAmountReceived(PayPaymentRecord payPaymentRecord){
|
||||
|
||||
BigDecimal receivableAmount;
|
||||
Boolean isAdd;
|
||||
@@ -203,6 +210,41 @@ public class PayPaymentRecordServiceImpl extends ServiceImpl<PayPaymentRecordMap
|
||||
return Result.OK("添加成功!");
|
||||
}
|
||||
|
||||
/**
|
||||
* 标协会员添加来款
|
||||
* @param tbPaymentId 标协缴费表id
|
||||
* @param payPaymentRecord
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public Result<?> standardsAddAR(String tbPaymentId,PayPaymentRecord payPaymentRecord){
|
||||
|
||||
BigDecimal receivableAmount;
|
||||
Boolean isAdd;
|
||||
BigDecimal newPaidAmount;
|
||||
BigDecimal paidAmount;
|
||||
Integer inAccount;
|
||||
|
||||
LambdaQueryWrapper<TbMemberProjectSubitem> wrapper = new LambdaQueryWrapper<>();
|
||||
wrapper.eq(TbMemberProjectSubitem::getTbPaymentId,tbPaymentId);
|
||||
TbMemberProjectSubitem tbMember = tbMemberProjectSubitemMapper.selectOne(wrapper);
|
||||
|
||||
receivableAmount = tbMember.getAmountReceivable();//应收
|
||||
paidAmount=tbMember.getPaidAmount();//实收
|
||||
|
||||
newPaidAmount =addPaidAmount(paidAmount,payPaymentRecord.getAmountReceived());//累加实收
|
||||
inAccount = getInAccount(receivableAmount, newPaidAmount);//到账状态
|
||||
|
||||
//更新主列表
|
||||
tbMember.setPaidAmount(newPaidAmount);
|
||||
tbMember.setInAccount(inAccount);
|
||||
tbMemberProjectSubitemMapper.updateById(tbMember);
|
||||
|
||||
//插入来款记录表
|
||||
payPaymentRecordMapper.insert(payPaymentRecord);
|
||||
return Result.OK("添加成功!");
|
||||
}
|
||||
|
||||
//标协类型新增时条件校验
|
||||
private void type5AddCheck(PayPaymentRecord payPaymentRecord){
|
||||
|
||||
@@ -338,14 +380,18 @@ public class PayPaymentRecordServiceImpl extends ServiceImpl<PayPaymentRecordMap
|
||||
* @param title
|
||||
* @return
|
||||
*/
|
||||
public ModelAndView exportXls(HttpServletRequest request, PayCommonProject payCommonProject, Class<PayCommonProject> clazz, String title) {
|
||||
@Override
|
||||
public ModelAndView exportXls(HttpServletRequest request, PayCommonProject payCommonProject,String paymentDate, Class<PayCommonProjectOutput> clazz, String title) {
|
||||
|
||||
|
||||
// Step.2 获取导出数据
|
||||
List<PayCommonProject> pageList=payPaymentRecordMapper.mainListExportXls(payCommonProject.getPrincipalId(),
|
||||
payCommonProject.getChargeProject(),
|
||||
payCommonProject.getChargeCompanyTemporaryName());
|
||||
List<PayCommonProject> exportList = null;
|
||||
List<PayCommonProjectOutput> pageList=payPaymentRecordMapper.mainListExportXls(payCommonProject,paymentDate);
|
||||
pageList.forEach(p-> {
|
||||
if (!Objects.isNull(p.getChargeUse())) {
|
||||
p.setChargeUse_dictText(sysBaseAPI.translateDict("payment_charge_use", String.valueOf(p.getChargeUse())));
|
||||
}
|
||||
});
|
||||
List<PayCommonProjectOutput> exportList = null;
|
||||
|
||||
// 过滤选中数据
|
||||
String selections = request.getParameter("selections");
|
||||
|
||||
Reference in New Issue
Block a user