投诉受理管理模块
接下来,就是来开发我们的投诉受理管理模块了…..我们来看看原型图与需求吧:
查询用户提交的投诉信息,可以根据投诉部门(部门A/B)、投诉时间段、状态进行查询。在列表信息中展示投诉标题、被投诉部门、被投诉人、投诉时间、状态(待受理、已受理、已失效)、操作;其中操作栏内内容为“处理”,点击“处理”则在打开的查询页面中查看具体的投诉信息并且可以多次回复投诉信息;一旦回复则说明已受理该投诉。
投诉详细信息:在本页面中首先要明显地展示出当前投诉是否已经受理;然后再显示投诉人信息、被投诉信息、受理信息(历史受理信息)三部分内容,并且在页面中可以无限次的对本次受理进行回复。投诉人信息包括:是否匿名投诉、投诉人单位、投诉人姓名、投诉人手机,如果是匿名投诉,则不显示投诉人单位、姓名并对手机号中间4位号码使用*号代替。被投诉信息包括:投诉时间、被投诉部门、被投诉人、投诉标题、投诉内容。受理信息:如果有多次回复则将多次的回复信息显示,显示内容包括回复时间、回复部门、回复人、受理回复内容;可以再次回复。
根据上面两张原型图以及文字说明,我们可以发现:一个投诉信息可对应多个回复。
在“工作主页”中点击“我要投诉”进入页面,添加内容包括:投诉标题、被投诉部门(部门A/B)、被投诉人、投诉详情、是否匿名投诉。
关键在于匿名投诉的那一部分,我们该怎么写….
统计:根据年度将相应年度的每个月的投诉数进行统计,并以图表的形式展示在页面中;在页面中可以选择查看当前年度及其前4年的投诉数。在页面中可以选择不同的年度,然后页面展示该年度的曲线统计图。
这个统计图,大概也需要用到组件来生成出来的吧???
自动投诉受理:在每个月月底最后一天对本月之前的投诉进行自动处理;将投诉信息的状态改为 已失效。在后台管理中不能对该类型投诉进行回复。
自动投诉受理??在每个月的最后一天判断投诉信息,程序对其自动受理。。
投诉受理开发
我们首先来画一个流程图看看它的大概思路是怎么样的:
Hibernate逆向工程
我们经过上面的分析,知道了:一个投诉信息可对应多个回复。是一对多的关系。我们下面使用powerdesginer来画出它的概念数据模型图
生成物理模型图:
生成数据库表:
/*==============================================================*/ /* DBMS name: MySQL 5.0 */ /* Created on: 2017/6/12 19:06:20 */ /*==============================================================*/ drop table if exists complain; drop table if exists complain_reply; /*==============================================================*/ /* Table: complain */ /*==============================================================*/ create table complain ( comp_id varchar(32) not null, comp_company varchar(100), comp_name varchar(20), comp_mobile varchar(20), is_NM bool, comp_time datetime, comp_title varchar(200) not null, to_comp_name varchar(20), to_comp_dept varchar(100), comp_content text, state varchar(1), primary key (comp_id) ); /*==============================================================*/ /* Table: complain_reply */ /*==============================================================*/ create table complain_reply ( reply_id varchar(32) not null, comp_id varchar(32) not null, replyer varchar(20), reply_dept varchar(100), reply_time datetime, reply_content varchar(300), primary key (reply_id) ); alter table complain_reply add constraint FK_comp_reply foreign key (comp_id) references complain (comp_id) on delete restrict on update restrict;
生成实体与配置文件:
Intellij idea下生成出来的映射文件是没有对应的关联关系的。也就是说:一对多或多对多的关系,它是不会帮你自动生成的【好像是这样子的】。。。因此,需要我们自己添加Set【如果需要】
- 其实是可以的,只是我当时候不知道而已。
- 添加Set集合和状态的常量
- 在配置文件下添加set,设置级联、懒加载
<set name="complainReplies" inverse="true" cascade="save-update,delete" lazy="false" > <key> <column name="comp_id" length="32" not-null="true" /> </key> <one-to-many class="zhongfucheng.complain.entity.ComplainReply" /> </set>