tBInitialStock.js 11 KB

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