Przeglądaj źródła

地图查询排序重置

liao-sea 9 miesięcy temu
rodzic
commit
ab1fcae27c

+ 2 - 22
src/main/resources/mapping/cquery/CompanyCQuery.xml

@@ -138,17 +138,7 @@
             distance <![CDATA[ <= ]]> #{maxDistance}
         </if>
         ORDER BY
-        CASE
-            WHEN Longitude LIKE '114%' THEN
-            0 ELSE 1
-        END,
-        Longitude DESC,
-        CASE
-            WHEN Latitude LIKE '23%' THEN
-            0 ELSE 1
-        END,
-        Latitude DESC,
-        distance DESC
+        Longitude DESC, Latitude DESC, distance DESC
     </select>
 
     <select id="getDataMapListByPostName" resultType="com.hz.employmentsite.vo.dataMap.CompanyPostMapVo">
@@ -216,16 +206,6 @@
             distance <![CDATA[ <= ]]> #{maxDistance}
         </if>
         ORDER BY
-        CASE
-            WHEN Longitude LIKE '114%' THEN
-            0 ELSE 1
-        END,
-        Longitude DESC,
-        CASE
-            WHEN Latitude LIKE '23%' THEN
-            0 ELSE 1
-        END,
-        Latitude DESC,
-        CompanyID
+        Longitude DESC, Latitude DESC, distance DESC, CompanyID
     </select>
 </mapper>

+ 71 - 76
src/main/resources/mapping/cquery/JobUserCQuery.xml

@@ -47,15 +47,15 @@
         left join pc_institution institution on inSites.institutionID = institution.InstitutionID
         left join sys_user modifyUser on jobuser.ModifyUserID = modifyUser.UserID
         left join (
-            SELECT
-                job_user.JobUserID,
-                COUNT(mgt.JobHuntID) AS RecommendedCount
-            FROM
-                pc_jobuser job_user
-                LEFT JOIN pc_jobhunt hunt ON job_user.JobUserID = hunt.JobUserID
-                LEFT JOIN pc_recommend_mgt mgt ON hunt.JobHuntID = mgt.JobHuntID
-            GROUP BY
-                job_user.JobUserID
+        SELECT
+        job_user.JobUserID,
+        COUNT(mgt.JobHuntID) AS RecommendedCount
+        FROM
+        pc_jobuser job_user
+        LEFT JOIN pc_jobhunt hunt ON job_user.JobUserID = hunt.JobUserID
+        LEFT JOIN pc_recommend_mgt mgt ON hunt.JobHuntID = mgt.JobHuntID
+        GROUP BY
+        job_user.JobUserID
         ) recommendCountData on recommendCountData.JobUserID = jobuser.JobUserID
         left join (select JobUserID, count(1) as jobHuntCount from pc_jobhunt jobhunt group by JobUserID) jobhuntCountData on jobhuntCountData.JobUserID = jobuser.JobUserID
         where 1=1
@@ -115,61 +115,61 @@
 
     <select id="getDataMapList" resultType="com.hz.employmentsite.vo.dataMap.JobUserMapVo">
         SELECT
-            jobuser.JobuserID,
-            jobuser.`Name`,
-            keytype.`Name` AS keyTypeName,
-            TIMESTAMPDIFF(
-                YEAR,
-                    jobuser.BirthDay,
-                    CURRENT_DATE ()) AS age,
-            jobuser.Longitude,
-            jobuser.Latitude,
-            site.SiteName,
-            recommendCountData.RecommendedCount,
-            mgtEntryState.EntryState,
-            (
-                SELECT
-                    JSON_ARRAYAGG( JSON_OBJECT( 'labelID', labelTemp.LabelID, 'labelName', labelTemp.LabelName ) )
-                FROM
-                    (
-                        SELECT
-                            label.LabelID,
-                            label.LabelName
-                        FROM
-                            pc_label_jobuser label_jobuser
-                                LEFT JOIN pc_label label ON label_jobuser.LabelID = label.LabelID
-                        WHERE
-                            label_jobuser.JobuserID = jobuser.JobuserID
-                    ) AS labelTemp
-            ) AS labelList
+        jobuser.JobuserID,
+        jobuser.`Name`,
+        keytype.`Name` AS keyTypeName,
+        TIMESTAMPDIFF(
+        YEAR,
+        jobuser.BirthDay,
+        CURRENT_DATE ()) AS age,
+        jobuser.Longitude,
+        jobuser.Latitude,
+        site.SiteName,
+        recommendCountData.RecommendedCount,
+        mgtEntryState.EntryState,
+        (
+        SELECT
+        JSON_ARRAYAGG( JSON_OBJECT( 'labelID', labelTemp.LabelID, 'labelName', labelTemp.LabelName ) )
+        FROM
+        (
+        SELECT
+        label.LabelID,
+        label.LabelName
         FROM
-            pc_jobuser jobuser
-            LEFT JOIN sys_dictionary_item keytype ON jobuser.KeyPersonTypeID = keytype.`Value`
-            AND keytype.DictionaryCode = 'KeyPersonType'
-            LEFT JOIN pc_site site ON jobuser.SiteID = site.SiteID
-            LEFT JOIN (
-                SELECT
-                    job_user.JobUserID,
-                    COUNT( mgt.JobHuntID ) AS RecommendedCount
-                FROM
-                    pc_jobuser job_user
-                LEFT JOIN pc_jobhunt hunt ON job_user.JobUserID = hunt.JobUserID
-                LEFT JOIN pc_recommend_mgt mgt ON hunt.JobHuntID = mgt.JobHuntID
-                GROUP BY
-                    job_user.JobUserID
-            ) recommendCountData ON recommendCountData.JobUserID = jobuser.JobUserID
-            LEFT JOIN (
-                SELECT
-                    job_user.JobUserID,
-                    MAX(mgt.EntryState) AS EntryState
-                FROM
-                    pc_jobuser job_user
-                LEFT JOIN pc_jobhunt hunt ON job_user.JobUserID = hunt.JobUserID
-                LEFT JOIN pc_recommend_mgt mgt ON hunt.JobHuntID = mgt.JobHuntID
-                AND mgt.EntryState = 1
-                GROUP BY
-                    job_user.JobUserID
-            ) mgtEntryState ON mgtEntryState.JobUserID = jobuser.JobUserID
+        pc_label_jobuser label_jobuser
+        LEFT JOIN pc_label label ON label_jobuser.LabelID = label.LabelID
+        WHERE
+        label_jobuser.JobuserID = jobuser.JobuserID
+        ) AS labelTemp
+        ) AS labelList
+        FROM
+        pc_jobuser jobuser
+        LEFT JOIN sys_dictionary_item keytype ON jobuser.KeyPersonTypeID = keytype.`Value`
+        AND keytype.DictionaryCode = 'KeyPersonType'
+        LEFT JOIN pc_site site ON jobuser.SiteID = site.SiteID
+        LEFT JOIN (
+        SELECT
+        job_user.JobUserID,
+        COUNT( mgt.JobHuntID ) AS RecommendedCount
+        FROM
+        pc_jobuser job_user
+        LEFT JOIN pc_jobhunt hunt ON job_user.JobUserID = hunt.JobUserID
+        LEFT JOIN pc_recommend_mgt mgt ON hunt.JobHuntID = mgt.JobHuntID
+        GROUP BY
+        job_user.JobUserID
+        ) recommendCountData ON recommendCountData.JobUserID = jobuser.JobUserID
+        LEFT JOIN (
+        SELECT
+        job_user.JobUserID,
+        MAX(mgt.EntryState) AS EntryState
+        FROM
+        pc_jobuser job_user
+        LEFT JOIN pc_jobhunt hunt ON job_user.JobUserID = hunt.JobUserID
+        LEFT JOIN pc_recommend_mgt mgt ON hunt.JobHuntID = mgt.JobHuntID
+        AND mgt.EntryState = 1
+        GROUP BY
+        job_user.JobUserID
+        ) mgtEntryState ON mgtEntryState.JobUserID = jobuser.JobUserID
         WHERE 1=1
         <if test="keyTypeValue != null">
             and keytype.`Value` = #{keyTypeValue}
@@ -179,9 +179,13 @@
         </if>
         <if test="labelID != '' and labelID != null">
             AND jobuser.JobuserID IN (
-                SELECT label_jobuser.JobuserID
-                FROM pc_label_jobuser label_jobuser
-                WHERE label_jobuser.LabelID = #{labelID}
+            SELECT label_jobuser.JobuserID
+            FROM pc_label_jobuser label_jobuser
+            WHERE label_jobuser.LabelID IN (
+            SELECT label.LabelID
+            FROM pc_label label
+            WHERE label.LabelID = #{labelID}
+            )
             )
         </if>
         <if test="minAge != null and maxAge == null">
@@ -211,16 +215,7 @@
             CURRENT_DATE ()) <![CDATA[ <= ]]> #{maxAge}
         </if>
         ORDER BY
-        CASE
-            WHEN Longitude LIKE '114%' THEN
-            0 ELSE 1
-        END,
-        Longitude DESC,
-        CASE
-            WHEN Latitude LIKE '23%' THEN
-            0 ELSE 1
-        END,
-        Latitude DESC
+        Longitude DESC, Latitude DESC
     </select>
     <select id="getJobUserDataList" resultType="com.hz.employmentsite.vo.jobUserManager.JobUserVo">
         select  jobUserID,name,userMobile  from pc_jobuser jobuser

+ 44 - 54
src/main/resources/mapping/cquery/SiteInfoCQuery.xml

@@ -13,17 +13,17 @@
         left join area_code street on site.StreetCode = street.code
         left join sys_user ModifyUser on site.ModifyUserID = ModifyUser.UserID
         LEFT JOIN (
-            SELECT
-                siteTemp.siteID,
-                GROUP_CONCAT( SiteUserName SEPARATOR ',' ) AS siteUsers
-            FROM
-                pc_site_user siteUser
-            LEFT JOIN sys_user sysUser ON siteUser.UserID = sysUser.UserID
-            LEFT JOIN pc_site siteTemp ON siteTemp.SiteID = siteUser.SiteID
-            WHERE
-                sysUser.RecordStatus = 1
-            GROUP BY
-                siteTemp.SiteID
+        SELECT
+        siteTemp.siteID,
+        GROUP_CONCAT( SiteUserName SEPARATOR ',' ) AS siteUsers
+        FROM
+        pc_site_user siteUser
+        LEFT JOIN sys_user sysUser ON siteUser.UserID = sysUser.UserID
+        LEFT JOIN pc_site siteTemp ON siteTemp.SiteID = siteUser.SiteID
+        WHERE
+        sysUser.RecordStatus = 1
+        GROUP BY
+        siteTemp.SiteID
         ) siteUserStr ON siteUserStr.SiteID = site.SiteID
         where 1=1
         <if test="siteIDList!='' and siteIDList!=null">
@@ -44,7 +44,7 @@
         <if test="streetCode!='' and streetCode!=null">
             and streetCode like Concat('%',#{streetCode},'%')
         </if>
-            order by site.CreateTime desc
+        order by site.CreateTime desc
     </select>
 
     <select id="getListByInstitutionID" resultType="com.hz.employmentsite.vo.baseSettings.SiteInfoVo">
@@ -57,42 +57,42 @@
 
     <select id="findSiteDataCount" resultType="Map">
         SELECT
-            (SELECT COUNT(1) FROM pc_company WHERE SiteID = #{siteID}) AS companyCount,
-            (SELECT COUNT(1) FROM pc_post post LEFT JOIN pc_company company ON post.CompanyID = company.CompanyID WHERE SiteID = #{siteID}) AS postCount,
-            (SELECT COUNT(1) FROM pc_jobuser WHERE SiteID = #{siteID}) AS jobUserCount;
+                (SELECT COUNT(1) FROM pc_company WHERE SiteID = #{siteID}) AS companyCount,
+                (SELECT COUNT(1) FROM pc_post post LEFT JOIN pc_company company ON post.CompanyID = company.CompanyID WHERE SiteID = #{siteID}) AS postCount,
+                (SELECT COUNT(1) FROM pc_jobuser WHERE SiteID = #{siteID}) AS jobUserCount;
     </select>
 
     <select id="getDataMapList" resultType="com.hz.employmentsite.vo.baseSettings.SiteInfoVo">
         SELECT
-            site.SiteID,
-            site.SiteCode,
-            site.SiteName,
-            site.DetailAddress,
-            site.FzrName,
-            site.FzrMobile,
-            site.SiteLongitude,
-            site.SiteLatitude,
-            region.`name` AS RegionName,
-            street.`name` AS StreetName,
-            siteUserStr.siteUsers
+        site.SiteID,
+        site.SiteCode,
+        site.SiteName,
+        site.DetailAddress,
+        site.FzrName,
+        site.FzrMobile,
+        site.SiteLongitude,
+        site.SiteLatitude,
+        region.`name` AS RegionName,
+        street.`name` AS StreetName,
+        siteUserStr.siteUsers
+        FROM
+        pc_site site
+        LEFT JOIN pc_site_institution inSites ON site.SiteID = inSites.SiteID
+        LEFT JOIN area_code region ON site.RegionCode = region.`CODE`
+        LEFT JOIN area_code street ON site.StreetCode = street.`CODE`
+        LEFT JOIN (
+        SELECT
+        siteTemp.siteID,
+        GROUP_CONCAT( SiteUserName SEPARATOR ',' ) AS siteUsers
         FROM
-            pc_site site
-                LEFT JOIN pc_site_institution inSites ON site.SiteID = inSites.SiteID
-                LEFT JOIN area_code region ON site.RegionCode = region.`CODE`
-                LEFT JOIN area_code street ON site.StreetCode = street.`CODE`
-                LEFT JOIN (
-                SELECT
-                    siteTemp.siteID,
-                    GROUP_CONCAT( SiteUserName SEPARATOR ',' ) AS siteUsers
-                FROM
-                    pc_site_user siteUser
-                        LEFT JOIN sys_user sysUser ON siteUser.UserID = sysUser.UserID
-                        LEFT JOIN pc_site siteTemp ON siteTemp.SiteID = siteUser.SiteID
-                WHERE
-                    sysUser.RecordStatus = 1
-                GROUP BY
-                    siteTemp.SiteID
-            ) siteUserStr ON siteUserStr.SiteID = site.SiteID
+        pc_site_user siteUser
+        LEFT JOIN sys_user sysUser ON siteUser.UserID = sysUser.UserID
+        LEFT JOIN pc_site siteTemp ON siteTemp.SiteID = siteUser.SiteID
+        WHERE
+        sysUser.RecordStatus = 1
+        GROUP BY
+        siteTemp.SiteID
+        ) siteUserStr ON siteUserStr.SiteID = site.SiteID
         where 1=1
         <if test="siteName!='' and siteName!=null">
             and siteName like Concat('%',#{siteName},'%')
@@ -103,16 +103,6 @@
         <if test="streetCode!='' and streetCode!=null">
             and streetCode like Concat('%',#{streetCode},'%')
         </if>
-        order by
-        CASE
-            WHEN site.SiteLongitude LIKE '114%' THEN
-            0 ELSE 1
-        END,
-        site.SiteLongitude desc,
-        CASE
-            WHEN site.SiteLatitude LIKE '23%' THEN
-            0 ELSE 1
-        END,
-        site.SiteLatitude DESC
+        order by site.SiteLongitude desc, site.SiteLatitude DESC
     </select>
 </mapper>