anderx hace 5 años
padre
commit
9cd52ea97b

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

@@ -1841,23 +1841,64 @@ ifnull(ttm.party_amount,0) partyAmount,a.commodity_price commodityPrice,a.outsou
 	(a.commodity_price-ttm.cost_amount)profit,
 	</if>
 	<if test="status==4">
-	a.commodity_quantity commodityQuantity ,ttm.certificates_count certificatesCount,a.high_tech_status highTechStatus,
+	ttm.certificates_count certificatesCount,a.high_tech_status highTechStatus,
 	tp.patent_name patentName ,tp.patent_no patentNo ,date_format(tp.accept_time, '%Y-%m-%d ' ) acceptTime ,
 	date_format(tp.licence_time, '%Y-%m-%d' ) licenceTime ,date_format(tp.authorize_time, '%Y-%m-%d ' )  authorizeTime,
 	ttm.reject_count	rejectCount ,ttm.cost_amount costAmount ,(a.commodity_price-ttm.cost_amount)profit,
 	</if>
 	
-	 a.commodity_price commodityPrice ,a.special_comment specialComment
+	a.commodity_quantity commodityQuantity , a.commodity_price commodityPrice ,a.special_comment specialComment
 	from t_order_task a left join t_order_new b on a.order_no =b.order_no left join department c on b.order_dep =c.id left join district_glossory d on c.province=d.id
 	<if test="status==3 or status==4">
 	left join task_progress tp  on a.id=tp.task_id 
 	</if> 
 	left join t_order_mid e on b.order_no =e.order_no left join business_project bp on a.commodity_id =bp.id left join business_category bc on bp.cid =bc.id 
 	left join t_task_mid ttm on a.id=ttm.tid left join admin ta on a.task_receiver =ta.id left join department td on ta.department_id =td.id
+	<if test="screen ==6">
+	right join (select tid ,accept_count sls from t_task_mid where accept_count &gt; 0)tj on a.id=tj.tid
+	</if>
+	<if test="screen ==7">
+	right join (select tid ,end_count wjs from t_task_mid where end_count &gt; 0)tj on a.id=tj.tid
+	</if>
+	<if test="screen ==8">
+	right join (select tid ,authorize_count sqs from t_task_mid where authorize_count &gt; 0)tj on a.id=tj.tid
+	</if>
+	<if test="screen ==9">
+	right join (select tid ,reject_count bhs from t_task_mid where reject_count &gt; 0)tj on a.id=tj.tid
+	</if>
+	<if test="screen ==10">
+	right join (select tid ,certificates_count xzs from t_task_mid where certificates_count &gt; 0)tj on a.id=tj.tid
+	</if>
+	<if test="screen ==11">
+	right join (select tid ,apply_count sqs,reject_count bhs,certificates_count xzs from t_task_mid 
+	where apply_count &gt; 0)tj on a.id=tj.tid
+	</if>
 	where a.split_status in (0,2) and a.task_status in (1,2,3)
+	<!--  筛选项 0库存 1派单 2完成 3立项 4抽查 5未通过 6受理 7完结 8授权 9驳回 10下证 11申请 -->
+	<if test="screen ==1">
+	and a.status in(0,1,2,3,5)
+	</if>
+	<if test="screen ==2">
+	and a.status in(4,6)
+	</if>	
+	<if test="screen ==3">
+	and a.set_up_status =1
+	</if>
+	<if test="screen ==4">
+	and a.spot_check_status in (1,2)
+	</if>	
+	<if test="screen ==5">
+	and a.spot_check_status =1
+	</if>	
     <if test="startDate != null and endDate != null">
   	and a.task_distribution_time between #{startDate} and #{endDate}
   	</if>
+  	<if test="province !=null">
+	and c.province =  #{province}
+  	</if>
+  	<if test="projectId !=null">
+	and a.commodity_id = #{projectId}
+  	</if>
   	<if test="depId !=null">
 	and b.order_dep = #{depId}
   	</if>
@@ -1901,7 +1942,42 @@ ifnull(ttm.party_amount,0) partyAmount,a.commodity_price commodityPrice,a.outsou
 	from t_order_task a left join t_order_new b on a.order_no =b.order_no left join department c on b.order_dep =c.id left join district_glossory d on c.province=d.id
 	left join t_order_mid e on b.order_no =e.order_no left join business_project bp on a.commodity_id =bp.id left join business_category bc on bp.cid =bc.id 
 	left join t_task_mid ttm on a.id=ttm.tid left join admin ta on a.task_receiver =ta.id left join department td on ta.department_id =td.id
+	<if test="screen ==6">
+	right join (select tid ,accept_count sls from t_task_mid where accept_count &gt; 0)tj on a.id=tj.tid
+	</if>
+	<if test="screen ==7">
+	right join (select tid ,end_count wjs from t_task_mid where end_count &gt; 0)tj on a.id=tj.tid
+	</if>
+	<if test="screen ==8">
+	right join (select tid ,authorize_count sqs from t_task_mid where authorize_count &gt; 0)tj on a.id=tj.tid
+	</if>
+	<if test="screen ==9">
+	right join (select tid ,reject_count bhs from t_task_mid where reject_count &gt; 0)tj on a.id=tj.tid
+	</if>
+	<if test="screen ==10">
+	right join (select tid ,certificates_count xzs from t_task_mid where certificates_count &gt; 0)tj on a.id=tj.tid
+	</if>
+	<if test="screen ==11">
+	right join (select tid ,apply_count sqs,reject_count bhs,certificates_count xzs from t_task_mid 
+	where apply_count &gt; 0)tj on a.id=tj.tid
+	</if>
 	where a.split_status in (0,2) and a.task_status in (1,2,3)
+	<!--  筛选项 0库存 1派单 2完成 3立项 4抽查 5未通过 6受理 7完结 8授权 9驳回 10下证 11申请 -->
+	<if test="screen ==1">
+	and a.status in(0,1,2,3,5)
+	</if>
+	<if test="screen ==2">
+	and a.status in(4,6)
+	</if>	
+	<if test="screen ==3">
+	and a.set_up_status =1
+	</if>
+	<if test="screen ==4">
+	and a.spot_check_status in (1,2)
+	</if>	
+	<if test="screen ==5">
+	and a.spot_check_status =1
+	</if>	
   <if test="startDate != null and endDate != null">
   	and a.task_distribution_time between #{startDate} and #{endDate}
   	</if>
@@ -1942,8 +2018,9 @@ ifnull(ttm.party_amount,0) partyAmount,a.commodity_price commodityPrice,a.outsou
   
   
    <select id="selectProvincialStatisticsListByPage" resultType="com.goafanti.order.bo.OutProvincialStatistics">
-	select dg.name provinceName,de.name thchDepName ,bc.cname projectStatus, ifnull(x.kcs,0) stockCount,
-	 ifnull(x.pds,0) distributeCount,
+	select dg.name provinceName,de.name thchDepName ,bc.cname projectStatus,
+	  dg.id province, de.id thchDepId,bc.id bpId, 
+	 ifnull(x.kcs,0) stockCount, ifnull(x.pds,0) distributeCount,
 	<if test="status==1">
 	ifnull(x.wcs,0) completeCount, ifnull(x.lxs,0) setUpCount,ifnull(x.ccs,0) spotCheckCount,ifnull(x.wtg,0) failedCount,
 	</if>
@@ -1962,7 +2039,7 @@ ifnull(ttm.party_amount,0) partyAmount,a.commodity_price commodityPrice,a.outsou
 	x.amountCount,x.costAmount,x.profit
 	from (select dep.province, ad.department_id,bp.cid ,sum(kcs.cq) kcs,sum(pds.cq)pds,
 	<if test="status==1">
-	sum(wcs.cq)wcs, sum(lxs.cq)lxs,sum(ccs.cq)ccs,sum(pds.cq)wtg,
+	sum(wcs.cq)wcs, sum(lxs.cq)lxs,sum(ccs.cq)ccs,sum(wtg.cq)wtg,
 	</if>
 	<if test="status==2 or status==3">
 	sum(tj.sls) sls,sum(tj.wjs)wjs,sum(tj.sqs)sqs, sum(tj.bhs)bhs,
@@ -1980,7 +2057,7 @@ ifnull(ttm.party_amount,0) partyAmount,a.commodity_price commodityPrice,a.outsou
 	from t_order_task a left join t_order_new b on a.order_no =b.order_no left join t_task_mid ttm on a.id=ttm.tid 
 	left join department dep on b.order_dep =dep.id  left join admin ad on a.task_receiver =ad.id
 	left join business_project bp on a.commodity_id =bp.id 
-	left join (select id,commodity_quantity cq from t_order_task where status in(0,1,2,3,5,6))kcs on a.id=kcs.id
+	left join (select id,commodity_quantity cq from t_order_task where status in(0,1,2,3,5))kcs on a.id=kcs.id
 	left join (select id,commodity_quantity cq from t_order_task where task_status in (1,2,3))pds on a.id=pds.id
 	<if test="status==1">
 	left join (select id,commodity_quantity cq from t_order_task where status in(4,6))wcs on a.id=wcs.id

+ 25 - 0
src/main/java/com/goafanti/order/bo/InputProjectStatistics.java

@@ -23,6 +23,13 @@ public class InputProjectStatistics {
 	private String projectStatusName;
 	private String projectTypeName;
 	
+	private Integer province;
+	private String projectId;
+	/** 
+	 * 筛选项 0库存 1派单 2完成 3立项 4抽查 5未通过 6受理 7完结 8授权 9驳回 10下证 11申请
+	 */
+	private Integer screen;
+	
 	public Integer getStatus() {
 		return status;
 	}
@@ -137,6 +144,24 @@ public class InputProjectStatistics {
 	public void setProjectTypeName(String projectTypeName) {
 		this.projectTypeName = projectTypeName;
 	}
+	public Integer getProvince() {
+		return province;
+	}
+	public void setProvince(Integer province) {
+		this.province = province;
+	}
+	public String getProjectId() {
+		return projectId;
+	}
+	public void setProjectId(String projectId) {
+		this.projectId = projectId;
+	}
+	public Integer getScreen() {
+		return screen;
+	}
+	public void setScreen(Integer screen) {
+		this.screen = screen;
+	}
 	
 	
 	

+ 3 - 3
src/main/java/com/goafanti/order/bo/OutProjectStatistics.java

@@ -28,7 +28,7 @@ public class OutProjectStatistics {
 	private String  legalPersonTel;
 	private String  certificateNumber;
 	private String  declarationBatch;
-	private String  commodityQuantity;
+	private Integer  commodityQuantity;
 	private BigDecimal  commodityPrice;
 	
 	
@@ -100,10 +100,10 @@ public class OutProjectStatistics {
 	public void setDeclarationBatch(String declarationBatch) {
 		this.declarationBatch = declarationBatch;
 	}
-	public String getCommodityQuantity() {
+	public Integer getCommodityQuantity() {
 		return commodityQuantity;
 	}
-	public void setCommodityQuantity(String commodityQuantity) {
+	public void setCommodityQuantity(Integer commodityQuantity) {
 		this.commodityQuantity = commodityQuantity;
 	}
 	public BigDecimal getCommodityPrice() {

+ 30 - 0
src/main/java/com/goafanti/order/bo/OutProvincialStatistics.java

@@ -10,6 +10,36 @@ public class OutProvincialStatistics {
 	
 	private String projectStatus;
 	
+	private Integer province;
+	private String thchDepId;
+	private String bpId;
+	
+	
+	
+	public Integer getProvince() {
+		return province;
+	}
+
+	public void setProvince(Integer province) {
+		this.province = province;
+	}
+
+	public String getThchDepId() {
+		return thchDepId;
+	}
+
+	public void setThchDepId(String thchDepId) {
+		this.thchDepId = thchDepId;
+	}
+
+	public String getBpId() {
+		return bpId;
+	}
+
+	public void setBpId(String bpId) {
+		this.bpId = bpId;
+	}
+
 	/** 库存数 */
 	private Integer stockCount;
 	/** 派单数 */

+ 5 - 0
src/main/java/com/goafanti/order/service/impl/ProjectStatisticsServiceImpl.java

@@ -71,6 +71,11 @@ public class ProjectStatisticsServiceImpl extends BaseMybatisDao<TOrderTaskMappe
 			params.put("amountEnd", e);
 		}
 		params.put("status",ps.getStatus()==null?0:ps.getStatus());
+		
+		
+		if(ps.getProvince()!=null)	params.put("province", ps.getProvince());
+		if(ps.getProjectId()!=null) params.put("projectId", ps.getProjectId());
+		if(ps.getScreen()!=null) params.put("screen", ps.getScreen());
 		if(ps.getPageNo()!=null)pageNo=ps.getPageNo();
 		if(ps.getPageSize()!=null)pageSize=ps.getPageSize();
 		Pagination<OutProjectStatistics> p = (Pagination<OutProjectStatistics>)findPage("selectProjectStatisticsListByPage",