Browse Source

fix 政协活动

Administrator 1 year ago
parent
commit
f7c9c5140a

+ 127 - 0
ruoyi-admin/src/main/java/com/ruoyi/web/controller/activity/ZxActivityController.java

@@ -0,0 +1,127 @@
+package com.ruoyi.web.controller.activity;
+
+
+import javax.servlet.http.HttpServletResponse;
+
+import com.ruoyi.common.utils.poi.ExcelUtil;
+import com.ruoyi.system.domain.activity.ZxActivity;
+import com.ruoyi.system.domain.activity.ZxActivityUser;
+import com.ruoyi.system.domain.conference.ZxConferenceUser;
+import com.ruoyi.system.service.IZxActivityService;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+import com.ruoyi.common.annotation.Log;
+import com.ruoyi.common.core.controller.BaseController;
+import com.ruoyi.common.core.domain.AjaxResult;
+import com.ruoyi.common.enums.BusinessType;
+import com.ruoyi.common.core.page.TableDataInfo;
+
+import java.util.List;
+
+/**
+ * 政协活动Controller
+ *
+ * @author boman
+ * @date 2024-03-14
+ */
+@RestController
+@RequestMapping("/zxActivity/activity")
+public class ZxActivityController extends BaseController {
+    @Autowired
+    private IZxActivityService zxActivityService;
+
+    /**
+     * 查询政协活动列表
+     */
+    @PreAuthorize("@ss.hasPermi('zxActivity:activity:list')")
+    @GetMapping("/list")
+    public TableDataInfo list(ZxActivity zxActivity) {
+        startPage();
+        List<ZxActivity> list = zxActivityService.selectZxActivityList(zxActivity);
+        return getDataTable(list);
+    }
+
+    /**
+     * 查询政协活动列表不分页
+     */
+    @PreAuthorize("@ss.hasPermi('zxActivity:activity:listNoPage')")
+    @GetMapping("/listNoPage")
+    public TableDataInfo listNoPage(ZxActivity zxActivity) {
+        List<ZxActivity> list = zxActivityService.selectZxActivityList(zxActivity);
+        return getDataTable(list);
+    }
+
+    /**
+     * 导出政协活动列表
+     */
+    @PreAuthorize("@ss.hasPermi('zxActivity:activity:export')")
+    @Log(title = "政协活动", businessType = BusinessType.EXPORT)
+    @PostMapping("/export")
+    public void export(HttpServletResponse response, ZxActivity zxActivity) {
+        List<ZxActivity> list = zxActivityService.selectZxActivityList(zxActivity);
+        ExcelUtil<ZxActivity> util = new ExcelUtil<ZxActivity>(ZxActivity.class);
+        util.exportExcel(response, list, "政协活动数据");
+    }
+
+    /**
+     * 获取政协活动详细信息
+     */
+    @PreAuthorize("@ss.hasPermi('zxActivity:activity:query')")
+    @GetMapping(value = "/{activityId}")
+    public AjaxResult getInfo(@PathVariable("activityId") Long activityId) {
+        return success(zxActivityService.selectZxActivityByActivityId(activityId));
+    }
+
+    /**
+     * 获取政协活动人员详细信息
+     */
+    @PreAuthorize("@ss.hasPermi('zxActivity:activity:getUserInfo')")
+    @GetMapping(value = "/getUserInfo/{activityId}")
+    public TableDataInfo getUserInfo(@PathVariable("activityId") Long activityId) {
+        return getDataTable(zxActivityService.selectZxActivityUserByActivityId(activityId));
+    }
+
+    /**
+     * 新增政协活动
+     */
+    @PreAuthorize("@ss.hasPermi('zxActivity:activity:add')")
+    @Log(title = "政协活动", businessType = BusinessType.INSERT)
+    @PostMapping
+    public AjaxResult add(@RequestBody ZxActivity zxActivity) {
+        return toAjax(zxActivityService.insertZxActivity(zxActivity));
+    }
+
+    /**
+     * 修改活动答复信息
+     */
+    @PreAuthorize("@ss.hasPermi('zxActivity:activity:updateReply')")
+    @PostMapping(value = "/updateReply")
+    public AjaxResult updateReply(@RequestBody ZxActivityUser zxActivityUser) {
+        return success(zxActivityService.updateReply(zxActivityUser));
+    }
+    /**
+     * 修改政协活动
+     */
+    @PreAuthorize("@ss.hasPermi('zxActivity:activity:edit')")
+    @Log(title = "政协活动", businessType = BusinessType.UPDATE)
+    @PostMapping("/put")
+    public AjaxResult edit(@RequestBody ZxActivity zxActivity) {
+        return toAjax(zxActivityService.updateZxActivity(zxActivity));
+    }
+
+    /**
+     * 删除政协活动
+     */
+    @PreAuthorize("@ss.hasPermi('zxActivity:activity:remove')")
+    @Log(title = "政协活动", businessType = BusinessType.DELETE)
+    @GetMapping("/delete/{activityIds}")
+    public AjaxResult remove(@PathVariable Long[] activityIds) {
+        return toAjax(zxActivityService.deleteZxActivityByActivityIds(activityIds));
+    }
+}

+ 9 - 0
ruoyi-admin/src/main/java/com/ruoyi/web/controller/member/MemberInfoController.java

@@ -76,6 +76,15 @@ public class MemberInfoController extends BaseController {
         return success(memberInfoService.selectMemberInfoByMemberId(memberId));
         return success(memberInfoService.selectMemberInfoByMemberId(memberId));
     }
     }
 
 
+    /**
+     * 获取委员履职信息详细信息
+     */
+    @PreAuthorize("@ss.hasPermi('member:info:queryJop')")
+    @GetMapping(value = "/{memberId}")
+    public AjaxResult getInfoJop(@PathVariable("memberId") Long memberId) {
+        return success(memberInfoService.getInfoJop(memberId));
+    }
+
     /**
     /**
      * 新增委员信息
      * 新增委员信息
      */
      */

+ 223 - 0
ruoyi-system/src/main/java/com/ruoyi/system/domain/activity/ZxActivity.java

@@ -0,0 +1,223 @@
+package com.ruoyi.system.domain.activity;
+
+import java.util.List;
+import java.util.Date;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+import com.ruoyi.common.annotation.Excel;
+import com.ruoyi.common.core.domain.BaseEntity;
+
+/**
+ * 政协活动对象 zx_activity
+ * 
+ * @author boman
+ * @date 2024-03-14
+ */
+public class ZxActivity extends BaseEntity
+{
+    private static final long serialVersionUID = 1L;
+
+    /** 活动ID */
+    private Long activityId;
+
+    /** 活动名称 */
+    @Excel(name = "活动名称")
+    private String activityTitle;
+
+    /** 活动日期 */
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    @Excel(name = "活动日期", width = 30, dateFormat = "yyyy-MM-dd")
+    private Date activityDate;
+
+    /** 活动时间 */
+    @Excel(name = "活动时间")
+    private String activityTime;
+
+    /** 活动地点 */
+    @Excel(name = "活动地点")
+    private String activityAddress;
+
+    /** 活动类型 */
+    @Excel(name = "活动类型")
+    private String activityType;
+
+    /** 活动内容 */
+    @Excel(name = "活动内容")
+    private String activityDetails;
+
+    /** 发布时间 */
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @Excel(name = "发布时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
+    private Date publishTime;
+
+    /** 发布人部门 */
+    @Excel(name = "发布人部门")
+    private String publishDept;
+
+    /** 发布人部门id */
+    @Excel(name = "发布人部门id")
+    private Long publishDeptId;
+    /**
+     * 已读人数
+     */
+    private String read;
+    /**
+     * 未读人数
+     */
+    private String noRead;
+
+    /** 政协活动-用户关联信息 */
+    private List<ZxActivityUser> zxActivityUserList;
+    /**
+     * 活动通知查询列表使用,不在数据库中
+     */
+    private Long userId;
+
+    public Long getUserId() {
+        return userId;
+    }
+
+    public void setUserId(Long userId) {
+        this.userId = userId;
+    }
+
+    public String getRead() {
+        return read;
+    }
+
+    public void setRead(String read) {
+        this.read = read;
+    }
+
+    public String getNoRead() {
+        return noRead;
+    }
+
+    public void setNoRead(String noRead) {
+        this.noRead = noRead;
+    }
+
+    public void setActivityId(Long activityId)
+    {
+        this.activityId = activityId;
+    }
+
+    public Long getActivityId() 
+    {
+        return activityId;
+    }
+    public void setActivityTitle(String activityTitle) 
+    {
+        this.activityTitle = activityTitle;
+    }
+
+    public String getActivityTitle() 
+    {
+        return activityTitle;
+    }
+    public void setActivityDate(Date activityDate) 
+    {
+        this.activityDate = activityDate;
+    }
+
+    public Date getActivityDate() 
+    {
+        return activityDate;
+    }
+    public void setActivityTime(String activityTime) 
+    {
+        this.activityTime = activityTime;
+    }
+
+    public String getActivityTime() 
+    {
+        return activityTime;
+    }
+    public void setActivityAddress(String activityAddress) 
+    {
+        this.activityAddress = activityAddress;
+    }
+
+    public String getActivityAddress() 
+    {
+        return activityAddress;
+    }
+    public void setActivityType(String activityType) 
+    {
+        this.activityType = activityType;
+    }
+
+    public String getActivityType() 
+    {
+        return activityType;
+    }
+    public void setActivityDetails(String activityDetails) 
+    {
+        this.activityDetails = activityDetails;
+    }
+
+    public String getActivityDetails() 
+    {
+        return activityDetails;
+    }
+    public void setPublishTime(Date publishTime) 
+    {
+        this.publishTime = publishTime;
+    }
+
+    public Date getPublishTime() 
+    {
+        return publishTime;
+    }
+    public void setPublishDept(String publishDept) 
+    {
+        this.publishDept = publishDept;
+    }
+
+    public String getPublishDept() 
+    {
+        return publishDept;
+    }
+    public void setPublishDeptId(Long publishDeptId) 
+    {
+        this.publishDeptId = publishDeptId;
+    }
+
+    public Long getPublishDeptId() 
+    {
+        return publishDeptId;
+    }
+
+    public List<ZxActivityUser> getZxActivityUserList()
+    {
+        return zxActivityUserList;
+    }
+
+    public void setZxActivityUserList(List<ZxActivityUser> zxActivityUserList)
+    {
+        this.zxActivityUserList = zxActivityUserList;
+    }
+
+    @Override
+    public String toString() {
+        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
+            .append("activityId", getActivityId())
+            .append("activityTitle", getActivityTitle())
+            .append("activityDate", getActivityDate())
+            .append("activityTime", getActivityTime())
+            .append("activityAddress", getActivityAddress())
+            .append("activityType", getActivityType())
+            .append("activityDetails", getActivityDetails())
+            .append("publishTime", getPublishTime())
+            .append("publishDept", getPublishDept())
+            .append("publishDeptId", getPublishDeptId())
+            .append("createBy", getCreateBy())
+            .append("createTime", getCreateTime())
+            .append("updateBy", getUpdateBy())
+            .append("updateTime", getUpdateTime())
+            .append("remark", getRemark())
+            .append("zxActivityUserList", getZxActivityUserList())
+            .toString();
+    }
+}

+ 171 - 0
ruoyi-system/src/main/java/com/ruoyi/system/domain/activity/ZxActivityUser.java

@@ -0,0 +1,171 @@
+package com.ruoyi.system.domain.activity;
+
+import java.util.Date;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+import com.ruoyi.common.annotation.Excel;
+import com.ruoyi.common.core.domain.BaseEntity;
+
+/**
+ * 政协活动-用户关联对象 zx_activity_user
+ * 
+ * @author boman
+ * @date 2024-03-14
+ */
+public class ZxActivityUser extends BaseEntity
+{
+    private static final long serialVersionUID = 1L;
+
+    /** 活动ID */
+    private Long activityId;
+
+    /** 用户ID/委员信息表id */
+    private Long userId;
+
+    /** 姓名 */
+    @Excel(name = "姓名")
+    private String userName;
+
+    /** 委员职务 */
+    @Excel(name = "委员职务")
+    private String postName;
+
+    /** 级别 */
+    @Excel(name = "级别")
+    private String userLevel;
+
+    /** 答复时间 */
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    @Excel(name = "答复时间", width = 30, dateFormat = "yyyy-MM-dd")
+    private Date replyTime;
+
+    /** 是否参会 N:不参加 Y:参加 */
+    @Excel(name = "是否参会 N:不参加 Y:参加")
+    private String isJoin;
+
+    /** 请假类型 */
+    @Excel(name = "请假类型")
+    private String leaveType;
+
+    /** 请假原因 */
+    @Excel(name = "请假原因")
+    private String leaveReason;
+
+    /** 签到时间 */
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    @Excel(name = "签到时间", width = 30, dateFormat = "yyyy-MM-dd")
+    private Date signIn;
+
+    public void setActivityId(Long activityId) 
+    {
+        this.activityId = activityId;
+    }
+
+    public Long getActivityId() 
+    {
+        return activityId;
+    }
+    public void setUserId(Long userId) 
+    {
+        this.userId = userId;
+    }
+
+    public Long getUserId() 
+    {
+        return userId;
+    }
+    public void setUserName(String userName) 
+    {
+        this.userName = userName;
+    }
+
+    public String getUserName() 
+    {
+        return userName;
+    }
+    public void setPostName(String postName) 
+    {
+        this.postName = postName;
+    }
+
+    public String getPostName() 
+    {
+        return postName;
+    }
+    public void setUserLevel(String userLevel) 
+    {
+        this.userLevel = userLevel;
+    }
+
+    public String getUserLevel() 
+    {
+        return userLevel;
+    }
+    public void setReplyTime(Date replyTime) 
+    {
+        this.replyTime = replyTime;
+    }
+
+    public Date getReplyTime() 
+    {
+        return replyTime;
+    }
+    public void setIsJoin(String isJoin) 
+    {
+        this.isJoin = isJoin;
+    }
+
+    public String getIsJoin() 
+    {
+        return isJoin;
+    }
+    public void setLeaveType(String leaveType) 
+    {
+        this.leaveType = leaveType;
+    }
+
+    public String getLeaveType() 
+    {
+        return leaveType;
+    }
+    public void setLeaveReason(String leaveReason) 
+    {
+        this.leaveReason = leaveReason;
+    }
+
+    public String getLeaveReason() 
+    {
+        return leaveReason;
+    }
+    public void setSignIn(Date signIn) 
+    {
+        this.signIn = signIn;
+    }
+
+    public Date getSignIn() 
+    {
+        return signIn;
+    }
+
+    @Override
+    public String toString() {
+        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
+            .append("activityId", getActivityId())
+            .append("userId", getUserId())
+            .append("userName", getUserName())
+            .append("postName", getPostName())
+            .append("userLevel", getUserLevel())
+            .append("replyTime", getReplyTime())
+            .append("isJoin", getIsJoin())
+            .append("leaveType", getLeaveType())
+            .append("leaveReason", getLeaveReason())
+            .append("signIn", getSignIn())
+            .append("createBy", getCreateBy())
+            .append("createTime", getCreateTime())
+            .append("updateBy", getUpdateBy())
+            .append("updateTime", getUpdateTime())
+            .append("remark", getRemark())
+            .toString();
+    }
+}

+ 25 - 15
ruoyi-system/src/main/java/com/ruoyi/system/domain/speak/ZxSpeak.java

@@ -26,8 +26,9 @@ public class ZxSpeak extends BaseEntity
 
 
     /** 发言人 */
     /** 发言人 */
     @Excel(name = "发言人")
     @Excel(name = "发言人")
-    private String speakName;
-
+    private String name;
+    /** 发言人id */
+    private Long userId;
     /** 录入人 */
     /** 录入人 */
     @Excel(name = "录入人")
     @Excel(name = "录入人")
     private String inputName;
     private String inputName;
@@ -53,19 +54,35 @@ public class ZxSpeak extends BaseEntity
     private String speakType;
     private String speakType;
 
 
     /** 发言时间 */
     /** 发言时间 */
-    @JsonFormat(pattern = "yyyy-MM-dd")
-    @Excel(name = "发言时间", width = 30, dateFormat = "yyyy-MM-dd")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @Excel(name = "发言时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
     private Date speakTime;
     private Date speakTime;
 
 
     /** 录入时间 */
     /** 录入时间 */
-    @JsonFormat(pattern = "yyyy-MM-dd")
-    @Excel(name = "录入时间", width = 30, dateFormat = "yyyy-MM-dd")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @Excel(name = "录入时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
     private Date publishTime;
     private Date publishTime;
 
 
     /** 状态 1:待审核 2:已审核 */
     /** 状态 1:待审核 2:已审核 */
     @Excel(name = "状态 1:待审核 2:已审核")
     @Excel(name = "状态 1:待审核 2:已审核")
     private String speakStatus;
     private String speakStatus;
 
 
+    public String getName() {
+        return name;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+
+    public Long getUserId() {
+        return userId;
+    }
+
+    public void setUserId(Long userId) {
+        this.userId = userId;
+    }
+
     public String getConferenceTitle() {
     public String getConferenceTitle() {
         return conferenceTitle;
         return conferenceTitle;
     }
     }
@@ -100,15 +117,7 @@ public class ZxSpeak extends BaseEntity
     {
     {
         return speakTitle;
         return speakTitle;
     }
     }
-    public void setSpeakName(String speakName) 
-    {
-        this.speakName = speakName;
-    }
 
 
-    public String getSpeakName() 
-    {
-        return speakName;
-    }
     public void setInputName(String inputName) 
     public void setInputName(String inputName) 
     {
     {
         this.inputName = inputName;
         this.inputName = inputName;
@@ -178,7 +187,8 @@ public class ZxSpeak extends BaseEntity
         return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
         return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
             .append("speakId", getSpeakId())
             .append("speakId", getSpeakId())
             .append("speakTitle", getSpeakTitle())
             .append("speakTitle", getSpeakTitle())
-            .append("speakName", getSpeakName())
+            .append("name", getName())
+            .append("userId", getUserId())
             .append("inputName", getInputName())
             .append("inputName", getInputName())
             .append("conferenceId", getConferenceId())
             .append("conferenceId", getConferenceId())
             .append("speakUnit", getSpeakUnit())
             .append("speakUnit", getSpeakUnit())

+ 103 - 0
ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/MemberInfoVo.java

@@ -0,0 +1,103 @@
+package com.ruoyi.system.domain.vo;
+
+import com.ruoyi.system.domain.ProposalInfo;
+import com.ruoyi.system.domain.activity.ZxActivity;
+import com.ruoyi.system.domain.conference.ZxConference;
+import com.ruoyi.system.domain.member.MemberInfo;
+import com.ruoyi.system.domain.speak.ZxSpeak;
+import com.ruoyi.system.domain.sqmy.SqmyInfo;
+
+import java.util.List;
+
+/**
+ * @Author: tjf
+ * @Date: 2024/3/14 11:05
+ * @Describe:
+ */
+public class MemberInfoVo {
+    /**
+     * 基本信息
+     */
+    private MemberInfo memberInfo;
+    /**
+     * 提案集合
+     */
+    private List<ProposalInfo> proposalInfoList;
+    /**
+     * 社情民意集合
+     */
+    private List<SqmyInfo> sqmyInfoList;
+
+    /**
+     * 会议集合
+     */
+    private List<ZxConference> zxConferenceList;
+    /**
+     * 活动集合
+     */
+    private List<ZxActivity> zxActivityList;
+    /**
+     * 发言集合
+     */
+    private List<ZxSpeak> zxSpeakList;
+
+    public MemberInfo getMemberInfo() {
+        return memberInfo;
+    }
+
+    public void setMemberInfo(MemberInfo memberInfo) {
+        this.memberInfo = memberInfo;
+    }
+
+    public List<ProposalInfo> getProposalInfoList() {
+        return proposalInfoList;
+    }
+
+    public void setProposalInfoList(List<ProposalInfo> proposalInfoList) {
+        this.proposalInfoList = proposalInfoList;
+    }
+
+    public List<SqmyInfo> getSqmyInfoList() {
+        return sqmyInfoList;
+    }
+
+    public void setSqmyInfoList(List<SqmyInfo> sqmyInfoList) {
+        this.sqmyInfoList = sqmyInfoList;
+    }
+
+    public List<ZxConference> getZxConferenceList() {
+        return zxConferenceList;
+    }
+
+    public void setZxConferenceList(List<ZxConference> zxConferenceList) {
+        this.zxConferenceList = zxConferenceList;
+    }
+
+    public List<ZxActivity> getZxActivityList() {
+        return zxActivityList;
+    }
+
+    public void setZxActivityList(List<ZxActivity> zxActivityList) {
+        this.zxActivityList = zxActivityList;
+    }
+
+    public List<ZxSpeak> getZxSpeakList() {
+        return zxSpeakList;
+    }
+
+    public void setZxSpeakList(List<ZxSpeak> zxSpeakList) {
+        this.zxSpeakList = zxSpeakList;
+    }
+
+    @Override
+    public String toString() {
+        return "MemberInfoVo{" +
+                "memberInfo=" + memberInfo +
+                ", proposalInfoList=" + proposalInfoList +
+                ", sqmyInfoList=" + sqmyInfoList +
+                ", zxConferenceList=" + zxConferenceList +
+                ", zxActivityList=" + zxActivityList +
+                ", zxSpeakList=" + zxSpeakList +
+                '}';
+    }
+}

+ 100 - 0
ruoyi-system/src/main/java/com/ruoyi/system/mapper/ZxActivityMapper.java

@@ -0,0 +1,100 @@
+package com.ruoyi.system.mapper;
+
+import com.ruoyi.system.domain.activity.ZxActivity;
+import com.ruoyi.system.domain.activity.ZxActivityUser;
+
+import java.util.List;
+
+
+/**
+ * 政协活动Mapper接口
+ * 
+ * @author boman
+ * @date 2024-03-14
+ */
+public interface ZxActivityMapper 
+{
+    /**
+     * 查询政协活动
+     * 
+     * @param activityId 政协活动主键
+     * @return 政协活动
+     */
+    public ZxActivity selectZxActivityByActivityId(Long activityId);
+    /**
+     * 查询政协活动人员详情
+     *
+     * @param activityId 政协活动主键
+     * @return 政协活动
+     */
+    public List<ZxActivityUser> selectZxActivityUserByActivityId(Long activityId);
+
+    /**
+     * 查询政协活动列表
+     * 
+     * @param zxActivity 政协活动
+     * @return 政协活动集合
+     */
+    public List<ZxActivity> selectZxActivityList(ZxActivity zxActivity);
+
+    /**
+     * 新增政协活动
+     * 
+     * @param zxActivity 政协活动
+     * @return 结果
+     */
+    public int insertZxActivity(ZxActivity zxActivity);
+    /**
+     * 修改活动答复信息
+     */
+    public int updateReply(ZxActivityUser zxActivityUser);
+
+    /**
+     * 修改政协活动
+     * 
+     * @param zxActivity 政协活动
+     * @return 结果
+     */
+    public int updateZxActivity(ZxActivity zxActivity);
+
+    /**
+     * 删除政协活动
+     * 
+     * @param activityId 政协活动主键
+     * @return 结果
+     */
+    public int deleteZxActivityByActivityId(Long activityId);
+
+    /**
+     * 批量删除政协活动
+     * 
+     * @param activityIds 需要删除的数据主键集合
+     * @return 结果
+     */
+    public int deleteZxActivityByActivityIds(Long[] activityIds);
+
+    /**
+     * 批量删除政协活动-用户关联
+     * 
+     * @param activityIds 需要删除的数据主键集合
+     * @return 结果
+     */
+    public int deleteZxActivityUserByActivityIds(Long[] activityIds);
+    
+    /**
+     * 批量新增政协活动-用户关联
+     * 
+     * @param zxActivityUserList 政协活动-用户关联列表
+     * @return 结果
+     */
+    public int batchZxActivityUser(List<ZxActivityUser> zxActivityUserList);
+    
+
+    /**
+     * 通过政协活动主键删除政协活动-用户关联信息
+     * 
+     * @param activityId 政协活动ID
+     * @return 结果
+     */
+    public int deleteZxActivityUserByActivityId(Long activityId);
+}

+ 7 - 0
ruoyi-system/src/main/java/com/ruoyi/system/service/IMemberInfoService.java

@@ -2,6 +2,8 @@ package com.ruoyi.system.service;
 
 
 
 
 import com.ruoyi.system.domain.member.MemberInfo;
 import com.ruoyi.system.domain.member.MemberInfo;
+import com.ruoyi.system.domain.vo.MemberInfoVo;
+
 import java.util.List;
 import java.util.List;
 
 
 /**
 /**
@@ -20,6 +22,11 @@ public interface IMemberInfoService
      */
      */
     public MemberInfo selectMemberInfoByMemberId(Long memberId);
     public MemberInfo selectMemberInfoByMemberId(Long memberId);
 
 
+    /**
+     * 获取委员履职信息详细信息
+     */
+    public MemberInfoVo getInfoJop(Long memberId);
+
     /**
     /**
      * 查询委员信息列表
      * 查询委员信息列表
      * 
      * 

+ 74 - 0
ruoyi-system/src/main/java/com/ruoyi/system/service/IZxActivityService.java

@@ -0,0 +1,74 @@
+package com.ruoyi.system.service;
+
+import com.ruoyi.system.domain.activity.ZxActivity;
+import com.ruoyi.system.domain.activity.ZxActivityUser;
+
+import java.util.List;
+
+/**
+ * 政协活动Service接口
+ * 
+ * @author boman
+ * @date 2024-03-14
+ */
+public interface IZxActivityService 
+{
+    /**
+     * 查询政协活动
+     * 
+     * @param activityId 政协活动主键
+     * @return 政协活动
+     */
+    public ZxActivity selectZxActivityByActivityId(Long activityId);
+    /**
+     * 查询政协活动人员详情
+     *
+     * @param activityId 政协活动主键
+     * @return 政协活动
+     */
+    public List<ZxActivityUser> selectZxActivityUserByActivityId(Long activityId);
+
+    /**
+     * 查询政协活动列表
+     * 
+     * @param zxActivity 政协活动
+     * @return 政协活动集合
+     */
+    public List<ZxActivity> selectZxActivityList(ZxActivity zxActivity);
+
+    /**
+     * 新增政协活动
+     * 
+     * @param zxActivity 政协活动
+     * @return 结果
+     */
+    public int insertZxActivity(ZxActivity zxActivity);
+    /**
+     * 修改活动答复信息
+     */
+    public int updateReply(ZxActivityUser zxActivityUser);
+
+    /**
+     * 修改政协活动
+     * 
+     * @param zxActivity 政协活动
+     * @return 结果
+     */
+    public int updateZxActivity(ZxActivity zxActivity);
+
+    /**
+     * 批量删除政协活动
+     * 
+     * @param activityIds 需要删除的政协活动主键集合
+     * @return 结果
+     */
+    public int deleteZxActivityByActivityIds(Long[] activityIds);
+
+    /**
+     * 删除政协活动信息
+     * 
+     * @param activityId 政协活动主键
+     * @return 结果
+     */
+    public int deleteZxActivityByActivityId(Long activityId);
+}

+ 44 - 0
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/MemberInfoServiceImpl.java

@@ -3,7 +3,14 @@ package com.ruoyi.system.service.impl;
 
 
 import com.ruoyi.common.utils.DateUtils;
 import com.ruoyi.common.utils.DateUtils;
 import com.ruoyi.common.utils.SecurityUtils;
 import com.ruoyi.common.utils.SecurityUtils;
+import com.ruoyi.system.domain.activity.ZxActivity;
+import com.ruoyi.system.domain.conference.ZxConference;
 import com.ruoyi.system.domain.member.MemberInfo;
 import com.ruoyi.system.domain.member.MemberInfo;
+import com.ruoyi.system.domain.speak.ZxSpeak;
+import com.ruoyi.system.domain.vo.MemberInfoVo;
+import com.ruoyi.system.mapper.ZxActivityMapper;
+import com.ruoyi.system.mapper.ZxConferenceMapper;
+import com.ruoyi.system.mapper.ZxSpeakMapper;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.stereotype.Service;
 import com.ruoyi.system.mapper.MemberInfoMapper;
 import com.ruoyi.system.mapper.MemberInfoMapper;
@@ -22,6 +29,12 @@ public class MemberInfoServiceImpl implements IMemberInfoService
 {
 {
     @Autowired
     @Autowired
     private MemberInfoMapper memberInfoMapper;
     private MemberInfoMapper memberInfoMapper;
+    @Autowired
+    private ZxConferenceMapper zxConferenceMapper;
+    @Autowired
+    private ZxActivityMapper zxActivityMapper;
+    @Autowired
+    private ZxSpeakMapper zxSpeakMapper;
 
 
     /**
     /**
      * 查询委员信息
      * 查询委员信息
@@ -35,6 +48,37 @@ public class MemberInfoServiceImpl implements IMemberInfoService
         return memberInfoMapper.selectMemberInfoByMemberId(memberId);
         return memberInfoMapper.selectMemberInfoByMemberId(memberId);
     }
     }
 
 
+    /**
+     * 获取委员履职信息详细信息
+     */
+    @Override
+    public MemberInfoVo getInfoJop(Long memberId) {
+        MemberInfoVo  memberInfoVo = new MemberInfoVo();
+        MemberInfo memberInfo = memberInfoMapper.selectMemberInfoByMemberId(memberId);
+        memberInfoVo.setMemberInfo(memberInfo);
+        //todo 提案/社情民意还有联民提案的
+        ZxConference zxConference = new ZxConference();
+        zxConference.setUserId(SecurityUtils.getUserId());
+        List<ZxConference> zxConferences = zxConferenceMapper.selectZxConferenceList(zxConference);
+
+        if (zxConferences != null){
+            memberInfoVo.setZxConferenceList(zxConferences);
+        }
+        ZxActivity zxActivity = new ZxActivity();
+        zxActivity.setUserId(SecurityUtils.getUserId());
+        List<ZxActivity> zxActivities = zxActivityMapper.selectZxActivityList(zxActivity);
+        if (zxActivities != null){
+            memberInfoVo.setZxActivityList(zxActivities);
+        }
+        ZxSpeak zxSpeak = new ZxSpeak();
+        zxSpeak.setUserId(SecurityUtils.getUserId());
+        List<ZxSpeak> zxSpeaks = zxSpeakMapper.selectZxSpeakList(zxSpeak);
+        if (zxSpeaks != null){
+            memberInfoVo.setZxSpeakList(zxSpeaks);
+        }
+        return memberInfoVo;
+    }
+
     /**
     /**
      * 查询委员信息列表
      * 查询委员信息列表
      * 
      * 

+ 163 - 0
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/ZxActivityServiceImpl.java

@@ -0,0 +1,163 @@
+package com.ruoyi.system.service.impl;
+
+
+import com.ruoyi.common.utils.DateUtils;
+import com.ruoyi.common.utils.SecurityUtils;
+import com.ruoyi.system.domain.activity.ZxActivity;
+import com.ruoyi.system.domain.activity.ZxActivityUser;
+import com.ruoyi.system.domain.conference.ZxConference;
+import com.ruoyi.system.domain.conference.ZxConferenceUser;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import com.ruoyi.common.utils.StringUtils;
+import org.springframework.transaction.annotation.Transactional;
+import com.ruoyi.system.mapper.ZxActivityMapper;
+import com.ruoyi.system.service.IZxActivityService;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * 政协活动Service业务层处理
+ *
+ * @author boman
+ * @date 2024-03-14
+ */
+@Service
+public class ZxActivityServiceImpl implements IZxActivityService {
+    @Autowired
+    private ZxActivityMapper zxActivityMapper;
+
+    /**
+     * 查询政协活动
+     *
+     * @param activityId 政协活动主键
+     * @return 政协活动
+     */
+    @Override
+    public ZxActivity selectZxActivityByActivityId(Long activityId) {
+        return zxActivityMapper.selectZxActivityByActivityId(activityId);
+    }
+
+    /**
+     * 查询政协活动人员详情
+     *
+     * @param activityId 政协活动主键
+     * @return 政协活动
+     */
+    @Override
+    public List<ZxActivityUser> selectZxActivityUserByActivityId(Long activityId) {
+        return zxActivityMapper.selectZxActivityUserByActivityId(activityId);
+    }
+
+    /**
+     * 查询政协活动列表
+     *
+     * @param zxActivity 政协活动
+     * @return 政协活动
+     */
+    @Override
+    public List<ZxActivity> selectZxActivityList(ZxActivity zxActivity) {
+        List<ZxActivity> zxActivities = zxActivityMapper.selectZxActivityList(zxActivity);
+        if (zxActivities != null && zxActivities.size() > 0) {
+            long count;
+            for (ZxActivity activity : zxActivities) {
+                List<ZxActivityUser> zxActivityUserList = activity.getZxActivityUserList();
+                activity.setRead("0");
+                activity.setNoRead("0");
+                if (zxActivityUserList != null && zxActivityUserList.size() > 0) {
+                    //找出答复字段不是null的
+                    count = zxActivityUserList.stream().filter(e -> e.getIsJoin() != null).count();
+                    activity.setRead(count + "");
+                    activity.setNoRead(String.valueOf(zxActivityUserList.size() - count));
+                }
+            }
+        }
+        return zxActivities;
+    }
+
+    /**
+     * 新增政协活动
+     *
+     * @param zxActivity 政协活动
+     * @return 结果
+     */
+    @Transactional(rollbackFor = Exception.class)
+    @Override
+    public int insertZxActivity(ZxActivity zxActivity) {
+        zxActivity.setCreateTime(DateUtils.getNowDate());
+        int rows = zxActivityMapper.insertZxActivity(zxActivity);
+        insertZxActivityUser(zxActivity);
+        return rows;
+    }
+
+    /**
+     * 修改活动答复信息
+     */
+    @Override
+    public int updateReply(ZxActivityUser zxActivityUser) {
+        zxActivityUser.setUserId(SecurityUtils.getUserId());
+        return zxActivityMapper.updateReply(zxActivityUser);
+    }
+
+    /**
+     * 修改政协活动
+     *
+     * @param zxActivity 政协活动
+     * @return 结果
+     */
+    @Transactional(rollbackFor = Exception.class)
+    @Override
+    public int updateZxActivity(ZxActivity zxActivity) {
+        zxActivity.setUpdateTime(DateUtils.getNowDate());
+        zxActivityMapper.deleteZxActivityUserByActivityId(zxActivity.getActivityId());
+        insertZxActivityUser(zxActivity);
+        return zxActivityMapper.updateZxActivity(zxActivity);
+    }
+
+    /**
+     * 批量删除政协活动
+     *
+     * @param activityIds 需要删除的政协活动主键
+     * @return 结果
+     */
+    @Transactional(rollbackFor = Exception.class)
+    @Override
+    public int deleteZxActivityByActivityIds(Long[] activityIds) {
+        zxActivityMapper.deleteZxActivityUserByActivityIds(activityIds);
+        return zxActivityMapper.deleteZxActivityByActivityIds(activityIds);
+    }
+
+    /**
+     * 删除政协活动信息
+     *
+     * @param activityId 政协活动主键
+     * @return 结果
+     */
+    @Transactional(rollbackFor = Exception.class)
+    @Override
+    public int deleteZxActivityByActivityId(Long activityId) {
+        zxActivityMapper.deleteZxActivityUserByActivityId(activityId);
+        return zxActivityMapper.deleteZxActivityByActivityId(activityId);
+    }
+
+    /**
+     * 新增政协活动-用户关联信息
+     *
+     * @param zxActivity 政协活动对象
+     */
+    public void insertZxActivityUser(ZxActivity zxActivity) {
+        List<ZxActivityUser> zxActivityUserList = zxActivity.getZxActivityUserList();
+        Long activityId = zxActivity.getActivityId();
+        if (StringUtils.isNotNull(zxActivityUserList)) {
+            List<ZxActivityUser> list = new ArrayList<ZxActivityUser>();
+            for (ZxActivityUser zxActivityUser : zxActivityUserList) {
+                zxActivityUser.setActivityId(activityId);
+                list.add(zxActivityUser);
+            }
+            if (list.size() > 0) {
+                zxActivityMapper.batchZxActivityUser(list);
+            }
+        }
+    }
+}

+ 4 - 2
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/ZxConferenceServiceImpl.java

@@ -2,6 +2,7 @@ package com.ruoyi.system.service.impl;
 
 
 
 
 import com.ruoyi.common.utils.DateUtils;
 import com.ruoyi.common.utils.DateUtils;
+import com.ruoyi.common.utils.SecurityUtils;
 import com.ruoyi.system.domain.conference.ZxConference;
 import com.ruoyi.system.domain.conference.ZxConference;
 import com.ruoyi.system.domain.conference.ZxConferenceUser;
 import com.ruoyi.system.domain.conference.ZxConferenceUser;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -111,6 +112,7 @@ public class ZxConferenceServiceImpl implements IZxConferenceService {
      */
      */
     @Override
     @Override
     public int updateReply(ZxConferenceUser zxConferenceUser) {
     public int updateReply(ZxConferenceUser zxConferenceUser) {
+        zxConferenceUser.setUserId(SecurityUtils.getUserId());
         return zxConferenceMapper.updateReply(zxConferenceUser);
         return zxConferenceMapper.updateReply(zxConferenceUser);
     }
     }
 
 
@@ -120,7 +122,7 @@ public class ZxConferenceServiceImpl implements IZxConferenceService {
      * @param conferenceIds 需要删除的政协会议活动主键
      * @param conferenceIds 需要删除的政协会议活动主键
      * @return 结果
      * @return 结果
      */
      */
-    @Transactional
+    @Transactional(rollbackFor = Exception.class)
     @Override
     @Override
     public int deleteZxConferenceByConferenceIds(Long[] conferenceIds) {
     public int deleteZxConferenceByConferenceIds(Long[] conferenceIds) {
         zxConferenceMapper.deleteZxConferenceUserByConferenceIds(conferenceIds);
         zxConferenceMapper.deleteZxConferenceUserByConferenceIds(conferenceIds);
@@ -133,7 +135,7 @@ public class ZxConferenceServiceImpl implements IZxConferenceService {
      * @param conferenceId 政协会议活动主键
      * @param conferenceId 政协会议活动主键
      * @return 结果
      * @return 结果
      */
      */
-    @Transactional
+    @Transactional(rollbackFor = Exception.class)
     @Override
     @Override
     public int deleteZxConferenceByConferenceId(Long conferenceId) {
     public int deleteZxConferenceByConferenceId(Long conferenceId) {
         zxConferenceMapper.deleteZxConferenceUserByConferenceId(conferenceId);
         zxConferenceMapper.deleteZxConferenceUserByConferenceId(conferenceId);

+ 179 - 0
ruoyi-system/src/main/resources/mapper/system/ZxActivityMapper.xml

@@ -0,0 +1,179 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper
+PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.ruoyi.system.mapper.ZxActivityMapper">
+    
+    <resultMap type="ZxActivity" id="ZxActivityResult">
+        <result property="activityId"    column="activity_id"    />
+        <result property="activityTitle"    column="activity_title"    />
+        <result property="activityDate"    column="activity_date"    />
+        <result property="activityTime"    column="activity_time"    />
+        <result property="activityAddress"    column="activity_address"    />
+        <result property="activityType"    column="activity_type"    />
+        <result property="activityDetails"    column="activity_details"    />
+        <result property="publishTime"    column="publish_time"    />
+        <result property="publishDept"    column="publish_dept"    />
+        <result property="publishDeptId"    column="publish_dept_id"    />
+        <result property="createBy"    column="create_by"    />
+        <result property="createTime"    column="create_time"    />
+        <result property="updateBy"    column="update_by"    />
+        <result property="updateTime"    column="update_time"    />
+        <result property="remark"    column="remark"    />
+    </resultMap>
+
+    <resultMap id="ZxActivityZxActivityUserResult" type="ZxActivity" extends="ZxActivityResult">
+        <collection property="zxActivityUserList" notNullColumn="sub_activity_id" javaType="java.util.List" resultMap="ZxActivityUserResult" />
+    </resultMap>
+
+    <resultMap type="ZxActivityUser" id="ZxActivityUserResult">
+        <result property="activityId"    column="sub_activity_id"    />
+        <result property="userId"    column="sub_user_id"    />
+        <result property="userName"    column="sub_user_name"    />
+        <result property="postName"    column="sub_post_name"    />
+        <result property="userLevel"    column="sub_user_level"    />
+        <result property="replyTime"    column="sub_reply_time"    />
+        <result property="isJoin"    column="sub_is_join"    />
+        <result property="leaveType"    column="sub_leave_type"    />
+        <result property="leaveReason"    column="sub_leave_reason"    />
+        <result property="signIn"    column="sub_sign_in"    />
+        <result property="createBy"    column="sub_create_by"    />
+        <result property="createTime"    column="sub_create_time"    />
+        <result property="updateBy"    column="sub_update_by"    />
+        <result property="updateTime"    column="sub_update_time"    />
+        <result property="remark"    column="sub_remark"    />
+    </resultMap>
+
+    <sql id="selectZxActivityVo">
+        select activity_id, activity_title, activity_date, activity_time, activity_address, activity_type, activity_details, publish_time, publish_dept, publish_dept_id, create_by, create_time, update_by, update_time, remark from zx_activity
+    </sql>
+
+    <select id="selectZxActivityList" parameterType="ZxActivity" resultMap="ZxActivityResult">
+        select a.activity_id, a.activity_title, a.activity_date, a.activity_time, a.activity_address, a.activity_type, a.activity_details, a.publish_time, a.publish_dept, a.publish_dept_id, a.create_by, a.create_time, a.update_by, a.update_time, a.remark,
+        b.activity_id as sub_activity_id, b.user_id as sub_user_id, b.user_name as sub_user_name, b.post_name as sub_post_name, b.user_level as sub_user_level, b.reply_time as sub_reply_time, b.is_join as sub_is_join, b.leave_type as sub_leave_type, b.leave_reason as sub_leave_reason, b.sign_in as sub_sign_in, b.create_by as sub_create_by, b.create_time as sub_create_time, b.update_by as sub_update_by, b.update_time as sub_update_time, b.remark as sub_remark
+        from zx_activity a
+        left join zx_activity_user b on b.activity_id = a.activity_id
+        <where>  
+            <if test="activityTitle != null  and activityTitle != ''"> and a.activity_title = #{activityTitle}</if>
+            <if test="activityDate != null "> and a.activity_date = #{activityDate}</if>
+            <if test="activityTime != null  and activityTime != ''"> and a.activity_time = #{activityTime}</if>
+            <if test="activityAddress != null  and activityAddress != ''"> and a.activity_address = #{activityAddress}</if>
+            <if test="activityType != null  and activityType != ''"> and a.activity_type = #{activityType}</if>
+            <if test="activityDetails != null  and activityDetails != ''"> and a.activity_details = #{activityDetails}</if>
+            <if test="publishTime != null "> and a.publish_time = #{publishTime}</if>
+            <if test="publishDept != null  and publishDept != ''"> and a.publish_dept = #{publishDept}</if>
+            <if test="publishDeptId != null "> and a.publish_dept_id = #{publishDeptId}</if>
+            <if test="userId != null "> and b.user_id = #{userId}</if>
+        </where>
+        order by a.publish_time DESC
+    </select>
+    
+    <select id="selectZxActivityByActivityId" parameterType="Long" resultMap="ZxActivityZxActivityUserResult">
+        select a.activity_id, a.activity_title, a.activity_date, a.activity_time, a.activity_address, a.activity_type, a.activity_details, a.publish_time, a.publish_dept, a.publish_dept_id, a.create_by, a.create_time, a.update_by, a.update_time, a.remark,
+ b.activity_id as sub_activity_id, b.user_id as sub_user_id, b.user_name as sub_user_name, b.post_name as sub_post_name, b.user_level as sub_user_level, b.reply_time as sub_reply_time, b.is_join as sub_is_join, b.leave_type as sub_leave_type, b.leave_reason as sub_leave_reason, b.sign_in as sub_sign_in, b.create_by as sub_create_by, b.create_time as sub_create_time, b.update_by as sub_update_by, b.update_time as sub_update_time, b.remark as sub_remark
+        from zx_activity a
+        left join zx_activity_user b on b.activity_id = a.activity_id
+        where a.activity_id = #{activityId}
+    </select>
+    <select id="selectZxActivityUserByActivityId" resultMap="ZxActivityUserResult">
+        select b.activity_id as sub_activity_id, b.user_id as sub_user_id, b.user_name as sub_user_name, b.post_name as sub_post_name, b.user_level as sub_user_level, b.reply_time as sub_reply_time, b.is_join as sub_is_join, b.leave_type as sub_leave_type, b.leave_reason as sub_leave_reason, b.sign_in as sub_sign_in, b.create_by as sub_create_by, b.create_time as sub_create_time, b.update_by as sub_update_by, b.update_time as sub_update_time, b.remark as sub_remark
+        from  zx_activity_user b
+        where b.activity_id = #{activityId}
+    </select>
+
+    <insert id="insertZxActivity" parameterType="ZxActivity" useGeneratedKeys="true" keyProperty="activityId">
+        insert into zx_activity
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+            <if test="activityTitle != null and activityTitle != ''">activity_title,</if>
+            <if test="activityDate != null">activity_date,</if>
+            <if test="activityTime != null">activity_time,</if>
+            <if test="activityAddress != null and activityAddress != ''">activity_address,</if>
+            <if test="activityType != null and activityType != ''">activity_type,</if>
+            <if test="activityDetails != null">activity_details,</if>
+            <if test="publishTime != null">publish_time,</if>
+            <if test="publishDept != null">publish_dept,</if>
+            <if test="publishDeptId != null">publish_dept_id,</if>
+            <if test="createBy != null">create_by,</if>
+            <if test="createTime != null">create_time,</if>
+            <if test="updateBy != null">update_by,</if>
+            <if test="updateTime != null">update_time,</if>
+            <if test="remark != null">remark,</if>
+         </trim>
+        <trim prefix="values (" suffix=")" suffixOverrides=",">
+            <if test="activityTitle != null and activityTitle != ''">#{activityTitle},</if>
+            <if test="activityDate != null">#{activityDate},</if>
+            <if test="activityTime != null">#{activityTime},</if>
+            <if test="activityAddress != null and activityAddress != ''">#{activityAddress},</if>
+            <if test="activityType != null and activityType != ''">#{activityType},</if>
+            <if test="activityDetails != null">#{activityDetails},</if>
+            <if test="publishTime != null">#{publishTime},</if>
+            <if test="publishDept != null">#{publishDept},</if>
+            <if test="publishDeptId != null">#{publishDeptId},</if>
+            <if test="createBy != null">#{createBy},</if>
+            <if test="createTime != null">#{createTime},</if>
+            <if test="updateBy != null">#{updateBy},</if>
+            <if test="updateTime != null">#{updateTime},</if>
+            <if test="remark != null">#{remark},</if>
+         </trim>
+    </insert>
+
+    <update id="updateZxActivity" parameterType="ZxActivity">
+        update zx_activity
+        <trim prefix="SET" suffixOverrides=",">
+            <if test="activityTitle != null and activityTitle != ''">activity_title = #{activityTitle},</if>
+            <if test="activityDate != null">activity_date = #{activityDate},</if>
+            <if test="activityTime != null">activity_time = #{activityTime},</if>
+            <if test="activityAddress != null and activityAddress != ''">activity_address = #{activityAddress},</if>
+            <if test="activityType != null and activityType != ''">activity_type = #{activityType},</if>
+            <if test="activityDetails != null">activity_details = #{activityDetails},</if>
+            <if test="publishTime != null">publish_time = #{publishTime},</if>
+            <if test="publishDept != null">publish_dept = #{publishDept},</if>
+            <if test="publishDeptId != null">publish_dept_id = #{publishDeptId},</if>
+            <if test="createBy != null">create_by = #{createBy},</if>
+            <if test="createTime != null">create_time = #{createTime},</if>
+            <if test="updateBy != null">update_by = #{updateBy},</if>
+            <if test="updateTime != null">update_time = #{updateTime},</if>
+            <if test="remark != null">remark = #{remark},</if>
+        </trim>
+        where activity_id = #{activityId}
+    </update>
+    <update id="updateReply" parameterType="ZxActivityUser">
+        update zx_activity_user
+        <trim prefix="SET" suffixOverrides=",">
+            <if test="isJoin != null and isJoin != ''">is_join = #{isJoin},</if>
+            <if test="leaveType != null and leaveType != ''">leave_type = #{leaveType},</if>
+            <if test="leaveReason != null and leaveReason != ''">leave_reason = #{leaveReason},</if>
+            <if test="signIn != null and signIn != ''">sign_in = #{signIn},</if>
+        </trim>
+        where activity_id = #{activityId} and user_id = #{userId}
+    </update>
+
+    <delete id="deleteZxActivityByActivityId" parameterType="Long">
+        delete from zx_activity where activity_id = #{activityId}
+    </delete>
+
+    <delete id="deleteZxActivityByActivityIds" parameterType="String">
+        delete from zx_activity where activity_id in 
+        <foreach item="activityId" collection="array" open="(" separator="," close=")">
+            #{activityId}
+        </foreach>
+    </delete>
+    
+    <delete id="deleteZxActivityUserByActivityIds" parameterType="String">
+        delete from zx_activity_user where activity_id in 
+        <foreach item="activityId" collection="array" open="(" separator="," close=")">
+            #{activityId}
+        </foreach>
+    </delete>
+
+    <delete id="deleteZxActivityUserByActivityId" parameterType="Long">
+        delete from zx_activity_user where activity_id = #{activityId}
+    </delete>
+
+    <insert id="batchZxActivityUser">
+        insert into zx_activity_user( activity_id, user_id, user_name, post_name, user_level, reply_time, is_join, leave_type, leave_reason, sign_in, create_by, create_time, update_by, update_time, remark) values
+		<foreach item="item" index="index" collection="list" separator=",">
+            ( #{item.activityId}, #{item.userId}, #{item.userName}, #{item.postName}, #{item.userLevel}, #{item.replyTime}, #{item.isJoin}, #{item.leaveType}, #{item.leaveReason}, #{item.signIn}, #{item.createBy}, #{item.createTime}, #{item.updateBy}, #{item.updateTime}, #{item.remark})
+        </foreach>
+    </insert>
+</mapper>

+ 1 - 1
ruoyi-system/src/main/resources/mapper/system/ZxConferenceMapper.xml

@@ -154,7 +154,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
     <insert id="batchZxConferenceUser">
     <insert id="batchZxConferenceUser">
         insert into zx_conference_user( conference_id, user_id, user_name, post_name, user_level, reply_time, is_join, leave_type, leave_reason, sign_in ,create_by, create_time, update_by, update_time, remark) values
         insert into zx_conference_user( conference_id, user_id, user_name, post_name, user_level, reply_time, is_join, leave_type, leave_reason, sign_in ,create_by, create_time, update_by, update_time, remark) values
 		<foreach item="item" index="index" collection="list" separator=",">
 		<foreach item="item" index="index" collection="list" separator=",">
-            ( #{item.conferenceId}, #{item.userId}, #{item.userName}, #{item.postName}, #{item.userLevel}, #{item.replyTime}, #{item.isJoin}, #{item.leaveType}, #{item.leaveReason},#{item.signIn}, #{item.createBy}, #{item.createTime}, #{item.updateBy}, #{item.updateTime}, #{item.remark})
+            ( #{item.conferenceId}, #{item.userId}, #{item.userName}, #{item.postName}, #{item.userLevel}, #{item.replyTime}, #{item.isJoin}, #{item.leaveType}, #{item.leaveReason},#{item.signIn}, #{item.createBy}, sysdate(), #{item.updateBy}, #{item.updateTime}, #{item.remark})
         </foreach>
         </foreach>
     </insert>
     </insert>
 </mapper>
 </mapper>

+ 11 - 6
ruoyi-system/src/main/resources/mapper/system/ZxSpeakMapper.xml

@@ -7,7 +7,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
     <resultMap type="ZxSpeak" id="ZxSpeakResult">
     <resultMap type="ZxSpeak" id="ZxSpeakResult">
         <result property="speakId"    column="speak_id"    />
         <result property="speakId"    column="speak_id"    />
         <result property="speakTitle"    column="speak_title"    />
         <result property="speakTitle"    column="speak_title"    />
-        <result property="speakName"    column="speak_name"    />
+        <result property="name"    column="name"    />
+        <result property="userId"    column="user_id"    />
         <result property="inputName"    column="input_name"    />
         <result property="inputName"    column="input_name"    />
         <result property="conferenceId"    column="conference_id"    />
         <result property="conferenceId"    column="conference_id"    />
         <result property="conferenceTitle"    column="conference_title"    />
         <result property="conferenceTitle"    column="conference_title"    />
@@ -25,14 +26,14 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
     </resultMap>
     </resultMap>
 
 
     <sql id="selectZxSpeakVo">
     <sql id="selectZxSpeakVo">
-        select speak_id, speak_title, speak_name, input_name, conference_id,conference_title, speak_unit,dept_id, speak_type, speak_time, publish_time, speak_status, create_by, create_time, update_by, update_time, remark from zx_speak
+        select speak_id, speak_title, name,user_id, input_name, conference_id,conference_title, speak_unit,dept_id, speak_type, speak_time, publish_time, speak_status, create_by, create_time, update_by, update_time, remark from zx_speak
     </sql>
     </sql>
 
 
     <select id="selectZxSpeakList" parameterType="ZxSpeak" resultMap="ZxSpeakResult">
     <select id="selectZxSpeakList" parameterType="ZxSpeak" resultMap="ZxSpeakResult">
         <include refid="selectZxSpeakVo"/>
         <include refid="selectZxSpeakVo"/>
         <where>  
         <where>  
             <if test="speakTitle != null  and speakTitle != ''"> and speak_title = #{speakTitle}</if>
             <if test="speakTitle != null  and speakTitle != ''"> and speak_title = #{speakTitle}</if>
-            <if test="speakName != null  and speakName != ''"> and speak_name like concat('%', #{speakName}, '%')</if>
+            <if test="name != null  and name != ''"> and name like concat('%', #{name}, '%')</if>
             <if test="inputName != null  and inputName != ''"> and input_name like concat('%', #{inputName}, '%')</if>
             <if test="inputName != null  and inputName != ''"> and input_name like concat('%', #{inputName}, '%')</if>
             <if test="conferenceId != null "> and conference_id = #{conferenceId}</if>
             <if test="conferenceId != null "> and conference_id = #{conferenceId}</if>
             <if test="conferenceTitle != null and conferenceTitle != ''"> and conference_title = #{conferenceTitle}</if>
             <if test="conferenceTitle != null and conferenceTitle != ''"> and conference_title = #{conferenceTitle}</if>
@@ -42,6 +43,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="speakTime != null "> and speak_time = #{speakTime}</if>
             <if test="speakTime != null "> and speak_time = #{speakTime}</if>
             <if test="publishTime != null "> and publish_time = #{publishTime}</if>
             <if test="publishTime != null "> and publish_time = #{publishTime}</if>
             <if test="speakStatus != null  and speakStatus != ''"> and speak_status = #{speakStatus}</if>
             <if test="speakStatus != null  and speakStatus != ''"> and speak_status = #{speakStatus}</if>
+            <if test="userId != null  "> and user_id = #{userId}</if>
         </where>
         </where>
     </select>
     </select>
     
     
@@ -54,7 +56,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         insert into zx_speak
         insert into zx_speak
         <trim prefix="(" suffix=")" suffixOverrides=",">
         <trim prefix="(" suffix=")" suffixOverrides=",">
             <if test="speakTitle != null and speakTitle != ''">speak_title,</if>
             <if test="speakTitle != null and speakTitle != ''">speak_title,</if>
-            <if test="speakName != null and speakName != ''">speak_name,</if>
+            <if test="name != null and name != ''">name,</if>
+            <if test="userId != null ">user_id,</if>
             <if test="inputName != null and inputName != ''">input_name,</if>
             <if test="inputName != null and inputName != ''">input_name,</if>
             <if test="conferenceId != null">conference_id,</if>
             <if test="conferenceId != null">conference_id,</if>
             <if test="conferenceTitle != null and conferenceTitle != ''">conference_title,</if>
             <if test="conferenceTitle != null and conferenceTitle != ''">conference_title,</if>
@@ -72,7 +75,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
          </trim>
          </trim>
         <trim prefix="values (" suffix=")" suffixOverrides=",">
         <trim prefix="values (" suffix=")" suffixOverrides=",">
             <if test="speakTitle != null and speakTitle != ''">#{speakTitle},</if>
             <if test="speakTitle != null and speakTitle != ''">#{speakTitle},</if>
-            <if test="speakName != null and speakName != ''">#{speakName},</if>
+            <if test="name != null and name != ''">#{name},</if>
+            <if test="userId != null and userId != ''">#{userId},</if>
             <if test="inputName != null and inputName != ''">#{inputName},</if>
             <if test="inputName != null and inputName != ''">#{inputName},</if>
             <if test="conferenceId != null">#{conferenceId},</if>
             <if test="conferenceId != null">#{conferenceId},</if>
             <if test="conferenceTitle != null and conferenceTitle != ''">#{conferenceTitle},</if>
             <if test="conferenceTitle != null and conferenceTitle != ''">#{conferenceTitle},</if>
@@ -94,7 +98,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         update zx_speak
         update zx_speak
         <trim prefix="SET" suffixOverrides=",">
         <trim prefix="SET" suffixOverrides=",">
             <if test="speakTitle != null and speakTitle != ''">speak_title = #{speakTitle},</if>
             <if test="speakTitle != null and speakTitle != ''">speak_title = #{speakTitle},</if>
-            <if test="speakName != null and speakName != ''">speak_name = #{speakName},</if>
+            <if test="name != null and name != ''">name = #{name},</if>
+            <if test="userId != null and userId != ''">user_id = #{userId},</if>
             <if test="inputName != null and inputName != ''">input_name = #{inputName},</if>
             <if test="inputName != null and inputName != ''">input_name = #{inputName},</if>
             <if test="conferenceId != null">conference_id = #{conferenceId},</if>
             <if test="conferenceId != null">conference_id = #{conferenceId},</if>
             <if test="conferenceTitle != null and conferenceTitle != ''">conference_title = #{conferenceTitle},</if>
             <if test="conferenceTitle != null and conferenceTitle != ''">conference_title = #{conferenceTitle},</if>