From e9ccd7db3584fa4a6c5f135cef85c80bccbbbe80 Mon Sep 17 00:00:00 2001 From: wanyaokun <12345678> Date: Wed, 28 Aug 2024 20:02:15 +0800 Subject: [PATCH] =?UTF-8?q?=E5=90=88=E5=B9=B6=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- backend/.env.example | 1 + backend/.env.xinference | 1 + ...电力造价工程文件格式_FeeCollectionTable.json | 71 ---- .../博微电力造价工程文件格式_OtherFee.json | 89 ----- ...微电力造价工程文件格式_ProjectDivision.json | 149 -------- ...工程文件格式_ProjectDivisions_CostPreview.json | 239 ------------- ...电力造价工程文件格式_ProjectProperties.json | 35 -- ...电力造价工程文件格式_ProjectQuantities.json | 335 ------------------ ...力造价工程文件格式_TotalCalculateTable.json | 101 ------ .../data/博微电力造价工程业务数据说明.docx | Bin 14451 -> 0 bytes backend/data/电力造价知识.docx | Bin 17041 -> 0 bytes 11 files changed, 2 insertions(+), 1019 deletions(-) delete mode 100644 backend/data/projectstruct/博微电力造价工程文件格式_FeeCollectionTable.json delete mode 100644 backend/data/projectstruct/博微电力造价工程文件格式_OtherFee.json delete mode 100644 backend/data/projectstruct/博微电力造价工程文件格式_ProjectDivision.json delete mode 100644 backend/data/projectstruct/博微电力造价工程文件格式_ProjectDivisions_CostPreview.json delete mode 100644 backend/data/projectstruct/博微电力造价工程文件格式_ProjectProperties.json delete mode 100644 backend/data/projectstruct/博微电力造价工程文件格式_ProjectQuantities.json delete mode 100644 backend/data/projectstruct/博微电力造价工程文件格式_TotalCalculateTable.json delete mode 100644 backend/data/博微电力造价工程业务数据说明.docx delete mode 100644 backend/data/电力造价知识.docx diff --git a/backend/.env.example b/backend/.env.example index 83e69c1..ec19dfb 100644 --- a/backend/.env.example +++ b/backend/.env.example @@ -80,3 +80,4 @@ SYSTEM_PROMPT="You are a weather forecast agent. You help users to get the weath - You can install any pip package (if it exists) by running a cell with pip install. " +PRJTOJSON_URL = 'http://10.1.6.60:8092' \ No newline at end of file diff --git a/backend/.env.xinference b/backend/.env.xinference index 1dc074c..a9375dd 100644 --- a/backend/.env.xinference +++ b/backend/.env.xinference @@ -111,3 +111,4 @@ SYSTEM_PROMPT="You are a weather forecast agent. You help users to get the weath - You can install any pip package (if it exists) by running a cell with pip install. " +PRJTOJSON_URL = 'http://10.1.6.60:8092' \ No newline at end of file diff --git a/backend/data/projectstruct/博微电力造价工程文件格式_FeeCollectionTable.json b/backend/data/projectstruct/博微电力造价工程文件格式_FeeCollectionTable.json deleted file mode 100644 index fddd74f..0000000 --- a/backend/data/projectstruct/博微电力造价工程文件格式_FeeCollectionTable.json +++ /dev/null @@ -1,71 +0,0 @@ -{ - "Table": [ - { - "name": "FeeCollectionTable", - "alias": "", - "comment": "取费表是取费设置中各取费表明细。查询示例: SELECT Rate FROM FeeCollectionTable WHERE Name = 'findname'。", - "fields": [ - { - "name": "FeeCollectionTableName", - "alias": "取费表名称,取费名称,取费名", - "comment": "取费表名称", - "type": "VARCHAR" - }, - { - "name": "Name", - "alias": "名称,费用名,项目名", - "comment": "费用名称,项目名称", - "type": "VARCHAR" - }, - { - "name": "SerialNumber", - "alias": "序号,序列号,费用序号", - "comment": "费用表序号", - "type": "VARCHAR" - }, - { - "name": "Code", - "alias": "编号,代号,代码", - "comment": "费用代码", - "type": "VARCHAR" - }, - { - "name": "CalculationFormula", - "alias": "公式,表达式,计算式", - "comment": "取费基数", - "type": "VARCHAR" - }, - { - "name": "Rate", - "alias": "费用利率,费率", - "comment": "取费费率", - "type": "REAL" - }, - { - "name": "Remarks", - "alias": "说明,备注", - "comment": "费用项备注说明", - "type": "VARCHAR" - }, - { - "name": "Major", - "alias": "专业", - "comment": "取费表专业", - "type": "VARCHAR" - }, - { - "name": "Type", - "alias": "类型,取费类型", - "comment": "取费表类型", - "type": "VARCHAR" - }, - { - "name": "Path", - "alias": "路径,费用全路径", - "comment": "费用项层级全路径", - "type": "VARCHAR" - } - ] - } - ] -} \ No newline at end of file diff --git a/backend/data/projectstruct/博微电力造价工程文件格式_OtherFee.json b/backend/data/projectstruct/博微电力造价工程文件格式_OtherFee.json deleted file mode 100644 index 8682c6f..0000000 --- a/backend/data/projectstruct/博微电力造价工程文件格式_OtherFee.json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "Table": [ - { - "name": "OtherFee", - "alias": "", - "comment": "其他费用表被称为“工程费用中其他费用明细”。其他费用是指为完成工程项目建设所必需的,但不属于建筑工程费、安装工程费、设备购置费、基本预备费的其他相关费用。包括建设场地征用及清理费、项目建设管理费、项目建设技术服务费、生产准备费、大件运输措施费、专业爆破服务费等。查询示例: SELECT Rate FROM OtherFee WHERE Name = 'findname'。", - "fields": [ - { - "name": "Id", - "alias": "项目id,id,费用id", - "comment": "费用项目id", - "type": "INT" - }, - { - "name": "ParentId", - "alias": "父级id,父id", - "comment": "费用项目父级id", - "type": "INT" - }, - { - "name": "Level", - "alias": "层号,层级,层编号", - "comment": "层级编号,从1开始", - "type": "INT" - }, - { - "name": "Name", - "alias": "名称,费用名,项目名", - "comment": "费用名称,项目名称", - "type": "VARCHAR" - }, - { - "name": "SerialNumber", - "alias": "序号,序列号", - "comment": "费用表序号", - "type": "VARCHAR" - }, - { - "name": "Code", - "alias": "编号,代号,代码", - "comment": "费用代码", - "type": "VARCHAR" - }, - { - "name": "CalculationFormula", - "alias": "公式,表达式,计算式", - "comment": "取费基数", - "type": "VARCHAR" - }, - { - "name": "Rate", - "alias": "费用利率,费率", - "comment": "取费费率", - "type": "REAL" - }, - { - "name": "Amount", - "alias": "金额,价格", - "comment": "金额、合计、费用,\n单位为元", - "type": "REAL" - }, - { - "name": "Remarks", - "alias": "说明,备注", - "comment": "费用项备注说明", - "type": "VARCHAR" - }, - { - "name": "Compilation_Basis", - "alias": "编制依据,编制来源", - "comment": "费用项编制依据", - "type": "VARCHAR" - }, - { - "name": "WBS_Code", - "alias": "WBS编号,WBS编码", - "comment": "费用项WBS编码", - "type": "VARCHAR" - }, - { - "name": "Path", - "alias": "路径,费用全路径", - "comment": "费用项层级全路径", - "type": "VARCHAR" - } - ] - } - ] -} \ No newline at end of file diff --git a/backend/data/projectstruct/博微电力造价工程文件格式_ProjectDivision.json b/backend/data/projectstruct/博微电力造价工程文件格式_ProjectDivision.json deleted file mode 100644 index 5fef1ff..0000000 --- a/backend/data/projectstruct/博微电力造价工程文件格式_ProjectDivision.json +++ /dev/null @@ -1,149 +0,0 @@ -{ - "Table": [ - { - "name": "ProjectDivision", - "alias": "", - "comment": "项目划分表是用于存储工程项目划分树状数据。内部包含安装工程项目划分,建筑工程项目划分,线路项目划分,工程分部分项。查询示例: SELECT Sum_Price FROM ProjectDivision WHERE Name = 'findname'。", - "fields": [ - { - "name": "Id", - "alias": "项目id,id,费用id", - "comment": "项目划分id", - "type": "INT" - }, - { - "name": "ParentId", - "alias": "父级id,父id", - "comment": "项目划分父级id", - "type": "INT" - }, - { - "name": "Level", - "alias": "层号,层级,层编号", - "comment": "层级编号,从1开始", - "type": "INT" - }, - { - "name": "Quantity", - "alias": "个数,数量,数目", - "comment": "项目划分数量", - "type": "REAL" - }, - { - "name": "SerialNumber", - "alias": "序号,序列号,项目序号", - "comment": "项目划分序号", - "type": "VARCHAR" - }, - { - "name": "Name", - "alias": "名称,项目名", - "comment": "项目名称", - "type": "VARCHAR" - }, - { - "name": "Encoding", - "alias": "编码,译码", - "comment": "项目划分编码", - "type": "VARCHAR" - }, - { - "name": "Sum_Price", - "alias": "合计,合价", - "comment": "项目划分合价,分部分项费用", - "type": "REAL" - }, - { - "name": "FeeCollectionTableName", - "alias": "取费表", - "comment": "项目划分的取费表,此项目划分选用的取费表", - "type": "VARCHAR" - }, - { - "name": "Remarks", - "alias": "说明,备注", - "comment": "备注", - "type": "VARCHAR" - }, - { - "name": "WBS_Code", - "alias": "WBS编号,WBS编码", - "comment": "WBS编码", - "type": "VARCHAR" - }, - { - "name": "Manual_Adjustment_Coefficient", - "alias": "人工调差系数", - "comment": "此项目划分下人工调差系数", - "type": "REAL" - }, - { - "name": "Material_Adjustment_Coefficient", - "alias": "材料调差系数", - "comment": "此项目划分下材料调差系数", - "type": "REAL" - }, - { - "name": "Mechanical_Adjustment_Coefficient", - "alias": "机械调差系数", - "comment": "此项目划分下机械调差系数", - "type": "REAL" - }, - { - "name": "Demolition_Manual_Adjustment_Coefficient", - "alias": "拆除人工调差系数", - "comment": "此项目划分下拆除人工调差系数", - "type": "REAL" - }, - { - "name": "Demolition_Material_Adjustment_Coefficient", - "alias": "拆除材料调差系数", - "comment": "此项目划分下拆除材料调差系数", - "type": "REAL" - }, - { - "name": "Demolition_Mechanical_Adjustment_Coefficient", - "alias": "拆除机械调差系数", - "comment": "此项目划分下拆除机械调差系数", - "type": "REAL" - }, - { - "name": "ProfessionalType", - "alias": "专业类型", - "comment": "专业类型,字段值有变电安装、变电建筑、线路等。变电安装等于安装工程,变电建筑等于建筑工程,线路等于安装工程。", - "type": "VARCHAR" - }, - { - "name": "Unit", - "alias": "单位", - "comment": "项目划分单位", - "type": "VARCHAR" - }, - { - "name": "CalculationFormula", - "alias": "公式,表达式,计算式", - "comment": "项目划分计算式", - "type": "VARCHAR" - }, - { - "name": "Rate", - "alias": "费用利率,费率", - "comment": "项目划分费率", - "type": "REAL" - }, - { - "name": "Code", - "alias": "编号,代号,代码", - "comment": "项目划分代码", - "type": "VARCHAR" - }, - { - "name": "Path", - "alias": "路径,项目全路径", - "comment": "项目划分层级全路径", - "type": "VARCHAR" - } - ] - } - ] -} \ No newline at end of file diff --git a/backend/data/projectstruct/博微电力造价工程文件格式_ProjectDivisions_CostPreview.json b/backend/data/projectstruct/博微电力造价工程文件格式_ProjectDivisions_CostPreview.json deleted file mode 100644 index 9270882..0000000 --- a/backend/data/projectstruct/博微电力造价工程文件格式_ProjectDivisions_CostPreview.json +++ /dev/null @@ -1,239 +0,0 @@ -{ - "Table": [ - { - "name": "ProjectDivisions_CostPreview", - "alias": "", - "comment": "项目划分_费用预览表也被称为“项目划分费用预览”、“项目划分取费费用”。其中包含项目划分合价、直接费、间接费、利润、税金、主材费等。查询示例: SELECT Total FROM ProjectDivisions_CostPreview WHERE Id = '15'。", - "fields": [ - { - "name": "Id", - "alias": "id,项目id", - "comment": "项目划分id", - "type": "INT" - }, - { - "name": "ParentId", - "alias": "父级id,父id", - "comment": "项目划分父级id", - "type": "INT" - }, - { - "name": "Level", - "alias": "层号,层级,层编号", - "comment": "层级编号,从1开始", - "type": "INT" - }, - { - "name": "ProfessionalType", - "alias": "专业类型", - "comment": "专业类型,字段值有变电安装、变电建筑、线路等。变电安装等于安装工程,变电建筑等于建筑工程,线路等于安装工程。", - "type": "VARCHAR" - }, - { - "name": "FeeCollectionTableName", - "alias": "取费表", - "comment": "项目划分的取费表,此项目划分选用的取费表", - "type": "VARCHAR" - }, - { - "name": "Direct_Cost", - "alias": "直接费", - "comment": "直接费是指施工过程中直接耗用于建筑、安装工程产品的各项费用的总和。包括直接工程费和措施费。", - "type": "REAL" - }, - { - "name": "Direct_Project_Cost", - "alias": "直接工程费", - "comment": "直接工程费是指按照正常的施工条件,在施工过程中耗费的构成工程实体的各项费用。包括人工费、材料费和施工机械使用费。", - "type": "REAL" - }, - { - "name": "Quota_Direct_Cost", - "alias": "定额直接费", - "comment": "定额直接费,包含人工费、材料费中已进入定额基价的消耗性材料费和施工机械使用费。", - "type": "REAL" - }, - { - "name": "Labor_Cost", - "alias": "人工费", - "comment": "人工费是指支付给直接从事建筑安装工程施工作业的生产人员的各项费用。包括基本工资、工资性补贴、辅助工资、职工福利费、生产人员劳动保护费。", - "type": "REAL" - }, - { - "name": "Material_Cost", - "alias": "材料费", - "comment": "材料费是指施工过程中一次性消耗材料及摊销材料的费用。指已进入定额基价的消耗性材料费。", - "type": "REAL" - }, - { - "name": "Construction_Machinery_Cost", - "alias": "施工机械使用费", - "comment": "施工机械使用费是指施工机械作业所发生的机械使用费以及机械的现场安拆费和场外运费。包括折旧费、检修费、维护费、安装及拆卸费、场外运费、操作人员人工费、燃料动力费、其他费等。", - "type": "REAL" - }, - { - "name": "Installation_Material_Cost", - "alias": "装置性材料费", - "comment": "装置性材料费是指建设工程中构成工艺系统实体的工艺性材料,也称主要材料费。装置性材料通常在概算或预算定额中未计价,也称未计价材料,也称主材。", - "type": "REAL" - }, - { - "name": "A_Supply_Installation_Material_Cost", - "alias": "甲供装置性材料费", - "comment": "供货方为甲供的装置性材料费。", - "type": "REAL" - }, - { - "name": "B_Supply_Installation_Material_Cost", - "alias": "乙供装置性材料费", - "comment": "供货方为乙供的装置性材料费。", - "type": "REAL" - }, - { - "name": "Measure_Cost", - "alias": "措施费", - "comment": "措施费是指为完成工程项目施工而进行施工准备、克服自然条件的不利影响和辅助施工所发生的不构成工程实体的各项费用。包括冬雨季施工增加费、夜间施工增加费、施工工具用具使用费、特殊地区施工增加费、临时设施费、施工机构迁移费、安全文明施工费。", - "type": "REAL" - }, - { - "name": "WinterRainySeasons_Additional_Construction_Cost", - "alias": "冬雨季施工增加费", - "comment": "冬雨季施工增加费是指按照合理的工期要求,建筑、安装工程必须在冬季、雨季期间连续施工而需要增加的费用。", - "type": "REAL" - }, - { - "name": "Night_Additional_Construction_Cost", - "alias": "夜间施工增加费", - "comment": "夜间施工增加费是指按照规程要求,工程必须在夜间连续施工所发生的夜班补助、夜间施工降效、夜间施工照明设备摊销及照明用电等费用。", - "type": "REAL" - }, - { - "name": "Construction_Tool_Usage_Cost", - "alias": "施工工具用具使用费", - "comment": "施工工具用具使用费是指施工企业的生产、检验、试验部门使用的不属于固定资产的工具用具和仪器仪表的购置、摊销和维护费用。", - "type": "REAL" - }, - { - "name": "Special_Areas_Additional_Construction_Cost", - "alias": "特殊地区施工增加费", - "comment": "特殊地区施工增加费是指在高海拔、酷热、严寒等地区施工:因特殊自然条件影响而需额外增加的施工费用。", - "type": "REAL" - }, - { - "name": "Temporary_Facility_Cost", - "alias": "临时设施费", - "comment": "临时设施费是指施工企业为满足现场正常生产、生活需要在现场必须搭设的生产、生活用临时建筑物、构筑物和其他临时设施所发生的费用,以及维修、拆除、折旧及摊销费,或临时设施的租赁费等。", - "type": "REAL" - }, - { - "name": "Construction_Organization_Relocation_Cost", - "alias": "施工机构迁移费", - "comment": "施工机构迁移费是指施工企业派遣施工队伍到所承建工程现场所发生的搬迁费用。包括职工调遣差旅费和调遣期间的工资,以及办公设备、工器具、家具、材料用品和施工机械等的搬迁费用。", - "type": "REAL" - }, - { - "name": "Safe_Civilized_Construction_Cost", - "alias": "安全文明施工费", - "comment": "安全文明施工费,包括安全生产费、文明施工费、环境保护费。", - "type": "REAL" - }, - { - "name": "Indirect_Cost", - "alias": "间接费", - "comment": "间接费是指建筑安装工程的施工过程中,为全工程项目服务而不直接消耗在特定产品对象上的费用。包括规费、企业管理费和施工企业配合调试费。", - "type": "REAL" - }, - { - "name": "Regulatory_Cost", - "alias": "规费", - "comment": "规费是指按照国家行政主管部门或省级政府和省级有关权力部门规定必须缴纳并计入建筑安装工程造价的费用。包括社会保险费和住房公积金。", - "type": "REAL" - }, - { - "name": "Social_Insurance_Premiums", - "alias": "社会保险费", - "comment": "社会保险费包括养老保险费、失业保险费、医疗保险费、生育保险费和工伤保险费。", - "type": "REAL" - }, - { - "name": "Housing_Provident_Fund", - "alias": "住房公积金", - "comment": "住房公积金是指企业按照规定标准为职工缴纳的住房公积金。", - "type": "REAL" - }, - { - "name": "Enterprise_Management_Cost", - "alias": "企业管理费", - "comment": "企业管理费是指建筑安装施工企业为组织施工生产和经营管理所发生的费用。", - "type": "REAL" - }, - { - "name": "Construction_Enterprise_Cooperation_Debugging_Cost", - "alias": "施工企业配合调试费", - "comment": "施工企业配合调试费是指在工程整套启动试运阶段,施工企业安装专业配合调试所发生的费用。", - "type": "REAL" - }, - { - "name": "Profit", - "alias": "利润", - "comment": "利润是指施工企业完成所承包工程获得的盈利。", - "type": "REAL" - }, - { - "name": "Taxes", - "alias": "税金", - "comment": "税金是指按照国家税法规定应计入建筑安装工程造价内的销项税额。", - "type": "REAL" - }, - { - "name": "Equipment_Cost", - "alias": "设备费", - "comment": "设备购置费是指为项目建设而购置或自制各种设备,并将设备运至施工现场指定位置所支出的费用。包括设备费和设备运杂费。", - "type": "REAL" - }, - { - "name": "B_Supply_Equipment_Excluding_Tax_Price", - "alias": "乙供设备不含税价", - "comment": "设备费中,供货方为乙供设备,不含税价", - "type": "REAL" - }, - { - "name": "A_Supply_Equipment_Tax_Price", - "alias": "甲供设备含税价", - "comment": "设备费中,供货方为甲供设备,含税价", - "type": "REAL" - }, - { - "name": "Installation_Cost", - "alias": "安装费", - "comment": "安装费包含定额直接费、措施费、间接费、利润、税金和一笔性费用。", - "type": "REAL" - }, - { - "name": "Main_Material_Cost", - "alias": "主材费", - "comment": "主材费指装置性材料费", - "type": "REAL" - }, - { - "name": "Total", - "alias": "总价,总计,总体费用,总的费用", - "comment": "总计包含安装费、主材费、设备费。", - "type": "REAL" - }, - { - "name": "Sum", - "alias": "合计,合价", - "comment": "项目划分合价,分部分项费用,项目划分费用。合计包含安装费和主材费。", - "type": "REAL" - }, - { - "name": "Path", - "alias": "路径,项目划分全路径", - "comment": "项目划分层级全路径", - "type": "VARCHAR" - } - ] - } - ] -} \ No newline at end of file diff --git a/backend/data/projectstruct/博微电力造价工程文件格式_ProjectProperties.json b/backend/data/projectstruct/博微电力造价工程文件格式_ProjectProperties.json deleted file mode 100644 index f2d8793..0000000 --- a/backend/data/projectstruct/博微电力造价工程文件格式_ProjectProperties.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "Table": [ - { - "name": "ProjectProperties", - "alias": "", - "comment": "工程属性表是用于存储整个工程的重要属性,访问该表都是为了通过属性名查找属性值。通常属性值有工程信息、工程属性、技经参数,表中包含工程总投资、工程总费用,工程主要费用,工程技经参数等。查询示例: SELECT Value FROM ProjectProperties WHERE Name = 'findname'。", - "fields": [ - { - "name": "Name\n", - "alias": "名称、属性、属性名称、字段、字段名称、变量、参数,属性名", - "comment": "属性的唯一标识", - "type": "VARCHAR" - }, - { - "name": "Value", - "alias": "值、变量值、参数值、数值,属性值", - "comment": "属性对应的实际值", - "type": "VARCHAR" - }, - { - "name": "Type", - "alias": "类型、变量类型、数值类型,属性类型", - "comment": "属性变量的类型", - "type": "VARCHAR" - }, - { - "name": "Unit", - "alias": "单位", - "comment": "单位", - "type": "VARCHAR" - } - ] - } - ] -} \ No newline at end of file diff --git a/backend/data/projectstruct/博微电力造价工程文件格式_ProjectQuantities.json b/backend/data/projectstruct/博微电力造价工程文件格式_ProjectQuantities.json deleted file mode 100644 index a61a94b..0000000 --- a/backend/data/projectstruct/博微电力造价工程文件格式_ProjectQuantities.json +++ /dev/null @@ -1,335 +0,0 @@ -{ - "Table": [ - { - "name": "ProjectQuantities", - "alias": "", - "comment": "工程量表是项目划分下工程量,包含定额、主材、设备、一笔性费用。查询示例: SELECT BudgetPrice FROM ProjectQuantities WHERE Name = 'findname'。", - "fields": [ - { - "name": "Id", - "alias": "id", - "comment": "消耗量id,工程量id", - "type": "INT" - }, - { - "name": "ParentId", - "alias": "父级id,父id", - "comment": "父级id", - "type": "INT" - }, - { - "name": "ProjectDivisionId", - "alias": "项目划分id,项目id", - "comment": "父级项目划分id", - "type": "INT" - }, - { - "name": "Quantity", - "alias": "个数,数量,数目", - "comment": "数量,消耗量数量,工程量数量,主材数量,定额数量,设备数量,项目划分单位", - "type": "REAL" - }, - { - "name": "FeatureSegment", - "alias": "特征段", - "comment": "线路特征段", - "type": "VARCHAR" - }, - { - "name": "ParentQuantity", - "alias": "父级个数,父级数量", - "comment": "父级id的数量", - "type": "REAL" - }, - { - "name": "Name", - "alias": "名称", - "comment": "项目名称,工程量名称,消耗量名称,主材名称,定额名称,设备名称,材料名称", - "type": "VARCHAR" - }, - { - "name": "Encoding", - "alias": "编码,译码", - "comment": "编码,定额编码,主材编码,设备编码", - "type": "VARCHAR" - }, - { - "name": "SpecificationModel", - "alias": "规格型号", - "comment": "规格型号,主材规格型号,设备规格型号", - "type": "VARCHAR" - }, - { - "name": "Unit", - "alias": "单位", - "comment": "单位,主材单位,定额单位,设备单位,项目划分单位", - "type": "VARCHAR" - }, - { - "name": "BasePrice", - "alias": "基价", - "comment": "定额基价", - "type": "REAL" - }, - { - "name": "LaborCost", - "alias": "人工费", - "comment": "定额人工费", - "type": "REAL" - }, - { - "name": "MaterialCost", - "alias": "材料费", - "comment": "定额材料费", - "type": "REAL" - }, - { - "name": "MachineryCost", - "alias": "机械费", - "comment": "定额机械费", - "type": "REAL" - }, - { - "name": "QuotaCoefficient", - "alias": "定额系数", - "comment": "定额系数", - "type": "REAL" - }, - { - "name": "LaborCoefficient", - "alias": "人工系数", - "comment": "定额人工系数", - "type": "REAL" - }, - { - "name": "MaterialCoefficient", - "alias": "材料系数", - "comment": "定额材料系数", - "type": "REAL" - }, - { - "name": "MechanicalCoefficient", - "alias": "机械系数", - "comment": "定额机械系数", - "type": "REAL" - }, - { - "name": "ExpenseType", - "alias": "费用类型", - "comment": "费用类型,取值为取费、不取费", - "type": "VARCHAR" - }, - { - "name": "BudgetPrice", - "alias": "预算价", - "comment": "预算价", - "type": "REAL" - }, - { - "name": "MarketPrice", - "alias": "市场价", - "comment": "间接费是指建筑安装工程的施工过程中,为全工程项目服务而不直接消耗在特定产品对象上的费用。包括规费、企业管理费和施工企业配合调试费。", - "type": "REAL" - }, - { - "name": "Supplier", - "alias": "供货方", - "comment": "供货方,设备供货方,主材供货方,取值为甲供、乙供", - "type": "VARCHAR" - }, - { - "name": "Type", - "alias": "类型", - "comment": "工程量类型,取值定额、主材、设备、一笔性费用", - "type": "VARCHAR" - }, - { - "name": "QuotaRange", - "alias": "定额范围", - "comment": "定额范围,取值概算、预算", - "type": "VARCHAR" - }, - { - "name": "A_Supply_Material_Cost_Excluding_Tax", - "alias": "甲供材料费不含税", - "comment": "甲供材料费不含税", - "type": "REAL" - }, - { - "name": "A_Supply_Material_Cost_Including_Tax", - "alias": "甲供材料费含税", - "comment": "甲供材料费含税", - "type": "REAL" - }, - { - "name": "B_Supply_Material_Cost_Excluding_Tax", - "alias": "乙供材料费不含税", - "comment": "乙供材料费不含税", - "type": "REAL" - }, - { - "name": "B_Supply_Material_Cost_Including_Tax", - "alias": "乙供材料费含税", - "comment": "乙供材料费含税", - "type": "REAL" - }, - { - "name": "ScaffoldCalculation", - "alias": "脚手架计取", - "comment": "脚手架计取,取值计取、不计取", - "type": "VARCHAR" - }, - { - "name": "Remarks", - "alias": "说明,备注", - "comment": "备注,说明", - "type": "VARCHAR" - }, - { - "name": "FeeCollectionTableName", - "alias": "取费表", - "comment": "项目划分的取费表,工程量的取费表", - "type": "VARCHAR" - }, - { - "name": "Quota_Section_Name", - "alias": "定额章节名称", - "comment": "定额章节名称", - "type": "VARCHAR" - }, - { - "name": "ProfessionalType", - "alias": "专业类型", - "comment": "专业类型,字段值有变电安装、变电建筑、线路等。变电安装等于安装工程,变电建筑等于建筑工程,线路等于安装工程。", - "type": "VARCHAR" - }, - { - "name": "split", - "alias": "拆分", - "comment": "是否为拆分材料,取值1为拆分,取值0为不拆分", - "type": "INT" - }, - { - "name": "Loss", - "alias": "损耗", - "comment": "损耗率,主材损耗率", - "type": "REAL" - }, - { - "name": "SingleWeight", - "alias": "单重", - "comment": "单重,主材单重", - "type": "REAL" - }, - { - "name": "LineWeight", - "alias": "线重", - "comment": "线重,主材线重", - "type": "REAL" - }, - { - "name": "SupervisedMaterials", - "alias": "监造物料", - "comment": "监造物料,取值1为监造物料,取值0为非监造物料", - "type": "INT" - }, - { - "name": "EquipmentMaterials", - "alias": "设备性材料", - "comment": "设备性材料,取值1为设备性材料,取值0为主材", - "type": "INT" - }, - { - "name": "GrossWeight", - "alias": "毛重", - "comment": "毛重,主材毛重", - "type": "VARCHAR" - }, - { - "name": "TransportationType", - "alias": "运输类型", - "comment": "运输类型,主材运输类型", - "type": "VARCHAR" - }, - { - "name": "TransportationMiscellaneous", - "alias": "运杂费率", - "comment": "运杂费率,设备运杂费率", - "type": "REAL" - }, - { - "name": "EquipmentType", - "alias": "设备类型", - "comment": "设备类型,取值为主要设备、普通设备", - "type": "VARCHAR" - }, - { - "name": "UnitPrice", - "alias": "单价", - "comment": "单价", - "type": "REAL" - }, - { - "name": "Market_Price_Excluding_Tax", - "alias": "市场价不含税", - "comment": "市场价不含税", - "type": "REAL" - }, - { - "name": "Market_Price_Including_Tax", - "alias": "市场价含税", - "comment": "市场价含税,设备含税价", - "type": "REAL" - }, - { - "name": "Budget_Price_Excluding_Tax", - "alias": "预算价不含税", - "comment": "预算价不含税", - "type": "REAL" - }, - { - "name": "Budget_Price_Including_Tax", - "alias": "预算价含税", - "comment": "预算价含税", - "type": "REAL" - }, - { - "name": "Unit_Price_Excluding_Tax", - "alias": "单价不含税", - "comment": "单价不含税,设备不含税价", - "type": "REAL" - }, - { - "name": "GroupPrice", - "alias": "分组合价", - "comment": "分组合价", - "type": "REAL" - }, - { - "name": "Pump_Truck_Pouring", - "alias": "泵车浇制", - "comment": "泵车浇制,取值1为泵车浇制,取值0为非泵车浇制", - "type": "INT" - }, - { - "name": "On_Site_Preparation", - "alias": "现场制备", - "comment": "现场制备,取值1为现场制备,取值0为非现场制备", - "type": "INT" - }, - { - "name": "Clear_Water_Concrete", - "alias": "清水混凝土", - "comment": "清水混凝土,取值1为清水混凝土,取值0为非清水混凝土", - "type": "INT" - }, - { - "name": "Debugging_Fee_Calculation", - "alias": "调试费计取", - "comment": "调试费计取,取值计取、不计取", - "type": "VARCHAR" - } - ] - } - ] -} \ No newline at end of file diff --git a/backend/data/projectstruct/博微电力造价工程文件格式_TotalCalculateTable.json b/backend/data/projectstruct/博微电力造价工程文件格式_TotalCalculateTable.json deleted file mode 100644 index a39af44..0000000 --- a/backend/data/projectstruct/博微电力造价工程文件格式_TotalCalculateTable.json +++ /dev/null @@ -1,101 +0,0 @@ -{ - "Table": [ - { - "name": "TotalCalculateTable", - "alias": "", - "comment": "总算表也被称为“工程总费用”、“工程费用”。其中包含本地工程、辅助设施工程、编制基准期价差、设备购置费、其他费用、基本预备费、特殊费用、工程静态投资、动态费用、价差预备费、建设期贷款利息、工程动态投资、可抵扣增值税额。查询示例: SELECT Amount FROM TotalCalculateTable WHERE Name = 'findname'。", - "fields": [ - { - "name": "Id", - "alias": "项目id,id,费用id", - "comment": "费用项目id", - "type": "INT" - }, - { - "name": "ParentId", - "alias": "父级id,父id", - "comment": "费用项目父级id", - "type": "INT" - }, - { - "name": "Level", - "alias": "层号,层级,层编号", - "comment": "层级编号,从1开始", - "type": "INT" - }, - { - "name": "Name", - "alias": "名称,费用名,项目名", - "comment": "费用名称,项目名称", - "type": "VARCHAR" - }, - { - "name": "SerialNumber", - "alias": "序号", - "comment": "工程费用序号", - "type": "VARCHAR" - }, - { - "name": "Code", - "alias": "编号,代号,代码", - "comment": "费用代码", - "type": "VARCHAR" - }, - { - "name": "Rate", - "alias": "费用利率,费率", - "comment": "费率", - "type": "REAL" - }, - { - "name": "Amount", - "alias": "金额,价格", - "comment": "合计费", - "type": "REAL" - }, - { - "name": "WBS_Code", - "alias": "WBS编号,WBS编码", - "comment": "费用编码", - "type": "VARCHAR" - }, - { - "name": "Path", - "alias": "路径,费用全路径", - "comment": "费用名称全路径", - "type": "VARCHAR" - }, - { - "name": "Amount_InstallationCost", - "alias": "安装金额,金额_安装费,安装价格", - "comment": "安装费金额", - "type": "REAL" - }, - { - "name": "Amount_EquipmentCost", - "alias": "金额_设备费,设备金额,设备价格", - "comment": "设备费金额", - "type": "REAL" - }, - { - "name": "Amount_OtherCost", - "alias": "其他费用金额,金额_其他费,其他费用价格", - "comment": "其他费金额", - "type": "REAL" - }, - { - "name": "Amount_Total", - "alias": "总的金额,金额_占总计,总体金额", - "comment": "合计费占总计", - "type": "REAL" - }, - { - "name": "Amount_UnitInvestment", - "alias": "金额_单位投资,合计投资金额", - "comment": "合计费单位投资", - "type": "REAL" - } - ] - } - ] -} \ No newline at end of file diff --git a/backend/data/博微电力造价工程业务数据说明.docx b/backend/data/博微电力造价工程业务数据说明.docx deleted file mode 100644 index 425772fc2d814390b163a4c7eca93c73622daf2a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14451 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 bcdU%O6xdJmhYmmoXuQlW(3iVW0O0=tvLaX5 diff --git a/backend/data/电力造价知识.docx b/backend/data/电力造价知识.docx deleted file mode 100644 index 45ff225cb47f38f38b88f4b2a9816e7a84bdfadc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 17041 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