wagestrategyZoneList.jsp 19 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524
  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. <!-- 工资策略设定 -->
  5. <style>
  6. .seachdiv{
  7. padding : 15px 30px;
  8. background-color: #ffffff;
  9. box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.05);
  10. border: solid 1px #dcdcdc;
  11. margin: 10px 10px 0px 10px;
  12. margin-bottom:1px;
  13. }
  14. </style>
  15. <div class="easyui-layout" fit="true">
  16. <div region="center" style="padding:0px;border:0px">
  17. <t:datagrid name="wagestrategyList" checkbox="false" fitColumns="true" title="区域级职务津贴设定" actionUrl="wagestrategyController.do?datagrid_zone" idField="id" fit="true" queryMode="group">
  18. <t:dgCol title="主键" field="id" hidden="true" queryMode="single" width="120"></t:dgCol>
  19. <t:dgCol title="区域" field="zone" queryMode="single" dictionary="t_b_zone,id,name" width="150"></t:dgCol>
  20. <%-- <t:dgCol title="上级职务名称" field="parentDutiesName" queryMode="single" width="120"></t:dgCol> --%>
  21. <t:dgCol title="职务id" field="dutiesId" hidden="true" queryMode="single" width="120"></t:dgCol>
  22. <t:dgCol title="职务名称" field="dutiesName" queryMode="single" width="120"></t:dgCol>
  23. <t:dgCol title="岗位" field="postName" queryMode="single" width="120"></t:dgCol>
  24. <%-- <t:dgCol title="基本工资" field="basicWage" style="text-align: right;" queryMode="single" width="120"></t:dgCol> --%>
  25. <t:dgCol title="区域职务津贴" field="subsidy" style="text-align: right;" queryMode="single" width="120"></t:dgCol>
  26. <t:dgCol title="区域级交通补贴" field="trafficsubsidy" style="text-align: right;" queryMode="single" width="120"></t:dgCol>
  27. <t:dgCol title="创建人名称" field="createName" hidden="true" queryMode="single" width="120"></t:dgCol>
  28. <t:dgCol title="创建人登录名称" field="createBy" hidden="true" queryMode="single" width="120"></t:dgCol>
  29. <t:dgCol title="创建日期" field="createDate" formatter="yyyy-MM-dd" hidden="true" queryMode="single" width="120"></t:dgCol>
  30. <t:dgCol title="更新人名称" field="updateName" hidden="true" queryMode="single" width="120"></t:dgCol>
  31. <t:dgCol title="更新人登录名称" field="updateBy" hidden="true" queryMode="single" width="120"></t:dgCol>
  32. <t:dgCol title="更新日期" field="updateDate" formatter="yyyy-MM-dd" hidden="true" queryMode="single" width="120"></t:dgCol>
  33. <t:dgCol title="所属部门" field="sysOrgCode" hidden="true" queryMode="single" width="120"></t:dgCol>
  34. <t:dgCol title="所属公司" field="sysCompanyCode" hidden="true" queryMode="single" width="120"></t:dgCol>
  35. <%-- <t:dgCol title="状态" field="status" hidden="true" queryMode="single" dictionary="ableStatus" 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="wagestrategyController.do?doDel&id={id}" urlclass="ace_button" urlfont="fa-trash-o"/> --%>
  40. <%-- <t:dgToolBar title="录入" icon="icon-add" operationCode="add" url="wagestrategyController.do?goAdd_zone" funname="add"></t:dgToolBar> --%>
  41. <t:dgToolBar title="修改" icon="icon-edit" operationCode="edit" url="wagestrategyController.do?goUpdate_zone" funname="update"></t:dgToolBar>
  42. <%-- <t:dgToolBar title="批量删除" icon="icon-remove" operationCode="remove" url="wagestrategyController.do?doBatchDel" funname="deleteALLSelect"></t:dgToolBar>
  43. <t:dgToolBar title="查看" icon="icon-search" url="wagestrategyController.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-enable" url="wagestrategyController.do?enable" funname="enableObj"></t:dgToolBar> --%>
  48. <%-- <t:dgToolBar title="停用" icon="icon-disable" url="wagestrategyController.do?disable" funname="disableObj"></t:dgToolBar> --%>
  49. <t:dgToolBar title="删除" icon="icon-remove" operationCode="remove" funname="logicDel"></t:dgToolBar>
  50. </t:datagrid>
  51. <script>
  52. $(function() {
  53. var datagrid = $("#wagestrategyListtb");
  54. datagrid.prepend($("#pinjie1 div[name='pinjie2']").html());
  55. $("#pinjie1").html('');
  56. /* datagrid.children("span:first").after($("#hengxian1 div[name='hengxian2']").html());
  57. $("#hengxian1").html(''); */
  58. /* datagrid.children(".datagrid-toolbar").children("span:first").after($("#pinjiechaxun1 div[name='pinjiechaxun2']").html());
  59. $("#pinjiechaxun1").html(''); */
  60. //datagrid.children(".datagrid-toolbar").children("span:first").before($("#hengxian1 div[name='hengxian2']").html());
  61. // $("#hengxian1").html('');
  62. });
  63. </script>
  64. <div id="pinjie1">
  65. <div name="pinjie2" style="padding:3px; height: auto" class="datagrid-toolbar">
  66. <div style="" class="seachdiv">
  67. <!-- <t:formvalid formid="formobj" dialog="false" tipSweep="true" layout="table" action="wagestrategyController.do?saveRows" tiptype="1" callback="callback"> -->
  68. <input name="id" id="id" type="hidden" value="" />
  69. <table id="myTable" style="position: relative;">
  70. <tbody>
  71. <tr>
  72. <td align="right">
  73. <label class="Validform_label">
  74. <span color="red" class="requiredIcon">*</span>区域:
  75. </label>
  76. </td>
  77. <td class="value">
  78. <t:dictSelect field="zonedic" type="list" dictTable="t_b_zone" dictField="id" dictText="name" hasLabel="false" title="区域" ></t:dictSelect>
  79. <span class="Validform_checktip"></span>
  80. <label class="Validform_label" style="display: none;">区域</label>
  81. </td>
  82. <td align="right" style="width: 60px;">
  83. <label class="Validform_label">
  84. <span color="red" class="requiredIcon">*</span>职务名称:
  85. </label>
  86. </td>
  87. <td class="value" style="min-width: 150px">
  88. <%--update-start--Author:jg_renjie Date:20160320 for:#942 【组件封装】所属部门弹出模式,目前是列表,得改造成树方式--%>
  89. <input id="dutiesName" name="dutiesName" type="text" readonly="readonly" class="inputxt" datatype="*" value="${dutiesName}" placeholder="请选择职务名称" onclick="openDepartmentSelect() " ignore="ignore">
  90. <input id="dutiesId" name="dutiesId" type="hidden" value="${dutiesId}">
  91. <!-- <a href="#" class="easyui-linkbutton" plain="true" icon="icon-select" id="departSearch" onclick="openDepartmentSelect()">选择</a> -->
  92. <!-- <a href="#" class="easyui-linkbutton" plain="true" icon="icon-clean" id="departRedo" onclick="callbackClean()">清空</a> -->
  93. <%--update-end--Author:jg_renjie Date:20160320 for:#942 【组件封装】所属部门弹出模式,目前是列表,得改造成树方式--%>
  94. <span class="Validform_checktip"></span>
  95. <label class="Validform_label" style="display: none;">职务名称</label>
  96. </td>
  97. <td align="right" style="width: 100px;">
  98. <label class="Validform_label">
  99. <span color="red" class="requiredIcon">*</span>区域级职务津贴:
  100. </label>
  101. </td>
  102. <td class="value" >
  103. <input id="subsidy" name="subsidy" type="text" class="inputxt" maxlength="8" errormsg="职务津贴输入超限,请重新输入" onkeyup="num1(this)" placeholder="请输入职务津贴金额" ignore="ignore"/>&nbsp;
  104. <span class="Validform_checktip"></span>
  105. <label class="Validform_label" style="display: none;">区域级职务津贴</label>
  106. </td>
  107. <td align="right" style="width: 100px;">
  108. <label class="Validform_label">
  109. 区域级交通补贴:
  110. </label>
  111. </td>
  112. <td class="value" >
  113. <input id="trafficsubsidy" name="trafficsubsidy" type="text" class="inputxt" maxlength="8" errormsg="交通补贴输入超限,请重新输入" onkeyup="num1(this)" placeholder="请输入区域交通补贴" ignore="ignore"/>&nbsp;
  114. <span class="Validform_checktip"></span>
  115. <label class="Validform_label" style="display: none;">交通补贴</label>
  116. </td>
  117. <td>
  118. <div style="margin-left: 45px;">
  119. <a href="#" class="easyui-linkbutton l-btn l-btn-plain" iconcls="icon-save" plain="true" onclick="btn_ok()">保存</a>
  120. <a href="#" class="easyui-linkbutton l-btn l-btn-plain" plain="true" icon="icon-clean" onclick="clearData()"> 清空</a>
  121. </div>
  122. </td>
  123. <!-- <td class="">
  124. <div style="display:none"><input type="submit" id ="btnsub" value=""/></div>
  125. <a href="#" class="easyui-linkbutton l-btn l-btn-plain" iconcls="icon-save" plain="true" onclick="btn_ok()">保存</a>
  126. </td>
  127. <td class="">
  128. <a href="#" class="easyui-linkbutton l-btn l-btn-plain" plain="true" icon="icon-clean" onclick="clearData()"> 清空</a>
  129. </td> -->
  130. </tr>
  131. </tbody>
  132. </table>
  133. <!-- </t:formvalid> -->
  134. </div>
  135. </div>
  136. </div>
  137. </div>
  138. <script src = "webpage/cn/com/lzt/wagestrategy/wagestrategyList.js"></script>
  139. <script type="text/javascript">
  140. //最多输入两位小数
  141. function num1(obj){
  142. obj.value = obj.value.replace(/[^\d.]/g,""); //清除"数字"和"."以外的字符
  143. obj.value = obj.value.replace(/^\./g,""); //验证第一个字符是数字
  144. obj.value = obj.value.replace(/\.{2,}/g,"."); //只保留第一个, 清除多余的
  145. obj.value = obj.value.replace(".","$#$").replace(/\./g,"").replace("$#$",".");
  146. obj.value = obj.value.replace(/^(\-)*(\d+)\.(\d\d).*$/,'$1$2.$3'); //只能输入两个小数
  147. }
  148. //导入
  149. function ImportXls() {
  150. openuploadwin('Excel导入', 'wagestrategyController.do?upload', "wagestrategyList");
  151. }
  152. //导出
  153. function ExportXls() {
  154. JeecgExcelExport("wagestrategyController.do?exportXls","wagestrategyList");
  155. }
  156. //模板下载
  157. function ExportXlsByT() {
  158. JeecgExcelExport("wagestrategyController.do?exportXlsByT","wagestrategyList");
  159. }
  160. /* //新增
  161. function add(title,url,id){
  162. window.location.href=url
  163. }
  164. //修改
  165. function update(title,url, id){
  166. updateNotCreateWin("修改",url, "wagestrategyList",false);
  167. }
  168. //查看
  169. function view(title,url, id){
  170. viewNotCreateWin("查看",url, "wagestrategyList",false)
  171. } */
  172. //正则验证只能输入最多6个数字+最多2个小数位
  173. //datatype="/^\d{1,6}(?:\.\d{0,2}$|$)/"
  174. function regx(str){
  175. var regx = /^\d{1,6}(?:\.\d{0,2}$|$)/;
  176. if(regx.test(str)){
  177. return true;
  178. }else{
  179. return false;
  180. }
  181. }
  182. //自定义保存按钮
  183. function btn_ok(){
  184. //$("#btnsub").click();
  185. ////window.location.reload();//刷新当前页面.
  186. //parent.location.reload();//刷新父亲对象(用于框架)
  187. //opener.location.reload();//刷新父窗口对象(用于单开窗口)
  188. //top.location.reload();//刷新最顶端对象(用于多开窗口)
  189. /* if($('#dutiesName').val().length==0){
  190. layer.alert("请选择职务名称");
  191. return false;
  192. }
  193. if($('#basicWage').val().length==0){
  194. layer.alert("请输入基本工资");
  195. return false;
  196. }else if(regx($('#basicWage').val())==false){
  197. layer.alert("基本工资数值非法");
  198. return false;
  199. } */
  200. var dutiesId=$('#dutiesId').val();
  201. var subsidy=$('#subsidy').val();
  202. var dutyTypeOption=$("select[name='zonedic']");
  203. var zonedic=dutyTypeOption.val();
  204. if(zonedic.length==0){
  205. layer.alert("请选择区域");
  206. return false;
  207. }
  208. if(dutiesId.length==0){
  209. layer.alert("请选择职务名称");
  210. return false;
  211. }
  212. if(isNaN(subsidy)==true||parseInt(subsidy)<0){
  213. layer.alert("请输入合法格式的数字");
  214. return false;
  215. }
  216. if($('#subsidy').val().length!=0){
  217. if(regx($('#subsidy').val())==false){
  218. layer.alert("职务津贴输入超限,请重新输入");
  219. return false;
  220. }
  221. }
  222. if($('#trafficsubsidy').val().length!=0){
  223. if(regx($('#trafficsubsidy').val())==false){
  224. layer.alert("交通补贴输入超限,请重新输入");
  225. return false;
  226. }
  227. }
  228. /* var flag = $("#formobj").Validform().check(true);
  229. if(flag!=true){
  230. $("#btnsub").click();
  231. return false;
  232. } */
  233. $.ajax({
  234. async:false,
  235. url : "wagestrategyController.do?ajaxCheckName_zone",
  236. type : 'post',
  237. data : {
  238. id:$('#id').val(),
  239. dutiesId : $('#dutiesId').val(),
  240. trafficsubsidy : $('#trafficsubsidy').val(),
  241. zone : zonedic
  242. },
  243. cache : false,
  244. success : function(data) {
  245. //console.log(data);
  246. var d = data; // ------ $.parseJSON(data);
  247. //callback(d);
  248. if (d.success==false) {
  249. layer.alert(d.msg);
  250. return false;
  251. }else{
  252. $.ajax({
  253. url : "wagestrategyController.do?saveRows",
  254. type : 'post',
  255. data : {
  256. id : $('#id').val(),
  257. dutiesId : $('#dutiesId').val(),
  258. subsidy : $('#subsidy').val(),
  259. trafficsubsidy : $('#trafficsubsidy').val(),
  260. zone : zonedic
  261. },
  262. cache : false,
  263. success : function(data) {
  264. //console.log(data);
  265. var d = data; // ------ $.parseJSON(data);
  266. callback(d);
  267. }
  268. });
  269. }
  270. }
  271. });
  272. }
  273. function fillData(rowData){
  274. //清空表单
  275. //$("#formobj").form('clear');
  276. //填充数据
  277. for(var d in rowData){
  278. $("#"+d).val(rowData[d]);
  279. }
  280. }
  281. //编辑数据输入框复现
  282. $(function(){
  283. $("#wagestrategyList").datagrid({
  284. onClickRow: function(rowIndex, rowData){
  285. //fillData(rowData);
  286. /* $("#editPanel").panel({title:"修改数据"}); */
  287. var zoneOption=$("select[name='zonedic']");
  288. zoneOption.val(rowData.zone);
  289. $('#id').val(rowData.id);
  290. //$('#dutiesName').val(rowData.dutiesName);
  291. $('#dutiesId').val(rowData.dutiesId+',');
  292. $('#subsidy').val(rowData.subsidy);
  293. $('#trafficsubsidy').val(rowData.trafficsubsidy);
  294. $.ajax({
  295. url : "wagestrategyController.do?getDName",
  296. type : 'post',
  297. data : {
  298. id : rowData.dutiesId
  299. },
  300. cache : false,
  301. success : function(data) {
  302. var d = data; // ------ $.parseJSON(data);
  303. $('#dutiesName').val(d.msg);
  304. }
  305. });
  306. }
  307. });
  308. })
  309. //逻辑删除
  310. function logicDel(){
  311. var id ="";
  312. var rows = $("#wagestrategyList").datagrid('getSelections');
  313. if (rows.length > 0) {
  314. $.messager.confirm("确认", "确定要删除这条数据?", function (r) {
  315. if (r) {
  316. for ( var i = 0; i < rows.length; i++) {
  317. id=rows[i].id;
  318. }
  319. $.ajax({
  320. url : "wagestrategyController.do?logicDel",
  321. type : 'post',
  322. data : {
  323. id : id
  324. },
  325. cache : false,
  326. success : function(data) {
  327. var d = data; // ------ $.parseJSON(data);
  328. if (d.success) {
  329. tip(d.msg);
  330. $("#wagestrategyList").datagrid('reload');
  331. clearData();
  332. id='';
  333. }else{
  334. layer.alert(d.msg);
  335. }
  336. }
  337. });
  338. }
  339. });
  340. } else {
  341. layer.alert("请选择需要删除的数据");
  342. }
  343. }
  344. //取消编辑
  345. /* function cancelEdit(){
  346. var rowData = $("#wagestrategyList").datagrid("getSelected");
  347. if (rowData != null) {
  348. fillData(rowData);
  349. }else{
  350. clearData();
  351. }
  352. } */
  353. //清空数据
  354. function clearData(){
  355. var rowData = {};
  356. fillData(rowData);
  357. $("#id").val("");
  358. $("#dutiesId").val("");
  359. $("#dutiesName").val("");
  360. $("#subsidy").val("");
  361. $('#trafficsubsidy').val("");
  362. var zoneOption=$("select[name='zonedic']");
  363. zoneOption.val("");
  364. $("#wagestrategyList").datagrid('clearChecked');
  365. $("#wagestrategyList").datagrid('unselectAll');
  366. }
  367. //保存数据后刷新当前页面数据
  368. function callback(data){
  369. //debugger;
  370. if(data.success){
  371. clearData();
  372. $("#wagestrategyList").datagrid('reload');
  373. top.tip(data.msg);
  374. }else{
  375. layer.alert(data.msg);
  376. }
  377. }
  378. function enableObj(){
  379. //var ids = [];
  380. var ids;
  381. var rows = $("#wagestrategyList").datagrid('getSelections');
  382. if (rows.length > 0) {
  383. $.messager.confirm("确认", "确定要启用这条数据?", function (r) {
  384. if (r) {
  385. /* for ( var i = 0; i < rows.length; i++) {
  386. ids.push(rows[i].id);
  387. } */
  388. ids=rows[0].id;
  389. $.ajax({
  390. url : "wagestrategyController.do?enable",
  391. type : 'post',
  392. data : {
  393. id : ids
  394. },
  395. cache : false,
  396. success : function(data) {
  397. var d = data; // ------ $.parseJSON(data);
  398. if (d.success) {
  399. tip(d.msg);
  400. $("#wagestrategyList").datagrid('reload');
  401. clearData();
  402. ids='';
  403. }else{
  404. layer.alert(d.msg);
  405. }
  406. }
  407. });
  408. }
  409. });
  410. } else {
  411. layer.alert("请选择需要启用的数据");
  412. }
  413. }
  414. function disableObj(){
  415. //var ids = [];
  416. var ids;
  417. var rows = $("#wagestrategyList").datagrid('getSelections');
  418. if (rows.length > 0) {
  419. $.messager.confirm("确认", "确定要停用这条数据?", function (r) {
  420. if (r) {
  421. /* for ( var i = 0; i < rows.length; i++) {
  422. ids.push(rows[i].id);
  423. } */
  424. ids=rows[0].id;
  425. $.ajax({
  426. url : "wagestrategyController.do?disable",
  427. type : 'post',
  428. data : {
  429. id : ids
  430. },
  431. cache : false,
  432. success : function(data) {
  433. var d = data; // ------ $.parseJSON(data);
  434. if (d.success) {
  435. tip(d.msg);
  436. $("#wagestrategyList").datagrid('reload');
  437. clearData();
  438. ids='';
  439. }else{
  440. layer.alert(d.msg);
  441. }
  442. }
  443. });
  444. }
  445. });
  446. } else {
  447. layer.alert("请选择需要停用的数据");
  448. }
  449. }
  450. function openDepartmentSelect() {
  451. $.dialog.setting.zIndex = getzIndex();
  452. var orgIds = $("#dutiesId").val();
  453. $.dialog({
  454. content: 'url:wagestrategyController.do?departSelect&orgIds='+orgIds,
  455. zIndex: getzIndex(), title: '职务选择', lock: true, width: '400px', height: '350px', opacity: 0.4, cache:false,
  456. button: [
  457. {name: '<t:mutiLang langKey="common.confirm"/>', callback: callbackDepartmentSelect, focus: true},
  458. {name: '<t:mutiLang langKey="common.cancel"/>', callback: function (){}}
  459. ]
  460. }).zindex();
  461. }
  462. function callbackDepartmentSelect() {
  463. var iframe = this.iframe.contentWindow;
  464. var treeObj = iframe.$.fn.zTree.getZTreeObj("departSelect");
  465. var nodes = treeObj.getCheckedNodes(true);
  466. if(nodes.length>0){
  467. var ids='',names='';
  468. for(i=0;i<nodes.length;i++){
  469. var node = nodes[i];
  470. ids = node.id+',';
  471. names = node.name;
  472. }
  473. $('#dutiesName').val(names);
  474. $('#dutiesName').blur();
  475. $('#dutiesId').val(ids);
  476. }else{
  477. top.tip("请选择职务名称");
  478. return false;
  479. }
  480. }
  481. function callbackClean(){
  482. $('#dutiesName').val('');
  483. $('#dutiesId').val('');
  484. //$('#parentDutiesid').val('');
  485. }
  486. </script>