来款、开票
This commit is contained in:
+8
@@ -1,6 +1,7 @@
|
||||
package com.jero.mail.service;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.jero.common.api.vo.Result;
|
||||
import com.jero.mail.entity.PayMailBill;
|
||||
|
||||
import java.util.List;
|
||||
@@ -22,4 +23,11 @@ public interface IPayMailBillService extends IService<PayMailBill> {
|
||||
* @Exception
|
||||
*/
|
||||
List<PayMailBill> selectMailBillVO(String projectId);
|
||||
|
||||
/**
|
||||
* 添加开票
|
||||
* @param payMailBill
|
||||
* @return
|
||||
*/
|
||||
Result<?> addPayBill(PayMailBill payMailBill,String projectId,Integer projectType);
|
||||
}
|
||||
|
||||
+33
@@ -2,12 +2,15 @@ package com.jero.mail.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.jero.common.api.vo.Result;
|
||||
import com.jero.common.exception.JeroBootException;
|
||||
import com.jero.contract.common.PayIncomeContractCommon;
|
||||
import com.jero.mail.entity.PayMailBill;
|
||||
import com.jero.mail.entity.PayMailBillProject;
|
||||
import com.jero.mail.mapper.PayMailBillMapper;
|
||||
import com.jero.mail.service.IPayMailBillProjectService;
|
||||
import com.jero.mail.service.IPayMailBillService;
|
||||
import com.jero.payment.entity.PayPaymentRecord;
|
||||
import org.apache.commons.collections.CollectionUtils;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
@@ -47,4 +50,34 @@ public class PayMailBillServiceImpl extends ServiceImpl<PayMailBillMapper, PayMa
|
||||
return list;
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加开票
|
||||
* @param payMailBill
|
||||
* @return
|
||||
*/
|
||||
public Result<?> addPayBill(PayMailBill payMailBill,String projectId,Integer projectType){
|
||||
|
||||
if(PayIncomeContractCommon.PROJECT_TYPE5.equals(String.valueOf(projectType))){
|
||||
|
||||
LambdaQueryWrapper<PayMailBillProject> wrapper = new LambdaQueryWrapper<>();
|
||||
wrapper.eq(PayMailBillProject::getProjectId, projectId);
|
||||
wrapper.eq(PayMailBillProject::getProjectType, PayIncomeContractCommon.PROJECT_TYPE5);
|
||||
List<PayMailBillProject> type5List = payMailBillProjectService.list(wrapper);
|
||||
|
||||
if(type5List!=null && type5List.size()>0){
|
||||
return Result.error("标协会员项目,只能开票一次。");
|
||||
}
|
||||
}
|
||||
//新增票据邮寄表
|
||||
payMailBillService.save(payMailBill);
|
||||
|
||||
//新增票据关联项目表
|
||||
PayMailBillProject payMailBillProject = new PayMailBillProject();
|
||||
payMailBillProject.setBillId(payMailBill.getId());
|
||||
payMailBillProject.setProjectId(projectId);
|
||||
payMailBillProject.setProjectType(projectType);
|
||||
payMailBillProjectService.save(payMailBillProject);
|
||||
|
||||
return Result.OK("添加成功!");
|
||||
}
|
||||
}
|
||||
|
||||
+61
-49
@@ -5,12 +5,15 @@ import java.util.List;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.jero.common.api.vo.Result;
|
||||
import com.jero.common.system.base.controller.JeroController;
|
||||
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.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;
|
||||
@@ -34,6 +37,8 @@ import io.swagger.annotations.ApiOperation;
|
||||
public class PayPaymentRecordController extends JeroController<PayPaymentRecord, IPayPaymentRecordService> {
|
||||
@Autowired
|
||||
private IPayPaymentRecordService payPaymentRecordService;
|
||||
@Autowired
|
||||
private IPayMailBillService payMailBillService;
|
||||
|
||||
|
||||
|
||||
@@ -52,56 +57,74 @@ public class PayPaymentRecordController extends JeroController<PayPaymentRecord,
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加阶段
|
||||
* 添加来款
|
||||
* @param payPaymentRecord
|
||||
* @return
|
||||
*/
|
||||
@ApiOperation(value="添加阶段", notes="添加阶段")
|
||||
@PostMapping(value = "/addPhase")
|
||||
public Result<?> addPhase(@RequestBody PayPaymentRecord payPaymentRecord) {
|
||||
@ApiOperation(value="添加来款", notes="添加来款")
|
||||
@PostMapping(value = "/addAmountReceived")
|
||||
public Result<?> addAmountReceived(@RequestBody PayPaymentRecord payPaymentRecord) {
|
||||
return payPaymentRecordService.addPhase(payPaymentRecord);
|
||||
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 编辑
|
||||
*
|
||||
* @param payPaymentRecord
|
||||
* 来款列表
|
||||
* @return
|
||||
*/
|
||||
@ApiOperation(value="pay_payment_record-编辑", notes="pay_payment_record-编辑")
|
||||
@PutMapping(value = "/edit")
|
||||
public Result<?> edit(@RequestBody PayPaymentRecord payPaymentRecord) {
|
||||
@ApiOperation(value="来款列表", notes="来款列表")
|
||||
@PostMapping(value = "/amountReceivedList")
|
||||
public Result<?> amountReceivedList(String id) {
|
||||
LambdaQueryWrapper<PayPaymentRecord> wrapper = new LambdaQueryWrapper<>();
|
||||
wrapper.eq(PayPaymentRecord::getProjectId, id);
|
||||
wrapper.orderByDesc(PayPaymentRecord::getPaymentDate);
|
||||
List<PayPaymentRecord> list = payPaymentRecordService.list(wrapper);
|
||||
|
||||
return Result.OK(list);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 编辑来款阶段
|
||||
*/
|
||||
@ApiOperation(value="编辑来款阶段", notes="编辑来款阶段")
|
||||
@PutMapping(value = "/editAmountReceived")
|
||||
public Result<?> editAmountReceived(@RequestBody PayPaymentRecord payPaymentRecord) {
|
||||
payPaymentRecordService.updateById(payPaymentRecord);
|
||||
return Result.OK("编辑成功!");
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过id删除
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@ApiOperation(value="pay_payment_record-通过id删除", notes="pay_payment_record-通过id删除")
|
||||
@DeleteMapping(value = "/delete")
|
||||
public Result<?> delete(@RequestParam(name="id",required=true) String id) {
|
||||
payPaymentRecordService.removeById(id);
|
||||
return Result.OK("删除成功!");
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量删除
|
||||
*
|
||||
* @param ids
|
||||
* @return
|
||||
*/
|
||||
@ApiOperation(value="pay_payment_record-批量删除", notes="pay_payment_record-批量删除")
|
||||
@DeleteMapping(value = "/deleteBatch")
|
||||
public Result<?> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
|
||||
this.payPaymentRecordService.removeByIds(Arrays.asList(ids.split(",")));
|
||||
return Result.OK("批量删除成功!");
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 添加开票
|
||||
*/
|
||||
@ApiOperation(value="添加开票", notes="添加开票")
|
||||
@PostMapping(value = "/addPayBill")
|
||||
public Result<?> addPayBill(@RequestBody PayMailBill payMailBill,String projectId,Integer projectType) {
|
||||
return payMailBillService.addPayBill(payMailBill, projectId, projectType);
|
||||
}
|
||||
|
||||
/**
|
||||
* 开票列表
|
||||
* @return
|
||||
*/
|
||||
@ApiOperation(value="开票列表", notes="开票列表")
|
||||
@PostMapping(value = "/payBillList")
|
||||
public Result<?> payBillList(String id) {
|
||||
|
||||
return Result.OK(payMailBillService.selectMailBillVO(id));
|
||||
}
|
||||
|
||||
/**
|
||||
* 编辑开票
|
||||
*/
|
||||
@ApiOperation(value="编辑开票", notes="编辑开票")
|
||||
@PutMapping(value = "/editPayBill")
|
||||
public Result<?> editPayBill(@RequestBody PayMailBill payMailBill) {
|
||||
payMailBillService.updateById(payMailBill);
|
||||
return Result.OK("编辑成功!");
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 通过id查询
|
||||
*
|
||||
@@ -129,16 +152,5 @@ public class PayPaymentRecordController extends JeroController<PayPaymentRecord,
|
||||
return super.exportXls(request, payPaymentRecord, PayPaymentRecord.class, "pay_payment_record");
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过excel导入数据
|
||||
*
|
||||
* @param request
|
||||
* @param response
|
||||
* @return
|
||||
*/
|
||||
@RequestMapping(value = "/importExcel", method = RequestMethod.POST)
|
||||
public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
|
||||
return super.importExcel(request, response, PayPaymentRecord.class);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
+25
-3
@@ -1,5 +1,6 @@
|
||||
package com.jero.payment.service.impl;
|
||||
|
||||
import cn.hutool.http.HttpUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
@@ -63,16 +64,19 @@ public class PayPaymentRecordServiceImpl extends ServiceImpl<PayPaymentRecordMap
|
||||
*/
|
||||
public List<PayCommonProject> mainList(Page page, PayCommonProject payCommonProject){
|
||||
return payPaymentRecordMapper.mainList(page, payCommonProject);
|
||||
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 添加阶段
|
||||
* 添加来款记录
|
||||
* @param payPaymentRecord
|
||||
*/
|
||||
public Result<?> addPhase(PayPaymentRecord payPaymentRecord){
|
||||
payPaymentRecordMapper.insert(payPaymentRecord);
|
||||
//来款记录表新增
|
||||
String res = insertPayPaymentRecord(payPaymentRecord);
|
||||
if(!"success".equals(res)){
|
||||
return Result.error(res);
|
||||
}
|
||||
|
||||
BigDecimal receivableAmount;
|
||||
Boolean isAdd;
|
||||
@@ -175,6 +179,24 @@ public class PayPaymentRecordServiceImpl extends ServiceImpl<PayPaymentRecordMap
|
||||
return Result.OK("添加成功!");
|
||||
}
|
||||
|
||||
//来款记录表新增
|
||||
private String insertPayPaymentRecord(PayPaymentRecord payPaymentRecord){
|
||||
//如果是标协会员类型,只能新增一次
|
||||
if(PayIncomeContractCommon.PROJECT_TYPE5.equals(String.valueOf(payPaymentRecord.getProjectType()))){
|
||||
|
||||
LambdaQueryWrapper<PayPaymentRecord> wrapper = new LambdaQueryWrapper<>();
|
||||
wrapper.eq(PayPaymentRecord::getProjectId, payPaymentRecord.getProjectId());
|
||||
wrapper.eq(PayPaymentRecord::getProjectType, PayIncomeContractCommon.PROJECT_TYPE5);
|
||||
List<PayPaymentRecord> type5List = payPaymentRecordMapper.selectList(wrapper);
|
||||
|
||||
if(type5List!=null && type5List.size()>0){
|
||||
return "标协会员项目,只能来款一次。";
|
||||
}
|
||||
}
|
||||
payPaymentRecordMapper.insert(payPaymentRecord);
|
||||
return "success";
|
||||
}
|
||||
|
||||
/**
|
||||
* 是否还能再添加来款
|
||||
* @param receivableAmount 应收
|
||||
|
||||
Reference in New Issue
Block a user