Browse Source

+ 报名页面

chen.cheng 11 months ago
parent
commit
e57eb6a36b

+ 2 - 2
ruoyi-admin/src/main/java/com/ruoyi/web/controller/cp/CpsMeetingEnterpriseController.java

@@ -48,13 +48,13 @@ public class CpsMeetingEnterpriseController extends BaseController
     /**
      * 导出cps_meeting_enterprise 与会企业列表
      */
-    @Log(title = "cps_meeting_enterprise 与会企业", businessType = BusinessType.EXPORT)
+    @Log(title = "cps_meeting_enterprise 与会单位", businessType = BusinessType.EXPORT)
     @PostMapping("/export")
     public void export(HttpServletResponse response, CpsMeetingEnterprise cpsMeetingEnterprise)
     {
         List<CpsMeetingEnterprise> list = cpsMeetingEnterpriseService.selectCpsMeetingEnterpriseList(cpsMeetingEnterprise);
         ExcelUtil<CpsMeetingEnterprise> util = new ExcelUtil<CpsMeetingEnterprise>(CpsMeetingEnterprise.class);
-        util.exportExcel(response, list, "cps_meeting_enterprise 与会企业数据");
+        util.exportExcel(response, list, "cps_meeting_enterprise 与会单位数据");
     }
 
     /**

+ 1 - 1
ruoyi-admin/src/main/java/com/ruoyi/web/controller/cp/CpsMeetingEnterpriseTripInfoController.java

@@ -54,7 +54,7 @@ public class CpsMeetingEnterpriseTripInfoController extends BaseController
     {
         List<CpsMeetingEnterpriseTripInfo> list = cpsMeetingEnterpriseTripInfoService.selectCpsMeetingEnterpriseTripInfoList(cpsMeetingEnterpriseTripInfo);
         ExcelUtil<CpsMeetingEnterpriseTripInfo> util = new ExcelUtil<CpsMeetingEnterpriseTripInfo>(CpsMeetingEnterpriseTripInfo.class);
-        util.exportExcel(response, list, "cps_meeting_enterprise_trip_info与会企业行程信息数据");
+        util.exportExcel(response, list, "cps_meeting_enterprise_trip_info与会单位行程信息数据");
     }
 
     /**

+ 8 - 2
ruoyi-admin/src/main/java/com/ruoyi/web/controller/cp/CpsMeetingUsrController.java

@@ -10,7 +10,6 @@ import com.ruoyi.common.enums.BusinessType;
 import com.ruoyi.common.utils.poi.ExcelUtil;
 import com.ruoyi.framework.web.service.TokenService;
 import com.ruoyi.system.domain.CpsMeetingUsr;
-import com.ruoyi.system.domain.vo.WeChatVO;
 import com.ruoyi.system.rest.WechatService;
 import com.ruoyi.system.service.ICpsMeetingUsrService;
 import com.ruoyi.web.core.config.WeChatCfg;
@@ -119,11 +118,18 @@ public class CpsMeetingUsrController extends BaseController {
         return toAjax(cpsMeetingUsrService.insertCpsMeetingUsr(cpsMeetingUsr));
     }
 
+    @Log(title = "与会人员报名", businessType = BusinessType.INSERT)
+    @PostMapping(value = "/regist")
+    public AjaxResult usrRegist(@RequestBody CpsMeetingUsr cpsMeetingUsr) {
+        cpsMeetingUsrService.usrRegister(cpsMeetingUsr);
+        return AjaxResult.success();
+    }
+
     /**
      * 修改cps_meeting_usr与会人员信息
      */
     @Log(title = "cps_meeting_usr与会人员信息", businessType = BusinessType.UPDATE)
-    @PutMapping()
+    @PutMapping
     public AjaxResult edit(@RequestBody CpsMeetingUsr cpsMeetingUsr) {
         return toAjax(cpsMeetingUsrService.updateCpsMeetingUsr(cpsMeetingUsr));
     }

+ 1 - 1
ruoyi-system/src/main/java/com/ruoyi/system/domain/CpsMeetingEnterprise.java

@@ -19,7 +19,7 @@ public class CpsMeetingEnterprise extends BaseEntity
     private Long id;
 
     /** 企业名称 */
-    @Excel(name = "企业名称")
+    @Excel(name = "单位名称")
     private String enterpriseName;
 
     @Excel(name = "行程名称")

+ 4 - 4
ruoyi-system/src/main/java/com/ruoyi/system/domain/CpsMeetingUsr.java

@@ -22,13 +22,13 @@ public class CpsMeetingUsr extends BaseEntity {
     /**
      * 文件路径
      */
-    @Excel(name = "文件路径")
+    @Excel(name = "用户名")
     private String usrName;
 
     /**
      * 文件名称
      */
-    @Excel(name = "文件名称")
+    @Excel(name = "手机号")
     private String tel;
 
     /**
@@ -40,7 +40,7 @@ public class CpsMeetingUsr extends BaseEntity {
     /**
      * 与会人员企业
      */
-    @Excel(name = "与会人员企业")
+    @Excel(name = "与会人员单位")
     private Long enterpriseId;
 
     /**
@@ -49,7 +49,7 @@ public class CpsMeetingUsr extends BaseEntity {
     @Excel(name = "参会行程信息")
     private Long tripId;
 
-    @Excel(name = "参会企业信息")
+    @Excel(name = "参会单位信息")
     private String enterpriseName;
     @Excel(name = "行程名称")
     private String tripName;

+ 5 - 1
ruoyi-system/src/main/java/com/ruoyi/system/mapper/CpsMeetingUsrMapper.java

@@ -59,5 +59,9 @@ public interface CpsMeetingUsrMapper {
      */
     public int deleteCpsMeetingUsrByIds(Long[] ids);
 
-    public Integer exitUser(String openId);
+    public Integer exitUser(String tel);
+
+    CpsMeetingUsr qryUsrByTel(String tel);
+
+    int updateCpsMeetingUsrByTel(CpsMeetingUsr cpsMeetingUsr);
 }

+ 2 - 0
ruoyi-system/src/main/java/com/ruoyi/system/service/ICpsMeetingUsrService.java

@@ -64,4 +64,6 @@ public interface ICpsMeetingUsrService {
 
     CpsMeetingUsr getWeChatUser(WeChatUser user);
 
+    void usrRegister(CpsMeetingUsr user);
+
 }

+ 15 - 4
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/CpsMeetingUsrServiceImpl.java

@@ -5,6 +5,7 @@ import com.ruoyi.common.utils.DateUtils;
 import com.ruoyi.system.domain.CpsMeetingUsr;
 import com.ruoyi.system.mapper.CpsMeetingUsrMapper;
 import com.ruoyi.system.service.ICpsMeetingUsrService;
+import org.apache.commons.lang3.ObjectUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
@@ -90,13 +91,13 @@ public class CpsMeetingUsrServiceImpl implements ICpsMeetingUsrService {
     }
 
     @Override
-    public Boolean existCpsMeetingUsr(String openId) {
-        return cpsMeetingUsrMapper.exitUser(openId) > 0;
+    public Boolean existCpsMeetingUsr(String tel) {
+        return cpsMeetingUsrMapper.exitUser(tel) > 0;
     }
 
     @Override
     public CpsMeetingUsr getWeChatUser(WeChatUser wxUser) {
-        if (!existCpsMeetingUsr(wxUser.getOpenid())) {
+        if (!existCpsMeetingUsr(wxUser.getTel())) {
             CpsMeetingUsr cpsMeetingUsr = new CpsMeetingUsr() {{
                 setUsrName(wxUser.getNickName());
                 setOpenId(wxUser.getOpenid());
@@ -107,7 +108,17 @@ public class CpsMeetingUsrServiceImpl implements ICpsMeetingUsrService {
             return cpsMeetingUsr;
         }
         return selectCpsMeetingUsrList(new CpsMeetingUsr() {{
-            setOpenId(wxUser.getOpenid());
+            setTel(wxUser.getTel());
         }}).get(0);
     }
+
+    @Override
+    public void usrRegister(CpsMeetingUsr user) {
+        CpsMeetingUsr cpsMeetingUsr = cpsMeetingUsrMapper.qryUsrByTel(user.getTel());
+        if (ObjectUtils.isNotEmpty(cpsMeetingUsr)) {
+            cpsMeetingUsrMapper.updateCpsMeetingUsrByTel(user);
+            return;
+        }
+        insertCpsMeetingUsr(user);
+    }
 }

+ 25 - 1
ruoyi-system/src/main/resources/mapper/cp/CpsMeetingUsrMapper.xml

@@ -121,6 +121,30 @@
         -- 判断是否存在openid的数据
         select count(1)
         from cps_meeting_usr
-        where open_id = #{openId}
+        where tel = #{tel}
     </select>
+
+    <select id="qryUsrByTel" resultType="com.ruoyi.system.domain.CpsMeetingUsr">
+        <include refid="selectCpsMeetingUsrVo"/>
+        where usr.tel = #{tel}
+        limit 1
+    </select>
+
+    <update id="updateCpsMeetingUsrByTel" parameterType="com.ruoyi.system.domain.CpsMeetingUsr">
+        update cps_meeting_usr
+        <trim prefix="SET" suffixOverrides=",">
+            <if test="usrName != null">usr_name = #{usrName},</if>
+            <if test="tel != null">tel = #{tel},</if>
+            <if test="openId != null">open_id = #{openId},</if>
+            <if test="enterpriseId != null">enterprise_id = #{enterpriseId},</if>
+            <if test="tripId != null">trip_id = #{tripId},</if>
+            <if test="avatarUrl != null">avatar_url = #{avatarUrl},</if>
+            <if test="sex != null">sex = #{sex},</if>
+            <if test="updateTime != null">update_time = #{updateTime},</if>
+            <if test="createTime != null">create_time = #{createTime},</if>
+            <if test="createBy != null">create_by = #{createBy},</if>
+            <if test="updateBy != null">update_by = #{updateBy},</if>
+        </trim>
+        where tel = #{tel}
+    </update>
 </mapper>

+ 12 - 12
ruoyi-ui/src/views/cp/enterprise/index.vue

@@ -1,10 +1,10 @@
 <template>
   <div class="app-container">
     <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
-      <el-form-item label="企业名称" prop="enterpriseName">
+      <el-form-item label="单位名称" prop="enterpriseName">
         <el-input
           v-model="queryParams.enterpriseName"
-          placeholder="请输入企业名称"
+          placeholder="请输入单位名称"
           clearable
           @keyup.enter.native="handleQuery"
         />
@@ -72,7 +72,7 @@
     <el-table v-loading="loading" :data="enterpriseList" @selection-change="handleSelectionChange">
       <el-table-column type="selection" width="55" align="center" />
       <el-table-column label="主键" align="center" prop="id" />
-      <el-table-column label="企业名称" align="center" prop="enterpriseName" />
+      <el-table-column label="单位名称" align="center" prop="enterpriseName" />
       <el-table-column label="行程名称" align="center" prop="tripName" />
       <el-table-column label="联系方式" align="center" prop="tel" />
       <el-table-column label="联系人" align="center" prop="inCharge" />
@@ -107,8 +107,8 @@
     <!-- 添加或修改cps_meeting_enterprise 与会企业对话框 -->
     <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
       <el-form ref="form" :model="form" :rules="rules" label-width="80px">
-        <el-form-item label="企业名称" prop="enterpriseName">
-          <el-input v-model="form.enterpriseName" placeholder="请输入企业名称" />
+        <el-form-item label="单位名称" prop="enterpriseName">
+          <el-input v-model="form.enterpriseName" placeholder="请输入单位名称" />
         </el-form-item>
         <el-form-item label="联系方式" prop="tel">
           <el-input v-model="form.tel" placeholder="请输入联系方式" />
@@ -116,8 +116,8 @@
         <el-form-item label="联系人" prop="inCharge">
           <el-input v-model="form.inCharge" placeholder="请输入联系人" />
         </el-form-item>
-        <el-form-item label="企业行程" prop="tripId">
-          <el-select v-model="form.tripId" placeholder="请选企业行程">
+        <el-form-item label="单位行程" prop="tripId">
+          <el-select v-model="form.tripId" placeholder="请选单位行程">
             <el-option
                 v-for="dict in tripList"
                 :key="dict.id"
@@ -173,10 +173,10 @@ export default {
       // 表单校验
       rules: {
         enterpriseName: [
-          { required: true, message: "企业名称不能为空", trigger: "blur" }
+          { required: true, message: "单位名称不能为空", trigger: "blur" }
         ],
         tripId: [
-          { required: true, message: "企业行程不能为空", trigger: "change" }
+          { required: true, message: "单位行程不能为空", trigger: "change" }
         ],
       },
       tripList: [],
@@ -236,7 +236,7 @@ export default {
     handleAdd() {
       this.reset();
       this.open = true;
-      this.title = "添加cps_meeting_enterprise 与会企业";
+      this.title = "添加与会单位";
     },
     /** 修改按钮操作 */
     handleUpdate(row) {
@@ -245,7 +245,7 @@ export default {
       getEnterprise(id).then(response => {
         this.form = response.data;
         this.open = true;
-        this.title = "修改cps_meeting_enterprise 与会企业";
+        this.title = "修改与会单位";
       });
     },
     /** 提交按钮 */
@@ -271,7 +271,7 @@ export default {
     /** 删除按钮操作 */
     handleDelete(row) {
       const ids = row.id || this.ids;
-      this.$modal.confirm('是否确认删除cps_meeting_enterprise 与会企业编号为"' + ids + '"的数据项?').then(function() {
+      this.$modal.confirm('是否确认删除与会单位编号为"' + ids + '"的数据项?').then(function() {
         return delEnterprise(ids);
       }).then(() => {
         this.getList();

+ 3 - 3
ruoyi-ui/src/views/cp/enterpriseTripInfo/index.vue

@@ -247,7 +247,7 @@ export default {
     handleAdd() {
       this.reset();
       this.open = true;
-      this.title = "添加cps_meeting_enterprise_trip_info与会企业行程信息";
+      this.title = "添与会单位行程信息";
     },
     /** 修改按钮操作 */
     handleUpdate(row) {
@@ -256,7 +256,7 @@ export default {
       getEnterpriseTripInfo(id).then(response => {
         this.form = response.data;
         this.open = true;
-        this.title = "修改cps_meeting_enterprise_trip_info与会企业行程信息";
+        this.title = "修改与会单位行程信息";
       });
     },
     /** 提交按钮 */
@@ -282,7 +282,7 @@ export default {
     /** 删除按钮操作 */
     handleDelete(row) {
       const ids = row.id || this.ids;
-      this.$modal.confirm('是否确认删除cps_meeting_enterprise_trip_info与会企业行程信息编号为"' + ids + '"的数据项?').then(function() {
+      this.$modal.confirm('是否确认删除与会单位行程信息编号为"' + ids + '"的数据项?').then(function() {
         return delEnterpriseTripInfo(ids);
       }).then(() => {
         this.getList();

+ 15 - 15
ruoyi-ui/src/views/cp/usr/index.vue

@@ -1,18 +1,18 @@
 <template>
   <div class="app-container">
     <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
-      <el-form-item label="文件路径" prop="usrName">
+      <el-form-item label="用户名" prop="usrName">
         <el-input
           v-model="queryParams.usrName"
-          placeholder="请输入文件路径"
+          placeholder="请输入用户名"
           clearable
           @keyup.enter.native="handleQuery"
         />
       </el-form-item>
-      <el-form-item label="文件名称" prop="tel">
+      <el-form-item label="手机号" prop="tel">
         <el-input
           v-model="queryParams.tel"
-          placeholder="请输入文件名称"
+          placeholder="请输入手机号"
           clearable
           @keyup.enter.native="handleQuery"
         />
@@ -82,10 +82,10 @@
     <el-table v-loading="loading" :data="usrList" @selection-change="handleSelectionChange">
       <el-table-column type="selection" width="55" align="center" />
       <el-table-column label="主键" align="center" prop="id" />
-      <el-table-column label="文件路径" align="center" prop="usrName" />
-      <el-table-column label="文件名称" align="center" prop="tel" />
+      <el-table-column label="用户名" align="center" prop="usrName" />
+      <el-table-column label="用户手机号" align="center" prop="tel" />
       <el-table-column label="微信开放id" align="center" prop="openId" />
-      <el-table-column label="与会人员企业" align="center" prop="enterpriseId" />
+      <el-table-column label="与会人员单位" align="center" prop="enterpriseId" />
       <el-table-column label="参会行程信息" align="center" prop="tripId" />
       <el-table-column label="头像" align="center" prop="avatarUrl" />
       <el-table-column label="性别" align="center" prop="sex">
@@ -112,7 +112,7 @@
         </template>
       </el-table-column>
     </el-table>
-    
+
     <pagination
       v-show="total>0"
       :total="total"
@@ -123,18 +123,18 @@
 
     <!-- 添加或修改cps_meeting_usr与会人员信息对话框 -->
     <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
-      <el-form ref="form" :model="form" :rules="rules" label-width="80px">
-        <el-form-item label="文件路径" prop="usrName">
-          <el-input v-model="form.usrName" placeholder="请输入文件路径" />
+      <el-form ref="form" :model="form" :rules="rules" label-width="100px">
+        <el-form-item label="用户名" prop="usrName">
+          <el-input v-model="form.usrName" placeholder="请输入用户名" />
         </el-form-item>
-        <el-form-item label="文件名称" prop="tel">
-          <el-input v-model="form.tel" placeholder="请输入文件名称" />
+        <el-form-item label="手机号" prop="tel">
+          <el-input v-model="form.tel" placeholder="请输入手机号" />
         </el-form-item>
         <el-form-item label="微信开放id" prop="openId">
           <el-input v-model="form.openId" placeholder="请输入微信开放id" />
         </el-form-item>
-        <el-form-item label="与会人员企业" prop="enterpriseId">
-          <el-input v-model="form.enterpriseId" placeholder="请输入与会人员企业" />
+        <el-form-item label="与会人员单位" prop="enterpriseId">
+          <el-input v-model="form.enterpriseId" placeholder="请输入与会人员单位" />
         </el-form-item>
         <el-form-item label="参会行程信息" prop="tripId">
           <el-input v-model="form.tripId" placeholder="请输入参会行程信息" />