瀏覽代碼

用杨苏伟发过来的SQL更新Repo

zhuoning 3 年之前
父節點
當前提交
6ad3146e8a

+ 240 - 386
huimv-hy-production/huimv.hy.erp.datasource/src/main/java/com/huimv/production/datasource/dao/repo/TDeliveryRepo.java

@@ -1,4 +1,3 @@
-/*
 package com.huimv.production.datasource.dao.repo;
 
 import com.huimv.production.datasource.dao.entity.TDeliveryEntity;
@@ -10,8 +9,7 @@ import java.util.List;
 
 public interface TDeliveryRepo extends JpaRepository<TDeliveryEntity, String>, JpaSpecificationExecutor<TDeliveryEntity> {
    
-    */
-/**
+    /**
      * @Method      : getPsy
      * @Description : Psy
      * @Params      : []
@@ -20,8 +18,7 @@ public interface TDeliveryRepo extends JpaRepository<TDeliveryEntity, String>, J
      * @Author      : ZhuoNing
      * @Date        : 2021/5/15       
      * @Time        : 13:50
-     *//*
-
+     */
     @Query(nativeQuery = true,value = "select CAST(PJWCHZ*chl*NLYWS AS DEC(8,2)) AS 'PSY' from (select avg(TNewStru7743.FamountLiveInt*1.0) as 'PJWCHZ'" +
             " from TDelivery left join TNewStru7743 on TNewStru7743.FDeliveryMainStruID=TDelivery.FID " +
             " where TDelivery.FLogStatee in(3,4,6) and TDelivery.FDateDelivery between ?1 and ?2)PJWCHZ, " +
@@ -42,10 +39,33 @@ public interface TDeliveryRepo extends JpaRepository<TDeliveryEntity, String>, J
             " And (datediff(dd,?2,TDelivery.FDATEDELIVERY)<=0 ) " +
             " ) tmp_tbl " +
             " having avg(tjj)>0)ncws ")
+    List<Object[]> getPsy_old(String startDate,String endDate);
+
+
+    @Query(nativeQuery = true,value = "select CAST(PJWCHZ*chl*NLYWS AS DEC(8,2)) AS 'PSY' from (select avg(TNewStru7743.FamountLiveInt*1.0) as 'PJWCHZ' " +
+            "from TDelivery left join TNewStru7743 on TNewStru7743.FDeliveryMainStruID=TDelivery.FID " +
+            "where TDelivery.FLogStatee in(3,4,6) and TDelivery.FDateDelivery between ?1 and ?2)PJWCHZ," +
+            "(SELECT case WHEN zczc = 0 THEN 0 ELSE 1-sw/zczc END  as 'chl' from ( select count(TBornNewStru.Fid) as 'zczc'" +
+            "           from TBorn left join TBornNewStru on TBornNewStru.FBornMainStruID = TBorn.FID " +
+            "           where TBorn.FLOGSTATEE in (3,4,6)" +
+            "     and TBorn.FDATEBORN between  ?1 and ?2)cs,(select sum(isnull(TPigDieChild.FweakpigdieCount,0))+sum(isnull(TPigDieChild.Fpigdiecount,0)) as sw " +
+            " from TPigDie left join TPigDieChild on TPigDieChild.FPigDieMainStruID=TPigDie.FID " +
+            " where TPigDie.FBillState in(3,4,6) and TPigDieChild.FPigSex in(1,2,3) and FPIGSTATE=15" +
+            " and (TPigDie.FDieDate BETWEEN  ?1 and ?2))sw )chl,(select  CAST(365*1.0/avg(tjj) as dec(7,4)) as 'NLYWS'   " +
+            " from " +
+            "  (SELECT" +
+            " case when isnull(TNewStru7743.FtyreDistance,0)!=0 then  TNewStru7743.FtyreDistance  end  as 'tjj' " +
+            " FROM TDelivery     " +
+            " LEFT JOIN TNewStru7743  on TNewStru7743.FDeliveryMainStruID = TDelivery.FID " +
+            "" +
+            "  WHERE  TDelivery.FlogStateE in(3,4,6) " +
+            "And ( datediff(dd,?1,TDelivery.FDATEDELIVERY)>=0 ) " +
+            "And (datediff(dd,?2,TDelivery.FDATEDELIVERY)<=0 )  " +
+            ") tmp_tbl   " +
+            "    having avg(tjj)>0)ncws")
     List<Object[]> getPsy(String startDate,String endDate);
 
-    */
-/**
+    /**
      * @Method      : getReEstrusRate
      * @Description : 返情率
      * @Params      : []
@@ -54,8 +74,7 @@ public interface TDeliveryRepo extends JpaRepository<TDeliveryEntity, String>, J
      * @Author      : ZhuoNing
      * @Date        : 2021/5/15
      * @Time        : 13:50
-     *//*
-
+     */
     @Query(nativeQuery = true,value =
             "select TOrganizeCell.FSHORTNAME as 'farm', tmp_tblpz.FBreedD as 'variety'," +
             "CAST(count(tmp_tblfm.SowStrID)*1.0/(case sum(tmp_tblpz.mate_times) when 0 then null else sum(tmp_tblpz.mate_times) end) as dec(8,5)) as 'reestrus_rate' " +
@@ -72,10 +91,28 @@ public interface TDeliveryRepo extends JpaRepository<TDeliveryEntity, String>, J
             "left join TOrganizeCell on tmp_tblpz.HogpendID=TOrganizeCell.FID " +
             "where TOrganizeCell.FNAME is not null " +
             "group by TOrganizeCell.FSHORTNAME,tmp_tblpz.FBreedD")
+    List<Object[]> getReEstrusRate_old(String startDate,String endDate);
+
+    @Query(nativeQuery = true,value =
+            "select TOrganizeCell.FSHORTNAME as '猪场', " +
+                    "CAST(count(tmp_tblfm.SowStrID)*1.0/(case sum(tmp_tblpz.配种次数) when 0 then null else sum(tmp_tblpz.配种次数) end) as dec(8,5)) as '配种返情率' " +
+                    "from (select " +
+                    "TBreeding.HogpendID,TNewStru8094.FBreedD,TNewStru8094.SowStrID,TNewStru8094.FParityInt,count(TNewStru8094.FID) as '配种次数' " +
+                    "from TBreeding left join TNewStru8094 on TNewStru8094.FBreedingMainStruID=TBreeding.FID " +
+                    "where TBreeding.FLogStatee in(3,4,6)   and datediff(dd,?1, FDateBreed)>=-121 and datediff(dd,?2,FDateBreed) <=-121" +
+                    "group by TBreeding.HogpendID,TNewStru8094.FBreedD,TNewStru8094.SowStrID,TNewStru8094.FParityInt " +
+                    ") tmp_tblpz " +
+                    "left join (select TReturnEstrusewStru.SowStrID,TReturnEstrusewStru.FParityInt from TReturnEstrusewStru " +
+                    "left join TReturnEstrus on TReturnEstrusewStru.FReturnEstrusMainStruID=TReturnEstrus.FID " +
+                    "where TReturnEstrus.FLogStatee in(3,4,6)  and datediff(dd,?1, TReturnEstrusewStru.FDateBreed)>=-121 and datediff(dd,?2,TReturnEstrusewStru.FDateBreed) <=-121" +
+                    ") tmp_tblfm on tmp_tblpz.SowStrID=tmp_tblfm.SowStrID and tmp_tblpz.FParityInt=tmp_tblfm.FParityInt " +
+                    "" +
+                    "left join TOrganizeCell on tmp_tblpz.HogpendID=TOrganizeCell.FID" +
+                    "where TOrganizeCell.FNAME in('海盐曙光',)" +
+                    "group by TOrganizeCell.FSHORTNAME")
     List<Object[]> getReEstrusRate(String startDate,String endDate);
 
-    */
-/**
+    /**
      * @Method      : getParturitionRate
      * @Description : 分娩率
      * @Params      : [startDate, endDate]
@@ -84,8 +121,7 @@ public interface TDeliveryRepo extends JpaRepository<TDeliveryEntity, String>, J
      * @Author      : ZhuoNing
      * @Date        : 2021/5/15       
      * @Time        : 14:43
-     *//*
-
+     */
     @Query(nativeQuery = true,value ="select TOrganizeCell.FSHORTNAME as 'farm', tmp_tblpz.FBreedD as 'variety', " +
             "CAST(count(tmp_tblfm.SowStrID)*1.0/(case sum(tmp_tblpz.mate_times) when 0 then null else sum(tmp_tblpz.mate_times) end) as dec(8,5)) as 'parturition_rate' " +
             "from (select " +
@@ -102,10 +138,27 @@ public interface TDeliveryRepo extends JpaRepository<TDeliveryEntity, String>, J
             "left join TOrganizeCell on tmp_tblpz.HogpendID=TOrganizeCell.FID " +
             "where TOrganizeCell.FNAME is not null " +
             "group by TOrganizeCell.FSHORTNAME,tmp_tblpz.FBreedD ")
+    List<Object[]> getParturitionRate_old(String startDate, String endDate);
+
+    @Query(nativeQuery = true,value ="select TOrganizeCell.FSHORTNAME as '猪场', " +
+            "CAST(count(tmp_tblfm.SowStrID)*1.0/(case sum(tmp_tblpz.配种次数) when 0 then null else sum(tmp_tblpz.配种次数) end) as dec(8,5)) as '配种分娩率' " +
+            "from (select " +
+            "TBreeding.HogpendID,TNewStru8094.FBreedD,TNewStru8094.SowStrID,TNewStru8094.FParityInt,count(TNewStru8094.FID) as '配种次数' " +
+            "from TBreeding left join TNewStru8094 on TNewStru8094.FBreedingMainStruID=TBreeding.FID " +
+            "where TBreeding.FLogStatee in(3,4,6) and datediff(dd,?1, FDateBreed)>=-121 and datediff(dd,?2,FDateBreed) <=-121" +
+            "group by TBreeding.HogpendID,TNewStru8094.FBreedD,TNewStru8094.SowStrID,TNewStru8094.FParityInt " +
+            ") tmp_tblpz " +
+            "left join (select TNewStru7743.SowStrID,TNewStru7743.FParityInt from TNewStru7743 " +
+            "left join TDelivery on TNewStru7743.FDeliveryMainStruID=TDelivery.FID " +
+            "where TDelivery.FLogStatee in(3,4,6)  and datediff(dd,?1, TNewStru7743.FDateBreed )>=-121" +
+            " and datediff(dd,?2,TNewStru7743.FDateBreed ) <=-121 " +
+            ") tmp_tblfm on tmp_tblpz.SowStrID=tmp_tblfm.SowStrID and tmp_tblpz.FParityInt=tmp_tblfm.FParityInt " +
+            "left join TOrganizeCell on tmp_tblpz.HogpendID=TOrganizeCell.FID" +
+            "where TOrganizeCell.FNAME in('海盐曙光')" +
+            "group by TOrganizeCell.FSHORTNAME")
     List<Object[]> getParturitionRate(String startDate, String endDate);
     
-    */
-/**
+    /**
      * @Method      : getStorage
      * @Description : 各种存栏
      * @Params      : []
@@ -114,15 +167,18 @@ public interface TDeliveryRepo extends JpaRepository<TDeliveryEntity, String>, J
      * @Author      : ZhuoNing
      * @Date        : 2021/5/15       
      * @Time        : 14:57
-     *//*
-
+     */
     @Query(nativeQuery = true,value ="SELECT oc.FSHORTNAME as 'farm',tb.FNAME as 'name',COUNT(tp.FID) as 'quantity' FROM (select TOrganizeCell.FID,TOrganizeCell.FSHORTNAME from  TOrganizeCell) oc RIGHT " +
             "JOIN TPigArchives tp ON tp.HOGPENWHEREDID = oc.FID  " +
             "RIGHT JOIN TBreed tb ON tb.FID = tp.VARIETYDID GROUP BY oc.FSHORTNAME,tb.FNAME ")
+    List<Object[]> getStorage_old();
+
+    @Query(nativeQuery = true,value ="SELECT oc.FSHORTNAME,tb.FNAME,COUNT(tp.FID) FROM (select TOrganizeCell.FID,TOrganizeCell.FSHORTNAME from  TOrganizeCell where FNAME in ('海盐曙光',)) oc left" +
+            "JOIN TPigArchives tp ON tp.HOGPENWHEREDID = oc.FID " +
+            "left JOIN TBreed tb ON tb.FID = tp.VARIETYDID GROUP BY oc.FSHORTNAME,tb.FNAME")
     List<Object[]> getStorage();
 
-    */
-/**
+    /**
      * @Method      : getPigletInfo
      * @Description : 均产仔数,仔猪存活率
      * @Params      : [startDate, endDate]
@@ -131,8 +187,7 @@ public interface TDeliveryRepo extends JpaRepository<TDeliveryEntity, String>, J
      * @Author      : ZhuoNing
      * @Date        : 2021/5/15       
      * @Time        : 15:17
-     *//*
-
+     */
     @Query(nativeQuery = true,value ="SELECT " +
             "( SELECT FSHORTNAME FROM dbo.TOrganizeCell WHERE FID = td.HOGPENDID ) AS 'farm'," +
             "COUNT ( tn.SOWSTRID ) AS 'birth_number', " +
@@ -163,10 +218,45 @@ public interface TDeliveryRepo extends JpaRepository<TDeliveryEntity, String>, J
             "AND datediff( dd, ?1, td.FDATEDELIVERY ) >= 0   " +
             "AND datediff( dd, ?2, td.FDATEDELIVERY ) <= 0  " +
             "GROUP BY td.HOGPENDID,tdie.csamount, tlose.csamount")
-    List<Object[]> getPigletInfo(String startDate, String endDate);
+    List<Object[]> getPigletInfo_old(String startDate, String endDate);
+
 
-    */
-/**
+    @Query(nativeQuery = true,value ="SELECT " +
+            "( SELECT FSHORTNAME FROM dbo.TOrganizeCell WHERE FID = td.HOGPENDID ) AS '猪场'," +
+            "COUNT ( tn.SOWSTRID ) AS '分娩头数'," +
+            "SUM ( tn.FAMOUNTKITTENINT ) AS '产仔总数'," +
+            "ISNULL(tdie.csamount,0)+ISNULL(tlose.csamount,0) AS '仔猪死淘数'" +
+            "FROM" +
+            "dbo.TDelivery td" +
+            "LEFT JOIN dbo.TNewStru7743 tn ON tn.FDeliveryMainStruID = td.FID " +
+            "LEFT JOIN (SELECT isnull(sum(isnull(FPIGDIECOUNT,0)+isnull(FWEAKPIGDIECOUNT,0)),0) as csamount,PIGHOUSEID FROM TPigdieChild,TPigdie WHERE" +
+            "FPigdieMainStruID = TPigdie.FID " +
+            "AND FDIEDATE BETWEEN ?1 " +
+            "AND ?2" +
+            "and FPIGSEX = 3 AND FPIGSTATE = 15" +
+            "GROUP BY" +
+            "PIGHOUSEID ) tdie on tdie.PIGHOUSEID = td.HOGPENDID" +
+            "LEFT JOIN (SELECT isnull(ISNULL(sum(TPigLoseChild.FpigLoseCount),0)+ISNULL(sum(TPigLoseChild.FweakPigLoseCount),0),0) as csamount,PIGHOUSEID FROM TPigLoseChild," +
+            "TPigLose " +
+            "WHERE" +
+            "FPigLoseMainStruID = TPigLose.FID " +
+            "AND FPIGLOSEDATE BETWEEN ?1 " +
+            "AND ?2 " +
+            "AND FSEX = 3 " +
+            "AND FPIGSTATE = 15" +
+            "GROUP BY" +
+            "PIGHOUSEID ) tlose on tlose.PIGHOUSEID = td.HOGPENDID" +
+            "WHERE" +
+            "td.FLOGSTATEE IN ( 3, 4, 6 ) " +
+            "AND datediff( dd, ?1, td.FDATEDELIVERY ) >= 0 " +
+            "AND datediff( dd, ?2, td.FDATEDELIVERY ) <= 0 " +
+            "AND td.HOGPENDID IN (select FID from TOrganizeCell where FNAME in ('海盐曙光',)) " +
+            "GROUP BY" +
+            "td.HOGPENDID," +
+            "tdie.csamount," +
+            "tlose.csamount")
+    List<Object[]> getPigletInfo(String startDate, String endDate);
+    /**
      * @Method      : getMateQuantity
      * @Description : 配种数量
      * @Params      : []
@@ -175,8 +265,7 @@ public interface TDeliveryRepo extends JpaRepository<TDeliveryEntity, String>, J
      * @Author      : ZhuoNing
      * @Date        : 2021/5/15       
      * @Time        : 15:47
-     *//*
-
+     */
     @Query(nativeQuery = true,value ="select TOrganizeCell.FSHORTNAME as 'farm', tmp_tblpzts.FBREEDD AS 'variety', sum(tmp_tblpzts.mate_times) as 'mate_quantity' from (select  " +
             "TBreeding.HogpendID,TNewStru8094.FBreedD,TNewStru8094.SowStrID,TNewStru8094.FParityInt,count(TNewStru8094.FID) as 'mate_times'  " +
             "from TBreeding left join TNewStru8094 on TNewStru8094.FBreedingMainStruID=TBreeding.FID  " +
@@ -184,10 +273,20 @@ public interface TDeliveryRepo extends JpaRepository<TDeliveryEntity, String>, J
             "group by TBreeding.HogpendID,TNewStru8094.FBreedD,TNewStru8094.SowStrID,TNewStru8094.FParityInt  " +
             ") tmp_tblpzts  left join TOrganizeCell on tmp_tblpzts.HogpendID=TOrganizeCell.FID " +
             "where TOrganizeCell.FNAME is not null group by TOrganizeCell.FSHORTNAME,tmp_tblpzts.FBREEDD")
+    List<Object[]> getMateQuantity_old(String startDate, String endDate);
+
+
+    @Query(nativeQuery = true,value ="select TOrganizeCell.FSHORTNAME as '猪场', tmp_tblpzts.FBREEDD AS '品种', sum(tmp_tblpzts.配种次数) as '配种头数' from (select " +
+            "TBreeding.HogpendID,TNewStru8094.FBreedD,TNewStru8094.SowStrID,TNewStru8094.FParityInt,count(TNewStru8094.FID) as '配种次数' " +
+            "from TBreeding left join TNewStru8094 on TNewStru8094.FBreedingMainStruID=TBreeding.FID " +
+            "where TBreeding.FLogStatee in(3,4,6)  and datediff(dd,?1, FDateBreed)>=0 and datediff(dd,?2,FDateBreed) <=0 " +
+            "group by TBreeding.HogpendID,TNewStru8094.FBreedD,TNewStru8094.SowStrID,TNewStru8094.FParityInt " +
+            ") tmp_tblpzts  left join TOrganizeCell on tmp_tblpzts.HogpendID=TOrganizeCell.FID" +
+            "where  TOrganizeCell.FNAME in('海盐曙光',)" +
+            "group by TOrganizeCell.FSHORTNAME,tmp_tblpzts.FBREEDD")
     List<Object[]> getMateQuantity(String startDate, String endDate);
 
-    */
-/**
+    /**
      * @Method      : getConceptionRate
      * @Description : 
      * @Params      : [startDate, endDate]
@@ -196,8 +295,7 @@ public interface TDeliveryRepo extends JpaRepository<TDeliveryEntity, String>, J
      * @Author      : ZhuoNing
      * @Date        : 2021/5/15       
      * @Time        : 16:15
-     *//*
-
+     */
     @Query(nativeQuery = true,value ="select  " +
             "TOrganizeCell.FshortName as 'farm', " +
             "CAST((tmp_tblpz.fmts+isnull(tmp_tblpzlc.lcts,0))*1.0/tmp_tblpz.pzts*100 as dec(8,2)) as 'conception_rate' " +
@@ -229,10 +327,44 @@ public interface TDeliveryRepo extends JpaRepository<TDeliveryEntity, String>, J
             ") tmp_tblfm on tmp_tblpz.SowStrID=tmp_tblfm.SowStrID and tmp_tblpz.FParityInt=tmp_tblfm.FParityInt  " +
             "group by tmp_tblpz.HogpendID) tmp_tblpzlc on tmp_tblpzlc.ZCID=tmp_tblpz.ZCID " +
             "left join TOrganizeCell on tmp_tblpz.ZCID=TOrganizeCell.FID")
+    List<Object[]> getConceptionRate_old(String startDate, String endDate);
+
+    @Query(nativeQuery = true,value =" select " +
+            " TOrganizeCell.FshortName as '猪场', " +
+            "  CAST((tmp_tblpz.fmts+isnull(tmp_tblpzlc.lcts,0))*1.0/tmp_tblpz.pzts*100 as dec(8,2)) as '受胎率'" +
+            "  from" +
+            "    (select tmp_tblpz.HogpendID as 'ZCID',sum(tmp_tblpz.配种次数) as 'PZTS', count(tmp_tblfm.SowStrID) as 'fmts'," +
+            "  CAST(count(tmp_tblfm.SowStrID)*1.0/(case sum(tmp_tblpz.配种次数) when 0 then null else sum(tmp_tblpz.配种次数) end)*100 as dec(8,2)) as 'PZFML' " +
+            "  from (select " +
+            " TBreeding.HogpendID,TNewStru8094.FBreedD,TNewStru8094.SowStrID,TNewStru8094.FParityInt,count(TNewStru8094.FID) as '配种次数' " +
+            " from TBreeding left join TNewStru8094 on TNewStru8094.FBreedingMainStruID=TBreeding.FID " +
+            "  where TBreeding.FLogStatee in(3,4,6)  and FDateBreed>=DATEADD(DAY,-121,?1) and FDateBreed<=DATEADD(DAY,-121,?2) " +
+            " group by TBreeding.HogpendID,TNewStru8094.FBreedD,TNewStru8094.SowStrID,TNewStru8094.FParityInt " +
+            " ) tmp_tblpz " +
+            " left join (select TNewStru7743.SowStrID,TNewStru7743.FParityInt from TNewStru7743 " +
+            "  left join TDelivery on TNewStru7743.FDeliveryMainStruID=TDelivery.FID " +
+            "  where TDelivery.FLogStatee in(3,4,6)  and TNewStru7743.FDateBreed>=DATEADD(DAY,-121,?1) and TNewStru7743.FDateBreed<=DATEADD(DAY,-121,?2)  " +
+            "  ) tmp_tblfm on tmp_tblpz.SowStrID=tmp_tblfm.SowStrID and tmp_tblpz.FParityInt=tmp_tblfm.FParityInt " +
+            "  group by tmp_tblpz.HogpendID) tmp_tblpz  " +
+            " left join (select tmp_tblpz.HogpendID as 'ZCID', sum(tmp_tblpz.配种次数) as 'PZTS', count(tmp_tblfm.SowStrID) as 'lcts'," +
+            " CAST(count(tmp_tblfm.SowStrID)*1.0/(case sum(tmp_tblpz.配种次数) when 0 then null else sum(tmp_tblpz.配种次数) end)*100 as dec(8,2)) as 'PZFML' " +
+            " from (select " +
+            "  TBreeding.HogpendID,TNewStru8094.FBreedD,TNewStru8094.SowStrID,TNewStru8094.FParityInt,count(TNewStru8094.FID) as '配种次数' " +
+            "  from TBreeding left join TNewStru8094 on TNewStru8094.FBreedingMainStruID=TBreeding.FID " +
+            " where TBreeding.FLogStatee in(3,4,6)  and FDateBreed>=DATEADD(DAY,-121,?1) and FDateBreed<=DATEADD(DAY,-121,?2) " +
+            "  group by TBreeding.HogpendID,TNewStru8094.FBreedD,TNewStru8094.SowStrID,TNewStru8094.FParityInt " +
+            "  ) tmp_tblpz " +
+            "  left join (select TAbortionNewStru.SowStrID,TAbortionNewStru.FParityInt from TAbortionNewStru " +
+            " left join TAbortion on TAbortionNewStru.FAbortionMainStruID=TAbortion.FID " +
+            " where TAbortion.FLogStatee in(3,4,6)  and TAbortionNewStru.FDateBreed>=DATEADD(DAY,-121,?1) and TAbortionNewStru.FDateBreed<=DATEADD(DAY,-121,?2)  " +
+            " ) tmp_tblfm on tmp_tblpz.SowStrID=tmp_tblfm.SowStrID and tmp_tblpz.FParityInt=tmp_tblfm.FParityInt " +
+            " group by tmp_tblpz.HogpendID) tmp_tblpzlc on tmp_tblpzlc.ZCID=tmp_tblpz.ZCID" +
+            " left join TOrganizeCell on tmp_tblpz.ZCID=TOrganizeCell.FID" +
+            " where TOrganizeCell.FNAME in('海盐曙光',)")
     List<Object[]> getConceptionRate(String startDate, String endDate);
 
-    */
-/**
+
+    /**
      * @Method      : getAllStorage
      * @Description : 总存栏,母猪存栏
      * @Params      : []
@@ -241,8 +373,7 @@ public interface TDeliveryRepo extends JpaRepository<TDeliveryEntity, String>, J
      * @Author      : ZhuoNing
      * @Date        : 2021/5/15       
      * @Time        : 16:22
-     *//*
-
+     */
     @Query(nativeQuery = true,value ="SELECT " +
             "H.FNAME AS 'farm', " +
             "mzcl AS 'sow_quantity', " +
@@ -312,359 +443,82 @@ public interface TDeliveryRepo extends JpaRepository<TDeliveryEntity, String>, J
             ") AS tbls_tmp ON tbls_tmp.NAME = H.fid  " +
             "ORDER BY " +
             "H.FNAME")
-    List<Object[]> getAllStorage();
-}*/
-package com.huimv.production.datasource.dao.repo;
-
-import com.huimv.production.datasource.dao.entity.TDeliveryEntity;
-import org.springframework.data.jpa.repository.JpaRepository;
-import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
-import org.springframework.data.jpa.repository.Query;
-
-import java.util.List;
-
-public interface TDeliveryRepo extends JpaRepository<TDeliveryEntity, String>, JpaSpecificationExecutor<TDeliveryEntity> {
-
-    /**
-     * @Method      : getPsy
-     * @Description : Psy
-     * @Params      : []
-     * @Return      : java.util.List<java.lang.Object[]>
-     *
-     * @Author      : ZhuoNing
-     * @Date        : 2021/5/15
-     * @Time        : 13:50
-     */
-    @Query(nativeQuery = true,value = "select CAST(PJWCHZ*chl*NLYWS AS DEC(8,2)) AS 'PSY' from (select avg(TNewStru7743.FamountLiveInt*1.0) as 'PJWCHZ' \n" +
-            "from TDelivery left join TNewStru7743 on TNewStru7743.FDeliveryMainStruID=TDelivery.FID \n" +
-            "where TDelivery.FLogStatee in(3,4,6) and TDelivery.FDateDelivery between ?1 and ?2)PJWCHZ,\n" +
-            "(SELECT case WHEN zczc = 0 THEN 0 ELSE 1-sw/zczc END  as 'chl' from ( select count(TBornNewStru.Fid) as 'zczc'\n" +
-            "           from TBorn left join TBornNewStru on TBornNewStru.FBornMainStruID = TBorn.FID \n" +
-            "           where TBorn.FLOGSTATEE in (3,4,6)\n" +
-            "     and TBorn.FDATEBORN between  ?1 and ?2)cs,(select sum(isnull(TPigDieChild.FweakpigdieCount,0))+sum(isnull(TPigDieChild.Fpigdiecount,0)) as sw \n" +
-            " from TPigDie left join TPigDieChild on TPigDieChild.FPigDieMainStruID=TPigDie.FID \n" +
-            " where TPigDie.FBillState in(3,4,6) and TPigDieChild.FPigSex in(1,2,3) and FPIGSTATE=15\n" +
-            " and (TPigDie.FDieDate BETWEEN  ?1 and ?2))sw )chl,(select  CAST(365*1.0/avg(tjj) as dec(7,4)) as 'NLYWS'   \n" +
-            " from \n" +
-            "  (SELECT\n" +
-            " case when isnull(TNewStru7743.FtyreDistance,0)!=0 then  TNewStru7743.FtyreDistance  end  as 'tjj' \n" +
-            " FROM TDelivery     \n" +
-            " LEFT JOIN TNewStru7743  on TNewStru7743.FDeliveryMainStruID = TDelivery.FID \n" +
-            "\n" +
-            "  WHERE  TDelivery.FlogStateE in(3,4,6) \n" +
-            "--And (TDelivery.HOGPENDID in(hogpen+)) \n" +
-            "And ( datediff(dd,?1,TDelivery.FDATEDELIVERY)>=0 ) \n" +
-            "And (datediff(dd,?2,TDelivery.FDATEDELIVERY)<=0 )  \n" +
-            ") tmp_tbl   \n" +
-            "    having avg(tjj)>0)ncws")
-    List<Object[]> getPsy(String startDate,String endDate);
-
-    /**
-     * @Method      : getReEstrusRate
-     * @Description : 返情率
-     * @Params      : []
-     * @Return      : java.util.List<java.lang.Object[]>
-     *
-     * @Author      : ZhuoNing
-     * @Date        : 2021/5/15
-     * @Time        : 13:50
-     */
-    @Query(nativeQuery = true,value =
-//            "declare ?1 datetime \n" +
-//                    "declare ?2 datetime \n" +
-//                    "set ?1='2021-02-01'\n" +
-//                    "set ?2='2021-03-09'\n" +
-//                    "\n" +
-                    "select TOrganizeCell.FSHORTNAME as '猪场', \n" +
-                    "CAST(count(tmp_tblfm.SowStrID)*1.0/(case sum(tmp_tblpz.配种次数) when 0 then null else sum(tmp_tblpz.配种次数) end) as dec(8,5)) as '配种返情率' \n" +
-                    "from (select \n" +
-                    "TBreeding.HogpendID,TNewStru8094.FBreedD,TNewStru8094.SowStrID,TNewStru8094.FParityInt,count(TNewStru8094.FID) as '配种次数' \n" +
-                    "from TBreeding left join TNewStru8094 on TNewStru8094.FBreedingMainStruID=TBreeding.FID \n" +
-                    "where TBreeding.FLogStatee in(3,4,6)   and datediff(dd,?1, FDateBreed)>=-121 and datediff(dd,?2,FDateBreed) <=-121\n" +
-                    "--and (TBreeding.hogpenDID in(?)) \n" +
-                    "group by TBreeding.HogpendID,TNewStru8094.FBreedD,TNewStru8094.SowStrID,TNewStru8094.FParityInt \n" +
-                    ") tmp_tblpz \n" +
-                    "left join (select TReturnEstrusewStru.SowStrID,TReturnEstrusewStru.FParityInt from TReturnEstrusewStru \n" +
-                    "left join TReturnEstrus on TReturnEstrusewStru.FReturnEstrusMainStruID=TReturnEstrus.FID \n" +
-                    "where TReturnEstrus.FLogStatee in(3,4,6)  and datediff(dd,?1, TReturnEstrusewStru.FDateBreed)>=-121 and datediff(dd,?2,TReturnEstrusewStru.FDateBreed) <=-121\n" +
-                    "--and (TReturnEstrus.hogpenDID in(?) ) \n" +
-                    ") tmp_tblfm on tmp_tblpz.SowStrID=tmp_tblfm.SowStrID and tmp_tblpz.FParityInt=tmp_tblfm.FParityInt \n" +
-                    "\n" +
-                    "left join TOrganizeCell on tmp_tblpz.HogpendID=TOrganizeCell.FID\n" +
-                    "where TOrganizeCell.FNAME in('海盐曙光')\n" +
-                    "group by TOrganizeCell.FSHORTNAME")
-    List<Object[]> getReEstrusRate(String startDate,String endDate);
-
-    /**
-     * @Method      : getParturitionRate
-     * @Description : 分娩率
-     * @Params      : [startDate, endDate]
-     * @Return      : java.util.List<java.lang.Object[]>
-     *
-     * @Author      : ZhuoNing
-     * @Date        : 2021/5/15
-     * @Time        : 14:43
-     */
-    @Query(nativeQuery = true,value =
-//            "declare ?1 datetime \n" +
-//                    "declare ?2 datetime \n" +
-//                    "set ?1='2021-02-01'\n" +
-//                    "set ?2='2021-03-09'\n" +
-//                    "\n" +
-                    "select TOrganizeCell.FSHORTNAME as '猪场', \n" +
-                    "CAST(count(tmp_tblfm.SowStrID)*1.0/(case sum(tmp_tblpz.配种次数) when 0 then null else sum(tmp_tblpz.配种次数) end) as dec(8,5)) as '配种分娩率' \n" +
-                    "from (select \n" +
-                    "TBreeding.HogpendID,TNewStru8094.FBreedD,TNewStru8094.SowStrID,TNewStru8094.FParityInt,count(TNewStru8094.FID) as '配种次数' \n" +
-                    "from TBreeding left join TNewStru8094 on TNewStru8094.FBreedingMainStruID=TBreeding.FID \n" +
-                    "where TBreeding.FLogStatee in(3,4,6) and datediff(dd,?1, FDateBreed)>=-121 and datediff(dd,?2,FDateBreed) <=-121\n" +
-                    "--and (TBreeding.hogpenDID in(?)) \n" +
-                    "group by TBreeding.HogpendID,TNewStru8094.FBreedD,TNewStru8094.SowStrID,TNewStru8094.FParityInt \n" +
-                    ") tmp_tblpz \n" +
-                    "left join (select TNewStru7743.SowStrID,TNewStru7743.FParityInt from TNewStru7743 \n" +
-                    "left join TDelivery on TNewStru7743.FDeliveryMainStruID=TDelivery.FID \n" +
-                    "where TDelivery.FLogStatee in(3,4,6)  and datediff(dd,?1, TNewStru7743.FDateBreed )>=-121\n" +
-                    " and datediff(dd,?2,TNewStru7743.FDateBreed ) <=-121 -- and (TDelivery.hogpenDID in(?) ) \n" +
-                    ") tmp_tblfm on tmp_tblpz.SowStrID=tmp_tblfm.SowStrID and tmp_tblpz.FParityInt=tmp_tblfm.FParityInt \n" +
-                    "left join TOrganizeCell on tmp_tblpz.HogpendID=TOrganizeCell.FID\n" +
-                    "where TOrganizeCell.FNAME in('海盐曙光')\n" +
-                    "\n" +
-                    "group by TOrganizeCell.FSHORTNAME")
-    List<Object[]> getParturitionRate(String startDate, String endDate);
-
-    /**
-     * @Method      : getStorage
-     * @Description : 各种存栏
-     * @Params      : []
-     * @Return      : java.util.List<java.lang.Object[]>
-     *
-     * @Author      : ZhuoNing
-     * @Date        : 2021/5/15
-     * @Time        : 14:57
-     */
-    @Query(nativeQuery = true,value ="SELECT oc.FSHORTNAME,tb.FNAME,COUNT(tp.FID) FROM (select TOrganizeCell.FID,TOrganizeCell.FSHORTNAME from  TOrganizeCell where FNAME in ('海盐曙光')) oc left\n" +
-            "JOIN TPigArchives tp ON tp.HOGPENWHEREDID = oc.FID \n" +
-            "left JOIN TBreed tb ON tb.FID = tp.VARIETYDID GROUP BY oc.FSHORTNAME,tb.FNAME")
-    List<Object[]> getStorage();
-
-    /**
-     * @Method      : getPigletInfo
-     * @Description : 均产仔数,仔猪存活率
-     * @Params      : [startDate, endDate]
-     * @Return      : java.util.List<java.lang.Object[]>
-     *
-     * @Author      : ZhuoNing
-     * @Date        : 2021/5/15
-     * @Time        : 15:17
-     */
-    @Query(nativeQuery = true,value ="SELECT \n" +
-            "( SELECT FSHORTNAME FROM dbo.TOrganizeCell WHERE FID = td.HOGPENDID ) AS '猪场',\n" +
-            "COUNT ( tn.SOWSTRID ) AS '分娩头数',\n" +
-            "SUM ( tn.FAMOUNTKITTENINT ) AS '产仔总数',\n" +
-            "ISNULL(tdie.csamount,0)+ISNULL(tlose.csamount,0) AS '仔猪死淘数'\n" +
-            "\n" +
-            "FROM\n" +
-            "dbo.TDelivery td\n" +
-            "LEFT JOIN dbo.TNewStru7743 tn ON tn.FDeliveryMainStruID = td.FID \n" +
-            "LEFT JOIN (SELECT isnull(sum(isnull(FPIGDIECOUNT,0)+isnull(FWEAKPIGDIECOUNT,0)),0) as csamount,PIGHOUSEID FROM TPigdieChild,TPigdie WHERE\n" +
-            "FPigdieMainStruID = TPigdie.FID \n" +
-            "AND FDIEDATE BETWEEN ?1 \n" +
-            "AND ?2\n" +
-            "and FPIGSEX = 3 AND FPIGSTATE = 15\n" +
-            "GROUP BY\n" +
-            "PIGHOUSEID ) tdie on tdie.PIGHOUSEID = td.HOGPENDID\n" +
-            "\n" +
-            "\n" +
-            "LEFT JOIN (SELECT isnull(ISNULL(sum(TPigLoseChild.FpigLoseCount),0)+ISNULL(sum(TPigLoseChild.FweakPigLoseCount),0),0) as csamount,PIGHOUSEID FROM TPigLoseChild,\n" +
-            "TPigLose \n" +
-            "WHERE\n" +
-            "FPigLoseMainStruID = TPigLose.FID \n" +
-            "AND FPIGLOSEDATE BETWEEN ?1 \n" +
-            "AND ?2 \n" +
-            "\n" +
-            "AND FSEX = 3 \n" +
-            "AND FPIGSTATE = 15\n" +
-            "GROUP BY\n" +
-            "PIGHOUSEID ) tlose on tlose.PIGHOUSEID = td.HOGPENDID\n" +
-            "WHERE\n" +
-            "td.FLOGSTATEE IN ( 3, 4, 6 ) \n" +
-            "AND datediff( dd, ?1, td.FDATEDELIVERY ) >= 0 \n" +
-            "AND datediff( dd, ?2, td.FDATEDELIVERY ) <= 0 \n" +
-            "AND td.HOGPENDID IN (select FID from TOrganizeCell where FNAME in ('海盐曙光')) \n" +
-            "GROUP BY\n" +
-            "td.HOGPENDID,\n" +
-            "tdie.csamount,\n" +
-            "tlose.csamount")
-    List<Object[]> getPigletInfo(String startDate, String endDate);
-
-    /**
-     * @Method      : getMateQuantity
-     * @Description : 配种数量
-     * @Params      : []
-     * @Return      : java.util.List<java.lang.Object[]>
-     *
-     * @Author      : ZhuoNing
-     * @Date        : 2021/5/15
-     * @Time        : 15:47
-     */
-    @Query(nativeQuery = true,value =
-//            "declare ?2 datetime \n" +
-//            "set ?1='2021-03-01'\n" +
-//            "set ?2='2021-03-04'\n" +
-//            "\n" +
-            "select TOrganizeCell.FSHORTNAME as '猪场', tmp_tblpzts.FBREEDD AS '品种', sum(tmp_tblpzts.配种次数) as '配种头数' from (select \n" +
-            "TBreeding.HogpendID,TNewStru8094.FBreedD,TNewStru8094.SowStrID,TNewStru8094.FParityInt,count(TNewStru8094.FID) as '配种次数' \n" +
-            "from TBreeding left join TNewStru8094 on TNewStru8094.FBreedingMainStruID=TBreeding.FID \n" +
-            "where TBreeding.FLogStatee in(3,4,6)  and datediff(dd,?1, FDateBreed)>=0 and datediff(dd,?2,FDateBreed) <=0 \n" +
-            "group by TBreeding.HogpendID,TNewStru8094.FBreedD,TNewStru8094.SowStrID,TNewStru8094.FParityInt \n" +
-            ") tmp_tblpzts  left join TOrganizeCell on tmp_tblpzts.HogpendID=TOrganizeCell.FID\n" +
-            "where  TOrganizeCell.FNAME in('海盐曙光')\n" +
-            "group by TOrganizeCell.FSHORTNAME,tmp_tblpzts.FBREEDD")
-    List<Object[]> getMateQuantity(String startDate, String endDate);
+    List<Object[]> getAllStorage_old();
 
-    /**
-     * @Method      : getConceptionRate
-     * @Description :受胎率
-     * @Params      : [startDate, endDate]
-     * @Return      : java.util.List<java.lang.Object[]>
-     *
-     * @Author      : ZhuoNing
-     * @Date        : 2021/5/15
-     * @Time        : 16:15
-     */
-    @Query(nativeQuery = true,value =
-//            " declare ?2 datetime \n" +
-//            "         SET ?1='2021-02-01'\n" +
-//            "      \n" +
-//            "  set ?2='2021-03-09'\n" +
-            "  select \n" +
-            " TOrganizeCell.FshortName as '猪场', \n" +
-            "  CAST((tmp_tblpz.fmts+isnull(tmp_tblpzlc.lcts,0))*1.0/tmp_tblpz.pzts*100 as dec(8,2)) as '受胎率'\n" +
-            "  from\n" +
-            "  --配种分娩率\n" +
-            "    (select tmp_tblpz.HogpendID as 'ZCID',sum(tmp_tblpz.配种次数) as 'PZTS', count(tmp_tblfm.SowStrID) as 'fmts',\n" +
-            "  CAST(count(tmp_tblfm.SowStrID)*1.0/(case sum(tmp_tblpz.配种次数) when 0 then null else sum(tmp_tblpz.配种次数) end)*100 as dec(8,2)) as 'PZFML' \n" +
-            "  from (select \n" +
-            " TBreeding.HogpendID,TNewStru8094.FBreedD,TNewStru8094.SowStrID,TNewStru8094.FParityInt,count(TNewStru8094.FID) as '配种次数' \n" +
-            " from TBreeding left join TNewStru8094 on TNewStru8094.FBreedingMainStruID=TBreeding.FID \n" +
-            "  where TBreeding.FLogStatee in(3,4,6)  and FDateBreed>=DATEADD(DAY,-121,?1) and FDateBreed<=DATEADD(DAY,-121,?2) \n" +
-            " --and (TBreeding.hogpenDID  in('\"+hogpen+\"')) \n" +
-            " group by TBreeding.HogpendID,TNewStru8094.FBreedD,TNewStru8094.SowStrID,TNewStru8094.FParityInt \n" +
-            " ) tmp_tblpz \n" +
-            " left join (select TNewStru7743.SowStrID,TNewStru7743.FParityInt from TNewStru7743 \n" +
-            "  left join TDelivery on TNewStru7743.FDeliveryMainStruID=TDelivery.FID \n" +
-            "  where TDelivery.FLogStatee in(3,4,6)  and TNewStru7743.FDateBreed>=DATEADD(DAY,-121,?1) and TNewStru7743.FDateBreed<=DATEADD(DAY,-121,?2)  \n" +
-            "  --and (TDelivery.hogpenDID  in('\"+hogpen+\"') ) \n" +
-            "  ) tmp_tblfm on tmp_tblpz.SowStrID=tmp_tblfm.SowStrID and tmp_tblpz.FParityInt=tmp_tblfm.FParityInt \n" +
-            "  group by tmp_tblpz.HogpendID) tmp_tblpz  \n" +
-            "   --配种流产率\n" +
-            " left join (select tmp_tblpz.HogpendID as 'ZCID', sum(tmp_tblpz.配种次数) as 'PZTS', count(tmp_tblfm.SowStrID) as 'lcts',\n" +
-            " CAST(count(tmp_tblfm.SowStrID)*1.0/(case sum(tmp_tblpz.配种次数) when 0 then null else sum(tmp_tblpz.配种次数) end)*100 as dec(8,2)) as 'PZFML' \n" +
-            " from (select \n" +
-            "  TBreeding.HogpendID,TNewStru8094.FBreedD,TNewStru8094.SowStrID,TNewStru8094.FParityInt,count(TNewStru8094.FID) as '配种次数' \n" +
-            "  from TBreeding left join TNewStru8094 on TNewStru8094.FBreedingMainStruID=TBreeding.FID \n" +
-            " where TBreeding.FLogStatee in(3,4,6)  and FDateBreed>=DATEADD(DAY,-121,?1) and FDateBreed<=DATEADD(DAY,-121,?2) \n" +
-            "  --and (TBreeding.hogpenDID  in('\"+hogpen+\"')) \n" +
-            "  group by TBreeding.HogpendID,TNewStru8094.FBreedD,TNewStru8094.SowStrID,TNewStru8094.FParityInt \n" +
-            "  ) tmp_tblpz \n" +
-            "  left join (select TAbortionNewStru.SowStrID,TAbortionNewStru.FParityInt from TAbortionNewStru \n" +
-            " left join TAbortion on TAbortionNewStru.FAbortionMainStruID=TAbortion.FID \n" +
-            " where TAbortion.FLogStatee in(3,4,6)  and TAbortionNewStru.FDateBreed>=DATEADD(DAY,-121,?1) and TAbortionNewStru.FDateBreed<=DATEADD(DAY,-121,?2)  \n" +
-            "  --and (TAbortion.hogpenDID  in('\"+hogpen+\"') ) \n" +
-            " ) tmp_tblfm on tmp_tblpz.SowStrID=tmp_tblfm.SowStrID and tmp_tblpz.FParityInt=tmp_tblfm.FParityInt \n" +
-            " group by tmp_tblpz.HogpendID) tmp_tblpzlc on tmp_tblpzlc.ZCID=tmp_tblpz.ZCID\n" +
-            " \n" +
-            " left join TOrganizeCell on tmp_tblpz.ZCID=TOrganizeCell.FID\n" +
-            " where TOrganizeCell.FNAME in('海盐曙光')")
-    List<Object[]> getConceptionRate(String startDate, String endDate);
-
-    /**
-     * @Method      : getAllStorage
-     * @Description : 总存栏,母猪存栏
-     * @Params      : []
-     * @Return      : java.util.List<java.lang.Object[]>
-     *
-     * @Author      : ZhuoNing
-     * @Date        : 2021/5/15
-     * @Time        : 16:22
-     */
-    @Query(nativeQuery = true,value ="SELECT\n" +
-            "H.FNAME AS '猪场',\n" +
-            "mzcl AS '母猪存栏',\n" +
-            "gz + mzcl + jc + shbamount AS '总存栏' \n" +
-            "FROM\n" +
-            "(\n" +
-            "SELECT\n" +
-            "TOrganizeCell.FID,\n" +
-            "TOrganizeCell.FName \n" +
-            "FROM\n" +
-            "TOrganizeCell \n" +
-            "GROUP BY\n" +
-            "TOrganizeCell.FName,\n" +
-            "TOrganizeCell.FID \n" +
-            ") H\n" +
-            "RIGHT JOIN (\n" +
-            "SELECT\n" +
-            "tblz_tmp.FNAME AS NAME,\n" +
-            "isnull( SUM( tblz_tmp.gz ), 0 ) AS 'gz',\n" +
-            "isnull( sum( tblz_tmp.mzcl ), 0 ) AS 'mzcl',\n" +
-            "isnull( SUM( tblz_tmp.jc ), 0 ) AS 'jc',\n" +
-            "isnull( SUM( tblz_tmp.shbamount ), 0 ) AS 'shbamount' \n" +
-            "FROM\n" +
-            "(\n" +
-            "SELECT\n" +
-            "TPigArchives.HOGPENWHEREDID 'FNAME',\n" +
-            "CASE\n" +
-            "\n" +
-            "WHEN TPigArchives.FPIGSTATEE IN ( 2, 11 ) \n" +
-            "AND TPigArchives.FPigClassEnum = 1 THEN\n" +
-            "COUNT( TPigArchives.FID ) \n" +
-            "END AS 'gz',\n" +
-            "CASE\n" +
-            "\n" +
-            "WHEN TPigArchives.FPigStatee IN ( 3, 4, 5, 6, 7, 10, 11, 12, 13 ) \n" +
-            "AND TPigArchives.FPigClassEnum = 2 THEN\n" +
-            "COUNT( TPigArchives.FID ) \n" +
-            "END AS 'mzcl',\n" +
-            "0 AS 'jc',\n" +
-            "0 AS 'shbamount' \n" +
-            "FROM\n" +
-            "TPigArchives \n" +
-            "WHERE\n" +
-            "TPigArchives.FPigStatee IN ( 2, 3, 4, 5, 6, 7, 10, 11, 12, 13 ) \n" +
-            "GROUP BY\n" +
-            "TPigArchives.HOGPENWHEREDID,\n" +
-            "TPigArchives.FPIGSTATEE,\n" +
-            "TPigArchives.FPigClassEnum UNION ALL\n" +
-            "SELECT\n" +
-            "TPigArchives.HOGPENWHEREDID 'FNAME',\n" +
-            "0 AS 'gz',\n" +
-            "0 AS 'mzcl',\n" +
-            "CASE\n" +
-            "\n" +
-            "WHEN TPigArchives.FPigStatee IN ( 15, 14, 1, 21, 22, 16 ) THEN\n" +
-            "isnull( SUM( TPigArchivesChild.FpigAmountOfPigsty ), 0 ) \n" +
-            "END AS 'jc',\n" +
-            "CASE\n" +
-            "\n" +
-            "WHEN TPigArchives.FPigStatee = 11 \n" +
-            "AND TPigArchives.FPigClassEnum = 3 THEN\n" +
-            "isnull( SUM( TPigArchivesChild.FpigAmountOfPigsty ), 0 ) \n" +
-            "END AS 'shbamount' \n" +
-            "FROM\n" +
-            "TPigArchives\n" +
-            "LEFT JOIN TPigArchivesChild ON TPigArchivesChild.FPigArchivesMainStruID = TPigArchives.FID \n" +
-            "WHERE\n" +
-            "TPigArchives.FPigClassEnum IN ( 1, 2, 3 ) \n" +
-            "AND TPigArchives.FBATCHSTATE = 0 \n" +
-            "GROUP BY\n" +
-            "TPigArchives.HOGPENWHEREDID,\n" +
-            "TPigArchives.FPIGSTATEE,\n" +
-            "TPigArchives.FPigClassEnum \n" +
-            ") tblz_tmp \n" +
-            "GROUP BY\n" +
-            "tblz_tmp.FNAME \n" +
-            ") AS tbls_tmp ON tbls_tmp.NAME = H.fid where H.FNAME in('海盐曙光')\n" +
-            "ORDER BY\n" +
+    @Query(nativeQuery = true,value ="SELECT" +
+            "H.FNAME AS '猪场'," +
+            "mzcl AS '母猪存栏'," +
+            "gz + mzcl + jc + shbamount AS '总存栏' " +
+            "FROM" +
+            "(" +
+            "SELECT" +
+            "TOrganizeCell.FID," +
+            "TOrganizeCell.FName " +
+            "FROM" +
+            "TOrganizeCell " +
+            "GROUP BY" +
+            "TOrganizeCell.FName," +
+            "TOrganizeCell.FID " +
+            ") H" +
+            "RIGHT JOIN (" +
+            "SELECT" +
+            "tblz_tmp.FNAME AS NAME," +
+            "isnull( SUM( tblz_tmp.gz ), 0 ) AS 'gz'," +
+            "isnull( sum( tblz_tmp.mzcl ), 0 ) AS 'mzcl'," +
+            "isnull( SUM( tblz_tmp.jc ), 0 ) AS 'jc'," +
+            "isnull( SUM( tblz_tmp.shbamount ), 0 ) AS 'shbamount' " +
+            "FROM" +
+            "(" +
+            "SELECT" +
+            "TPigArchives.HOGPENWHEREDID 'FNAME'," +
+            "CASE" +
+            "WHEN TPigArchives.FPIGSTATEE IN ( 2, 11 ) " +
+            "AND TPigArchives.FPigClassEnum = 1 THEN" +
+            "COUNT( TPigArchives.FID ) " +
+            "END AS 'gz'," +
+            "CASE" +
+            "WHEN TPigArchives.FPigStatee IN ( 3, 4, 5, 6, 7, 10, 11, 12, 13 ) " +
+            "AND TPigArchives.FPigClassEnum = 2 THEN" +
+            "COUNT( TPigArchives.FID ) " +
+            "END AS 'mzcl'," +
+            "0 AS 'jc'," +
+            "0 AS 'shbamount' " +
+            "FROM" +
+            "TPigArchives " +
+            "WHERE" +
+            "TPigArchives.FPigStatee IN ( 2, 3, 4, 5, 6, 7, 10, 11, 12, 13 ) " +
+            "GROUP BY" +
+            "TPigArchives.HOGPENWHEREDID," +
+            "TPigArchives.FPIGSTATEE," +
+            "TPigArchives.FPigClassEnum UNION ALL" +
+            "SELECT" +
+            "TPigArchives.HOGPENWHEREDID 'FNAME'," +
+            "0 AS 'gz'," +
+            "0 AS 'mzcl'," +
+            "CASE" +
+            "WHEN TPigArchives.FPigStatee IN ( 15, 14, 1, 21, 22, 16 ) THEN" +
+            "isnull( SUM( TPigArchivesChild.FpigAmountOfPigsty ), 0 ) " +
+            "END AS 'jc'," +
+            "CASE" +
+            "WHEN TPigArchives.FPigStatee = 11 " +
+            "AND TPigArchives.FPigClassEnum = 3 THEN" +
+            "isnull( SUM( TPigArchivesChild.FpigAmountOfPigsty ), 0 ) " +
+            "END AS 'shbamount' " +
+            "FROM" +
+            "TPigArchives" +
+            "LEFT JOIN TPigArchivesChild ON TPigArchivesChild.FPigArchivesMainStruID = TPigArchives.FID " +
+            "WHERE" +
+            "TPigArchives.FPigClassEnum IN ( 1, 2, 3 ) " +
+            "AND TPigArchives.FBATCHSTATE = 0 " +
+            "GROUP BY" +
+            "TPigArchives.HOGPENWHEREDID," +
+            "TPigArchives.FPIGSTATEE," +
+            "TPigArchives.FPigClassEnum " +
+            ") tblz_tmp " +
+            "GROUP BY" +
+            "tblz_tmp.FNAME " +
+            ") AS tbls_tmp ON tbls_tmp.NAME = H.fid where H.FNAME in('海盐曙光',)" +
+            "ORDER BY" +
             "H.FNAME")
     List<Object[]> getAllStorage();
 }