Przeglądaj źródła

Merge branch 'test'

# Conflicts:
#	src/main/java/com/goafanti/common/mapper/TOrderNewMapper.xml
#	src/main/java/com/goafanti/common/model/Department.java
#	src/main/java/com/goafanti/order/bo/TOrderNewBo.java
anderx 2 lat temu
rodzic
commit
0ea734f372

Plik diff jest za duży
+ 604 - 584
src/main/java/com/goafanti/common/mapper/DepartmentMapper.xml


+ 19 - 31
src/main/java/com/goafanti/common/mapper/TOrderNewMapper.xml

@@ -955,9 +955,10 @@ left join department d on o.order_dep = d.id   left join t_order_mid a on o.orde
   <select id="getSaleIdByOno" parameterType="java.lang.String" resultType="com.goafanti.order.bo.TOrderNewBo">
     select o.order_no orderNo ,o.salesman_id as salesmanId, a.name as salesmanName,e.name managerName,
            o.contract_no contractNo,a.email ,u.nickname as userName,o.order_dep orderDep,d.name departmentName,
-           d.finance_id  financeId,d.approval approvalStatus,approval_aid approvalAid
+           d.finance_id  financeId,d.approval approvalStatus,d.approval_aid,ad.name approvalName
     from t_order_new o left join admin a on o.salesman_id = a.id left join `user` u on u.id = o.buyer_id
     left join department d on o.order_dep=d.id left join admin e on a.manager_id=e.id
+    left join admin ad on d.approval_aid=ad.id
     where order_no = #{_parameter,jdbcType=VARCHAR}
   </select>
 
@@ -1030,6 +1031,7 @@ left join department d on o.order_dep = d.id   left join t_order_mid a on o.orde
   	and a.salesman_id = #{aid,jdbcType=VARCHAR}
   	</if>
     <if test="specially == 3">
+  	  and dep.approval_aid= #{aid,jdbcType=VARCHAR}
       and  a.order_status=2
       <if test="approval ==0">
         and a.process_status in(4)
@@ -1044,9 +1046,6 @@ left join department d on o.order_dep = d.id   left join t_order_mid a on o.orde
         <if test="manageType ==1">
           (4)
         </if>
-        <if test="manageType ==2">
-          (7)
-        </if>
       </if>
       <if test="approval ==2">
         and a.approval in
@@ -1056,9 +1055,7 @@ left join department d on o.order_dep = d.id   left join t_order_mid a on o.orde
         <if test="manageType ==1">
           (5,6)
         </if>
-        <if test="manageType ==2">
-          (8,9)
-        </if>
+
       </if>
     </if>
   	  <if test="specially !=3 ">
@@ -1208,6 +1205,7 @@ left join department d on o.order_dep = d.id   left join t_order_mid a on o.orde
   	and a.salesman_id = #{aid,jdbcType=VARCHAR}
   	</if>
      <if test="specially == 3">
+       and dep.approval_aid= #{aid,jdbcType=VARCHAR}
        and  a.order_status=2
        <if test="approval ==0">
          and a.process_status in(4)
@@ -1222,9 +1220,6 @@ left join department d on o.order_dep = d.id   left join t_order_mid a on o.orde
          <if test="manageType ==1">
            (4)
          </if>
-         <if test="manageType ==2">
-           (7)
-         </if>
        </if>
        <if test="approval ==2">
          and a.approval in
@@ -1234,9 +1229,7 @@ left join department d on o.order_dep = d.id   left join t_order_mid a on o.orde
          <if test="manageType ==1">
            (5,6)
          </if>
-         <if test="manageType ==2">
-           (8,9)
-         </if>
+
        </if>
      </if>
      <if test="specially !=3 ">
@@ -2100,25 +2093,20 @@ left join department d on o.order_dep = d.id   left join t_order_mid a on o.orde
   </select>
   <select id="getProcessName" resultType="com.goafanti.order.bo.OrderProcessName">
     select a.order_no orderNo,a.approval,a.process_status processStatus  ,b.name yxy,mg.name yxjl,
-        yxgly.name yxgly,d.name cwzy,zc.name zc,fzc.name fzc, zxsgly.name zxsgly,dsz.name dsz
+           yxgly.name yxgly,d.name cwzy, zxsgly.name zxsgly,dsz.name dsz,dep.approval approvalStatus ,da.name approvalName
     from t_order_new a left join admin b on a.salesman_id =b.id
-    left join admin mg on b.manager_id =mg.id left join department c on a.order_dep =c.id
-     left join (select a.department_id depId,group_concat(a.name) name
-        from admin a left join user_role b on a.id=b.uid left join `role` c on b.rid =c.id
-        where c.role_type ='9996' and a.status ='0' group by a.department_id )yxgly on c.id =yxgly.depId
-     left join (select order_no ,group_concat(aname)name from t_order_examine WHERE type=0 group by order_no ) d on a.order_no=d.order_no
-     left join (select group_concat(a.name) name
-        from admin a left join user_role b on a.id=b.uid left join `role` c on b.rid =c.id
-        where c.role_type in ('99998','99988') and a.status ='0' ) zc on 1=1
-     left join (select group_concat(a.name) name
-                from admin a left join user_role b on a.id=b.uid left join `role` c on b.rid =c.id
-                where c.role_type in ('99996') and a.status ='0' ) fzc on 1=1
-     left join (select group_concat(a.name) name
-        from admin a left join user_role b on a.id=b.uid left join `role` c on b.rid =c.id
-        where c.role_type in ('99999','99989') and a.status ='0' ) dsz on 1=1
-     left join (select group_concat(a.name) name
-        from admin a left join user_role b on a.id=b.uid left join `role` c on b.rid =c.id
-        where c.role_type in ('9998') and a.status ='0' ) zxsgly on 1=1
+                       left join admin mg on b.manager_id =mg.id left join department c on a.order_dep =c.id
+                       left join (select a.department_id depId,group_concat(a.name) name
+                                  from admin a left join user_role b on a.id=b.uid left join `role` c on b.rid =c.id
+                                  where c.role_type ='9996' and a.status ='0' group by a.department_id )yxgly on c.id =yxgly.depId
+                       left join (select order_no ,group_concat(aname)name from t_order_examine WHERE type=0 group by order_no ) d on a.order_no=d.order_no
+                       left join (select group_concat(a.name) name
+                                  from admin a left join user_role b on a.id=b.uid left join `role` c on b.rid =c.id
+                                  where c.role_type in ('99999','99989') and a.status ='0' ) dsz on 1=1
+                       left join (select group_concat(a.name) name
+                                  from admin a left join user_role b on a.id=b.uid left join `role` c on b.rid =c.id
+                                  where c.role_type in ('9998') and a.status ='0' ) zxsgly on 1=1
+                       left join department dep on a.order_dep =dep.id left join admin da on dep.approval_aid=da.id
     where a.order_no = #{orderNo}
   </select>
   <select id="selectByuidandAid" resultType="com.goafanti.order.bo.TOrderNewBo">

+ 12 - 6
src/main/java/com/goafanti/common/mapper/TOrderTaskMapper.xml

@@ -2139,7 +2139,7 @@
     from t_order_task a left join t_order_new b on a.order_no =b.order_no
     left join t_order_mid c on a.order_no =c.order_no
     left join t_task_member e on a.id=e.tid
-    <if test="shiroType ==2">
+    <if test="shiroType ==2 or  shiroType ==3">
       left join department d on b.order_dep =d.id
     </if>
     where  b.delete_sign in (0,2)
@@ -2150,9 +2150,12 @@
     <if test="shiroType ==2">
       and (d.finance_id  = #{aid} or  d.retrial_finance_id =#{aid})
     </if>
-    <if test="approvalType !=null">
-      and a.approval= #{approvalType}
+    <if test="shiroType ==3">
+      and d.approval_aid= #{aid}
     </if>
+<!--    <if test="approvalType !=null">-->
+<!--      and a.approval= #{approvalType}-->
+<!--    </if>-->
     <if test="orderNo != null">
       and a.order_no = #{orderNo}
     </if>
@@ -2209,7 +2212,7 @@
     select count(*)
     from t_order_task a left join t_order_new b on a.order_no =b.order_no
     left join t_order_mid c on a.order_no =c.order_no
-    <if test="shiroType ==2">
+    <if test="shiroType ==2 or shiroType ==3">
       left join department d on b.order_dep =d.id
     </if>
     where  b.delete_sign in (0,2)
@@ -2220,9 +2223,12 @@
     <if test="shiroType ==2">
       and (d.finance_id  = #{aid} or  d.retrial_finance_id =#{aid})
     </if>
-    <if test="approvalType !=null">
-      and a.approval= #{approvalType}
+    <if test="shiroType ==3">
+      and d.approval_aid= #{aid}
     </if>
+<!--    <if test="approvalType !=null">-->
+<!--      and a.approval= #{approvalType}-->
+<!--    </if>-->
     <if test="orderNo != null">
       and a.order_no = #{orderNo}
     </if>

+ 6 - 2
src/main/java/com/goafanti/common/model/Department.java

@@ -118,11 +118,15 @@ public class Department implements Serializable {
      * 复审财务id
      */
     private String retrialFinanceId;
+    /**
+     * 特批审核状态 0=无需特批,1=需要特批
+     */
     private Integer approval;
+    /**
+     * 特批审核人
+     */
     private String approvalAid;
 
-
-
     private static final long serialVersionUID = 1L;
 
     public Integer getApproval() {

+ 14 - 14
src/main/java/com/goafanti/order/bo/OrderProcessName.java

@@ -9,17 +9,25 @@ public class OrderProcessName {
     private String yxjl;
     private String yxgly;
     private String cwzy;
-    private String zc;
-    private String fzc;
+    private Integer approvalStatus;
+    private String approvalName;
     private String zxsgly;
     private String dsz;
 
-    public String getFzc() {
-        return fzc;
+    public Integer getApprovalStatus() {
+        return approvalStatus;
     }
 
-    public void setFzc(String fzc) {
-        this.fzc = fzc;
+    public void setApprovalStatus(Integer approvalStatus) {
+        this.approvalStatus = approvalStatus;
+    }
+
+    public String getApprovalName() {
+        return approvalName;
+    }
+
+    public void setApprovalName(String approvalName) {
+        this.approvalName = approvalName;
     }
 
     public String getYxjl() {
@@ -78,14 +86,6 @@ public class OrderProcessName {
         this.cwzy = cwzy;
     }
 
-    public String getZc() {
-        return zc;
-    }
-
-    public void setZc(String zc) {
-        this.zc = zc;
-    }
-
     public String getZxsgly() {
         return zxsgly;
     }

+ 6 - 5
src/main/java/com/goafanti/order/bo/TOrderNewBo.java

@@ -1,14 +1,15 @@
 package com.goafanti.order.bo;
 
+import java.math.BigDecimal;
+import java.util.List;
+
+import org.apache.commons.lang3.StringUtils;
+import org.apache.commons.lang3.time.DateFormatUtils;
+
 import com.goafanti.common.constant.AFTConstants;
 import com.goafanti.common.model.TOrderNew;
 import com.goafanti.order.enums.NewOrderDunType;
 import com.goafanti.order.enums.OrderDunSubject;
-import org.apache.commons.lang3.StringUtils;
-import org.apache.commons.lang3.time.DateFormatUtils;
-
-import java.math.BigDecimal;
-import java.util.List;
 
 public class TOrderNewBo extends TOrderNew{
 	private String id;

+ 0 - 1
src/main/java/com/goafanti/order/controller/OrderProjectApiController.java

@@ -574,7 +574,6 @@ public class OrderProjectApiController extends CertifyApiController {
 	 */
 	@RequestMapping(value = "/memberList/export" ,method = RequestMethod.GET)
 	public Result memberListExport(InputMemberList in){
-
 		return orderProjectService.memberListExport(in);
 
 	}

+ 6 - 9
src/main/java/com/goafanti/order/enums/ApprovalNewState.java

@@ -7,23 +7,20 @@ public enum ApprovalNewState {
 	/** 非特批 **/
 	FTP(0,"非特批"),
 	/** 总裁待审核 **/
-	ZCDSH(1,"总裁待审核"),
+	ZCDSH(1,"特批待审核"),
 	/** 总裁通过 **/
-	ZCTG(2,"总裁通过"),
+	ZCTG(2,"特批通过"),
 	/** 总裁驳回 **/
-	ZCBH(3,"总裁驳回"),
+	ZCBH(3,"特批驳回"),
 	/** 董事长待审核 **/
 	DSZDSH(4,"董事长待审核"),
 	/** 董事长通过 **/
 	DSZTG(5,"董事长通过"),
 	/** 董事长驳回 **/
 	DSZBH(6,"董事长驳回"),
-	/** 总裁待审核 **/
-	FZCDSH(7,"副总裁待审核"),
-	/** 总裁通过 **/
-	FZCTG(8,"副总裁通过"),
-	/** 总裁驳回 **/
-	FZCBH(9,"副总裁驳回"),
+//	FZCDSH(7,"副总裁待审核"),
+//	FZCTG(8,"副总裁通过"),
+//	FZCBH(9,"副总裁驳回"),
 	/** 无效 **/
 	INVALID(10, "INVALID");
 

+ 1 - 1
src/main/java/com/goafanti/order/service/OrderProjectService.java

@@ -91,7 +91,7 @@ public interface OrderProjectService {
 
 	int pushExamineMemberProject(InputMenber in);
 
-	void addMemberLog(Integer id,Integer status ,String remarks);
+	void addMemberLog(Integer id,Integer status ,String remarks,String aid);
 
 	List<MemberLogBo> memberLog(Integer id);
 

+ 24 - 17
src/main/java/com/goafanti/order/service/impl/FundManagerOrderServiceImpl.java

@@ -545,16 +545,16 @@ public class FundManagerOrderServiceImpl extends BaseMybatisDao<TOrderNewMapper>
 	private void pushNoticeAndEmail(TOrderNew t, TOrderNew new1) {
 		List<String> aids = new ArrayList<>();
 		StringBuffer str= new StringBuffer();
+		boolean flag= false;
 		TOrderNewBo order = tOrderNewMapper.getSaleIdByOno(t.getOrderNo());
 		if (new1.getApproval()==ApprovalNewState.ZCDSH.getCode()|| new1.getApproval()==ApprovalNewState.ZCBH.getCode()) {
-			t.setProcessStatus(ProcessStatus.YPTPSH.getCode());
-			List<String> types=new ArrayList<>();
-			//总裁加助理
-			types.add(AFTConstants.CED);
-			types.add(AFTConstants.CED_ASSISTANT);
-			for (Admin admin : adminMapper.getAdminRoleTypesList(types)) {
-				aids.add(admin.getId());
-				str=str.append(admin.getName()).append(",");
+			if (order.getApprovalStatus()==0){
+				t.setProcessStatus(ProcessStatus.YPZXSGLY.getCode());
+				flag=true;
+			}else {
+				t.setProcessStatus(ProcessStatus.YPTPSH.getCode());
+				aids.add(order.getApprovalAid());
+				str=str.append(order.getApprovalName()).append(",");
 			}
 		}else if (new1.getApproval()==ApprovalNewState.DSZDSH.getCode()|| new1.getApproval()==ApprovalNewState.DSZBH.getCode()) {
 			t.setProcessStatus(ProcessStatus.YPTPSH.getCode());
@@ -566,17 +566,11 @@ public class FundManagerOrderServiceImpl extends BaseMybatisDao<TOrderNewMapper>
 				aids.add(admin.getId());
 				str=str.append(admin.getName()).append(",");
 			}
-		}else if (new1.getApproval()==ApprovalNewState.FZCDSH.getCode()|| new1.getApproval()==ApprovalNewState.FZCBH.getCode()) {
-			t.setProcessStatus(ProcessStatus.YPTPSH.getCode());
-			List<String> types=new ArrayList<>();
-			//董事长加助理
-			types.add(AFTConstants.VICE_CED);
-			for (Admin admin : adminMapper.getAdminRoleTypesList(types)) {
-				aids.add(admin.getId());
-				str=str.append(admin.getName()).append(",");
-			}
 		}else  {
 			t.setProcessStatus(ProcessStatus.YPZXSGLY.getCode());
+		}
+
+		if (t.getProcessStatus()==ProcessStatus.YPZXSGLY.getCode()){
 			//设置发送邮件标识
 			order.setProcessStatus(ProcessStatus.YPZXSGLY.getCode());
 			OrganizationListOut oo=departmentMapper.selectAllById(new1.getOrderDep());
@@ -589,6 +583,19 @@ public class FundManagerOrderServiceImpl extends BaseMybatisDao<TOrderNewMapper>
 		//用与外部修改名称
 		t.setExamineName(str.substring(0,str.length()-1));
 		pushGeneralSendNoticeAndEmail(aids, NoticeStatus.ORDER_YES.getCode(),order, TokenManager.getAdminId(), new1.getApproval());
+		if (flag){
+			addTorderLog(t,"未设置特批审核人员自动跳过审核");
+		}
+	}
+
+	private void addTorderLog(TOrderNew t, String str) {
+		boolean flag=judgeOrderExamine(t.getOrderNo());
+		TOrderLog tl=new TOrderLog();
+
+		tl.setProcess(OrderLogProcess.TP.getCode());
+		tl.setOrderNo(t.getOrderNo());
+		tl.setRemarks(str);
+		tOrderLogMapper.insertSelective(tl);
 	}
 
 	private boolean judgeOrderExamine(String orderNo) {

+ 7 - 12
src/main/java/com/goafanti/order/service/impl/OrderNewServiceImpl.java

@@ -338,7 +338,7 @@ public class OrderNewServiceImpl extends BaseMybatisDao<TOrderNewMapper> impleme
 	public int addMemberProject(InputAddTask t){
 		TOrderNewBo tn = tOrderNewMapper.getSaleIdByOno(t.getOrderNo());
 		addOrderTask(t);
-		orderProjectService.addMemberLog(t.getId(),0,"新增会员项目");
+		orderProjectService.addMemberLog(t.getId(),0,"新增会员项目",TokenManager.getAdminId());
 		orderProjectService.addNoticMember(NoticeStatus.MENBER_START.getCode(),tn,null,0);
 		return 1;
 	}
@@ -551,17 +551,11 @@ public class OrderNewServiceImpl extends BaseMybatisDao<TOrderNewMapper> impleme
 			//特批逻辑处理
 			if (t2.getApproval()==ApprovalNewState.ZCBH.getCode()||
 					t2.getApproval()==ApprovalNewState.DSZBH.getCode()||
-					t2.getApproval()== ApprovalNewState.FZCBH.getCode()||
 					t2.getApproval()==ApprovalNewState.ZCDSH.getCode()){
 				if (a.getId().equals(AFTConstants.CAOJIN_AID)){
 					t.setApproval(ApprovalNewState.DSZDSH.getCode());
 				}else {
-					Department dep = departmentMapper.selectByPrimaryKey(t.getOrderDep());
-					if(dep.getProvince()==11){
-						t.setApproval(ApprovalNewState.FZCDSH.getCode());
-					}else {
-						t.setApproval(ApprovalNewState.ZCDSH.getCode());
-					}
+					t.setApproval(ApprovalNewState.ZCDSH.getCode());
 				}
 			}
 			//生成流转
@@ -941,13 +935,12 @@ public class OrderNewServiceImpl extends BaseMybatisDao<TOrderNewMapper> impleme
 			}
 		}
 		if (in.getSpecially()==3){
+			params.put("aid", TokenManager.getAdminId());
 			if (TokenManager.hasRole(AFTConstants.CED)||TokenManager.hasRole(AFTConstants.CED_ASSISTANT)){
 				params.put("manageType",0);
 			}else if (TokenManager.hasRole(AFTConstants.APPROVAL_DECISION_ASSISTANT)||TokenManager.hasRole(AFTConstants.APPROVAL_DECISION)){
 				params.put("manageType",1);
-			}else if (TokenManager.hasRole(AFTConstants.VICE_CED)){
-				params.put("manageType",2);
-			}else {
+			}else  {
 				params.put("manageType",0);
 			}
 		}
@@ -1478,7 +1471,6 @@ public class OrderNewServiceImpl extends BaseMybatisDao<TOrderNewMapper> impleme
 		if (confirm==2) {
 			if (t2.getApproval()==ApprovalNewState.ZCDSH.getCode())t.setApproval(ApprovalNewState.ZCTG.getCode());
 			else if (t2.getApproval()==ApprovalNewState.DSZDSH.getCode())t.setApproval(ApprovalNewState.DSZTG.getCode());
-			else if (t2.getApproval()==ApprovalNewState.FZCDSH.getCode())t.setApproval(ApprovalNewState.FZCTG.getCode());
 				t.setProcessStatus(ProcessStatus.YPZXSGLY.getCode());
 				OrganizationListOut oo=departmentMapper.selectAllById(t2.getOrderDep());
 				t.setFinanceId(oo.getFinanceId());
@@ -2179,6 +2171,9 @@ public class OrderNewServiceImpl extends BaseMybatisDao<TOrderNewMapper> impleme
 	@Override
 	public OrderProcessName getProcessName(String orderNo) {
 		OrderProcessName names=tOrderNewMapper.getProcessName(orderNo);
+		if (names.getApprovalStatus()==0){
+			names.setApprovalName("未设置特批审核人员");
+		}
 		return names;
 	}
 

+ 37 - 21
src/main/java/com/goafanti/order/service/impl/OrderProjectServiceImpl.java

@@ -1261,11 +1261,11 @@ public class OrderProjectServiceImpl extends BaseMybatisDao<TOrderTaskMapper> im
 		if(in.getStatus()!=null) map.put("status", in.getStatus());
 		if(in.getShiroType()!=null) map.put("shiroType", in.getShiroType());
 		map.put("aid",TokenManager.getAdminId());
-		if (TokenManager.hasRole(AFTConstants.VICE_CED)){
-			map.put("approvalType",2);
-		}else if (TokenManager.hasRole(AFTConstants.CED)){
-			map.put("approvalType",1);
-		}
+//		if (TokenManager.hasRole(AFTConstants.VICE_CED)){
+//			map.put("approvalType",2);
+//		}else if (TokenManager.hasRole(AFTConstants.CED)){
+//			map.put("approvalType",1);
+//		}
 	}
 
 	@Override
@@ -1309,6 +1309,7 @@ public class OrderProjectServiceImpl extends BaseMybatisDao<TOrderTaskMapper> im
 		TOrderTask task=tOrderTaskMapper.selectByPrimaryKey(in.getId());
 		String aid=TokenManager.getAdminId();
 		Integer status=1;
+		boolean appFlag=false;
 		//是否财务审核加复审
 		boolean flag=false;
 		TOrderTask nt=new TOrderTask();
@@ -1333,7 +1334,7 @@ public class OrderProjectServiceImpl extends BaseMybatisDao<TOrderTaskMapper> im
 						});
 				OrganizationListOut dep = tOrderNewMapper.selectOrderFinance(task.getOrderNo());
 				int examineType =task.getExamineType();
-
+				//判定谁审核的财务审核,
 				if (aid.equals(dep.getFinanceId())){
 					if (examineType==3){
 						examineType=2;
@@ -1348,12 +1349,23 @@ public class OrderProjectServiceImpl extends BaseMybatisDao<TOrderTaskMapper> im
 					}
 				}
 				nt.setExamineType(examineType);
+				//全都已经审核的情况下
 				if(examineType==4){
 					flag=true;
 				}
+
+				//需要特批的情况下
 				if (task.getMemberType()==1||task.getMemberType()==2){
 					if (flag){
-						nt.setProcessStatus(2);
+						Department department = tOrderNewMapper.selectDepByOrderNo(task.getOrderNo());
+						//部门设置无需特批的情况下直接完成,否则走正常流程
+						if (department.getApproval()==0){
+							nt.setProcessStatus(3);
+							//判定无特批直接完成新增日志
+							appFlag=true;
+						}else {
+							nt.setProcessStatus(2);
+						}
 					}
 					status=1;
 				}else if (task.getMemberType()==0){
@@ -1386,7 +1398,7 @@ public class OrderProjectServiceImpl extends BaseMybatisDao<TOrderTaskMapper> im
 				subtractionFinanceCountMember(task.getOrderNo(),tTaskMember.getCreateTime(),2);
 			}
 		}
-		addMemberLog(in.getId(),status,in.getRemarks());
+		addMemberLog(in.getId(),status,in.getRemarks(),TokenManager.getAdminId());
 		if (nt.getProcessStatus()!=null&&nt.getProcessStatus()==3){
 			tTaskMemberMapper.updateServiceYearBySplitSuper(task.getSplitSuper());
 		}
@@ -1394,6 +1406,7 @@ public class OrderProjectServiceImpl extends BaseMybatisDao<TOrderTaskMapper> im
 		if (flag){
 			addNoticMember(notice, ono, in.getType(),result);
 		}
+		if(appFlag)addMemberLog(in.getId(),status,"未设置特批账号,跳过特批审核",null);
 		return 1;
 	}
 
@@ -1429,7 +1442,7 @@ public class OrderProjectServiceImpl extends BaseMybatisDao<TOrderTaskMapper> im
 	public int updateMemberProject(InputAddTask t) {
 		TOrderTask task=tOrderTaskMapper.selectByPrimaryKey(t.getId());
 		if(task.getProcessStatus()!=4)throw  new BusinessException("审核状态错误,无法提交。");
-		addMemberLog(t.getId(),0,"修改重新发起");
+		addMemberLog(t.getId(),0,"修改重新发起",TokenManager.getAdminId());
 		t.setProcessStatus(1);
 		TOrderNewBo ono = tOrderNewMapper.getSaleIdByOno(task.getOrderNo());
 		addNoticMember(NoticeStatus.MENBER_START.getCode(), ono, null,0,task);
@@ -1442,12 +1455,12 @@ public class OrderProjectServiceImpl extends BaseMybatisDao<TOrderTaskMapper> im
 
 
 	@Override
-	public void addMemberLog(Integer id,Integer status ,String remarks){
+	public void addMemberLog(Integer id,Integer status ,String remarks,String aid){
 		MemberLog log = new MemberLog();
 		log.setPid(id);
 		log.setStatus(status);
 		log.setRemarks(remarks);
-		log.setAid(TokenManager.getAdminId());
+		log.setAid(aid);
 		memberLogMapper.insertSelective(log);
 	}
 
@@ -1471,15 +1484,15 @@ public class OrderProjectServiceImpl extends BaseMybatisDao<TOrderTaskMapper> im
 			tOrderTask.setProcessStatus(1);
 			tOrderTask.setMemberType(memberType);
 			tOrderTask.setPictureUrl(pictureUrl);
-			if(memberType==1||memberType==2){
-				//判定项目省内外
-				Department dep = tOrderNewMapper.selectDepByOrderNo(tOrderTask.getOrderNo());
-				if (dep!=null&&dep.getProvince()==AFTConstants.HN_PROVINCE){
-					tOrderTask.setApproval(2);
-				}else {
-					tOrderTask.setApproval(1);
-				}
-			}
+//			if(memberType==1||memberType==2){
+//				//判定项目省内外
+//				Department dep = tOrderNewMapper.selectDepByOrderNo(tOrderTask.getOrderNo());
+//				if (dep!=null&&dep.getProvince()==AFTConstants.HN_PROVINCE){
+//					tOrderTask.setApproval(2);
+//				}else {
+//					tOrderTask.setApproval(1);
+//				}
+//			}
 		}
 		Integer i=tOrderTaskMapper.getSplitCount(tid);
 		i++;
@@ -1507,7 +1520,7 @@ public class OrderProjectServiceImpl extends BaseMybatisDao<TOrderTaskMapper> im
 		orderNewService.addTaskMid(tOrderTask.getId(),tOrderTask.getCommodityId(), tOrderTask.getOrderNo());
 		//处理主项目本次派单年份
 		tTaskMemberMapper.updateServiceYearBySplitSuper(tid);
-		addMemberLog(tOrderTask.getId(),0,"新增会员项目");
+		addMemberLog(tOrderTask.getId(),0,"新增会员项目",TokenManager.getAdminId());
 		if(memberType!=null){
 			addMemberExamine(tOrderTask);
 			addNoticMember(NoticeStatus.MENBER_START.getCode(),tOrderTask,null,0);
@@ -1537,7 +1550,10 @@ public class OrderProjectServiceImpl extends BaseMybatisDao<TOrderTaskMapper> im
 					examineType=2;
 				}
 			}
+
 			tOrderTask.setExamineType(examineType);
+		}else {
+			throw new BusinessException("部门未设置财务专员。");
 		}
 		tOrderTask.setId(t.getId());
 

+ 9 - 18
src/main/java/com/goafanti/order/service/impl/PushOrderService.java

@@ -2,15 +2,20 @@ package com.goafanti.order.service.impl;
 
 
 import com.goafanti.common.constant.AFTConstants;
+import com.goafanti.common.dao.DepartmentMapper;
+import com.goafanti.common.model.Department;
 import com.goafanti.core.shiro.token.TokenManager;
 import com.goafanti.order.bo.TOrderNewBo;
 import com.goafanti.order.enums.ApprovalNewState;
 import com.goafanti.order.enums.ProcessStatus;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 @Service
 public class PushOrderService {
     public static final String   DEFAULTS_URL="/image/noPermission.jpg";
+    @Autowired
+    private DepartmentMapper departmentMapper;
 
 
 
@@ -26,24 +31,11 @@ public class PushOrderService {
         //流程状态 0-已派营销员,1-已派营销员管理员,2-已派财务管理员,3-已派财务专员,4-已派咨询师管理员,5-已部分派咨询师经理,6-已部全部派咨询师经理
         if (TokenManager.hasRole(AFTConstants.SUPERADMIN) || TokenManager.hasRole(AFTConstants.APPROVAL_DECISION) ){
             return t.getContractPictureUrl();
-        }else if(TokenManager.hasRole(AFTConstants.CED)){
-            if (t.getApproval()== ApprovalNewState.ZCDSH.getCode()){
+        }else if(t.getApproval()==ApprovalNewState.ZCDSH.getCode()){
+            Department department = departmentMapper.selectByPrimaryKey(t.getOrderDep());
+            if (department.getApproval()==1&&department.getApprovalAid().equals(TokenManager.getAdminId())){
                 return  t.getContractPictureUrl();
-            }else  if (t.getSalesmanId().equals(AFTConstants.CAOJIN_AID)){
-                return DEFAULTS_URL;
-            }else {
-                return  t.getContractPictureUrl();
-            }
-        }else if(TokenManager.hasRole(AFTConstants.VICE_CED)){
-            if(t.getProcessStatus()== ProcessStatus.YPTPSH.getCode()){
-                if (t.getApproval()== ApprovalNewState.FZCDSH.getCode()){
-                    if (t.getSalesmanId().equals(AFTConstants.CAOJIN_AID)) {
-                        return DEFAULTS_URL;
-                    }
-                    return  t.getContractPictureUrl();
-                }
             }
-            return DEFAULTS_URL;
         }else if (TokenManager.hasRole(AFTConstants.SALESMAN)&&
                 TokenManager.getAdminId().equals(t.getSalesmanId())){
             return  t.getContractPictureUrl();
@@ -66,9 +58,8 @@ public class PushOrderService {
             return  t.getContractPictureUrl();
         }else if (TokenManager.hasRole(AFTConstants.OUTSOURCE_AUDITOR)){
             return  t.getContractPictureUrl();
-        }else{
-            return DEFAULTS_URL;
         }
+            return DEFAULTS_URL;
     }
 
 

+ 18 - 0
src/main/java/com/goafanti/organization/bo/OrganizationListOut.java

@@ -42,6 +42,8 @@ public class OrganizationListOut {
 
 	private String retrialFinanceId;
 	private String retrialFinanceName;
+	private Integer approval;
+	private String approvalAid;
 	private Integer province;
 	private Integer hideSign;
 	private Integer workingHoursType;
@@ -49,6 +51,22 @@ public class OrganizationListOut {
 	private Integer lvl;
 	private List<OrganizationListOut> list;
 
+	public Integer getApproval() {
+		return approval;
+	}
+
+	public void setApproval(Integer approval) {
+		this.approval = approval;
+	}
+
+	public String getApprovalAid() {
+		return approvalAid;
+	}
+
+	public void setApprovalAid(String approvalAid) {
+		this.approvalAid = approvalAid;
+	}
+
 	public String getRetrialFinanceId() {
 		return retrialFinanceId;
 	}

+ 6 - 2
src/main/java/com/goafanti/organization/controller/AdminOrganizationController.java

@@ -94,7 +94,7 @@ public class AdminOrganizationController extends BaseApiController{
 	 **/
 	@RequestMapping(value = "/updateOrganization" , method = RequestMethod.POST)
 	public Result updateOrganization(String name, String type, String managerId, String superId, String status,Integer province,String retrialFinanceId,
-									 String remarks,String id,String abbreviation,String financeId,Integer workingHoursType,Integer hideSign,String depNo){
+									 String remarks,String id,String abbreviation,String financeId,Integer workingHoursType,Integer hideSign,String depNo,Integer approval,String approvalAid){
 		Result res = new Result();
 		if(StringUtils.isBlank(name) || StringUtils.isBlank(type)
 				|| StringUtils.isBlank(managerId)|| StringUtils.isBlank(superId)
@@ -110,8 +110,12 @@ public class AdminOrganizationController extends BaseApiController{
 			res.getError().add(buildError("","部门编号已存在"));
 			return res;
 		}
+		if (approval==1&&StringUtils.isBlank(approvalAid)){
+			res.getError().add(buildError("特批审核开启必须设置特批人"));
+			return res;
+		}
 		int i=organizationService.updateOrganization(name, type, managerId, superId, status, province,
-				retrialFinanceId,remarks,id, abbreviation,financeId,workingHoursType,hideSign,depNo);
+				retrialFinanceId,remarks,id, abbreviation,financeId,workingHoursType,hideSign,depNo, approval, approvalAid);
 		return res.data(i);
 	}
 

+ 2 - 1
src/main/java/com/goafanti/organization/service/OrganizationService.java

@@ -44,7 +44,8 @@ public interface OrganizationService {
 	int deleteById(String id);
 
 	int updateOrganization(String name,String type,String managerId,String superId,String status,Integer province,String retrialFinanceId,
-			String remarks,String id,String abbreviation,String financeId,Integer workingHoursType,Integer hideSign,String depNo);
+			String remarks,String id,String abbreviation,String financeId,Integer workingHoursType,Integer hideSign,String depNo,
+						   Integer approval,String approvalAid);
 
 	boolean checkDepNo(String depNo,Integer type);
 

+ 4 - 1
src/main/java/com/goafanti/organization/service/impl/OrganizationServiceImpl.java

@@ -172,7 +172,8 @@ public class OrganizationServiceImpl extends BaseMybatisDao<DepartmentMapper> im
 	}
 	@Override
 	public int updateOrganization(String name, String type, String managerId, String superId, String status,Integer province,String retrialFinanceId,
-			String remarks,String id,String abbreviation,String financeId,Integer workingHoursType,Integer hideSign,String depNo) {
+			String remarks,String id,String abbreviation,String financeId,Integer workingHoursType,Integer hideSign,String depNo,
+								  Integer approval,String approvalAid) {
 		//获取上级编号
 		Department superDep=departmentMapper.selectByPrimaryKey(superId);
 		Date now=new Date();
@@ -193,6 +194,8 @@ public class OrganizationServiceImpl extends BaseMybatisDao<DepartmentMapper> im
 		dep.setProvince(province);
 		dep.setHideSign(hideSign);
 		dep.setWorkingHoursType(workingHoursType);
+		dep.setApproval(approval);
+		dep.setApprovalAid(approvalAid);
 		checkFinaceUpdate(id,financeId);
 		int x=departmentMapper.updateByPrimaryKeySelective(dep);
 		return x;