cost_tools.js 6.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176
  1. function selectCostRequest(params,callback,width,height){//选申请单
  2. var depId = params.departId;
  3. var id= params.id;
  4. if(!depId){
  5. tip('请先选择组织机构');
  6. return;
  7. }
  8. if(!width){
  9. width='800px';
  10. }
  11. if(!height){
  12. height='350px';
  13. }
  14. var title='申请单列表';
  15. var _selectDialog= $.dialog({content: 'url:activitiCostDataController.do?selectRequest&depId='+depId+"&id="+id
  16. , zIndex: getzIndex()
  17. , title:title , lock: true, width:width, height: height, opacity: 0.4, button: [
  18. {name: '确定', callback: function(){
  19. var iframe = _selectDialog.iframe.contentWindow;
  20. var selectedRows = iframe.getSelectedRow();
  21. if(selectedRows.length==0){
  22. iframe.tip('请选择申请单');
  23. return false;
  24. }
  25. var requestId = selectedRows[0].id;//单选ok,如果改成多选会有bug
  26. var id=$('#id').val();
  27. var inUse = false;
  28. $.ajax({
  29. url:'tBActivitiCostRequestController.do?isInProcess'
  30. ,method:'POST'
  31. ,data:{requestId:requestId,updateId:id}
  32. ,dataType:'json'
  33. ,async:false
  34. ,success:function(d){
  35. if(d.success){
  36. inUse = true;
  37. tip('该申请单已在其他流程中使用,请勿重复报销!')
  38. }
  39. }
  40. });
  41. if(!inUse) {
  42. if(callback){
  43. callback(selectedRows);
  44. }
  45. }
  46. }, focus: true},
  47. {name: '取消', callback: function (){}}
  48. ]}).zindex();
  49. }
  50. function selectUserProducts(ids,excludeIds,callback,width,height){//员工报销
  51. var url ='tBActivitiCostPayInnerUserController.do?selectProduct&ids='+ids+'&excludeIds='+excludeIds+"&editId="+$('#id').val();
  52. _openDialog(url,'物料签报选择',function(iframe){
  53. var selectedRows = iframe.getSelectRows();
  54. if(selectedRows.length==0){
  55. iframe.tip('请选择物料签报');
  56. return false;
  57. }
  58. var supplierId = selectedRows[0].supplierId;
  59. for(var i=0;i<selectedRows.length;i++){
  60. var one = selectedRows[i];
  61. if(i>0){
  62. var _supplierId = selectedRows[i].supplierId;
  63. if(_supplierId!=supplierId){
  64. iframe.tip('请选择相同供应商');
  65. return false;
  66. }
  67. }
  68. var quantity= one.quantity;
  69. var quantityArrived = one.quantityArrived;
  70. var quantityReturned = one.quantityReturned;
  71. if(quantity > numAdd(quantityArrived, quantityReturned)){
  72. iframe.tip('仅支持全部到货完成的订单支付。请勾选掉未完全到货的商品。');
  73. return false;
  74. }
  75. }
  76. if(callback){
  77. callback(selectedRows);
  78. }
  79. },width,height);
  80. }
  81. function selectCompanyProducts(ids,callback,width,height){//对外付款
  82. var url ='tBActivitiCostPayTmpCompanyController.do?selectProduct&ids='+ids+"&editId="+$('#id').val();
  83. _openDialog(url,'物料签报选择',function(iframe){
  84. var selectedRows = iframe.getSelectRows();
  85. if(selectedRows.length==0){
  86. iframe.tip('请选择物料签报');
  87. return false;
  88. }
  89. var supplierId = selectedRows[0].supplierId;
  90. for(var i=0;i<selectedRows.length;i++){
  91. var one = selectedRows[i];
  92. if(i>0) {
  93. var _supplierId = selectedRows[i].supplierId;
  94. if(_supplierId!=supplierId){
  95. iframe.tip('请选择相同供应商');
  96. return false;
  97. }
  98. }
  99. var quantity= one.quantity;
  100. var quantityArrived = one.quantityArrived;
  101. var quantityReturned = one.quantityReturned;
  102. if(quantity > numAdd(quantityArrived, quantityReturned)){
  103. iframe.tip('仅支持全部到货完成的订单支付。请勾选掉未完全到货的商品。');
  104. return false;
  105. }
  106. }
  107. if(callback){
  108. callback(selectedRows);
  109. }
  110. },width,height);
  111. }
  112. function numAdd(num1, num2) {
  113. var baseNum, baseNum1, baseNum2;
  114. try {
  115. baseNum1 = num1.toString().split(".")[1].length;
  116. } catch (e) {
  117. baseNum1 = 0;
  118. }
  119. try {
  120. baseNum2 = num2.toString().split(".")[1].length;
  121. } catch (e) {
  122. baseNum2 = 0;
  123. }
  124. baseNum = Math.pow(10, Math.max(baseNum1, baseNum2));
  125. return (num1 * baseNum + num2 * baseNum) / baseNum;
  126. };
  127. function selectCostType(callback,width,height){//费用类型
  128. if(!width){
  129. width='600px';
  130. }
  131. if(!height){
  132. height='350px';
  133. }
  134. var title='费用类型列表';
  135. var _selectDialog= $.dialog({content: 'url:tBActivitiCostRequestController.do?selectCostType'
  136. , zIndex: getzIndex()
  137. , title:title , lock: true, width:width, height: height, opacity: 0.4, button: [
  138. {name: '确定', callback: function(){
  139. var iframe = _selectDialog.iframe.contentWindow;
  140. var selectedRows = iframe.getSelectedRow();
  141. if(selectedRows.length==0){
  142. iframe.tip('请选择费用类型');
  143. return false;
  144. }
  145. var slectedRow =selectedRows[0];
  146. $('#costType').val(slectedRow.id);
  147. $('#costTypeName').val(slectedRow.name);
  148. if(callback){
  149. callback(selectedRow);
  150. }
  151. }, focus: true},
  152. {name: '取消', callback: function (){}}
  153. ]}).zindex();
  154. }
  155. //申请单详情
  156. function requestDetail(requestId){
  157. var url='tBActivitiCostRequestController.do?goUpdate&load=detail&id='+requestId;
  158. // createwindow("查看申请单",url);
  159. createdetailwindow("查看申请单",url);
  160. }
  161. $(function(){
  162. if($.Datatype) {
  163. $.Datatype.fix2 = function (val, obj, frm) {
  164. $(obj).val(parseFloat(val).toFixed(2));
  165. return true;
  166. }
  167. }
  168. });