完善OA app端代码
This commit is contained in:
parent
3bc99b32ff
commit
e3a254e169
@ -6,7 +6,7 @@
|
||||
padding: 15px 0;
|
||||
z-index: 100;
|
||||
background-color: #FFF;
|
||||
border-bottom: 1px solid #f1f1f1;
|
||||
border-bottom: 1px solid #e6e6e6;
|
||||
}
|
||||
|
||||
.oa-form-footer-tool-bar {
|
||||
@ -17,7 +17,7 @@
|
||||
padding: 15px 0;
|
||||
z-index: 100;
|
||||
background-color: #FFF;
|
||||
border-top: 1px solid #f1f1f1;
|
||||
border-top: 1px solid #e6e6e6;
|
||||
}
|
||||
|
||||
.layui-card {
|
||||
|
@ -1,21 +1,21 @@
|
||||
.select-user-container {background-color:#fff; padding: 0px;height: 100%;width: 500px; position:relative;}
|
||||
.select-user-container .top {border-top: 1px;border-right: 1px;border-bottom: 0;border-left: 1px;border-style: solid;border-color: silver;padding: 5px;}
|
||||
.select-user-container .top .selected-user {border: 1px dotted silver;line-height: 30px;padding: 5px;overflow: hidden;}
|
||||
.select-user-container .top {border-top: 1px;border-right: 1px;border-bottom: 0;border-left: 1px;border-style: solid;border-color: #e6e6e6;padding: 5px;}
|
||||
.select-user-container .top .selected-user {border: 1px dotted #e6e6e6;line-height: 30px;padding: 5px;overflow: hidden;}
|
||||
.select-user-container .top .selected-user .list {width: 498px;height: 60px;overflow-y: scroll;overflow-x: hidden;}
|
||||
.select-user-container .center {border: 1px solid silver;height: 40px;overflow: hidden;}
|
||||
.select-user-container .center {border: 1px solid #e6e6e6;height: 40px;overflow: hidden;}
|
||||
.select-user-container .center .list {padding: 5px 8px;line-height: 30px;height: 50px;white-space: nowrap;overflow-x: scroll;overflow-y: hidden;}
|
||||
.select-user-container .center .list span {cursor: pointer;}
|
||||
.select-user-container .center .list span::after {content: ' > ';}
|
||||
.select-user-container .center .list span:last-child {color: #b7b5b5; cursor: default;}
|
||||
.select-user-container .center .list span:last-child::after {content: ''}
|
||||
.select-user-container .bottom {font-size: 0;}
|
||||
.select-user-container .bottom .left {display: inline-block;width: 198px;border-top: 0;border-right: 1px;border-bottom: 1px;border-left: 1px;border-style: solid;border-color: silver;overflow: hidden;}
|
||||
.select-user-container .bottom .left {display: inline-block;width: 198px;border-top: 0;border-right: 1px;border-bottom: 1px;border-left: 1px;border-style: solid;border-color: #e6e6e6;overflow: hidden;}
|
||||
.select-user-container .bottom .left .list {width: 216px;height: 300px;overflow-y: scroll;overflow-x: hidden;}
|
||||
.select-user-container .bottom .left .list div {font-size: 14px;padding: 5px 8px;line-height: 28px;border-top: 0;border-right: 1px;border-bottom: 1px;border-left: 0;border-style: dotted;border-color: silver; cursor: pointer;}
|
||||
.select-user-container .bottom .left .list div {font-size: 14px;padding: 5px 8px;line-height: 28px;border-top: 0;border-right: 1px;border-bottom: 1px;border-left: 0;border-style: dotted;border-color: #e6e6e6; cursor: pointer;}
|
||||
.select-user-container .bottom .left .list div:last-child {border-bottom: 0;}
|
||||
.select-user-container .bottom .right {display: inline-block;width: 299px;border-top: 0;border-right: 1px;border-bottom: 1px;border-left: 0px;border-style: solid;border-color: silver;overflow: hidden;}
|
||||
.select-user-container .bottom .right {display: inline-block;width: 299px;border-top: 0;border-right: 1px;border-bottom: 1px;border-left: 0px;border-style: solid;border-color: #e6e6e6;overflow: hidden;}
|
||||
.select-user-container .bottom .right .list {width: 316px;height: 300px;overflow-y: scroll;overflow-x: hidden;}
|
||||
.select-user-container .bottom .right .list .user-item {padding: 5px;border-bottom: 1px dotted silver; cursor: pointer;}
|
||||
.select-user-container .bottom .right .list .user-item {padding: 5px;border-bottom: 1px dotted #e6e6e6; cursor: pointer;}
|
||||
.select-user-container .bottom .right .list .user-item .avatar {display: inline-block;width: 40px;height: 40px; line-height: 40px; font-size: 20px; border-radius: 20px; text-align: center;}
|
||||
.select-user-container .bottom .right .list .user-item .avatar img {width: 100%;height: 100%;}
|
||||
.select-user-container .bottom .right .list .user-item .info {display: inline-block;font-size: 14px;line-height: 20px;vertical-align: top;margin-left: 5px;}
|
||||
|
@ -7,6 +7,19 @@ function OaFormUtil(layui) {
|
||||
var restAjax = layui.restajax;
|
||||
var processImageEnlargeScale = 0;
|
||||
|
||||
// 消息位置
|
||||
function getMsgOffset(isApp) {
|
||||
return isApp ? '15px' : 'auto';
|
||||
}
|
||||
|
||||
/**
|
||||
* 关闭按钮组
|
||||
*/
|
||||
function closeBtns() {
|
||||
$('#formBtns').click();
|
||||
$('#appFormBtns').click();
|
||||
}
|
||||
|
||||
/**
|
||||
* 设置保存历史字段列表
|
||||
* @param formData
|
||||
@ -57,13 +70,13 @@ function OaFormUtil(layui) {
|
||||
if (!jointlySigns) {
|
||||
continue;
|
||||
}
|
||||
var signListDom = '<div><span>记录</span>';
|
||||
var signListDom = '<div style="text-align: left;"><span>记录</span>';
|
||||
for (var i = 0, item; item = jointlySigns[i++];) {
|
||||
signListDom += [
|
||||
'<div>',
|
||||
' <span>姓名:' + item.userName + '。 </span>',
|
||||
' <span>内容:' + item.content + '。</span>',
|
||||
' <span>时间:' + item.time + '。</span>',
|
||||
' <span>' + item.time + '</span>',
|
||||
'</div>'
|
||||
].join('');
|
||||
}
|
||||
@ -180,7 +193,7 @@ function OaFormUtil(layui) {
|
||||
ul += '</ul>';
|
||||
$('#processLog').append(ul);
|
||||
}, function (code, data) {
|
||||
layer.msg(data.msg);
|
||||
layer.msg(data.msg, {offset: getMsgOffset(isApp)});
|
||||
});
|
||||
}
|
||||
|
||||
@ -198,7 +211,7 @@ function OaFormUtil(layui) {
|
||||
function initRuntimeProcessImage() {
|
||||
var html = [
|
||||
'<div id="runtimeProcessImageBox">',
|
||||
' <img id="runtimeProcessImage" src="'+ src +'" alt="流转图" style="'+ (isApp ? 'width: 100%;' : 'height: 100%;') +'"/>',
|
||||
' <img id="runtimeProcessImage" src="'+ src +'" alt="流转图" style="width: 100%;"/>',
|
||||
'</div>',
|
||||
'<div id="operationBtnBox" class="layui-btn-group">',
|
||||
' <button id="searchPlus" type="button" class="layui-btn layui-btn-xs" title="放大">',
|
||||
@ -225,11 +238,7 @@ function OaFormUtil(layui) {
|
||||
initRuntimeProcessImage();
|
||||
|
||||
function setProcessImageSize() {
|
||||
if(isApp) {
|
||||
$('#runtimeProcessImage').css('width', 100 + processImageEnlargeScale + '%');
|
||||
} else {
|
||||
$('#runtimeProcessImage').css('height', 100 + processImageEnlargeScale + '%');
|
||||
}
|
||||
$('#runtimeProcessImage').css('width', 100 + processImageEnlargeScale + '%');
|
||||
}
|
||||
|
||||
$('#searchPlus').click(function () {
|
||||
@ -423,6 +432,7 @@ function OaFormUtil(layui) {
|
||||
var headers = opt.headers;
|
||||
headers = headers ? headers : {};
|
||||
var isApp = opt.isApp;
|
||||
var isAppShow = opt.isAppShow;
|
||||
var processInstanceId = opt.processInstanceId;
|
||||
var taskId = opt.taskId;
|
||||
var formCode = opt.formCode;
|
||||
@ -434,7 +444,7 @@ function OaFormUtil(layui) {
|
||||
function initButton() {
|
||||
var buttons = '';
|
||||
|
||||
if(isApp) {
|
||||
if(isApp && !isAppShow) {
|
||||
buttons += '<button type="button" id="appShowFormBtns" class="layui-btn layui-btn-primary"><i class="fa fa-list-ul" aria-hidden="true"></i> 操作</button>'
|
||||
buttons += '<div id="appFormBtns">';
|
||||
buttons += '<div id="appFormBtnsContainer">';
|
||||
@ -545,6 +555,7 @@ function OaFormUtil(layui) {
|
||||
exts: 'pdf|doc|docx|xls|xlsx|ppt|pptx|wps|txt|rar|zip|jpg|png|gif|bmp|jpeg|mp4|wav|mp3',
|
||||
headers: headers,
|
||||
before: function (obj) {
|
||||
closeBtns();
|
||||
layerLoadingIndex = layer.msg('上传中...', {icon: 16, time: 0, shade: 0.3})
|
||||
},
|
||||
done: function (res, index, upload) {
|
||||
@ -667,6 +678,7 @@ function OaFormUtil(layui) {
|
||||
|
||||
// 打印
|
||||
$(document.body).on('click', '#printBtn', function() {
|
||||
closeBtns();
|
||||
if(!formCode || !formVersion || !uid) {
|
||||
return;
|
||||
}
|
||||
@ -675,6 +687,7 @@ function OaFormUtil(layui) {
|
||||
|
||||
// 回退页面
|
||||
$(document.body).on('click', '#goBackBtn', function () {
|
||||
closeBtns();
|
||||
if (!taskId) {
|
||||
return;
|
||||
}
|
||||
@ -727,6 +740,7 @@ function OaFormUtil(layui) {
|
||||
|
||||
// 回退
|
||||
$(document.body).on('click', '.go-back-btn', function () {
|
||||
closeBtns();
|
||||
if (!taskId) {
|
||||
return;
|
||||
}
|
||||
@ -744,11 +758,11 @@ function OaFormUtil(layui) {
|
||||
restAjax.put(restAjax.path('api/oa-form-report/update-go-back/process-instance-id/{processInstanceId}/task-id/{taskId}/node-id/{nodeId}', [processInstanceId, taskId, nodeId]), {
|
||||
reason: reason
|
||||
}, null, function (code, data) {
|
||||
layer.msg('回退成功');
|
||||
layer.msg('回退成功', {offset: getMsgOffset(isApp)});
|
||||
formButton.btnAttachment = 0;
|
||||
}, function (code, data) {
|
||||
$('.confirm-btn, .go-back-btn, .delete-btn').show();
|
||||
layer.msg(data.msg);
|
||||
layer.msg(data.msg, {offset: getMsgOffset(isApp)});
|
||||
}, function () {
|
||||
$('.confirm-btn, .go-back-btn, .delete-btn').hide();
|
||||
loadLayerIndex = layer.msg('提交中...', {icon: 16, time: 0, shade: 0.3});
|
||||
@ -761,21 +775,33 @@ function OaFormUtil(layui) {
|
||||
|
||||
// 强制结束
|
||||
$(document.body).on('click', '#forcedEndBtn', function() {
|
||||
layer.confirm('确定结束吗?', function (confirmLayerIndex) {
|
||||
closeBtns();
|
||||
$('#appFormBtns').click();
|
||||
$('#formBtns').click();
|
||||
layer.confirm('确定结束吗?', {title: false}, function (confirmLayerIndex) {
|
||||
layer.close(confirmLayerIndex);
|
||||
|
||||
layer.prompt({title: '请输入结束原因', formType: 2}, function (reason, promptIndex) {
|
||||
layer.prompt({title: '请输入结束原因', formType: 2, offset: getMsgOffset(isApp)}, function (reason, promptIndex) {
|
||||
layer.close(promptIndex);
|
||||
|
||||
var loadLayerIndex;
|
||||
restAjax.put(restAjax.path('api/oa-form-report/update-forced-end/process-instance-id/{processInstanceId}/task-id/{taskId}', [processInstanceId, taskId]), {
|
||||
var url;
|
||||
if(isApp) {
|
||||
url = 'app/oa-form-report/update-forced-end/process-instance-id/{processInstanceId}/task-id/{taskId}';
|
||||
} else {
|
||||
url = 'api/oa-form-report/update-forced-end/process-instance-id/{processInstanceId}/task-id/{taskId}';
|
||||
}
|
||||
|
||||
restAjax.put(restAjax.path(url, [processInstanceId, taskId]), {
|
||||
reason: reason
|
||||
}, null, function (code, data) {
|
||||
layer.msg('结束成功');
|
||||
}, {
|
||||
headers: headers
|
||||
}, function (code, data) {
|
||||
layer.msg('结束成功', {offset: getMsgOffset(isApp)});
|
||||
formButton.btnAttachment = 0;
|
||||
}, function (code, data) {
|
||||
$('.confirm-btn, .go-back-btn').show();
|
||||
layer.msg(data.msg);
|
||||
layer.msg(data.msg, {offset: getMsgOffset(isApp)});
|
||||
}, function () {
|
||||
$('.confirm-btn, .go-back-btn').hide();
|
||||
loadLayerIndex = layer.msg('提交中...', {icon: 16, time: 0, shade: 0.3});
|
||||
@ -788,6 +814,7 @@ function OaFormUtil(layui) {
|
||||
|
||||
// 抄送
|
||||
$(document.body).on('click', '#ccBtn', function() {
|
||||
closeBtns();
|
||||
function getCcArray() {
|
||||
var selectedUserIdArray = [];
|
||||
if(!$('#ccs').val()) {
|
||||
@ -808,9 +835,6 @@ function OaFormUtil(layui) {
|
||||
departmentRootId: 0,
|
||||
selectedUserIdArray: getCcArray(),
|
||||
onConfirm: function(selectedUserArray) {
|
||||
if(selectedUserArray.length == 0) {
|
||||
return;
|
||||
}
|
||||
var ccs = '';
|
||||
for(var i = 0, item; item = selectedUserArray[i++];) {
|
||||
if (ccs.length > 0) {
|
||||
@ -826,6 +850,7 @@ function OaFormUtil(layui) {
|
||||
|
||||
// 转交
|
||||
$(document.body).on('click', '#transferBtn', function() {
|
||||
closeBtns();
|
||||
var osUserSelect = new OaUserSelect(layui, {
|
||||
isApp: isApp,
|
||||
headers: headers,
|
||||
@ -835,21 +860,30 @@ function OaFormUtil(layui) {
|
||||
if(selectedUserArray.length == 0) {
|
||||
return;
|
||||
}
|
||||
layer.confirm('确定转交吗?', function (confirmLayerIndex) {
|
||||
layer.confirm('确定转交吗?', {title: false}, function (confirmLayerIndex) {
|
||||
layer.close(confirmLayerIndex);
|
||||
layer.prompt({title: '请输入转交原因', formType: 2}, function (reason, promptIndex) {
|
||||
layer.prompt({title: '请输入转交原因', formType: 2, offset: getMsgOffset(isApp)}, function (reason, promptIndex) {
|
||||
layer.close(promptIndex);
|
||||
|
||||
var loadLayerIndex;
|
||||
restAjax.put(restAjax.path('api/oa-form-report/update-assignee/process-instance-id/{processInstanceId}/task-id/{taskId}', [processInstanceId, taskId]), {
|
||||
var url;
|
||||
if(isApp) {
|
||||
url = 'app/oa-form-report/update-assignee/process-instance-id/{processInstanceId}/task-id/{taskId}';
|
||||
} else {
|
||||
url = 'api/oa-form-report/update-assignee/process-instance-id/{processInstanceId}/task-id/{taskId}';
|
||||
}
|
||||
|
||||
restAjax.put(restAjax.path(url, [processInstanceId, taskId]), {
|
||||
assignee: selectedUserArray[0].userId,
|
||||
reason: reason
|
||||
}, null, function (code, data) {
|
||||
layer.msg('转交成功');
|
||||
}, {
|
||||
headers: headers
|
||||
}, function (code, data) {
|
||||
layer.msg('转交成功', {offset: getMsgOffset(isApp)});
|
||||
formButton.btnAttachment = 0;
|
||||
}, function (code, data) {
|
||||
$('.confirm-btn, .go-back-btn, .delete-btn').show();
|
||||
layer.msg(data.msg);
|
||||
layer.msg(data.msg, {offset: getMsgOffset(isApp)});
|
||||
}, function () {
|
||||
$('.confirm-btn, .go-back-btn, .delete-btn').hide();
|
||||
loadLayerIndex = layer.msg('转交中...', {icon: 16, time: 0, shade: 0.3});
|
||||
|
@ -112,7 +112,7 @@ function OaUserSelect(layui, opt) {
|
||||
refreshSelectedUser: function() {
|
||||
var doms = '';
|
||||
for(var i = 0, item; item = Properties.selectedUserArray[i++];) {
|
||||
doms += '<a href="javascript:void(0);" class="layui-btn layui-btn-xs" data-user-id="'+ item.userId +'" >'+ item.userName +' <i class="fa fa-close remove-user" data-user-id="'+ item.userId +'"></i></a>';
|
||||
doms += '<a href="javascript:void(0);" class="layui-btn layui-btn-xs remove-user" data-user-id="'+ item.userId +'" >'+ item.userName +' <i class="fa fa-close"></i></a>';
|
||||
}
|
||||
$('#selectedUsers').empty();
|
||||
$('#selectedUsers').append(doms);
|
||||
@ -331,7 +331,6 @@ function OaUserSelect(layui, opt) {
|
||||
|
||||
$(document).on('click', '#userSelectConfirmBtn', function(e) {
|
||||
if(onConfirm) {
|
||||
var selectUserArray = [];
|
||||
onConfirm(Properties.selectedUserArray);
|
||||
}
|
||||
Methods.close();
|
||||
@ -374,7 +373,7 @@ function OaUserSelect(layui, opt) {
|
||||
anim: isApp ? 2 : 0,
|
||||
isOutAnim: false,
|
||||
title: false,
|
||||
shadeClose: false,
|
||||
shadeClose: true,
|
||||
scrollbar: false,
|
||||
content: Init.initHtml(),
|
||||
success: function() {
|
||||
|
@ -40,7 +40,8 @@
|
||||
<script src="assets/layuiadmin/layui/layui.js"></script>
|
||||
<script>
|
||||
layui.config({
|
||||
base: 'assets/layuiadmin/'
|
||||
base: 'assets/layuiadmin/',
|
||||
version: true
|
||||
}).extend({
|
||||
index: 'lib/index'
|
||||
}).use(['index', 'form', 'layer', 'laydate', 'laytpl', 'upload', 'restajax'], function () {
|
||||
|
@ -39,7 +39,8 @@
|
||||
<script src="assets/layuiadmin/layui/layui.js"></script>
|
||||
<script>
|
||||
layui.config({
|
||||
base: 'assets/layuiadmin/'
|
||||
base: 'assets/layuiadmin/',
|
||||
version: true
|
||||
}).extend({
|
||||
index: 'lib/index'
|
||||
}).use(['index', 'form', 'layer', 'laydate', 'laytpl', 'upload', 'restajax'], function () {
|
||||
@ -62,9 +63,7 @@
|
||||
$('#formVersion').val(),
|
||||
uid
|
||||
]), {}, {
|
||||
headers: {
|
||||
token: token
|
||||
}
|
||||
headers: {token: token}
|
||||
}, function(code, data) {
|
||||
var dataFormData = {};
|
||||
for(var i in data) {
|
||||
|
@ -40,7 +40,8 @@
|
||||
<script src="assets/layuiadmin/layui/layui.js"></script>
|
||||
<script>
|
||||
layui.config({
|
||||
base: 'assets/layuiadmin/'
|
||||
base: 'assets/layuiadmin/',
|
||||
version: true
|
||||
}).extend({
|
||||
index: 'lib/index'
|
||||
}).use(['index', 'form', 'layer', 'laydate', 'laytpl', 'upload', 'restajax'], function () {
|
||||
@ -63,9 +64,7 @@
|
||||
$('#formVersion').val(),
|
||||
uid
|
||||
]), {}, {
|
||||
headers: {
|
||||
token: token
|
||||
}
|
||||
headers: {token: token}
|
||||
}, function(code, data) {
|
||||
var dataFormData = {};
|
||||
for(var i in data) {
|
||||
@ -134,9 +133,7 @@
|
||||
$('#formVersion').val(),
|
||||
uid
|
||||
]), formData.field, {
|
||||
headers: {
|
||||
token: token
|
||||
}
|
||||
headers: {token: token}
|
||||
}, function (code, data) {
|
||||
layer.msg('提交成功');
|
||||
// 这里手动添加操作成功后的操作',
|
||||
|
@ -48,7 +48,8 @@
|
||||
<script src="assets/layuiadmin/layui/layui.js"></script>
|
||||
<script>
|
||||
layui.config({
|
||||
base: 'assets/layuiadmin/'
|
||||
base: 'assets/layuiadmin/',
|
||||
version: true
|
||||
}).extend({
|
||||
index: 'lib/index'
|
||||
}).use(['index', 'form', 'layer', 'laydate', 'laytpl', 'upload', 'restajax'], function () {
|
||||
|
@ -13,19 +13,34 @@
|
||||
<link rel="stylesheet" href="assets/layuiadmin/style/admin.css" media="all">
|
||||
<link rel="stylesheet" type="text/css" href="assets/js/vendor/viewer/viewer.min.css">
|
||||
<link rel="stylesheet" type="text/css" href="static/form/css/form-app.css?v=1">
|
||||
<script src="static/form/js/rem.js"></script>
|
||||
<link rel="stylesheet" type="text/css" href="static/form/css/oa-user-select.css?v=1">
|
||||
<link rel="stylesheet" type="text/css" href="static/form/css/oa-form.css?v=1">
|
||||
</head>
|
||||
<body>
|
||||
<div class="layui-anim layui-anim-fadein">
|
||||
<div class="layui-card">
|
||||
<div class="layui-card-body" style="padding: 15px;">
|
||||
<form class="layui-form layui-form-pane" lay-filter="dataForm">
|
||||
<#list fields as field>
|
||||
${field.html}
|
||||
</#list>
|
||||
<div class="layui-layout-admin">
|
||||
<div class="layui-footer form-report-foot">
|
||||
<button type="button" class="layui-btn layui-btn-sm layui-btn-primary close">返回</button>
|
||||
<div class="layui-row oa-form-footer-tool-bar">
|
||||
<div class="layui-col-xs5 tool-bar-left"></div>
|
||||
<div class="layui-col-xs7 tool-bar-right">
|
||||
<div id="formButtonGroup"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-tab">
|
||||
<ul class="layui-tab-title">
|
||||
<li class="layui-this">详情</li>
|
||||
<li>流转日志</li>
|
||||
<li>流转图</li>
|
||||
</ul>
|
||||
<div class="layui-tab-content">
|
||||
<div id="reportForm" class="layui-tab-item layui-show">
|
||||
<#list fields as field>
|
||||
${field.html}
|
||||
</#list>
|
||||
</div>
|
||||
<div id="processLog" class="layui-tab-item"></div>
|
||||
<div id="processImage" class="layui-tab-item"></div>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
@ -35,11 +50,14 @@
|
||||
<input type="hidden" id="formVersion" value="${r'${formVersion}'}">
|
||||
</div>
|
||||
<script src="static/form/js/form-util.js?v=1"></script>
|
||||
<script src="static/form/js/oa-user-select.js?v=1"></script>
|
||||
<script src="static/form/js/oa-form-util.js?v=1"></script>
|
||||
<script src="assets/js/vendor/viewer/viewer.min.js"></script>
|
||||
<script src="assets/layuiadmin/layui/layui.js"></script>
|
||||
<script>
|
||||
layui.config({
|
||||
base: 'assets/layuiadmin/'
|
||||
base: 'assets/layuiadmin/',
|
||||
version: true
|
||||
}).extend({
|
||||
index: 'lib/index'
|
||||
}).use(['index', 'form', 'layer', 'laydate', 'laytpl', 'upload', 'restajax'], function () {
|
||||
@ -51,10 +69,23 @@
|
||||
var queryParams = restAjax.params(window.location.href);
|
||||
var token = queryParams.token;
|
||||
var uid = queryParams.uid;
|
||||
var processInstanceId = queryParams.processInstanceId;
|
||||
var formUtil = new FormUtil(layui, Viewer);
|
||||
var oaFormUtil = new OaFormUtil(layui);
|
||||
|
||||
// 初始化
|
||||
function initData() {
|
||||
oaFormUtil.initFormButtons({}, {
|
||||
isApp: true,
|
||||
headers: {token: token},
|
||||
onPreview: function(obj) {
|
||||
// 这里写预览的逻辑,没有不写此方法
|
||||
// console.log(obj);
|
||||
}
|
||||
});
|
||||
oaFormUtil.initTabItem(processInstanceId);
|
||||
oaFormUtil.disableFormAllFields();
|
||||
|
||||
var self = this;
|
||||
var loadLayerIndex;
|
||||
restAjax.get(restAjax.path('app/oa-form-report/get/code/{formCode}/version/{formVersion}/uid/{uid}', [
|
||||
@ -62,10 +93,10 @@
|
||||
$('#formVersion').val(),
|
||||
uid
|
||||
]), {}, {
|
||||
headers: {
|
||||
token: token
|
||||
}
|
||||
headers: {token: token}
|
||||
}, function(code, data) {
|
||||
oaFormUtil.initTextareaSignList(data);
|
||||
|
||||
var dataFormData = {};
|
||||
for(var i in data) {
|
||||
dataFormData[i] = data[i] +'';
|
||||
@ -106,10 +137,14 @@
|
||||
}
|
||||
initData();
|
||||
|
||||
function close() {
|
||||
window.android.invokeNative('back');
|
||||
}
|
||||
|
||||
// 关闭页面
|
||||
$('.close').on('click', function () {
|
||||
// 这里写返回按钮的逻辑,默认是关闭',
|
||||
parent.layer.close(parent.layer.getFrameIndex(window.name));
|
||||
close();
|
||||
});
|
||||
});
|
||||
</script>
|
||||
|
@ -13,6 +13,8 @@
|
||||
<link rel="stylesheet" href="assets/layuiadmin/style/admin.css" media="all">
|
||||
<link rel="stylesheet" type="text/css" href="assets/js/vendor/viewer/viewer.min.css">
|
||||
<link rel="stylesheet" type="text/css" href="static/form/css/form-app.css?v=1">
|
||||
<link rel="stylesheet" type="text/css" href="static/form/css/oa-user-select.css?v=1">
|
||||
<link rel="stylesheet" type="text/css" href="static/form/css/oa-form.css?v=1">
|
||||
<script src="static/form/js/rem.js"></script>
|
||||
</head>
|
||||
<body>
|
||||
@ -20,29 +22,49 @@
|
||||
<div class="layui-card">
|
||||
<div class="layui-card-body" style="padding: 15px;">
|
||||
<form class="layui-form layui-form-pane" lay-filter="dataForm">
|
||||
<#list fields as field>
|
||||
${field.html}
|
||||
</#list>
|
||||
<div class="layui-layout-admin">
|
||||
<div class="layui-footer form-report-foot">
|
||||
<div class="layui-row oa-form-footer-tool-bar">
|
||||
<div class="layui-col-xs5 tool-bar-left layui-layout-admin">
|
||||
<div id="submitBtnGroup" class="layui-btn-group"></div>
|
||||
<button type="button" class="layui-btn layui-btn-sm layui-btn-primary close">返回</button>
|
||||
</div>
|
||||
<div class="layui-col-xs7 tool-bar-right">
|
||||
<div id="formButtonGroup"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-tab">
|
||||
<ul class="layui-tab-title">
|
||||
<li class="layui-this">详情</li>
|
||||
<li>流转日志</li>
|
||||
<li>流转图</li>
|
||||
</ul>
|
||||
<div class="layui-tab-content">
|
||||
<div id="reportForm" class="layui-tab-item layui-show">
|
||||
<#list fields as field>
|
||||
${field.html}
|
||||
</#list>
|
||||
</div>
|
||||
<div id="processLog" class="layui-tab-item"></div>
|
||||
<div id="processImage" class="layui-tab-item"></div>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
<input type="hidden" id="taskId" value="${r'${taskId}'}">
|
||||
<input type="hidden" id="processInstanceId" value="${r'${processInstanceId}'}">
|
||||
<input type="hidden" id="formCode" value="${r'${formCode}'}">
|
||||
<input type="hidden" id="formVersion" value="${r'${formVersion}'}">
|
||||
<input type="hidden" id="isNeedClaim" value="${r'${isNeedClaim}'}">
|
||||
</div>
|
||||
<script src="static/form/js/form-util.js?v=1"></script>
|
||||
<script src="static/form/js/oa-user-select.js?v=1"></script>
|
||||
<script src="static/form/js/oa-form-util.js?v=1"></script>
|
||||
<script src="assets/js/vendor/viewer/viewer.min.js"></script>
|
||||
<script src="assets/layuiadmin/layui/layui.js"></script>
|
||||
<script>
|
||||
layui.config({
|
||||
base: 'assets/layuiadmin/'
|
||||
base: 'assets/layuiadmin/',
|
||||
version: true
|
||||
}).extend({
|
||||
index: 'lib/index'
|
||||
}).use(['index', 'form', 'layer', 'laydate', 'laytpl', 'upload', 'restajax'], function () {
|
||||
@ -55,21 +77,31 @@
|
||||
var token = queryParams.token;
|
||||
var uid = queryParams.uid;
|
||||
var formUtil = new FormUtil(layui, Viewer);
|
||||
var oaFormUtil = new OaFormUtil(layui);
|
||||
// 调试可先设置为空对象
|
||||
var confirmAssignees = ${r"${confirmAssignees}"};
|
||||
var fields = ${r"${fields}"};
|
||||
|
||||
function initSubmitBtns() {
|
||||
var btnColor = ['', 'layui-btn-normal', 'layui-btn-warm'];
|
||||
var btns = '';
|
||||
for(var i = 0, item; item = confirmAssignees[i++];) {
|
||||
btns += '<button type="button" id="submitFormBtn'+ i +'" class="layui-btn layui-btn-sm '+ btnColor[(i - 1) % 3] +' confirm-btn" lay-submit lay-filter="submit'+ i +'" data-select-type="'+ item.nodeType +'" data-index="'+ (i - 1) +'" data-next-end-event="'+ item.nextEndEvent +'" data-btn-exc="'+ item.btnExc +'">'+ item.btnText +'</button>'
|
||||
}
|
||||
$('#submitBtnGroup').append(btns);
|
||||
}
|
||||
var formButton = ${r"${formButton}"};
|
||||
var currentUser = ${r"${currentUser}"};
|
||||
|
||||
// 初始化
|
||||
function initData() {
|
||||
oaFormUtil.initSubmitBtns(confirmAssignees, {isApp: true});
|
||||
oaFormUtil.initFormButtons(formButton, {
|
||||
isApp:true,
|
||||
headers: {token: token},
|
||||
processInstanceId: $('#processInstanceId').val(),
|
||||
taskId: $('#taskId').val(),
|
||||
formCode: $('#formCode').val(),
|
||||
formVersion: $('#formVersion').val(),
|
||||
uid: uid,
|
||||
onPreview: function(obj) {
|
||||
// 这里写预览的逻辑,没有不写此方法
|
||||
// console.log(obj);
|
||||
}
|
||||
});
|
||||
oaFormUtil.initTabItem($('#processInstanceId').val(), {isApp:true, headers: {token: token}});
|
||||
|
||||
var self = this;
|
||||
var loadLayerIndex;
|
||||
restAjax.get(restAjax.path('app/oa-form-report/get/code/{formCode}/version/{formVersion}/uid/{uid}', [
|
||||
@ -77,9 +109,7 @@
|
||||
$('#formVersion').val(),
|
||||
uid
|
||||
]), {}, {
|
||||
headers: {
|
||||
token: token
|
||||
}
|
||||
headers: {token: token}
|
||||
}, function(code, data) {
|
||||
var dataFormData = {};
|
||||
for(var i in data) {
|
||||
@ -111,9 +141,9 @@
|
||||
</#list>
|
||||
|
||||
form.render(null, 'dataForm');
|
||||
initSubmitBtns();
|
||||
formUtil.hideFields(fields);
|
||||
formUtil.disableFields(fields);
|
||||
oaFormUtil.backFillFields(fields, currentUser);
|
||||
oaFormUtil.hideFields(fields);
|
||||
oaFormUtil.disableFields(fields);
|
||||
}, function(code, data) {
|
||||
layer.msg(data.msg);
|
||||
}, function() {
|
||||
@ -124,10 +154,14 @@
|
||||
}
|
||||
initData();
|
||||
|
||||
function close() {
|
||||
window.android.invokeNative('back');
|
||||
}
|
||||
|
||||
// 关闭页面
|
||||
$('.close').on('click', function () {
|
||||
// 这里写返回按钮的逻辑,默认是关闭',
|
||||
parent.layer.close(parent.layer.getFrameIndex(window.name));
|
||||
close();
|
||||
});
|
||||
|
||||
(function() {
|
||||
@ -138,6 +172,10 @@
|
||||
|
||||
// 提交前处理
|
||||
formUtil.clearUploadField(formData);
|
||||
// 会签字段
|
||||
oaFormUtil.setEditHistoryFields(formData, fields);
|
||||
// 抄送列表
|
||||
oaFormUtil.setCcs(formData);
|
||||
|
||||
var loadLayerIndex;
|
||||
restAjax.put(restAjax.path('app/oa-form-report/update/task-id/{taskId}/code/{formCode}/version/{formVersion}/is-need-claim/{isNeedClaim}/uid/{uid}', [
|
||||
@ -147,12 +185,12 @@
|
||||
$('#isNeedClaim').val(),
|
||||
uid
|
||||
]), formData.field, {
|
||||
headers: {
|
||||
token: token
|
||||
}
|
||||
headers: {token: token}
|
||||
}, function (code, data) {
|
||||
layer.msg('提交成功');
|
||||
// 这里手动添加操作成功后的操作',
|
||||
layer.msg('提交成功', {time: 1000}, function() {
|
||||
close();
|
||||
});
|
||||
}, function (code, data) {
|
||||
$('.confirm-btn').show();
|
||||
layer.msg(data.msg);
|
||||
|
@ -39,7 +39,8 @@
|
||||
<script src="assets/layuiadmin/layui/layui.js"></script>
|
||||
<script>
|
||||
layui.config({
|
||||
base: 'assets/layuiadmin/'
|
||||
base: 'assets/layuiadmin/',
|
||||
version: true
|
||||
}).extend({
|
||||
index: 'lib/index'
|
||||
}).use(['index', 'form', 'layer', 'laydate', 'laytpl', 'upload', 'restajax'], function () {
|
||||
|
@ -38,7 +38,8 @@
|
||||
<script src="assets/layuiadmin/layui/layui.js"></script>
|
||||
<script>
|
||||
layui.config({
|
||||
base: 'assets/layuiadmin/'
|
||||
base: 'assets/layuiadmin/',
|
||||
version: true
|
||||
}).extend({
|
||||
index: 'lib/index'
|
||||
}).use(['index', 'form', 'layer', 'laydate', 'laytpl', 'upload', 'restajax'], function () {
|
||||
|
@ -39,7 +39,8 @@
|
||||
<script src="assets/layuiadmin/layui/layui.js"></script>
|
||||
<script>
|
||||
layui.config({
|
||||
base: 'assets/layuiadmin/'
|
||||
base: 'assets/layuiadmin/',
|
||||
version: true
|
||||
}).extend({
|
||||
index: 'lib/index'
|
||||
}).use(['index', 'form', 'layer', 'laydate', 'laytpl', 'upload', 'restajax'], function () {
|
||||
|
@ -48,7 +48,8 @@
|
||||
<script src="assets/layuiadmin/layui/layui.js"></script>
|
||||
<script>
|
||||
layui.config({
|
||||
base: 'assets/layuiadmin/'
|
||||
base: 'assets/layuiadmin/',
|
||||
version: true
|
||||
}).extend({
|
||||
index: 'lib/index'
|
||||
}).use(['index', 'form', 'layer', 'laydate', 'laytpl', 'upload', 'restajax'], function () {
|
||||
|
@ -23,10 +23,7 @@
|
||||
<div class="layui-row oa-form-header-tool-bar">
|
||||
<div class="layui-col-xs7 tool-bar-left"></div>
|
||||
<div class="layui-col-xs5 tool-bar-right">
|
||||
<div class="layui-btn-group">
|
||||
<button id="attachmentBtn" type="button" class="layui-btn layui-btn-sm layui-btn-primary">附件上传</button>
|
||||
<button id="printBtn" type="button" class="layui-btn layui-btn-sm">打印</button>
|
||||
</div>
|
||||
<div id="formButtonGroup"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-tab">
|
||||
@ -57,7 +54,8 @@
|
||||
<script src="assets/layuiadmin/layui/layui.js"></script>
|
||||
<script>
|
||||
layui.config({
|
||||
base: 'assets/layuiadmin/'
|
||||
base: 'assets/layuiadmin/',
|
||||
version: true
|
||||
}).extend({
|
||||
index: 'lib/index'
|
||||
}).use(['index', 'form', 'layer', 'laydate', 'laytpl', 'upload', 'restajax'], function () {
|
||||
|
@ -62,7 +62,8 @@
|
||||
<script src="assets/layuiadmin/layui/layui.js"></script>
|
||||
<script>
|
||||
layui.config({
|
||||
base: 'assets/layuiadmin/'
|
||||
base: 'assets/layuiadmin/',
|
||||
version: true
|
||||
}).extend({
|
||||
index: 'lib/index'
|
||||
}).use(['index', 'form', 'layer', 'laydate', 'laytpl', 'upload', 'restajax'], function () {
|
||||
|
Loading…
Reference in New Issue
Block a user