c5c48813 by lihua

产品支持数据港产品上架

1 parent 3f1a31c6
...@@ -47,6 +47,7 @@ const isRegisterOptions = ref<any>([ ...@@ -47,6 +47,7 @@ const isRegisterOptions = ref<any>([
47 const damTypesOptions = ref<any>([ 47 const damTypesOptions = ref<any>([
48 { label: "自建", value: 1 }, 48 { label: "自建", value: 1 },
49 { label: "加工交付", value: 2 }, 49 { label: "加工交付", value: 2 },
50 { label: "可信数据空间", value: 5 },
50 ]) 51 ])
51 const searchItemList = ref([ 52 const searchItemList = ref([
52 { 53 {
...@@ -101,7 +102,7 @@ const searchItemList = ref([ ...@@ -101,7 +102,7 @@ const searchItemList = ref([
101 placeholder: "产品来源", 102 placeholder: "产品来源",
102 clearable: true, 103 clearable: true,
103 filterable: true, 104 filterable: true,
104 options: damTypesOptions.value, 105 options: props.dataSources != 1 ? damTypesOptions.value.slice(0, 2) : damTypesOptions.value,
105 props: { 106 props: {
106 value: 'value', 107 value: 'value',
107 label: 'label' 108 label: 'label'
...@@ -460,7 +461,7 @@ const handleUploadClose = (itemGuid) => { ...@@ -460,7 +461,7 @@ const handleUploadClose = (itemGuid) => {
460 </div> 461 </div>
461 <div class="mid-content"> 462 <div class="mid-content">
462 <div class="left">产品来源</div> 463 <div class="left">产品来源</div>
463 <div class="right">{{ item.foundMode ? (item.foundMode === 1 ? '自建' : '加工交付') : '--' 464 <div class="right">{{ item.foundMode ? (item.foundMode === 1 ? '自建' : (item.foundMode == 2 ? '加工交付' : (item.foundMode == 4 ? '江苏专区' : (item.foundMode == 5 ? '可信数据空间' : '专区')))) : '--'
464 }}</div> 465 }}</div>
465 </div> 466 </div>
466 <div class="mid-content"> 467 <div class="mid-content">
...@@ -469,7 +470,7 @@ const handleUploadClose = (itemGuid) => { ...@@ -469,7 +470,7 @@ const handleUploadClose = (itemGuid) => {
469 </div> 470 </div>
470 </div> 471 </div>
471 <div class="v-bottom"> 472 <div class="v-bottom">
472 <el-button plain v-if="!(item.isRegister == 'Y' || item.foundMode == 2)" 473 <el-button plain v-if="!(item.isRegister == 'Y' || item.foundMode == 2 || item.foundMode == 5)"
473 @click.stop="tableBtnClick(item, 'delete')">删除</el-button> 474 @click.stop="tableBtnClick(item, 'delete')">删除</el-button>
474 <el-button plain v-if="!(item.isRegister == 'Y')" @click.stop="handleDataClick(item)">编辑</el-button> 475 <el-button plain v-if="!(item.isRegister == 'Y')" @click.stop="handleDataClick(item)">编辑</el-button>
475 <el-button plain @click.stop="handleClickUploadBtn(item)" v-if="item.isRegister == 'Y'">上传交付物</el-button> 476 <el-button plain @click.stop="handleClickUploadBtn(item)" v-if="item.isRegister == 'Y'">上传交付物</el-button>
......
...@@ -92,7 +92,8 @@ const tableInfo = ref({ ...@@ -92,7 +92,8 @@ const tableInfo = ref({
92 id: "mapping-table", 92 id: "mapping-table",
93 fields: [ 93 fields: [
94 { label: "序号", type: "index", width: 56, align: "center", fixed: "left" }, 94 { label: "序号", type: "index", width: 56, align: "center", fixed: "left" },
95 { label: "数据产品编号", field: "damCode", width: 180 }, 95 { label: "数据产品编号", field: "productCode", width: 154 },
96 { label: "数据证书编号", field: "damCode", width: 154 },
96 { label: "数据产品名称", field: "damName", width: 180 }, 97 { label: "数据产品名称", field: "damName", width: 180 },
97 { 98 {
98 label: "产品类型", field: "damTypeName", width: 100 99 label: "产品类型", field: "damTypeName", width: 100
......
...@@ -63,7 +63,8 @@ const tableInfo = ref({ ...@@ -63,7 +63,8 @@ const tableInfo = ref({
63 id: "mapping-table", 63 id: "mapping-table",
64 fields: [ 64 fields: [
65 { label: "序号", type: "index", width: 56, align: "center", fixed: "left" }, 65 { label: "序号", type: "index", width: 56, align: "center", fixed: "left" },
66 { label: "数据产品编号", field: "damCode", width: 160 }, 66 { label: "数据产品编号", field: "productCode", width: 160 },
67 { label: "数据证书编号", field: "damCode", width: 160 },
67 { label: "数据产品名称", field: "damName", width: 140 }, 68 { label: "数据产品名称", field: "damName", width: 140 },
68 { 69 {
69 label: "产品类型", field: "damTypeName", width: 100 70 label: "产品类型", field: "damTypeName", width: 100
......
...@@ -183,6 +183,17 @@ const formInfo = ref<any>({ ...@@ -183,6 +183,17 @@ const formInfo = ref<any>({
183 visible: true 183 visible: true
184 }, 184 },
185 { 185 {
186 label: '产品编号',
187 type: 'input',
188 maxlength: 50,
189 placeholder: '请输入',
190 field: 'productCode',
191 default: '',
192 disabled: true,
193 required: false,
194 visible: false
195 },
196 {
186 label: "数据时间范围", 197 label: "数据时间范围",
187 type: "date-picker", 198 type: "date-picker",
188 field: "dateRange", 199 field: "dateRange",
...@@ -793,6 +804,8 @@ const submitForm = (btn, formEl, tosub = false) => { ...@@ -793,6 +804,8 @@ const submitForm = (btn, formEl, tosub = false) => {
793 params.timeAreaEnd = params.dateRange ? params.dateRange[1] : ''; 804 params.timeAreaEnd = params.dateRange ? params.dateRange[1] : '';
794 // 删除dateRange字段 805 // 删除dateRange字段
795 delete params.dateRange; 806 delete params.dateRange;
807 params.foundMode = currProductInfo.value?.foundMode;
808 params.productCode = currProductInfo.value?.productCode;
796 flowDetailLoading.value = true; 809 flowDetailLoading.value = true;
797 if (!route.query.exchangeGuid) { 810 if (!route.query.exchangeGuid) {
798 if (detailType == 'add') { 811 if (detailType == 'add') {
...@@ -1124,6 +1137,9 @@ const btnClick = (btn) => { ...@@ -1124,6 +1137,9 @@ const btnClick = (btn) => {
1124 const setFormItems = (row: any = null, isDetail = false) => { 1137 const setFormItems = (row: any = null, isDetail = false) => {
1125 console.log(row, '--------1---------'); 1138 console.log(row, '--------1---------');
1126 formInfo.value.items.forEach((item: any) => { 1139 formInfo.value.items.forEach((item: any) => {
1140 if (item.field == 'damType') {
1141 item.disabled = row.foundMode != 5;
1142 }
1127 if (item.field == 'productImg') { 1143 if (item.field == 'productImg') {
1128 // item.default = row ? (row.productPic ? [row.productPic] : row[item.field] || []) : [] 1144 // item.default = row ? (row.productPic ? [row.productPic] : row[item.field] || []) : []
1129 item.default = row.productPic && Object.keys(row.productPic).length ? [row.productPic] : [] 1145 item.default = row.productPic && Object.keys(row.productPic).length ? [row.productPic] : []
...@@ -1175,6 +1191,9 @@ const setFormItems = (row: any = null, isDetail = false) => { ...@@ -1175,6 +1191,9 @@ const setFormItems = (row: any = null, isDetail = false) => {
1175 if (row.timeAreaStart && row.timeAreaEnd) { 1191 if (row.timeAreaStart && row.timeAreaEnd) {
1176 item.default = [row.timeAreaStart, row.timeAreaEnd]; 1192 item.default = [row.timeAreaStart, row.timeAreaEnd];
1177 } 1193 }
1194 if (row.foundMode == 5) {
1195 item.default = []
1196 }
1178 // else { 1197 // else {
1179 // item.default = row ? [row.timeAreaStart, row.timeAreaEnd] : null; 1198 // item.default = row ? [row.timeAreaStart, row.timeAreaEnd] : null;
1180 // } 1199 // }
...@@ -1218,6 +1237,9 @@ const setFormItems = (row: any = null, isDetail = false) => { ...@@ -1218,6 +1237,9 @@ const setFormItems = (row: any = null, isDetail = false) => {
1218 }) 1237 })
1219 } 1238 }
1220 1239
1240 // 记录当前选中的数据产品
1241 const currProductInfo: any = ref({});
1242
1221 const selectChange = async (val, row, info) => { 1243 const selectChange = async (val, row, info) => {
1222 if (row.field == 'damName') { 1244 if (row.field == 'damName') {
1223 console.log(val, row, info, '--------1123123---------'); 1245 console.log(val, row, info, '--------1123123---------');
...@@ -1226,6 +1248,7 @@ const selectChange = async (val, row, info) => { ...@@ -1226,6 +1248,7 @@ const selectChange = async (val, row, info) => {
1226 } 1248 }
1227 const data = row.options.filter(o => o.damName == val); 1249 const data = row.options.filter(o => o.damName == val);
1228 const dataInfo = data.length ? data[0] : {}; 1250 const dataInfo = data.length ? data[0] : {};
1251 currProductInfo.value = dataInfo;
1229 let coverageArea = (data.length && data[0].coverageArea) ? data[0].coverageArea : []; 1252 let coverageArea = (data.length && data[0].coverageArea) ? data[0].coverageArea : [];
1230 await setFormItems({ ...info, ...dataInfo, coverageArea: coverageArea, content: dataInfo.propertyDescription || dataInfo.sceneDescription || info.content }); 1253 await setFormItems({ ...info, ...dataInfo, coverageArea: coverageArea, content: dataInfo.propertyDescription || dataInfo.sceneDescription || info.content });
1231 // formInfo.value.items.forEach((item: any) => { 1254 // formInfo.value.items.forEach((item: any) => {
...@@ -1250,13 +1273,15 @@ const selectChange = async (val, row, info) => { ...@@ -1250,13 +1273,15 @@ const selectChange = async (val, row, info) => {
1250 formInfo.value.items.at(1).default = data.length ? data[0].damType : ''; 1273 formInfo.value.items.at(1).default = data.length ? data[0].damType : '';
1251 // formInfo.value.items.at(2).default = data.length ? data[0].subjectDomain : ''; 1274 // formInfo.value.items.at(2).default = data.length ? data[0].subjectDomain : '';
1252 formInfo.value.items.at(2).default = data.length ? data[0].damCode : ''; 1275 formInfo.value.items.at(2).default = data.length ? data[0].damCode : '';
1276 formInfo.value.items.at(3).default = data.length ? data[0].productCode : '';
1277 formInfo.value.items.at(3).visible = !!data?.[0]?.productCode;
1253 if (data?.[0]?.dataStartDate) { 1278 if (data?.[0]?.dataStartDate) {
1254 formInfo.value.items.at(3).default = [data?.[0]?.dataStartDate, data?.[0]?.dataEndDate]; 1279 formInfo.value.items.at(4).default = [data?.[0]?.dataStartDate, data?.[0]?.dataEndDate];
1255 } 1280 }
1256 formInfo.value.items.at(4).defaultValue = data.length ? data[0].dataScale : ''; 1281 formInfo.value.items.at(5).defaultValue = data.length ? data[0].dataScale : '';
1257 formInfo.value.items.at(4).default = data.length && data[0].dataScale != null ? changeNum(data[0].dataScale, 0) : ''; 1282 formInfo.value.items.at(5).default = data.length && data[0].dataScale != null ? changeNum(data[0].dataScale, 0) : '';
1258 formInfo.value.items.at(5).defaultValue = data.length ? data[0].caseNumber : ''; 1283 formInfo.value.items.at(6).defaultValue = data.length ? data[0].caseNumber : '';
1259 formInfo.value.items.at(5).default = data.length && data[0].caseNumber != null ? changeNum(data[0].caseNumber, 0) : ''; 1284 formInfo.value.items.at(6).default = data.length && data[0].caseNumber != null ? changeNum(data[0].caseNumber, 0) : '';
1260 formInfo.value.items.at(-2).default = data.length ? data[0].damGuid : ''; 1285 formInfo.value.items.at(-2).default = data.length ? data[0].damGuid : '';
1261 formInfo.value.items.at(-1).default = data.length ? data[0].subjectDomain : ''; 1286 formInfo.value.items.at(-1).default = data.length ? data[0].subjectDomain : '';
1262 // formInfo.value.items.at(-3).required = data[0].damType != '1' && data[0].damType != '2'; 1287 // formInfo.value.items.at(-3).required = data[0].damType != '1' && data[0].damType != '2';
...@@ -1279,6 +1304,10 @@ const selectChange = async (val, row, info) => { ...@@ -1279,6 +1304,10 @@ const selectChange = async (val, row, info) => {
1279 setFormItems({ ...fInfo, coverageArea: coverageArea }); 1304 setFormItems({ ...fInfo, coverageArea: coverageArea });
1280 }); 1305 });
1281 } 1306 }
1307 } else if (row.field == 'pricingWay') {
1308 await setFormItems({ ...info });
1309 formInfo.value.items.at(10).visible = val != '4';
1310 formInfo.value.items.at(11).visible = val != '4';
1282 } 1311 }
1283 } 1312 }
1284 1313
...@@ -1334,7 +1363,7 @@ onBeforeMount(async () => { ...@@ -1334,7 +1363,7 @@ onBeforeMount(async () => {
1334 // case 1: 数交易所 case 2: 门户 1363 // case 1: 数交易所 case 2: 门户
1335 if (route.query.case == '2') { 1364 if (route.query.case == '2') {
1336 formInfo.value.items.forEach(item => { 1365 formInfo.value.items.forEach(item => {
1337 if (item.field == 'damCode' || item.field == 'exchangeName' || item.field == 'registrationCertificateInfo' || item.field == 'qualityEvaluationFileInfo' || item.field == 'qualityEvaluationInstitution' || item.field == 'costAssessmentFileInfo' || item.field == 'costAssessmentInstitution' || item.field == 'commitmentLetterInfo' || item.field == 'accreditFileInfo' || item.field == 'productDetailInfo') { 1366 if (item.field == 'productCode' || item.field == 'damCode' || item.field == 'exchangeName' || item.field == 'registrationCertificateInfo' || item.field == 'qualityEvaluationFileInfo' || item.field == 'qualityEvaluationInstitution' || item.field == 'costAssessmentFileInfo' || item.field == 'costAssessmentInstitution' || item.field == 'commitmentLetterInfo' || item.field == 'accreditFileInfo' || item.field == 'productDetailInfo') {
1338 item.visible = false; 1367 item.visible = false;
1339 } 1368 }
1340 }) 1369 })
...@@ -1929,6 +1958,10 @@ const rejectDialogBtnClick = (btn, info) => { ...@@ -1929,6 +1958,10 @@ const rejectDialogBtnClick = (btn, info) => {
1929 <span class="item_label">证书编号:</span> 1958 <span class="item_label">证书编号:</span>
1930 <span class="item_value">{{ flowDetail.damCode || '--' }}</span> 1959 <span class="item_value">{{ flowDetail.damCode || '--' }}</span>
1931 </div> 1960 </div>
1961 <div class="list_item" v-if="flowDetail.productCode">
1962 <span class="item_label">产品编号:</span>
1963 <span class="item_value">{{ flowDetail.productCode || '--' }}</span>
1964 </div>
1932 <div class="list_item"> 1965 <div class="list_item">
1933 <span class="item_label">数据时间范围:</span> 1966 <span class="item_label">数据时间范围:</span>
1934 <span class="item_value">{{ timeRangeInfo || '--' }}</span> 1967 <span class="item_value">{{ timeRangeInfo || '--' }}</span>
......
Styling with Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!