Browse Source

Merge branch 'invest-dev-hxy' of http://git.dgtis.com/15896567520/RuoYi-flowable-master into invest-dev-slp

sunny 3 days ago
parent
commit
71595cf561
39 changed files with 524 additions and 199 deletions
  1. 61 0
      ruoyi-admin/src/main/resources/application-dev.yml
  2. 30 25
      ruoyi-flowable/src/main/java/com/ruoyi/flowable/service/impl/ApprovalServiceImpl.java
  3. 29 25
      ruoyi-flowable/src/main/java/com/ruoyi/flowable/service/impl/DecisionServiceImpl.java
  4. 28 25
      ruoyi-flowable/src/main/java/com/ruoyi/flowable/service/impl/InvestigateServiceImpl.java
  5. 30 25
      ruoyi-flowable/src/main/java/com/ruoyi/flowable/service/impl/InvestmentOpportunityServiceImpl.java
  6. 24 18
      ruoyi-flowable/src/main/java/com/ruoyi/flowable/service/impl/TerminationServiceImpl.java
  7. 6 1
      ruoyi-ui/src/views/project/approval/audit.vue
  8. 6 1
      ruoyi-ui/src/views/project/approval/detail.vue
  9. 6 1
      ruoyi-ui/src/views/project/approval/edit.vue
  10. 6 1
      ruoyi-ui/src/views/project/approval/projectItem.vue
  11. 6 1
      ruoyi-ui/src/views/project/decision/audit.vue
  12. 6 1
      ruoyi-ui/src/views/project/decision/detail.vue
  13. 6 1
      ruoyi-ui/src/views/project/decision/edit.vue
  14. 6 1
      ruoyi-ui/src/views/project/decision/projectItem.vue
  15. 25 7
      ruoyi-ui/src/views/project/investOpp/apply.vue
  16. 18 4
      ruoyi-ui/src/views/project/investOpp/audit.vue
  17. 19 4
      ruoyi-ui/src/views/project/investOpp/detail.vue
  18. 25 7
      ruoyi-ui/src/views/project/investOpp/edit.vue
  19. 18 0
      ruoyi-ui/src/views/project/investOpp/myTask.vue
  20. 9 4
      ruoyi-ui/src/views/project/investOpp/processList.vue
  21. 6 1
      ruoyi-ui/src/views/project/investigate/audit.vue
  22. 6 1
      ruoyi-ui/src/views/project/investigate/detail.vue
  23. 6 1
      ruoyi-ui/src/views/project/investigate/edit.vue
  24. 6 1
      ruoyi-ui/src/views/project/investigate/projectItem.vue
  25. 8 4
      ruoyi-ui/src/views/project/listStage/listApproval.vue
  26. 8 4
      ruoyi-ui/src/views/project/listStage/listDecision.vue
  27. 8 1
      ruoyi-ui/src/views/project/listStage/listInvestOpp.vue
  28. 8 4
      ruoyi-ui/src/views/project/listStage/listInvestigate.vue
  29. 8 1
      ruoyi-ui/src/views/project/listStage/listPool.vue
  30. 8 1
      ruoyi-ui/src/views/project/listStage/listSign.vue
  31. 2 4
      ruoyi-ui/src/views/project/listStage/terminationList.vue
  32. 2 4
      ruoyi-ui/src/views/project/listStage/watchList.vue
  33. 6 1
      ruoyi-ui/src/views/project/poolDetail.vue
  34. 28 8
      ruoyi-ui/src/views/project/poolEdit.vue
  35. 26 7
      ruoyi-ui/src/views/project/poolForm.vue
  36. 6 1
      ruoyi-ui/src/views/project/termination/audit.vue
  37. 6 1
      ruoyi-ui/src/views/project/termination/detail.vue
  38. 6 1
      ruoyi-ui/src/views/project/termination/edit.vue
  39. 6 1
      ruoyi-ui/src/views/project/termination/projectItem.vue

+ 61 - 0
ruoyi-admin/src/main/resources/application-dev.yml

@@ -0,0 +1,61 @@
+# 数据源配置
+spring:
+    datasource:
+        type: com.alibaba.druid.pool.DruidDataSource
+        driverClassName: com.mysql.cj.jdbc.Driver
+        druid:
+            # 主库数据源
+            master:
+                url: jdbc:mysql://47.103.79.143:3306/tony-invest-uat?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&nullCatalogMeansCurrent=true
+                username: oneportal
+                password: Dgtis_oneportal
+            # 从库数据源
+            slave:
+                # 从数据源开关/默认关闭
+                enabled: false
+                url: 
+                username: 
+                password: 
+            # 初始连接数
+            initialSize: 5
+            # 最小连接池数量
+            minIdle: 10
+            # 最大连接池数量
+            maxActive: 20
+            # 配置获取连接等待超时的时间
+            maxWait: 60000
+            # 配置连接超时时间
+            connectTimeout: 30000
+            # 配置网络超时时间
+            socketTimeout: 60000
+            # 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒
+            timeBetweenEvictionRunsMillis: 60000
+            # 配置一个连接在池中最小生存的时间,单位是毫秒
+            minEvictableIdleTimeMillis: 300000
+            # 配置一个连接在池中最大生存的时间,单位是毫秒
+            maxEvictableIdleTimeMillis: 900000
+            # 配置检测连接是否有效
+            validationQuery: SELECT 1 FROM DUAL
+            testWhileIdle: true
+            testOnBorrow: false
+            testOnReturn: false
+            webStatFilter: 
+                enabled: true
+            statViewServlet:
+                enabled: true
+                # 设置白名单,不填则允许所有访问
+                allow: 222.141.1.33
+                url-pattern: /druid/*
+                # 控制台管理用户名和密码
+                login-username: ruoyi
+                login-password: DGT1qaz2wsx
+            filter:
+                stat:
+                    enabled: true
+                    # 慢SQL记录
+                    log-slow-sql: true
+                    slow-sql-millis: 10000
+                    merge-sql: true
+                wall:
+                    config:
+                        multi-statement-allow: true

+ 30 - 25
ruoyi-flowable/src/main/java/com/ruoyi/flowable/service/impl/ApprovalServiceImpl.java

@@ -6,6 +6,7 @@ import com.ruoyi.common.enums.FileType;
 import com.ruoyi.common.utils.DateUtils;
 import com.ruoyi.common.utils.SecurityUtils;
 import com.ruoyi.common.utils.StringUtils;
+import com.ruoyi.common.utils.sms.SmsSenderUtils;
 import com.ruoyi.common.utils.uuid.IdUtils;
 import com.ruoyi.flowable.common.constant.ProcessConstants;
 import com.ruoyi.flowable.common.constant.UUIDGenerator;
@@ -29,9 +30,11 @@ import org.flowable.task.api.Task;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
 
 import javax.servlet.http.HttpServletRequest;
+import java.io.IOException;
 import java.util.*;
 
 /**
@@ -44,6 +47,8 @@ import java.util.*;
 public class ApprovalServiceImpl extends FlowServiceFactory implements IApprovalService
 {
     protected final Logger logger = LoggerFactory.getLogger(this.getClass());
+    @Value("${spring.profiles.active}")
+    private String active;
     @Autowired
     private ApprovalMapper approvalMapper;
     @Autowired
@@ -205,8 +210,10 @@ public class ApprovalServiceImpl extends FlowServiceFactory implements IApproval
                     if(flowBaseInfo.isFlag()){
                         getAssignee(tProjectApproval,flowBaseInfo);
                     }
-                    //todo 短信
-                    //sendMessage(flowBaseInfo,"");
+                    if (Objects.equals(active, "druid")) {
+                        //todo 短信
+                        sendMessage(flowBaseInfo,"");
+                    }
                     return AjaxResult.success();
                 }
                 return AjaxResult.error();
@@ -451,8 +458,10 @@ public class ApprovalServiceImpl extends FlowServiceFactory implements IApproval
             if(flow.isFlag()){
                 getAssignee(tProjectApproval,flow);
             }
-            // todo 短信提醒
-            //sendMessage(flow,result);
+            if (Objects.equals(active, "druid")) {
+                // todo 短信提醒
+                sendMessage(flow,result);
+            }
         }
         return AjaxResult.success();
     }
@@ -514,25 +523,23 @@ public class ApprovalServiceImpl extends FlowServiceFactory implements IApproval
                             String assignee = task.getAssignee();
                             if (org.apache.commons.lang3.StringUtils.isNotBlank(assignee)) { // 给审批人发送短信
                                 SysUser auditUser = sysUserService.selectUserById(Long.valueOf(assignee));
-                                String auditContents = auditUser.getNickName() + ",您好。投资系统中" + projectApproval.getProjectName() + "的项目立项流程待处理";
-                                System.out.println(auditContents);
+                                String auditContents = auditUser.getNickName() + ",您好。投资系统中" + projectApproval.getProjectName() + "的项目立项流程待处理,请查看!";
                                 if (auditUser != null && StringUtils.isNotBlank(auditUser.getPhonenumber())) {
-                                    /*try{
+                                    try{
                                         SmsSenderUtils.sendSms(auditUser.getPhonenumber(), auditContents);
                                     } catch (IOException e) {
                                         logger.error("短信发送失败"+e.getMessage());
-                                    }*/
+                                    }
                                 }
                             }
                         } else { // 审批人驳回,给申请人发短信
-                            String rejectContents = applyUserInfo.getNickName()+",您好。你在投资系统中提交" + projectApproval.getProjectName() + "的项目立项申请已审核,结果为【驳回】";
-                            System.out.println(rejectContents);
+                            String rejectContents = applyUserInfo.getNickName()+",您好。你在投资系统中提交" + projectApproval.getProjectName() + "的项目立项申请已审核,结果为【驳回】,请查看!";
                             if (applyUserInfo != null && StringUtils.isNotBlank(applyUserInfo.getPhonenumber())) {
-                                /*try{
-                                    SmsSenderUtils.sendSms(rejectUser.getPhonenumber(), rejectContents);
+                                try{
+                                    SmsSenderUtils.sendSms(applyUserInfo.getPhonenumber(), rejectContents);
                                 } catch (IOException e) {
                                     logger.error("短信发送失败"+e.getMessage());
-                                }*/
+                                }
                             }
                         }
                     }
@@ -543,26 +550,24 @@ public class ApprovalServiceImpl extends FlowServiceFactory implements IApproval
             if(flag) {
                 // 审批完成,给申请人发短信
                 //XXX,您好。你在投资系统中提交“XXX”的项目立项申请已审核,结果为【通过】/【驳回】/【观望】!
-                completeContents = applyUserInfo.getNickName()+",您好。你在投资系统中提交" + projectApproval.getProjectName() + "的项目立项申请已审核,结果为【同意】";
-                System.out.println(completeContents);
+                completeContents = applyUserInfo.getNickName()+",您好。你在投资系统中提交" + projectApproval.getProjectName() + "的项目立项申请已审核,结果为【同意】,请查看!";
                 if (applyUserInfo != null && StringUtils.isNotBlank(applyUserInfo.getPhonenumber())) {
-                    /*try{
-                        SmsSenderUtils.sendSms(completeUser.getPhonenumber(), completeContents);
+                    try{
+                        SmsSenderUtils.sendSms(applyUserInfo.getPhonenumber(), completeContents);
                     } catch (IOException e) {
                         logger.error("短信发送失败"+e.getMessage());
-                    }*/
+                    }
                 }
 
             }else{
                 if(StringUtils.isNotEmpty(result)){//代表是终止或者观望
-                    completeContents = applyUserInfo.getNickName()+",您好。你在投资系统中提交" + projectApproval.getProjectName() + "的项目立项申请已审核,结果为"+result;
-                    System.out.println(completeContents);
+                    completeContents = applyUserInfo.getNickName()+",您好。你在投资系统中提交" + projectApproval.getProjectName() + "的项目立项申请已审核,结果为"+result+",请查看!";
                     if (applyUserInfo != null && StringUtils.isNotBlank(applyUserInfo.getPhonenumber())) {
-                    /*try{
-                        SmsSenderUtils.sendSms(completeUser.getPhonenumber(), completeContents);
-                    } catch (IOException e) {
-                        logger.error("短信发送失败"+e.getMessage());
-                    }*/
+                        try{
+                            SmsSenderUtils.sendSms(applyUserInfo.getPhonenumber(), completeContents);
+                        } catch (IOException e) {
+                            logger.error("短信发送失败"+e.getMessage());
+                        }
                     }
                 }
             }

+ 29 - 25
ruoyi-flowable/src/main/java/com/ruoyi/flowable/service/impl/DecisionServiceImpl.java

@@ -6,6 +6,7 @@ import com.ruoyi.common.enums.FileType;
 import com.ruoyi.common.utils.DateUtils;
 import com.ruoyi.common.utils.SecurityUtils;
 import com.ruoyi.common.utils.StringUtils;
+import com.ruoyi.common.utils.sms.SmsSenderUtils;
 import com.ruoyi.common.utils.uuid.IdUtils;
 import com.ruoyi.flowable.common.constant.ProcessConstants;
 import com.ruoyi.flowable.common.constant.UUIDGenerator;
@@ -29,6 +30,7 @@ import org.flowable.task.api.Task;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
 
 import javax.servlet.http.HttpServletRequest;
@@ -45,6 +47,8 @@ import java.util.*;
 public class DecisionServiceImpl extends FlowServiceFactory implements IDecisionService
 {
     protected final Logger logger = LoggerFactory.getLogger(this.getClass());
+    @Value("${spring.profiles.active}")
+    private String active;
     @Autowired
     private DecisionMapper decisionMapper;
     @Autowired
@@ -203,8 +207,10 @@ public class DecisionServiceImpl extends FlowServiceFactory implements IDecision
                     if(flowBaseInfo.isFlag()){
                         getAssignee(tProjectDecision,flowBaseInfo);
                     }
-                    // todo 短信
-                    //sendMessage(flowBaseInfo,"");
+                    if (Objects.equals(active, "druid")) {
+                        // todo 短信
+                        sendMessage(flowBaseInfo,"");
+                    }
                     return AjaxResult.success();
                 }
                 return AjaxResult.error();
@@ -409,8 +415,10 @@ public class DecisionServiceImpl extends FlowServiceFactory implements IDecision
             if(flow.isFlag()){
                 getAssignee(tProjectDecision,flow);
             }
-            //todo 短信
-            //sendMessage(flow,result);
+            if (Objects.equals(active, "druid")) {
+                //todo 短信
+                sendMessage(flow,result);
+            }
         }
         return AjaxResult.success();
     }
@@ -470,25 +478,23 @@ public class DecisionServiceImpl extends FlowServiceFactory implements IDecision
                             String assignee = task.getAssignee();
                             if (org.apache.commons.lang3.StringUtils.isNotBlank(assignee)) { // 给审批人发送短信
                                 SysUser auditUser = sysUserService.selectUserById(Long.valueOf(assignee));
-                                String auditContents = auditUser.getNickName() + ",您好。投资系统中" + projectDecision.getProjectName() + "的项目投决流程待处理";
-                                System.out.println(auditContents);
+                                String auditContents = auditUser.getNickName() + ",您好。投资系统中" + projectDecision.getProjectName() + "的项目投决流程待处理,请查看!";
                                 if (auditUser != null && StringUtils.isNotBlank(auditUser.getPhonenumber())) {
-                                    /*try{
+                                    try{
                                         SmsSenderUtils.sendSms(auditUser.getPhonenumber(), auditContents);
                                     } catch (IOException e) {
                                         logger.error("短信发送失败"+e.getMessage());
-                                    }*/
+                                    }
                                 }
                             }
                         } else { // 审批人驳回,给申请人发短信
-                            String rejectContents = applyUserInfo.getNickName()+",您好。你在投资系统中提交" + projectDecision.getProjectName() + "的项目投决申请已审核,结果为【驳回】";
-                            System.out.println(rejectContents);
+                            String rejectContents = applyUserInfo.getNickName()+",您好。你在投资系统中提交" + projectDecision.getProjectName() + "的项目投决申请已审核,结果为【驳回】,请查看!";
                             if (applyUserInfo != null && StringUtils.isNotBlank(applyUserInfo.getPhonenumber())) {
-                                /*try{
-                                    SmsSenderUtils.sendSms(rejectUser.getPhonenumber(), rejectContents);
+                                try{
+                                    SmsSenderUtils.sendSms(applyUserInfo.getPhonenumber(), rejectContents);
                                 } catch (IOException e) {
                                     logger.error("短信发送失败"+e.getMessage());
-                                }*/
+                                }
                             }
                         }
                     }
@@ -499,26 +505,24 @@ public class DecisionServiceImpl extends FlowServiceFactory implements IDecision
             if(flag) {
                 // 审批完成,给申请人发短信
                 //XXX,您好。你在投资系统中提交“XXX”的项目投决申请已审核,结果为【通过】/【驳回】/【观望】!
-                completeContents = applyUserInfo.getNickName()+",您好。你在投资系统中提交" + projectDecision.getProjectName() + "的项目投决申请已审核,结果为【同意】";
-                System.out.println(completeContents);
+                completeContents = applyUserInfo.getNickName()+",您好。你在投资系统中提交" + projectDecision.getProjectName() + "的项目投决申请已审核,结果为【同意】,请查看!";
                 if (applyUserInfo != null && StringUtils.isNotBlank(applyUserInfo.getPhonenumber())) {
-                    /*try{
-                        SmsSenderUtils.sendSms(completeUser.getPhonenumber(), completeContents);
+                    try{
+                        SmsSenderUtils.sendSms(applyUserInfo.getPhonenumber(), completeContents);
                     } catch (IOException e) {
                         logger.error("短信发送失败"+e.getMessage());
-                    }*/
+                    }
                 }
 
             }else{
                 if(StringUtils.isNotEmpty(result)){//代表是终止或者观望
-                    completeContents = applyUserInfo.getNickName()+",您好。你在投资系统中提交" + projectDecision.getProjectName() + "的项目投决申请已审核,结果为"+result;
-                    System.out.println(completeContents);
+                    completeContents = applyUserInfo.getNickName()+",您好。你在投资系统中提交" + projectDecision.getProjectName() + "的项目投决申请已审核,结果为"+result+",请查看!";
                     if (applyUserInfo != null && StringUtils.isNotBlank(applyUserInfo.getPhonenumber())) {
-                    /*try{
-                        SmsSenderUtils.sendSms(completeUser.getPhonenumber(), completeContents);
-                    } catch (IOException e) {
-                        logger.error("短信发送失败"+e.getMessage());
-                    }*/
+                        try{
+                            SmsSenderUtils.sendSms(applyUserInfo.getPhonenumber(), completeContents);
+                        } catch (IOException e) {
+                            logger.error("短信发送失败"+e.getMessage());
+                        }
                     }
                 }
             }

+ 28 - 25
ruoyi-flowable/src/main/java/com/ruoyi/flowable/service/impl/InvestigateServiceImpl.java

@@ -29,6 +29,7 @@ import org.flowable.task.api.Task;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
 
 import javax.servlet.http.HttpServletRequest;
@@ -45,6 +46,8 @@ import java.util.*;
 public class InvestigateServiceImpl extends FlowServiceFactory implements IInvestigateService
 {
     protected final Logger logger = LoggerFactory.getLogger(this.getClass());
+    @Value("${spring.profiles.active}")
+    private String active;
     @Autowired
     private InvestigateMapper investigateMapper;
     @Autowired
@@ -194,8 +197,10 @@ public class InvestigateServiceImpl extends FlowServiceFactory implements IInves
                     if(flowBaseInfo.isFlag()){
                         getAssignee(tProjectInvestigate,flowBaseInfo);
                     }
-                    //todo 短信
-                    //sendMessage(flowBaseInfo,"");
+                    if (Objects.equals(active, "druid")) {
+                        //todo 短信
+                        sendMessage(flowBaseInfo,"");
+                    }
                     return AjaxResult.success();
                 }
                 return AjaxResult.error();
@@ -376,8 +381,10 @@ public class InvestigateServiceImpl extends FlowServiceFactory implements IInves
             if(flow.isFlag()){
                 getAssignee(tProjectInvestigate,flow);
             }
-            // todo 短信
-            //sendMessage(flow,result);
+            if (Objects.equals(active, "druid")) {
+                // todo 短信
+                sendMessage(flow,result);
+            }
         }
         return AjaxResult.success();
     }
@@ -437,25 +444,23 @@ public class InvestigateServiceImpl extends FlowServiceFactory implements IInves
                             String assignee = task.getAssignee();
                             if (org.apache.commons.lang3.StringUtils.isNotBlank(assignee)) { // 给审批人发送短信
                                 SysUser auditUser = sysUserService.selectUserById(Long.valueOf(assignee));
-                                String auditContents = auditUser.getNickName() + ",您好。投资系统中" + projectInvestigate.getProjectName() + "的项目背调流程待处理";
-                                System.out.println(auditContents);
+                                String auditContents = auditUser.getNickName() + ",您好。投资系统中" + projectInvestigate.getProjectName() + "的项目背调流程待处理,请查看!";
                                 if (auditUser != null && StringUtils.isNotBlank(auditUser.getPhonenumber())) {
-                                    /*try{
+                                    try{
                                         SmsSenderUtils.sendSms(auditUser.getPhonenumber(), auditContents);
                                     } catch (IOException e) {
                                         logger.error("短信发送失败"+e.getMessage());
-                                    }*/
+                                    }
                                 }
                             }
                         } else { // 审批人驳回,给申请人发短信
-                            String rejectContents = applyUserInfo.getNickName()+",您好。你在投资系统中提交" + projectInvestigate.getProjectName() + "的项目背调申请已审核,结果为【驳回】";
-                            System.out.println(rejectContents);
+                            String rejectContents = applyUserInfo.getNickName()+",您好。你在投资系统中提交" + projectInvestigate.getProjectName() + "的项目背调申请已审核,结果为【驳回】,请查看!";
                             if (applyUserInfo != null && StringUtils.isNotBlank(applyUserInfo.getPhonenumber())) {
-                                /*try{
-                                    SmsSenderUtils.sendSms(rejectUser.getPhonenumber(), rejectContents);
+                                try{
+                                    SmsSenderUtils.sendSms(applyUserInfo.getPhonenumber(), rejectContents);
                                 } catch (IOException e) {
                                     logger.error("短信发送失败"+e.getMessage());
-                                }*/
+                                }
                             }
                         }
                     }
@@ -466,26 +471,24 @@ public class InvestigateServiceImpl extends FlowServiceFactory implements IInves
             if(flag) {
                 // 审批完成,给申请人发短信
                 //XXX,您好。你在投资系统中提交“XXX”的项目背调申请已审核,结果为【通过】/【驳回】/【观望】!
-                completeContents = applyUserInfo.getNickName()+",您好。你在投资系统中提交" + projectInvestigate.getProjectName() + "的项目背调申请已审核,结果为【同意】";
-                System.out.println(completeContents);
+                completeContents = applyUserInfo.getNickName()+",您好。你在投资系统中提交" + projectInvestigate.getProjectName() + "的项目背调申请已审核,结果为【同意】,请查看!";
                 if (applyUserInfo != null && StringUtils.isNotBlank(applyUserInfo.getPhonenumber())) {
-                    /*try{
-                        SmsSenderUtils.sendSms(completeUser.getPhonenumber(), completeContents);
+                    try{
+                        SmsSenderUtils.sendSms(applyUserInfo.getPhonenumber(), completeContents);
                     } catch (IOException e) {
                         logger.error("短信发送失败"+e.getMessage());
-                    }*/
+                    }
                 }
 
             }else{
                 if(StringUtils.isNotEmpty(result)){//代表是终止或者观望
-                    completeContents = applyUserInfo.getNickName()+",您好。你在投资系统中提交" + projectInvestigate.getProjectName() + "的项目背调申请已审核,结果为"+result;
-                    System.out.println(completeContents);
+                    completeContents = applyUserInfo.getNickName()+",您好。你在投资系统中提交" + projectInvestigate.getProjectName() + "的项目背调申请已审核,结果为"+result+",请查看!";
                     if (applyUserInfo != null && StringUtils.isNotBlank(applyUserInfo.getPhonenumber())) {
-                    /*try{
-                        SmsSenderUtils.sendSms(completeUser.getPhonenumber(), completeContents);
-                    } catch (IOException e) {
-                        logger.error("短信发送失败"+e.getMessage());
-                    }*/
+                        try{
+                            SmsSenderUtils.sendSms(applyUserInfo.getPhonenumber(), completeContents);
+                        } catch (IOException e) {
+                            logger.error("短信发送失败"+e.getMessage());
+                        }
                     }
                 }
             }

+ 30 - 25
ruoyi-flowable/src/main/java/com/ruoyi/flowable/service/impl/InvestmentOpportunityServiceImpl.java

@@ -6,6 +6,7 @@ import com.ruoyi.common.enums.FileType;
 import com.ruoyi.common.utils.DateUtils;
 import com.ruoyi.common.utils.SecurityUtils;
 import com.ruoyi.common.utils.StringUtils;
+import com.ruoyi.common.utils.sms.SmsSenderUtils;
 import com.ruoyi.common.utils.uuid.IdUtils;
 import com.ruoyi.flowable.common.constant.ProcessConstants;
 import com.ruoyi.flowable.common.constant.UUIDGenerator;
@@ -27,9 +28,11 @@ import org.flowable.task.api.Task;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
 
 import javax.servlet.http.HttpServletRequest;
+import java.io.IOException;
 import java.util.*;
 
 /**
@@ -42,6 +45,8 @@ import java.util.*;
 public class InvestmentOpportunityServiceImpl extends FlowServiceFactory implements IInvestmentOpportunityService
 {
     protected final Logger logger = LoggerFactory.getLogger(this.getClass());
+    @Value("${spring.profiles.active}")
+    private String active;
     @Autowired
     private InvestmentOpportunityMapper investmentOpportunityMapper;
 
@@ -220,8 +225,10 @@ public class InvestmentOpportunityServiceImpl extends FlowServiceFactory impleme
                     if (flowBaseInfo.isFlag()) {
                         getAssignee(tProjectPool, flowBaseInfo);
                     }
-                    //todo 短信
-                    //sendMessage(flowBaseInfo,"");
+                    if (Objects.equals(active, "druid")) {
+                        //todo 短信
+                        sendMessage(flowBaseInfo,"");
+                    }
                     return AjaxResult.success();
                 }
                 return AjaxResult.error();
@@ -391,8 +398,10 @@ public class InvestmentOpportunityServiceImpl extends FlowServiceFactory impleme
             if(flow.isFlag()){
                 getAssignee(tProjectPool,flow);
             }
-            //todo 短信
-            //sendMessage(flow,result);
+            if (Objects.equals(active, "druid")) {
+                //todo 短信
+                sendMessage(flow,result);
+            }
         }
         return AjaxResult.success();
     }
@@ -426,25 +435,23 @@ public class InvestmentOpportunityServiceImpl extends FlowServiceFactory impleme
                             String assignee = task.getAssignee();
                             if (org.apache.commons.lang3.StringUtils.isNotBlank(assignee)) { // 给审批人发送短信
                                 SysUser auditUser = sysUserService.selectUserById(Long.valueOf(assignee));
-                                String auditContents = auditUser.getNickName() + ",您好。投资系统中" + projectPool.getProjectName() + "的项目机会流程待处理";
-                                System.out.println(auditContents);
+                                String auditContents = auditUser.getNickName() + ",您好。投资系统中" + projectPool.getProjectName() + "的项目机会流程待处理,请查看!";
                                 if (auditUser != null && StringUtils.isNotBlank(auditUser.getPhonenumber())) {
-                                    /*try{
+                                    try{
                                         SmsSenderUtils.sendSms(auditUser.getPhonenumber(), auditContents);
                                     } catch (IOException e) {
                                         logger.error("短信发送失败"+e.getMessage());
-                                    }*/
+                                    }
                                 }
                             }
                         } else { // 审批人驳回,给申请人发短信
-                            String rejectContents = applyUserInfo.getNickName()+",您好。你在投资系统中提交" + projectPool.getProjectName() + "的项目机会申请已审核,结果为【驳回】";
-                            System.out.println(rejectContents);
+                            String rejectContents = applyUserInfo.getNickName()+",您好。你在投资系统中提交" + projectPool.getProjectName() + "的项目机会申请已审核,结果为【驳回】,请查看!";
                             if (applyUserInfo != null && StringUtils.isNotBlank(applyUserInfo.getPhonenumber())) {
-                                /*try{
-                                    SmsSenderUtils.sendSms(rejectUser.getPhonenumber(), rejectContents);
+                                try{
+                                    SmsSenderUtils.sendSms(applyUserInfo.getPhonenumber(), rejectContents);
                                 } catch (IOException e) {
                                     logger.error("短信发送失败"+e.getMessage());
-                                }*/
+                                }
                             }
                         }
                     }
@@ -455,26 +462,24 @@ public class InvestmentOpportunityServiceImpl extends FlowServiceFactory impleme
             if(flag) {
                 // 审批完成,给申请人发短信
                 //XXX,您好。你在投资系统中提交“XXX”的项目立项申请已审核,结果为【通过】/【驳回】/【观望】!
-                completeContents = applyUserInfo.getNickName()+",您好。你在投资系统中提交" +projectPool.getProjectName() + "的项目机会申请已审核,结果为【同意】";
-                System.out.println(completeContents);
+                completeContents = applyUserInfo.getNickName()+",您好。你在投资系统中提交" +projectPool.getProjectName() + "的项目机会申请已审核,结果为【同意】,请查看!";
                 if (applyUserInfo != null && StringUtils.isNotBlank(applyUserInfo.getPhonenumber())) {
-                    /*try{
-                        SmsSenderUtils.sendSms(completeUser.getPhonenumber(), completeContents);
+                    try{
+                        SmsSenderUtils.sendSms(applyUserInfo.getPhonenumber(), completeContents);
                     } catch (IOException e) {
                         logger.error("短信发送失败"+e.getMessage());
-                    }*/
+                    }
                 }
 
             }else{
                 if(StringUtils.isNotEmpty(result)){//代表是终止或者观望
-                    completeContents = applyUserInfo.getNickName()+",您好。你在投资系统中提交" +projectPool.getProjectName() + "的项目机会申请已审核,结果为"+result;
-                    System.out.println(completeContents);
+                    completeContents = applyUserInfo.getNickName()+",您好。你在投资系统中提交" +projectPool.getProjectName() + "的项目机会申请已审核,结果为"+result+",请查看!";
                     if (applyUserInfo != null && StringUtils.isNotBlank(applyUserInfo.getPhonenumber())) {
-                    /*try{
-                        SmsSenderUtils.sendSms(completeUser.getPhonenumber(), completeContents);
-                    } catch (IOException e) {
-                        logger.error("短信发送失败"+e.getMessage());
-                    }*/
+                        try{
+                            SmsSenderUtils.sendSms(applyUserInfo.getPhonenumber(), completeContents);
+                        } catch (IOException e) {
+                            logger.error("短信发送失败"+e.getMessage());
+                        }
                     }
                 }
             }

+ 24 - 18
ruoyi-flowable/src/main/java/com/ruoyi/flowable/service/impl/TerminationServiceImpl.java

@@ -5,6 +5,7 @@ import com.ruoyi.common.core.domain.entity.SysUser;
 import com.ruoyi.common.utils.DateUtils;
 import com.ruoyi.common.utils.SecurityUtils;
 import com.ruoyi.common.utils.StringUtils;
+import com.ruoyi.common.utils.sms.SmsSenderUtils;
 import com.ruoyi.common.utils.uuid.IdUtils;
 import com.ruoyi.flowable.common.constant.ProcessConstants;
 import com.ruoyi.flowable.common.constant.UUIDGenerator;
@@ -27,9 +28,11 @@ import org.flowable.task.api.Task;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
 
 import javax.servlet.http.HttpServletRequest;
+import java.io.IOException;
 import java.util.*;
 
 /**
@@ -42,6 +45,8 @@ import java.util.*;
 public class TerminationServiceImpl extends FlowServiceFactory implements ITerminationService
 {
     protected final Logger logger = LoggerFactory.getLogger(this.getClass());
+    @Value("${spring.profiles.active}")
+    private String active;
     @Autowired
     private TerminationMapper terminationMapper;
     @Autowired
@@ -184,8 +189,10 @@ public class TerminationServiceImpl extends FlowServiceFactory implements ITermi
                     if(flowBaseInfo.isFlag()){
                         getAssignee(tProjectTermination,flowBaseInfo);
                     }
-                    // todo 短信
-                    //sendMessage(flowBaseInfo);
+                    if (Objects.equals(active, "druid")) {
+                        // todo 短信
+                        sendMessage(flowBaseInfo);
+                    }
                     return AjaxResult.success();
                 }
                 return AjaxResult.error();
@@ -276,8 +283,10 @@ public class TerminationServiceImpl extends FlowServiceFactory implements ITermi
             if(flow.isFlag()){
                 getAssignee(tProjectTermination,flow);
             }
-            //todo 短信
-            //sendMessage(flow);
+            if (Objects.equals(active, "druid")) {
+                //todo 短信
+                sendMessage(flow);
+            }
         }
         return AjaxResult.success();
     }
@@ -343,25 +352,23 @@ public class TerminationServiceImpl extends FlowServiceFactory implements ITermi
                             String assignee = task.getAssignee();
                             if (org.apache.commons.lang3.StringUtils.isNotBlank(assignee)) { // 给审批人发送短信
                                 SysUser auditUser = sysUserService.selectUserById(Long.valueOf(assignee));
-                                String auditContents = auditUser.getNickName() + ",您好。投资系统中" + projectTermination.getProjectName() + "的项目终止流程待处理";
-                                System.out.println(auditContents);
+                                String auditContents = auditUser.getNickName() + ",您好。投资系统中" + projectTermination.getProjectName() + "的项目终止流程待处理,请查看!";
                                 if (auditUser != null && StringUtils.isNotBlank(auditUser.getPhonenumber())) {
-                                    /*try{
+                                    try{
                                         SmsSenderUtils.sendSms(auditUser.getPhonenumber(), auditContents);
                                     } catch (IOException e) {
                                         logger.error("短信发送失败"+e.getMessage());
-                                    }*/
+                                    }
                                 }
                             }
                         } else { // 审批人驳回,给申请人发短信
-                            String rejectContents = applyUserInfo.getNickName()+",您好。你在投资系统中提交" + projectTermination.getProjectName() + "的项目终止申请已审核,结果为【驳回】";
-                            System.out.println(rejectContents);
+                            String rejectContents = applyUserInfo.getNickName()+",您好。你在投资系统中提交" + projectTermination.getProjectName() + "的项目终止申请已审核,结果为【驳回】,请查看!";
                             if (applyUserInfo != null && StringUtils.isNotBlank(applyUserInfo.getPhonenumber())) {
-                                /*try{
-                                    SmsSenderUtils.sendSms(rejectUser.getPhonenumber(), rejectContents);
+                                try{
+                                    SmsSenderUtils.sendSms(applyUserInfo.getPhonenumber(), rejectContents);
                                 } catch (IOException e) {
                                     logger.error("短信发送失败"+e.getMessage());
-                                }*/
+                                }
                             }
                         }
                     }
@@ -372,14 +379,13 @@ public class TerminationServiceImpl extends FlowServiceFactory implements ITermi
             if(flag) {
                 // 审批完成,给申请人发短信
                 //XXX,您好。你在投资系统中提交“XXX”的项目终止申请已审核,结果为【通过】/【驳回】/【观望】!
-                completeContents = applyUserInfo.getNickName()+",您好。你在投资系统中提交" + projectTermination.getProjectName() + "的项目终止申请已审核,结果为【同意】";
-                System.out.println(completeContents);
+                completeContents = applyUserInfo.getNickName()+",您好。你在投资系统中提交" + projectTermination.getProjectName() + "的项目终止申请已审核,结果为【同意】,请查看!";
                 if (applyUserInfo != null && StringUtils.isNotBlank(applyUserInfo.getPhonenumber())) {
-                    /*try{
-                        SmsSenderUtils.sendSms(completeUser.getPhonenumber(), completeContents);
+                    try{
+                        SmsSenderUtils.sendSms(applyUserInfo.getPhonenumber(), completeContents);
                     } catch (IOException e) {
                         logger.error("短信发送失败"+e.getMessage());
-                    }*/
+                    }
                 }
 
             }

+ 6 - 1
ruoyi-ui/src/views/project/approval/audit.vue

@@ -35,7 +35,12 @@
           >
             {{ detailInfo.tProjectChannel.channelName }}
           </p>
-          <p v-else>无</p>
+          <p v-else-if="detailInfo.channel=='1'" >
+            直接触达
+          </p>
+          <p v-else="detailInfo.channel=='2'" >
+            内部推荐
+          </p>
         </div>
         <div class="public-flex-center-column">
           <div>项目负责人</div>

+ 6 - 1
ruoyi-ui/src/views/project/approval/detail.vue

@@ -41,7 +41,12 @@
           >
             {{ detailInfo.tProjectChannel.channelName }}
           </p>
-          <p v-else>无</p>
+          <p v-else-if="detailInfo.channel=='1'" >
+            直接触达
+          </p>
+          <p v-else="detailInfo.channel=='2'" >
+            内部推荐
+          </p>
         </div>
         <div class="public-flex-center-column">
           <div>项目负责人</div>

+ 6 - 1
ruoyi-ui/src/views/project/approval/edit.vue

@@ -35,7 +35,12 @@
           >
             {{ detailInfo.tProjectChannel.channelName }}
           </p>
-          <p v-else>无</p>
+          <p v-else-if="detailInfo.channel=='1'" >
+            直接触达
+          </p>
+          <p v-else="detailInfo.channel=='2'" >
+            内部推荐
+          </p>
         </div>
         <div class="public-flex-center-column">
           <div>项目负责人</div>

+ 6 - 1
ruoyi-ui/src/views/project/approval/projectItem.vue

@@ -49,7 +49,12 @@
             <div :title="scope.row.tProjectChannel.channelName" v-if="scope.row.tProjectChannel && scope.row.tProjectChannel.channelName">
               {{ scope.row.tProjectChannel.channelName }}
             </div>
-            <div v-else>无</div>
+            <div v-else-if="scope.row.channel=='1'" >
+              直接触达
+            </div>
+            <div v-else="scope.row.channel=='2'" >
+              内部推荐
+            </div>
           </template>
         </el-table-column>
         <el-table-column

+ 6 - 1
ruoyi-ui/src/views/project/decision/audit.vue

@@ -42,7 +42,12 @@
           >
             {{ detailInfo.tProjectChannel.channelName }}
           </p>
-          <p v-else>无</p>
+          <p v-else-if="scope.row.channel=='1'" >
+            直接触达
+          </p>
+          <p v-else="scope.row.channel=='2'" >
+            内部推荐
+          </p>
         </div>
         <div class="public-flex-center-column">
           <div>项目负责人</div>

+ 6 - 1
ruoyi-ui/src/views/project/decision/detail.vue

@@ -43,7 +43,12 @@
           >
             {{ detailInfo.tProjectChannel.channelName }}
           </p>
-          <p v-else>无</p>
+          <p v-else-if="scope.row.channel=='1'" >
+            直接触达
+          </p>
+          <p v-else="scope.row.channel=='2'" >
+            内部推荐
+          </p>
         </div>
         <div class="public-flex-center-column">
           <div>项目负责人</div>

+ 6 - 1
ruoyi-ui/src/views/project/decision/edit.vue

@@ -42,7 +42,12 @@
           >
             {{ detailInfo.tProjectChannel.channelName }}
           </p>
-          <p v-else>无</p>
+          <p v-else-if="scope.row.channel=='1'" >
+            直接触达
+          </p>
+          <p v-else="scope.row.channel=='2'" >
+            内部推荐
+          </p>
         </div>
         <div class="public-flex-center-column">
           <div>项目负责人</div>

+ 6 - 1
ruoyi-ui/src/views/project/decision/projectItem.vue

@@ -49,7 +49,12 @@
             <div :title="scope.row.tProjectChannel.channelName" v-if="scope.row.tProjectChannel && scope.row.tProjectChannel.channelName">
               {{ scope.row.tProjectChannel.channelName }}
             </div>
-            <div v-else>无</div>
+            <div v-else-if="scope.row.channel=='1'" >
+              直接触达
+            </div>
+            <div v-else="scope.row.channel=='2'" >
+              内部推荐
+            </div>
           </template>
         </el-table-column>
         <el-table-column

+ 25 - 7
ruoyi-ui/src/views/project/investOpp/apply.vue

@@ -33,7 +33,8 @@
             :label="item.channelName"
             :value="item.id"
           />
-          <el-option label="无" value="-1" />
+          <el-option label="直接触达" value="1" />
+          <el-option label="内部推荐" value="2" />
         </el-select>
         <!-- <channelItem
           ref="channelItem"
@@ -742,8 +743,13 @@ export default {
         this.form.tProjectChannel.channelName = obj.channelName;
         this.form.tProjectChannel.channelGroup = obj.channelGroup;
       } else {
-        this.form.channel = -1;
-        this.form.tProjectChannel.channelName = "无";
+        if (vId=="1") {
+          this.form.channel = 1;
+          this.form.tProjectChannel.channelName = "直接触达";
+        }else if(vId=="2"){
+          this.form.channel = 2;
+          this.form.tProjectChannel.channelName = "内部推荐";
+        }
         this.form.tProjectChannel.channelGroup = "";
       }
     },
@@ -762,10 +768,22 @@ export default {
           this.form.tProjectChannel.channelName = channeItem.channelName;
           this.form.tProjectChannel.channelGroup = channeItem.channelGroup;
         } else {
-          this.form.tProjectChannel = {
-            channelName: "无",
-            channelGroup: "",
-          };
+          if(this.form.channel=="1") {
+            this.form.tProjectChannel = {
+              channelName: "直接触达",
+              channelGroup: "",
+            };
+          }else if(this.form.channel=="2") {
+            this.form.tProjectChannel = {
+              channelName: "内部推荐",
+              channelGroup: "",
+            };
+          }else {
+            this.form.tProjectChannel = {
+              channelName: "无",
+              channelGroup: "",
+            };
+          }
         }
         setTimeout(() => {
           if (this.type == "2") {

+ 18 - 4
ruoyi-ui/src/views/project/investOpp/audit.vue

@@ -30,6 +30,8 @@
               <el-form-item label="渠道" prop="tProjectChannel.channelName">
                 <el-select :disabled="type === '2'" v-model="form.tProjectChannel.channelName" placeholder="请选择" clearable>
                   <el-option v-for="item in channelList" :key="item.id" :label="item.channelName" :value="item.id"/>
+                  <el-option label="直接触达" value="1" />
+                  <el-option label="内部推荐" value="2" />
                   <el-option label="无" value="-1" />
                 </el-select>
               </el-form-item>
@@ -778,10 +780,22 @@ export default {
           this.form.tProjectChannel.channelName = channeItem.channelName;
           this.form.tProjectChannel.channelGroup = channeItem.channelGroup;
         } else {
-          this.form.tProjectChannel = {
-            channelName: "无",
-            channelGroup: "",
-          };
+          if(this.form.channel=="1") {
+            this.form.tProjectChannel = {
+              channelName: "直接触达",
+              channelGroup: "",
+            };
+          }else if(this.form.channel=="2") {
+            this.form.tProjectChannel = {
+              channelName: "内部推荐",
+              channelGroup: "",
+            };
+          }else {
+            this.form.tProjectChannel = {
+              channelName: "无",
+              channelGroup: "",
+            };
+          }
         }
         setTimeout(() => {
           if(this.activeName==='1') {

+ 19 - 4
ruoyi-ui/src/views/project/investOpp/detail.vue

@@ -30,6 +30,8 @@
               <el-form-item label="渠道" prop="tProjectChannel.channelName">
                 <el-select :disabled="type === '2'" v-model="form.tProjectChannel.channelName" placeholder="请选择" clearable>
                   <el-option v-for="item in channelList" :key="item.id" :label="item.channelName" :value="item.id"/>
+                  <el-option label="直接触达" value="1" />
+                  <el-option label="内部推荐" value="2" />
                   <el-option label="无" value="-1" />
                 </el-select>
               </el-form-item>
@@ -743,10 +745,23 @@ export default {
           this.form.tProjectChannel.channelName = channeItem.channelName;
           this.form.tProjectChannel.channelGroup = channeItem.channelGroup;
         } else {
-          this.form.tProjectChannel = {
-            channelName: "无",
-            channelGroup: "",
-          };
+          if(this.form.channel=="1") {
+            this.form.tProjectChannel = {
+              channelName: "直接触达",
+              channelGroup: "",
+            };
+          }else if(this.form.channel=="2") {
+            this.form.tProjectChannel = {
+              channelName: "内部推荐",
+              channelGroup: "",
+            };
+          }else{
+            this.form.tProjectChannel = {
+              channelName: "无",
+              channelGroup: "",
+            };
+          }
+
         }
 
         setTimeout(() => {

+ 25 - 7
ruoyi-ui/src/views/project/investOpp/edit.vue

@@ -33,7 +33,8 @@
             :label="item.channelName"
             :value="item.id"
           />
-          <el-option label="无" value="-1" />
+          <el-option label="直接触达" value="1" />
+          <el-option label="内部推荐" value="2" />
         </el-select>
         <!-- <channelItem
           ref="channelItem"
@@ -739,8 +740,13 @@ export default {
         this.form.tProjectChannel.channelName = obj.channelName;
         this.form.tProjectChannel.channelGroup = obj.channelGroup;
       } else {
-        this.form.channel = -1;
-        this.form.tProjectChannel.channelName = "无";
+        if (vId=="1") {
+          this.form.channel = 1;
+          this.form.tProjectChannel.channelName = "直接触达";
+        }else if (vId=="2") {
+          this.form.channel = 2;
+          this.form.tProjectChannel.channelName = "内部推荐";
+        }
         this.form.tProjectChannel.channelGroup = "";
       }
     },
@@ -759,10 +765,22 @@ export default {
           this.form.tProjectChannel.channelName = channeItem.channelName;
           this.form.tProjectChannel.channelGroup = channeItem.channelGroup;
         } else {
-          this.form.tProjectChannel = {
-            channelName: "无",
-            channelGroup: "",
-          };
+          if(this.form.channel=="1") {
+            this.form.tProjectChannel = {
+              channelName: "直接触达",
+              channelGroup: "",
+            };
+          }else if(this.form.channel=="2") {
+            this.form.tProjectChannel = {
+              channelName: "内部推荐",
+              channelGroup: "",
+            };
+          }else {
+            this.form.tProjectChannel = {
+              channelName: "无",
+              channelGroup: "",
+            };
+          }
         }
         setTimeout(() => {
           if (this.type == "2") {

+ 18 - 0
ruoyi-ui/src/views/project/investOpp/myTask.vue

@@ -164,6 +164,12 @@
                 " :title="scope.row.tProjectChannel.channelName">
                   {{ scope.row.tProjectChannel.channelName }}
                 </div>
+                <div v-else-if="scope.row.channel=='1'" >
+                  直接触达
+                </div>
+                <div v-else="scope.row.channel=='2'" >
+                  内部推荐
+                </div>
               </template>
             </el-table-column>
             <!-- delFlag -->
@@ -334,6 +340,12 @@
                 " :title="scope.row.tProjectChannel.channelName">
                   {{ scope.row.tProjectChannel.channelName }}
                 </div>
+                <div v-else-if="scope.row.channel=='1'" >
+                  直接触达
+                </div>
+                <div v-else="scope.row.channel=='2'" >
+                  内部推荐
+                </div>
               </template>
             </el-table-column>
             <!-- delFlag -->
@@ -486,6 +498,12 @@
                 " :title="scope.row.tProjectChannel.channelName">
                   {{ scope.row.tProjectChannel.channelName }}
                 </div>
+                <div v-else-if="scope.row.channel=='1'" >
+                  直接触达
+                </div>
+                <div v-else="scope.row.channel=='2'" >
+                  内部推荐
+                </div>
               </template>
             </el-table-column>
             <!-- delFlag -->

+ 9 - 4
ruoyi-ui/src/views/project/investOpp/processList.vue

@@ -42,10 +42,9 @@
             :label="item.channelName"
             :value="item.id"
           />
-          <el-option
-            label="无"
-            value="-1"
-          />
+          <el-option label="直接触达" value="1" />
+          <el-option label="内部推荐" value="2" />
+<!--          <el-option label="无" value="-1"/>-->
         </el-select>
       </el-form-item>
       <el-form-item label="所属组别" prop="projectGroup">
@@ -257,6 +256,12 @@
           >
             {{ scope.row.tProjectChannel.channelName }}
           </div>
+          <div v-else-if="scope.row.channel=='1'" >
+            直接触达
+          </div>
+          <div v-else="scope.row.channel=='2'" >
+            内部推荐
+          </div>
         </template>
       </el-table-column>
       <!-- delFlag -->

+ 6 - 1
ruoyi-ui/src/views/project/investigate/audit.vue

@@ -42,7 +42,12 @@
           >
             {{ detailInfo.tProjectChannel.channelName }}
           </p>
-          <p v-else>无</p>
+          <p v-else-if="scope.row.channel=='1'" >
+            直接触达
+          </p>
+          <p v-else="scope.row.channel=='2'" >
+            内部推荐
+          </p>
         </div>
         <div class="public-flex-center-column">
           <div>项目负责人</div>

+ 6 - 1
ruoyi-ui/src/views/project/investigate/detail.vue

@@ -43,7 +43,12 @@
           >
             {{ detailInfo.tProjectChannel.channelName }}
           </p>
-          <p v-else>无</p>
+          <p v-else-if="scope.row.channel=='1'" >
+            直接触达
+          </p>
+          <p v-else="scope.row.channel=='2'" >
+            内部推荐
+          </p>
         </div>
         <div class="public-flex-center-column">
           <div>项目负责人</div>

+ 6 - 1
ruoyi-ui/src/views/project/investigate/edit.vue

@@ -35,7 +35,12 @@
           >
             {{ detailInfo.tProjectChannel.channelName }}
           </p>
-          <p v-else>无</p>
+          <p v-else-if="scope.row.channel=='1'" >
+            直接触达
+          </p>
+          <p v-else="scope.row.channel=='2'" >
+            内部推荐
+          </p>
         </div>
         <div class="public-flex-center-column">
           <div>项目负责人</div>

+ 6 - 1
ruoyi-ui/src/views/project/investigate/projectItem.vue

@@ -49,7 +49,12 @@
             <div :title="scope.row.tProjectChannel.channelName" v-if="scope.row.tProjectChannel && scope.row.tProjectChannel.channelName">
               {{ scope.row.tProjectChannel.channelName }}
             </div>
-            <div v-else>无</div>
+            <div v-else-if="scope.row.channel=='1'" >
+              直接触达
+            </div>
+            <div v-else="scope.row.channel=='2'" >
+              内部推荐
+            </div>
           </template>
         </el-table-column>
         <el-table-column

+ 8 - 4
ruoyi-ui/src/views/project/listStage/listApproval.vue

@@ -42,10 +42,8 @@
             :label="item.channelName"
             :value="item.id"
           />
-          <el-option
-            label="无"
-            value="-1"
-          />
+          <el-option label="直接触达" value="1" />
+          <el-option label="内部推荐" value="2" />
         </el-select>
       </el-form-item>
       <el-form-item label="所属组别" prop="projectGroup">
@@ -232,6 +230,12 @@
           >
             {{ scope.row.tProjectChannel.channelName }}
           </div>
+          <div v-else-if="scope.row.channel=='1'" >
+            直接触达
+          </div>
+          <div v-else="scope.row.channel=='2'" >
+            内部推荐
+          </div>
         </template>
       </el-table-column>
       <!-- delFlag -->

+ 8 - 4
ruoyi-ui/src/views/project/listStage/listDecision.vue

@@ -42,10 +42,8 @@
             :label="item.channelName"
             :value="item.id"
           />
-          <el-option
-            label="无"
-            value="-1"
-          />
+          <el-option label="直接触达" value="1" />
+          <el-option label="内部推荐" value="2" />
         </el-select>
       </el-form-item>
       <el-form-item label="所属组别" prop="projectGroup">
@@ -227,6 +225,12 @@
           >
             {{ scope.row.tProjectChannel.channelName }}
           </div>
+          <div v-else-if="scope.row.channel=='1'" >
+            直接触达
+          </div>
+          <div v-else="scope.row.channel=='2'" >
+            内部推荐
+          </div>
         </template>
       </el-table-column>
       <!-- delFlag -->

+ 8 - 1
ruoyi-ui/src/views/project/listStage/listInvestOpp.vue

@@ -42,7 +42,8 @@
             :label="item.channelName"
             :value="item.id"
           />
-          <el-option label="无" value="-1" />
+          <el-option label="直接触达" value="1" />
+          <el-option label="内部推荐" value="2" />
         </el-select>
       </el-form-item>
       <el-form-item label="所属组别" prop="projectGroup">
@@ -252,6 +253,12 @@
           >
             {{ scope.row.tProjectChannel.channelName }}
           </div>
+          <div v-else-if="scope.row.channel=='1'" >
+            直接触达
+          </div>
+          <div v-else="scope.row.channel=='2'" >
+            内部推荐
+          </div>
         </template>
       </el-table-column>
       <!-- delFlag -->

+ 8 - 4
ruoyi-ui/src/views/project/listStage/listInvestigate.vue

@@ -42,10 +42,8 @@
             :label="item.channelName"
             :value="item.id"
           />
-          <el-option
-            label="无"
-            value="-1"
-          />
+          <el-option label="直接触达" value="1" />
+          <el-option label="内部推荐" value="2" />
         </el-select>
       </el-form-item>
       <el-form-item label="所属组别" prop="projectGroup">
@@ -251,6 +249,12 @@
           >
             {{ scope.row.tProjectChannel.channelName }}
           </div>
+          <div v-else-if="scope.row.channel=='1'" >
+            直接触达
+          </div>
+          <div v-else="scope.row.channel=='2'" >
+            内部推荐
+          </div>
         </template>
       </el-table-column>
       <!-- delFlag -->

+ 8 - 1
ruoyi-ui/src/views/project/listStage/listPool.vue

@@ -38,7 +38,8 @@
             :label="item.channelName"
             :value="item.id"
           />
-          <el-option label="无" value="-1" />
+          <el-option label="直接触达" value="1" />
+          <el-option label="内部推荐" value="2" />
         </el-select>
       </el-form-item>
         </el-col>
@@ -269,6 +270,12 @@
           >
             {{ scope.row.tProjectChannel.channelName }}
           </div>
+          <div v-else-if="scope.row.channel=='1'" >
+            直接触达
+          </div>
+          <div v-else="scope.row.channel=='2'" >
+            内部推荐
+          </div>
         </template>
       </el-table-column>
       <!-- delFlag -->

+ 8 - 1
ruoyi-ui/src/views/project/listStage/listSign.vue

@@ -42,7 +42,8 @@
             :label="item.channelName"
             :value="item.id"
           />
-          <el-option label="无" value="-1" />
+          <el-option label="直接触达" value="1" />
+          <el-option label="内部推荐" value="2" />
         </el-select>
       </el-form-item>
       <el-form-item label="所属组别" prop="projectGroup">
@@ -242,6 +243,12 @@
           >
             {{ scope.row.tProjectChannel.channelName }}
           </div>
+          <div v-else-if="scope.row.channel=='1'" >
+            直接触达
+          </div>
+          <div v-else="scope.row.channel=='2'" >
+            内部推荐
+          </div>
         </template>
       </el-table-column>
       <!-- delFlag -->

+ 2 - 4
ruoyi-ui/src/views/project/listStage/terminationList.vue

@@ -42,10 +42,8 @@
             :label="item.channelName"
             :value="item.id"
           />
-          <el-option
-            label="无"
-            value="-1"
-          />
+          <el-option label="直接触达" value="1" />
+          <el-option label="内部推荐" value="2" />
         </el-select>
       </el-form-item>
       <el-form-item label="所属组别" prop="projectGroup">

+ 2 - 4
ruoyi-ui/src/views/project/listStage/watchList.vue

@@ -42,10 +42,8 @@
             :label="item.channelName"
             :value="item.id"
           />
-          <el-option
-            label="无"
-            value="-1"
-          />
+          <el-option label="直接触达" value="1" />
+          <el-option label="内部推荐" value="2" />
         </el-select>
       </el-form-item>
       <el-form-item label="所属组别" prop="projectGroup">

+ 6 - 1
ruoyi-ui/src/views/project/poolDetail.vue

@@ -102,7 +102,12 @@
           >
             {{ detailInfo.tProjectChannel.channelName }}
           </p>
-          <p v-else>无</p>
+          <p v-else-if="detailInfo.channel=='1'" >
+            直接触达
+          </p>
+          <p v-else="detailInfo.channel=='2'" >
+            内部推荐
+          </p>
         </div>
         <div class="public-flex-center-column">
           <div>项目负责人</div>

+ 28 - 8
ruoyi-ui/src/views/project/poolEdit.vue

@@ -32,7 +32,8 @@
             :label="item.channelName"
             :value="item.id"
           />
-          <el-option label="无" value="-1" />
+          <el-option label="直接触达" value="1" />
+          <el-option label="内部推荐" value="2" />
         </el-select>
         <!-- <channelItem
           ref="channelItem"
@@ -737,9 +738,16 @@ export default {
         this.form.tProjectChannel.channelName = obj.channelName;
         this.form.tProjectChannel.channelGroup = obj.channelGroup;
       } else {
-        this.form.channel = -1;
-        this.form.tProjectChannel.channelName = "无";
-        this.form.tProjectChannel.channelGroup = "";
+        if (vId=="1") {
+          this.form.channel = 1;
+          this.form.tProjectChannel.channelName = "直接触达";
+        }else if (vId=="2"){
+          this.form.channel = 2;
+          this.form.tProjectChannel.channelName = "内部推荐";
+        }else {
+          this.form.channel = -1;
+          this.form.tProjectChannel.channelName = "无";
+        }
       }
     },
     handleChannelItem() {
@@ -757,10 +765,22 @@ export default {
           this.form.tProjectChannel.channelName = channeItem.channelName;
           this.form.tProjectChannel.channelGroup = channeItem.channelGroup;
         } else {
-          this.form.tProjectChannel = {
-            channelName: "无",
-            channelGroup: "",
-          };
+          if(this.form.channel=="1") {
+            this.form.tProjectChannel = {
+              channelName: "直接触达",
+              channelGroup: "",
+            };
+          }else if(this.form.channel=="2") {
+            this.form.tProjectChannel = {
+              channelName: "内部推荐",
+              channelGroup: "",
+            };
+          }else {
+            this.form.tProjectChannel = {
+              channelName: "无",
+              channelGroup: "",
+            };
+          }
         }
         setTimeout(() => {
           if (this.type == "2") {

+ 26 - 7
ruoyi-ui/src/views/project/poolForm.vue

@@ -32,7 +32,9 @@
             :label="item.channelName"
             :value="item.id"
           />
-          <el-option label="无" value="-1" />
+          <el-option label="直接触达" value="1" />
+          <el-option label="内部推荐" value="2" />
+<!--          <el-option label="无" value="-1" />-->
         </el-select>
         <!-- <channelItem
           ref="channelItem"
@@ -763,8 +765,13 @@ export default {
         this.form.tProjectChannel.channelName = obj.channelName;
         this.form.tProjectChannel.channelGroup = obj.channelGroup;
       } else {
-        this.form.channel = -1;
-        this.form.tProjectChannel.channelName = "无";
+        if (vId=="1") {
+          this.form.channel = 1;
+          this.form.tProjectChannel.channelName = "直接触达";
+        }else if (vId=="2"){
+          this.form.channel = 2;
+          this.form.tProjectChannel.channelName = "内部推荐";
+        }
         this.form.tProjectChannel.channelGroup = "";
       }
     },
@@ -783,10 +790,22 @@ export default {
           this.form.tProjectChannel.channelName = channeItem.channelName;
           this.form.tProjectChannel.channelGroup = channeItem.channelGroup;
         } else {
-          this.form.tProjectChannel = {
-            channelName: "无",
-            channelGroup: "",
-          };
+          if(this.form.channel=="1") {
+            this.form.tProjectChannel = {
+              channelName: "直接触达",
+              channelGroup: "",
+            };
+          }else if(this.form.channel=="2") {
+            this.form.tProjectChannel = {
+              channelName: "内部推荐",
+              channelGroup: "",
+            };
+          }else {
+            this.form.tProjectChannel = {
+              channelName: "无",
+              channelGroup: "",
+            };
+          }
         }
         setTimeout(() => {
           if (this.type == "2") {

+ 6 - 1
ruoyi-ui/src/views/project/termination/audit.vue

@@ -42,7 +42,12 @@
           >
             {{ detailInfo.tProjectChannel.channelName }}
           </p>
-          <p v-else>无</p>
+          <p v-else-if="scope.row.channel=='1'" >
+            直接触达
+          </p>
+          <p v-else="scope.row.channel=='2'" >
+            内部推荐
+          </p>
         </div>
         <div class="public-flex-center-column">
           <div>项目负责人</div>

+ 6 - 1
ruoyi-ui/src/views/project/termination/detail.vue

@@ -43,7 +43,12 @@
           >
             {{ detailInfo.tProjectChannel.channelName }}
           </p>
-          <p v-else>无</p>
+          <p v-else-if="scope.row.channel=='1'" >
+            直接触达
+          </p>
+          <p v-else="scope.row.channel=='2'" >
+            内部推荐
+          </p>
         </div>
         <div class="public-flex-center-column">
           <div>项目负责人</div>

+ 6 - 1
ruoyi-ui/src/views/project/termination/edit.vue

@@ -42,7 +42,12 @@
           >
             {{ detailInfo.tProjectChannel.channelName }}
           </p>
-          <p v-else>无</p>
+          <p v-else-if="scope.row.channel=='1'" >
+            直接触达
+          </p>
+          <p v-else="scope.row.channel=='2'" >
+            内部推荐
+          </p>
         </div>
         <div class="public-flex-center-column">
           <div>项目负责人</div>

+ 6 - 1
ruoyi-ui/src/views/project/termination/projectItem.vue

@@ -49,7 +49,12 @@
             <div :title="scope.row.tProjectChannel.channelName" v-if="scope.row.tProjectChannel && scope.row.tProjectChannel.channelName">
               {{ scope.row.tProjectChannel.channelName }}
             </div>
-            <div v-else>无</div>
+            <div v-else-if="scope.row.channel=='1'" >
+              直接触达
+            </div>
+            <div v-else="scope.row.channel=='2'" >
+              内部推荐
+            </div>
           </template>
         </el-table-column>
         <el-table-column