Browse Source

修改营销管理员变更列表BUG

anderx 3 years ago
parent
commit
055a618bc2

+ 11 - 2
src/main/java/com/goafanti/admin/service/DepartmentService.java

@@ -27,9 +27,18 @@ public interface DepartmentService {
 	List<Department> selectMyDeps();
 
 
-	List<Department> selectSubDeps(String subId);
-	List<Department> selectSubDeps(String subId,Integer type);
 
 
+
+	/**
+	 * 查出部门,及下级部门
+	 * @param subId 部门编号
+	 * @param type	 0=包含本部门,1不包含本部门
+	 * @param myShiro 0=正常,1=只看我相关部门
+	 */
+	List<Department> selectSubDeps(String subId,Integer type,Integer myShiro);
+	List<Department> selectSubDeps(String subId,Integer type);
+	List<Department> selectSubDeps(String subId);
+
 	List<Department> getLowerDep(String depIds);
 }

+ 15 - 0
src/main/java/com/goafanti/admin/service/impl/DepartmentServiceImpl.java

@@ -77,6 +77,11 @@ public class DepartmentServiceImpl extends BaseMybatisDao<WorkingHoursMapper> im
 
 	@Override
 	public List<Department> selectSubDeps(String subId,Integer type) {
+		return selectSubDeps(subId,type,0);
+	}
+
+	@Override
+	public List<Department> selectSubDeps(String subId,Integer type,Integer myShiro) {
 		List<Department>  list =departmentMapper.selectSubDeps(subId);
 		List<Department>  all=new ArrayList<>();
 		if (type==0)all.add(departmentMapper.selectByPrimaryKey(subId));
@@ -89,6 +94,16 @@ public class DepartmentServiceImpl extends BaseMybatisDao<WorkingHoursMapper> im
 				}
 			}
 		}
+		if (myShiro==1){
+			List<Department>myAll=new ArrayList<>();
+			List<Department> my=selectMyDeps();
+			for (Department dep : all) {
+				for (Department department : my) {
+					if (dep.getId().equals(department.getId()))myAll.add(dep);
+				}
+			}
+			all=myAll;
+		}
 		return all;
 	}
 

+ 19 - 6
src/main/java/com/goafanti/order/controller/OrderChangeApiController.java

@@ -277,13 +277,26 @@ public class OrderChangeApiController extends CertifyApiController {
 		res.setData(handleFile(res, "/order_change_file/", false, req, sign));
 		return res;
 	}
+
 	/**
-	 *  变更列表
-	 *  超级无语接口,变更太乱了
-	 *  首先是草稿然后发起变成审核中,再在流程中走一遍当金额小于2000总裁通过标记为通过,大于2000总裁通过不改变状态,流转到董事长,董事长审核改变
-	 *  状态为通过,通过状态下为财务退票,退票完成后改状态为上传附件,实际为营销员上传附件,营销员上传完后触发完成变更,状态才变成完成
-	 *  流程状态 0营销员 1营销管理员 2技术员 3技术经理 4技术总监 5财务专员(退单) 6财务总监 7总裁 8董事长
-	 *  状态 0草稿 1审核中 2通过 3驳回 4完成 5撤销 6上传附件
+	 * 	超级无语接口,变更太乱了
+	 * 	首先是草稿然后发起变成审核中,再在流程中走一遍当金额小于2000总裁通过标记为通过,大于2000总裁通过不改变状态,流转到董事长,董事长审核改变
+	 * 	状态为通过,通过状态下为财务退票,退票完成后改状态为上传附件,实际为营销员上传附件,营销员上传完后触发完成变更,状态才变成完成
+	 * 	状态 0草稿 1审核中 2通过 3驳回 4完成 5撤销 6上传附件
+	 * @param userName
+	 * @param processState 流程状态 0营销员 1营销管理员 2技术员 3技术经理 4技术总监 5财务专员(退单) 6财务总监 7总裁 8董事长
+	 * @param timeType
+	 * @param startTime
+	 * @param endTime
+	 * @param depId
+	 * @param salesmanName
+	 * @param complete
+	 * @param orderNo
+	 * @param contractNo
+	 * @param type
+	 * @param pageSize
+	 * @param pageNo
+	 * @return
 	 */
 	@RequestMapping(value ="/orderChangeList",method = RequestMethod.GET)
 	public Result orderChangeList(String userName,Integer  processState,Integer timeType,String startTime,String endTime,

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

@@ -32,6 +32,23 @@ public interface OrderChangeService {
 
 	List<OrderChangeLogBo> selectOrderChangeLogList(String changeId);
 
+	/**
+	 *
+	 * @param userName
+	 * @param processState 流程状态 0营销员 1营销管理员 2技术员 3技术经理 4技术总监 5财务专员(退单) 6财务总监 7总裁 8董事长
+	 * @param timeType
+	 * @param startTime
+	 * @param endTime
+	 * @param depId
+	 * @param salesmanName
+	 * @param complete
+	 * @param orderNo
+	 * @param contractNo
+	 * @param type
+	 * @param pageSize
+	 * @param pageNo
+	 * @return
+	 */
 	Pagination<NewOderCahngeListBo> selectOrderChangeList(String userName,Integer  processState,Integer timeType,String startTime,String endTime,
 			String depId,String salesmanName,Integer complete,String orderNo, String contractNo,Integer type, Integer pageSize, Integer pageNo );
 
@@ -64,7 +81,7 @@ public interface OrderChangeService {
 	int deleteChangeDun(Integer id);
 
 	List<TChangeTaskOut> selectChangeTask(Integer cid);
-	
+
 	List<TChangeDunOut> selectChangeDun(Integer cid);
 
 	int updateChangeTask(InputTChangeTask t);

+ 16 - 2
src/main/java/com/goafanti/order/service/impl/OrderChangeServiceImpl.java

@@ -10,6 +10,7 @@ import javax.servlet.http.HttpServletResponse;
 
 import com.goafanti.admin.service.DepartmentService;
 import com.goafanti.common.dao.*;
+import com.goafanti.common.enums.UserFields;
 import com.goafanti.common.model.*;
 import org.apache.poi.xssf.usermodel.XSSFCell;
 import org.apache.poi.xssf.usermodel.XSSFRow;
@@ -507,8 +508,21 @@ public class OrderChangeServiceImpl extends BaseMybatisDao<NewOrderChangeMapper>
 		if (null!=timeType) parameter.put("timeType", timeType);
 		if (StringUtils.isNotBlank(startTime)) parameter.put("startTime", startTime);
 		if (StringUtils.isNotBlank(endTime)) parameter.put("endTime", endTime+" 23:59:59");
-		if (StringUtils.isNotBlank(depId)) {
-			parameter.put("deps",departmentService.getLowerDep(depId));
+		if (processState==1){
+			List<Department> myDep;
+			if (StringUtils.isNotBlank(depId)) {
+				myDep=departmentService.selectSubDeps(depId,0,1);
+				if (myDep.isEmpty()){
+					return new Pagination(1,10,0);
+				}
+			}else {
+				myDep=departmentService.selectMyDeps();
+			}
+			parameter.put("deps",myDep);
+		}else {
+			if (StringUtils.isNotBlank(depId)) {
+				parameter.put("deps",departmentService.getLowerDep(depId));
+			}
 		}
 		if (StringUtils.isNotBlank(salesmanName)) parameter.put("salesmanName", salesmanName);
 		if(processState==5&&TokenManager.hasRole(AFTConstants.FINANCE_MANAGER)) {