onhandreportInitial.js 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251
  1. //初始化下标
  2. function resetTrNum(tableId) {
  3. $tbody = $("#"+tableId+"");
  4. $tbody.find('>tr').each(function(i){
  5. $(':input, select,button,a', this).each(function(){
  6. var $this = $(this), name = $this.attr('name'),id=$this.attr('id'),onclick_str=$this.attr('onclick'), val = $this.val();
  7. if(name!=null){
  8. if (name.indexOf("#index#") >= 0){
  9. $this.attr("name",name.replace('#index#',i));
  10. }else{
  11. var s = name.indexOf("[");
  12. var e = name.indexOf("]");
  13. var new_name = name.substring(s+1,e);
  14. $this.attr("name",name.replace(new_name,i));
  15. }
  16. //给明细添加弹出框
  17. name = $this.attr('name');
  18. if(name.indexOf("onhandReportDetailsList") >= 0 && name.indexOf("pname") >= 0 ){
  19. $this.attr("class","searchbox-inputtext");
  20. $this.unbind("click");
  21. $this.bind("click",function(){popClick_embed("orderProductsList\["+i+"\]\.pnumber,orderProductsList\["+i+"\]\.pname,orderProductsList\["+i+"\]\.specType,orderProductsList\["+i+"\]\.measureUnit,orderProductsList\["+i+"\]\.purchasePrice,orderProductsList\["+i+"\]\.goodsId,orderProductsList\["+i+"\]\.money,orderProductsList\["+i+"\]\.quantity"
  22. ,"goodsCode,goodsName,specification,purchaseUnit,goodsDesc,id,strEmpty,strEmpty","ordersController.do?selectReferGoods&classname=cn.com.lzt.goodsinfo.entity.TBGoodsInfoEntity&codefield=goodsCode&categoryfield=belongCategoryCode&categoryNamefield=belongCategoryName&namefield=goodsName&purchaseUnit=purchaseUnit&specification=specification&goodsDesc=goodsDesc&strEmpty=strEmpty")
  23. });
  24. }
  25. if(name.indexOf("onhandReportDetailsList") >= 0 && name.indexOf("pnumber") >= 0 ){
  26. $this.unbind("change");
  27. $this.bind("change",function(){
  28. $.ajax({
  29. url:"onhandReportController.do?getProductInfo",
  30. data:{goodsCode:$this.val()},
  31. type:"Post",
  32. dataType:"json",
  33. success:function(data){
  34. if(data.status=="success"){
  35. $("#onhandReportDetailsList").find("tr").eq(i).find(":text").eq(1).val(data.datainfo.goodsName);
  36. $("#onhandReportDetailsList").find("tr").eq(i).find(":text").eq(2).val(data.datainfo.specification);
  37. $("#onhandReportDetailsList").find("tr").eq(i).find("select").val(data.datainfo.purchaseUnit);
  38. $("#onhandReportDetailsList").find("tr").eq(i).find(":text").eq(3).val('');
  39. $("#onhandReportDetailsList").find("tr").eq(i).find(":text").eq(4).val(data.pricinfo.retailPrice);
  40. $("#onhandReportDetailsList").find("tr").eq(i).find(":text").eq(5).val('');
  41. $("#onhandReportDetailsList").find("tr").eq(i).find(":text").eq(9).val(data.datainfo.id);// 货品主键ID
  42. }else{
  43. $.messager.alert('提示信息',"货品不存在!");
  44. }
  45. }});
  46. });
  47. }
  48. // 金额转换方法 科学计数法 转为 数字
  49. if(name.indexOf("onhandReportDetailsList") >= 0 && name.indexOf("money") >= 0 ){
  50. var numTemp = $this.val();
  51. if(numTemp != null && numTemp != ''){
  52. $this.val(new Number(numTemp));
  53. }
  54. }
  55. // 数量改鬓添加事件
  56. if(name.indexOf("onhandReportDetailsList") >= 0 && name.indexOf("quantity") >= 0 && name.indexOf("Arrived") < 0){
  57. var numTemp = $this.val();
  58. if(numTemp != null && numTemp != ''){
  59. $this.val(new Number(numTemp));
  60. }
  61. $this.unbind();
  62. // 区分浏览器 IE浏览器时
  63. if (window.ActiveXObject || "ActiveXObject" in window){
  64. $this.bind("input",function(){
  65. if(!isNaN($this.val()) && !isNaN($("#add_orderDetails_table").find("tr").eq(i).find(":text").eq(4).val())){
  66. var money = Math.round($this.val() * $("#add_orderDetails_table").find("tr").eq(i).find(":text").eq(4).val()*100)/100;
  67. $("#add_orderDetails_table").find("tr").eq(i).find(":text").eq(5).val(money);
  68. getSumMoney();
  69. }else{
  70. $("#add_orderDetails_table").find("tr").eq(i).find(":text").eq(5).val('');
  71. }
  72. });
  73. // 非IE浏览器时
  74. }else{
  75. $this.bind("input",function(){
  76. if(!isNaN($this.val()) && !isNaN($("#add_orderDetails_table").find("tr").eq(i).find(":text").eq(4).val())){
  77. //var money = $this.val() * $("#add_orderDetails_table").find("tr").eq(i).find(":text").eq(4).val();
  78. var money = Math.round($this.val() * $("#add_orderDetails_table").find("tr").eq(i).find(":text").eq(4).val()*100)/100;
  79. $("#add_orderDetails_table").find("tr").eq(i).find(":text").eq(5).val(money);
  80. getSumMoney();
  81. }else{
  82. $("#add_orderDetails_table").find("tr").eq(i).find(":text").eq(5).val('');
  83. }
  84. });
  85. }
  86. }
  87. // 价格改鬓添加事件
  88. if(name.indexOf("onhandReportDetailsList") >= 0 && name.indexOf("purchasePrice") >= 0){
  89. var numTemp = $this.val();
  90. if(numTemp != null && numTemp != ''){
  91. $this.val(new Number(numTemp));
  92. }
  93. $this.unbind();
  94. // 区分浏览器 IE浏览器时
  95. if (window.ActiveXObject || "ActiveXObject" in window){
  96. $this.bind("input",function(){
  97. if(!isNaN($this.val()) && !isNaN($("#add_orderDetails_table").find("tr").eq(i).find(":text").eq(3).val())){
  98. var money = Math.round($this.val() * $("#add_orderDetails_table").find("tr").eq(i).find(":text").eq(3).val()*100)/100;
  99. $("#add_orderDetails_table").find("tr").eq(i).find(":text").eq(5).val(money);
  100. getSumMoney();
  101. }else{
  102. $("#add_orderDetails_table").find("tr").eq(i).find(":text").eq(5).val('');
  103. }
  104. });
  105. // 非IE浏览器时
  106. }else{
  107. $this.bind("input",function(){
  108. if(!isNaN($this.val()) && !isNaN($("#add_orderDetails_table").find("tr").eq(i).find(":text").eq(3).val())){
  109. var money = Math.round($this.val() * $("#add_orderDetails_table").find("tr").eq(i).find(":text").eq(3).val()*100)/100;
  110. $("#add_orderDetails_table").find("tr").eq(i).find(":text").eq(5).val(money);
  111. getSumMoney();
  112. }else{
  113. $("#add_orderDetails_table").find("tr").eq(i).find(":text").eq(5).val('');
  114. }
  115. });
  116. }
  117. }
  118. // 价格改鬓添加事件
  119. if(name.indexOf("onhandReportDetailsList") >= 0 && name.indexOf("measureUnit") >= 0 ){
  120. $this.unbind();
  121. $this.bind("change",function(){
  122. var goodsCodeNo = $("#add_orderDetails_table").find("tr").eq(i).find(":text").eq(0).val();
  123. if(goodsCodeNo != null && goodsCodeNo != ''){
  124. $.ajax({
  125. url:"onhandReportController.do?getPurchasePriceInfo",
  126. data:{goodsCode:goodsCodeNo,purchaseUnit:$this.val()},
  127. type:"Post",
  128. dataType:"json",
  129. success:function(data){
  130. if(data.status=="success" && data.pricinfo != null){
  131. var purchasePrice = data.pricinfo.retailPrice;//采购零售价
  132. $("#add_orderDetails_table").find("tr").eq(i).find(":text").eq(4).val(purchasePrice);
  133. var quantity = $("#add_orderDetails_table").find("tr").eq(i).find(":text").eq(3).val();
  134. if(!isNaN(quantity) && !isNaN(purchasePrice)){
  135. var money = Math.round(quantity * purchasePrice*100)/100;
  136. $("#add_orderDetails_table").find("tr").eq(i).find(":text").eq(5).val(money);
  137. getSumMoney();
  138. }else{
  139. $("#add_orderDetails_table").find("tr").eq(i).find(":text").eq(4).val('');
  140. $("#add_orderDetails_table").find("tr").eq(i).find(":text").eq(5).val('');
  141. }
  142. }else if(data.msg != null){
  143. $.messager.alert('提示信息',data.msg);
  144. $("#add_orderDetails_table").find("tr").eq(i).find(":text").eq(4).val('');
  145. $("#add_orderDetails_table").find("tr").eq(i).find(":text").eq(5).val('');
  146. getSumMoney();
  147. }else{
  148. $.messager.alert('提示信息',"计量单位在货品价格信息中没有设定,请在货品属性中先设定计量单位,或选择其他计量单位。");
  149. $("#add_orderDetails_table").find("tr").eq(i).find(":text").eq(4).val('');
  150. $("#add_orderDetails_table").find("tr").eq(i).find(":text").eq(5).val('');
  151. getSumMoney();
  152. }
  153. }});
  154. }
  155. });
  156. }
  157. }
  158. if(id!=null){
  159. if (id.indexOf("#index#") >= 0){
  160. $this.attr("id",id.replace('#index#',i));
  161. }else{
  162. var s = id.indexOf("[");
  163. var e = id.indexOf("]");
  164. var new_id = id.substring(s+1,e);
  165. $this.attr("id",id.replace(new_id,i));
  166. }
  167. }
  168. if(onclick_str!=null){
  169. if (onclick_str.indexOf("#index#") >= 0){
  170. $this.attr("onclick",onclick_str.replace(/#index#/g,i));
  171. }else{
  172. }
  173. }
  174. });
  175. $(this).find('div[name=\'xh\']').html(i+1);
  176. });
  177. }
  178. // 总金额 计算方法
  179. function getSumMoney(){
  180. var trList = $("#add_orderDetails_table").children("tr");
  181. var money = 0;
  182. for (var i=0;i<trList.length;i++) {
  183. var moneyTemp = parseFloat($("#add_orderDetails_table").find("tr").eq(i).find(":text").eq(5).val()) || 0;
  184. money = money + moneyTemp;
  185. }
  186. // 总金额
  187. $("#totalMoney").val(Math.round(money*100)/100);
  188. }
  189. //
  190. //通用弹出式文件上传
  191. function commonUpload(callback,inputId){
  192. $.dialog({
  193. content: "url:systemController.do?commonUpload",
  194. lock : true,
  195. title:"文件上传",
  196. zIndex:2100,
  197. width:700,
  198. height: 200,
  199. parent:windowapi,
  200. cache:false,
  201. ok: function(){
  202. var iframe = this.iframe.contentWindow;
  203. iframe.uploadCallback(callback,inputId);
  204. return true;
  205. },
  206. cancelVal: '关闭',
  207. cancel: function(){
  208. }
  209. });
  210. }
  211. //通用弹出式文件上传-回调
  212. function commonUploadDefaultCallBack(url,name,inputId){
  213. $("#"+inputId+"_href").attr('href',url).html('下载');
  214. $("#"+inputId).val(url);
  215. }
  216. function browseImages(inputId, Img) {// 图片管理器,可多个上传共用
  217. var finder = new CKFinder();
  218. finder.selectActionFunction = function(fileUrl, data) {//设置文件被选中时的函数
  219. $("#" + Img).attr("src", fileUrl);
  220. $("#" + inputId).attr("value", fileUrl);
  221. };
  222. finder.resourceType = 'Images';// 指定ckfinder只为图片进行管理
  223. finder.selectActionData = inputId; //接收地址的input ID
  224. finder.removePlugins = 'help';// 移除帮助(只有英文)
  225. finder.defaultLanguage = 'zh-cn';
  226. finder.popup();
  227. }
  228. function browseFiles(inputId, file) {// 文件管理器,可多个上传共用
  229. var finder = new CKFinder();
  230. finder.selectActionFunction = function(fileUrl, data) {//设置文件被选中时的函数
  231. $("#" + file).attr("href", fileUrl);
  232. $("#" + inputId).attr("value", fileUrl);
  233. decode(fileUrl, file);
  234. };
  235. finder.resourceType = 'Files';// 指定ckfinder只为文件进行管理
  236. finder.selectActionData = inputId; //接收地址的input ID
  237. finder.removePlugins = 'help';// 移除帮助(只有英文)
  238. finder.defaultLanguage = 'zh-cn';
  239. finder.popup();
  240. }
  241. function decode(value, id) {//value传入值,id接受值
  242. var last = value.lastIndexOf("/");
  243. var filename = value.substring(last + 1, value.length);
  244. $("#" + id).text(decodeURIComponent(filename));
  245. }