mirror of https://gitee.com/stylefeng/guns
【Organization】增加组织架构页面,功能暂未实现
parent
b2ca193586
commit
b5b8d75da2
|
@ -0,0 +1,53 @@
|
||||||
|
package cn.stylefeng.guns.modular.organization;
|
||||||
|
|
||||||
|
import cn.stylefeng.roses.kernel.resource.api.annotation.ApiResource;
|
||||||
|
import cn.stylefeng.roses.kernel.resource.api.annotation.GetResource;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.springframework.stereotype.Controller;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 职位管理控制器
|
||||||
|
*
|
||||||
|
* @author chenjinlong
|
||||||
|
* @date 2020/12/28 9:28
|
||||||
|
*/
|
||||||
|
@Controller
|
||||||
|
@Slf4j
|
||||||
|
@ApiResource(name = "职位管理相关的界面渲染", path = "organization")
|
||||||
|
public class OrganizationViewController {
|
||||||
|
|
||||||
|
private String PREFIX = "/modular/system/organization";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 机构管理-首页-视图
|
||||||
|
*
|
||||||
|
* @author chenjinlong
|
||||||
|
* @date 2020/11/04 11:07
|
||||||
|
*/
|
||||||
|
@GetResource(name = "机构管理-首页-视图", path = "", requiredPermission = false, requiredLogin = false)
|
||||||
|
public String indexView() {
|
||||||
|
return PREFIX + "/organization.html";
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 机构管理—新增-视图
|
||||||
|
*
|
||||||
|
* @author chenjinlong
|
||||||
|
* @date 2020/11/04 11:07
|
||||||
|
*/
|
||||||
|
@GetResource(name = "机构管理—新增-视图", path = "/addView", requiredPermission = false, requiredLogin = false)
|
||||||
|
public String addView() {
|
||||||
|
return PREFIX + "/organization_add.html";
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 机构管理_修改_视图
|
||||||
|
*
|
||||||
|
* @author chenjinlong
|
||||||
|
* @date 2020/11/04 11:07
|
||||||
|
*/
|
||||||
|
@GetResource(name = "机构管理-修改-视图", path = "editView", requiredPermission = false, requiredLogin = false)
|
||||||
|
public String editView() {
|
||||||
|
return PREFIX + "/organization_edit.html";
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,144 @@
|
||||||
|
layui.use(['table', 'admin', 'ax', 'form', 'func', 'ajaxUtil', 'dropdown','util'], function () {
|
||||||
|
var $ = layui.$;
|
||||||
|
var table = layui.table;
|
||||||
|
var form = layui.form;
|
||||||
|
var func = layui.func;
|
||||||
|
var ajaxUtil = layui.ajaxUtil;
|
||||||
|
var dropdown = layui.dropdown;
|
||||||
|
var util = layui.util;
|
||||||
|
|
||||||
|
// 职位表管理
|
||||||
|
var Organization = {
|
||||||
|
tableId: "organizationTable"
|
||||||
|
};
|
||||||
|
|
||||||
|
// 初始化表格的列
|
||||||
|
Organization.initColumn = function () {
|
||||||
|
return [[
|
||||||
|
{type: 'checkbox'},
|
||||||
|
{field: 'positionId', hide: true, title: '主键id'},
|
||||||
|
{field: 'positionName', sort: true, title: '职位名称'},
|
||||||
|
{field: 'positionCode', sort: true, title: '职位编码'},
|
||||||
|
{field: 'positionRemark', sort: true, title: '备注'},
|
||||||
|
{field: 'createTime', sort: true, title: '创建时间',templet: function (d) {
|
||||||
|
return util.toDateString(d.createTime);
|
||||||
|
}},
|
||||||
|
{field: 'updateTime', sort: true, title: '更新时间',templet: function (d) {
|
||||||
|
console.log(d.updateTime);
|
||||||
|
return d.updateTime==null?'': util.toDateString(d.updateTime);
|
||||||
|
}},
|
||||||
|
{field: 'statusFlag', sort: true, templet: '#statusTpl', title: '状态'},
|
||||||
|
{align: 'center', toolbar: '#tableBar', title: '操作'}
|
||||||
|
]];
|
||||||
|
};
|
||||||
|
|
||||||
|
// 点击查询按钮
|
||||||
|
Organization.search = function () {
|
||||||
|
var queryData = {};
|
||||||
|
queryData['positionName'] = $("#positionName").val();
|
||||||
|
//queryData['positionCode'] = $("#positionCode").val();
|
||||||
|
table.reload(Organization.tableId, {
|
||||||
|
where: queryData,
|
||||||
|
page: {curr: 1}
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
|
// 弹出添加对话框
|
||||||
|
Organization.openAddDlg = function () {
|
||||||
|
func.open({
|
||||||
|
height: 800,
|
||||||
|
title: '添加职位',
|
||||||
|
content: Feng.ctxPath + '/hrOrganization/addView',
|
||||||
|
tableId: Organization.tableId
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
|
// 点击编辑
|
||||||
|
Organization.openEditDlg = function (data) {
|
||||||
|
func.open({
|
||||||
|
height: 800,
|
||||||
|
title: '修改职位',
|
||||||
|
content: Feng.ctxPath + '/organization/editView?positionId=' + data.positionId,
|
||||||
|
tableId: Organization.tableId
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
|
// 导出excel按钮
|
||||||
|
Organization.exportExcel = function () {
|
||||||
|
var checkRows = table.checkStatus(Organization.tableId);
|
||||||
|
if (checkRows.data.length === 0) {
|
||||||
|
Feng.error("请选择要导出的数据");
|
||||||
|
} else {
|
||||||
|
table.exportFile(tableResult.config.id, checkRows.data, 'xls');
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
// 点击删除
|
||||||
|
Organization.delete = function (data) {
|
||||||
|
var operation = function () {
|
||||||
|
ajaxUtil.post(Feng.ctxPath + "/hrOrganization/delete", {"positionId":data.positionId},function (data) {
|
||||||
|
Feng.success("删除成功!");
|
||||||
|
table.reload(Organization.tableId);
|
||||||
|
},function (data) {
|
||||||
|
Feng.error("删除失败!" + data.responseJSON.message + "!");
|
||||||
|
});
|
||||||
|
};
|
||||||
|
Feng.confirm("是否删除?", operation);
|
||||||
|
};
|
||||||
|
|
||||||
|
// 修改职位状态
|
||||||
|
Organization.updateStatus = function (positionId, checked) {
|
||||||
|
ajaxUtil.post(Feng.ctxPath + "/hrOrganization/updateStatus", {"positionId":positionId,"statusFlag":checked},function (data) {
|
||||||
|
Feng.success("修改成功!");
|
||||||
|
},function (data) {
|
||||||
|
Feng.error("修改失败!" + data.responseJSON.message);
|
||||||
|
table.reload(Organization.tableId);
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
|
// 渲染表格
|
||||||
|
var tableResult = table.render({
|
||||||
|
elem: '#' + Organization.tableId,
|
||||||
|
url: Feng.ctxPath + '/hrOrganization/page',
|
||||||
|
page: true,
|
||||||
|
request: {pageName: 'pageNo', limitName: 'pageSize'}, //自定义分页参数
|
||||||
|
height: "full-158",
|
||||||
|
cellMinWidth: 100,
|
||||||
|
cols: Organization.initColumn(),
|
||||||
|
parseData: Feng.parseData
|
||||||
|
});
|
||||||
|
|
||||||
|
// 搜索按钮点击事件
|
||||||
|
$('#btnSearch').click(function () {
|
||||||
|
Organization.search();
|
||||||
|
});
|
||||||
|
|
||||||
|
// 添加按钮点击事件
|
||||||
|
$('#btnAdd').click(function () {
|
||||||
|
Organization.openAddDlg();
|
||||||
|
});
|
||||||
|
|
||||||
|
// 导出excel
|
||||||
|
$('#btnExp').click(function () {
|
||||||
|
Organization.exportExcel();
|
||||||
|
});
|
||||||
|
|
||||||
|
// 工具条点击事件
|
||||||
|
table.on('tool(' + Organization.tableId + ')', function (obj) {
|
||||||
|
var data = obj.data;
|
||||||
|
var event = obj.event;
|
||||||
|
if (event === 'edit') {
|
||||||
|
Organization.openEditDlg(data);
|
||||||
|
} else if (event === 'delete') {
|
||||||
|
Organization.delete(data);
|
||||||
|
}
|
||||||
|
dropdown.hideAll();
|
||||||
|
});
|
||||||
|
|
||||||
|
// 修改状态
|
||||||
|
form.on('switch(status)', function (obj) {
|
||||||
|
var positionId = obj.elem.value;
|
||||||
|
var checked = obj.elem.checked ? 1 : 2;
|
||||||
|
Organization.updateStatus(positionId, checked);
|
||||||
|
});
|
||||||
|
});
|
|
@ -0,0 +1,18 @@
|
||||||
|
layui.use(['form', 'admin', 'ax', 'ajaxUtil'], function () {
|
||||||
|
var form = layui.form;
|
||||||
|
var admin = layui.admin;
|
||||||
|
var ajaxUtil = layui.ajaxUtil;
|
||||||
|
|
||||||
|
//表单提交事件
|
||||||
|
form.on('submit(btnSubmit)', function (data) {
|
||||||
|
ajaxUtil.post(Feng.ctxPath + "/hrOrganization/add", data.field, function (res) {
|
||||||
|
admin.closeThisDialog();
|
||||||
|
Feng.success("添加成功!");
|
||||||
|
admin.putTempData('formOk', true);
|
||||||
|
|
||||||
|
}, function (res) {
|
||||||
|
admin.closeThisDialog();
|
||||||
|
Feng.error("添加失败!" + res.responseJSON.message);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
|
@ -0,0 +1,25 @@
|
||||||
|
layui.use(['form', 'admin', 'ajaxUtil'], function () {
|
||||||
|
var form = layui.form;
|
||||||
|
var admin = layui.admin;
|
||||||
|
var ajaxUtil = layui.ajaxUtil;
|
||||||
|
//获取详情信息,填充表单
|
||||||
|
|
||||||
|
ajaxUtil.get("/hrOrganization/detail?orgId=" + Feng.getUrlParam("positionId"), function (res) {
|
||||||
|
form.val('positionForm', res.data);
|
||||||
|
}, function (res) {
|
||||||
|
admin.closeThisDialog();
|
||||||
|
Feng.error("编辑异常!" + res.responseJSON.message);
|
||||||
|
});
|
||||||
|
|
||||||
|
//表单提交事件
|
||||||
|
form.on('submit(btnSubmit)', function (data) {
|
||||||
|
ajaxUtil.post(Feng.ctxPath + "/hrOrganization/edit", data.field, function (res) {
|
||||||
|
Feng.success("修改成功!");
|
||||||
|
admin.putTempData('formOk', true);
|
||||||
|
admin.closeThisDialog();
|
||||||
|
}, function (res) {
|
||||||
|
admin.closeThisDialog();
|
||||||
|
Feng.error("修改失败!" + res.responseJSON.message);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
|
@ -0,0 +1,67 @@
|
||||||
|
@layout("/layout/_container.html",{js:["/assets/modular/system/organization/organization.js"]}){
|
||||||
|
|
||||||
|
<div class="layui-body-header">
|
||||||
|
<span class="layui-body-header-title">职位表管理</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="layui-fluid">
|
||||||
|
<div class="layui-row layui-col-space15">
|
||||||
|
<div class="layui-col-sm12 layui-col-md12 layui-col-lg12">
|
||||||
|
<div class="layui-card">
|
||||||
|
<div class="layui-card-body">
|
||||||
|
<div class="layui-form toolbar">
|
||||||
|
<div class="layui-form-item">
|
||||||
|
<div class="layui-inline">
|
||||||
|
<input id="positionName" class="layui-input" type="text" placeholder="职位名称"/>
|
||||||
|
</div>
|
||||||
|
<!-- <div class="layui-inline">-->
|
||||||
|
<!-- <input id="positionCode" class="layui-input" type="text" placeholder="职位编码"/>-->
|
||||||
|
<!-- </div>-->
|
||||||
|
<div class="layui-inline">
|
||||||
|
<button id="btnSearch" class="layui-btn icon-btn"><i class="layui-icon"></i>搜索</button>
|
||||||
|
<button id="btnAdd" class="layui-btn icon-btn"><i class="layui-icon"></i>添加</button>
|
||||||
|
<button id="btnExp" class="layui-btn icon-btn"><i class="layui-icon"></i>导出</button>
|
||||||
|
<!-- 下拉按钮 -->
|
||||||
|
<div class="dropdown-menu dropdown-hover">
|
||||||
|
<button class="layui-btn icon-btn" type="button">
|
||||||
|
更多 <i class="layui-icon layui-icon-drop"></i></button>
|
||||||
|
<ul class="dropdown-menu-nav">
|
||||||
|
<li><a><i class="layui-icon layui-icon-edit"></i>test1</a></li>
|
||||||
|
<li><a><i class="layui-icon layui-icon-delete"></i>test2</a></li>
|
||||||
|
<li><a><i class="layui-icon layui-icon-password"></i>test3</a></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<table class="layui-table" id="organizationTable" lay-filter="positionTable"></table>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<script type="text/html" id="tableBar">
|
||||||
|
<a class="layui-btn layui-btn-primary layui-btn-xs" lay-event="edit">修改</a>
|
||||||
|
<a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="delete">删除</a>
|
||||||
|
<a class="layui-btn layui-btn-xs" data-dropdown="#userTbDrop{{d.LAY_INDEX}}" no-shade="true">
|
||||||
|
更多<i class="layui-icon layui-icon-drop" style="font-size: 12px;margin-right: 0;"></i></a>
|
||||||
|
<!-- 下拉菜单 -->
|
||||||
|
<ul class="dropdown-menu-nav dropdown-bottom-right layui-hide" id="userTbDrop{{d.LAY_INDEX}}">
|
||||||
|
<div class="dropdown-anchor"></div>
|
||||||
|
<li><a lay-event="lock"><i class="layui-icon layui-icon-password"></i>锁定用户</a></li>
|
||||||
|
<li><a lay-event="reset"><i class="layui-icon layui-icon-key"></i>重置密码</a></li>
|
||||||
|
<li class="have-more show-left">
|
||||||
|
<a><i class="layui-icon layui-icon-upload-drag"></i>上传资料 </a>
|
||||||
|
<ul class="dropdown-menu-nav-child">
|
||||||
|
<li><a><i class="layui-icon layui-icon-camera"></i>上传头像</a></li>
|
||||||
|
<li><a><i class="layui-icon layui-icon-picture-fine"></i>上传照片</a></li>
|
||||||
|
</ul>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<script type="text/html" id="statusTpl">
|
||||||
|
<input type="checkbox" lay-filter="status" value="{{d.positionId}}" lay-skin="switch" lay-text="正常|锁定" {{d.statusFlag=='1'?'checked':''}} />
|
||||||
|
</script>
|
||||||
|
@}
|
|
@ -0,0 +1,46 @@
|
||||||
|
@layout("/layout/_form.html",{js:["/assets/modular/system/organization/organization_add.js"]}){
|
||||||
|
|
||||||
|
<form class="layui-form" id="positionForm" lay-filter="positionForm">
|
||||||
|
<div class="layui-fluid" style="padding-bottom: 75px;">
|
||||||
|
<div class="layui-card">
|
||||||
|
<div class="layui-card-header">基本信息</div>
|
||||||
|
<div class="layui-card-body">
|
||||||
|
<div class="layui-form-item layui-row">
|
||||||
|
<input name="positionId" type="hidden"/>
|
||||||
|
|
||||||
|
<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="positionName" name="positionName" 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="positionCode" name="positionCode" 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="positionSort" name="positionSort" 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">
|
||||||
|
<textarea id="positionRemark" name="positionRemark" placeholder="请输入备注" class="layui-textarea" lay-verify="required" required></textarea>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="form-group-bottom text-center">
|
||||||
|
<button class="layui-btn" lay-filter="btnSubmit" lay-submit> 提交 </button>
|
||||||
|
<button type="reset" class="layui-btn layui-btn-primary" ew-event="closeDialog"> 取消 </button>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</form>
|
||||||
|
|
||||||
|
@}
|
|
@ -0,0 +1,46 @@
|
||||||
|
@layout("/layout/_form.html",{js:["/assets/modular/system/organization/organization_edit.js"]}){
|
||||||
|
|
||||||
|
<form class="layui-form" id="positionForm" lay-filter="positionForm">
|
||||||
|
<div class="layui-fluid" style="padding-bottom: 75px;">
|
||||||
|
<div class="layui-card">
|
||||||
|
<div class="layui-card-header">基本信息</div>
|
||||||
|
<div class="layui-card-body">
|
||||||
|
<div class="layui-form-item layui-row">
|
||||||
|
<input name="positionId" type="hidden"/>
|
||||||
|
|
||||||
|
<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="positionName" name="positionName" 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="positionCode" name="positionCode" 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="positionSort" name="positionSort" 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">
|
||||||
|
<textarea id="positionRemark" name="positionRemark" placeholder="请输入备注" class="layui-textarea" lay-verify="required" required></textarea>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="form-group-bottom text-center">
|
||||||
|
<button class="layui-btn" lay-filter="btnSubmit" lay-submit> 提交 </button>
|
||||||
|
<button type="reset" class="layui-btn layui-btn-primary" ew-event="closeDialog"> 取消 </button>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</form>
|
||||||
|
|
||||||
|
@}
|
Loading…
Reference in New Issue