字典类型添加编辑;

字典列表;
字典树;
pull/64/head
huangyao 2021-01-10 18:36:45 +08:00
parent 04a76c1409
commit acc28aa372
17 changed files with 441 additions and 210 deletions

View File

@ -1,19 +0,0 @@
package cn.stylefeng.guns.modular.dict;
import cn.stylefeng.roses.kernel.resource.api.annotation.ApiResource;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Controller;
/**
*
*
* @Author: huangyao
* @Date: 2021/1/6 20:52
**/
@Controller
@Slf4j
@ApiResource(name = "字典管理相关的界面渲染", path = "dictType")
public class DictViewController {
private String PREFIX = "/modular/system/dict";
}

View File

@ -1,13 +1,9 @@
package cn.stylefeng.guns.modular.dict;
package cn.stylefeng.guns.modular.dict.controller;
import cn.stylefeng.roses.kernel.dict.modular.pojo.request.DictTypeRequest;
import cn.stylefeng.roses.kernel.dict.modular.service.DictTypeService;
import cn.stylefeng.roses.kernel.resource.api.annotation.ApiResource;
import cn.stylefeng.roses.kernel.resource.api.annotation.GetResource;
import cn.stylefeng.roses.kernel.rule.pojo.response.ResponseData;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
/**
@ -23,9 +19,6 @@ public class DictTypeViewController {
private String PREFIX = "/modular/system/dictType";
@Autowired
private DictTypeService dictTypeService;
/**
* --
*
@ -34,7 +27,7 @@ public class DictTypeViewController {
* @author huangyao
* @date 2021/1/6 21:08
*/
@GetResource(name = "字典类型管理-字典类型-视图", path = "", requiredPermission = false, requiredLogin = false)
@GetResource(name = "字典类型管理-列表-视图", path = "")
public String indexView() {
return PREFIX + "/dictType.html";
}
@ -47,7 +40,7 @@ public class DictTypeViewController {
* @author huangyao
* @date 2021/1/6 21:25
*/
@GetResource(name = "字典类型管理-添加-视图", path = "/addView", requiredPermission = false, requiredLogin = false)
@GetResource(name = "字典类型管理-添加-视图", path = "/addView")
public String addView() {
return PREFIX + "/dictType_add.html";
}
@ -60,12 +53,9 @@ public class DictTypeViewController {
* @author huangyao
* @date 2021/1/6 21:26
*/
@GetResource(name = "字典类型管理-编辑-视图", path = "/editView", requiredPermission = false, requiredLogin = false)
@GetResource(name = "字典类型管理-编辑-视图", path = "/editView")
public String editView() {
return PREFIX + "/dictType_edit.html";
}
// public ResponseData list(DictTypeRequest dictTypeRequest) {
// return ResponseData.;
// }
}

View File

@ -0,0 +1,110 @@
package cn.stylefeng.guns.modular.dict.controller;
import cn.stylefeng.guns.modular.dict.service.ExtendDictService;
import cn.stylefeng.roses.kernel.dict.modular.entity.SysDict;
import cn.stylefeng.roses.kernel.dict.modular.entity.SysDictType;
import cn.stylefeng.roses.kernel.dict.modular.pojo.request.DictRequest;
import cn.stylefeng.roses.kernel.dict.modular.service.DictService;
import cn.stylefeng.roses.kernel.dict.modular.service.DictTypeService;
import cn.stylefeng.roses.kernel.resource.api.annotation.ApiResource;
import cn.stylefeng.roses.kernel.resource.api.annotation.GetResource;
import cn.stylefeng.roses.kernel.system.pojo.ztree.ZTreeNode;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.servlet.ModelAndView;
import java.util.List;
/**
*
*
* @Author: huangyao
* @Date: 2021/1/6 20:52
**/
@Controller
@Slf4j
@ApiResource(name = "字典管理相关的界面渲染", path = "dict")
public class DictViewController {
private String PREFIX = "/modular/system/dict";
@Autowired
private ExtendDictService extendDictService;
@Autowired
private DictService dictService;
@Autowired
private DictTypeService dictTypeService;
/**
* --
*
* @param
* @return
* @author huangyao
* @date 2021/1/9 22:37
*/
@GetResource(name = "字典管理-列表-视图", path = "")
public ModelAndView indexView(ModelAndView view, @RequestParam Long dictTypeId) {
SysDictType dictType = dictTypeService.getById(dictTypeId);
view.addObject("dictTypeId", dictType.getDictTypeId());
view.addObject("dictTypeName", dictType.getDictTypeName());
view.addObject("dictTypeCode", dictType.getDictTypeCode());
view.setViewName(PREFIX + "/dict.html");
return view;
}
/**
* --
*
* @param
* @return
* @author huangyao
* @date 2021/1/9 22:37
*/
@GetResource(name = "字典管理-添加-视图", path = "/addView")
public ModelAndView addView(ModelAndView view, @RequestParam Long dictTypeId) {
SysDictType dictType = dictTypeService.getById(dictTypeId);
view.addObject("dictTypeName", dictType.getDictTypeName());
view.addObject("dictTypeId", dictType.getDictTypeId());
view.addObject("dictTypeCode", dictType.getDictTypeCode());
view.setViewName(PREFIX + "/dict_add.html");
return view;
}
/**
* --
*
* @param
* @return
* @author huangyao
* @date 2021/1/9 22:38
*/
@GetResource(name = "字典管理-编辑-视图", path = "/editView")
public ModelAndView editView(ModelAndView view, @RequestParam Long dictId) {
SysDict dict = dictService.findDetail(dictId);
SysDictType dictType = dictTypeService.getById(dict.getDictId());
view.addObject("dictTypeName", dictType.getDictTypeName());
view.addObject("dictTypeId", dictType.getDictTypeId());
view.addObject("dictTypeCode", dictType.getDictTypeCode());
view.setViewName(PREFIX + "/dict_edit.html");
return view;
}
/**
*
*
* @param
* @return
* @author huangyao
* @date 2021/1/10 17:31
*/
@GetResource(name = "获取zTree形式的字典树layui版本", path = "/zTree")
@ResponseBody
public List<ZTreeNode> layuiSelectParentMenuTreeList(DictRequest dictRequest) {
return this.extendDictService.dictZTree(dictRequest);
}
}

View File

@ -0,0 +1,27 @@
package cn.stylefeng.guns.modular.dict.service;
import cn.stylefeng.roses.kernel.dict.modular.pojo.request.DictRequest;
import cn.stylefeng.roses.kernel.system.pojo.ztree.ZTreeNode;
import java.util.List;
/**
*
*
* @param
* @author huangyao
* @return
* @date 2021/1/10 16:23
*/
public interface ExtendDictService {
/**
* ztree
*
* @param
* @return
* @author huangyao
* @date 2021/1/10 16:26
*/
List<ZTreeNode> dictZTree(DictRequest dictRequest);
}

View File

@ -0,0 +1,96 @@
package cn.stylefeng.guns.modular.dict.service.impl;
import cn.hutool.core.util.ObjectUtil;
import cn.stylefeng.guns.modular.dict.service.ExtendDictService;
import cn.stylefeng.roses.kernel.dict.modular.entity.SysDict;
import cn.stylefeng.roses.kernel.dict.modular.pojo.request.DictRequest;
import cn.stylefeng.roses.kernel.dict.modular.service.DictService;
import cn.stylefeng.roses.kernel.rule.enums.YesOrNotEnum;
import cn.stylefeng.roses.kernel.system.pojo.ztree.ZTreeNode;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
/**
*
*
* @param
* @author huangyao
* @return
* @date 2021/1/10 16:24
*/
@Service
public class ExtendDictServiceImpl implements ExtendDictService {
@Autowired
private DictService dictService;
@Override
public List<ZTreeNode> dictZTree(DictRequest dictRequest) {
// 查询条件
LambdaQueryWrapper<SysDict> queryWrapper = createWrapper(dictRequest);
List<SysDict> dictList = dictService.list(queryWrapper);
// 构建ztree
ArrayList<ZTreeNode> zTreeNodes = new ArrayList<>();
for (SysDict dict : dictList) {
ZTreeNode zTreeNode = new ZTreeNode();
zTreeNode.setId(dict.getDictId());
zTreeNode.setpId(dict.getDictParentId());
zTreeNode.setName(dict.getDictName());
zTreeNode.setOpen(true);
zTreeNodes.add(zTreeNode);
}
// 构建已选中的状态
return zTreeNodes;
}
/**
* wrapper
*
* @param
* @return
* @author huangyao
* @date 2021/1/10 16:33
*/
private LambdaQueryWrapper<SysDict> createWrapper(DictRequest dictRequest) {
LambdaQueryWrapper<SysDict> queryWrapper = new LambdaQueryWrapper<>();
if (ObjectUtil.isNotNull(dictRequest)) {
// 拼接字典名称查询条件
if (ObjectUtil.isNotEmpty(dictRequest.getDictName())) {
queryWrapper.like(SysDict::getDictName, dictRequest.getDictName());
}
// 拼接字典拼音查询条件
if (ObjectUtil.isNotEmpty(dictRequest.getDictNamePinYin())) {
queryWrapper.eq(SysDict::getDictNamePinyin, dictRequest.getDictNamePinYin());
}
// 根据字典类型查询条件
if (ObjectUtil.isNotEmpty(dictRequest.getDictTypeCode())) {
queryWrapper.eq(SysDict::getDictTypeCode, dictRequest.getDictTypeCode());
}
// 拼接字典父级id查询条件
if (ObjectUtil.isNotEmpty(dictRequest.getDictParentId())) {
queryWrapper
.eq(SysDict::getDictParentId, dictRequest.getDictParentId())
.or()
.like(SysDict::getDictPids, dictRequest.getDictPids());
}
}
// 查询未删除状态的
queryWrapper.eq(SysDict::getDelFlag, YesOrNotEnum.N.getCode());
// 根据排序升序排列,序号越小越在前
queryWrapper.orderByAsc(SysDict::getDictSort);
return queryWrapper;
}
}

View File

@ -1,8 +1,8 @@
layui.use(['ax', 'treeTable', 'func'], function () {
layui.use(['treeTable', 'func', 'HttpRequest'], function () {
var $ = layui.$;
var $ax = layui.ax;
var treeTable = layui.treeTable;
var func = layui.func;
var HttpRequest = layui.HttpRequest;
//table的初始化实例
var insTb;
@ -53,7 +53,7 @@ layui.use(['ax', 'treeTable', 'func'], function () {
func.open({
height: 650,
title: '添加字典',
content: Feng.ctxPath + '/dict/add?dictTypeId=' + $("#dictTypeId").val(),
content: Feng.ctxPath + '/dict/addView?dictTypeId=' + $("#dictTypeId").val(),
tableId: Dict.tableId,
endCallback: function () {
Dict.initTable(Dict.tableId);
@ -70,7 +70,7 @@ layui.use(['ax', 'treeTable', 'func'], function () {
func.open({
height: 650,
title: '修改字典',
content: Feng.ctxPath + '/dict/edit?dictId=' + data.dictId,
content: Feng.ctxPath + '/dict/editView?dictId=' + data.dictId,
tableId: Dict.tableId,
endCallback: function () {
Dict.initTable(Dict.tableId);
@ -85,14 +85,14 @@ layui.use(['ax', 'treeTable', 'func'], function () {
*/
Dict.onDeleteItem = function (data) {
var operation = function () {
var ajax = new $ax(Feng.ctxPath + "/dict/delete", function (data) {
Feng.success("删除成功!");
Dict.search();
}, function (data) {
Feng.error("删除失败!" + data.responseJSON.message + "!");
});
ajax.set("dictId", data.dictId);
ajax.start();
// var ajax = new $ax(Feng.ctxPath + "/dict/delete", function (data) {
// Feng.success("删除成功!");
// Dict.search();
// }, function (data) {
// Feng.error("删除失败!" + data.responseJSON.message + "!");
// });
// ajax.set("dictId", data.dictId);
// ajax.start();
};
Feng.confirm("是否删除?", operation);
};
@ -103,6 +103,7 @@ layui.use(['ax', 'treeTable', 'func'], function () {
Dict.initTable = function (dictId, data) {
return treeTable.render({
elem: '#' + dictId,
url: Feng.ctxPath + '/dict/getDictListPage?dictTypeId=' + $("#dictTypeId").val(),
tree: {
iconIndex: 1, // 折叠图标显示在第几列
idName: 'dictId', // 自定义id字段的名称
@ -110,16 +111,27 @@ layui.use(['ax', 'treeTable', 'func'], function () {
haveChildName: 'haveChild', // 自定义标识是否还有子节点的字段名称
isPidData: true // 是否是pid形式数据
},
page: true,
request: {pageName: 'pageNo', limitName: 'pageSize'}, //自定义分页参数
height: "full-98",
cols: Dict.initColumn(),
reqData: function (data, callback) {
var ajax = new $ax(Feng.ctxPath + '/dict/list?dictTypeId=' + $("#dictTypeId").val(), function (res) {
callback(res.data);
}, function (res) {
Feng.error("删除失败!" + res.responseJSON.message + "!");
});
ajax.start();
}
// reqData: function (data, callback) {
// // var ajax = new $ax(Feng.ctxPath + '/dictType/getDictTypePageList?dictTypeId=' + $("#dictTypeId").val(), function (res) {
// // callback(res.data);
// // }, function (res) {
// // Feng.error("删除失败!" + res.responseJSON.message + "!");
// // });
// // ajax.start();
// var httpRequest = new HttpRequest(Feng.ctxPath + '/dict/getDictListPage?dictTypeId=' + $("#dictTypeId").val(), 'get', function (data) {
// console.log(res.data)
// callback(res.data);
// }, function (data) {
// Feng.error("加载失败!" + data.message + "!");
// });
// httpRequest.set(data);
// httpRequest.start(true);
// },
parseData: Feng.parseData
});
};

View File

@ -17,45 +17,40 @@ var DictInfoDlg = {
}
};
layui.use(['form', 'ax', 'admin'], function () {
layui.use(['form', 'admin', 'HttpRequest'], function () {
var $ = layui.jquery;
var $ax = layui.ax;
var form = layui.form;
var admin = layui.admin;
//表单提交事件
form.on('submit(btnSubmit)', function (data) {
var ajax = new $ax(Feng.ctxPath + "/dict/addItem", function (data) {
Feng.success("添加成功!");
//传给上个页面刷新table用
admin.putTempData('formOk', true);
//关掉对话框
admin.closeThisDialog();
}, function (data) {
Feng.error("添加失败!" + data.responseJSON.message)
});
ajax.set(data.field);
ajax.start();
return false;
var request = new HttpRequest(Feng.ctxPath + "/dict/addDict", 'post', function (data) {
admin.closeThisDialog();
Feng.success("添加成功!");
admin.putTempData('formOk', true);
}, function (data) {
admin.closeThisDialog();
Feng.error("添加失败!" + data.message);
});
request.set(data.field);
request.start(true);
});
//父级字典时
$('#parentName').click(function () {
var formName = encodeURIComponent("parent.DictInfoDlg.data.parentName");
var formId = encodeURIComponent("parent.DictInfoDlg.data.parentId");
var treeUrl = encodeURIComponent("/dict/ztree?dictTypeId=" + $("#dictTypeId").val());
var treeUrl = encodeURIComponent("/dict/zTree?dictTypeId=" + $("#dictTypeId").val());
// var treeUrl = encodeURIComponent("/dict/zTree?roleId=1339550467939639303");
layer.open({
type: 2,
title: '父级字典',
area: ['300px', '400px'],
content: Feng.ctxPath + '/system/commonTree?formName=' + formName + "&formId=" + formId + "&treeUrl=" + treeUrl,
content: Feng.ctxPath + '/view/common/tree?formName=' + formName + "&formId=" + formId + "&treeUrl=" + treeUrl,
end: function () {
$("#parentId").val(DictInfoDlg.data.parentId);
$("#dictParentId").val(DictInfoDlg.data.parentId);
$("#parentName").val(DictInfoDlg.data.parentName);
}
});

View File

@ -16,34 +16,33 @@ var DictInfoDlg = {
}
};
layui.use(['form', 'ax', 'admin'], function () {
layui.use(['form', 'admin'], function () {
var $ = layui.jquery;
var $ax = layui.ax;
var form = layui.form;
var admin = layui.admin;
//获取详情信息,填充表单
var ajax = new $ax(Feng.ctxPath + "/dict/detail?dictId=" + Feng.getUrlParam("dictId"));
var result = ajax.start();
form.val('dictForm', result.data);
// var ajax = new $ax(Feng.ctxPath + "/dict/detail?dictId=" + Feng.getUrlParam("dictId"));
// var result = ajax.start();
// form.val('dictForm', result.data);
//表单提交事件
form.on('submit(btnSubmit)', function (data) {
var ajax = new $ax(Feng.ctxPath + "/dict/editItem", function (data) {
Feng.success("更新成功!");
// var ajax = new $ax(Feng.ctxPath + "/dict/editItem", function (data) {
// Feng.success("更新成功!");
//传给上个页面刷新table用
admin.putTempData('formOk', true);
// //传给上个页面刷新table用
// admin.putTempData('formOk', true);
//关掉对话框
admin.closeThisDialog();
// //关掉对话框
// admin.closeThisDialog();
}, function (data) {
Feng.error("更新失败!" + data.responseJSON.message)
});
ajax.set(data.field);
ajax.start();
return false;
// }, function (data) {
// Feng.error("更新失败!" + data.responseJSON.message)
// });
// ajax.set(data.field);
// ajax.start();
// return false;
});
//父级字典时

View File

@ -1,8 +1,9 @@
layui.use(['table', 'func'], function () {
layui.use(['table', 'func', 'HttpRequest', 'form'], function () {
var $ = layui.$;
var table = layui.table;
var func = layui.func;
var HttpRequest = layui.HttpRequest;
var form = layui.form;
/**
* 字典类型表管理
@ -19,37 +20,25 @@ layui.use(['table', 'func'], function () {
{type: 'checkbox'},
{field: 'dictTypeId', hide: true, title: '字典类型id'},
{
field: 'name', align: "center", sort: true, title: '类型名称', templet: function (d) {
field: 'dictTypeName', align: "center", sort: true, title: '类型名称', templet: function (d) {
var url = Feng.ctxPath + '/dict?dictTypeId=' + d.dictTypeId;
return '<a style="color: #01AAED;" href="' + url + '">' + d.name + '</a>';
return '<a style="color: #01AAED;" href="' + url + '">' + d.dictTypeName + '</a>';
}
},
{
field: 'code', align: "center", sort: true, title: '类型编码', minWidth: 166, templet: function (d) {
var url = Feng.ctxPath + '/dict?dictTypeId=' + d.dictTypeId;
return '<a style="color: #01AAED;" href="' + url + '">' + d.code + '</a>';
}
},
{
field: 'systemFlag', align: "center", sort: true, title: '是否是系统字典', templet: function (d) {
if (d.systemFlag === 'Y') {
return "是";
field: 'dictTypeClass', align: "center", sort: true, title: '字典类型', templet: function (d) {
if (d.dictTypeClass === 1) {
return "业务类型";
} else {
return "";
return "系统类型";
}
}
},
{field: 'description', align: "center", sort: true, title: '字典描述'},
{
field: 'status', sort: true, align: "center", title: '状态', templet: function (d) {
if (d.status === 'ENABLE') {
return "启用";
} else {
return "禁用";
}
}
},
{field: 'createTime', align: "center", sort: true, title: '添加时间', minWidth: 161},
{field: 'dictTypeNamePinYin', align: "center", sort: true, title: '名词拼音'},
{field: 'dictTypeCode', align: "center", sort: true, title: '类型编码', minWidth: 166},
{field: 'dictTypeBusCode', align: "center", sort: true, title: '业务编码', minWidth: 166},
{field: 'dictTypeDesc', align: "center", sort: true, title: '字典描述'},
{field: 'statusFlag', sort: true, align: "center", title: '状态', templet: '#statusFlagTpl'},
{align: 'center', toolbar: '#tableBar', title: '操作'}
]];
};
@ -59,9 +48,9 @@ layui.use(['table', 'func'], function () {
*/
DictType.search = function () {
var queryData = {};
queryData['condition'] = $("#condition").val();
queryData['systemFlag'] = $("#systemFlag").val();
queryData['status'] = $("#status").val();
queryData['dictTypeName'] = $("#dictTypeName").val();
queryData['dictTypeClass'] = $("#dictTypeClass").val();
queryData['statusFlag'] = $("#statusFlag").val();
table.reload(DictType.tableId, {
where: queryData, page: {curr: 1}
});
@ -72,7 +61,7 @@ layui.use(['table', 'func'], function () {
*/
DictType.openAddDlg = function () {
func.open({
height: 630,
height: 700,
title: '添加字典类型',
content: Feng.ctxPath + '/dictType/addView',
tableId: DictType.tableId
@ -86,7 +75,7 @@ layui.use(['table', 'func'], function () {
*/
DictType.openEditDlg = function (data) {
func.open({
height: 630,
height: 700,
title: '修改字典类型',
content: Feng.ctxPath + '/dictType/editView?dictTypeId=' + data.dictTypeId,
tableId: DictType.tableId
@ -99,34 +88,49 @@ layui.use(['table', 'func'], function () {
* @param data 点击按钮时候的行数据
*/
DictType.onDeleteItem = function (data) {
if (data.systemFlag === 'Y') {
Feng.error("系统字典无法删除");
if (data.dictTypeClass === 2) {
Feng.error("系统类型无法删除");
return;
}
var operation = function () {
// var ajax = new $ax(Feng.ctxPath + "/dictType/delete", function (data) {
// Feng.success("删除成功!");
// table.reload(DictType.tableId);
// }, function (data) {
// Feng.error("删除失败!" + data.responseJSON.message + "!");
// });
// ajax.set("dictTypeId", data.dictTypeId);
// ajax.start();
var httpRequest = new HttpRequest(Feng.ctxPath + "/dictType/deleteDictType", 'post', function (data) {
Feng.success("删除成功!");
table.reload(DictType.tableId);
}, function (data) {
Feng.error("删除失败!" + data.message + "!");
});
httpRequest.set(data);
httpRequest.start(true);
};
Feng.confirm("是否删除?", operation);
};
// 修改字典类型状态
DictType.updateStatus = function (dictTypeId, checked) {
var httpRequest = new HttpRequest(Feng.ctxPath + "/dictType/updateStatus", 'post', function (data) {
table.reload(DictType.tableId);
Feng.success("修改成功!");
}, function (data) {
table.reload(DictType.tableId);
Feng.error("修改失败!" + data.responseJSON.message);
});
httpRequest.set({"dictTypeId": dictTypeId, "statusFlag": checked});
httpRequest.start(true);
};
// 渲染表格
var tableResult = table.render({
elem: '#' + DictType.tableId,
url: Feng.ctxPath + '/dictType/getDictTypePageList',
page: true,
height: "full-98",
request: {pageName: 'pageNo', limitName: 'pageSize'}, //自定义分页参数
height: "full-158",
cellMinWidth: 100,
cols: DictType.initColumn()
cols: DictType.initColumn(),
parseData: Feng.parseData
});
// 搜索按钮点击事件
@ -150,4 +154,11 @@ layui.use(['table', 'func'], function () {
DictType.onDeleteItem(data);
}
});
// 修改状态
form.on('switch(statusFlag)', function (obj) {
var dictTypeId = obj.elem.value;
var checked = obj.elem.checked ? 1 : 2;
DictType.updateStatus(dictTypeId, checked);
});
});

View File

@ -1,20 +1,3 @@
/**
* 详情对话框
*/
var DictTypeInfoDlg = {
data: {
systemFlag: "",
code: "",
name: "",
description: "",
status: "",
createTime: "",
createUser: "",
updateTime: "",
updateUser: ""
}
};
layui.use(['form', 'admin', 'HttpRequest'], function () {
var $ = layui.jquery;
var form = layui.form;
@ -35,5 +18,16 @@ layui.use(['form', 'admin', 'HttpRequest'], function () {
request.set(data.field);
request.start(true);
});
// 编码类型切换事件
form.on('radio(dictTypeClass)', function (data) {
if ($('input[name="dictTypeClass"]:checked').val() === '1') {
$('#dictTypeBusCode').parents('.layui-inline').show();
} else {
$('#dictTypeBusCode').parents('.layui-inline').hide();
$('#dictTypeBusCode').val('');
}
form.render();
});
});

View File

@ -1,49 +1,46 @@
/**
* 详情对话框
*/
var DictTypeInfoDlg = {
data: {
systemFlag: "",
code: "",
name: "",
description: "",
status: "",
createTime: "",
createUser: "",
updateTime: "",
updateUser: ""
}
};
layui.use(['form', 'ax', 'admin'], function () {
layui.use(['form', 'admin', 'HttpRequest'], function () {
var $ = layui.jquery;
var $ax = layui.ax;
var form = layui.form;
var admin = layui.admin;
var HttpRequest = layui.HttpRequest;
//获取详情信息,填充表单
var ajax = new $ax(Feng.ctxPath + "/dictType/detail?dictTypeId=" + Feng.getUrlParam("dictTypeId"));
var result = ajax.start();
form.val('dictTypeForm', result.data);
var request = new HttpRequest(Feng.ctxPath + "/dictType/getDictDetail?dictTypeId=" + Feng.getUrlParam("dictTypeId"), 'get', function (result) {
console.log(result)
if(result.data.dictTypeClass === 2){
$('input,select,textarea').attr("disabled",true).attr('readonly',true);
}
form.val('dictTypeForm', result.data);
}, function (data) {
Feng.error("添加失败!" + data.message);
});
request.start();
//表单提交事件
form.on('submit(btnSubmit)', function (data) {
var ajax = new $ax(Feng.ctxPath + "/dictType/editItem", function (data) {
Feng.success("更新成功!");
//传给上个页面刷新table用
admin.putTempData('formOk', true);
//关掉对话框
var request = new HttpRequest(Feng.ctxPath + "/dictType/updateDictType", 'post', function (data) {
admin.closeThisDialog();
Feng.success("更新成功!");
admin.putTempData('formOk', true);
}, function (data) {
Feng.error("更新失败!" + data.responseJSON.message)
admin.closeThisDialog();
Feng.error("更新失败!" + data.message);
});
ajax.set(data.field);
ajax.start();
return false;
request.set(data.field);
request.start(true);
});
// 编码类型切换事件
form.on('radio(dictTypeClass)', function (data) {
if ($('input[name="dictTypeClass"]:checked').val() === '1') {
$('#dictTypeBusCode').parents('.layui-inline').show();
} else {
$('#dictTypeBusCode').parents('.layui-inline').hide();
$('#dictTypeBusCode').val('');
}
form.render();
});
});

View File

@ -13,6 +13,7 @@
<div class="layui-form-item">
<div class="layui-inline">
<input type="hidden" id="dictTypeId" value="${dictTypeId}"/>
<input type="hidden" id="dictTypeCode" value="${dictTypeCode}"/>
<input id="condition" class="layui-input" type="text" placeholder="名称/编码" autocomplete="off"/>
</div>
<div class="layui-inline">

View File

@ -7,6 +7,7 @@
<div class="layui-card-body">
<div class="layui-form-item layui-row">
<input id="dictTypeId" name="dictTypeId" type="hidden" value="${dictTypeId}"/>
<input id="dictTypeCode" name="dictTypeCode" type="hidden" value="${dictTypeCode}"/>
<div class="layui-inline layui-col-md12">
<label class="layui-form-label">字典类型</label>
<div class="layui-input-block">
@ -16,19 +17,19 @@
<div class="layui-inline layui-col-md12">
<label class="layui-form-label">字典名称<span style="color: red;">*</span></label>
<div class="layui-input-block">
<input id="name" name="name" placeholder="请输入字典名称" type="text" class="layui-input" lay-verify="required" required/>
<input id="dictName" name="dictName" placeholder="请输入字典名称" type="text" class="layui-input" lay-verify="required" required/>
</div>
</div>
<div class="layui-inline layui-col-md12">
<label class="layui-form-label">字典编码<span style="color: red;">*</span></label>
<div class="layui-input-block">
<input id="code" name="code" placeholder="请输入字典编码" type="text" class="layui-input" lay-verify="required" required/>
<input id="dictCode" name="dictCode" placeholder="请输入字典编码" type="text" class="layui-input" lay-verify="required" required/>
</div>
</div>
<div class="layui-inline layui-col-md12">
<label class="layui-form-label">上级字典<span style="color: red;">*</span></label>
<div class="layui-input-block">
<input id="parentId" name="parentId" type="hidden" class="layui-input" lay-verify="required" required/>
<input id="dictParentId" name="dictParentId" type="hidden" class="layui-input" lay-verify="required" required/>
<input id="parentName" name="parentName" placeholder="请选择上级字典,如没有请选择顶级" type="text" class="layui-input" lay-verify="required" required readonly="readonly"/>
</div>
</div>

View File

@ -10,7 +10,8 @@
<div class="layui-inline layui-col-md12">
<label class="layui-form-label">字典类型</label>
<div class="layui-input-block">
<input id="dictTypeId" name="dictTypeId" type="hidden" value="${dictTypeId}"/>
<input id="dictTypeId" name="dictTypeId" type="hidden" value="${dictTypeId}"/>
<input id="dictTypeCode" name="dictTypeCode" type="hidden" value="${dictTypeCode}"/>
<input type="text" class="layui-input white-border layui-disabled" value="${dictTypeName}" disabled="disabled"/>
</div>
</div>

View File

@ -12,20 +12,20 @@
<div class="layui-form toolbar">
<div class="layui-form-item">
<div class="layui-inline">
<input id="condition" class="layui-input" type="text" placeholder="名称/编码" autocomplete="off"/>
<input id="dictTypeName" class="layui-input" type="text" placeholder="名称/编码" autocomplete="off"/>
</div>
<div class="layui-inline">
<select id="systemFlag">
<select id="dictTypeClass">
<option value="">字典类型</option>
<option value="Y">系统类型</option>
<option value="N">系统类型</option>
<option value="1">业务类型</option>
<option value="2">系统类型</option>
</select>
</div>
<div class="layui-inline">
<select id="status">
<select id="statusFlag">
<option value="">状态</option>
<option value="ENABLE">启用</option>
<option value="DISABLE">禁用</option>
<option value="1">启用</option>
<option value="2">禁用</option>
</select>
</div>
<div class="layui-inline">
@ -46,4 +46,8 @@
<a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="delete">删除</a>
</script>
<script type="text/html" id="statusFlagTpl">
<input type="checkbox" lay-filter="statusFlag" value="{{d.dictTypeId}}" lay-skin="switch" lay-text="正常|禁用" {{d.statusFlag=='1'?'checked':''}}/>
</script>
@}

View File

@ -13,6 +13,14 @@
<input id="dictTypeName" name="dictTypeName" placeholder="请输入字典类型名称,例如:状态标识" type="text" class="layui-input" lay-verify="required" required/>
</div>
</div>
<div class="layui-inline layui-col-md12">
<label class="layui-form-label">系统字典<span style="color: red;">*</span></label>
<div class="layui-input-block">
<input type="radio" name="dictTypeClass" value="1" title="业务类型" lay-filter="dictTypeClass" checked="">
<input type="radio" name="dictTypeClass" value="2" title="系统类型" lay-filter="dictTypeClass">
</div>
<div class="layui-form-mid layui-word-aux">系统类型与代码中枚举关联,添加后不可修改</div>
</div>
<div class="layui-inline layui-col-md12">
<label class="layui-form-label">类型编码<span style="color: red;">*</span></label>
<div class="layui-input-block">
@ -20,12 +28,10 @@
</div>
</div>
<div class="layui-inline layui-col-md12">
<label class="layui-form-label">系统字典<span style="color: red;">*</span></label>
<label class="layui-form-label">业务编码</label>
<div class="layui-input-block">
<input type="radio" name="dictTypeClass" value="1" title="业务类型">
<input type="radio" name="dictTypeClass" value="2" title="系统类型" checked="">
<input id="dictTypeBusCode" name="dictTypeBusCode" placeholder="请输入字典业务编码" type="text" class="layui-input"/>
</div>
<div class="layui-form-mid layui-word-aux">系统字典与代码中枚举关联,添加后不可修改</div>
</div>
<div class="layui-inline layui-col-md12">
<label class="layui-form-label">排序</label>

View File

@ -10,27 +10,33 @@
<div class="layui-inline layui-col-md12">
<label class="layui-form-label">名称<span style="color: red;">*</span></label>
<div class="layui-input-block">
<input id="name" name="name" placeholder="请输入字典类型名称,例如:状态标识" type="text" class="layui-input" lay-verify="required" required/>
</div>
</div>
<div class="layui-inline layui-col-md12">
<label class="layui-form-label">类型编码<span style="color: red;">*</span></label>
<div class="layui-input-block">
<input id="code" name="code" type="text" class="layui-input layui-disabled" disabled="disabled" lay-verify="required" required/>
<input id="dictTypeName" name="dictTypeName" placeholder="请输入字典类型名称,例如:状态标识" type="text" class="layui-input" lay-verify="required" required/>
</div>
</div>
<div class="layui-inline layui-col-md12">
<label class="layui-form-label">系统字典<span style="color: red;">*</span></label>
<div class="layui-input-block">
<input type="radio" name="systemFlag" value="Y" title="是" disabled>
<input type="radio" name="systemFlag" value="N" title="否" checked="" disabled>
<input type="radio" name="dictTypeClass" value="1" title="业务类型" lay-filter="dictTypeClass" checked="">
<input type="radio" name="dictTypeClass" value="2" title="系统类型" lay-filter="dictTypeClass">
</div>
<div class="layui-form-mid layui-word-aux">系统类型与代码中枚举关联,添加后不可修改</div>
</div>
<div class="layui-inline layui-col-md12">
<label class="layui-form-label">类型编码<span style="color: red;">*</span></label>
<div class="layui-input-block">
<input id="dictTypeCode" name="dictTypeCode" placeholder="请输入字典类型编码例如STATUS" type="text" class="layui-input" lay-verify="required" required/>
</div>
</div>
<div class="layui-inline layui-col-md12">
<label class="layui-form-label">业务编码<span style="color: red;">*</span></label>
<div class="layui-input-block">
<input id="dictTypeBusCode" name="dictTypeBusCode" placeholder="请输入字典业务编码" type="text" class="layui-input"/>
</div>
<div class="layui-form-mid layui-word-aux">系统字典与代码中枚举关联,添加后不可修改</div>
</div>
<div class="layui-inline layui-col-md12">
<label class="layui-form-label">排序</label>
<div class="layui-input-block">
<input id="sort" name="sort" placeholder="请输入字典排序" type="text" class="layui-input">
<input id="dictTypeSort" name="dictTypeSort" placeholder="请输入字典排序" type="text" class="layui-input">
</div>
</div>
<div class="layui-inline layui-col-md12">