提交 c14fa847 编写于 作者: Skyeye云's avatar Skyeye云

新建问卷,问卷列表完成

上级 b4f2902f
此差异已折叠。
此差异已折叠。
此差异已折叠。
因为 它太大了无法显示 source diff 。你可以改为 查看blob
......@@ -787,6 +787,28 @@ public class ToolUtil {
}
return ret;
}
/**
*
* @Title: randomStr
* @Description: 获取指定的随机值
* @param @param minLen
* @param @param maxLen
* @param @return 参数
* @return String 返回类型
* @throws
*/
public static String randomStr(int minLen, int maxLen) {
String base = "abcdefghijklmnopqrstuvwxyz0123456789";
Random random = new Random();
StringBuffer sb = new StringBuffer();
int length = random.nextInt(maxLen - minLen) + minLen;
for (int i = 0; i < length; i++) {
int number = random.nextInt(base.length());
sb.append(base.charAt(number));
}
return sb.toString();
}
public static void main(String[] args) throws Exception {
......
package com.skyeye.eve.controller;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import com.skyeye.common.object.InputObject;
import com.skyeye.common.object.OutputObject;
import com.skyeye.eve.service.DwSurveyDirectoryService;
@Controller
public class DwSurveyDirectoryController {
@Autowired
private DwSurveyDirectoryService dwSurveyDirectoryService;
/**
*
* @Title: queryDwSurveyDirectoryList
* @Description: 获取调查问卷列表
* @param @param inputObject
* @param @param outputObject
* @param @throws Exception 参数
* @return void 返回类型
* @throws
*/
@RequestMapping("/post/DwSurveyDirectoryController/queryDwSurveyDirectoryList")
@ResponseBody
public void queryDwSurveyDirectoryList(InputObject inputObject, OutputObject outputObject) throws Exception{
dwSurveyDirectoryService.queryDwSurveyDirectoryList(inputObject, outputObject);
}
/**
*
* @Title: insertDwSurveyDirectoryMation
* @Description: 新增调查问卷
* @param @param inputObject
* @param @param outputObject
* @param @throws Exception 参数
* @return void 返回类型
* @throws
*/
@RequestMapping("/post/DwSurveyDirectoryController/insertDwSurveyDirectoryMation")
@ResponseBody
public void insertDwSurveyDirectoryMation(InputObject inputObject, OutputObject outputObject) throws Exception{
dwSurveyDirectoryService.insertDwSurveyDirectoryMation(inputObject, outputObject);
}
}
package com.skyeye.eve.dao;
import java.util.List;
import java.util.Map;
import org.apache.ibatis.annotations.Mapper;
import org.springframework.stereotype.Repository;
import com.github.miemiedev.mybatis.paginator.domain.PageBounds;
@Repository
@Mapper
public interface DwSurveyDirectoryDao {
public List<Map<String, Object>> queryDwSurveyDirectoryList(Map<String, Object> map, PageBounds pageBounds) throws Exception;
public int insertDwSurveyDirectoryMation(Map<String, Object> map) throws Exception;
}
package com.skyeye.eve.service;
import com.skyeye.common.object.InputObject;
import com.skyeye.common.object.OutputObject;
public interface DwSurveyDirectoryService {
public void queryDwSurveyDirectoryList(InputObject inputObject, OutputObject outputObject) throws Exception;
public void insertDwSurveyDirectoryMation(InputObject inputObject, OutputObject outputObject) throws Exception;
}
package com.skyeye.eve.service.impl;
import java.util.List;
import java.util.Map;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.github.miemiedev.mybatis.paginator.domain.PageBounds;
import com.github.miemiedev.mybatis.paginator.domain.PageList;
import com.skyeye.common.object.InputObject;
import com.skyeye.common.object.OutputObject;
import com.skyeye.common.util.ToolUtil;
import com.skyeye.eve.dao.DwSurveyDirectoryDao;
import com.skyeye.eve.service.DwSurveyDirectoryService;
@Service
public class DwSurveyDirectoryServiceImpl implements DwSurveyDirectoryService{
@Autowired
private DwSurveyDirectoryDao dwSurveyDirectoryDao;
/**
*
* @Title: queryDwSurveyDirectoryList
* @Description: 获取调查问卷列表
* @param @param inputObject
* @param @param outputObject
* @param @throws Exception 参数
* @return void 返回类型
* @throws
*/
@Override
public void queryDwSurveyDirectoryList(InputObject inputObject, OutputObject outputObject) throws Exception {
Map<String, Object> map = inputObject.getParams();
List<Map<String, Object>> beans = dwSurveyDirectoryDao.queryDwSurveyDirectoryList(map,
new PageBounds(Integer.parseInt(map.get("page").toString()), Integer.parseInt(map.get("limit").toString())));
PageList<Map<String, Object>> beansPageList = (PageList<Map<String, Object>>)beans;
int total = beansPageList.getPaginator().getTotalCount();
outputObject.setBeans(beans);
outputObject.settotal(total);
}
/**
*
* @Title: insertDwSurveyDirectoryMation
* @Description: 新增调查问卷
* @param @param inputObject
* @param @param outputObject
* @param @throws Exception 参数
* @return void 返回类型
* @throws
*/
@Override
public void insertDwSurveyDirectoryMation(InputObject inputObject, OutputObject outputObject) throws Exception {
Map<String, Object> map = inputObject.getParams();
Map<String, Object> user = inputObject.getLogParams();
map.put("id", ToolUtil.getSurFaceId());
map.put("sId", ToolUtil.randomStr(6, 12));//用于短链接的ID
map.put("dirType", 2);//2问卷
map.put("surveyModel", 1);//问卷所属的问卷模块 1问卷模块
map.put("createId", user.get("id"));
map.put("createTime", ToolUtil.getTimeAndToString());
dwSurveyDirectoryDao.insertDwSurveyDirectoryMation(map);
}
}
......@@ -13,7 +13,7 @@ jdbc.database.name=eve
#数据库账号
jdbc.database.username=root
#数据库密码
jdbc.database.password=123456
jdbc.database.password=admin
jdbc.maxActive=10
jdbc.initialSize=1
jdbc.minIdle=5
......@@ -30,7 +30,7 @@ activiti.database.name=activitidb
#数据库账号
activiti.database.username=root
#数据库密码
activiti.database.password=123456
activiti.database.password=admin
#阻止activiti的验证
spring.thymeleaf.mode=LEGACYHTML5
......
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper namespace="com.skyeye.eve.dao.DwSurveyDirectoryDao">
<select id="queryDwSurveyDirectoryList" parameterType="java.util.Map" resultType="java.util.Map">
SELECT
a.id,
a.survey_name surveyName,
a.sid,
b.user_name userName,
CONVERT(a.create_time, char) createTime,
a.answer_num answerNum,
CASE a.survey_state WHEN '0' THEN '设计' WHEN '1' THEN '执行中' WHEN '2' THEN '结束' ELSE '' END surveyState
FROM
dw_survey_directory a
LEFT JOIN sys_eve_user b ON a.create_id = b.id
WHERE a.visibility = '1'<!-- 显示 -->
AND a.dir_type = '2'<!-- 问卷 -->
AND a.survey_model = '1'<!-- 问卷模块 -->
<if test="surveyName != '' and surveyName != null">
AND a.survey_name LIKE '%${surveyName}%'
</if>
<if test="surveyState != '' and surveyState != null">
AND a.survey_state = #{surveyState}
</if>
ORDER BY a.create_time DESC
</select>
<insert id="insertDwSurveyDirectoryMation" parameterType="java.util.Map">
INSERT into dw_survey_directory
(id, survey_name, sid, dir_type, survey_model, create_id, create_time)
VALUES
(#{id}, #{surveyName}, #{sId}, #{dirType}, #{surveyModel}, #{createId}, #{createTime})
</insert>
</mapper>
\ No newline at end of file
......@@ -916,4 +916,16 @@
</url>
<!-- 工作流结束 -->
<!-- 问卷调查开始 -->
<url id="dwsurveydirectory001" path="/post/DwSurveyDirectoryController/queryDwSurveyDirectoryList" val="获取调查问卷列表" allUse="1">
<property id="limit" name="limit" ref="required,num" var="分页参数,每页多少条数据" />
<property id="page" name="page" ref="required,num" var="分页参数,第几页"/>
<property id="surveyState" name="surveyState" ref="" var="问卷状态"/>
<property id="surveyName" name="surveyName" ref="" var="问卷名称"/>
</url>
<url id="dwsurveydirectory002" path="/post/DwSurveyDirectoryController/insertDwSurveyDirectoryMation" val="新增调查问卷" allUse="1">
<property id="surveyName" name="surveyName" ref="required" var="问卷名称"/>
</url>
<!-- 问卷调查结束 -->
</controller>
\ No newline at end of file
......@@ -32,3 +32,5 @@ getCpuRatioForWindows(); 获得CPU使用率
readCpu(); 读取CPU信息
listToTree(); 将JSONArray数组转为树状结构
javaBean2Map(); 实体类转map
randomStr(); 获取指定的随机值
layui.config({
base: basePath,
version: skyeyeVersion
}).define(['jquery', 'winui'], function (exports) {
winui.renderColor();
layui.use(['form'], function (form) {
var index = parent.layer.getFrameIndex(window.name); //获取窗口索引
var $ = layui.$,
form = layui.form;
form.render();
form.on('submit(formAddBean)', function (data) {
//表单验证
if (winui.verifyForm(data.elem)) {
var params = {
surveyName: $("#surveyName").val(),
};
AjaxPostUtil.request({url:reqBasePath + "dwsurveydirectory002", params:params, type:'json', callback:function(json){
if(json.returnCode == 0){
parent.layer.close(index);
parent.refreshCode = '0';
}else{
top.winui.window.msg(json.returnMessage, {icon: 2,time: 2000});
}
}});
}
return false;
});
//取消
$("body").on("click", "#cancle", function(){
parent.layer.close(index);
});
});
});
\ No newline at end of file
var rowId = "";
layui.config({
base: basePath,
version: skyeyeVersion
}).define(['table', 'jquery', 'winui', 'form'], function (exports) {
winui.renderColor();
var $ = layui.$,
form = layui.form,
table = layui.table;
//表格渲染
table.render({
id: 'messageTable',
elem: '#messageTable',
method: 'post',
url: reqBasePath + 'dwsurveydirectory001',
where:{surveyName: $("#surveyName").val(), surveyState: $("#surveyState").val()},
even:true, //隔行变色
page: true,
limits: [8, 16, 24, 32, 40, 48, 56],
limit: 8,
cols: [[
{ title: '序号', type: 'numbers'},
{ field:'surveyName', width:300, title: '问卷名称'},
{ field:'answerNum', width:140, title: '答卷'},
{ field:'surveyState', width:120, title: '状态'},
{ field:'userName', width:120, title: '创建人'},
{ field: 'createTime', title: '创建时间', width: 180 },
{ title: '操作', fixed: 'right', align: 'center', width: 240, toolbar: '#tableBar'}
]]
});
table.on('tool(messageTable)', function (obj) { //注:tool是工具条事件名,test是table原始容器的属性 lay-filter="对应的值"
var data = obj.data; //获得当前行数据
var layEvent = obj.event; //获得 lay-event 对应的值
if (layEvent === 'del') { //删除
del(data, obj);
}else if (layEvent === 'edit') { //设计
edit(data);
}else if (layEvent === 'fzWj') { //复制问卷
fzWj(data);
}else if (layEvent === 'resolveWj') { //收集问卷
resolveWj(data);
}else if (layEvent === 'fxWj') { //分析报告
fxWj(data);
}
});
//搜索表单
form.render();
form.on('submit(formSearch)', function (data) {
//表单验证
if (winui.verifyForm(data.elem)) {
loadTable();
}
return false;
});
//删除
function del(data, obj){
var msg = obj ? '确认删除问卷【' + obj.data.surveyName + '】吗?' : '确认删除选中数据吗?';
layer.confirm(msg, { icon: 3, title: '删除问卷' }, function (index) {
layer.close(index);
//向服务端发送删除指令
AjaxPostUtil.request({url:reqBasePath + "planproject003", params:{rowId: data.id}, type:'json', callback:function(json){
if(json.returnCode == 0){
top.winui.window.msg("删除成功", {icon: 1,time: 2000});
loadTable();
}else{
top.winui.window.msg(json.returnMessage, {icon: 2,time: 2000});
}
}});
});
}
//设计
function edit(data){
rowId = data.id;
_openNewWindows({
url: "../../tpl/planproject/planprojectedit.html",
title: "设计问卷",
pageId: "dwsurveydesignedit",
callBack: function(refreshCode){
if (refreshCode == '0') {
top.winui.window.msg("操作成功", {icon: 1,time: 2000});
loadTable();
} else if (refreshCode == '-9999') {
top.winui.window.msg("操作失败", {icon: 2,time: 2000});
}
}});
}
//复制问卷
function fzWj(data){
rowId = data.id;
}
//收集问卷
function resolveWj(data){
}
//分析报告
function fxWj(data){
}
//刷新数据
$("body").on("click", "#reloadTable", function(){
loadTable();
});
//新增
$("body").on("click", "#addBean", function(){
_openNewWindows({
url: "../../tpl/dwsurveydesign/dwsurveydesignadd.html",
title: "新增问卷",
pageId: "dwsurveydesignadd",
callBack: function(refreshCode){
if (refreshCode == '0') {
top.winui.window.msg("操作成功", {icon: 1,time: 2000});
loadTable();
} else if (refreshCode == '-9999') {
top.winui.window.msg("操作失败", {icon: 2,time: 2000});
}
}});
});
function loadTable(){
table.reload("messageTable", {where:{surveyName: $("#surveyName").val(), surveyState: $("#surveyState").val()}});
}
exports('dwsurveydesignlist', {});
});
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
<link href="../../assets/lib/layui/css/layui.css" rel="stylesheet" />
<link href="../../assets/lib/font-awesome-4.7.0/css/font-awesome.css" rel="stylesheet" />
<link href="../../assets/lib/winui/css/winui.css" rel="stylesheet" />
</head>
<body>
<div style="width:600px;margin:0 auto;padding-top:20px;">
<form class="layui-form" action="" id="showForm" autocomplete="off">
<div class="layui-form-item">
<label class="layui-form-label">问卷名称<i class="red">*</i></label>
<div class="layui-input-block">
<input type="text" id="surveyName" name="surveyName" win-verify="required" placeholder="请输入问卷名称" class="layui-input" maxlength="50"/>
</div>
</div>
<div class="layui-form-item">
<div class="layui-input-block">
<button class="winui-btn" id="cancle">取消</button>
<button class="winui-btn" lay-submit lay-filter="formAddBean">保存</button>
</div>
</div>
</form>
</div>
<script src="../../assets/lib/layui/layui.js"></script>
<script src="../../assets/lib/layui/custom.js"></script>
<script type="text/javascript">
layui.config({base: '../../js/dwsurveydesign/'}).use('dwsurveydesignadd');
</script>
</body>
</html>
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
<link href="../../assets/lib/layui/css/layui.css" rel="stylesheet" />
<link href="../../assets/lib/font-awesome-4.7.0/css/font-awesome.css" rel="stylesheet" />
<link href="../../assets/lib/winui/css/winui.css" rel="stylesheet" />
</head>
<body>
<div class="txtcenter" style="width:700px;margin:0 auto;padding-top:20px;">
<form class="layui-form layui-form-pane" action="" autocomplete="off">
<div class="layui-form-item">
<div class="layui-inline">
<label class="layui-form-label">问卷名称</label>
<div class="layui-input-inline">
<input id="surveyName" name="surveyName" class="layui-input" />
</div>
</div>
<div class="layui-inline">
<label class="layui-form-label">问卷状态</label>
<div class="layui-input-inline">
<select id="surveyState" name="surveyState">
<option value="">全部</option>
<option value="0">设计</option>
<option value="1">执行中</option>
<option value="2">结束</option>
</select>
</div>
</div>
</div>
<div class="layui-form-item">
<div class="layui-input-block" style="margin:0;">
<button class="layui-btn" lay-submit lay-filter="formSearch">搜索</button>
</div>
</div>
</form>
</div>
<div class="winui-toolbar">
<div class="winui-tool">
<button id="reloadTable" class="winui-toolbtn"><i class="fa fa-refresh" aria-hidden="true"></i>刷新数据</button>
<button id="addBean" class="winui-toolbtn"><i class="fa fa-plus" aria-hidden="true"></i>新增问卷</button>
</div>
</div>
<div style="margin:auto 10px;">
<table id="messageTable" lay-filter="messageTable"></table>
<script type="text/html" id="tableBar">
<a class="layui-btn layui-btn-xs" lay-event="edit">设计</a>
<a class="layui-btn layui-btn-xs" lay-event="fzWj">复制</a>
{{# if(d.answerNum == 0 && d.surveyState == 0){ }}
<a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">删除</a>
{{# } else{ }}
<a class="layui-btn layui-btn-xs" lay-event="resolveWj">收集问卷</a>
<a class="layui-btn layui-btn-xs" lay-event="fxWj">分析报告</a>
{{# } }}
</script>
</div>
<script src="../../assets/lib/layui/layui.js"></script>
<script src="../../assets/lib/layui/custom.js"></script>
<script type="text/javascript">
layui.config({base: '../../js/dwsurveydesign/'}).use('dwsurveydesignlist');
</script>
</body>
</html>
\ No newline at end of file
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册