dev_oa/app/user/view/personal/leave.html
HDM58\hdm58 9ee6fb5afb 1、优化:项目、任务的状态显示;
2、新增:企业员工管理新增离职状态查询;
3、新增:离职档案新增一键资料转移功能,把项目、任务、客户、合同等资料交接到交接人上;
4、新增:任务新增前置任务,如果存在前置任务的,需要把前置任务完成后才能完成当前任务;
5、新增:任务新增子任务功能;
6、修复:新增项目文档成功后,跳转报错的问题;
7、优化:任务进度与任务状态联动,任务完成时,进度默认设置为100%,任务设置进度时,如果任务未开始,状态默认设置为进行中;
8、删除:去除项目选择项目时间周期的联动操作;
9、优化:项目选择弹层操作;
10、修复:修复自定义tab打开时,左侧二级菜单宽度未收回的问题;
11、优化:客户选择弹层添加‘新增客户’的按钮,方便快捷新建客户;
12、优化:工作台项目、任务、知识位置调整优化;

注意:本次数据结构更新代码如下:
ALTER TABLE `oa_personal_quit` ADD COLUMN `connect_id` int(11) NOT NULL DEFAULT 0 COMMENT '资料交接人' AFTER `connect_uids`;
ALTER TABLE `oa_personal_quit` ADD COLUMN `connect_time` int(11) NOT NULL DEFAULT 0 COMMENT '资料交接时间' AFTER `connect_id`;
ALTER TABLE `oa_personal_quit` MODIFY COLUMN `connect_uids` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '参与交接人,多' AFTER `lead_admin_id`;
ALTER TABLE `oa_project_task` ADD COLUMN `pid` int(11) UNSIGNED NOT NULL DEFAULT 0 COMMENT '父任务id' AFTER `title`;
ALTER TABLE `oa_project_task` ADD COLUMN `before_task` int(11) UNSIGNED NOT NULL DEFAULT 0 COMMENT '前置任务id' AFTER `priority`;
ALTER TABLE `oa_project_task` MODIFY COLUMN `type` tinyint(1) NOT NULL DEFAULT 1 COMMENT '任务类型(预留字段)' AFTER `cate`;
2023-10-26 09:16:33 +08:00

133 lines
4.7 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{extend name="../../base/view/common/base" /}
<!-- 主体 -->
{block name="body"}
<div class="p-3">
<form class="layui-form gg-form-bar border-t border-x">
<div class="layui-input-inline">
<input type="text" name="keywords" placeholder="关键字" class="layui-input" autocomplete="off"/>
</div>
<div class="layui-input-inline" style="width:150px;">
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform"><i class="layui-icon layui-icon-search mr-1"></i>搜索</button>
<button type="reset" class="layui-btn layui-btn-reset" lay-filter="reset">清空</button>
</div>
</form>
<table class="layui-hide" id="test" lay-filter="test"></table>
</div>
<script type="text/html" id="toolbarDemo">
<div class="layui-btn-container">
<button class="layui-btn layui-btn-sm" lay-event="add">+ 添加离职档案记录</button> <span style="font-size:12px; margin-left:20px; color:#FF5722"></span>
</div>
</script>
{/block}
<!-- /主体 -->
<!-- 脚本 -->
{block name="script"}
<script>
const moduleInit = ['tool'];
function gouguInit() {
var table = layui.table, tool = layui.tool ,form = layui.form;
layui.pageTable = table.render({
elem: '#test'
, toolbar: '#toolbarDemo'
,defaultToolbar: false
, url: "/user/personal/leave"
, page: true //开启分页
, limit: 20
, cols: [[
{ field: 'id', width: 80, title: '序号', align: 'center' }
, { field: 'name', width: 110, title: '离职员工', align: 'center','style':'color:#FF5722'}
, { field: 'position', width: 100, title: '职位', align: 'center'}
, { field: 'department', width: 120, title: '所在部门', align: 'center'}
, { field: 'lead_admin', width: 90, title: '部门负责人', align: 'center'}
, { field: 'quit_time', width: 100,title: '离职日期', align: 'center'}
, { field: 'connect_status', width: 100,title: '资料交接状态', align: 'center',
templet: function (d) {
if(d.connect_time==0){
return '<span class="green">未交接</span>';
}
else{
return '<span class="red">已交接</span>';
}
}
}
, { field: 'connect_name', width: 90, title: '资料接受人', align: 'center'}
, { field: 'connect_time_str', width: 90, title: '交接日期', align: 'center'}
, { field: 'connect_names', width: 180, title: '参与交接人'}
, { field: 'remark', title: '离职原因'}
, {
width: 150, title: '操作',fixed:'right', align: 'center'
, templet: function (d) {
let btn1='<button class="layui-btn layui-btn-xs" lay-event="edit">编辑</button>';
let btn2='<button class="layui-btn layui-btn-normal layui-btn-xs" lay-event="set">资料交接</button>';
let btn3='<button class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">删除</button>';
if(d.connect_time==0){
return '<div class="layui-btn-group">'+btn1+btn2+btn3+'</div>';
}
else{
return '<div class="layui-btn-group">'+btn3+'</div>';
}
}
}
]]
});
//监听行工具事件
table.on('tool(test)', function(obj){
var data = obj.data;
if(obj.event === 'edit'){
tool.side('/user/personal/leave_add?id='+data.id);
return;
}
if (obj.event === 'set') {
layer.confirm('确定要把【'+data.name+'】相关的项目、合同、客户等资料交接给【'+data.connect_name+'】吗?', { icon: 3, title: '提示' }, function (index) {
let callback = function (e) {
layer.msg(e.msg);
if (e.code == 0) {
obj.del();
}
}
tool.delete("/user/personal/leave_check", { id: data.id }, callback);
layer.close(index);
});
}
if (obj.event === 'del') {
layer.confirm('删除该离职档案【'+data.name+'】即可恢复在职状态,已交接的资料无法恢复,确定要删除吗?', { icon: 3, title: '提示' }, function (index) {
let callback = function (e) {
layer.msg(e.msg);
if (e.code == 0) {
obj.del();
}
}
tool.delete("/user/personal/leave_delete", { id: data.id }, callback);
layer.close(index);
});
}
});
//表头工具栏事件
table.on('toolbar(test)', function(obj){
var checkStatus = table.checkStatus(obj.config.id); //获取选中行状态
var data = checkStatus.data;
if (obj.event === 'add') {
tool.side("/user/personal/leave_add");
return;
}
});
//监听搜索提交
form.on('submit(webform)', function(data){
if(data.field.keywords) {
layui.pageTable.reload({where:{keywords:data.field.keywords},page:{curr:1}});
}
else{
location.reload();
}
return false;
});
}
</script>
{/block}
<!-- /脚本 -->