|
|
@@ -3,8 +3,10 @@ package com.goafanti.order.service.impl;
|
|
|
|
|
|
import com.goafanti.common.constant.AFTConstants;
|
|
|
import com.goafanti.common.dao.AdminMapper;
|
|
|
+import com.goafanti.common.model.Admin;
|
|
|
import com.goafanti.common.utils.StringUtils;
|
|
|
import com.goafanti.core.shiro.token.TokenManager;
|
|
|
+import com.goafanti.order.enums.ChangeState;
|
|
|
import com.goafanti.order.enums.ProcessStatus;
|
|
|
import groovy.util.logging.Log4j;
|
|
|
import groovy.util.logging.Log4j2;
|
|
|
@@ -21,6 +23,14 @@ public class PushOrderService {
|
|
|
@Autowired
|
|
|
private AdminMapper adminMapper;
|
|
|
|
|
|
+ /**
|
|
|
+ * 根据角色判断是否可以查看合同图片
|
|
|
+ * @param url 合同地址
|
|
|
+ * @param aid 营销id
|
|
|
+ * @param approval 特批
|
|
|
+ * @param orderDep 订单编号
|
|
|
+ * @return
|
|
|
+ */
|
|
|
public String ShiroConstant(String url,String aid,Integer approval,String orderDep){
|
|
|
if (StringUtils.isNotNull(url)) {
|
|
|
//暂时开放营销管理员可以查看
|
|
|
@@ -76,13 +86,20 @@ public class PushOrderService {
|
|
|
return null;
|
|
|
}
|
|
|
|
|
|
- public String processStatusConstant(String url,Integer processStatus,Integer approval){
|
|
|
+ /**
|
|
|
+ * 根据流程与角色判断是否可以查看订单合同
|
|
|
+ * @param url
|
|
|
+ * @param aid
|
|
|
+ * @param processStatus
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ public String processStatusConstant(String url,String aid,Integer processStatus){
|
|
|
//流程状态 0-已派营销员,1-已派营销员管理员,2-已派财务管理员,3-已派财务专员,4-已派咨询师管理员,5-已部分派咨询师经理,6-已部全部派咨询师经理
|
|
|
if (TokenManager.hasRole(AFTConstants.SUPERADMIN) || TokenManager.hasRole(AFTConstants.APPROVAL_DECISION) ||
|
|
|
- TokenManager.hasRole(AFTConstants.CUSTOMER_SERVICE) ){
|
|
|
+ TokenManager.hasRole(AFTConstants.CED) ){
|
|
|
return url;
|
|
|
- }else if ((TokenManager.hasRole(AFTConstants.SALESMAN)||TokenManager.hasRole(AFTConstants.SALESMAN_MANAGER))
|
|
|
- &&processStatus== ProcessStatus.YPYXY.getCode()){
|
|
|
+ }else if (((TokenManager.hasRole(AFTConstants.SALESMAN)||TokenManager.hasRole(AFTConstants.SALESMAN_MANAGER)))&&
|
|
|
+ TokenManager.getAdminId().equals(aid)){
|
|
|
return url;
|
|
|
}else if (TokenManager.hasRole(AFTConstants.SALESMAN_ADMIN)&&processStatus== ProcessStatus.YPYXGLY.getCode()){
|
|
|
return url;
|
|
|
@@ -96,4 +113,79 @@ public class PushOrderService {
|
|
|
}
|
|
|
|
|
|
|
|
|
+ /**
|
|
|
+ * 根据变更流程判断是否可以查看
|
|
|
+ * @param url
|
|
|
+ * @param processStatus
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ public String changeProcessStatusConstant(String url,Integer processStatus){
|
|
|
+ boolean flag=false;
|
|
|
+ //流程状态 0营销员 1营销管理员 2技术员 3技术经理 4技术总监 5财务专员(退单) 6财务总监 7总裁 8董事长 9 财务专员(非退单)
|
|
|
+ if (TokenManager.hasRole(AFTConstants.SUPERADMIN) || TokenManager.hasRole(AFTConstants.APPROVAL_DECISION) ||
|
|
|
+ TokenManager.hasRole(AFTConstants.CED) ){
|
|
|
+ flag=true;
|
|
|
+ }else{
|
|
|
+ switch (processStatus) {
|
|
|
+ case 0:
|
|
|
+ if(TokenManager.hasRole(AFTConstants.SALESMAN)||TokenManager.hasRole(AFTConstants.SALESMAN_MANAGER)){
|
|
|
+ flag=true;
|
|
|
+ }
|
|
|
+ break;
|
|
|
+ case 1:
|
|
|
+ if(TokenManager.hasRole(AFTConstants.SALESMAN_ADMIN)){
|
|
|
+ flag=true;
|
|
|
+ }
|
|
|
+ break;
|
|
|
+ case 2:
|
|
|
+ if(TokenManager.hasRole(AFTConstants.TECH)){
|
|
|
+ flag=true;
|
|
|
+ }
|
|
|
+ break;
|
|
|
+ case 3:
|
|
|
+ if(TokenManager.hasRole(AFTConstants.TECH_MANAGER)){
|
|
|
+ flag=true;
|
|
|
+ }
|
|
|
+ break;
|
|
|
+ case 4:
|
|
|
+ if(TokenManager.hasRole(AFTConstants.TECH_ADMIN)){
|
|
|
+ flag=true;
|
|
|
+ }
|
|
|
+ break;
|
|
|
+ case 5:
|
|
|
+ if(TokenManager.hasRole(AFTConstants.FINANCE)){
|
|
|
+ flag=true;
|
|
|
+ }
|
|
|
+ break;
|
|
|
+ case 6:
|
|
|
+ if(TokenManager.hasRole(AFTConstants.FINANCE_ADMIN)){
|
|
|
+ flag=true;
|
|
|
+ }
|
|
|
+ break;
|
|
|
+ case 7:
|
|
|
+ if(TokenManager.hasRole(AFTConstants.CED)){
|
|
|
+ flag=true;
|
|
|
+ }
|
|
|
+ break;
|
|
|
+ case 8:
|
|
|
+ if(TokenManager.hasRole(AFTConstants.APPROVAL_DECISION)){
|
|
|
+ flag=true;
|
|
|
+ }
|
|
|
+ break;
|
|
|
+ case 9:
|
|
|
+ if(TokenManager.hasRole(AFTConstants.FINANCE)){
|
|
|
+ flag=true;
|
|
|
+ }
|
|
|
+ break;
|
|
|
+
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if (flag){
|
|
|
+ return url;
|
|
|
+ }else {
|
|
|
+ return DEFAULTS_URL;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
}
|