Procházet zdrojové kódy

新增统计订单客户查询

anderx před 3 roky
rodič
revize
a65ff942bd

+ 11 - 5
src/main/java/com/goafanti/common/mapper/NewOrderChangeMapper.xml

@@ -518,8 +518,11 @@ select
 	<if test="timeType == 1 and startTime !=null and endTime !=null">
 	and b.create_time between #{startTime} and #{endTime}
 	</if>
-	<if test="depId !=null">
-	and b.order_dep = #{depId}
+	<if test="deps !=null">
+	and b.order_dep in
+      <foreach close=")" collection="deps" item="deps" open="(" separator=",">
+        #{deps.id}
+      </foreach>
 	</if>
 	<if test="salesmanName !=null">
 	and d.name like concat('%',#{salesmanName},'%')
@@ -631,9 +634,12 @@ select
 	<if test="timeType == 1 and startTime !=null and endTime !=null">
 	and b.create_time between #{startTime} and #{endTime}
 	</if>
-	<if test="depId !=null">
-	and b.order_dep = #{depId}
-	</if>
+    <if test="deps !=null">
+      and b.order_dep in
+      <foreach close=")" collection="deps" item="deps" open="(" separator=",">
+        #{deps.id}
+      </foreach>
+    </if>
 	<if test="salesmanName !=null">
 	and d.name like concat('%',#{salesmanName},'%')
 	</if>

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

@@ -4,15 +4,11 @@ import java.io.IOException;
 import java.io.OutputStream;
 import java.math.BigDecimal;
 import java.text.SimpleDateFormat;
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.UUID;
+import java.util.*;
 
 import javax.servlet.http.HttpServletResponse;
 
+import com.goafanti.admin.service.DepartmentService;
 import com.goafanti.common.dao.*;
 import com.goafanti.common.model.*;
 import org.apache.poi.xssf.usermodel.XSSFCell;
@@ -111,6 +107,8 @@ public class OrderChangeServiceImpl extends BaseMybatisDao<NewOrderChangeMapper>
 	private TOrderMidMapper tOrderMidMapper;
 	@Autowired
 	private UserMidMapper userMidMapper;
+	@Autowired
+	private DepartmentService departmentService;
 
 	Logger							logger	= LoggerFactory.getLogger(OrderChangeServiceImpl.class);
 
@@ -509,7 +507,14 @@ 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("depId", depId);
+		if (StringUtils.isNotBlank(depId)) {
+			String[] ss=depId.split(",");
+			List<Department> ls=new ArrayList<>();
+			Arrays.stream(ss).forEach(e ->{
+				ls.addAll(departmentService.selectSubDeps(e));
+			});
+			parameter.put("deps",ls);
+		}
 		if (StringUtils.isNotBlank(salesmanName)) parameter.put("salesmanName", salesmanName);
 		if(processState==5&&TokenManager.hasRole(AFTConstants.FINANCE_MANAGER)) {
 			parameter.put("aids", adminMapper.selectBySuperId(TokenManager.getAdminId()));