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

159 lines
6.3 KiB
HTML

{extend name="../../base/view/common/base" /}
<!-- 主体 -->
{block name="body"}
<form class="layui-form p-4">
<h3 class="pb-2">离职档案</h3>
{if condition="$id eq 0"}
<table class="layui-table">
<tr>
<td class="layui-td-gray">离职员工<font>*</font></td>
<td>
<input type="hidden" name="uid" value="0" autocomplete="off">
<input type="text" name="name" placeholder="请选择离职员工" lay-reqText="请选择离职员工" lay-verify="required" autocomplete="off" class="layui-input" readonly>
</td>
<td class="layui-td-gray">所在部门</td>
<td>
<input type="text" name="department" autocomplete="off" class="layui-input" readonly>
</td>
</tr>
<tr>
<td class="layui-td-gray">离职日期<font>*</font></td>
<td><input type="text" id="quit_time" name="quit_time" lay-verify="required" autocomplete="off" placeholder="请选择离职日期" lay-reqText="请选择离职日期" readonly class="layui-input">
</td>
<td class="layui-td-gray-2">部门负责人<font>*</font></td>
<td>
<input type="text" name="lead_admin_name" autocomplete="off" lay-verify="required" placeholder="请选择部门负责人" lay-reqText="请选择部门负责人" readonly class="layui-input picker-one">
<input type="hidden" name="lead_admin_id" autocomplete="off" value="0">
</td>
</tr>
<tr>
<td class="layui-td-gray-2">资料接受人<font>*</font></td>
<td>
<input type="text" name="connect_name" autocomplete="off" lay-verify="required" placeholder="请选择资料接受人" lay-reqText="请选择资料接受人" readonly class="layui-input picker-one">
<input type="hidden" name="connect_id" class="layui-input">
</td>
<td class="layui-td-gray-2">参与交接人员<font>*</font></td>
<td>
<input type="text" name="connect_names" autocomplete="off" lay-verify="required" placeholder="请选择参与交接人员" lay-reqText="请选择参与交接人员" readonly class="layui-input picker-more">
<input type="hidden" name="connect_uids" class="layui-input">
</td>
</tr>
<tr>
<td class="layui-td-gray">离职原因<font>*</font></td>
<td colspan="3">
<textarea name="remark" lay-verify="required" placeholder="请输入离职原因" lay-reqText="请输入离职原因" class="layui-textarea"></textarea>
</td>
</tr>
</table>
{else/}
<table class="layui-table">
<tr>
<td class="layui-td-gray">离职员工</td>
<td>{$detail.name}</td>
<td class="layui-td-gray">所在部门</td>
<td>{$detail.department}</td>
</tr>
<tr>
<td class="layui-td-gray">离职日期<font>*</font></td>
<td><input type="text" id="quit_time" name="quit_time" value="{$detail.quit_time}" lay-verify="required" autocomplete="off" placeholder="请选择离职日期" lay-reqText="请选择离职日期" readonly class="layui-input">
</td>
<td class="layui-td-gray-2">部门负责人<font>*</font></td>
<td>
<input type="text" name="lead_admin_name" autocomplete="off" value="{$detail.lead_admin_name}" lay-verify="required" placeholder="请选择部门负责人" lay-reqText="请选择部门负责人" readonly class="layui-input picker-one">
<input type="hidden" name="lead_admin_id" autocomplete="off" value="{$detail.lead_admin_id}">
</td>
</tr>
<tr>
<td class="layui-td-gray-2">资料接受人<font>*</font></td>
<td>
<input type="text" name="connect_name" autocomplete="off" lay-verify="required" placeholder="请选择资料接受人" lay-reqText="请选择资料接受人" readonly class="layui-input picker-one" value="{$detail.connect_name}">
<input type="hidden" name="connect_id" class="layui-input" value="{$detail.connect_id}">
</td>
<td class="layui-td-gray-2">参与交接人员<font>*</font></td>
<td>
<input type="text" name="connect_names" autocomplete="off" lay-verify="required" placeholder="请选择参与交接人员" lay-reqText="请选择参与交接人员" readonly class="layui-input picker-more" value="{$detail.connect_names}">
<input type="hidden" name="connect_uids" class="layui-input" value="{$detail.connect_uids}">
</td>
</tr>
<tr>
<td class="layui-td-gray">离职原因<font>*</font></td>
<td colspan="3">
<textarea name="remark" lay-verify="required" placeholder="请输入离职原因" lay-reqText="请输入离职原因" class="layui-textarea">{$detail.remark}</textarea>
</td>
</tr>
</table>
{/if}
<div class="py-3">
<input type="hidden" name="id" value="{$id}" />
<button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform">立即提交</button>
<button type="reset" class="layui-btn layui-btn-primary">重置</button>
</div>
</form>
{/block}
<!-- /主体 -->
<!-- 脚本 -->
{block name="script"}
<script>
const moduleInit = ['tool','employeepicker'];
function gouguInit() {
var form = layui.form,tool=layui.tool,laydate = layui.laydate,employeepicker = layui.employeepicker;
laydate.render({
elem: '#quit_time',
showBottom:false
});
$('body').on('click','[name="department"]',function(){
var val=$(this).val();
if(val==''){
layer.msg('请选择离职员工');
}
});
//选择员工弹窗
$('body').on('click','[name="name"]',function () {
var ids=$('[name="uid"]').val(),names=$('[name="name"]').val(),departments=$('[name="department"]').val();
employeepicker.init({
ids:ids,
names:names,
departments:departments,
department_url: "/api/index/get_department_tree",
employee_url: "/api/index/get_employee",
type:0,
callback:function(ids,names,dids,departments){
$('[name="uid"]').val(ids);
$('[name="name"]').val(names);
$('[name="department"]').val(departments);
}
});
});
//监听提交
form.on('submit(webform)', function (data) {
if(data.field.uid==0){
layer.msg('请选择离职员工');
return false;
}
if(data.field.uid==data.field.lead_admin_id){
layer.msg('离职员工和部门负责人不能是同一个人');
return false;
}
if(data.field.uid==data.field.connect_id){
layer.msg('离职员工和资料接受人不能是同一个人');
return false;
}
let callback = function (e) {
layer.msg(e.msg);
if (e.code == 0) {
tool.sideClose(1000);
}
}
tool.post("/user/personal/leave_add", data.field, callback);
return false;
});
}
</script>
{/block}
<!-- /脚本 -->