1 $parentScope.PasteValue = function (key, e) {
2 var flag = true;
3
4 var keyColStr = "STD_L";
5 var keyRowStr = "STD_";
6 var keyColNum = parseInt(key.substring(5, 7));//列数
7 var keyRowNum = parseInt(key.substring(12));//行数
8
9 var valAll = (window.clipboardData ? window.clipboardData.getData("text") : e.clipboardData.getData("text/plain"));//获取剪贴板所有内容
10 var valRowArray = valAll.split('\r\n');//按 行 分
11 if (valRowArray[(valRowArray.length - 1)] == "") {
12 valRowArray.splice((valRowArray.length - 1), 1);
13 }
14
15 angular.forEach(valRowArray, function (row) {
16 var newKeyRowStr = "";
17 if (keyRowNum <= 108) {
18 if (keyRowNum < 10) {
19 newKeyRowStr = keyRowStr + "00" + keyRowNum;
20 } else if (keyRowNum < 100) {
21 newKeyRowStr = keyRowStr + "0" + keyRowNum;
22 } else {
23 newKeyRowStr = keyRowStr + keyRowNum;
24 }
25
26 var newKeyColNum = keyColNum;
27 var valColArray = row.split('\t');
28 angular.forEach(valColArray, function (col) {
29 var newKeyColStr = "";
30 if (newKeyColNum <= 12) {
31 if (newKeyColNum < 10) {
32 newKeyColStr = keyColStr + "0" + newKeyColNum;
33 } else {
34 newKeyColStr = keyColStr + newKeyColNum;
35 }
36 var newKey = newKeyColStr + ":" + newKeyRowStr;
37
38 if (col == "" || col == "0") {
39 if (!vm.financialStatementModel.dataConfig[newKey]) {
40 $parentScope.fsData[newKey].value = 0;
41 }
42 if (flag) {
43 $parentScope.zzb_value = 0;
44 flag = false;
45 }
46 }
47 else {
48 var newCol = col.replace('$', '').replace('¥', '').replace(/,/g, '');
49 var newVal = parseFloat(newCol);
50 if (newVal) {
51 if (!vm.financialStatementModel.dataConfig[newKey]) {
52 $parentScope.fsData[newKey].value = newVal;
53 }
54 }
55 if (flag) {
56 if (newVal) {
57 $parentScope.zzb_value = newVal;
58 }
59 flag = false;
60 }
61 }
62 }
63 newKeyColNum++;
64 });
65 }
66 keyRowNum++;
67 });
68
69 //触发了刷新流程事件,让焦点项失去焦点。
70 var activeElement = document.activeElement;
71 if (activeElement) {
72 activeElement.blur();
73 }
74 }