Просмотр исходного кода

Merge remote-tracking branch 'origin/matser' into matser

Li Yuan 1 год назад
Родитель
Сommit
497009cdde

+ 8 - 0
ibps-model-root/modules/org-model/src/main/java/com/lc/ibps/org/party/persistence/entity/PartyUserCalendarPo.java

@@ -10,5 +10,13 @@ public class PartyUserCalendarPo extends PartyUserCalendarTbl {
 
     private static final long serialVersionUID = -6087528775945803891L;
 
+    private int popUp;
 
+    public int getPopUp() {
+        return popUp;
+    }
+
+    public void setPopUp(int popUp) {
+        this.popUp = popUp;
+    }
 }

+ 11 - 1
ibps-model-root/modules/org-model/src/main/java/com/lc/ibps/org/party/persistence/entity/PartyUserCalendarTbl.java

@@ -49,8 +49,18 @@ public class PartyUserCalendarTbl extends AbstractPo<String> {
     protected String serialNum;
     @ApiModelProperty(value = "数据来源ID")
     protected String dataSourceId;
-    @ApiModelProperty(value = "s数据信息")
+    @ApiModelProperty(value = "数据信息")
     protected String dataInfo;
+    @ApiModelProperty(value = "标记日期")
+    protected String markDate;
+
+    public String getMarkDate() {
+        return markDate;
+    }
+
+    public void setMarkDate(String markDate) {
+        this.markDate = markDate;
+    }
 
     public String getDataSourceId() {
         return dataSourceId;

+ 7 - 3
ibps-model-root/modules/org-model/src/main/resources/com/lc/ibps/org/party/persistence/mapping/PartyUserCalendar.map.xml

@@ -20,23 +20,24 @@
         <result property="serialNum" column="serial_num_" jdbcType="VARCHAR"/>
         <result property="dataSourceId" column="data_source_id_" jdbcType="VARCHAR"/>
         <result property="dataInfo" column="data_info_" jdbcType="LONGVARCHAR"/>
+        <result property="markDate" column="mark_date_" jdbcType="VARCHAR"/>
     </resultMap>
 
     <sql id="columns">
         id_,tenant_id_,ip_,create_by_,create_time_,update_by_,update_time_,user_id_,di_dian_,user_name_,title_,content_,
-        start_time_,end_time_,emergency_state_,serial_num_,data_source_id_,data_info_
+        start_time_,end_time_,emergency_state_,serial_num_,data_source_id_,data_info_,mark_date_
     </sql>
 
     <insert id="create" parameterType="com.lc.ibps.org.party.persistence.entity.PartyUserCalendarPo">
         INSERT INTO IBPS_PARTY_USER_CALENDAR
         (ID_,TENANT_ID_,IP_,CREATE_BY_,CREATE_TIME_,UPDATE_BY_,UPDATE_TIME_,USER_ID_,DI_DIAN_,USER_NAME_,TITLE_,CONTENT_,
-         START_TIME_,END_TIME_,EMERGENCY_STATE_,SERIAL_NUM_,DATA_SOURCE_ID_,DATA_INFO_)
+         START_TIME_,END_TIME_,EMERGENCY_STATE_,SERIAL_NUM_,DATA_SOURCE_ID_,DATA_INFO_,MARK_DATE_)
         VALUES
         (#{id,jdbcType=VARCHAR}, #{tenantId,jdbcType=VARCHAR}, #{ip,jdbcType=VARCHAR},#{createBy,jdbcType=VARCHAR},
          #{createTime,jdbcType=TIMESTAMP},#{updateBy,jdbcType=VARCHAR},#{updateTime,jdbcType=TIMESTAMP},#{userId,jdbcType=VARCHAR},
          #{diDian,jdbcType=VARCHAR},#{userName,jdbcType=VARCHAR},#{title,jdbcType=VARCHAR},#{content,jdbcType=LONGVARCHAR},
          #{startTime,jdbcType=VARCHAR},#{endTime,jdbcType=VARCHAR},#{emergencyState,jdbcType=VARCHAR},#{serialNum,jdbcType=VARCHAR},
-         #{dataSourceId,jdbcType=VARCHAR},#{dataInfo,jdbcType=LONGVARCHAR})
+         #{dataSourceId,jdbcType=VARCHAR},#{dataInfo,jdbcType=LONGVARCHAR},#{markDate,jdbcType=VARCHAR})
     </insert>
 
     <select id="get"  parameterType="java.lang.String" resultMap="PartyUserCalendar">
@@ -82,6 +83,9 @@
             <if test=" dataInfo !=null and dataInfo !='' ">
                 ,DATA_INFO_ = #{dataInfo,jdbcType=LONGVARCHAR}
             </if>
+            <if test=" markDate !=null and markDate !='' ">
+            ,MARK_DATE_ = #{markDate,jdbcType=VARCHAR}
+            </if>
         WHERE ID_=#{id}
     </update>
 

+ 7 - 0
ibps-provider-base-root/modules/provider-platform-api/src/main/java/com/lc/ibps/common/api/IDesktopFacadeService.java

@@ -206,4 +206,11 @@ public interface IDesktopFacadeService {
 	@RequestMapping(value = "/calendar/remove", method = { RequestMethod.POST })
 	public APIResult<Void> removeCalendar(
 			@RequestParam(name = "calendarIds", required = true)String[] calendarIds);
+
+	/**
+	 * 根据id 标记该日历为已读(即当天不弹出提醒)
+	 */
+	@RequestMapping(value = "/calendar/markRead", method = { RequestMethod.POST })
+	public APIResult<Void> markReadCalendar(
+			@RequestParam(name = "calendarIds", required = true)String[] calendarIds);
 }

+ 31 - 0
ibps-provider-root/modules/provider-platform-default/src/main/java/com/lc/ibps/common/provider/DesktopFacadeProvider.java

@@ -62,6 +62,7 @@ import org.springframework.web.bind.annotation.RequestParam;
 
 import javax.annotation.Resource;
 import javax.validation.Valid;
+import java.text.SimpleDateFormat;
 import java.util.*;
 
 /**
@@ -241,7 +242,14 @@ public class DesktopFacadeProvider extends GenericProvider implements IDesktopFa
 	public APIResult<List<PartyUserCalendarPo>> findCalendarByUserId() {
 		APIResult<List<PartyUserCalendarPo>> result = new APIResult<>();
 		try {
+			SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
+			String currentDate = sdf.format(new Date());
 			List<PartyUserCalendarPo> calendarPoList = calendarRepository.findByUserId(ContextUtil.getCurrentUserId());
+			for (PartyUserCalendarPo bean : calendarPoList){
+				if (BeanUtils.isEmpty(bean.getMarkDate()) || !bean.getMarkDate().equals(currentDate)){
+					bean.setPopUp(1);// 标记为弹窗提醒
+				}
+			}
 			result.setData(calendarPoList);
 		} catch (Exception e) {
 			setExceptionResult(result, StateEnum.ERROR_SYSTEM_DESKTOP.getCode(), "查询日历日程异常!", e);
@@ -264,6 +272,29 @@ public class DesktopFacadeProvider extends GenericProvider implements IDesktopFa
 		return result;
 	}
 
+	@ApiOperation(value = "标记该日历为已读", notes = "标记该日历为已读")
+	@Override
+	public APIResult<Void> markReadCalendar(
+			@ApiParam(name = "calendarIds", value = "用户导航id数组", required = true)
+			@RequestParam(name = "calendarIds", required = true)String[] calendarIds) {
+		APIResult<Void> result = new APIResult<>();
+		try {
+			String currentDate = new SimpleDateFormat("yyyy-MM-dd").format(new Date());
+			PartyUserCalendarPo calendarPo = new PartyUserCalendarPo();
+			for (String id : calendarIds){
+				calendarPo.setId(id);
+				calendarPo.setUpdateTime(new Date());
+				calendarPo.setMarkDate(currentDate);
+				calendarPo.setUpdateBy(ContextUtil.getCurrentUserId());
+				calendarDao.update(calendarPo);
+			}
+			result.setMessage("标记用户日历日程成功!");
+		} catch (Exception e) {
+			setExceptionResult(result, StateEnum.ERROR_SYSTEM_DESKTOP.getCode(), "标记用户日历日程成功异常!", e);
+		}
+		return result;
+	}
+
 	@SuppressWarnings("unchecked")
 	@ApiOperation(value = "个人信息", notes = "个人信息")
 	@Override