main_consts.js 9.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333
  1. /**
  2. * Created by jimiz on 2017/4/19.
  3. */
  4. const ModuleNames = {
  5. project:'project',
  6. bills: 'bills',
  7. ration: 'ration',
  8. GLJ: 'GLJ',
  9. feeRate: 'feeRate',
  10. projectGLJ: 'projectGLJ',
  11. ration_glj:'ration_glj',
  12. ration_coe:'ration_coe',
  13. ration_ass:'ration_ass',
  14. ration_installation:'ration_installation',
  15. ration_template:'ration_template',
  16. quantity_detail:'quantity_detail',
  17. labour_coe: 'labour_coe',
  18. calc_program: 'calc_program',
  19. installation_fee:'installation_fee',
  20. projectInfo: 'project_info',
  21. divide_setting:'divide_setting',
  22. evaluate_list:'evaluate_list',
  23. bid_evaluation_list:'bid_evaluation_list'
  24. };
  25. let gljType = gljUtil.gljType;
  26. // 计算基数 [定额基价材料费] 要用到的材料类型。
  27. const baseMaterialTypes = [
  28. gljType.GENERAL_MATERIAL,
  29. gljType.CONCRETE,
  30. gljType.MORTAR,
  31. gljType.MIX_RATIO,
  32. gljType.COMMERCIAL_CONCRETE,
  33. gljType.COMMERCIAL_MORTAR,
  34. gljType.PURCHASE_COMPONENT,
  35. gljType.GREEN_SEEDLING
  36. ];
  37. // 计算基数 [定额基价机械费] 要用到的机械类型。
  38. const baseMachineTypes = [
  39. gljType.GENERAL_MACHINE,
  40. gljType.MACHINE_COMPOSITION,
  41. gljType.MACHINE_LABOUR
  42. ];
  43. const baseMachineMasterTypes = [
  44. gljType.GENERAL_MACHINE
  45. ];
  46. // 全部材料类型。用于暂估等 (多了主材和设备)
  47. const allMaterialTypes = [
  48. gljType.GENERAL_MATERIAL,
  49. gljType.CONCRETE,
  50. gljType.MORTAR,
  51. gljType.MIX_RATIO,
  52. gljType.COMMERCIAL_CONCRETE,
  53. gljType.COMMERCIAL_MORTAR,
  54. gljType.PURCHASE_COMPONENT,
  55. gljType.GREEN_SEEDLING,
  56. gljType.MAIN_MATERIAL,
  57. gljType.EQUIPMENT
  58. ];
  59. // 会有组成物的材料、机械台班
  60. const compositionTypes =gljUtil.notEditType;//统一定义,方便覆盖
  61. const CP_Col_Width = { // 多处计算程序界面的列宽统一设置
  62. rowHeader: 30,
  63. colHeader: 30, // 这个是标题栏高度不是宽度,也写在一起
  64. code: 70,
  65. serialNo: 50,
  66. name: 200,
  67. dispExprUser: 180,
  68. feeRate: 60,
  69. displayFieldName: 120,
  70. statement: 380,
  71. memo: 120,
  72. unitFee: 90,
  73. totalFee: 90
  74. };
  75. const treeNodeCalcType = {
  76. ctRationCalcProgram: 1,
  77. ctBillCalcProgram: 2, // 汇总清单下所有定额的工料机
  78. ctGatherRationsFees: 3, // 汇总定额的各个费
  79. ctGatherBillsFees: 4, // 汇总清单的各个费
  80. ctCalcBaseValue: 5,
  81. ctNull: 6
  82. // ctCommonUnitFee: 6 // 树结点的手工输入综合单价的方式已废弃,现综合单价只读,引入市场单价。
  83. };
  84. const treeNodeCalcFlag = { // 主要用于清单。建筑的清单类型计算逻辑不能用公路。这里引入公路的计算Flag
  85. customTotalPrice: 1, // 用户直接输入金额
  86. customUnitPrice: 2, // 用户直接输入单价,金额是根据用户输入的单价算来的
  87. customDesignPrice: 3 // 用户直接输入设计单价,金额是根据用户输入的设计单价算来的
  88. // 末定义情况、0 // 金额是由定额计算的来的
  89. };
  90. const tenderTypes = {
  91. ttCalc: 1, // 正向调价
  92. ttReverseRation: 2, // 反向调价-调子目
  93. ttReverseGLJ: 3 // 反向调价-调工料机
  94. };
  95. const calcAllType = {
  96. catAll: 'all',
  97. catBills: 'bills',
  98. catRations: 'ration'
  99. };
  100. const priceTypes = {
  101. ptBasePrice: 1,
  102. ptAdjustPrice: 2,
  103. ptMarketPrice: 3,
  104. ptDiffPrice: 4
  105. };
  106. const subSheetIndex = {
  107. ssiRationGLJ: 0,
  108. ssiRationCoe: 1,
  109. // ssiRationAssistant: 2,
  110. ssiQuantityDetail: 3,
  111. ssiCalcProgram: 2,
  112. ssiMemo: 5,
  113. ssiFeature: 6
  114. };
  115. const volumePriceMaps = {
  116. "量人": gljType.LABOUR,
  117. "量材": gljType.GENERAL_MATERIAL,
  118. "量机": gljType.GENERAL_MACHINE,
  119. "量主": gljType.MAIN_MATERIAL,
  120. "量设": gljType.EQUIPMENT,
  121. "人工": gljType.LABOUR,
  122. "材料": gljType.GENERAL_MATERIAL,
  123. "机械": gljType.GENERAL_MACHINE,
  124. "主材": gljType.MAIN_MATERIAL,
  125. "设备": gljType.EQUIPMENT,
  126. 1: "量人",
  127. 201: "量材",
  128. 301: "量机",
  129. 4: "量主",
  130. 5: "量设"
  131. };
  132. const rationType = {
  133. ration: commonConstants.RationType.RATION,
  134. volumePrice: commonConstants.RationType.VOLUME_PRICE,
  135. gljRation: commonConstants.RationType.GLJ_RATION,
  136. install: commonConstants.RationType.INSTALL
  137. };
  138. const rationPrefix = { //定额前缀,补/借
  139. none: '',
  140. complementary: '补',
  141. borrow: '借',
  142. replace: '换'
  143. };
  144. const rationFrom = {
  145. std: 'std',
  146. cpt: 'cpt'
  147. };
  148. let leafBillGetFeeType = {
  149. rationContent: 0,
  150. rationPriceConverse: 1,
  151. rationPrice: 2,
  152. billsPrice: 3
  153. };
  154. const zanguCalcType = {
  155. common: 0,
  156. gatherMaterial: 1
  157. };
  158. //供货方式
  159. const supplyType = {
  160. //自行采购
  161. ZXCG: 0,
  162. //部分甲供
  163. BFJG: 1,
  164. //完全甲供
  165. WQJG: 2,
  166. //甲定乙供
  167. JDYG: 3
  168. };
  169. const supplyText = {
  170. //自行采购
  171. ZXCG: '自行采购',
  172. //部分甲供
  173. BFJG: '部分甲供',
  174. //完全甲供
  175. WQJG: '完全甲供',
  176. //甲定乙供
  177. JDYG: '甲定乙供'
  178. };
  179. //三材类别
  180. const materialType = {
  181. 1: '钢材',
  182. 2: '钢筋',
  183. 3: '木材',
  184. 4: '水泥',
  185. 5: '标准砖'
  186. };
  187. const materialTypeMap = {
  188. GC: 1,
  189. GJ: 2,
  190. MC: 3,
  191. SN: 4,
  192. SZ: 5,
  193. 1:'GC',
  194. 2:'GJ',
  195. 3:'MC',
  196. 4:'SN',
  197. 5:'SZ'
  198. }
  199. //清单固定行
  200. const fixedFlag = commonConstants.fixedFlag;
  201. const gljKeyArray =['code','name','specs','unit','type'];
  202. const rationKeyArray =['code','name','specs','unit','subType'];
  203. const gljLibKeyArray =['code', 'name', 'specs', 'unit', 'gljType'];
  204. const billType = commonConstants.BillType;
  205. const billText = {
  206. 1:'费用',
  207. 2:'分部',
  208. 3:'分项',
  209. 4:'清单',
  210. 5:'补项'
  211. };
  212. // 2019.10.30,CSL
  213. // 说明:此处是重庆养护标准,作为代码模板,其它地区需要在其自已的文件中覆盖,如neimeng_2019.js。
  214. // 这里的命名十分头疼,因养护和建筑反过来,且各地区编办不统一,导致各地区命名出现混乱:如“人工费”,重庆建筑指市场价人工费,江西建筑指定额价人工费。
  215. // 规费、利润等这种,实际上是市场价算来的,但并不需要加market前缀。因为它是间接基数,且任何时候只有一个,不存在需要区分的情况。
  216. // 建安费命名没统一,没办法,重庆养护已发布,不允许再改了,维持现状。强迫症者对不住了。
  217. let cpFeeTypes = [
  218. {type: 'marketLabour', name: '人工费'},
  219. {type: 'marketMaterial', name: '材料费'},
  220. {type: 'marketMachine', name: '施工机械使用费'},
  221. {type: 'marketMachineLabour', name: '施工机械人工费'},
  222. {type: 'marketEquipment', name: '设备购置费'},
  223. {type: 'marketDirect', name: '直接费'},
  224. {type: 'labour', name: '定额人工费'},
  225. {type: 'material', name: '定额材料费'},
  226. {type: 'machine', name: '定额施工机械使用费'},
  227. {type: 'equipment', name: '定额设备费'},
  228. {type: 'direct', name: '定额直接费'},
  229. {type: 'measure', name: '措施费'},
  230. {type: 'measure1', name: '措施费I'},
  231. {type: 'measure2', name: '措施费II'},
  232. {type: 'manage', name: '企业管理费'},
  233. {type: 'force', name: '规费'},
  234. {type: 'profit', name: '利润'},
  235. {type: 'tax', name: '税金'},
  236. {type: 'common', name: '建安费'},
  237. {type: 'rationCommon', name: '定额建安费'}
  238. // {type: 'fee1', name: '费用1'},
  239. // {type: 'fee2', name: '费用2'}
  240. ];
  241. //8-27 zhang 这个已经不能用来判断工程类型了
  242. /*const engineeringType = {
  243. // 建筑工程
  244. ARCHITECTURE: 1,
  245. // 装饰工程
  246. DECORATE: 2,
  247. // 仿古建筑工程
  248. ANTIQUE_ARCHITECTURE: 3,
  249. // 安装工程
  250. BUILD_IN: 4,
  251. // 市政土建工程
  252. MUNICIPAL_CONSTRUCTION: 5,
  253. // 市政安装工程
  254. MUNICIPAL_BUILD_IN: 6,
  255. // 人工土石方工程
  256. ARTIFICIAL_EARTHWORK: 7,
  257. // 机械土石方工程
  258. MECHANICAL_EARTHWORK: 8,
  259. // 炉窖砌筑工程
  260. KILN_MASONRY: 9,
  261. // 园林工程
  262. GARDEN: 10,
  263. // 绿化工程
  264. PLANTING: 11,
  265. // 单拆除工程
  266. DISMANTLE: 12,
  267. // 建筑修缮工程
  268. BUILDING_REPAIR: 13,
  269. // 安装修缮工程
  270. BUILD_IN_REPAIR: 14
  271. };*/
  272. const blockType ={
  273. RATION:1,//定额
  274. FB:2,//分部
  275. FX:3,//分项
  276. BILL:4,//清单
  277. BX:5,//补项
  278. DXFY:6//大项费用
  279. };
  280. const filterType = {
  281. ALL:'0',
  282. LABOUR:'1',
  283. GENERAL_MATERIAL:'2',
  284. GENERAL_MACHINE:'3',
  285. MAIN_MATERIAL:'4',
  286. EQUIPMENT:'5',
  287. FBFX:'6',
  288. TECH:'7',
  289. JGCL:'8',
  290. ZGCL:'9',
  291. SCHZ:'10',
  292. ZYCL:'11',
  293. AMAE:'12',
  294. PBCL:'13'
  295. };
  296. const filterTypeArray = ['1','2','3','4','5'];
  297. const installFeeType = ['子目费用','分项费用','措施费用'];
  298. const installSectionBase = ['分别按人材机乘系数','人工','材料','机械'];
  299. const supplyComboMap = [{text:"自行采购",value:0},{text:"完全甲供",value:2},{text:"部分甲供",value:1},{text:"甲定乙供",value:3}];//后来调整了下拉选项的顺序,为了不改之前的业务逻辑,这里的值对换了一下
  300. const materialComboMap = [
  301. {text:materialType[materialTypeMap.GC],value:materialTypeMap.GC},
  302. {text:materialType[materialTypeMap.GJ],value:materialTypeMap.GJ},
  303. {text:materialType[materialTypeMap.MC],value:materialTypeMap.MC},
  304. {text:materialType[materialTypeMap.SN],value:materialTypeMap.SN},
  305. {text:materialType[materialTypeMap.SZ],value:materialTypeMap.SZ}
  306. ];
  307. const locationList = ['北京','天津','河北','山西','内蒙古','辽宁',
  308. '吉林','黑龙江','上海','江苏','浙江','安徽','福建','江西','山东','河南',
  309. '湖北','湖南','四川','贵州','云南','西藏','陕西','甘肃','青海','宁夏','新疆',
  310. '广东','广西','海南','重庆']