反馈系统简单设计

反馈系统
源码和部署说明参见 Talk
项目gunicorn+nginx配置启动
部署地址:api.imibi.cn
E-R模型

USER角色:普通用户/专业人员/管理员
专业人员/根据type(区域或问题类型)查看对应分配的问题列表/解决问题,更改问题状态
管理员:维护系统,用户,模块,专业人员
用户:提交问题
用户端
1.提交反馈
输入框:
问题标题【text】
问题详情【text】
问题标签/分类【多选框】
提交按钮【button】
2.反馈列表
统计数据: 已解决 / 未解决
反馈列表:
分页/排序/分类(过滤)
问题标题/解决状态/发布时间

状态列表:
时间轴:由xxx创建-状态改为待审核-处理中-已处理(用户确认)-用户已确认,已解决
3.我的反馈
个人中心:
个人反馈列表
<?php define('IN_SITE', true); require(dirname(__FILE__) . '/includes/init.php'); if(trim($_GET['ac']) == 'del') { deletetable('bug', "id='$_GET[bug_id]'"); goto($_SESSION['php_self']); } $_SESSION['php_self'] = geturl(); //echo $_SESSION['php_self']; $pro_id = empty($_GET['pro_id'])?'':intval($_GET['pro_id']); $bug_id = empty($_GET['bug_id'])?'':intval($_GET['bug_id']); $types = set_supetype($_SESSION['supe_type']); $sql = "SELECT * FROM ".tname('project')." WHERE `father` = '$pro_id'"; $pro_list = $db->getAll($sql); $sql = "SELECT pro_name, father, pro_id FROM ".tname('project')." WHERE `pro_id` = '$pro_id'"; $pro_info = $db->getRow($sql); if(!($_SESSION['supe_username'] and (($_SESSION['supe_project']!=$pro_info['pro_id'] ? $_SESSION['supe_project']==$pro_info['father'] : 1) or $_SESSION['supe_type']==-1))) { goto("login.php?pro_id=$pro_id"); } $sql = "SELECT pro_name FROM ".tname('project')." WHERE `pro_id` = '$pro_id'"; $pro_name = $db->getOne($sql); if($bug_id) { $sql = "select * from ".tname('bug')." where id='$bug_id'"; $bug = $db->getRow($sql); } if($_POST['submit']) { if($_POST['bug_id']) { if($_POST['pro_id']) { $pro_id = $_POST['pro_id']; } $sqlarr = array( 'pro_id' => $pro_id, 'title' => $_POST['title'], 'quick' => $_POST['quick'], 'bug' => $_POST['bug'] ); updatetable('bug', $sqlarr, "id='$_POST[bug_id]'"); } else { if($_POST['pro_id']) { $pro_id = $_POST['pro_id']; } $sqlarr = array( 'pro_id' => $pro_id, 'name' => $_SESSION['supe_username'], 'title' => $_POST['title'], 'quick' => $_POST['quick'], 'bug' => $_POST['bug'], 'dateline' => NOW ); inserttable('bug', $sqlarr); } goto("bug_list.php?pro_id=$pro_id"); } ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=<?=SITE_CHARSET?>" /> <meta name="keywords" content="" /> <meta name="description" content="" /> <title><?=$_CFG['site_name']?></title> <link href="css/style.css" rel="stylesheet" type="text/css" /> <script type="text/javascript" charset="utf-8" src="includes/editer/kindeditor.js"></script> <script language="javascript"> KE.show({ id : 'bug', cssPath : './css/editer.css', items : [ 'undo', 'redo', 'fontname', 'fontsize', 'textcolor', 'bgcolor', 'bold', 'italic', 'underline', 'removeformat', 'justifyleft', 'justifycenter', 'justifyright', 'insertorderedlist', 'insertunorderedlist', 'image', 'source'] }); function checkuser(frm) { with(frm) { if (title.value.length < 1) { alert('标题不能为空'); title.focus(); return false; } } } </script> </head> <body> <div class="block"> <div class="header"> <div style="height:50px; padding:3px 10px; background:#006CC5; color:#ffffff;"> <div><?=$_SESSION["supe_username"]?>,欢迎您! 用户组:<span class="org"><?=$types['name_type']?></span> <a href="index.php?ac=loginout">退出</a></div> <div class="pro_name"><?=$pro_name?></div> </div> <div class="line_gray white"> <a href="index.php">首页</a> >> <a href="bug_list.php?pro_id=<?=$_GET['pro_id']?>"><?=$pro_name?></a> >> 发布问题 </div> </div> <form name="reg" action="bug.php?pro_id=<?=$pro_id?>" method="post" onsubmit="return checkuser(this);"> <table width="100%" cellpadding="0" cellspacing="0" border="0"> <tr> <td width="80" height="30" align="right">发布人:</td> <td><?php if($bug_id) {echo $bug['name'];} else { echo $_SESSION['supe_username'];}?></td> </tr> <?php if($pro_list) {?> <tr> <td height="30" align="right">项目选择:</td> <td> <select name="pro_id"> <option value="<?=$pro_info['pro_id']?>" <?php if($pro_info['pro_id']==$bug['pro_id']) { echo "selected";}?>><?=$pro_info['pro_name']?></option> <?php if(is_array($pro_list)) { foreach($pro_list as $value) { ?> <option value="<?=$value['pro_id']?>" <?php if($value['pro_id']==$bug['pro_id']) { echo "selected";}?>><?=$value['pro_name']?></option> <?php }}?> </select> </td> </tr> <?php }?> <tr> <td height="30" align="right">标题:</td> <td><input type="text" name="title" id="title" class="mid_input" value="<?=$bug['title']?>"/></td> </tr> <tr> <td height="30" align="right">迫切度:</td> <td> <select name="quick"> <option value="严重" <?php if($bug['quick']=='严重') echo "selected";?>>严重</option> <option value="较急" <?php if($bug['quick']=='较急') echo "selected";?>>较急</option> <option value="一般" <?php if($bug['quick']=='一般') echo "selected";?>>一般</option> </select> </td> </tr> <tr> <td align="right">问题:</td> <td><textarea name="bug" id="bug" style="width:500px; height:230px;"><?=$bug['bug']?></textarea></td> </tr> <tr> <td height="30" height="30"></td> <td> <input type="hidden" name="bug_id" value="<?=$bug_id?>"/> <input type="submit" name="submit" class="submit" value="提交"/> </td> </tr> </table> </form> </div> </body> </html>
这份资源是一个基于SpringBoot+Vue的企业客户信息反馈平台的完整开发源码,包括前端、后端、数据库等部分。该系统主要针对企业客户提供咨询和反馈服务,支持客户通过提交工单、留言、电话等多种途径与企业联系,同时企业可以对客户的反馈问题进行管理和处理。该系统涵盖了客户信息管理、工单管理、留言管理、客户反馈管理等功能,为企业提供了全方位的客户服务管理。 为了更好地使用本资源,我们提供了详细的部署说明和系统介绍。在部署说明中,我们详细介绍了如何将本资源部署到本地或远程服务器上,并配置相关环境参数。在系统介绍中,我们对企业客户信息反馈平台的各项功能、前后端框架和技术栈进行了详细介绍和解释,以帮助开发者更好地理解系统的设计思路和功能实现。 对于想要深入学习和了解源码的开发者,我们还提供了源码解释。通过逐行分析源码,我们对系统的技术实现、API设计、业务逻辑等进行深入解读和分析,帮助开发者更好地理解源码和在其基础上进行二次开发,并提供更多开发思路和技巧。 总之,本资源适合对SpringBoot、Vue、企业客户信息反馈平台开发有一定基础的开发者学习和参考。企业客户信息反馈平台的设计思路、技术实现和业务逻辑等方面都具有高参考价值,为开发者提供了实践和实现企业客户服务管理的宝贵经验和思路。同时,该系统也可以根据不同企业的需求进行二次开发和定制,实现更加符合企业特色和需求的客户服务管理。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值