ipms综合管理系统的总结

添加的项目选项,用到了layui里面的弹出层,主要的思路是:

在layer.open(弹出层)里面有个属性:content里面写一个请求,这个请求把所有用到的参数都发送到一个新的页面addPro,其中项目类型,技术方向,导师这些下拉框里面的内容是通过数据库取到的数据,而且是设置了权限,如果是学生的身份登录的话,可以添加项目,但是项目评价那一项是不能进行评价的,只有当老师身份登录时,才可以进行一个项目评价.

projectmsg2.js

//点击添加项目,出现的弹出层
	$("#lc-sp-btn2").click(function() {
		layer.open({
			type: 2,
			title: ‘添加项目‘,
			shade: 0.5, // 遮罩层
			maxmin: true, //开启最大化最小化按钮
			area: [‘600px‘, ‘90%‘], // 宽高
			content: ‘/IPMS/projectmsg/selectDictory.do‘
			,offset: ‘auto‘
		    ,btnAlign: ‘c‘
	        ,cancel: function(index, layero){
	    		  window.location.reload(); //重载刷新页面
	    	}  		 

		});
	});

projectcontroller

@RequestMapping("/selectDictory")
	public String selectDictory(Model md) {

		List<Projet> list = dataDictoryService.selectDataName();
		List<Projet> list2 = dataDictoryService.selectTecal();
		List<Userinfo> list3 = userInfoService.selectUserinfo(); //查询导师姓名 

		md.addAttribute("tecalist", list2);
		md.addAttribute("userlist", list3);
		md.addAttribute("datalist", list);

		return BASEPATH + "addPro";
	}

addPro.jsp

<body>

		 <!-- 要添加的项目 -->
							<c:if test="${user.op == 20 || user.op == 40 }">
							<!-- 给个用户验证的判断 -->
							<div id="ti">你要添加的项目</div>
							<form class="layui-form tab"
								action="${ctx }/projectmsg/insertProject.do" method="post">
								<div class="layui-form-item">
									<label class="layui-form-label">输入项目名</label>
									<div class="layui-input-block">
										<input type="text" id="proname" name="title" required
											lay-verify="required" placeholder="请输入项目名" autocomplete="off"
											class="layui-input ming">
									</div>
								</div>

								<div class="layui-form-item">
									<label class="layui-form-label">项目类型</label>
									<div class="layui-input-block ming">
										<select name="lei" id="leibie" lay-verify="">
											<option value="">请选择项目类型:</option>
											<c:forEach var="list" items="${datalist }">
												<option value="${list.ids }">${list.dataname }</option>
											</c:forEach>
										</select>
									</div>
								</div>

								<div class="layui-form-item">
									<label class="layui-form-label">技术方向</label>
									<div class="layui-input-block ming">
										<select name="lei2" id="tecal" lay-verify="">
											<option value="">请选择技术类型:</option>
											<c:forEach var="list2" items="${tecalist }">
												<option value="${list2.ids }">${list2.dataname }</option>
											</c:forEach>

										</select>
									</div>
								</div>

								<div class="layui-form-item layui-form-text">
									<label class="layui-form-label">项目简介</label>
									<div class="layui-input-block">
										<textarea name="desc" id="jie" placeholder="请输入简介内容"
											class="layui-textarea ming2"></textarea>
									</div>
								</div>

								<div class="layui-form-item">
									<label class="layui-form-label">导师</label>
									<div class="layui-input-block ming">
										<select name="lei3" id="teach" lay-verify="">
											<option value="">请选择导师:</option>
											<c:forEach var="ulist" items="${userlist }">
												<option value="${ulist.ids }">${ulist.realname }</option>
											</c:forEach>

										</select>
									</div>
								</div>

								<div class="layui-form-item">
									<label class="layui-form-label">完成进度</label>
									<div class="layui-input-block ming">
										<select name="lei4" id="jindu" lay-verify="">
											<option value="">请选择进度:</option>
											<option value="0">10%</option>
											<option value="1">30%</option>
											<option value="2">50%</option>
											<option value="3">90%</option>
											<option value="4">100%</option>
										</select>
									</div>
								</div>
							<c:if test="${user.op == 20 }">
								<div class="layui-form-item layui-form-text">
									<label class="layui-form-label">项目评价</label>
									<div class="layui-input-block">
										<textarea name="desc2" id="ping" placeholder="请输入评价内容"
											class="layui-textarea ming2"></textarea>
									</div>
								</div>
							</c:if>

								<div class="layui-form-item">
									<div class="layui-input-block">
										<button class="layui-btn" id="charu" lay-submit
											lay-filter="formDemo">立即提交</button>
										<button type="reset" class="layui-btn layui-btn-primary">重置</button>
									</div>
								</div>
							</form>
							 </c:if>
</body>

需要说明的是其中给权限用的方法:

op == 20 的是老师登录,op ==  40 的是学生登录,不同的用户登陆,显示的内容不同,能做的事情也不同

点击查看,提示你现在正在查看的是哪一条内容,点编辑,弹出一个弹出层,显示的是如何进行各个字段的编辑操作,删除,会弹出一个对话框,询问你是否确认删除,审批,是这样的,如果此项目已经审批通过了,就不可以进行重复审批了.如果你还是学生登录的话,那就更不可以进行审批了

projectmsg2.js

$(function() {
	var table = layui.table;
	/*
	 * 左竞一
	 */

// 搜索项目,以及修改删除项目

	var laytable = function(demoReload){	 

		// 第一个实例
		  table.render({
		    elem: ‘#LAY_table_user‘
		    ,height: 315
		    ,url: ‘/IPMS/projectmsg/search.do‘ // 数据接口
		    ,page: true // 开启分页
		    ,where: {
		    	pname: demoReload
            }

		    ,cols: [[ // 表头
		    	{checkbox: true, fixed: true}
		      , {field: ‘IDS‘, title: ‘ID‘, width:65, sort: true, fixed: ‘left‘}
		      ,{field: ‘PNAME‘, title: ‘项目名‘, width:100}
		      ,{field: ‘PTYPE‘, title: ‘项目类型‘, width:100, sort: true}
		      ,{field: ‘DIRECTION‘, title: ‘技术方向‘, width:80}
		      ,{field: ‘INTRO‘, title: ‘简介‘, width: 180}
		      ,{field: ‘UIDS‘, title: ‘导师‘, width: 80, sort: true}
		      ,{field: ‘RATE‘, title: ‘进度‘, width: 50, sort: true}
		      ,{field: ‘APPRAISE‘, title: ‘评价‘, width: 180}
		      ,{field: ‘MARK‘, title: ‘审批结果‘, width: 120}
		      ,{ width: 300, align:‘center‘, toolbar: ‘#barDemo‘,title:‘操作‘,fixed:‘right‘}
		    ]]
		   ,id: ‘testReload‘
		   ,method: ‘post‘

		  });// table.render
	}

	// 开始 执行
	laytable(null);
		  // 绑定点击事件
		  $(‘.layui-btn‘).on(‘click‘, function(){
			  var demoReload = $(‘#demoReload‘).val();
			  laytable(demoReload);
			  });

		  // 监听表格复选框选择
		  table.on(‘checkbox(useruv)‘, function(obj){
	            console.log(obj);
	        });

		// 监听工具条
		  table.on(‘tool(useruv)‘, function(obj){ // 注:tool是工具条事件名,test是table原始容器的属性
													// lay-filter="对应的值"
		    var data = obj.data // 获得当前行数据
		    ,layEvent = obj.event; // 获得 lay-event 对应的值
		    if(layEvent === ‘detail‘){
		    	layer.msg(‘你正在对[‘+ data.PNAME + ‘] 项目的查看操作‘);
		    } else if(layEvent === ‘del‘){
		      layer.confirm(‘真的删除这一行么‘, function(index){

		    	  // 向服务端发送删除指令
		        $.ajax({
					dataType : "json",
					type : "post",
					url : "/IPMS/projectmsg/delet.do",
					data : {
						ids:data.IDS
					},
					success : function(data) {
						if (data.state==1) {
							// 删除这一行
	                        obj.del();
	                       // 关闭弹框
	                        layer.close(index);
	                        layer.msg("删除成功", {icon: 6});
						} else {
							layer.msg("你没有足够的权限,删除失败", {icon: 5});
						}
					},
					error : function() {
						layer.open({
							title : ‘warn‘,
							content : ‘对不起,你没有足够的权限! ‘
						});
					}

				});// ajax

		      });  // layer.confirm
		    } else if(layEvent === ‘edit‘){

		    	console.log(data.IDS);

		    	layui.element.render();//刷新所有的元素;
	    		  layui.layer.open({
	    		        type: 2 //0(信息框,默认)1(页面层)2(iframe层)3(加载层)4(tips层)
	    		        ,title: ‘编辑信息‘
	    		        ,area: [‘600px‘, ‘450px‘]
	    		        ,maxmin: true  //最大最小化按钮
	    		        ,offset: ‘auto‘   //位置居中
	    		        ,content: ‘/IPMS/projectmsg/qian.do?ids=‘+data.IDS //不出现滚动条   ,‘no‘
	    		        ,btnAlign: ‘c‘
	    		        ,cancel: function(index, layero){
	    		        	window.location.reload(); //重载刷新页面
	    		        		}
	    		      }); //弹出层

		    } else if(layEvent === ‘pass‘){  //审批
		    	 layer.confirm(‘确定审批么‘, function(index){
		    	$.ajax({
	    			dataType : "json",
	    			type : "post",
	    			url : "/IPMS/projectmsg/pass.do",
	    			data : {
	    				ids:data.IDS
	    			},
	    			success : function(data) {
	    				console.log(data.result);
	    				if (data.result == 1) {
	    					//关闭弹框
	    	                layer.close(index);

	                        layer.msg("审批成功", {icon: 6});
	    				} else {
	    					layer.msg("你没有足够的权限,审批失败", {icon: 5});
	    				}
	    			},
	    			error : function() {
	    				layer.open({
	    					title : ‘warn‘,
	    					content : ‘后台异常,请联系管理员! ‘
	    				});
	    			}
	    		});// ajax

		    	 });  // layer.confirm
		    } // else if

		  }); // table.on

	// 4大 按钮事件
	// 点击打开 layui标签   传入显示谁

	//点击修改项目,弹出来的数据表格
	$("#lc-sp-btn").click(function() {
		dkbq("#lc-sp-tab")
	});

	//点击添加项目,出现的弹出层
	$("#lc-sp-btn2").click(function() {
		layer.open({
			type: 2,
			title: ‘添加项目‘,
			shade: 0.5, // 遮罩层
			maxmin: true, //开启最大化最小化按钮
			area: [‘600px‘, ‘90%‘], // 宽高
			content: ‘/IPMS/projectmsg/selectDictory.do‘
			,offset: ‘auto‘
		    ,btnAlign: ‘c‘
	        ,cancel: function(index, layero){
	    		  window.location.reload(); //重载刷新页面
	    	}  		 

		});
	});

});

弹出的编辑操作:

projectControllor

/**
	 * 用来从数据字典里面查询出来的是类型名称dataname,从userinfo表里面查出来的是导师的姓名
	 * @param mv
	 * 左竞一
	 */
	@RequestMapping("/selectDictory")
	public String selectDictory(Model md) {

		List<Projet> list = dataDictoryService.selectDataName();
		List<Projet> list2 = dataDictoryService.selectTecal();
		List<Userinfo> list3 = userInfoService.selectUserinfo(); //查询导师姓名 

		md.addAttribute("tecalist", list2);
		md.addAttribute("userlist", list3);
		md.addAttribute("datalist", list);

		return BASEPATH + "addPro";
	}

	/**
	 * index页面查询数据所需方法
	 * 魏萍萍
	 * @return Projet
	 */
	@ResponseBody
	@RequestMapping("/selectProject")
	public String selectProject() {

		JSONObject jo = new JSONObject();
		List<Projet> pro = projetService.selectAll();
		jo.put("Projet", pro);
		return jo.toJSONString();
	}

	/**
	 *
	 * 从index页面往index副页传详细信息
	 * @param model
	 * @param ids
	 * @return Projet实体
	 * @author 魏萍萍
	 *
	 */

	@RequestMapping("/selectPj")
	public String selectPj(Model model,Integer ids) {
		Projet da = projetService.selectByPrimaryKey(ids);
		model.addAttribute("Projet", da);
		return "index_2";
	}

	/**
	 * 左
	 * 用来查找项目
	 * @param keyword
	 * @return
	 */
	@ResponseBody
	@RequestMapping("/search")
	public String searchPro(HttpSession hs,String pname ) {
		Usertable u = (Usertable)hs.getAttribute("user");
		Integer uids = u.getIds();
		Integer particulars = u.getParticulars();
		Integer op = u.getOp();
		JSONObject jo = new JSONObject();
		Map<String,Object> map = Myutil.mp(uids,pname,particulars,op);
		List<Map<String,Object>> list4 = projetService.searchPro(map);

		if(list4 != null) {
			jo.put("count", 1000);
		   	jo.put("code",0);
	        jo.put("message","null");
	        jo.put("data", list4);
		}
		return jo.toJSONString();
	}

	/**
	 * 删除项目 ,左
	 * @param ids
	 * @return
	 */

	@ResponseBody
	@RequestMapping("/delet")
	public String deletPro(HttpSession hs,Integer ids) {
		Usertable u = (Usertable)hs.getAttribute("user");
		JSONObject jo = new JSONObject();
		if (u.getOp() == 20) {
			int i = projetService.deletPro(ids);
			jo.put("state", i);

		}
		return jo.toJSONString();
	}

	/**
	 * 用来进行项目审批,左
	 * @param hs
	 * @param p
	 * @return
	 */

	@ResponseBody
	@RequestMapping("/pass")
	public String updateMark(HttpSession hs,Integer ids) {
		Usertable u = (Usertable)hs.getAttribute("user");
		JSONObject jo = new JSONObject();
		if(u.getOp() == 20) {
			int m = projetService.updateMark(ids);
			jo.put("result", m);
		}
		return jo.toJSONString();
	}

	/**
	 * 弹出层里面嵌入的表单,左
	 * @param model
	 * @return
	 */
	@RequestMapping("/qian")
	public String qianYe(Model model,Integer ids) {
		List<Map<String,Object>> plist = projetService.selectByids(ids);
		model.addAttribute("plist", plist);
		return BASEPATH + "edit";
	}
	/**
	 * 用来进行编辑操作
	 * 左
	 * @return
	 */

	@ResponseBody
	@RequestMapping("/edit")
	public String updatePro(Integer ids,String pname,String ptype,
			String direction,String intro,String uids,String rate,String appraise) {

		JSONObject jo = new JSONObject();

		Map<String,Object> map = Myutil.mp(pname,ptype,direction,intro,uids,rate,appraise,ids);
		int i2 = projetService.updatePro(map);

		if (i2 > 0) {
			jo.put("success", true);
		}else {
			jo.put("success", false);
		}
		return jo.toJSONString();
	}

}

edit.jsp

<link rel="stylesheet" href="${ctx }/layui/css/layui.css" />
<link rel="stylesheet" href="${ctx }/css/edit.css" />
<script type="text/javascript" src="${ctx }/js/jquery-3.2.1.min.js"></script>
<script type="text/javascript" src="${ctx }/layui/layui.all.js"></script>
<script type="text/javascript" src="${ctx }/js/edit.js"></script>
</head>
<!-- 点编辑按钮嵌入的页面,左 -->
<body>

		<!-- 点击编辑所出现的那个表单 -->
							<!-- <div class="la"> -->
								<!-- 左边出现下拉框 -->
								<form class="layui-form" action="" method="post" id="tanbiao">
						<c:forEach var="list" items="${plist }">
								<input type="hidden" id="cang" value="${list.IDS }" />
							<c:if test="${user.op == 1 || user.op == 40 }">
									<div class="layui-form-item">
										<label class="layui-form-label">项目名</label>
										<div class="layui-input-block">
											<input type="text" name="title" required
												lay-verify="required" autocomplete="off"
												class="layui-input tan" id="pname" value="${list.PNAME }">
										</div>

									</div>
									<div class="layui-form-item">

										<!-- 类型 -->
										<label class="layui-form-label">项目类型</label>
										<div class="layui-input-block">
											<input type="text" name="title" required
												lay-verify="required" autocomplete="off"
												class="layui-input tan" id="ptype" value="${list.PTYPE }">
										</div>
									</div>
									<div class="layui-form-item">

										<!--  技术 -->
										<label class="layui-form-label">技术方向</label>
										<div class="layui-input-block">
											<input type="text" name="title" required
												lay-verify="required" autocomplete="off"
												class="layui-input tan" id="direction" value="${list.DIRECTION }">
										</div>
									</div>
									<div class="layui-form-item layui-form-text">

										<!-- 简介 -->
										<label class="layui-form-label">项目简介</label>
										<div class="layui-input-block">
											<textarea name="desc" placeholder="请输入简介内容"
												class="layui-textarea tan2" id="intro">${list.INTRO }</textarea>
										</div>
									</div>
									<!-- 导师 -->
									<div class="layui-form-item">
										<label class="layui-form-label">导师</label>
										<div class="layui-input-block">
											<input type="text" name="title" required
												lay-verify="required" autocomplete="off"
												class="layui-input tan" id="uids" value="${list.UIDS }">
										</div>
									</div>
									<div class="layui-form-item">

										<!-- 进度 -->
										<label class="layui-form-label">进度</label>
										<div class="layui-input-block">
											<input type="text" name="title" required
												lay-verify="required" autocomplete="off"
												class="layui-input tan" id="rate" value="${list.RATE }">
										</div>

									</div>
							</c:if>
								<c:if test="${user.op == 20}">
								<!-- 评价 -->
									<div class="layui-form-item layui-form-text" style="margin-top: 10px;">
										<label class="layui-form-label">项目评价</label>
										<div class="layui-input-block">
											<textarea name="desc" placeholder="请输入简介内容"
												class="layui-textarea tan2" id="appraise">${list.APPRAISE }</textarea>
										</div>
									</div>
								</c:if>

					 </c:forEach>
									<div class="layui-form-item">
										<div class="layui-input-block">
											<!-- <button class="layui-btn" id="charu2" lay-submit
												lay-filter="formDemo">立即提交</button> -->
										     <a class="layui-btn" id="charu2">立即提交</a>
										</div>
									</div>
								</form>

							<!-- </div> -->
							<!-- 是用来控制表单出现下拉框的 -->

</body>

原文地址:https://www.cnblogs.com/zuo72/p/8821439.html

时间: 2024-08-03 03:32:51

ipms综合管理系统的总结的相关文章

ipms综合管理系统的总结2

layui里面的数据的分页 点哪个选项卡,就会跳到哪个记录下,同时进行一个数据的分页 DatabaseControllor @Controller @RequestMapping("/database") public class DatabaseController { @Autowired private DatabaseService databaseService; @Autowired private TextService textService; @Autowired p

xxx学院后勤综合管理系统开发日记1

项目开发原因:为了配合部门两个从其他部门过来的维修科故障工作展开,现把一个网络故障保障和后勤维修的系统合拼成为一个,就成了现在的xxx学院后勤综合管理系统. 开发功能扩展:除了保持原有的保障表单.分角色查看故障还有统计功能之外,还加一个权限管理,物资管理和车辆管理还有一个办公oa额外附加的拼车功能.此外还有附加系统监控和控制开关.数据字典等.不知道还有没有其他需求,有的话就类似增加了. 开发工具:asp.net 三层+前端居于lhgcore框架+ms sql2005(使用存储过程). 其他要求:

Rion&#174;-RCMS报表综合管理系统

" Rion-RCMS报表综合管理系统"能做什么 "Rion-RCMS报表综合管理系统"是面向各商业银行,集信息采集.数据处理和报表为一体的综合管理平台. 提高效率:可以有效解决基层行编报人员手工填报基础数据的工作压力,提高工作质量和效率: 信息整合:综合报表系统可以加快报表数据信息整合,实现全行报表数据信息统一管理,逐步提高全行数据信息管理的应用程度,最终实现全行信息收集.传递.使用.发布的规范和高效: 信息披露:综合报表系统可以确保财务信息披露的公开性.有效性.

师慧高校GIS房产综合管理系统,助高校建立标准统一的数据结构

高校房产资源的管理,是关系到高校教育教学和未来发展的重要工作,也是高校现代化.信息化建设的重要内容.随着高校的不断发展,高校房产越来越多,数据越来越繁杂,管理的难度也越来越高,所以,高校房产资源的管理,需要有信息化的系统平台来建立标准统一的数据结构,以此来提高高校房产管理的效率和水平. 目前,已有专业的机构为高校构建了完善的房产管理系统,以师慧高校gis房产综合管理系统为例,就能为高校房产管理提供科学化.信息化的管理平台,帮助高校建立起标准统一的数据机构中心,提高高校房产管理的水平和效率. 师慧

智慧监狱综合管理系统平台

第1章 项目背景 在信息.网络技术高速发展的今天,高新技术促进了生产力的提高,也给人们的思维方式.工作方式和生活方式带来转变."科技强警"的战略方针,正深刻地改变着传统的警务工作方式. 互联网是个神奇的大网,大数据开发和软件定制也是一种模式,这里提供最详细的报价,如果你真的想做,可以来这里,这个手机的开始数字是一伍扒中间的是壹壹三三最后的是泗柒泗泗,按照顺序组合起来就可以找到,我想说的是,除非你想做或者了解这方面的内容,如果只是凑热闹的话,就不要来了. 经过建国以来60 多年特别是改革

【学生成绩管理系统】 大二c语言作业

几年前写的了,只能在命令行窗口运行,虽然比较挫,还是有一定参考价值... #include <cstdio> #include <conio.h> #include <iostream> #include <process.h> #include <stdlib.h> #include <algorithm> #include <cstring> #include <cmath> #define N 5 con

多彩户外广告管理系统 v3.0

多彩广告公司媒体资源管理系统  是专门针对广告行业研发的信息化整体解决方案,本产品适用于管理多种媒体资源,包括但不限于以下媒体类型: ?高速公路广告管理系统 ?城市道路交通指示牌广告媒体管理系统 ?电梯媒体资源管理系统.写字楼媒体资源管理系统.小区媒体资源管理系统.灯箱媒体资源管理系统.车体媒体资源管理系统.看板媒体资源管理系统.LED媒体资源管理系统.广告塔媒体资源管理系统.大牌媒体资源管理系统等多种媒体类型资源管理系统 系统旨在帮助广告公司解决以下方面问题: 1.管理的广告位多,到期时间各不

砾阳报表综合系统

" Rion?-RCMS报表综合管理系统"能做什么 "Rion?-RCMS报表综合管理系统"是面向各商业银行,集信息采集.数据处理和报表为一体的综合管理平台. 提高效率:可以有效解决基层行编报人员手工填报基础数据的工作压力,提高工作质量和效率: 信息整合:综合报表系统可以加快报表数据信息整合,实现全行报表数据信息统一管理,逐步提高全行数据信息管理的应用程度,最终实现全行信息收集.传递.使用.发布的规范和高效: 信息披露:综合报表系统可以确保财务信息披露的公开性.有效

中国(郑州)国际城市地下综合管廊建设与智慧管网展览会

中国(郑州)国际城市地下综合管廊建设与智慧管网展 览会 邀 请 函 展览时间:2018年8月31日-9月2日 展览地点:郑州国际会展中心(郑东新区CBD) [市场背景]"十三五"时期是全面建成小康社会的关键期,是落实国家治理体系与治理能力 现代化的推进期,也是全面落实中央城市工作会议精神.携手国际社会共同推进新型 城镇化.促进绿色发展的重要阶段.联合国通过的<2030年可持续发展议程>提出了 建设包容.安全.韧性和可持续的城市发展目标.我国时隔37年召开的中央城市工作 会议