Browse Source

feat: APP求职人员新增时记录经纬度

zhangying 10 months ago
parent
commit
c4ed30a271

+ 17 - 1
h5app/src/views/pages/jobUserInfo/userEdit.vue

@@ -463,6 +463,7 @@ import {getExperienceListByJobUserID} from "@/api/experience";
 import {getJobHuntListByJobUserID} from "@/api/jobHuntInfo";
 import dayjs from "dayjs";
 import CategorySelection from "@/components/ocCategorySelection.vue";
+import {getPosition} from "@/utils/position";
 
 interface SelectProps {
   name: string,
@@ -551,7 +552,9 @@ export default defineComponent({
         occupationalCategoryName:null,
         occupationalLevel:null,
         openId:null,
-        loginUserID:''
+        loginUserID: '',
+        longitude: null,
+        latitude: null
       }});
     const pageParams = reactive({
       pageIndex: 1,
@@ -800,6 +803,9 @@ export default defineComponent({
 
     const loadData = async (jobUserID: any,status:any,userId:any,openId:any) => {
       loading.value = true;
+      if (jobUserID == null) {
+        setLongitudeLatitude()
+      }
       pageParams.jobUserID = jobUserID;
       pageParams.openID = openId;
       baseInfoData.baseData.jobUserID = jobUserID;
@@ -858,6 +864,16 @@ export default defineComponent({
       loadData(jobUserID,status,userId,openId);
     }
 
+    // 设置经纬度
+    function setLongitudeLatitude() {
+      getPosition().then((data: any) => {
+        if (data.longitude != null && data.latitude != null) {
+          baseInfoData.baseData.longitude = data.longitude;
+          baseInfoData.baseData.latitude = data.latitude;
+        }
+      })
+    }
+
     onIonViewDidEnter(() => {
       if (route.query.reload)
         reload(route.query.jobUserID,route.query.status,route.query.loginUserId,route.query.openId);

+ 19 - 1
h5app/src/views/pages/jobhunt/edit.vue

@@ -465,6 +465,7 @@ import {alertController, onIonViewDidEnter} from "@ionic/vue";
 import dayjs from "dayjs";
 import {useUserStore} from "@/store/modules/user";
 import CategorySelection from "@/components/ocCategorySelection.vue";
+import {getPosition} from "@/utils/position";
 
 interface SelectProps {
   name: string,
@@ -552,7 +553,9 @@ export default defineComponent({
         isFullTime:null,
         occupationalCategory:null,
         occupationalCategoryName:null,
-        occupationalLevel:null
+        occupationalLevel: null,
+        longitude: null,
+        latitude: null
       }});
     const pageParams = reactive({
       pageIndex: 1,
@@ -699,6 +702,7 @@ export default defineComponent({
     }
 
     const onSave = async function (){
+      console.log(baseInfoData.baseData)
       if (curStepData.value.statusVal==1){
         const isFormCorrect = await baseDataValid.value.$validate();
         if(!isFormCorrect){
@@ -797,6 +801,9 @@ export default defineComponent({
 
     const loadData = async (jobUserID: any,status:any) => {
       loading.value = true;
+      if (jobUserID == null) {
+        setLongitudeLatitude()
+      }
       pageParams.jobUserID = jobUserID;
       baseInfoData.baseData.jobUserID = jobUserID;
       curStepData.value.statusVal = status;
@@ -855,6 +862,17 @@ export default defineComponent({
       loadData(jobUserID,status);
     }
 
+    // 设置经纬度
+    function setLongitudeLatitude() {
+      getPosition().then((data: any) => {
+        console.log(data);
+        if (data.longitude != null && data.latitude != null) {
+          baseInfoData.baseData.longitude = data.longitude;
+          baseInfoData.baseData.latitude = data.latitude;
+        }
+      })
+    }
+
     onIonViewDidEnter(() => {
       if (route.query.reload)
         reload(route.query.jobUserID,route.query.status);

+ 20 - 0
src/main/java/com/hz/employmentsite/model/PcJobuser.java

@@ -91,6 +91,10 @@ public class PcJobuser {
 
     private Integer occupationalLevel;
 
+    private String longitude;
+
+    private String latitude;
+
     public String getJobuserID() {
         return jobuserID;
     }
@@ -442,4 +446,20 @@ public class PcJobuser {
     public void setOccupationalLevel(Integer occupationalLevel) {
         this.occupationalLevel = occupationalLevel;
     }
+
+    public String getLongitude() {
+        return longitude;
+    }
+
+    public void setLongitude(String longitude) {
+        this.longitude = longitude;
+    }
+
+    public String getLatitude() {
+        return latitude;
+    }
+
+    public void setLatitude(String latitude) {
+        this.latitude = latitude;
+    }
 }

+ 4 - 0
src/main/java/com/hz/employmentsite/services/impl/jobUserManager/JobUserServiceImpl.java

@@ -259,6 +259,8 @@ public class JobUserServiceImpl implements JobUserService {
             dbData.setOccupationalLevel(data.getOccupationalLevel());
             dbData.setCreateTime(new Date());
             dbData.setCreateUserID(userId);
+            dbData.setLongitude(data.longitude);
+            dbData.setLatitude(data.latitude);
             result = pcJobuserMapper.insert(dbData);
 
         } else {
@@ -303,6 +305,8 @@ public class JobUserServiceImpl implements JobUserService {
             dbData.setOccupationalLevel(data.getOccupationalLevel());
             dbData.setModifyTime(new Date());
             dbData.setModifyUserID(userId);
+            dbData.setLongitude(data.getLongitude());
+            dbData.setLatitude(data.getLatitude());
             result = pcJobuserMapper.updateByPrimaryKeySelective(dbData);
         }
         if (result >= 1) {

+ 4 - 0
src/main/java/com/hz/employmentsite/vo/jobUserManager/JobUserVo.java

@@ -104,6 +104,7 @@ public class JobUserVo {
     private String createUserID;
     private Date createTime;
     private String modifyUserID;
+    private String modifyUserName;
     private Date modifyTime;
 
     public String openId;
@@ -133,4 +134,7 @@ public class JobUserVo {
     public String loginUserID;
 
     public List<LabelVo> listLabel;
+
+    public String longitude;
+    public String latitude;
 }

+ 38 - 5
src/main/resources/mapping/PcJobuserMapper.xml

@@ -46,6 +46,8 @@
     <result column="IsFullTime" jdbcType="INTEGER" property="isFullTime"/>
     <result column="OccupationalCategory" jdbcType="VARCHAR" property="occupationalCategory"/>
     <result column="OccupationalLevel" jdbcType="INTEGER" property="occupationalLevel"/>
+    <result column="Longitude" jdbcType="VARCHAR" property="longitude"/>
+    <result column="Latitude" jdbcType="VARCHAR" property="latitude"/>
   </resultMap>
   <sql id="Example_Where_Clause">
     <where>
@@ -113,7 +115,7 @@
     UserMobile, Address, FamilyAddress, PostalCode, Email, Hobby, JobStatusID, KeyPersonTypeID, 
     PersonalSkills, CreateUserID, CreateTime, ModifyUserID, ModifyTime, openId,
     SocialSecurityCard,FinishSchool,Profession,NativePlace,
-    IsFullTime,OccupationalCategory,OccupationalLevel
+    IsFullTime,OccupationalCategory,OccupationalLevel,Longitude,Latitude
   </sql>
   <select id="selectByExample" parameterType="com.hz.employmentsite.model.PcJobuserExample" resultMap="BaseResultMap">
     select
@@ -160,7 +162,8 @@
                             CreateTime, ModifyUserID, ModifyTime,
                             openId, SocialSecurityCard, FinishSchool,
                             Profession, NativePlace, IsFullTime,
-                            OccupationalCategory, OccupationalLevel)
+                            OccupationalCategory, OccupationalLevel, Longitude,
+                            Latitude)
     values (#{jobuserID,jdbcType=VARCHAR}, #{siteID,jdbcType=VARCHAR}, #{identityNumber,jdbcType=VARCHAR},
             #{name,jdbcType=VARCHAR}, #{pyName,jdbcType=VARCHAR}, #{engName,jdbcType=VARCHAR},
             #{sex,jdbcType=INTEGER}, #{nation,jdbcType=INTEGER}, #{politicsStatusID,jdbcType=INTEGER},
@@ -175,7 +178,9 @@
             #{createTime,jdbcType=TIMESTAMP}, #{modifyUserID,jdbcType=VARCHAR}, #{modifyTime,jdbcType=TIMESTAMP},
             #{openId,jdbcType=VARCHAR}, #{socialSecurityCard,jdbcType=VARCHAR}, #{finishSchool,jdbcType=VARCHAR},
             #{profession,jdbcType=VARCHAR}, #{nativePlace,jdbcType=VARCHAR}, #{isFullTime,jdbcType=VARCHAR},
-            #{occupationalCategory,jdbcType=VARCHAR}, #{occupationalLevel,jdbcType=VARCHAR})
+            #{occupationalCategory,jdbcType=VARCHAR}, #{occupationalLevel,jdbcType=VARCHAR},
+            #{longitude,jdbcType=VARCHAR},
+            #{longitude,jdbcType=VARCHAR})
   </insert>
   <insert id="insertSelective" parameterType="com.hz.employmentsite.model.PcJobuser">
     insert into pc_jobuser
@@ -312,6 +317,12 @@
       <if test="occupationalLevel != null">
         OccupationalLevel,
       </if>
+      <if test="longitude != null">
+        Longitude,
+      </if>
+      <if test="latitude != null">
+        Latitude,
+      </if>
     </trim>
     <trim prefix="values (" suffix=")" suffixOverrides=",">
       <if test="jobuserID != null">
@@ -446,6 +457,12 @@
       <if test="occupationalLevel != null">
         #{occupationalLevel,jdbcType=INTEGER},
       </if>
+      <if test="longitude != null">
+        #{longitude,jdbcType=VARCHAR},
+      </if>
+      <if test="longitude != null">
+        #{longitude,jdbcType=VARCHAR},
+      </if>
     </trim>
   </insert>
   <select id="countByExample" parameterType="com.hz.employmentsite.model.PcJobuserExample" resultType="java.lang.Long">
@@ -589,6 +606,12 @@
       <if test="row.occupationalLevel != null">
         OccupationalLevel = #{row.occupationalLevel,jdbcType=INTEGER},
       </if>
+      <if test="row.longitude != null">
+        Longitude = #{row.longitude,jdbcType=VARCHAR},
+      </if>
+      <if test="row.latitude != null">
+        Latitude = #{row.latitude,jdbcType=VARCHAR},
+      </if>
     </set>
     <if test="example != null">
       <include refid="Update_By_Example_Where_Clause" />
@@ -639,7 +662,9 @@
     NativePlace = #{row.nativePlace,jdbcType=VARCHAR},
     IsFullTime = #{row.isFullTime,jdbcType=INTEGER},
     OccupationalCategory = #{row.occupationalCategory,jdbcType=VARCHAR},
-    OccupationalLevel = #{row.occupationalLevel,jdbcType=INTEGER}
+    OccupationalLevel = #{row.occupationalLevel,jdbcType=INTEGER},
+    Longitude = #{row.longitude,jdbcType=VARCHAR},
+    Latitude = #{row.latitude,jdbcType=VARCHAR}
     <if test="example != null">
       <include refid="Update_By_Example_Where_Clause" />
     </if>
@@ -776,6 +801,12 @@
       <if test="occupationalLevel != null">
         OccupationalLevel = #{occupationalLevel,jdbcType=INTEGER},
       </if>
+      <if test="longitude != null">
+        Longitude = #{longitude,jdbcType=VARCHAR},
+      </if>
+      <if test="latitude != null">
+        Latitude = #{latitude,jdbcType=VARCHAR},
+      </if>
     </set>
     where JobuserID = #{jobuserID,jdbcType=VARCHAR}
   </update>
@@ -823,7 +854,9 @@
         NativePlace          = #{nativePlace,jdbcType=VARCHAR},
         IsFullTime           = #{isFullTime,jdbcType=INTEGER},
         OccupationalCategory = #{occupationalCategory,jdbcType=VARCHAR},
-        OccupationalLevel    = #{occupationalLevel,jdbcType=INTEGER}
+        OccupationalLevel    = #{occupationalLevel,jdbcType=INTEGER},
+        Longitude            = #{longitude,jdbcType=VARCHAR},
+        Latitude             = #{latitude,jdbcType=VARCHAR}
     where JobuserID = #{jobuserID,jdbcType=VARCHAR}
   </update>
 </mapper>

+ 4 - 3
src/main/resources/mapping/cquery/JobUserCQuery.xml

@@ -5,12 +5,12 @@
         select jobuser.* ,gender.name as GenderName,culture.name as
         CultureName,
         site.SiteName,inSites.InstitutionID as institutionID,
-        jobstatus.name as
-        JobStatusName,keytype.name as KeyTypeName,sys_politics.name as politicsStatusName,sys_health.name as healthName,
+        jobstatus.name as JobStatusName,keytype.name as KeyTypeName,sys_politics.name as
+        politicsStatusName,sys_health.name as healthName,
         sys_family.name as familyNatureName,sys_full_time.Name as isFullTimeName,occ_cat.OccupationalName as
         occupationalCategoryName,
         sys_occ_level.Name as occupationalLevelName,sys_blood_type.Name as bloodTypeName,sys_marital_status.Name as
-        MaritalStatusName, sys_nation.Name as nationName,
+        MaritalStatusName, sys_nation.Name as nationName, modifyUser.Name as modifyUserName,
         area_region.name as RegionName,area_street.name as StreetName,
         (select count(*) from pc_recommend recommend where jobuser.JobUserID = recommend.JobuserID and isRead = 1)as
         RecommendedCount
@@ -49,6 +49,7 @@
         left join area_code area_street on jobuser.StreetCode = area_street.code
         left join pc_site_institution inSites on site.SiteID = inSites.SiteID
         left join pc_institution institution on inSites.institutionID = institution.InstitutionID
+        left join sys_user modifyUser on jobuser.ModifyUserID = modifyUser.UserID
         where 1=1
         <if test="jobUserIDList != '' and jobUserIDList != null">
             and jobuser.jobuserID in (${jobUserIDList})