|
|
@@ -9,12 +9,11 @@ import java.util.UUID;
|
|
|
import javax.mail.MessagingException;
|
|
|
|
|
|
import com.goafanti.admin.bo.AdminListBo;
|
|
|
+import com.goafanti.common.bo.OrderOperator;
|
|
|
import com.goafanti.common.constant.AFTConstants;
|
|
|
import com.goafanti.common.dao.*;
|
|
|
import com.goafanti.common.enums.NoticeStatus;
|
|
|
-import com.goafanti.common.model.Admin;
|
|
|
-import com.goafanti.common.model.TChangeTask;
|
|
|
-import com.goafanti.common.model.TOrderNew;
|
|
|
+import com.goafanti.common.model.*;
|
|
|
import com.goafanti.core.shiro.token.TokenManager;
|
|
|
import com.goafanti.order.bo.NewOrderChangeBo;
|
|
|
import com.goafanti.order.enums.OrderChangeProcess;
|
|
|
@@ -26,7 +25,6 @@ import org.springframework.stereotype.Component;
|
|
|
|
|
|
import com.goafanti.common.bo.EmailBo;
|
|
|
import com.goafanti.common.enums.NoticeTypes;
|
|
|
-import com.goafanti.common.model.Notice;
|
|
|
|
|
|
@Component
|
|
|
@Async
|
|
|
@@ -41,6 +39,8 @@ public class AsyncUtils {
|
|
|
private NewOrderChangeMapper newOrderChangeMapper;
|
|
|
@Autowired
|
|
|
private TOrderInvoiceMapper tOrderInvoiceMapper;
|
|
|
+ @Autowired
|
|
|
+ private TOrderTaskMapper tOrderTaskMapper;
|
|
|
|
|
|
|
|
|
|
|
|
@@ -174,16 +174,58 @@ public class AsyncUtils {
|
|
|
|
|
|
/**
|
|
|
*
|
|
|
- * @param orderNo 订单编号
|
|
|
- * @param type 发送对象 0营销管理员
|
|
|
+ * @param type 发送对象 0营销管理员 1 通知所有人
|
|
|
+ * @param sotpType 发送对象 类型 0=项目暂停,1=项目重启
|
|
|
+ *
|
|
|
*/
|
|
|
- public void addProjectSotpNotic(String orderNo, Integer type,String ids) {
|
|
|
+ public void addProjectSotpNotic(Integer type, Integer sotpType, String ids, TOrderTask task) {
|
|
|
+ Integer noticeType=0;
|
|
|
if (type==0){
|
|
|
- String str=String.format("订单编号[%s]项目编号[%s],请及时审核",orderNo,ids);
|
|
|
- TOrderNew tOrderNew = tOrderNewMapper.selectByPrimaryKey(orderNo);
|
|
|
+ noticeType=sotpType==0?NoticeStatus.PROJECT_SOPT_START.getCode() :NoticeStatus.PROJECT_RENEW_START.getCode();
|
|
|
+ String[] split = ids.split(",");
|
|
|
+ task = tOrderTaskMapper.selectByPrimaryKey(Integer.valueOf(split[0]));
|
|
|
+
|
|
|
+ String str=String.format("订单编号[%s]项目编号[%s],请及时审核",task.getOrderNo(),ids);
|
|
|
+ TOrderNew tOrderNew = tOrderNewMapper.selectByPrimaryKey(task.getOrderNo());
|
|
|
List<Admin> admins = adminMapper.listAdminBydepIdAndRoleType(tOrderNew.getOrderDep(),AFTConstants.SALESMAN_ADMIN);
|
|
|
for (Admin admin : admins) {
|
|
|
- addNotic(NoticeStatus.PROJECT_START.getCode(),admin.getId(), str);
|
|
|
+ addNotic( noticeType,admin.getId(), str);
|
|
|
+ }
|
|
|
+ }else if(type==1){
|
|
|
+ String str=String.format("订单编号[%s]项目编号[%s],已%s请悉知。",task.getOrderNo(),task.getId(),type==1?"恢复":"暂停");
|
|
|
+ noticeType=sotpType==0?NoticeStatus.PROJECT_SOPT_YES.getCode() :NoticeStatus.PROJECT_RENEW_YES.getCode();
|
|
|
+ List<String> list = new ArrayList<>();
|
|
|
+ if (task.getConsultantId()!=null)list.add(task.getConsultantId());
|
|
|
+ if (task.getManagerId()!=null)list.add(task.getManagerId());
|
|
|
+ OrderOperator orderOperator = tOrderTaskMapper.selectAidByParam(task.getId());
|
|
|
+ if (orderOperator.getFinanceId()!=null)list.add(orderOperator.getFinanceId());
|
|
|
+ if (orderOperator.getSalesmanId()!=null)list.add(orderOperator.getSalesmanName());
|
|
|
+ List<Admin> cwgly = adminMapper.selectAdminByRoleType(AFTConstants.FINANCE_ADMIN);
|
|
|
+ for (Admin admin : cwgly) {
|
|
|
+ list.add(admin.getId());
|
|
|
+ }
|
|
|
+ List<Admin> zxsgly = adminMapper.selectAdminByRoleType(AFTConstants.TECH_ADMIN);
|
|
|
+ for (Admin admin : zxsgly) {
|
|
|
+ list.add(admin.getId());
|
|
|
+ }
|
|
|
+ List<Admin> zc = adminMapper.selectAdminByRoleType(AFTConstants.CED);
|
|
|
+ for (Admin admin : zc) {
|
|
|
+ list.add(admin.getId());
|
|
|
+ }
|
|
|
+ List<Admin> dsz = adminMapper.selectAdminByRoleType(AFTConstants.APPROVAL_DECISION);
|
|
|
+ for (Admin admin : dsz) {
|
|
|
+ list.add(admin.getId());
|
|
|
+ }
|
|
|
+ if (!list.isEmpty()){
|
|
|
+ List<Notice> notes=new ArrayList<>();
|
|
|
+
|
|
|
+ for (String s : list) {
|
|
|
+ notes.add(new Notice(UUID.randomUUID().toString(), new Date(), 0, s,
|
|
|
+ noticeType, str));
|
|
|
+
|
|
|
+ }
|
|
|
+ noticeMapper.insertBatch(notes);
|
|
|
+
|
|
|
}
|
|
|
}
|
|
|
|