- 【版权所有,文章允许转载,但须以链接方式注明源地址,否则追究法律责任】
- 【创作不易,点个赞就是对我最大的支持】
前言
仅作为学习笔记,供大家参考
总结的不错的话,记得点赞收藏关注哦!
调接口转JSON对象
String flag=HttpRequestUtils.sendPost(url,param);
JSONObject objects = JSON.parseObject(flag);
String state=objects.get("state").toString();
获取当前用户对象
Subject subject=SecurityUtils.getSubject();
Session session=subject.getSession();
//获取session中的Record对象
Record um=(Record)session.getAttribute(CommonConstant.SESSION_USER);
无model限制查询
//两种写法第一种是数据库id字段是ID
List<Record> typeList = Db.find(“select * from XXX”);
//第二种,不是默认id,则可以自行设置
Db.findById(String tableName, String primaryKey, Object... idValue)
前台转义
'<span οnclick="javascript:addtorole(\''+row.id+'\',\''+row.name+'\')">添加</span>';
动态下拉框
<@for(corp in list){@>
<option value="${corp.id}" ${model.corpId==corp.id?'selected="selected":'''}>${corp.name}</option>
<@}@>
获取下拉框的选中的值
<script>
$(document).ready(function(){
$("select").val(2);//设置第2节被选中
$("select").get(0).selectedIndex=2;//下标从0开始,即下标为2选中的是第3个option
//select的change事件
$("select").change(function(){
alert($("select").val());//选中的值,对应<option>标签里面的value属性
alert($("select option:selected").text());//选中的文本值(1)
alert($("select").find("option:selected").text());//选中的文本值(2)
})
});
获取ajaxForm传到后台的表单
//后台
AppModel model = getReqModel();
unitModel.set("contactor",unitModel.getStr("contactor")).set("phone",unitModel.getStr("phone"));
//前台js
x.ajaxForm($("#fm"), "/xcUnit/save", function(d) {
layer.close(index);
if (d.flag == 0) {
layer.msg(d.msg, {icon : 6,time:500}, function() {
parent.obj.ajax.reload(null,false);
parent.layer.closeAll();
});
} else {
layer.msg("保存产生错误:" + d.msg, {icon : 3});
}
});
}
查询列表
<script type="text/javascript">
var x;var obj;
$(function(){
x = new App();
obj=$('#obj').DataTable({
searching: false,
"ordering": false,
"serverSide": true,
'iDisplayLength': 5,
bLengthChange: false,
ajax:{
url : '/sysuniloginuser/getUnitsByPid',
type : "post",
data : {pId:31}
},
columns: [
{"data" : "name"},
{"data" : "id","sClass" : "text-center"}
],
columnDefs:[
{
targets:0,
render:function(data, type, row, meta){
return data;
}
},
{
targets:1,
render:function(data, type, row, meta){
var sUnit="";
/* if(data!=null){
for(i=0;i<data.length;i++){
sUnit+=data[i].shortName+"<br/>";
}
} */
let btn ='<span style="color:blue;cursor:pointer" οnclick="javascript:addtorole(\''+row.id+'\',\''+row.name+'\')">添加</span>';
return btn;
}
}
],
});
});
</script>
ajax提交
function addtorole(unitId,name){
//获取一级单位的父级id
var pId=$("#pId option:selected").val();
var url="/xcUnit/save";
var data={"unitId":unitId,"name":name,"pId":pId};
$.ajax({
url:url,
type:'post',
data:{
"unitId":unitId,"name":name,"pId":pId
},
dataType:'json',
success:function(result){
if(result.flag == 0){
layer.msg("添加成功",{icon: 1,time:500},function(){
parent.location.reload(true);
});
}else{
layer.msg(d.msg);
}
}
})
后台插入、修改
public void save(){
UnitModel unitModel=new UnitModel();
//获取单位id
Integer id=getParaToInt("unitId");
//获取单位名称
String name=getPara("name");
//获取父级id
Integer pId=getParaToInt("pId");
//查询单位是否存在
Integer res=unitModel.findUnitByid(id);
try {
//如果存在则修改
if(res>0){
unitModel.set("id",id).set("pId",pId).set("fullName",name);
if(unitModel.update()) {
renderJson();
}
}else{
unitModel.set("id",id).set("pId",pId).set("fullName",name);
if(unitModel.save()) {
renderJson();
}
}
}catch (Exception e){
renderJson(1,"添加失败!");
}
}
(通过单位性质id查询把所有的市一级单位、下属单位、县区一级单位)
/**
*
* @Title: findUnitsByUnitType
* @author 康凤伟
* @Description: TODO (通过单位性质id查询把所有的市一级单位、下属单位、县区一级单位)
* @param @param typeId
* @param @return 参数
* @return List 返回类型
* @throws
*/
public void findUnitsByUnitType(){
String typeId=getPara("typeId");
if(typeId.equals("")|| typeId.equals("null")) {
typeId="-1";
}
if(StrKit.isBlank(typeId)){
renderAPI(10003);
}else{
List<UnitModel> list =null;
//如果单位性质为未选择,UNITTYPE字段有可能为0或者null isDeleted
if(typeId.equals("0")) {
list = UnitModel.dao.findByWhereAndColumns("ISDELETED ,UNITID " + O.cf("id") + ",PID " + O.cf("pId")
+ ",UNITNAME " + O.cf("name") + ",UNITSHORTNAME"+O.cf("shortName")+",UNITPATH" + O.cf("parentIds") + " ",
" where ISDELETED=0 and (UNITTYPE IS NULL OR UNITTYPE IN("+typeId+") ) order by PID");
}else if (typeId.equals("-1")){
list = UnitModel.dao.findByWhereAndColumns("ISDELETED ,UNITID " + O.cf("id") + ",PID " + O.cf("pId")
+ ",UNITNAME " + O.cf("name") + ",UNITSHORTNAME"+O.cf("shortName")+",UNITPATH" + O.cf("parentIds") + " ",
" where ISDELETED=0 order by PID");
}else {
list = UnitModel.dao.findByWhereAndColumns("ISDELETED,UNITID " + O.cf("id") + ",PID " + O.cf("pId")
+ ",UNITNAME " + O.cf("name") + ",UNITSHORTNAME"+O.cf("shortName")+",UNITPATH" + O.cf("parentIds") + " ",
" where ISDELETED=0 and UNITTYPE IN("+typeId+") order by PID");
}
for (int i =0; i < list.size();i++) {
String parentIds=list.get(i).get("parentIds");
//s代表'>',如果是县区一级单位有三个>,如果是市级一级单位有两个>
int s=0;
for (int j =0; j < parentIds.length();j++) {
String res=parentIds.subSequence(j, j+1).toString();
if(res.equals(">")) {
s=s+1;
}
}
if(s==2 || s==1) {//市级单位不做任何操作
}else if(s==3) {//有可能为县区
//先判断是否包含县区3773
if(parentIds.indexOf(">3773>")==-1) {
list.remove(i);
i--;
if(i==0) {
i=0;
}
}
}else {//部门单位移除
list.remove(i);
i--;
if(i==0) {
i=0;
}
}
}
renderAPI(list);
}
}