mirror of https://gitee.com/stylefeng/guns
parent
04a76c1409
commit
acc28aa372
|
@ -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";
|
||||
}
|
|
@ -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.;
|
||||
// }
|
||||
}
|
|
@ -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);
|
||||
}
|
||||
|
||||
}
|
|
@ -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);
|
||||
}
|
|
@ -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;
|
||||
}
|
||||
}
|
|
@ -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
|
||||
});
|
||||
};
|
||||
|
||||
|
|
|
@ -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);
|
||||
}
|
||||
});
|
||||
|
|
|
@ -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;
|
||||
});
|
||||
|
||||
//父级字典时
|
||||
|
|
|
@ -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);
|
||||
});
|
||||
});
|
||||
|
|
|
@ -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();
|
||||
});
|
||||
|
||||
});
|
|
@ -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();
|
||||
});
|
||||
|
||||
});
|
|
@ -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">
|
||||
|
|
|
@ -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>
|
||||
|
|
|
@ -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>
|
||||
|
|
|
@ -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>
|
||||
|
||||
@}
|
|
@ -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>
|
||||
|
|
|
@ -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">
|
||||
|
|
Loading…
Reference in New Issue