arrangeDutyAllList.jsp 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318
  1. <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
  2. <%@include file="/context/mytags.jsp"%>
  3. <t:base type="jquery,easyui,tools,DatePicker"></t:base>
  4. <link rel="stylesheet" type="text/css" href="css/commoncss.css"/>
  5. <!-- <title>班次设定</title> -->
  6. <div class="easyui-layout" fit="true">
  7. <div region="center" style="padding:0px;border:0px">
  8. <t:datagrid name="arrangeDutyList" checkbox="false" fitColumns="false" title="班次设定" actionUrl="arrangeDutyController.do?datagridAll&departid=${departid}" idField="id" fit="true" queryMode="group">
  9. <t:dgCol title="主键" field="id" hidden="true" queryMode="single" width="120"></t:dgCol>
  10. <t:dgCol title="班次名称" field="dutyName" queryMode="single" width="120"></t:dgCol>
  11. <t:dgCol title="班次类型" field="dutyType" query="true" queryMode="single" dictionary="dutyType" width="120"></t:dgCol>
  12. <%-- <t:dgCol title="项目岗位" field="pjtpostDetailId" query="true" queryMode="single" dictionary="t_bus_project_post_detail,id,ptj_post_name" width="120"></t:dgCol> --%>
  13. <t:dgCol title="项目" field="pid" query="false" queryMode="single" dictionary="t_s_depart,id,departname, and org_type != '1' " width="200"></t:dgCol>
  14. <t:dgCol title="正常工作时间" field="normalworkStime" style="text-align: center;" queryMode="single" width="120"></t:dgCol>
  15. <t:dgCol title="正常下班时间" field="normalworkEtime" hidden="true" queryMode="single" width="120"></t:dgCol>
  16. <t:dgCol title="开始打卡分钟数" field="spunchMinute" style="text-align: right;" queryMode="single" width="120"></t:dgCol>
  17. <t:dgCol title="结束打卡分钟数" field="epunchMinute" style="text-align: right;" queryMode="single" width="120"></t:dgCol>
  18. <t:dgCol title="总工时(小时)" field="datumWorkhours" style="text-align: right;" queryMode="single" width="120"></t:dgCol>
  19. <t:dgCol title="班次工时(小时)" field="shiftWorkhours" style="text-align: right;" queryMode="single" width="120"></t:dgCol>
  20. <t:dgCol title="值班时间" field="ondutyStime" style="text-align: center;" queryMode="single" width="120"></t:dgCol>
  21. <t:dgCol title="值班结束时间" field="ondutyEtime" hidden="true" queryMode="single" width="120"></t:dgCol>
  22. <t:dgCol title="值班工时" field="ondutyWorkhours" hidden="true" queryMode="single" width="120"></t:dgCol>
  23. <t:dgCol title="超时加班时间" field="timeOutOvertimeStime" style="text-align: center;" queryMode="single" width="120"></t:dgCol>
  24. <t:dgCol title="超时加班结束时间" field="timeOutOvertimeEtime" hidden="true" queryMode="single" width="120"></t:dgCol>
  25. <t:dgCol title="超时加班时长(小时)" field="timeOutOvertimeHours" style="text-align: right;" queryMode="single" width="130"></t:dgCol>
  26. <t:dgCol title="班次餐补" field="dutyMealid" queryMode="single" dictionary="t_bus_meals_subsidy,id,subsidy_name" width="120"></t:dgCol>
  27. <t:dgCol title="备注" field="remark" showLen="10" queryMode="single" width="120"></t:dgCol>
  28. <t:dgCol title="创建人名称" field="createName" hidden="true" queryMode="single" width="120"></t:dgCol>
  29. <t:dgCol title="创建人登录名称" field="createBy" hidden="true" queryMode="single" width="120"></t:dgCol>
  30. <t:dgCol title="创建日期" field="createDate" formatter="yyyy-MM-dd hh:mm:ss" hidden="true" queryMode="single" width="120"></t:dgCol>
  31. <t:dgCol title="更新人名称" field="updateName" hidden="true" queryMode="single" width="120"></t:dgCol>
  32. <t:dgCol title="更新人登录名称" field="updateBy" hidden="true" queryMode="single" width="120"></t:dgCol>
  33. <t:dgCol title="更新日期" field="updateDate" formatter="yyyy-MM-dd hh:mm:ss" hidden="true" queryMode="single" width="120"></t:dgCol>
  34. <t:dgCol title="所属部门" field="sysOrgCode" hidden="true" queryMode="single" width="120"></t:dgCol>
  35. <t:dgCol title="所属公司" field="sysCompanyCode" hidden="true" queryMode="single" width="120"></t:dgCol>
  36. <t:dgCol title="状态" field="status" style="text-align: center;" queryMode="single" dictionary="ableStatus" width="120"></t:dgCol>
  37. <t:dgCol title="逻辑删除标识" field="deleteFlag" hidden="true" queryMode="single" dictionary="del_flag" width="120"></t:dgCol>
  38. <%-- <t:dgCol title="操作" field="opt"></t:dgCol>
  39. <t:dgDelOpt title="删除" url="arrangeDutyController.do?doDel&id={id}" urlclass="ace_button" urlfont="fa-trash-o"/>
  40. <t:dgToolBar title="录入" icon="icon-add" operationCode="add" url="arrangeDutyController.do?goAdd" funname="add"></t:dgToolBar>
  41. <t:dgToolBar title="修改" icon="icon-edit" operationCode="edit" url="arrangeDutyController.do?goUpdate" funname="update"></t:dgToolBar>
  42. <t:dgToolBar title="批量删除" icon="icon-remove" operationCode="remove" url="arrangeDutyController.do?doBatchDel" funname="deleteALLSelect"></t:dgToolBar>
  43. <t:dgToolBar title="查看" icon="icon-search" url="arrangeDutyController.do?goUpdate" funname="detail"></t:dgToolBar>
  44. <t:dgToolBar title="导入" icon="icon-putout" operationCode="put" funname="ImportXls"></t:dgToolBar>
  45. <t:dgToolBar title="导出" icon="icon-put" operationCode="put" funname="ExportXls"></t:dgToolBar>
  46. <t:dgToolBar title="模板下载" icon="icon-putout" operationCode="putout" funname="ExportXlsByT"></t:dgToolBar> --%>
  47. <%-- <t:dgToolBar title="录入" icon="icon-add" operationCode="add" url="arrangeDutyController.do?goAdd" funname="add"></t:dgToolBar>--%>
  48. <t:dgToolBar title="修改" icon="icon-edit" operationCode="edit" url="arrangeDutyController.do?goUpdateAll" funname="update"></t:dgToolBar>
  49. <%-- <t:dgToolBar title="删除" icon="icon-remove" operationCode="remove" url="" funname="logicDel"></t:dgToolBar>
  50. <t:dgToolBar title="启用" icon="icon-enable" url="" funname="enableObj"></t:dgToolBar>
  51. <t:dgToolBar title="停用" icon="icon-disable" url="" funname="disableObj"></t:dgToolBar>--%>
  52. <t:dgToolBar title="导出" icon="icon-put" operationCode="put" funname="ExportXls"></t:dgToolBar>
  53. </t:datagrid>
  54. </div>
  55. <script>
  56. $(function() {
  57. var datagrid = $("#arrangeDutyListtb");
  58. datagrid.find("div[name='searchColums']").find("form#arrangeDutyListForm").children("span:first").before($("#tempSearchColums1 div[name='searchColums']").html());
  59. //datagrid.find("div[name='searchColums']").find("form#arrangeDutyListForm").children("span:first").next("span").append($("#tempSearchColums1 div[name='searchColums']").html());
  60. //datagrid.find("div[name='searchColums']").find("form#arrangeDutyListForm").children("span:first").append($("#tempSearchColums div[name='searchColums']").html());
  61. /* datagrid.before($("#tempSearchColums div[name='searchColums']").html()); */
  62. //datagrid.children(".datagrid-toolbar").before($("#tempSearchColums1 div[name='searchColums1']").html());
  63. //datagrid.children(".datagrid-toolbar").children("span:first").after($("#tempSearchColums2 div[name='searchColums2']").html());
  64. $("#tempSearchColums1").html('');
  65. $("#searchColums").attr("style","margin:23px 0 18px 0;");
  66. datagrid.find("div[name='searchColums']").next("div").children("span:first").next("span").attr("style","float:right;margin-bottom:4px;");
  67. });
  68. </script>
  69. <div id="tempSearchColums1" style="display: none;">
  70. <div name="searchColums">
  71. <label class="Validform_label" >
  72. &nbsp;&nbsp;&nbsp;&nbsp; 项目名称:
  73. </label>
  74. <input readonly="true" type="text" id="departname" name="departname" value="${departname}" placeholder="请选择项目名称" onclick="openDepartmentSelect()">
  75. <input id="pid" name=pid type="hidden" value="${departid},">
  76. <a href="#" class="easyui-linkbutton" plain="true" icon="icon-select" id="departSearch" onclick="openDepartmentSelect()">选择</a>
  77. <a href="#" class="easyui-linkbutton" plain="true" icon="icon-clean" id="departRedo" onclick="callbackClean()">清空</a>
  78. </div>
  79. </div>
  80. </div>
  81. <script src = "webpage/cn/com/lzt/arrangeduty/arrangeDutyList.js"></script>
  82. <script type="text/javascript">
  83. //导入
  84. function ImportXls() {
  85. openuploadwin('Excel导入', 'arrangeDutyController.do?upload', "arrangeDutyList");
  86. }
  87. //导出
  88. function ExportXls() {
  89. JeecgExcelExport("arrangeDutyController.do?exportXls","arrangeDutyList");
  90. }
  91. //模板下载
  92. function ExportXlsByT() {
  93. JeecgExcelExport("arrangeDutyController.do?exportXlsByT","arrangeDutyList");
  94. }
  95. //新增
  96. function add(title,url,id){
  97. window.location.href=url
  98. }
  99. //修改
  100. function update(title,url, id){
  101. var date = new Date();
  102. var day = date.getDate();
  103. // if(day> 1 && day <6){
  104. // layer.alert("每月2日~5日为考勤和工资核算期, 不能修改班次");
  105. // return;
  106. // }
  107. updateNotCreateWin("修改",url, "arrangeDutyList",false);
  108. }
  109. //查看
  110. function view(title,url, id){
  111. viewNotCreateWin("查看",url, "arrangeDutyList",false)
  112. }
  113. //选择项目名称,列表================
  114. function openDepartmentSelect() {
  115. //$.dialog.setting.zIndex = getzIndex();
  116. var orgIds = $("#pid").val();
  117. $.dialog({
  118. content: 'url:dialogDealController.do?projectDepartTableAll&ids='+orgIds, zIndex: getzIndex(), title: '项目名称列表', lock: true, width: '600px', height: '350px', opacity: 0.4, button: [
  119. {name: '<t:mutiLang langKey="common.confirm"/>', callback: function (){
  120. var iframe = this.iframe.contentWindow;
  121. if(iframe.getReason().length>0){
  122. var strData=eval(iframe.getReason());
  123. for(var key in strData[0]){
  124. if(key=="strPId"){
  125. $("#pid").val(strData[0][key]);
  126. }else if(key=="strDepartName"){
  127. $("#departname").val(strData[0][key]);
  128. }
  129. }
  130. }
  131. }, focus: true},
  132. {name: '<t:mutiLang langKey="common.cancel"/>', callback: function (){}}
  133. ]}).zindex();
  134. }
  135. function callbackClean(){
  136. $('#departname').val('');
  137. $('#pid').val('');
  138. }
  139. //选择项目名称列表================
  140. /* //选择项目名称zTree================
  141. function openDepartmentSelect() {
  142. //$.dialog.setting.zIndex = getzIndex();
  143. var orgIds = $("#pid").val();
  144. $.dialog({content: 'url:projarrangeDetailController.do?departZTreeSelect&orgIds='+orgIds, zIndex: getzIndex(), title: '所属部门列表', lock: true, width: '400px', height: '350px', opacity: 0.4, button: [
  145. {name: '<t:mutiLang langKey="common.confirm"/>', callback: callbackDepartmentSelect, focus: true},
  146. {name: '<t:mutiLang langKey="common.cancel"/>', callback: function (){}}
  147. ]}).zindex();
  148. }
  149. function callbackDepartmentSelect() {
  150. var iframe = this.iframe.contentWindow;
  151. var treeObj = iframe.$.fn.zTree.getZTreeObj("departSelect");
  152. var nodes = treeObj.getCheckedNodes(true);
  153. if(nodes.length>0){
  154. var ids='',names='';
  155. for(i=0;i<nodes.length;i++){
  156. var node = nodes[i];
  157. ids += node.id+',';
  158. names += node.name+',';
  159. }
  160. $('#departname').val(names);
  161. $('#departname').blur();
  162. $('#pid').val(ids);
  163. }
  164. }
  165. function callbackClean(){
  166. $('#departname').val('');
  167. $('#pid').val('');
  168. }
  169. //选择项目名称zTree================ */
  170. //班次状态启用
  171. function enableObj(){
  172. //var ids = [];
  173. var ids;
  174. var rows = $("#arrangeDutyList").datagrid('getSelections');
  175. if (rows.length > 0) {
  176. $.messager.confirm("确认", "确定要启用这条数据?", function (r) {
  177. if (r) {
  178. /* for ( var i = 0; i < rows.length; i++) {
  179. ids.push(rows[i].id);
  180. } */
  181. ids=rows[0].id;
  182. $.ajax({
  183. url : "arrangeDutyController.do?enable",
  184. type : 'post',
  185. data : {
  186. id : ids
  187. },
  188. cache : false,
  189. success : function(data) {
  190. var d = data; // ------ $.parseJSON(data);
  191. if (d.success) {
  192. tip(d.msg);
  193. $("#arrangeDutyList").datagrid('reload');
  194. clearData();
  195. ids='';
  196. }else{
  197. layer.alert(d.msg);
  198. }
  199. }
  200. });
  201. }
  202. });
  203. } else {
  204. layer.alert("请选择需要启用的数据");
  205. }
  206. }
  207. //班次状态停用
  208. function disableObj(){
  209. //var ids = [];
  210. var ids;
  211. var rows = $("#arrangeDutyList").datagrid('getSelections');
  212. if (rows.length > 0) {
  213. $.messager.confirm("确认", "确定要停用这条数据?", function (r) {
  214. if (r) {
  215. /* for ( var i = 0; i < rows.length; i++) {
  216. ids.push(rows[i].id);
  217. } */
  218. ids=rows[0].id;
  219. $.ajax({
  220. url : "arrangeDutyController.do?disable",
  221. type : 'post',
  222. data : {
  223. id : ids
  224. },
  225. cache : false,
  226. success : function(data) {
  227. var d = data; // ------ $.parseJSON(data);
  228. if (d.success) {
  229. var msg = d.msg;
  230. tip(msg);
  231. $("#arrangeDutyList").datagrid('reload');
  232. clearData();
  233. ids='';
  234. }else{
  235. layer.alert(d.msg);
  236. }
  237. }
  238. });
  239. }
  240. });
  241. } else {
  242. layer.alert("请选择需要停用的数据");
  243. }
  244. }
  245. //清空数据
  246. function clearData(){
  247. var rowData = {};
  248. fillData(rowData);
  249. $("#arrangeDutyList").datagrid('clearChecked');
  250. }
  251. function fillData(rowData){
  252. //清空表单
  253. $("#formobj").form('clear');
  254. //填充数据
  255. for(var d in rowData){
  256. $("#"+d).val(rowData[d]);
  257. }
  258. }
  259. //逻辑删除班次表
  260. function logicDel(){
  261. var id ;
  262. var rows = $("#arrangeDutyList").datagrid('getSelections');
  263. if (rows.length > 0) {
  264. $.messager.confirm("确认", "确定要删除这条数据?", function (r) {
  265. if (r) {
  266. for ( var i = 0; i < rows.length; i++) {
  267. id=rows[i].id;
  268. }
  269. $.ajax({
  270. url : "arrangeDutyController.do?logicDel",
  271. type : 'post',
  272. data : {
  273. id : id
  274. },
  275. cache : false,
  276. success : function(data) {
  277. var d = data; // ------ $.parseJSON(data);
  278. // console.log(d);
  279. if (d.success) {
  280. tip(d.msg);
  281. $("#arrangeDutyList").datagrid('reload');
  282. clearData();
  283. id='';
  284. }else{
  285. layer.alert(d.msg);
  286. }
  287. }
  288. });
  289. }
  290. });
  291. } else {
  292. layer.alert("请选择需要删除的数据");
  293. }
  294. }
  295. </script>