leave-view.jsp 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312
  1. <%@ page language="java" import="java.util.*" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
  2. <%@include file="/context/mytags.jsp"%>
  3. <!DOCTYPE html>
  4. <html>
  5. <head>
  6. <title>离职申请表</title>
  7. <t:base type="jquery,easyui,tools,DatePicker"></t:base>
  8. <link rel="stylesheet" href="plug-in/uploadify/css/uploadify.css" type="text/css" />
  9. <script type="text/javascript" src="plug-in/uploadify/jquery.uploadify-3.1.js"></script>
  10. <script src="plug-in/layer/layer.js"></script>
  11. <script>
  12. function btn_ok(){
  13. $("#btnsub").click();
  14. }
  15. function callback(data){
  16. jeecgFormFileCallBack(data);
  17. if(data.success){
  18. layer.alert(data.msg,{ icon: 0 , closeBtn: 0 } , function(index){
  19. window.location.href="leaveController.do?list"
  20. layer.close(index);
  21. });
  22. }
  23. else{
  24. layer.alert(data.msg);
  25. }
  26. }
  27. </script>
  28. <script type="text/javascript">
  29. //编写自定义JS代码
  30. </script>
  31. </head>
  32. <body>
  33. <t:formvalid formid="formobj" tipSweep="true" dialog="false" usePlugin="password" layout="table" action="leaveController.do?doUpdate" tiptype="1" callback="callback">
  34. <input id="id" name="id" type="hidden" value="${leavePage.id }"/>
  35. <table style="width: 600px;" cellpadding="0" cellspacing="1" class="formtable">
  36. <tr>
  37. <td align="right"><label class="Validform_label">离职员工:</label></td>
  38. <td class="value">
  39. <input id="userid" name="userid" type="hidden" value="${user.id}"/>
  40. <input name="realName" class="inputxt" value="${user.realName}" id="realName" readonly="readonly" datatype="*"/>
  41. <span class="Validform_checktip"></span>
  42. </td>
  43. </tr>
  44. <tr>
  45. <td align="right">
  46. <label class="Validform_label">
  47. 离职日期:
  48. </label>
  49. </td>
  50. <td class="value">
  51. <input id="leaveDate" name="leaveDate" type="text" <c:if test="${empty flage}"> disabled="disabled" </c:if> style="width: 150px" class="Wdate" onClick="WdatePicker()" datatype="*" ignore="ignore" value='<fmt:formatDate value='${leavePage.leaveDate}' type="date" pattern="yyyy-MM-dd"/>'/>
  52. <span class="Validform_checktip"></span>
  53. <label class="Validform_label" style="display: none;">离职日期</label>
  54. </td>
  55. </tr>
  56. <tr>
  57. <td align="right">
  58. <label class="Validform_label">
  59. 离职类型:
  60. </label>
  61. </td>
  62. <td class="value">
  63. <c:if test="${empty flage}">
  64. <t:dictSelect field="leaveType" type="list" typeGroupCode="outType" readonly="readonly" datatype="*" defaultVal="${leavePage.leaveType}" hasLabel="false" title="离职类型"></t:dictSelect>
  65. </c:if>
  66. <c:if test="${not empty flage}">
  67. <t:dictSelect field="leaveType" type="list" typeGroupCode="outType" datatype="*" defaultVal="${leavePage.leaveType}" hasLabel="false" title="离职类型"></t:dictSelect>
  68. </c:if>
  69. <span class="Validform_checktip"></span>
  70. <label class="Validform_label" style="display: none;">离职类型</label>
  71. </td>
  72. </tr>
  73. <tr>
  74. <td align="right">
  75. <label class="Validform_label">
  76. 离职原因:
  77. </label>
  78. </td>
  79. <td class="value" colspan="2" >
  80. <textarea style="width:600px;height: 80px;" class="inputxt" <c:if test="${empty flage}"> disabled="disabled" </c:if> rows="6" id="leaveCause" maxlength="200" name="leaveCause" datatype="*" placeholder="请输入备注(最多输入文字数200)">${ leavePage.leaveCause}</textarea>
  81. <span class="Validform_checktip"></span>
  82. <label class="Validform_label" style="display: none;">离职原因</label>
  83. </td>
  84. </tr>
  85. <tr>
  86. <td align="right">
  87. <label class="Validform_label">
  88. <span color="red" class="requiredIcon">*</span>
  89. 离职报告:
  90. </label>
  91. </td>
  92. <td class="value">
  93. <c:if test="${empty flage}">
  94. <t:webUploader auto="true" readOnly="readOnly" busiTable="jeecg_demo"
  95. busiId="${leavePage.id}" bizType="departurefile" remark="test"
  96. name="departurefile" duplicate="true" fileNumLimit="1" singlemode = 'true'
  97. nullMsg="离职报告不可为空"></t:webUploader>
  98. </c:if>
  99. <c:if test="${not empty flage}">
  100. <t:webUploader auto="true" dataType="*" busiTable="jeecg_demo"
  101. busiId="${leavePage.id}" bizType="departurefile" remark="test"
  102. name="departurefile" duplicate="true" fileNumLimit="1" singlemode = 'true'
  103. nullMsg="离职报告不可为空"></t:webUploader>
  104. </c:if>
  105. </td>
  106. </tr>
  107. <tr>
  108. <td align="right">
  109. <label class="Validform_label">
  110. 是否交接:
  111. </label>
  112. </td>
  113. <td class="value">
  114. <c:if test="${empty flage}">
  115. <t:dictSelect field="istransfer" type="radio" typeGroupCode="isTransfer" readonly="readonly" datatype="*" defaultVal="${leavePage.istransfer}" hasLabel="false" title="是否交接"></t:dictSelect>
  116. </c:if>
  117. <c:if test="${not empty flage}">
  118. <t:dictSelect field="istransfer" type="radio" typeGroupCode="isTransfer" datatype="*" defaultVal="${leavePage.istransfer}" hasLabel="false" title="是否交接"></t:dictSelect>
  119. </c:if>
  120. <span class="Validform_checktip"></span>
  121. <label class="Validform_label" style="display: none;">是否交接</label>
  122. </td>
  123. </tr>
  124. <tr>
  125. <td align="right">
  126. <label class="Validform_label">
  127. 工资是否结算:
  128. </label>
  129. </td>
  130. <td class="value">
  131. <c:if test="${empty flage}">
  132. <t:dictSelect field="issettlement" type="radio" typeGroupCode="is_balance" readonly="readonly" datatype="*" defaultVal="${leavePage.issettlement}" hasLabel="false" title="工资是否结算"></t:dictSelect>
  133. </c:if>
  134. <c:if test="${not empty flage}">
  135. <t:dictSelect field="issettlement" type="radio" typeGroupCode="is_balance" datatype="*" defaultVal="${leavePage.issettlement}" hasLabel="false" title="工资是否结算"></t:dictSelect>
  136. </c:if>
  137. <span class="Validform_checktip"></span>
  138. <label class="Validform_label" style="display: none;">工资是否结算</label>
  139. </td>
  140. </tr>
  141. <tr>
  142. <td style="text-align:center;" colspan="2">
  143. <input id="eli" value="${flage}" type="hidden"/>
  144. <c:forEach items="${transitionList}" var="trans">
  145. <li style="list-style:none;"><button class="btn btn-default" style="width:80px; height:35px;border-radius:5px;background:#3275C6;border:0 none;margin-right:5px;color:white;" type="button" id="${trans.nextnode}"
  146. onclick="popWriteOption1('<t:mutiLang langKey="common.task.operate"/>',800,300,'${trans.Transition }','${taskId}',${nextCodeCount},'${trans.nextnode}','${trans.nextnodeName}')" >${trans.Transition }<tton>
  147. </c:forEach>
  148. </td>
  149. </tr>
  150. </tr>
  151. </table>
  152. </t:formvalid>
  153. </body>
  154. <script src = "webpage/cn/com/lzt/leave/leave.js"></script>
  155. <script type="text/javascript">
  156. function callbackTable(msg){
  157. window.parent.callbackTable(msg);
  158. }
  159. function popWriteOption1(title,width,height,buttonTitle,taskId,nextNodeCount,nextNodeId){
  160. if($("#eli").val() != ''){
  161. var transferReason = $("#leaveCause").val();
  162. if(transferReason != ''){
  163. $.ajax({
  164. cache: true,
  165. type: "POST",
  166. url:"leaveController.do?doUpdate",
  167. data:$('#formobj').serialize(),// 你的formid
  168. dataType:"json",
  169. async: false,
  170. success: function(data) {
  171. dealProcFlowNoOption(title,taskId,nextNodeId,nextNodeCount,false);
  172. }
  173. });
  174. }else{
  175. layer.alert("离职原因不可为空!");
  176. }
  177. }else{
  178. popWriteOption(title,width,height,buttonTitle,taskId,nextNodeCount,nextNodeId);
  179. }
  180. }
  181. //加载 已存在的 文件
  182. $(function(){
  183. $(".btns").children("input").after("&nbsp;&nbsp;&nbsp;<span>(支持的离职报告格式为:word,pdf,png,jpg)</span>");
  184. $("#userid").next("input").next("a").next("a").attr("icon","icon-clean");
  185. $("#userid").next("input").next("a").next("a").children("span").children("span").attr("class","l-btn-text icon-clean l-btn-icon-left");
  186. var cgFormId=$("input[name='id']").val();
  187. $.ajax({
  188. type: "post",
  189. url: "leaveController.do?getFiles&id=" + cgFormId,
  190. success: function(data){
  191. var arrayFileObj = jQuery.parseJSON(data).obj;
  192. $.each(arrayFileObj,function(n,file){
  193. var fieldName = file.field.toLowerCase();
  194. var table = $("#"+fieldName+"_fileTable");
  195. var tr = $("<tr style=\"height:34px;\"></tr>");
  196. var td_title = $("<td>" + file.title + "</td>")
  197. var td_download = $("<td><a href=\"commonController.do?viewFile&fileid=" + file.fileKey + "&subclassname=org.jeecgframework.web.cgform.entity.upload.CgUploadEntity\" title=\"下载\">下载</a></td>")
  198. var td_view = $("<td><a href=\"javascript:void(0);\" onclick=\"openwindow('预览','commonController.do?openViewFile&fileid=" + file.fileKey + "&subclassname=org.jeecgframework.web.cgform.entity.upload.CgUploadEntity','fList',700,500)\">预览</a></td>");
  199. var td_del = $("<td><a href=\"javascript:void(0)\" class=\"jeecgDetail\" onclick=\"del('cgUploadController.do?delFile&id=" + file.fileKey + "',this)\">删除</a></td>");
  200. tr.appendTo(table);
  201. td_title.appendTo(tr);
  202. td_download.appendTo(tr);
  203. td_view.appendTo(tr);
  204. td_del.appendTo(tr);
  205. });
  206. }
  207. });
  208. });
  209. /**
  210. * 删除图片数据资源
  211. */
  212. function del(url,obj){
  213. var content = "请问是否要删除该资源";
  214. var navigatorName = "Microsoft Internet Explorer";
  215. if( navigator.appName == navigatorName ){
  216. $.dialog.confirm(content, function(){
  217. submit(url,obj);
  218. }, function(){
  219. });
  220. }else{
  221. layer.open({
  222. title:"提示",
  223. content:content,
  224. icon:7,
  225. yes:function(index){
  226. submit(url,obj);
  227. },
  228. btn:['确定','取消'],
  229. btn2:function(index){
  230. layer.close(index);
  231. }
  232. });
  233. }
  234. }
  235. function submit(url,obj){
  236. $.ajax({
  237. async : false,
  238. cache : false,
  239. type : 'POST',
  240. url : url,// 请求的action路径
  241. error : function() {// 请求失败处理函数
  242. },
  243. success : function(data) {
  244. var d = data; // ------ $.parseJSON(data);
  245. if (d.success) {
  246. var msg = d.msg;
  247. tip(msg);
  248. obj.parentNode.parentNode.parentNode.deleteRow(obj.parentNode.parentNode);
  249. } else {
  250. tip(d.msg);
  251. }
  252. }
  253. });
  254. }
  255. function jeecgFormFileCallBack(data){
  256. if (data.success == true) {
  257. uploadFile(data);
  258. } else {
  259. if (data.responseText == '' || data.responseText == undefined) {
  260. $.messager.alert('错误', data.msg);
  261. $.Hidemsg();
  262. } else {
  263. try {
  264. var emsg = data.responseText.substring(data.responseText.indexOf('错误描述'), data.responseText.indexOf('错误信息'));
  265. $.messager.alert('错误', emsg);
  266. $.Hidemsg();
  267. } catch(ex) {
  268. $.messager.alert('错误', data.responseText + '');
  269. }
  270. }
  271. return false;
  272. }
  273. }
  274. function upload() {
  275. $('#departurefile').uploadify('upload', '*');
  276. }
  277. var neibuClickFlag = false;
  278. function neibuClick() {
  279. neibuClickFlag = true;
  280. $('#btn_sub').trigger('click');
  281. }
  282. function cancel() {
  283. $('#departurefile').uploadify('cancel', '*');
  284. }
  285. function uploadFile(data){
  286. if(!$("input[name='id']").val()){
  287. if(data.obj!=null && data.obj!='undefined'){
  288. $("input[name='id']").val(data.obj.id);
  289. }
  290. }
  291. if($(".uploadify-queue-item").length>0){
  292. upload();
  293. }else{
  294. if (neibuClickFlag){
  295. alert(data.msg);
  296. neibuClickFlag = false;
  297. }
  298. }
  299. }
  300. </script>