实现在线提交的“保存”"提交"功能

时间 2018/3/7 9:37:14 加载中...

目前现状:

有一个表单提交页面,表单提交后,就会进入审核状态,审核不通过,则还需在表单提交页面进行修改,并再次提交。表单提交页面有审核状态显示。

目前系统运行中,已有旧数据。

 

需求:

表单提交页面,可以先保存,并不提交,点击“提交”按钮才是真正的提交。

 

方案一:

Status字段现在有“已删除”和“未删除”状态(已删除:0,未删除:1),所有查询的地方都应该是使用的“未删除”状态。

在此基础上进行调整,1不再表示“未删除”,1代表“已提交”,新增一个 2 来代表“已保存未提交”。

 

在提交页面因要展示的数据会包含“已提交”的情况和“已保存未提交”的情况,

所以,只有“提交页面”的数据包含两个状态,其它地方应该只查“已提交”状态的数据。(实现后需验证)

 

ALTER TABLE `thesismgmt`.`thesis`

CHANGE COLUMN `Status` `Status` INT(11) NULL DEFAULT NULL COMMENT '0:已删除 1:已提交(原意未删除)2:保存未提交' ;

 

方案二:

目前,表单记录表为“thesis”表,新增一张和“thesis”完全一样的表叫“thesiscopy”,点击“保存按钮”时,先将数据保存在“thesiscopy”中。

当点击“提交按钮”时,再将“thesiscopy”中的数据复制到“thesis”中。

即,

在“新增”时,点击保存是新增数据到“thesiscopy”,点击提交到同步到表“thesis”

在“未提交但已保存时修改”时,点击保存是修改数据到“thesiscopy”表,点击提交到同步到表“thesis”

在“提交后,审核失败时修改”时,点击保存也是修改数据到“thesiscopy”,点击提交到同步到表“thesis”

 

刚进入到表单提交页面,要有状态显示,是“保存未提交”还是“已提交”?

因表单提交用到读取的都是“thesiscopy”的数据,因此,只能在“thesiscopy”中新增一个“thesisId”字段来关联“thesis”表的同步记录

当thesisId有值时,为已提交,当为NULL时,为未提交。

 

在表单提交页面,当“已提交”时,还要展示审核状态“审核通过”,“审核未通过”。

因为这个状态在“thesis”表中记录呢,所以,这时也只能通过thesisId来关联“thesis”表进行查询。


扫码分享
版权说明
作者:SQBER
文章来源:http://www.sqber.com/articles/sumbit-save-page.html
本文版权归作者所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。