工作组变更
This commit is contained in:
+58
-1
@@ -4,6 +4,8 @@ import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
@@ -14,16 +16,21 @@ import com.jero.common.system.api.ISysBaseAPI;
|
||||
import com.jero.common.system.base.controller.JeroController;
|
||||
import com.jero.common.system.query.QueryGenerator;
|
||||
import com.jero.common.system.vo.DictModel;
|
||||
import com.jero.common.util.PasswordUtil;
|
||||
import com.jero.common.util.ValidUtil;
|
||||
import com.jero.common.vo.ProjectDetailVO;
|
||||
import com.jero.contract.entity.PayIncomeContractAssociated;
|
||||
import com.jero.contract.service.IPayIncomeContractAssociatedService;
|
||||
import com.jero.modules.message.handle.impl.EmailSendMsgHandle;
|
||||
import com.jero.project.common.PayProjectCommon;
|
||||
import com.jero.project.entity.*;
|
||||
import com.jero.project.service.IPayWorkingGroupService;
|
||||
import com.jero.project.service.IPayWorkingGroupSubItemService;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.jero.project.vo.SetChargeInput;
|
||||
import com.jero.temporary.entity.PayContactsManagementTemporary;
|
||||
import com.jero.temporary.service.IPayContactsManagementTemporaryService;
|
||||
import com.jero.util.AmountUtil;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.collections.CollectionUtils;
|
||||
@@ -57,6 +64,10 @@ public class PayWorkingGroupSubItemController extends JeroController<PayWorkingG
|
||||
private ProjectDetailService projectDetailService;
|
||||
@Autowired
|
||||
private IPayIncomeContractAssociatedService payIncomeContractAssociatedService;
|
||||
@Autowired
|
||||
private IPayContactsManagementTemporaryService payContactsManagementTemporaryService;
|
||||
@Autowired
|
||||
private IPayWorkingGroupService payWorkingGroupService;
|
||||
|
||||
/**
|
||||
* 分页列表查询
|
||||
@@ -116,11 +127,57 @@ public class PayWorkingGroupSubItemController extends JeroController<PayWorkingG
|
||||
if (!StringUtils.isBlank(msg)) {
|
||||
return Result.error(msg.toString());
|
||||
}
|
||||
// todo 缺少修改应收金额时查询状态,更新状态
|
||||
payWorkingGroupSubItemService.editPayWorkingGroupSubItem(payWorkingGroupSubItem);
|
||||
return Result.OK("编辑成功!");
|
||||
}
|
||||
|
||||
/**
|
||||
* 催款提醒
|
||||
*
|
||||
* @param payWorkingGroupSubItem 工作组成员
|
||||
* @return
|
||||
*/
|
||||
@ApiOperation(value = "工作组成员-催款提醒", notes = "工作组成员-催款提醒")
|
||||
@PostMapping(value = "/reminders")
|
||||
public Result<?> reminders(@RequestBody PayWorkingGroupSubItem payWorkingGroupSubItem) {
|
||||
if (StringUtils.isBlank(payWorkingGroupSubItem.getProjectIds())) {
|
||||
return Result.error("id不能为空!");
|
||||
}
|
||||
String[] s = payWorkingGroupSubItem.getProjectIds().split(",");
|
||||
for (String s1 : s) {
|
||||
if (StringUtils.isBlank(s1)) {
|
||||
return Result.error("id不能为空!");
|
||||
}
|
||||
}
|
||||
List<PayWorkingGroupSubItem> listPayWorkingGroupSubItem = payWorkingGroupSubItemService.listByIds(Arrays.asList(s));
|
||||
if(CollectionUtils.isEmpty(listPayWorkingGroupSubItem)){
|
||||
return Result.error("项目不存在!");
|
||||
}
|
||||
PayWorkingGroup payWorkingGroup = payWorkingGroupService.getById(listPayWorkingGroupSubItem.get(0).getWorkingGroupId());
|
||||
if(Objects.isNull(payWorkingGroup)){
|
||||
return Result.error("工作组不存在!");
|
||||
}
|
||||
List<String> listContacts = listPayWorkingGroupSubItem.stream().map(PayWorkingGroupSubItem::getContactsTemporaryIdOne).collect(Collectors.toList());
|
||||
List<PayContactsManagementTemporary> listPayContactsManagementTemporary = payContactsManagementTemporaryService.listByIds(listContacts);
|
||||
if(CollectionUtils.isEmpty(listPayContactsManagementTemporary)){
|
||||
return Result.error("联系人不存在!");
|
||||
}
|
||||
listPayWorkingGroupSubItem.forEach(p->{
|
||||
List<PayContactsManagementTemporary> listContactsEmail = listPayContactsManagementTemporary.stream().filter(item->Objects.equals(p.getContactsTemporaryIdOne(),item.getId())).collect(Collectors.toList());
|
||||
if(CollectionUtils.isEmpty(listContactsEmail)){
|
||||
return;
|
||||
}
|
||||
if(StringUtils.isBlank(listContactsEmail.get(0).getEmail())){
|
||||
return;
|
||||
}
|
||||
String msg = "中汽数据中心提醒您,贵公司与中汽数据签订的" + payWorkingGroup.getWorkingGroupProject()
|
||||
+ "项目款项仍未结余,请及时汇款,如已经汇款,请忽略此条通知。谢谢合作";
|
||||
EmailSendMsgHandle emailHandle = new EmailSendMsgHandle();
|
||||
emailHandle.SendMsg(PasswordUtil.decrypt(listContactsEmail.get(0).getEmail()), "", msg);
|
||||
});
|
||||
return Result.OK("添加成功!");
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过id删除
|
||||
*
|
||||
|
||||
+6
@@ -4,6 +4,7 @@ import java.io.Serializable;
|
||||
import java.math.BigDecimal;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.jero.common.aspect.annotation.Dict;
|
||||
@@ -184,4 +185,9 @@ public class PayWorkingGroupSubItem implements Serializable {
|
||||
@DecimalMax(value = "9999999999.99",message = "开票金额格式错误")
|
||||
@JsonFormat(shape = JsonFormat.Shape.STRING)
|
||||
private BigDecimal invoiceAmount;
|
||||
|
||||
/**项目ids 多个以逗号分隔*/
|
||||
@TableField(exist = false)
|
||||
@ApiModelProperty(value = "项目ids 多个以逗号分隔")
|
||||
private java.lang.String projectIds;
|
||||
}
|
||||
|
||||
+62
-17
@@ -1,11 +1,16 @@
|
||||
package com.jero.project.service.impl;
|
||||
|
||||
import com.alibaba.fastjson.JSON;
|
||||
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.common.util.PasswordUtil;
|
||||
import com.jero.company.entity.PayContactsManagement;
|
||||
import com.jero.company.service.IPayContactsManagementService;
|
||||
import com.jero.modules.message.handle.impl.EmailSendMsgHandle;
|
||||
import com.jero.modules.oss.entity.OSSFile;
|
||||
import com.jero.modules.oss.service.IOSSFileService;
|
||||
import com.jero.project.common.PayProjectCommon;
|
||||
import com.jero.project.entity.PayWorkingGroupDataFile;
|
||||
import com.jero.project.entity.PayWorkingGroupDistributionRecord;
|
||||
@@ -19,9 +24,11 @@ import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import java.util.Objects;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
@@ -40,6 +47,9 @@ public class PayWorkingGroupDistributionRecordServiceImpl extends ServiceImpl<Pa
|
||||
@Autowired
|
||||
private IPayWorkingGroupDataFileService payWorkingGroupDataFileService;
|
||||
|
||||
@Resource
|
||||
private IOSSFileService iossFileService;
|
||||
|
||||
@Override
|
||||
public void add(PayWorkingGroupDistributionRecord payWorkingGroupDistributionRecord) {
|
||||
if(StringUtils.isBlank(payWorkingGroupDistributionRecord.getContactsIds())){
|
||||
@@ -55,14 +65,21 @@ public class PayWorkingGroupDistributionRecordServiceImpl extends ServiceImpl<Pa
|
||||
throw new JeroBootException("资料id不能为空!");
|
||||
}
|
||||
PayWorkingGroupDataFile payWorkingGroupDataFile = payWorkingGroupDataFileService.getById(payWorkingGroupDistributionRecord.getDataId());
|
||||
|
||||
if(Objects.isNull(payWorkingGroupDataFile)){
|
||||
throw new JeroBootException("没有找到文件!");
|
||||
}
|
||||
OSSFile byId = iossFileService.getById(payWorkingGroupDataFile.getFileId());
|
||||
// 文件名称
|
||||
String fileName = byId.getFileName();
|
||||
List<String> listFile = new ArrayList<>();
|
||||
listFile.add(fileName);
|
||||
List<String> list = new ArrayList<>();
|
||||
if(payWorkingGroupDistributionRecord.getProjectType() != PayProjectCommon.PROJECT_TYPE_FILE1){
|
||||
LambdaQueryWrapper<PayContactsManagementTemporary> queryPayContactsManagementTemporary = new LambdaQueryWrapper<>();
|
||||
queryPayContactsManagementTemporary.in(PayContactsManagementTemporary::getId, Arrays.asList(payWorkingGroupDistributionRecord.getContactsIds().split(",")));
|
||||
queryPayContactsManagementTemporary.in(PayContactsManagementTemporary::getId, Arrays.asList(s));
|
||||
List<PayContactsManagementTemporary> listContacts = payContactsManagementTemporaryService.list(queryPayContactsManagementTemporary);
|
||||
if(!CollectionUtils.isEmpty(listContacts)){
|
||||
// todo 调用发送邮箱接口
|
||||
List<String> list = listContacts.stream().map(PayContactsManagementTemporary::getEmail).collect(Collectors.toList());
|
||||
list = listContacts.stream().map(PayContactsManagementTemporary::getEmail).collect(Collectors.toList());
|
||||
}
|
||||
|
||||
}else if(payWorkingGroupDistributionRecord.getProjectType() != PayProjectCommon.PROJECT_TYPE_FILE2){
|
||||
@@ -70,12 +87,23 @@ public class PayWorkingGroupDistributionRecordServiceImpl extends ServiceImpl<Pa
|
||||
queryPayContactsManagement.in(PayContactsManagement::getId, Arrays.asList(payWorkingGroupDistributionRecord.getContactsIds().split(",")));
|
||||
List<PayContactsManagement> listContacts = payContactsManagementService.list(queryPayContactsManagement);
|
||||
if(!CollectionUtils.isEmpty(listContacts)){
|
||||
// todo 调用发送邮箱接口
|
||||
List<String> list = listContacts.stream().map(PayContactsManagement::getEmail).collect(Collectors.toList());
|
||||
list = listContacts.stream().map(PayContactsManagement::getEmail).collect(Collectors.toList());
|
||||
}
|
||||
}else{
|
||||
throw new JeroBootException("项目状态不正确!");
|
||||
}
|
||||
if(CollectionUtils.isEmpty(list) || CollectionUtils.isEmpty(listFile)){
|
||||
throw new JeroBootException("分发失败!");
|
||||
}
|
||||
list.forEach(p->{
|
||||
if(StringUtils.isBlank(p)){
|
||||
return;
|
||||
}
|
||||
p = PasswordUtil.decrypt(p);
|
||||
});
|
||||
String str = JSON.toJSONString(list);
|
||||
EmailSendMsgHandle emailHandle = new EmailSendMsgHandle();
|
||||
emailHandle.SendMsgAndFile(str, "", "", listFile);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -99,30 +127,47 @@ public class PayWorkingGroupDistributionRecordServiceImpl extends ServiceImpl<Pa
|
||||
}
|
||||
}
|
||||
|
||||
List<PayWorkingGroupDataFile> listPayWorkingGroupDataFile = payWorkingGroupDataFileService.list();
|
||||
|
||||
|
||||
List<PayWorkingGroupDataFile> listPayWorkingGroupDataFile = payWorkingGroupDataFileService.listByIds(Arrays.asList(payWorkingGroupDistributionRecord.getDataIds().split(",")));
|
||||
if(CollectionUtils.isEmpty(listPayWorkingGroupDataFile)){
|
||||
throw new JeroBootException("没有找到文件!");
|
||||
}
|
||||
List<String> listFile = new ArrayList<>();
|
||||
listPayWorkingGroupDataFile.forEach(p->{
|
||||
OSSFile byId = iossFileService.getById(p.getFileId());
|
||||
// 文件名称
|
||||
String fileName = byId.getFileName();
|
||||
listFile.add(fileName);
|
||||
});
|
||||
List<String> list = new ArrayList<>();
|
||||
if(payWorkingGroupDistributionRecord.getProjectType() != PayProjectCommon.PROJECT_TYPE_FILE1){
|
||||
LambdaQueryWrapper<PayContactsManagementTemporary> queryPayContactsManagementTemporary = new LambdaQueryWrapper<>();
|
||||
queryPayContactsManagementTemporary.in(PayContactsManagementTemporary::getId, Arrays.asList(payWorkingGroupDistributionRecord.getContactsIds().split(",")));
|
||||
queryPayContactsManagementTemporary.in(PayContactsManagementTemporary::getId, Arrays.asList(s));
|
||||
List<PayContactsManagementTemporary> listContacts = payContactsManagementTemporaryService.list(queryPayContactsManagementTemporary);
|
||||
if(!CollectionUtils.isEmpty(listContacts)){
|
||||
// todo 调用发送邮箱接口
|
||||
List<String> list = listContacts.stream().map(PayContactsManagementTemporary::getEmail).collect(Collectors.toList());
|
||||
list = listContacts.stream().map(PayContactsManagementTemporary::getEmail).collect(Collectors.toList());
|
||||
}
|
||||
|
||||
}else if(payWorkingGroupDistributionRecord.getProjectType() != PayProjectCommon.PROJECT_TYPE_FILE2){
|
||||
LambdaQueryWrapper<PayContactsManagement> queryPayContactsManagement = new LambdaQueryWrapper<>();
|
||||
queryPayContactsManagement.in(PayContactsManagement::getId, Arrays.asList(payWorkingGroupDistributionRecord.getContactsIds().split(",")));
|
||||
queryPayContactsManagement.in(PayContactsManagement::getId, Arrays.asList(n));
|
||||
List<PayContactsManagement> listContacts = payContactsManagementService.list(queryPayContactsManagement);
|
||||
if(!CollectionUtils.isEmpty(listContacts)){
|
||||
// todo 调用发送邮箱接口
|
||||
List<String> list = listContacts.stream().map(PayContactsManagement::getEmail).collect(Collectors.toList());
|
||||
list = listContacts.stream().map(PayContactsManagement::getEmail).collect(Collectors.toList());
|
||||
}
|
||||
}else{
|
||||
throw new JeroBootException("项目状态不正确!");
|
||||
}
|
||||
// EmailSendMsgHandle emailHandle = new EmailSendMsgHandle();
|
||||
// emailHandle.SendMsgAndFile(mails, stringBuilder.toString(), stringBuilder.toString(), fileList);
|
||||
if(CollectionUtils.isEmpty(list) || CollectionUtils.isEmpty(listFile)){
|
||||
throw new JeroBootException("分发失败!");
|
||||
}
|
||||
list.forEach(p->{
|
||||
if(StringUtils.isBlank(p)){
|
||||
return;
|
||||
}
|
||||
p = PasswordUtil.decrypt(p);
|
||||
});
|
||||
String str = JSON.toJSONString(list);
|
||||
EmailSendMsgHandle emailHandle = new EmailSendMsgHandle();
|
||||
emailHandle.SendMsgAndFile(str, "", "", listFile);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user