Xiaopeng Zhang 5 mesi fa
parent
commit
2b81037319
2 ha cambiato i file con 29 aggiunte e 16 eliminazioni
  1. 6 2
      front/src/Service.js
  2. 23 14
      subdir/db.py

+ 6 - 2
front/src/Service.js

@@ -1725,6 +1725,7 @@ async generateQingdanTuijian(name, bh, bt, bm) {
         let rgf_sum = 0;
         let jxf_sum = 0;
         let clf_sum = 0;
+        let zcf_sum = 0;
         for(let i = 1; i < data.length; i++) {
             sum += Number(data[i][11]);//11-> hejia
             if (Number(data[i][8]) == 1) {
@@ -1732,6 +1733,9 @@ async generateQingdanTuijian(name, bh, bt, bm) {
             }
             if (Number(data[i][8]) == 2) {
                 clf_sum += Number(data[i][11]);
+                if (data[i][14] == 'true') {
+                    zcf_sum += Number(data[i][11]);
+                }
             }
             if (Number(data[i][8]) == 3) {
                 jxf_sum += Number(data[i][11]);
@@ -1745,10 +1749,10 @@ async generateQingdanTuijian(name, bh, bt, bm) {
                 let desl = Number(qd["_children"][i]['数量']);
                 let oldname = qd["_children"][i]['清单编码'];
                 
-                qd["_children"][i]['辅材费'] = clf_sum;
+                qd["_children"][i]['辅材费'] = clf_sum - zcf_sum;
                 qd["_children"][i]['材料费'] = clf_sum;
                 qd["_children"][i]['人工费'] = rgf_sum;
-                qd["_children"][i]['主材费'] = 0;
+                qd["_children"][i]['主材费'] = zcf_sum;
                 qd["_children"][i]['设备费'] = 0;
                 qd["_children"][i]['机械费'] = jxf_sum;
                 if (oldname.startsWith("D")) {//单项清单

+ 23 - 14
subdir/db.py

@@ -66,8 +66,8 @@ def getDingercj_default(root, bh, bt, qdbm, debm):
         kv[child.attrib["RcjId"]].attrib["Gycs"], 
         kv[child.attrib["RcjId"]].attrib["Rcjlb"], 
         kv[child.attrib["RcjId"]].attrib["Jgbz"], 
-        child.attrib["Rcjhl"], child.attrib["Rcjhj"], "", 
-             "", "", ""
+        child.attrib["Rcjhl"], child.attrib["Rcjhj"], kv[child.attrib["RcjId"]].attrib["Zgjbz"], 
+             kv[child.attrib["RcjId"]].attrib["Zyclbz"], kv[child.attrib["RcjId"]].attrib["Zcbz"], kv[child.attrib["RcjId"]].attrib["Sbbz"]
         ])
 
     return result
@@ -143,8 +143,8 @@ def getDingercj_(root, bh, bt, qdbm, debm):
         kv[child.attrib["RcjId"]].attrib["Gycs"], 
         kv[child.attrib["RcjId"]].attrib["Rcjlb"], 
         kv[child.attrib["RcjId"]].attrib["Jgbz"], 
-        child.attrib["Rcjhl"], child.attrib["Rcjhj"], "", 
-             "", "", ""
+        child.attrib["Rcjhl"], child.attrib["Rcjhj"], kv[child.attrib["RcjId"]].attrib["Zgjbz"], 
+             kv[child.attrib["RcjId"]].attrib["Zyclbz"], kv[child.attrib["RcjId"]].attrib["Zcbz"], kv[child.attrib["RcjId"]].attrib["Sbbz"]
         ])
 
     return result
@@ -203,8 +203,8 @@ def getQingdanrcj_default(root, bh, bt, bm):
         kv[child.attrib["RcjId"]].attrib["Gycs"], 
         kv[child.attrib["RcjId"]].attrib["Rcjlb"], 
         kv[child.attrib["RcjId"]].attrib["Jgbz"], 
-        child.attrib["Rcjhl"], child.attrib["Rcjhj"], child.attrib["Zgjbz"], 
-        child.attrib["Zyclbz"], child.attrib["Zcbz"], child.attrib["Sbbz"]
+        child.attrib["Rcjhl"], child.attrib["Rcjhj"], kv[child.attrib["RcjId"]].attrib["Zgjbz"], 
+        kv[child.attrib["RcjId"]].attrib["Zyclbz"], kv[child.attrib["RcjId"]].attrib["Zcbz"], kv[child.attrib["RcjId"]].attrib["Sbbz"]
         ])
 
     return result
@@ -277,8 +277,8 @@ def getQingdanrcj_(root, bh, bt, bm):
         kv[child.attrib["RcjId"]].attrib["Gycs"], 
         kv[child.attrib["RcjId"]].attrib["Rcjlb"], 
         kv[child.attrib["RcjId"]].attrib["Jgbz"], 
-        child.attrib["Rcjhl"], child.attrib["Rcjhj"], child.attrib["Zgjbz"], 
-        child.attrib["Zyclbz"], child.attrib["Zcbz"], child.attrib["Sbbz"]
+        child.attrib["Rcjhl"], child.attrib["Rcjhj"], kv[child.attrib["RcjId"]].attrib["Zgjbz"], 
+        kv[child.attrib["RcjId"]].attrib["Zyclbz"], kv[child.attrib["RcjId"]].attrib["Zcbz"], kv[child.attrib["RcjId"]].attrib["Sbbz"]
         ])
 
     return result
@@ -346,8 +346,9 @@ def getDjcsDingercj_(root, bh, bt, qdbm, debm):
         kv[child.attrib["RcjId"]].attrib["Gycs"], 
         kv[child.attrib["RcjId"]].attrib["Rcjlb"], 
         kv[child.attrib["RcjId"]].attrib["Jgbz"], 
-        child.attrib["Rcjhl"], child.attrib["Rcjhj"], "", 
-             "", "", ""
+        child.attrib["Rcjhl"], child.attrib["Rcjhj"], kv[child.attrib["RcjId"]].attrib["Zgjbz"], 
+             kv[child.attrib["RcjId"]].attrib["Zyclbz"], kv[child.attrib["RcjId"]].attrib["Zcbz"], 
+             kv[child.attrib["RcjId"]].attrib["Sbbz"]
         ])
 
     return result
@@ -406,8 +407,8 @@ def getDjcsQingdanrcj_(root, bh, bt, bm):
         kv[child.attrib["RcjId"]].attrib["Gycs"], 
         kv[child.attrib["RcjId"]].attrib["Rcjlb"], 
         kv[child.attrib["RcjId"]].attrib["Jgbz"], 
-        child.attrib["Rcjhl"], child.attrib["Rcjhj"], child.attrib["Zgjbz"], 
-        child.attrib["Zyclbz"], child.attrib["Zcbz"], child.attrib["Sbbz"]
+        child.attrib["Rcjhl"], child.attrib["Rcjhj"], kv[child.attrib["RcjId"]].attrib["Zgjbz"], 
+        kv[child.attrib["RcjId"]].attrib["Zyclbz"], kv[child.attrib["RcjId"]].attrib["Zcbz"], kv[child.attrib["RcjId"]].attrib["Sbbz"]
         ])
 
     return result
@@ -1627,6 +1628,7 @@ async def tiaojia(client, biao_id, bh, bm, mingcheng, danwei, jiage, glf, lr, bz
             dercj = entry["dercj"]
             dergf = 0
             declf = 0
+            dezcf = 0
             dejxf = 0
             for i in range(1, len(dercj)):
                 rcj = dercj[i]
@@ -1640,11 +1642,14 @@ async def tiaojia(client, biao_id, bh, bm, mingcheng, danwei, jiage, glf, lr, bz
                     dergf = dergf + float(rcj[11])
                 elif int(rcj[8]) == 2:
                     declf = declf + float(rcj[11])
+                    if rcj[14] == 'true' :
+                        dezcf = dezcf + float(rcj[11])
                 elif int(rcj[8]) == 3:
                     dejxf = dejxf + float(rcj[11])
                 if hitde:
                     entry['人工费'] = str(dergf)
-                    entry['辅材费'] = str(declf)
+                    entry['辅材费'] = str(declf - dezcf)
+                    entry['主材费'] = str(dezcf)
                     entry['材料费'] = str(declf)
                     entry['机械费'] = str(dejxf)
                     if bm.startswith("D"):
@@ -1663,6 +1668,7 @@ async def tiaojia(client, biao_id, bh, bm, mingcheng, danwei, jiage, glf, lr, bz
             qdrcj = post['rcj']
             qdrgf = 0
             qdclf = 0
+            qdzcf = 0
             qdjxf = 0
             for i in range(1, len(qdrcj)):
                 entry = qdrcj[i]
@@ -1674,10 +1680,13 @@ async def tiaojia(client, biao_id, bh, bm, mingcheng, danwei, jiage, glf, lr, bz
                     qdrgf = qdrgf + float(entry[11])
                 elif int(entry[8]) == 2:
                     qdclf = qdclf + float(entry[11])
+                    if entry[14] == 'true':
+                        qdzcf = qdzcf + float(entry[11])
                 elif int(entry[8]) == 3:
                     qdjxf = qdjxf + float(entry[11])
             post['人工费'] = str(qdrgf)
-            post['辅材费'] = str(qdclf)
+            post['辅材费'] = str(qdclf - qdzcf)
+            post['主材费'] = str(qdzcf)
             post['材料费'] = str(qdclf)
             post['机械费'] = str(qdjxf)
             post['管理费'] = 0