contractEntryList.jsp 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465
  1. <%@ page contentType="text/html;charset=UTF-8"%>
  2. <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
  3. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  4. <HEAD>
  5. <TITLE>合同档案</TITLE>
  6. <link href="${pageContext.request.contextPath }/liger/lib/ligerUI/skins/${sessionScope.css}/css/ligerui-all.css" rel="stylesheet" type="text/css" />
  7. <script src="${pageContext.request.contextPath }/liger/lib/jquery/jquery-1.3.2.min.js" type="text/javascript"></script>
  8. <script src="${pageContext.request.contextPath }/liger/lib/ligerUI/js/core/base.js" type="text/javascript"></script>
  9. <script src="${pageContext.request.contextPath }/liger/lib/ligerUI/js/plugins/ligerGrid.js" type="text/javascript"></script>
  10. <link href="${pageContext.request.contextPath}/main.css" rel="stylesheet" type="text/css" />
  11. <script src="${pageContext.request.contextPath}/liger/lib/ligerUI/js/ligerui.all.js"
  12. type="text/javascript"></script>
  13. <script type="text/javascript" src="/shares/js/constant.js"></script>
  14. <script type="text/javascript" src="/shares/js/common.js"></script>
  15. <script type="text/javascript" src="/shares/js/yw/contract/flow/contractflow.js"></script>
  16. <script type="text/javascript">
  17. var grid = null;
  18. $(document).ready(function(){
  19. $("#contract_search_signdate").ligerDateEditor({ showTime: false, labelAlign: 'left'});
  20. $("#contract_search_signdate_end").ligerDateEditor({ showTime: false, labelAlign: 'left'});
  21. loadTypeTree("selectDeptButton",{type:"singledept",tab:"1",backId:"contract_search_duty_dept",backName:"contract_search_duty_dept_name"});
  22. initContractEntryList();
  23. });
  24. function loadContractEntryList(params) {
  25. grid = $("#contractEntryGrid")
  26. .ligerGrid(
  27. {
  28. columns : [
  29. {
  30. display : '合同编号',
  31. name : 'contract_number',
  32. width : 130
  33. },
  34. {
  35. display : '合同名称',
  36. name : 'contract_name',
  37. width : 230
  38. },
  39. /* {
  40. display : '合同类型',
  41. name : 'contract_type_name',
  42. width : 110
  43. },
  44. {
  45. display : '签约部门',
  46. name : 'duty_department_name',
  47. width : 110
  48. }, */
  49. {
  50. display : '甲方',
  51. name : 'firstparty_name',
  52. width : 200
  53. },
  54. {
  55. display : '乙方',
  56. name : 'secondparty_name',
  57. width : 200
  58. },
  59. /* {
  60. display : '签约人',
  61. name : 'duty_man_name',
  62. width : 110
  63. },
  64. {
  65. display : '经办人',
  66. name : 'salesman_name',
  67. width : 110
  68. },
  69. {
  70. display : '合同签订日期',
  71. name : 'contract_signdate',
  72. width : 110
  73. }, */
  74. {
  75. display : '操作',
  76. isAllowHide : false,
  77. width : 400,
  78. render : function(row) {
  79. var html = '<a href=\"#\" onclick=\"viewContractEntry('
  80. + row.universalid
  81. + ')\">合同信息</a>&nbsp;';
  82. if(row.lFormInsId){
  83. // contract_type为1时(销售合同),显示同步销售订单按钮
  84. if(row.contract_type == 1 && !row.orderNumber){
  85. html += '<a href="#" onclick="syncSaleOrderToMes('
  86. + row.universalid
  87. + ')\">同步销售订单</a>&nbsp;';
  88. }
  89. // contract_type为1时,不显示生成采购订单和合同跟踪按钮
  90. if(row.contract_type != 1 && !row.orderNumber){
  91. html += '<a href=\"#\" onclick=\"createPurchaseOrder('
  92. + row.universalid
  93. + ')\">生成采购订单</a>&nbsp;';
  94. }
  95. if(row.contract_type != 1){
  96. html += '<a href=\"#\" onclick=\"viewContractStatus('
  97. + row.universalid
  98. + ')\">合同跟踪</a>&nbsp;';
  99. }
  100. html += '<a href=\"#\" onclick=\"openODialog(\'${pageContext.request.contextPath }/FlowAction.do?task=toCustomView&insId='
  101. + row.flowInsId + '&tabid=' + getCurrentTabId()
  102. + '&dialogId='+row.flowInsId+'\'+getTime(), \'流程查看\', \''+row.flowInsId+'\'+getTime());\">流程查看</a>&nbsp;';
  103. html += '<a target="_blank" href=\"${pageContext.request.contextPath }/FlowAction.do?task=toCustomPrint&insId='
  104. + row.flowInsId + '&tabid=' + getCurrentTabId()+ '&modelId=' + row.lModelId
  105. + '\">表单打印</a>&nbsp;';
  106. }
  107. if('${flowOnOff}' == "off" && !row.lFormInsId){
  108. html += '<a href=\"#\" onclick=\"editContractEntry('
  109. + row.universalid
  110. + ')\">编辑</a>&nbsp;';
  111. html += '<a href=\"#\" onclick=\"delContractEntry('
  112. + row.universalid
  113. + ')\">删除</a>&nbsp;';
  114. }
  115. return html;
  116. }
  117. } ],
  118. pageSize : 20,
  119. url : 'contractEntry.do?task=contractEntryList'+params
  120. + '&flowOnOff=${flowOnOff}&time='
  121. + new Date().getTime(),
  122. pageParmName : 'p', //页索引参数名,(提交给服务器)
  123. pagesizeParmName : 'pSize', //页记录数参数名,(提交给服务器)
  124. width : '99.9%',
  125. height : '98%'
  126. });
  127. $("#pageloading").hide();
  128. }
  129. function viewContractEntry(id){
  130. window.parent.f_addTab(new Date().getTime(), '查看合同', '${pageContext.request.contextPath }/contractEntry.do?task=viewContractEntry&id='+id+'&tabid=' + getCurrentTabId());
  131. }
  132. function editContractEntry(id){
  133. window.parent.f_addTab(new Date().getTime(), '编辑合同', '${pageContext.request.contextPath }/contractEntry.do?task=toEditContractEntry&id='+id+'&tabid=' + getCurrentTabId());
  134. }
  135. function delContractEntry(id){
  136. if (window.confirm("确定要删除吗?")){
  137. var param={'id':id};
  138. sendAjaxParam(param,"contractEntry.do?task=delContractEntry",'json',delProcess);
  139. }
  140. }
  141. function delProcess(data){
  142. if(data.error!=null){
  143. $.ligerDialog.error(data.error);
  144. }
  145. if(data.success!=null){
  146. $.ligerDialog.success(data.success);
  147. }
  148. searchByKword();
  149. }
  150. function selectFirstParty(){
  151. $.ligerDialog.open({
  152. title : '选择公司',
  153. width : 900,
  154. height : 370,
  155. url : 'contractEntry.do?task=toSelectCompany',
  156. buttons : [ {
  157. text : '确定',
  158. onclick : f_firstPartyOK
  159. },{
  160. text : '本公司',
  161. onclick : f_firstPartyMyCompanyOK
  162. }, {
  163. text : '取消',
  164. onclick : f_firstPartyCancel
  165. } ]
  166. });
  167. }
  168. function f_firstPartyMyCompanyOK(item,dialog){
  169. $.ajax({
  170. type:"POST",
  171. url:"contractCompany.do?task=isExistMyCompany",
  172. data : "",
  173. timeout:10000,
  174. dataType:"json",
  175. success:function(data){
  176. if(data.isExist=='1'){
  177. $("#contract_search_firstparty").val(data.company.universalid);
  178. $("#contract_search_firstparty_name").val(data.company.company_name);
  179. dialog.close();
  180. }else{
  181. alert("本公司信息没填写,请补充!");
  182. dialog.close();
  183. }
  184. },
  185. complete:function(){
  186. }
  187. });
  188. }
  189. function f_firstPartyOK(item,dialog){
  190. var rows = dialog.frame.f_select();
  191. $("#contract_search_firstparty").val(rows[0].universalid);
  192. $("#contract_search_firstparty_name").val(rows[0].company_name);
  193. dialog.close();
  194. }
  195. function f_firstPartyCancel(item,dialog){
  196. dialog.close();
  197. }
  198. function initContractEntryList(){
  199. var params="";
  200. var contract_search_number=$("#contract_search_number").val();
  201. params=params+"&contract_search_number="+encodeURI(encodeURI(contract_search_number));
  202. var contract_search_name=$("#contract_search_name").val();
  203. params=params+"&contract_search_name="+encodeURI(encodeURI(contract_search_name));
  204. var contract_search_type=$("#contract_search_type").val();
  205. params=params+"&contract_search_type="+encodeURI(encodeURI(contract_search_type));
  206. var firstparty_name=$("#firstparty_name").val();
  207. params=params+"&firstparty_name="+encodeURI(encodeURI(firstparty_name));
  208. var secondparty_name=$("#secondparty_name").val();
  209. params=params+"&secondparty_name="+encodeURI(encodeURI(secondparty_name));
  210. var contract_search_duty_man=$("#contract_search_duty_man").val();
  211. params=params+"&contract_search_duty_man="+encodeURI(encodeURI(contract_search_duty_man));
  212. var contract_search_signdate=$("#contract_search_signdate").val();
  213. params=params+"&contract_search_signdate="+contract_search_signdate;
  214. var contract_search_firstparty=$("#contract_search_firstparty").val();
  215. params=params+"&contract_search_firstparty="+contract_search_firstparty;
  216. var contract_search_duty_dept=$("#contract_search_duty_dept").val();
  217. params=params+"&contract_search_duty_dept="+contract_search_duty_dept;
  218. loadContractEntryList(params);
  219. }
  220. function searchByKword(){
  221. grid.set("newPage","1");
  222. var params="";
  223. var contract_search_number=$("#contract_search_number").val();
  224. params=params+"&contract_search_number="+encodeURI(encodeURI(contract_search_number));
  225. var contract_search_name=$("#contract_search_name").val();
  226. params=params+"&contract_search_name="+encodeURI(encodeURI(contract_search_name));
  227. var contract_search_type=$("#contract_search_type").val();
  228. params=params+"&contract_search_type="+encodeURI(encodeURI(contract_search_type));
  229. // add by lww 20141112 begin
  230. var firstparty_name=$("#firstparty_name").val(); // 甲方
  231. params=params+"&firstparty_name="+encodeURI(encodeURI(firstparty_name));
  232. var secondparty_name=$("#secondparty_name").val();//乙方
  233. params=params+"&secondparty_name="+encodeURI(encodeURI(secondparty_name));
  234. // end
  235. var contract_search_duty_man=$("#contract_search_duty_man").val();
  236. params=params+"&contract_search_duty_man="+encodeURI(encodeURI(contract_search_duty_man));
  237. var contract_search_signdate=$("#contract_search_signdate").val();
  238. params=params+"&contract_search_signdate="+contract_search_signdate;
  239. var contract_search_signdate_end=$("#contract_search_signdate_end").val();
  240. params=params+"&contract_search_signdate_end="+contract_search_signdate_end;
  241. var contract_search_firstparty=$("#contract_search_firstparty").val();
  242. params=params+"&contract_search_firstparty="+contract_search_firstparty;
  243. var contract_search_duty_dept=$("#contract_search_duty_dept").val();
  244. params=params+"&contract_search_duty_dept="+contract_search_duty_dept;
  245. loadContractEntryList(params);
  246. }
  247. function resetSelectParams(){
  248. $("#contract_search_number").val("");
  249. $("#contract_search_name").val("");
  250. $("#contract_search_type").val("");
  251. $("#contract_search_duty_man").val("");
  252. $("#contract_search_signdate").val("");
  253. $("#contract_search_signdate_end").val("");
  254. $("#contract_search_firstparty").val("");
  255. $("#contract_search_duty_dept").val("");
  256. $("#contract_search_firstparty_name").val("");
  257. $("#contract_search_duty_dept_name").val("");
  258. $("#firstparty_name").val("");
  259. $("#secondparty_name").val("");
  260. }
  261. $(function() {
  262. $("#contract_search_type").ligerComboBox();
  263. });
  264. function testclick(){
  265. alert("222");
  266. alert("2333");
  267. }
  268. function viewContractStatus(id){
  269. window.parent.f_addTab(new Date().getTime(), '查看合同跟踪', '${pageContext.request.contextPath }/contractMyLaunch.do?task=viewContractStatus&id='+id+'&tabid=' + getCurrentTabId());
  270. }
  271. function getTime(){
  272. return new Date().getTime();
  273. }
  274. function createPurchaseOrder(id){
  275. if (window.confirm("确定生成采购订单?")){
  276. $.ligerDialog.waitting('正在生成订单,请稍候...');
  277. var param={'universalid':id};
  278. sendAsyncAjax(param,"contractPurchaseOrderAction.do?task=createFromContract",'json',createPurchaseOrderProcess);
  279. }
  280. }
  281. function createPurchaseOrderProcess(data){
  282. $.ligerDialog.closeWaitting();
  283. searchByKword();
  284. if(data>0){
  285. addInfo("生成成功!");
  286. }else{
  287. if(data == -98){
  288. addError("没有物料明细!");
  289. }else if(data == -97){
  290. addError("所选合同已被生成采购订单,不能重复生成!");
  291. }else if(data == -96){
  292. addError("采购订单物料明细与所选合同物料明细不一致!");
  293. }else if(data == -95){
  294. addError("采购订单物料采购数量超限!");
  295. }else if(data == -94){
  296. addError("采购订单同步到mes和金蝶云失败!");
  297. }else if(data == -93){
  298. addError("采购订单同步到金蝶云失败!");
  299. }else if(data == -92){
  300. addError("采购订单同步到mes失败!");
  301. }else{
  302. addError("生成失败!");
  303. }
  304. }
  305. }
  306. function syncSaleOrderToMes(id){
  307. if (window.confirm("确定要同步该销售合同到MES吗?")){
  308. $.ligerDialog.waitting('正在同步到MES,请稍候...');
  309. var param={'universalid':id};
  310. sendAsyncAjax(param,"contractEntry.do?task=syncSaleOrderToMes",'json',syncSaleOrderProcess);
  311. }
  312. }
  313. function syncSaleOrderProcess(data){
  314. $.ligerDialog.closeWaitting();
  315. searchByKword();
  316. if(data.success!=null){
  317. $.ligerDialog.success(data.success);
  318. }else if(data.error!=null){
  319. $.ligerDialog.error(data.error);
  320. }else{
  321. $.ligerDialog.error("同步失败!");
  322. }
  323. }
  324. </script>
  325. <style type="text/css">
  326. body {
  327. padding: 5px;
  328. margin: 0;
  329. }
  330. #layout1 {
  331. width: 100%;
  332. margin: 0;
  333. padding: 0;
  334. }
  335. .l-button {
  336. margin-left: 1px;
  337. width:100px;
  338. }
  339. .l-layout-left {
  340. overflow-y: auto;
  341. }
  342. input[type='button']{
  343. width: auto;
  344. margin-left: 5px;
  345. padding:0px 15px 0px 10px;
  346. }
  347. </style>
  348. </HEAD>
  349. <BODY >
  350. <%@ include file="/include/button.jsp"%>
  351. <%@ include file="/include/message.jsp"%>
  352. <div id="title" class="form-button">
  353. <%-- <input style="width:80px;" type="button" class="l-button" value="新增合同" onclick="window.parent.f_addTab(new Date().getTime(), '新增合同', '${pageContext.request.contextPath }/contractEntry.do?task=toCreate&tabid=' + getCurrentTabId());"/> --%>
  354. <input style="width:80px;" type="button" class="l-button" value="条件重置" onclick="resetSelectParams()"/>
  355. </div>
  356. <div class="container-layout">
  357. <div class="default_search" style="margin: 0;">
  358. <ul class="list_search" style="float:left;">
  359. <li class="title">合同编号:</li>
  360. <li class="text" ><input type="text" name="contract_search_number"
  361. id="contract_search_number" value=""/></li>
  362. </ul>
  363. <ul class="list_search" style="float:left;">
  364. <li class="title">合同名称:</li>
  365. <li class="text" ><input type="text" name="contract_search_name"
  366. id="contract_search_name" value=""/></li>
  367. </ul>
  368. <ul class="list_search" style="float:left;">
  369. <li class="title">甲方:</li>
  370. <li class="text" >
  371. <input type="text" name="firstparty_name" id="firstparty_name" value=""/>
  372. </li>
  373. </ul>
  374. <ul class="list_search" style="float:left;">
  375. <li class="title">乙方:</li>
  376. <li class="text" >
  377. <input type="text" name="secondparty_name" id="secondparty_name" value=""/>
  378. </li>
  379. </ul>
  380. <ul class="list_search" style="float:left;">
  381. <li class="title">签约人:</li>
  382. <li class="text" >
  383. <input type="text" name="contract_search_duty_man" id="contract_search_duty_man" value=""/>
  384. </li>
  385. </ul>
  386. <ul class="list_search" style="float:left;">
  387. <li class="title">合同类型:</li>
  388. <li class="text" >
  389. <select id="contract_search_type" name="contract_search_type" style="width:150px;">
  390. <option value="" selected="selected">-全部-</option>
  391. <c:forEach items="${typeList }" var="item">
  392. <option value="${item.contract_type }" >${item.contract_type_name }</option>
  393. </c:forEach>
  394. </select>
  395. </li>
  396. </ul>
  397. <!-- </div> -->
  398. <!-- <div class="default_search" style="margin: 0;"> -->
  399. <ul class="list_search" style="float:left;">
  400. <li class="title">签订日期:</li>
  401. <li class="text">
  402. <input type="text" name="contract_search_signdate" id="contract_search_signdate" value="" />
  403. </li>
  404. <li class="title title_rqjg">
  405. </li>
  406. <li class="text">
  407. <input type="text" name="contract_search_signdate_end" id="contract_search_signdate_end" value="" />
  408. </li>
  409. </ul>
  410. <ul class="list_search" style="float:left;">
  411. <li class="title" >公司:</li>
  412. <li class="text" >
  413. <input type="text" name="contract_search_firstparty_name" id="contract_search_firstparty_name" value="" readonly="readonly"/>
  414. <input type="hidden" name="contract_search_firstparty" id="contract_search_firstparty" value="" readonly="readonly"/>
  415. <input style="width:50px;" class="l-button" type="button" name="selectFirstParty" id="selectFirstParty" value="选择" onclick="selectFirstParty()" />
  416. </li>
  417. </ul>
  418. <ul class="list_search" style="float:left;">
  419. <li class="title">签约部门:</li>
  420. <li class="text" >
  421. <input type="text" name="contract_search_duty_dept_name" id="contract_search_duty_dept_name" value="" readonly="readonly"/>
  422. <input type="hidden" id="contract_search_duty_dept" name="contract_search_duty_dept" value="" readonly="readonly"/>
  423. <input type="button" class="l-button" style="width:50px;" name="selectDeptButton" id="selectDeptButton" value="选择"/>
  424. </li>
  425. </ul>
  426. <ul style="float:left;margin-left:25px;">
  427. <li class="search-button"><input type="button" class='l-button'
  428. name="search" onclick="searchByKword()" value="查询" /></li>
  429. </ul>
  430. </div>
  431. <div style="overflow: hidden; clear: both;">
  432. <div id="contractEntryGrid" style="margin: 0; padding: 0"></div>
  433. </div>
  434. </div>
  435. <input type="hidden" name="flowOnOff" id="flowOnOff" value="${flowOnOff}" />
  436. </BODY>
  437. </HTML>