功能需求
点击市场活动名称链接,跳转到明细页面,查看市场活动明细
-市场活动的基本信息
-市场活动下所有的备注信息

功能分析

 流程图
 

代码实现
一、ActivityMapper
1.ActivityMapper接口
    /**
     * 点击名称,查看市场详细
     */
    Activity selectActivityForDetailById(String id); 
2.ActivityMapper映射文件,根据市场活动id查询Activity
 <select id="selectActivityForDetailById" resultMap="BaseResultMap">
        select a.id,
               u1.name as owner,
               a.name,
               a.start_date,
               a.end_date,
               a.cost,
               a.description,
               a.create_time,
               u2.name as create_by,
               a.edit_time,
               u3.name as edit_by
        from tbl_activity a
                 join tbl_user u1 on a.owner = u1.id
                 join tbl_user u2 on a.create_by = u2.id
                 left join tbl_user u3 on a.edit_by = u3.id
        where a.id = #{id}
 
 </select> 
二、ActivityService
	/**
	 * 点击名称,查看市场详细
	 */
	Activity queryActivityForDetail(String id); 
	@Override
	public Activity queryActivityForDetail(String id) {
		return activityMapper.selectActivityForDetailById(id);
	} 
三、ActivityController
	@RequestMapping("/workbench/activity/ActivityDetail.do")
	public String ActivityDetail(String id,HttpServletRequest request){
		// 调用activityService获取市场活动详细
		Activity activity = activityService.queryActivityForDetail(id);
		// 调用activityRemarkService,获取评论信息
		List<ActivityRemark> activityRemarksList = activityRemarkService.queryActivityRemarkByActId(id);
		// 保存在请求域
		request.setAttribute("activity",activity);
		request.setAttribute("activityRemarksList",activityRemarksList);
		return "workbench/activity/detail";
	} 
四、前端
1.index.jsp,给活动名称添加单击事件,参数是id

2.detail.jsp,
①详细信息
通过${域名称.属性}
如${activity.id}等价于${requestScope.get("activity").id}
<div style="position: relative; top: -70px;">
    <div style="position: relative; left: 40px; height: 30px;">
        <div style="width: 300px; color: gray;">所有者</div>
        <div style="width: 300px;position: relative; left: 200px; top: -20px;">
            <b>${requestScope.get("activity").owner}</b></div>
        <div style="width: 300px;position: relative; left: 450px; top: -40px; color: gray;">名称</div>
        <div style="width: 300px;position: relative; left: 650px; top: -60px;">
            <b>${requestScope.get("activity").name}</b></div>
        <div style="height: 1px; width: 400px; background: #D5D5D5; position: relative; top: -60px;"></div>
        <div style="height: 1px; width: 400px; background: #D5D5D5; position: relative; top: -60px; left: 450px;"></div>
    </div>
    <div style="position: relative; left: 40px; height: 30px; top: 10px;">
        <div style="width: 300px; color: gray;">开始日期</div>
        <div style="width: 300px;position: relative; left: 200px; top: -20px;">
            <b>${requestScope.get("activity").startDate}</b></div>
        <div style="width: 300px;position: relative; left: 450px; top: -40px; color: gray;">结束日期</div>
        <div style="width: 300px;position: relative; left: 650px; top: -60px;">
            <b>${requestScope.get("activity").endDate}</b></div>
        <div style="height: 1px; width: 400px; background: #D5D5D5; position: relative; top: -60px;"></div>
        <div style="height: 1px; width: 400px; background: #D5D5D5; position: relative; top: -60px; left: 450px;"></div>
    </div>
    <div style="position: relative; left: 40px; height: 30px; top: 20px;">
        <div style="width: 300px; color: gray;">成本</div>
        <div style="width: 300px;position: relative; left: 200px; top: -20px;">
            <b>${requestScope.get("activity").cost}</b></div>
        <div style="height: 1px; width: 400px; background: #D5D5D5; position: relative; top: -20px;"></div>
    </div>
    <div style="position: relative; left: 40px; height: 30px; top: 30px;">
        <div style="width: 300px; color: gray;">创建者</div>
        <div style="width: 500px;position: relative; left: 200px; top: -20px;">
            <b>${requestScope.get("activity").createBy}  </b><small
                style="font-size: 10px; color: gray;">${requestScope.get("activity").createTime}</small></div>
        <div style="height: 1px; width: 550px; background: #D5D5D5; position: relative; top: -20px;"></div>
    </div>
    <div style="position: relative; left: 40px; height: 30px; top: 40px;">
        <div style="width: 300px; color: gray;">修改者</div>
        <div style="width: 500px;position: relative; left: 200px; top: -20px;"><b>${requestScope.get("activity").editBy}  </b><small
                style="font-size: 10px; color: gray;">${requestScope.get("activity").editTime}</small></div>
        <div style="height: 1px; width: 550px; background: #D5D5D5; position: relative; top: -20px;"></div>
    </div>
    <div style="position: relative; left: 40px; height: 30px; top: 50px;">
        <div style="width: 300px; color: gray;">描述</div>
        <div style="width: 630px;position: relative; left: 200px; top: -20px;">
            <b>
                ${requestScope.get("activity").description}
            </b>
        </div>
        <div style="height: 1px; width: 850px; background: #D5D5D5; position: relative; top: -20px;"></div>
    </div>
</div> 
                


















