|
@@ -0,0 +1,81 @@
|
|
|
+package cn.sagacloud.server.datacenter.dao.mappers
|
|
|
+
|
|
|
+import cn.sagacloud.server.datacenter.models.entities.Family
|
|
|
+import cn.sagacloud.server.datacenter.models.entities.ModelKey
|
|
|
+import org.apache.ibatis.annotations.Mapper
|
|
|
+import org.apache.ibatis.annotations.Param
|
|
|
+import org.apache.ibatis.annotations.Select
|
|
|
+import org.springframework.stereotype.Repository
|
|
|
+
|
|
|
+/**
|
|
|
+ * 方案接口
|
|
|
+ *
|
|
|
+ * @author 张维新
|
|
|
+ */
|
|
|
+@Mapper
|
|
|
+@Repository
|
|
|
+interface SchemeMapper {
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 导入方案
|
|
|
+ */
|
|
|
+ @Select("insert into dict.property_def_project_info(first_tag,first_name,second_tag,second_name,info_point_name,info_point_code,datatype,type,flag,inputmode,unit,datasource,note,priority,visible,editable,sort,un_disabled,project_id) \n" +
|
|
|
+ "select first_tag,first_name,second_tag,second_name,info_point_name,info_point_code,datatype,type,flag,inputmode,unit,datasource,note,priority,visible,editable,sort,un_disabled,#{projectId} from dict.datacenter_property_def_scheme WHERE scheme_id = #{schemeId}")
|
|
|
+ fun setSchemeDict(@Param("projectId") projectId:String, @Param("schemeId") schemeId:String)
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 自定义信息点
|
|
|
+ */
|
|
|
+ @Select("insert into dict.property_def_project_info(first_tag,first_name,second_tag,second_name,info_point_name,info_point_code,datatype,type,flag,inputmode,unit,datasource,note,priority,visible,editable,sort,un_disabled,project_id) \n" +
|
|
|
+ "select first_tag,first_name,second_tag,second_name,info_point_name,info_point_code,datatype,type,flag,inputmode,unit,datasource,note,priority,visible,editable,sort,un_disabled,#{projectId} from dict.data_platform_scheme_info WHERE scheme_id = #{schemeId}")
|
|
|
+ fun setSchemecustomDict(@Param("projectId") projectId:String, @Param("schemeId") schemeId:String)
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 自定义信息点
|
|
|
+ */
|
|
|
+ @Select("insert into dict.property_def_project_info(first_tag,first_name,second_tag,second_name,info_point_name,info_point_code,datatype,type,flag,inputmode,unit,datasource,note,priority,visible,editable,sort,un_disabled,project_id) \n" +
|
|
|
+ "select first_tag,first_name,second_tag,second_name,info_point_name,info_point_code,datatype,type,flag,inputmode,unit,datasource,note,priority,False,editable,sort,un_disabled,#{projectId} from dict.data_platform_scheme_info WHERE scheme_id = #{schemeId}")
|
|
|
+ fun setSchemecustomDictFalse(@Param("projectId") projectId:String, @Param("schemeId") schemeId:String)
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 导入原始字典
|
|
|
+ */
|
|
|
+ @Select("insert into dict.property_def_project_info(first_tag,first_name,second_tag,second_name,info_point_name,info_point_code,datatype,type,flag,inputmode,unit,datasource,note,priority,visible,editable,sort,un_disabled,project_id) \n" +
|
|
|
+ "select first_tag,first_name,second_tag,second_name,info_point_name,info_point_code,datatype,type,flag,inputmode,unit,datasource,note,priority,visible,editable,sort,un_disabled,#{projectId} from dict.property_def_control_info ")
|
|
|
+ fun setControlDict(@Param("projectId") projectId:String)
|
|
|
+
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 操作自定义字典表数据
|
|
|
+ */
|
|
|
+ @Select("SELECT dictcustom.dict()")
|
|
|
+ fun setDict():Boolean
|
|
|
+
|
|
|
+ @Select("SELECT update_equip_ispace(#{projectId},#{oldBimId},#{bimId},#{floorId})")
|
|
|
+ fun rUpDateEquipAndSapce(@Param("projectId") projectId: String,@Param("oldBimId") oldBimId: String,@Param("bimId") bimId: String,@Param("floorId") floorId: String):Boolean
|
|
|
+
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 统计项目下有多少种设备类型
|
|
|
+ *
|
|
|
+ */
|
|
|
+ @Select("SELECT category as code,(SELECT name FROM dict.class_def WHERE id = category) FROM equipment WHERE project_id = #{projectId} GROUP BY category")
|
|
|
+ fun equipType(@Param("projectId") projectId: String):ArrayList<Family>
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 模型下载 key
|
|
|
+ *
|
|
|
+ * @param projectId 项目 id
|
|
|
+ * @param floorId 楼层 id
|
|
|
+ * @return 模型下载 key
|
|
|
+ */
|
|
|
+ @Select("SELECT bim_id as bimIdPre,model_id as key FROM equipment WHERE project_id = #{projectId} AND floor_id = #{floorId} AND not bim_id ISNULL LIMIT 1")
|
|
|
+ fun modelKey(@Param("projectId") projectId: String,@Param("floorId") floorId: String): ModelKey
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 查询模型文件 id
|
|
|
+ */
|
|
|
+ @Select("select m.id as key ,(select floor_name from revit.model_floor where current_model_id in (m.id)) as file_name,(SELECT name FROM revit.model_folder WHERE id = #{id}) AS folder_name from revit.model_file m where id in (select current_model_id from revit.model_floor where folder_id in (#{id}))")
|
|
|
+ fun modelId(@Param("id") id: String): ArrayList<ModelKey>
|
|
|
+
|
|
|
+}
|