chongqing_2018.js 9.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164
  1. /**
  2. * Created by zhang on 2018/8/14.
  3. */
  4. if(typeof projectGljObject !== 'undefined'){
  5. projectGljObject.displayTypeMap=[
  6. {ID:'LABOUR',text:'人工'},
  7. {ID:'GENERAL_MATERIAL',text:'材料'},
  8. {ID:'GENERAL_MACHINE',text:'施工机具'},//重庆2018定额中去掉了主材,机械的显示改为了施工机具
  9. {ID:'MAIN_MATERIAL',text:'主材'}
  10. ];
  11. }
  12. if(typeof gljUtil !== 'undefined'){
  13. gljUtil.hasCompMachine = [301,304];//有组成物的机械
  14. gljUtil.machineComposition = [303,305,306,307,308,309,310,311];//可以做为机械组成物的类型
  15. }
  16. //允许使用的工料机类型:人工、普通材料、混凝土、砂浆、配合比、商品混凝土、商品砂浆、其他材料费、机械台班、机上人工、仪器仪表、燃料动力费、折旧费、
  17. // 检修费、维护费、安拆费及场外运费、校验费、其他费用、主材、企业管理费、利润、一般风险费
  18. if(typeof allowGljType !== 'undefined'){
  19. allowGljType = [1, 201, 202, 203, 204, 205, 206, 207, 301, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 4, 6, 7, 8];
  20. }
  21. if(typeof allowComponent !== 'undefined'){
  22. //允许含有组成物的工料机类型:混凝土、砂浆、配合比、机械台班、仪器仪表、主材
  23. allowComponent = [202, 203, 204, 301, 304, 4];
  24. }
  25. if(typeof componentType !== 'undefined'){
  26. //可以作为组成物的工料机类型:普通材料、机上人工、燃料动力费、折旧费、检修费、维护费、安拆费及场外运费、校验费、其他费用、主材
  27. componentType = [201, 303, 305, 306, 307, 308, 309, 310, 311, 4];
  28. }
  29. if(typeof machineAllowComponent !== 'undefined'){
  30. //允许含有组成物的机械工料机类型:机械台班、仪器仪表
  31. machineAllowComponent = [301, 304];
  32. }
  33. if(typeof machineComponent !== 'undefined'){
  34. //可以作为机械工料机组成物的工料机类型:机械组成物、机上人工、燃料动力费、折旧费、检修费、维护费、安拆费及场外运费、校验费、其他费用
  35. machineComponent = [303, 305, 306, 307, 308, 309, 310, 311];
  36. }
  37. if(typeof materialAllowComponent !== 'undefined'){
  38. //允许含有组成物的材料工料机类型:混凝土、砂浆、配合比
  39. materialAllowComponent = [202, 203, 204];
  40. }
  41. if(typeof materialComponent !== 'undefined'){
  42. //可以作为材料工料机组成物的工料机类型:普通材料
  43. materialComponent = [201];
  44. }
  45. // CSL, 2018-08-21 计算程序定额基数、取费类别的覆盖。-----------------------------------------------------------------------
  46. // 重庆养护作为原始代码模块,以下变量及方法定义已写入原始位置,此处无需覆盖。其它地区的养护需在此位置覆盖,参见neimeng_2019.js。
  47. // let isCQ2018 = true;
  48. // function overwriteRationCalcBases (taxType){};
  49. // (function overwriteFeeTypes() {})();
  50. //清单计算基数相关
  51. if(typeof baseFigureMap !== 'undefined'){
  52. baseFigureMap = {
  53. //与清单直接关联=======
  54. '分部分项工程费': {base: 'FBFXGCF', fixedFlag: fixedFlag.SUB_ENGINERRING, class: 'FBFX'},
  55. '分部分项定额人工费': {base: 'FBFXDEJJRGF', fixedFlag: fixedFlag.SUB_ENGINERRING, class: 'FBFX'},
  56. '分部分项定额材料费': {base: 'FBFXDEJJCLF', fixedFlag: fixedFlag.SUB_ENGINERRING, class: 'FBFX'},
  57. '分部分项定额施工机具使用费': {base: 'FBFXDEJJJXF', fixedFlag: fixedFlag.SUB_ENGINERRING, class: 'FBFX'},
  58. '分部分项主材费': {base: 'FBFXZCF', fixedFlag: fixedFlag.SUB_ENGINERRING, class: 'FBFX'},
  59. '分部分项人工工日': {base: 'FBFXRGGR', fixedFlag: fixedFlag.SUB_ENGINERRING, class: 'FBFX'},
  60. '措施项目费': {base: 'CSXMF', fixedFlag: fixedFlag.MEASURE, class: 'CSXM'},
  61. '组织措施项目费': {base: 'ZZCSXMF', fixedFlag: fixedFlag.CONSTRUCTION_ORGANIZATION, class: 'CSXM'},
  62. '组织措施项目定额人工费': {base: 'ZZCSXMDEJJRGF', fixedFlag: fixedFlag.CONSTRUCTION_ORGANIZATION, class: 'CSXM'},
  63. '组织措施项目定额材料费': {base: 'ZZCSXMDEJJCLF', fixedFlag: fixedFlag.CONSTRUCTION_ORGANIZATION, class: 'CSXM'},
  64. '组织措施项目定额施工机具使用费': {base: 'ZZCSXMDEJJJXF', fixedFlag: fixedFlag.CONSTRUCTION_ORGANIZATION, class: 'CSXM'},
  65. '安全文明施工专项费': {base: 'AQWMSGZXF', fixedFlag: fixedFlag.SAFETY_CONSTRUCTION, class: 'CSXM'},
  66. '技术措施项目费': {base: 'JSCSXMF', fixedFlag: fixedFlag.CONSTRUCTION_TECH, class: 'CSXM'},
  67. '技术措施项目定额人工费': {base: 'JSCSXMDEJJRGF', fixedFlag: fixedFlag.CONSTRUCTION_TECH, class: 'CSXM'},
  68. '技术措施项目定额材料费': {base: 'JSCSXMDEJJCLF', fixedFlag: fixedFlag.CONSTRUCTION_TECH, class: 'CSXM'},
  69. '技术措施项目定额施工机具使用费': {base: 'JSCSXMDEJJJXF', fixedFlag: fixedFlag.CONSTRUCTION_TECH, class: 'CSXM'},
  70. '技术措施项目主材费': {base: 'JSCSXMZCF', fixedFlag: fixedFlag.CONSTRUCTION_TECH, class: 'CSXM'},
  71. '技术措施项目人工工日': {base: 'JSCSXMRGGR', fixedFlag: fixedFlag.CONSTRUCTION_TECH, class: 'CSXM'},
  72. '其他项目费': {base: 'QTXMF', fixedFlag: fixedFlag.OTHER, class: 'QTXM'},
  73. '规费': {base: 'GF', fixedFlag: fixedFlag.CHARGE, class: 'GF'},
  74. '税金': {base: 'SJ', fixedFlag: fixedFlag.TAX, class: 'SJ'},
  75. '增值税': {base: 'ZZS', class: 'SJ', fixedFlag: fixedFlag.ADDED_VALUE_TAX},
  76. //不于清单直接关联==========
  77. '建筑面积': {base: 'JZMJ', class: 'FBFX'},
  78. '人材机价差': {base: 'RCJJC', class: 'RCJ'},
  79. '人工价差': {base: 'RGJC', class: 'RCJ'},
  80. '材料价差': {base: 'CLJC', class: 'RCJ'},
  81. '施工机具使用费价差': {base: 'JXJC', class: 'RCJ'},
  82. '分部分项人材机价差': {base: 'FBFXRCJJC', class: 'RCJ'},
  83. '分部分项人工价差': {base: 'FBFXRGJC', class: 'RCJ'},
  84. '分部分项材料价差': {base: 'FBFXCLJC', class: 'RCJ'},
  85. '分部分项施工机具使用费价差': {base: 'FBFXJXJC', class: 'RCJ'},
  86. '技术措施项目人材机价差': {base: 'JSCSXMRCJJC', class: 'RCJ'},
  87. '技术措施项目人工价差': {base: 'JSCSXMRGJC', class: 'RCJ'},
  88. '技术措施项目材料价差': {base: 'JSCSXMCLJC', class: 'RCJ'},
  89. '技术措施项目施工机具使用费价差': {base: 'JSCSXMJXJC', class: 'RCJ'},
  90. '甲供定额人工费': {base: 'JGDEJJRGF', class: 'RCJ'},
  91. '甲供定额材料费': {base: 'JGDEJJCLF', class: 'RCJ'},
  92. '甲供定额施工机具使用费': {base: 'JGDEJJJXF', class: 'RCJ'},
  93. '甲供人工费': {base: 'JGRGF', class: 'RCJ'},
  94. '甲供材料费': {base: 'JGCLF', class: 'RCJ'},
  95. '甲供施工机具使用费费': {base: 'JGJXF', class: 'RCJ'},
  96. '甲供主材费': {base: 'JGZCF', class: 'RCJ'},
  97. '甲定定额人工费': {base: 'JDDEJJRGF', class: 'RCJ'},
  98. '甲定定额材料费': {base: 'JDDEJJCLF', class: 'RCJ'},
  99. '甲定定额施工机具使用费': {base: 'JDDEJJJXF', class: 'RCJ'},
  100. '甲定人工费': {base: 'JDRGF', class: 'RCJ'},
  101. '甲定材料费': {base: 'JDCLF', class: 'RCJ'},
  102. '甲定施工机具使用费': {base: 'JDJXF', class: 'RCJ'},
  103. '甲定主材费': {base: 'JDZCF', class: 'RCJ'},
  104. '暂估材料费(从子目汇总)': {base: 'ZGCLFFZM', class: 'RCJ'},
  105. '税前工程造价': {base: 'SQGCZJ', class: 'SQGCZJ',
  106. cycleCalcRef: [fixedFlag.SUB_ENGINERRING, fixedFlag.OTHER, fixedFlag.CHARGE], //循环计算相关固定行,由于计算排除了本身,不用判断措施项目
  107. multiRef: [fixedFlag.SUB_ENGINERRING, fixedFlag.MEASURE, fixedFlag.OTHER, fixedFlag.CHARGE]},//相关固定行
  108. };
  109. }
  110. if(typeof baseFigureTemplate !== 'undefined'){
  111. baseFigureTemplate['ZZS'] = function (tender) {//增值税
  112. if(cbTools.isUnDef(calcBase.fixedBills[fixedFlag.ADDED_VALUE_TAX])){
  113. return 0;
  114. }
  115. const totalFeeType = tender ? 'tenderTotalFee' : 'totalFee';
  116. let bill = calcBase.fixedBills[fixedFlag.ADDED_VALUE_TAX]['bill'];
  117. if(cbTools.isUnDef(bill)) return 0;
  118. if(cbTools.isUnDef(bill.feesIndex) || Object.keys(bill.feesIndex).length === 0) return 0;
  119. return cbTools.isDef(bill.feesIndex.common) && cbTools.isDef(bill.feesIndex.common[totalFeeType]) ? bill.feesIndex.common[totalFeeType] : 0;
  120. };
  121. }
  122. if(typeof figureClassTemplate !== 'undefined'){
  123. figureClassTemplate['ADDED_VALUE_TAX'] = {flag: fixedFlag.ADDED_VALUE_TAX, filter: ['SJ', 'ZZS', 'SQGCZJ']}
  124. };
  125. //去除分类分包费
  126. if(typeof $ !== 'undefined' && $('#cbClassList')){
  127. $('#cbClassList').find('li:eq(5)').remove();
  128. }
  129. //测试地区============
  130. /*if(typeof regions !== 'undefined') {
  131. regions = [ '兰州', '定西', '天水', '平凉', '庆阳', '武威', '金昌', '张掖', '酒泉', '甘矿', '嘉峪关', '临夏', '合作', '武都', '白银'];
  132. }*/
  133. //==============
  134. //这个文档浏览器库和服务器端共用,所以这个文件中用到的变量都要记得做undefined判断,不然后端读取时会有问题
  135. //=================================================== 前后端分割线 ======================================================================
  136. if(typeof module !== 'undefined'){
  137. module.exports = {
  138. getCusCoeContent: getCusCoeContent,
  139. getCustomerCoeData: getCustomerCoeData
  140. };
  141. }
  142. function getCusCoeContent() {
  143. return '人工×1,材料×1,施工机具×1,主材×1,设备×1'//2019-07-08 bug 添加自定义系数添加设备
  144. }
  145. function getCustomerCoeData() {
  146. return [
  147. {amount:1, operator:'*', gljCode:null, coeType:'定额'},
  148. { amount:1, operator:'*', gljCode:null, coeType:'人工'},
  149. { amount:1, operator:'*', gljCode:null, coeType:'材料'},
  150. { amount:1, operator:'*', gljCode:null, coeType:'施工机具'},
  151. { amount:1, operator:'*', gljCode:null, coeType:'主材'},
  152. { amount:1, operator:'*', gljCode:null, coeType:'设备'}
  153. ]
  154. }