打包管理完善
This commit is contained in:
+7
@@ -120,6 +120,13 @@ public class HuaWeiSmsUtil {
|
|||||||
templateId = "077964a02a814149bb01900e43c9a04e";
|
templateId = "077964a02a814149bb01900e43c9a04e";
|
||||||
codeTime = "0";
|
codeTime = "0";
|
||||||
break;
|
break;
|
||||||
|
case "5":
|
||||||
|
//中汽标协-合同分期到期通知提醒
|
||||||
|
sender = "8821062807762";
|
||||||
|
signature = "中汽标协";
|
||||||
|
templateId = "077964a02a814149bb01900e43c9a04e";
|
||||||
|
codeTime = "0";
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
throw new JeroBootException("codeType flase.");
|
throw new JeroBootException("codeType flase.");
|
||||||
}
|
}
|
||||||
|
|||||||
+17
@@ -1,5 +1,8 @@
|
|||||||
package com.jero.contract.common;
|
package com.jero.contract.common;
|
||||||
|
|
||||||
|
import cn.hutool.crypto.asymmetric.KeyType;
|
||||||
|
import cn.hutool.crypto.asymmetric.RSA;
|
||||||
|
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
@@ -92,4 +95,18 @@ public class PayIncomeContractCommon {
|
|||||||
*/
|
*/
|
||||||
public final static Integer COME2 = 2;
|
public final static Integer COME2 = 2;
|
||||||
|
|
||||||
|
public static void main(String[] args) {
|
||||||
|
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* RSA 使用公钥加密token
|
||||||
|
* @param RSAPublicKey 公钥
|
||||||
|
* @return String 加密后的字符串
|
||||||
|
*/
|
||||||
|
public static String encryptByRsaPriKey(String token,String RSAPublicKey) {
|
||||||
|
RSA rsa = new RSA(null, RSAPublicKey);
|
||||||
|
byte[] encrypt = rsa.encrypt(token, KeyType.PublicKey);
|
||||||
|
return new String(encrypt);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
+14
-3
@@ -1,10 +1,14 @@
|
|||||||
package com.jero.contract.service.impl;
|
package com.jero.contract.service.impl;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
|
import com.jero.common.util.HuaWeiSmsUtil;
|
||||||
|
import com.jero.common.util.PasswordUtil;
|
||||||
import com.jero.contract.entity.PayIncomeContractInstallment;
|
import com.jero.contract.entity.PayIncomeContractInstallment;
|
||||||
import com.jero.contract.mapper.PayIncomeContractInstallmentMapper;
|
import com.jero.contract.mapper.PayIncomeContractInstallmentMapper;
|
||||||
import com.jero.contract.service.IPayIncomeContractInstallmentService;
|
import com.jero.contract.service.IPayIncomeContractInstallmentService;
|
||||||
import org.apache.commons.collections.CollectionUtils;
|
import org.apache.commons.collections.CollectionUtils;
|
||||||
|
import org.apache.commons.lang3.StringUtils;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
import javax.annotation.Resource;
|
import javax.annotation.Resource;
|
||||||
@@ -20,12 +24,19 @@ import java.util.List;
|
|||||||
public class PayIncomeContractInstallmentServiceImpl extends ServiceImpl<PayIncomeContractInstallmentMapper, PayIncomeContractInstallment> implements IPayIncomeContractInstallmentService {
|
public class PayIncomeContractInstallmentServiceImpl extends ServiceImpl<PayIncomeContractInstallmentMapper, PayIncomeContractInstallment> implements IPayIncomeContractInstallmentService {
|
||||||
@Resource
|
@Resource
|
||||||
private PayIncomeContractInstallmentMapper payIncomeContractInstallmentMapper;
|
private PayIncomeContractInstallmentMapper payIncomeContractInstallmentMapper;
|
||||||
|
@Autowired
|
||||||
|
private HuaWeiSmsUtil huaWeiSmsUtil;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void sendSMSIncomeContract() {
|
public void sendSMSIncomeContract() {
|
||||||
List<PayIncomeContractInstallment> list = payIncomeContractInstallmentMapper.getIncomeContract();
|
List<PayIncomeContractInstallment> list = payIncomeContractInstallmentMapper.getIncomeContract();
|
||||||
if(!CollectionUtils.isEmpty(list)){
|
list.forEach(p->{
|
||||||
// todo 发送短信
|
if(!StringUtils.isBlank(p.getPhone())){
|
||||||
}
|
String phone = PasswordUtil.decrypt(p.getPhone());
|
||||||
|
String msg = "中汽数据中心提醒您,贵公司与中汽数据签订的" + p.getContractName() + "合同" + p.getPhaseName()
|
||||||
|
+ "期款项时间即将到达,汇款金额" + p.getAccountsReceivableAmount() + "元,请及时汇款,如已经汇款,请忽略此条通知。谢谢合作";
|
||||||
|
// huaWeiSmsUtil.sendVerificationCode(phone,"5","60",msg);
|
||||||
|
}
|
||||||
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+16
@@ -1,10 +1,14 @@
|
|||||||
package com.jero.contract.service.impl;
|
package com.jero.contract.service.impl;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
|
import com.jero.common.util.HuaWeiSmsUtil;
|
||||||
|
import com.jero.common.util.PasswordUtil;
|
||||||
import com.jero.contract.entity.PaySpendingContractInstallment;
|
import com.jero.contract.entity.PaySpendingContractInstallment;
|
||||||
import com.jero.contract.mapper.PaySpendingContractInstallmentMapper;
|
import com.jero.contract.mapper.PaySpendingContractInstallmentMapper;
|
||||||
import com.jero.contract.service.IPaySpendingContractInstallmentService;
|
import com.jero.contract.service.IPaySpendingContractInstallmentService;
|
||||||
import org.apache.commons.collections.CollectionUtils;
|
import org.apache.commons.collections.CollectionUtils;
|
||||||
|
import org.apache.commons.lang3.StringUtils;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
import javax.annotation.Resource;
|
import javax.annotation.Resource;
|
||||||
@@ -19,6 +23,9 @@ import java.util.List;
|
|||||||
@Service
|
@Service
|
||||||
public class PaySpendingContractInstallmentServiceImpl extends ServiceImpl<PaySpendingContractInstallmentMapper, PaySpendingContractInstallment> implements IPaySpendingContractInstallmentService {
|
public class PaySpendingContractInstallmentServiceImpl extends ServiceImpl<PaySpendingContractInstallmentMapper, PaySpendingContractInstallment> implements IPaySpendingContractInstallmentService {
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private HuaWeiSmsUtil huaWeiSmsUtil;
|
||||||
|
|
||||||
@Resource
|
@Resource
|
||||||
private PaySpendingContractInstallmentMapper paySpendingContractInstallmentMapper;
|
private PaySpendingContractInstallmentMapper paySpendingContractInstallmentMapper;
|
||||||
@Override
|
@Override
|
||||||
@@ -26,6 +33,15 @@ public class PaySpendingContractInstallmentServiceImpl extends ServiceImpl<PaySp
|
|||||||
List<PaySpendingContractInstallment> list = paySpendingContractInstallmentMapper.getSpendingContract();
|
List<PaySpendingContractInstallment> list = paySpendingContractInstallmentMapper.getSpendingContract();
|
||||||
if(!CollectionUtils.isEmpty(list)){
|
if(!CollectionUtils.isEmpty(list)){
|
||||||
// todo 发短信
|
// todo 发短信
|
||||||
|
list.forEach(p->{
|
||||||
|
if(!StringUtils.isBlank(p.getPhone())){
|
||||||
|
String phone = PasswordUtil.decrypt(p.getPhone());
|
||||||
|
String msg = "中汽数据中心提醒您,贵公司与中汽数据签订的" + p.getContractName() + "合同" + p.getPhaseName()
|
||||||
|
+ "期款项时间即将到达,汇款金额" + p.getAccountsReceivableAmount() + "元,请及时汇款,如已经汇款,请忽略此条通知。谢谢合作";
|
||||||
|
// huaWeiSmsUtil.sendVerificationCode(phone,"5","60",msg);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,9 +1,12 @@
|
|||||||
package com.jero.mail.entity;
|
package com.jero.mail.entity;
|
||||||
|
|
||||||
import java.io.Serializable;
|
import java.io.Serializable;
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.annotation.IdType;
|
import com.baomidou.mybatisplus.annotation.IdType;
|
||||||
import com.baomidou.mybatisplus.annotation.TableId;
|
import com.baomidou.mybatisplus.annotation.TableId;
|
||||||
import com.baomidou.mybatisplus.annotation.TableName;
|
import com.baomidou.mybatisplus.annotation.TableName;
|
||||||
|
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
import org.jeecgframework.poi.excel.annotation.Excel;
|
import org.jeecgframework.poi.excel.annotation.Excel;
|
||||||
import io.swagger.annotations.ApiModel;
|
import io.swagger.annotations.ApiModel;
|
||||||
@@ -11,6 +14,8 @@ import io.swagger.annotations.ApiModelProperty;
|
|||||||
import lombok.EqualsAndHashCode;
|
import lombok.EqualsAndHashCode;
|
||||||
import lombok.experimental.Accessors;
|
import lombok.experimental.Accessors;
|
||||||
|
|
||||||
|
import javax.validation.constraints.DecimalMax;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @Description: pay_mail_bill_project
|
* @Description: pay_mail_bill_project
|
||||||
* @Author: jeecg-boot
|
* @Author: jeecg-boot
|
||||||
@@ -41,4 +46,10 @@ public class PayMailBillProject implements Serializable {
|
|||||||
@Excel(name = "项目类型", width = 15)
|
@Excel(name = "项目类型", width = 15)
|
||||||
@ApiModelProperty(value = "项目类型")
|
@ApiModelProperty(value = "项目类型")
|
||||||
private java.lang.Integer projectType;
|
private java.lang.Integer projectType;
|
||||||
|
/**开票金额*/
|
||||||
|
@Excel(name = "开票金额", width = 15)
|
||||||
|
@ApiModelProperty(value = "开票金额")
|
||||||
|
@DecimalMax(value = "9999999999.99",message = "开票金额格式错误")
|
||||||
|
@JsonFormat(shape = JsonFormat.Shape.STRING)
|
||||||
|
private BigDecimal invoiceAmount;
|
||||||
}
|
}
|
||||||
|
|||||||
+19
@@ -19,6 +19,8 @@ import com.jero.common.util.PasswordUtil;
|
|||||||
import com.jero.common.util.ValidUtil;
|
import com.jero.common.util.ValidUtil;
|
||||||
import com.jero.company.entity.PayContactsManagement;
|
import com.jero.company.entity.PayContactsManagement;
|
||||||
import com.jero.company.service.IPayContactsManagementService;
|
import com.jero.company.service.IPayContactsManagementService;
|
||||||
|
import com.jero.mail.entity.PayMailBillProject;
|
||||||
|
import com.jero.mail.service.IPayMailBillProjectService;
|
||||||
import com.jero.pack.entity.PayPackCompany;
|
import com.jero.pack.entity.PayPackCompany;
|
||||||
import com.jero.pack.entity.PayPackCompanyProject;
|
import com.jero.pack.entity.PayPackCompanyProject;
|
||||||
import com.jero.pack.service.IPayPackCompanyProjectService;
|
import com.jero.pack.service.IPayPackCompanyProjectService;
|
||||||
@@ -53,6 +55,8 @@ public class PayPackCompanyController extends JeroController<PayPackCompany, IPa
|
|||||||
private IPayPackCompanyProjectService payPackCompanyProjectService;
|
private IPayPackCompanyProjectService payPackCompanyProjectService;
|
||||||
@Autowired
|
@Autowired
|
||||||
private IPayContactsManagementTemporaryService payContactsManagementTemporaryService;
|
private IPayContactsManagementTemporaryService payContactsManagementTemporaryService;
|
||||||
|
@Autowired
|
||||||
|
private IPayMailBillProjectService payMailBillProjectService;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 分页列表查询
|
* 分页列表查询
|
||||||
@@ -219,6 +223,21 @@ public class PayPackCompanyController extends JeroController<PayPackCompany, IPa
|
|||||||
}else{
|
}else{
|
||||||
payPackCompany.setReceiptExpense(new BigDecimal("0.00"));
|
payPackCompany.setReceiptExpense(new BigDecimal("0.00"));
|
||||||
}
|
}
|
||||||
|
if(Objects.isNull(payPackCompany.getPackChargeTotal())){
|
||||||
|
payPackCompany.setPackChargeTotal(new BigDecimal("0.00"));
|
||||||
|
}
|
||||||
|
LambdaQueryWrapper<PayMailBillProject> queryPayMailBillProject = new LambdaQueryWrapper<>();
|
||||||
|
queryPayMailBillProject.eq(PayMailBillProject::getBillId,id);
|
||||||
|
List<PayMailBillProject> listPayMailBillProject = payMailBillProjectService.list(queryPayMailBillProject);
|
||||||
|
if(!CollectionUtils.isEmpty(listPayMailBillProject)){
|
||||||
|
BigDecimal d = listPayMailBillProject.stream().map(PayMailBillProject::getInvoiceAmount).reduce(BigDecimal.ZERO,BigDecimal::add);
|
||||||
|
payPackCompany.setInvoiceAmount(d);
|
||||||
|
payPackCompany.setUninvoicedAmount(payPackCompany.getReceiptExpense().subtract(d));
|
||||||
|
}else{
|
||||||
|
payPackCompany.setInvoiceAmount(new BigDecimal("0.00"));
|
||||||
|
payPackCompany.setUninvoicedAmount(payPackCompany.getReceiptExpense());
|
||||||
|
}
|
||||||
|
|
||||||
return Result.OK(payPackCompany);
|
return Result.OK(payPackCompany);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -102,7 +102,7 @@ public class PayPackCompanyProjectController extends JeroController<PayPackCompa
|
|||||||
if(Objects.isNull(input.getPackId())){
|
if(Objects.isNull(input.getPackId())){
|
||||||
return Result.error("打包id不能为空");
|
return Result.error("打包id不能为空");
|
||||||
}
|
}
|
||||||
PayPackCompany payPackCompany = payPackCompanyService.getById(input.getPackId());
|
PayPackCompany payPackCompany = payPackCompanyService.getById(input.getPackId());
|
||||||
if(Objects.isNull(payPackCompany)){
|
if(Objects.isNull(payPackCompany)){
|
||||||
return Result.error("打包企业不存在");
|
return Result.error("打包企业不存在");
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -81,6 +81,7 @@ public class PayPackCompany implements Serializable {
|
|||||||
@Excel(name = "打包费用总计", width = 15)
|
@Excel(name = "打包费用总计", width = 15)
|
||||||
@ApiModelProperty(value = "打包费用总计")
|
@ApiModelProperty(value = "打包费用总计")
|
||||||
@DecimalMax(value = "9999999999.99",message = "打包费用总计格式错误")
|
@DecimalMax(value = "9999999999.99",message = "打包费用总计格式错误")
|
||||||
|
@JsonFormat(shape = JsonFormat.Shape.STRING)
|
||||||
private BigDecimal packChargeTotal;
|
private BigDecimal packChargeTotal;
|
||||||
/**打包费用备注*/
|
/**打包费用备注*/
|
||||||
// @Excel(name = "打包费用备注", width = 15)
|
// @Excel(name = "打包费用备注", width = 15)
|
||||||
@@ -93,17 +94,20 @@ public class PayPackCompany implements Serializable {
|
|||||||
/**实际到账费用*/
|
/**实际到账费用*/
|
||||||
@Excel(name = "实际到账费用", width = 15)
|
@Excel(name = "实际到账费用", width = 15)
|
||||||
@ApiModelProperty(value = "实际到账费用")
|
@ApiModelProperty(value = "实际到账费用")
|
||||||
@DecimalMax(value = "9999999999.99",message = "实际到账费用总计格式错误")
|
@DecimalMax(value = "9999999999.99",message = "实际到账费用格式错误")
|
||||||
|
@JsonFormat(shape = JsonFormat.Shape.STRING)
|
||||||
private BigDecimal receiptExpense;
|
private BigDecimal receiptExpense;
|
||||||
/**开票金额*/
|
/**开票金额*/
|
||||||
// @Excel(name = "开票金额", width = 15)
|
// @Excel(name = "开票金额", width = 15)
|
||||||
@ApiModelProperty(value = "开票金额")
|
@ApiModelProperty(value = "开票金额")
|
||||||
@DecimalMax(value = "9999999999.99",message = "开票金额总计格式错误")
|
@DecimalMax(value = "9999999999.99",message = "开票金额格式错误")
|
||||||
|
@JsonFormat(shape = JsonFormat.Shape.STRING)
|
||||||
private BigDecimal invoiceAmount;
|
private BigDecimal invoiceAmount;
|
||||||
/**未开票金额*/
|
/**未开票金额*/
|
||||||
// @Excel(name = "未开票金额", width = 15)
|
// @Excel(name = "未开票金额", width = 15)
|
||||||
@ApiModelProperty(value = "未开票金额")
|
@ApiModelProperty(value = "未开票金额")
|
||||||
@DecimalMax(value = "9999999999.99",message = "未开票金额总计格式错误")
|
@DecimalMax(value = "9999999999.99",message = "未开票金额格式错误")
|
||||||
|
@JsonFormat(shape = JsonFormat.Shape.STRING)
|
||||||
private BigDecimal uninvoicedAmount;
|
private BigDecimal uninvoicedAmount;
|
||||||
/**创建人*/
|
/**创建人*/
|
||||||
@ApiModelProperty(value = "创建人")
|
@ApiModelProperty(value = "创建人")
|
||||||
|
|||||||
+3
-55
@@ -2,60 +2,8 @@
|
|||||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||||
<mapper namespace="com.jero.pack.mapper.PayPackCompanyMapper">
|
<mapper namespace="com.jero.pack.mapper.PayPackCompanyMapper">
|
||||||
<select id="queryPackListCount" resultType="com.jero.project.entity.PayCommonProject">
|
<select id="queryPackListCount" resultType="com.jero.project.entity.PayCommonProject">
|
||||||
SELECT
|
SELECT sum(ppr.amount_received) AS paid_amount FROM pay_pack_company_project ppcp
|
||||||
sum(paid_amount) as paid_amount
|
LEFT JOIN pay_payment_record ppr ON ppcp.project_id = ppr.project_id
|
||||||
FROM (
|
WHERE ppcp.pack_id = #{packId}
|
||||||
<!-- 普通项目-->
|
|
||||||
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>
|
|
||||||
<if test="companyId != null and companyId != ''">
|
|
||||||
AND c.charge_company_id = #{companyId}
|
|
||||||
</if>
|
|
||||||
</where>
|
|
||||||
<!--工作组项目-->
|
|
||||||
UNION ALL
|
|
||||||
select gsub.id,g.working_group_project, gsub.charge_use, g.principal_id_a,g.principal_name_a,gsub.charge_company_temporary_name,gsub.receivable_amount,gsub.paid_amount,gsub.need_invoice,gsub.pack,gsub.in_account,gsub.make_invoice,gsub.mail,gsub.create_time,2
|
|
||||||
from pay_working_group g
|
|
||||||
inner join pay_working_group_subitem gsub on g.id = gsub.working_group_id
|
|
||||||
<where>
|
|
||||||
<if test="companyId != null and companyId != ''">
|
|
||||||
AND gsub.charge_company_id = #{companyId}
|
|
||||||
</if>
|
|
||||||
</where>
|
|
||||||
<!-- 会议项目-->
|
|
||||||
UNION ALL
|
|
||||||
select sit.id,meeting.meeting_name,sit.charge_use, meeting.director_id, meeting.director_name,sit.company_name,sit.amount_receivable,sit.paid_amount,sit.need_invoice,sit.pack,sit.in_account,sit.make_invoice,sit.mail,sit.create_time,3
|
|
||||||
from pay_meeting meeting
|
|
||||||
inner join pay_meeting_situation sit on meeting.id = sit.meeting_id
|
|
||||||
<where>
|
|
||||||
<if test="companyId != null and companyId != ''">
|
|
||||||
AND sit.company_id = #{companyId}
|
|
||||||
</if>
|
|
||||||
</where>
|
|
||||||
<!-- 会员项目-->
|
|
||||||
UNION ALL
|
|
||||||
select msub.id,pmp.project_name,msub.charge_use,pmp.director_id,pmp.director_name,msub.company_name,msub.amount_receivable,msub.paid_amount,msub.need_invoice,msub.pack,msub.in_account,msub.make_invoice,msub.mail,msub.create_time,4
|
|
||||||
from pay_member_project pmp
|
|
||||||
inner join pay_member_project_subitem msub on pmp.id=msub.project_id
|
|
||||||
<where>
|
|
||||||
<if test="companyId != null and companyId != ''">
|
|
||||||
AND msub.company_id = #{companyId}
|
|
||||||
</if>
|
|
||||||
</where>
|
|
||||||
<!-- 标协会员项目-->
|
|
||||||
UNION ALL
|
|
||||||
select tmsub.id,tmember.project_name,tmsub.charge_use,'','',tmsub.company_name,tmsub.amount_receivable,tmsub.paid_amount,tmsub.invoice_requirements,tmsub.pack,tmsub.in_account,tmsub.make_invoice,tmsub.mail,tmsub.create_time,5
|
|
||||||
from tb_member_project tmember
|
|
||||||
inner join tb_member_project_subitem tmsub on tmember.id=tmsub.project_id
|
|
||||||
<where>
|
|
||||||
<if test="companyId != null and companyId != ''">
|
|
||||||
AND tmsub.company_id = #{companyId}
|
|
||||||
</if>
|
|
||||||
</where>
|
|
||||||
) project
|
|
||||||
<if test="packId != null and packId != ''">
|
|
||||||
WHERE project.id NOT IN (SELECT project_id FROM pay_pack_company_project where pack_id = #{packId})
|
|
||||||
</if>
|
|
||||||
</select>
|
</select>
|
||||||
</mapper>
|
</mapper>
|
||||||
Reference in New Issue
Block a user