-
上传文件
-
+
-
-
- 上传文件
-
-
-
+
+
+
+
+
+
取消
@@ -55,8 +71,7 @@ import checkPermission from "@/utils/permission";
import Pagination from "@/components/Pagination"; // secondary package based on el-pagination
import Treeselect from "@riophae/vue-treeselect";
import "@riophae/vue-treeselect/dist/vue-treeselect.css";
-import { parsePDF } from "@/api/contacts";
-import { getMyQi} from "@/api/qualificationInfo";
+import { parsePDF, pdfAll, getpdf } from "@/api/report";
import { upUrl, upHeaders } from "@/api/file";
@@ -64,20 +79,30 @@ export default {
components: { Pagination, Treeselect },
data(){
return {
+ form:{
+ pdf_file:'',
+ annual:'',
+ },
isoading: false, //是否正在加载数据
upHeaders: upHeaders(),
upUrl: upUrl(),
fileList: [],
- fileList_res:[],
+ listLoading: false,
dialogVisible: false,
showExportDialog: false,
saveLoading:false,
impDialogVisible: false,
downloadUrl: process.env.VUE_APP_BASE_API,
- impForm:{
- pdf_file:'',
- excel_file:'',
- },
+ excelUrl:'',
+ selectedYear:'',
+ tableData: {
+ count: 0
+ },
+ listQuery: {
+ page: 1,
+ page_size: 20,
+ },
+ years: Array.from({ length: 10 }, (_, i) => i + new Date().getFullYear() - 5)
};
},
mounted() {
@@ -85,6 +110,7 @@ export default {
let height1 = document.getElementsByClassName('app-main')[0].clientHeight;
let height2 = document.getElementsByClassName('elHeader')[0].clientHeight;
that.tableHeight = height1 - height2 - 70;
+ that.getList();
},
methods: {
handleImport(){
@@ -97,26 +123,63 @@ export default {
close_dialog(){
this.impDialogVisible = false;
this.fileList = [];
- this.fileList_res = [];
- this.impForm.pdf_file = '';
- this.impForm.excel__file = '';
+ this.form.pdf_file = '';
+ },
+ getTableList(){
+ this.getList()
+
},
submitUpload() {
this.$refs.upload.submit();
this.impDialogVisible = false;
this.saveLoading = true;
- console.log(this.impForm)
- parsePDF(this.impForm).then(res=>{
+ console.log(this.form)
+ parsePDF(this.form).then(res=>{
if(res.code>=200){
- downloadFile(res.data.url)
+ // downloadFile(res.data.url)
this.saveLoading = false;
- this.$message.success("解析成功");
+ // this.$message.success("解析成功");
+ this.fileList = [];
+ this.form.pdf_file = '';
+ this.getList();
}else{
this.$message.error(res.message);
this.saveLoading = false;
+ this.fileList = [];
+ this.getList();
}
})
},
+ getList() {
+ this.listLoading = true;
+ this.tableData.results =[];
+ this.tableData.count =0;
+ pdfAll(this.listQuery).then((response) => {
+ console.log(response);
+ if (response.data) {
+ this.tableData = response.data;
+ }
+ this.listLoading = false;
+ }
+ );
+ },
+ handleDownload(scope) {
+ this.listLoading = true;
+ this.dialogTableVisible=true;
+ console.log(scope.row.id);
+ getpdf(scope.row.id).then((response) => {
+ if (response.code>=200) {
+ console.log(response.data.excel_path);
+ downloadFile(response.data.excel_path)
+ this.listLoading = false;
+ }else{
+ alert('服务器内部错误,请稍后再试')
+ this.dialogTableVisible=false;
+ this.listLoading = false;
+ return
+ }
+ });
+ },
downloadFile(url) {
const link = document.createElement('a');
link.href = url;
@@ -125,31 +188,26 @@ export default {
document.body.appendChild(link);
link.click();
document.body.removeChild(link);
- }
- },
+ },
handlePreview(file) {
- if ("url" in file) {
- window.open(file.url);
- } else {
- window.open(file.response.data.path);
- }
- },
+ if ("url" in file) {
+ window.open(file.url);
+ } else {
+ window.open(file.response.data.path);
+ }
+ },
handleUpSuccess(res, file, filelist) {
this.fileList = [file];
- this.impForm.pdf_file = res.data.path;
+ console.log(res.data.path);
+ this.form.pdf_file = res.data.path;
},
- handleUpSuccess_res(res, file, filelist) {
- this.fileList_res = [file];
- this.impForm.excel_file = res.data.path;
- },
handleRemove(file, filelist) {
this.Content.file = null;
this.fileList = [];
- this.impForm.pdf_file = '';
- this.impForm.excel_file = '';
},
checkPermission,
-
+ },
+
};
diff --git a/server/apps/information/migrations/0032_auto_20240425_1736.py b/server/apps/information/migrations/0032_auto_20240425_1736.py
new file mode 100644
index 0000000..3026f0d
--- /dev/null
+++ b/server/apps/information/migrations/0032_auto_20240425_1736.py
@@ -0,0 +1,41 @@
+# Generated by Django 3.2.12 on 2024-04-25 09:36
+
+from django.conf import settings
+from django.db import migrations, models
+import django.db.models.deletion
+import django.utils.timezone
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('system', '0023_alter_user_first_name'),
+ migrations.swappable_dependency(settings.AUTH_USER_MODEL),
+ ('information', '0031_qualification_change_date'),
+ ]
+
+ operations = [
+ migrations.AlterField(
+ model_name='contact',
+ name='name',
+ field=models.CharField(max_length=20, unique=True, verbose_name='公司名称'),
+ ),
+ migrations.CreateModel(
+ name='Parsepdf',
+ fields=[
+ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
+ ('create_time', models.DateTimeField(default=django.utils.timezone.now, help_text='创建时间', verbose_name='创建时间')),
+ ('update_time', models.DateTimeField(auto_now=True, help_text='修改时间', verbose_name='修改时间')),
+ ('is_deleted', models.BooleanField(default=False, help_text='删除标记', verbose_name='删除标记')),
+ ('pdf_path', models.CharField(max_length=100, verbose_name='pdf路径')),
+ ('excel_path', models.CharField(max_length=100, verbose_name='excel路径')),
+ ('parse_excel', models.CharField(max_length=100, verbose_name='解析后excel路径')),
+ ('belong_dept', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='parsepdf_belong_dept', to='system.organization', verbose_name='所属部门')),
+ ('create_by', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='parsepdf_create_by', to=settings.AUTH_USER_MODEL, verbose_name='创建人')),
+ ('update_by', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='parsepdf_update_by', to=settings.AUTH_USER_MODEL, verbose_name='最后编辑人')),
+ ],
+ options={
+ 'abstract': False,
+ },
+ ),
+ ]
diff --git a/server/apps/information/migrations/0033_auto_20240425_1805.py b/server/apps/information/migrations/0033_auto_20240425_1805.py
new file mode 100644
index 0000000..137f696
--- /dev/null
+++ b/server/apps/information/migrations/0033_auto_20240425_1805.py
@@ -0,0 +1,21 @@
+# Generated by Django 3.2.12 on 2024-04-25 10:05
+
+from django.db import migrations
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('information', '0032_auto_20240425_1736'),
+ ]
+
+ operations = [
+ migrations.AlterModelOptions(
+ name='parsepdf',
+ options={'verbose_name': '解析pdf'},
+ ),
+ migrations.AlterModelTable(
+ name='parsepdf',
+ table='parsepdf',
+ ),
+ ]
diff --git a/server/apps/information/migrations/0034_parsepdf_year.py b/server/apps/information/migrations/0034_parsepdf_year.py
new file mode 100644
index 0000000..c3bd2d3
--- /dev/null
+++ b/server/apps/information/migrations/0034_parsepdf_year.py
@@ -0,0 +1,18 @@
+# Generated by Django 3.2.12 on 2024-04-26 00:58
+
+from django.db import migrations, models
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('information', '0033_auto_20240425_1805'),
+ ]
+
+ operations = [
+ migrations.AddField(
+ model_name='parsepdf',
+ name='year',
+ field=models.IntegerField(default=2024, verbose_name='年份'),
+ ),
+ ]
diff --git a/server/apps/information/migrations/0035_auto_20240426_0920.py b/server/apps/information/migrations/0035_auto_20240426_0920.py
new file mode 100644
index 0000000..8ac5c60
--- /dev/null
+++ b/server/apps/information/migrations/0035_auto_20240426_0920.py
@@ -0,0 +1,27 @@
+# Generated by Django 3.2.12 on 2024-04-26 01:20
+
+from django.db import migrations, models
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('information', '0034_parsepdf_year'),
+ ]
+
+ operations = [
+ migrations.RemoveField(
+ model_name='parsepdf',
+ name='year',
+ ),
+ migrations.AddField(
+ model_name='parsepdf',
+ name='excel_name',
+ field=models.CharField(blank=True, max_length=100, null=True, verbose_name='excel名称'),
+ ),
+ migrations.AddField(
+ model_name='parsepdf',
+ name='pdf_name',
+ field=models.CharField(blank=True, max_length=100, null=True, verbose_name='pdf名称'),
+ ),
+ ]
diff --git a/server/apps/information/migrations/0036_parsepdf_annual.py b/server/apps/information/migrations/0036_parsepdf_annual.py
new file mode 100644
index 0000000..66cdae3
--- /dev/null
+++ b/server/apps/information/migrations/0036_parsepdf_annual.py
@@ -0,0 +1,18 @@
+# Generated by Django 3.2.12 on 2024-04-26 02:02
+
+from django.db import migrations, models
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('information', '0035_auto_20240426_0920'),
+ ]
+
+ operations = [
+ migrations.AddField(
+ model_name='parsepdf',
+ name='annual',
+ field=models.IntegerField(default=2024, verbose_name='年份'),
+ ),
+ ]
diff --git a/server/apps/information/models.py b/server/apps/information/models.py
index f9d5f64..b6bb033 100644
--- a/server/apps/information/models.py
+++ b/server/apps/information/models.py
@@ -121,3 +121,15 @@ class ExternalAuditors(CommonBDModel):
class Meta:
verbose_name = '外审员情况'
db_table = 'externalauditors'
+
+class Parsepdf(CommonBDModel):
+ pdf_path = models.CharField(max_length=100, verbose_name='pdf路径')
+ excel_path = models.CharField(max_length=100, verbose_name='excel路径')
+ parse_excel = models.CharField(max_length=100, verbose_name='解析后excel路径')
+ annual = models.IntegerField(verbose_name='年份', default=2024)
+ excel_name = models.CharField(max_length=100, verbose_name='excel名称', null=True, blank=True)
+ pdf_name = models.CharField(max_length=100, verbose_name='pdf名称', null=True, blank=True)
+
+ class Meta:
+ verbose_name = '解析pdf'
+ db_table = 'parsepdf'
diff --git a/server/apps/information/serializers.py b/server/apps/information/serializers.py
index 00ea47b..84aab45 100644
--- a/server/apps/information/serializers.py
+++ b/server/apps/information/serializers.py
@@ -1,7 +1,7 @@
from rest_framework import serializers
from apps.system.serializers import OrganizationSimpleSerializer
from apps.system.models import Organization
-from .models import AbilityReview, QualityCommendation, QualityActivities, Contact, ExternalAuditors, AuditLog, Qualification
+from .models import AbilityReview, QualityCommendation, QualityActivities, Contact, ExternalAuditors, AuditLog, Qualification, Parsepdf
from django.utils import timezone
class BaseMeta:
@@ -63,4 +63,8 @@ class AuditLogSerializer(serializers.ModelSerializer):
model = AuditLog
fields = '__all__'
+class ParsepdfSerializer(serializers.ModelSerializer):
+ class Meta(BaseMeta):
+ model = Parsepdf
+ fields = '__all__'
diff --git a/server/apps/information/urls.py b/server/apps/information/urls.py
index 120530f..22ce090 100644
--- a/server/apps/information/urls.py
+++ b/server/apps/information/urls.py
@@ -1,6 +1,6 @@
from django.urls import path, include
from rest_framework import routers
-from .views import AbilityReviewViewSet, AuditLogViewSet, QualityCommendationViewSet, QualityActivitiesViewSet, QualiChangeViewSet, ContactViewSet, ExternalAuditorsViewSet, QualificationViewSet
+from .views import AbilityReviewViewSet, AuditLogViewSet, QualityCommendationViewSet, QualityActivitiesViewSet, ParsePdfViewSet, QualiChangeViewSet, ContactViewSet, ExternalAuditorsViewSet, QualificationViewSet
router = routers.DefaultRouter()
router.register('ar', AbilityReviewViewSet, basename='abilityreviews')
@@ -11,6 +11,7 @@ router.register('ea', ExternalAuditorsViewSet, basename='externalauditors')
router.register('faq', QualificationViewSet, basename='faq')
router.register('faqch', QualiChangeViewSet, basename='faqch')
router.register('ad', AuditLogViewSet, basename='ad')
+router.register('pdf', ParsePdfViewSet, basename='pdf')
urlpatterns = [
path('', include(router.urls))
diff --git a/server/apps/information/views.py b/server/apps/information/views.py
index a28ed25..9fcd803 100644
--- a/server/apps/information/views.py
+++ b/server/apps/information/views.py
@@ -16,6 +16,10 @@ from utils.pdf2txt import run
from datetime import datetime
import os
import traceback
+import shutil
+
+# EXCEL_PATH = os.path.join(settings.BASE_DIR, 'excel')
+EXCEL_PATH = "C:/code/pdf_exc/检验检测服务业统计数据上报任务-空表.xlsx"
class ImpMixin:
@@ -345,7 +349,13 @@ class ContactViewSet(ImpMixin, CreateUpdateCustomMixin, ModelViewSet):
导入数据
"""
return self.gen_imp_view(request, 2, ContactSerializer)
-
+
+class ParsePdfViewSet(CreateUpdateCustomMixin, ModelViewSet):
+ queryset = Parsepdf.objects.all()
+ serializer_class = ParsepdfSerializer
+ filterset_fields = ['belong_dept', 'annual']
+
+
#解析pdf到excel
@action(detail=False, methods=['post'])
@transaction.atomic
@@ -355,13 +365,29 @@ class ContactViewSet(ImpMixin, CreateUpdateCustomMixin, ModelViewSet):
"""
try:
pdf_file = request.data['pdf_file']
- excel_file = request.data['excel_file']
+ annual = request.data['year']
# 读数据路径copy 在media 下新建excel,解析完成后存入数据库。
- run(pdf_file, excel_file)
+ media_excel = os.path.join(os.path.dirname(EXCEL_PATH),"media_excel")
+ if not os.path.exists(media_excel):
+ os.makedirs(media_excel)
+ shutil.copy(EXCEL_PATH, media_excel)
+ save_path = os.path.join(media_excel, os.path.basename(EXCEL_PATH))
+ run(pdf_file, save_path)
except Exception:
traceback.print_exc()
return Response({"message":"解析失败"}, status = status.HTTP_400_BAD_REQUEST)
- return Response({"message":"解析成功", "url":excel_file}, status = status.HTTP_200_OK)
+ Parsepdf.objects.create(
+ pdf_path=pdf_file,
+ excel_path= EXCEL_PATH,
+ parse_excel = save_path,
+ belong_dept = request.user.dept,
+ create_by = request.user,
+ create_time = datetime.now(),
+ annual = annual,
+ excel_name = os.path.basename(EXCEL_PATH),
+ pdf_name = os.path.basename(pdf_file)
+ )
+ return Response({"message":"解析成功", "url":save_path}, status = status.HTTP_200_OK)
class ExternalAuditorsViewSet(ImpMixin, RbacFilterSet, CreateUpdateCustomMixin, ModelViewSet):
diff --git a/server/pdf2txt.txt b/server/pdf2txt.txt
index e69de29..c4c0457 100644
--- a/server/pdf2txt.txt
+++ b/server/pdf2txt.txt
@@ -0,0 +1,882 @@
+2023/12/4 17:08
+检验检测机构数据查看页!
+qts.cnca.cn/qts/datareport/datareport/JyjcDataViewFlow.flow?repId=40288277857770f1018585ae16006421
+1/13
+上报流程
+机构分析图
+2023/12/4 17:08
+检验检测机构数据查看页!
+qts.cnca.cn/qts/datareport/datareport/JyjcDataViewFlow.flow?repId=40288277857770f1018585ae16006421
+2/13
+基本情况
+01
+单位类型(01-1): 法人单位
+统一社会信用代码(财务所属法人单位)(01-3/01-
+4): 91110000101123421K
+
+02
+法人单位名称(02-1): 中国国检测试控股集团股份有限公司
+法人单位行业分类代码(四位数字): 7452
+03
+03-1 单位注册地址及行政区划 北京市 朝阳区 (110105) 管庄东里1号科研生产区南楼
+03-2 单位所在地址及行政区划 北京市 朝阳区 (110105) 管庄东里1号科研生产区南楼
+其他地址: 北京市 通州区 (110112) 工业开发区光华路1号
+其他地址: 海南省 定安县 (469021) 塔岭新区(二园)西三环路南侧
+其他地址: 北京市 通州区 (110112) 永顺镇安顺路207号
+其他多场所地址 其他地址四:北京市 市辖区 顺义区(101399) 北务镇庄子村木燕路18号
+(玺达农庄)顺义区种植园 其他地址五:北京市 市辖区 朝阳区(100024)管庄东里1号国检大
+楼三层 其他地址六:河北省 唐山市 玉田县(064100) 西环路618号 其他地址七:北京市 密云
+区 (101599)经济开发区雁密路南侧1号 其他地址八:北京市 市辖区 朝阳区(100124)平乐
+2023/12/4 17:08
+检验检测机构数据查看页!
+qts.cnca.cn/qts/datareport/datareport/JyjcDataViewFlow.flow?repId=40288277857770f1018585ae16006421
+3/13
+园100号北京工业大学理科楼M521、M522室 其他地址九:四川省 成都市 市辖区 经济技术开发
+区(龙泉驿区)(610101) 成龙大道二段1666号C3栋3层9号 其他地址十:河南省 开封市 兰考
+县(475300)恒大家居产业园国检集团 其他地址十一:福建省 泉州市南安市(362300) 水头
+镇石材产业展示运营中心10号门
+本机构是否处于国务院公布的自由贸易试验区内: 否
+05
+法定代表人(单位负责人):马振珠
+开业(成立)时间: 1984-10-18
+06
+联系方式(请填写上报负责人的联系方式)
+长途区
+号: 010
+固定电话: 51167391
+电话分机号:
+移动电
+话: 13381289695
+传真号码: 51167352
+传真分机号:
+邮政编
+码: 100024
+电子邮箱: sxh@ctc.ac.cn
+网址: www.ctc.ac.cn
+07
+所属管辖区: 北京市 朝阳区
+08
+是否含有外资: 否 登记注册类型: 160 股份有限公司
+09
+机构类型: 企业
+是否由事业单位转企改制而来: 否
+是否是企业集团: 是
+母公司名称:中国国检测试控股集团股份有限公司
+10
+执行会计标准类别: 企业单位会计制度 其中,执行企业会计准则情况: 执行
+《企业会计准则》
+11
+企业控股情况: 国有控股
+12
+营业状态: 营业
+13
+高新技术企业认定情况:
+是否高新技术企业认定: 是
+认定或复审高新技术企业证书编号: GR202011003097
+企业被认定(复审)为高新技术企业的日期: 上市挂牌时间:2020-10-21
+14
+上市及新三板挂牌情况:
+是否境内上市和在新三板挂牌? 是
+
+15
+检验检测机构投保情况(可填多项):
+1检验检测机构责
+任险:
+无
+保费支出0.0万元
+2检验检测人员职
+业责任险:
+无
+保费支出0.0万元
+3其他险种
+
+保费支出万元
+
+16
+检验检测领域:
+按照国民经济行业分类,检验检测服务涉及的行业领域代码:
+房屋建筑业,建筑装饰、装修和其他建筑业,专业技术服务业,科技推广和应用服务业
+按照检验检测的产品进行分类,检验检测涉及的产品分类代码:
+2023/12/4 17:08
+检验检测机构数据查看页!
+qts.cnca.cn/qts/datareport/datareport/JyjcDataViewFlow.flow?repId=40288277857770f1018585ae16006421
+4/13
+15:石、砂和粘土等非金属矿及其采选品,18:水,36:橡胶和塑料制品,37:玻璃和玻璃制品及其他非金属
+制品,38:家具;其他不另分类的可运输物品,41:主要金属材料,53:建筑工程
+检验检测领域分类代码:
+建设工程与建材,无损检测,电磁兼容,化学,电气
+专业领域专业领域请填写本机构检测的主要领域,至少填写1个,最多填写5个,
+百分比请按照收入比例进行选择。
+领域一建筑材料
+业
+务
+收
+入
+占
+比
+ 75%
+该
+领
+域
+业
+务
+饱
+和
+度
+ 100%
+领域二建筑工程
+业
+务
+收
+入
+占
+比
+ 20%
+该
+领
+域
+业
+务
+饱
+和
+度
+ 100%
+领域三环境监测
+业
+务
+收
+入
+占
+比
+ 5%
+该
+领
+域
+业
+务
+饱
+和
+度
+ 100%
+领域四
+业
+务
+收
+入
+占
+比
+ %
+该
+领
+域
+业
+务
+饱
+和
+度
+ %
+领域五
+业
+务
+收
+入
+占
+比
+ %
+该
+领
+域
+业
+务
+饱
+和
+度
+ %
+其他领域描述: 光伏产品
+检验检测服务关键词: 房屋,建筑,工程,环境
+
+17
+本机构拥有国家市场监督管理部门颁发的有效期内(以下同)检验检测机
+构资质认定证书:
+1 张
+省级质量技术监督(市场监督管理部门)颁发的资质认定证书:
+3 张
+国家市场监督管理部门颁发的特种设备检验检测机构核准证:
+0 张
+省级市场监督管理部门颁发的特种设备检验检测机构核准证:
+0 张
+2023/12/4 17:08
+检验检测机构数据查看页!
+qts.cnca.cn/qts/datareport/datareport/JyjcDataViewFlow.flow?repId=40288277857770f1018585ae16006421
+5/13
+其他行业管理部门颁发的资质、资格证书:
+5 张
+中国合格评定国家认可中心颁发的:
+4 张
+其他社会组织、团体颁发的证书:
+0 张
+境外认可机构颁发证书:
+0 张, 境外认可机构
+名称 :
+资质证书状况(02)
+本机构是
+否建有国
+家**产品
+质检中
+心:
+是
+18
+本检验检测机构当年接受各类技术评审: 11 次,其中:
+接受资质认定技术
+评审:
+4 次
+ 其中国家市场监
+管部门组织检查:
+3 次
+ 省级及以下质量
+技术监督部门(市
+场监管部门)组织
+评审:
+1 次
+接受行业管理部门
+组织技术评审:
+1 次
+ 其中国家行业管
+理部门组织评审:
+0 次
+ 省级及以下行业
+管理部门组织评审:; 1 次
+接受认可机构评审: 3 次
+接受其他社会组
+织、团体及境内外
+评价机构评审:
+3 次
+19
+本检验检测机构当年接受各类监督检查 6 项(次),其中:
+接受资质认定专项监督检查:
+2 项(次)
+ 其中国家市场监管部门组织检查:
+0 项(次)
+ 省级及以下质量技术监督部门(市场监管部门)
+组织检查:
+2 项(次)
+接受行业管理部门监督检查:
+4 项(次)
+ 其中国家行业管理部门组织检查:
+0 项(次)
+ 省级及以下行业管理部门组织检查:
+4 项(次)
+接受其他社会组织、团体及境内外评价机构监督检
+查:
+0 项(次)
+20
+本单位是否处于国家检验检测认证公共服务平台示范区: 否
+
+21
+本单位处于工业园区(开发区): 否
+
+22
+是否加入国内外产业联盟: 是
+2023/12/4 17:08
+检验检测机构数据查看页!
+qts.cnca.cn/qts/datareport/datareport/JyjcDataViewFlow.flow?repId=40288277857770f1018585ae16006421
+6/13
+产业联盟1名称: 中关村材料试验技术联盟
+产业联盟2名称: 中关村检验检测认证产业技术
+联盟
+产业联盟3名称:
+产业联盟4名称:
+23
+是否加入国内外行业协会组织: 是
+行业协会1名称: 中国建筑材料联合
+会
+行业协会2名称: 美国材料与试验协
+会
+
+财务情况
+指标名称
+代码
+本年(单位:万元)
+上年(单位:万元)
+
+存货
+01
+0
+0
+固定资产原值(原价)
+02
+29,090.1
+25,458.8
+累计折旧
+03
+11,661.6
+8,674.7
+其中,本年折旧
+04
+2,986.9
+1,415.9
+资产总计
+05
+218,027
+182,236.3
+负债合计
+06
+118,986
+95,547.5
+营业收入
+07
+40,025.5
+34,691.9
+营业成本
+08
+22,412.8
+22,930.1
+营业税金及附加
+09
+221.9
+142.6
+销售费用
+10
+908.3
+828.1
+管理费用
+11
+5,542.5
+3,162.7
+ 其中,税金
+12
+0
+0
+ 差旅费
+13
+23.7
+125.2
+财务费用
+14
+0
+0
+ 其中,利息净支出
+15
+0
+0
+资产减值损失
+16
+15.5
+9.8
+公允价值变动收益
+17
+0
+0
+投资收益
+18
+0
+0
+其他收益
+19
+1,163.2
+1,022.2
+营业利润
+20
+12,087.8
+8,640.9
+营业外收入
+21
+459.3
+473.6
+营业外支出
+23
+61.7
+72.5
+利润总额
+24
+12,485.3
+9,041.9
+2023/12/4 17:08
+检验检测机构数据查看页!
+qts.cnca.cn/qts/datareport/datareport/JyjcDataViewFlow.flow?repId=40288277857770f1018585ae16006421
+7/13
+净利润
+25
+10,612.5
+7,685.7
+所得税费用
+26
+1,872.8
+1,356.3
+应付职工薪酬(本期贷方
+累计发生额)
+27
+14,148.5
+12,550.3
+本年应交增值税(本期累
+计发生额)
+28
+1,461.1
+1,098.3
+
+业务情况
+00
+主要检验检测业务活动【多选】(00)
+检验检测业务活动类型(可多选)(00-1): 检测,检验,鉴定,安全性评价,其他
+检验检测业务活动特点(00-2) 固定实验室+便携设备(包括移动检测车)现场检测
+
+01
+检验检测业务状况(01)
+业务量以及组成(01-1)
+检验检测报告数合计:
+67931 份
+ 其中,所检验检测项目出现不符合或不
+合格的报告数:
+1739 份
+ 其中,为省(自治区、直辖市)外出具
+检验检测报告数:
+39214 份
+行政执法或政府委托检验检测
+报告份数13214份(01-101-1)
+收入 3502.8万元(01-101-2)
+ 其中,当年承担产品质量国家监督抽查
+工作出具检验检测报告数:
+587 份
+ 其中,当年承担产品质量地方监督抽查
+工作出具检验检测报告数:
+540 份
+ 其中,当年承担3C强制性认证检验检
+测报告数:
+12087 份
+ 其中,当年承担生产许可证检验检测报
+告数数:
+0 份
+社会委托检验检测
+报告份数 53121 份(01-102-1) 收入 24084.4 万元(01-102-2)
+ 其中,个人委托检验检测报告:
+ 0%
+ 其中,单位委托检验检测报告:
+ 100%
+司法鉴定、仲裁检验检测
+报告份数 0 份(01-103-1)
+收入 0.0 万元(01-103-2)
+ 其中,出具司法鉴定意见书:
+0 份
+其他技术服务
+报告份数 1596 份(01-104-1)
+收入 539.8 万元(01-104-2)
+01-2
+特殊检测领域(选填,限实际提供相关服务的机构填报)
+01-201
+是否服务制造业企业(选是,继续填报以下
+内容)
+是
+服务制造业企业的业务收入占总收入:
+95.0% 服务制造业企业的业务收入较去年
+增长:
+0.0%
+01-202
+是否服务个人消费者(选是,继续填报以下
+内容)
+是
+服务个人消费者的业务收入占总收入:
+5.0% 服务个人消费者的业务收入较去年年
+增长:
+0.0%
+2023/12/4 17:08
+检验检测机构数据查看页!
+qts.cnca.cn/qts/datareport/datareport/JyjcDataViewFlow.flow?repId=40288277857770f1018585ae16006421
+8/13
+01-
+203
+是否为高技术产业(制造业)提供检验检测服
+务
+否
+01-
+204
+是否为战略性新兴产业提供检验检测服务
+是
+2.按照《战略性新兴产业分类(2018)》(试行),检验检测服务涉及战兴名称: 太阳能设备
+和生产装备制造,太阳能材料制造,太阳能发电运营维护,太阳能工程施工,太阳能工程技术服务,核
+电工程技术服务,绿色节能建筑材料制造,环境保护及污染治理服务,环保工程施工
+战略性新兴产业检测领域业务量:
+ 新一代信息技术产业,业务比重:
+%
+ 高端装备,业务比重:
+%
+ 新材料,业务比重:
+80%
+ 生物产业,业务比重:
+%
+ 新能源汽车,业务比重:
+%
+ 新能源产业,业务比重:
+10%
+ 节能环保,业务比重:
+10%
+02
+证书上传已移至基本情况第“17”项
+03
+资源状况(03)
+ 仪器设备资源状况(03-101)
+ 全部仪器设备
+5009 台套(03-101)
+ 其中,50万元
+以上仪器设备
+149 台套(03-101-1)
+ 50-100万元
+仪器设备在用
+93 台套 ,闲置 0 台套 ,待报废 0 台套
+ 100-200万仪
+器设备在用
+45 台套 ,闲置 0 台套 ,待报废 0 台套
+ 200万元以上
+仪器设备在用
+10 台套 ,闲置 1 台套 ,待报废 0 台套
+ 其中,进口仪
+器设备
+636 台套(03-101-2)
+ 全部仪器设备资
+产原值
+35369.6 万元(03-102)
+ 其中,50万元
+以上仪器设备资产
+原值
+16367.8 万元(03-102-1)
+ 50-100万元
+仪器设备资产(在
+用)原值
+6598.6 万元
+ 闲置仪器设
+备原值
+0.0 万元
+ 待报废仪器
+设备原值
+0.0 万元
+ 100-200万仪
+器设备资产(在
+用)原值
+6149.8 万元
+ 闲置仪器设
+备原值
+0.0 万元
+ 待报废仪器
+设备原值
+0.0 万元
+2023/12/4 17:08
+检验检测机构数据查看页!
+qts.cnca.cn/qts/datareport/datareport/JyjcDataViewFlow.flow?repId=40288277857770f1018585ae16006421
+9/13
+ 200万元以上
+仪器设备(在用)
+原值
+3085.1 万元
+ 闲置仪器设
+备原值
+534.3 万元
+ 待报废仪器
+设备原值
+0.0 万元
+ 其中,进口仪
+器设备资产原值
+13892.6 万元(03-102-2)
+ 与检验检测相关
+的固定资产原值
+(设备)
+35369.6 万元(03-103)
+ 当年新增仪器设
+备
+240 台套(03-104)
+ 其中,当年新
+增50万元以上仪器
+设备(设备)
+5 台套(03-104-1)
+ 其中,50-
+100万元仪器设备
+1 台套
+ 其中,100-
+200万仪器设备
+3 台套
+ 其中,200
+万以上仪器设备
+1 台套
+ 当年新增仪器设
+备原值合计
+2054.0 万元(03-105)
+ 其中,当年新增
+50万元以上仪器设
+备资产原值
+1294.4 万元(03-105-1)
+ 其中,50-100
+万元仪器设备资产
+原值
+92.0 万元
+ 其中,100-
+200万仪器设备资产
+原值
+362.6 万元
+ 其中,200万
+元以上仪器设备资
+产原值
+839.8 万元
+ 是否愿意将仪器
+设备对外共享:
+否 (03-106)
+工作面积状况(03-2)
+ 机构总面积
+50528.0 平方米(03-201)
+ 其中办公面积11464.0 平方米(03-201-1)
+ 实验室面积
+39064.0 平方米(03-201-2)
+ 其中,恒温
+恒湿实验室
+1243.0 平方米(03-201-201)
+ 其中,P2
+以上生物安全实验
+室
+80.0 平方米(03-201-202)
+ 其中,二恶
+英实验室
+0.0 平方米(03-201-203)
+ 其中,电磁
+屏蔽实验室
+18.0 平方米(03-201-204)
+ 其中,消声
+实验室
+44.0 平方米(03-201-205)
+ 其中,放射
+性实验室
+106.0 平方米(03-201-206)
+2023/12/4 17:08
+检验检测机构数据查看页!
+qts.cnca.cn/qts/datareport/datareport/JyjcDataViewFlow.flow?repId=40288277857770f1018585ae16006421
+10/13
+ 其中,动物
+房
+3.0 平方米(03-201-207)
+ 专用室外试验
+场
+4200.0 平方米(03-201-208)
+检测能力状况(03-3)
+机构获得资质认定(计量认证)的检测能力中:
+ 参数 21384 项(03-301-1) , 产品标准 118 项(03-301-2) , 方法标准 5445 项(03-301-3)
+人力资源状况(03-4)
+检验检测从业人员
+期末人数
+检验检测从业人员期末人数 527 人
+ 其中:研究生及
+以上学历(03-401)
+148 人
+ 大学本科
+学历(03-402)
+236 人
+ 专科及以
+下学历(03-403)
+143 人
+ 其中:高级技术
+职称人员(03-404)
+136 人
+ 中级技术
+职称人员(03-405)
+133 人
+ 初级技术
+职称人员(03-406)
+149 人
+ 具备中级
+技术职称同等水平
+的技术能力人员
+30 人
+ 其他(03-
+407)
+79 人
+其中:授权签字人
+(03-408)
+74 人
+ 管理人员
+(03-409)
+102 人
+ 检验检测
+技术人员(03-410)
+425 人
+高层次专家
+ 其中:两院院士
+(03-411)
+0 人
+ 其中:国家高层
+次人才特殊支持计
+划(万人计划)入
+选人员(03-413)
+0 人
+ 其他:
+全国建材行业十大科技突破领军人物 1人;朝阳区最美科技工作者 1人;北京优秀
+青年工程师创新工作室授牌 1人;第八届中国科协青年人才托举工程 1人;北京市
+科协青年人才托举工程 3人
+研发活动及相关(03-5)
+知识产权状况(03-502)
+ 当年专利申请受
+理数
+41 件
+ 其中:当年发明
+专利申请受理数
+17 件
+ 其中:申请欧美
+日专利
+0 件
+ 其中:申请PCT
+国际专利
+0 件
+2023/12/4 17:08
+检验检测机构数据查看页!
+qts.cnca.cn/qts/datareport/datareport/JyjcDataViewFlow.flow?repId=40288277857770f1018585ae16006421
+11/13
+ 当年专利授权书
+数
+35 件
+ 其中,当年发明
+专利授权数
+4 件
+ 其中:授权欧美
+日专利
+0 件
+ 期末有效专利数
+226 件
+ 其中:期末有效
+发明专利数
+63 件
+ 其中:拥有境外
+授权专利
+1 件
+ 期末拥有注册商
+标
+9 件
+ 其中:当年注
+册商标
+0 件
+ 其中:境外注
+册商标
+0 件
+ 其中:驰名商
+标
+0 件
+ 马德里商标国
+际注册申请量
+0 件
+ 拥有软件著作权
+58 件
+ 其中:当年获
+得软件著作权
+16 件
+获得相关奖项情况
+(03-503)
+ 是否获得本年度
+国务院国家科学技
+术奖:
+否
+ 是否获得本年度
+省、自治区、直辖
+市人民政府设立的
+省级科学技术奖:
+否
+ 其他
+建材行业科技进步奖二等奖;合格评定科学技术奖一等奖;发明创业奖成果奖一等
+奖;湖南城乡建设科技创新奖二等奖
+04
+服务与客户(04)
+主要服务地域(04-1): 全国范围
+主要客户类型(可多选)(04-2): 企业,个人,行政机关,社会团体
+05
+科研、标准制修订成果状况(05)
+科研情况(05-1)
+ 科研项目总计 23 项(05-101)
+ 其中,国家级项目 8 项(05-101-1)
+ 其中,省部级项目 5 项(05-101-2)
+ 科研经费总计 4058.0 万元(05-102)
+ 其中,国家级项目 2338.0 万元(05-102-1)
+ 其中,省部级项目 109.5 万元(05-102-2)
+标准制修订情况(05-2)
+2023/12/4 17:08
+检验检测机构数据查看页!
+qts.cnca.cn/qts/datareport/datareport/JyjcDataViewFlow.flow?repId=40288277857770f1018585ae16006421
+12/13
+ 标准制修订经费总计 155.0 万元(05-201)
+ 其中,国家标准 8 项(05-201-1)
+ 其中,行业标准 11 项(05-201-2)
+ 其中,地方标准 0 项(05-201-3)
+ 其中,国际标准 0 项(05-201-4)
+ 本机构人员是否在认证认可、检验检测相关领域国际标准化组织任职 是 (05-202)
+ 人员姓名: 包亦望 (05-203-1)
+ 担任职务: 国际标准化组织召集人 (05-203-2)
+06
+参加能力验证活动情况(06)
+ 本年度参加能力
+验证计划合计
+113 项(06-1)
+ 其中,国家级
+能力验证项目
+23 项(06-101)
+ 市场监管总局
+(国家认监委)能
+力验证项目
+16 项(06-101-1)
+ 国家有关行业
+主管部门能力验证
+项目
+7 项(06-101-2)
+ 省级能力验证
+项目
+2 项(06-102)
+ 国内能力验证
+提供者项目
+86 项(06-103)
+ 国际能力验证
+提供者和国家相关
+组织项目
+2 项(06-104)
+ 其他能力验证
+项目
+0 项(06-105)
+ 参加测量审核合
+计
+15 项(06-2)
+07
+机构发生变更情况
+机构本年度是否发生变更 是 (07-1)
+变更的类型为(可多选)(07-1): 检验检测报告授权签字人,资质认定检验检测项目取消,检验检
+测标准或者检验检测方法发生变更
+09
+机构参与一带一路建设情况(选填,限实际参与相关项目的机构填报)
+当年机构服务“一带一路”沿线国家的项目数合计: 个
+取得收入:万元
+10
+机构参与军民融合发展状况(选填,限实际参与相关项目的机构填报)
+机构参与军民融合的方式:
+当年军品合同签订额度:
+11
+工业产品质量控制和技术评价实验室情况
+是否工业和信息化部认定的“工业产品质量控制和技术评价实验室” 是
+ 实验室名称: 工业(建筑材料类)产品质量控制和技术评价CTC实验室 所属行业: 建材 授牌
+年份: 2012-02-13
+2023/12/4 17:08
+检验检测机构数据查看页!
+qts.cnca.cn/qts/datareport/datareport/JyjcDataViewFlow.flow?repId=40288277857770f1018585ae16006421
+13/13
+查看
+12
+互联网+检验检测开展情况(07)
+是否通过互联网开展检验检测业务? 否
+
+从业人员
+
+
+单位负责人:马振珠
+财务负责人:杨娟
+填表人:宋晓辉
+单位负责人电话:010-51167672
+财务负责人电话:010-51167902
+填表人电话:010-51167391
+资质认定联系人座
+机:
+010-010-
+51167391
+资质认定联系人手
+机:13381289801
+资质认定联系人邮
+箱:sxh@ctc.ac.cn
+资质认定联系人姓
+名:宋晓辉
+