Compare commits
	
		
			9 Commits 
		
	
	
		
			b4b5f336b5
			...
			1888ec4fe5
		
	
	| Author | SHA1 | Date | 
|---|---|---|
|  | 1888ec4fe5 | |
|  | e132f84c48 | |
|  | aedd35a729 | |
|  | a98c44ee66 | |
|  | 5a2b1ca457 | |
|  | 43f398df19 | |
|  | 3f85e1bb4b | |
|  | 4c350071eb | |
|  | 6ed8c9fac9 | 
|  | @ -1,6 +1,6 @@ | ||||||
| { | { | ||||||
|   "name": "EICS", |   "name": "EICS", | ||||||
|   "version": "1.0.0", |   "version": "1.3.2", | ||||||
|   "scripts": { |   "scripts": { | ||||||
|     "dev": "vue-cli-service serve --open", |     "dev": "vue-cli-service serve --open", | ||||||
|     "build": "vue-cli-service build", |     "build": "vue-cli-service build", | ||||||
|  |  | ||||||
|  | @ -124,7 +124,7 @@ | ||||||
|           IRC Imaging System |           IRC Imaging System | ||||||
|         </p> |         </p> | ||||||
|         <p style="margin-bottom: 20px"> |         <p style="margin-bottom: 20px"> | ||||||
|           V1.3.1.001 |           V1.3.2.001 | ||||||
|         </p> |         </p> | ||||||
|         <p style="margin-bottom: 20px" v-if="language === 'zh'"> |         <p style="margin-bottom: 20px" v-if="language === 'zh'"> | ||||||
|           Copyright © {{ new Date().getFullYear() }} 上海展影医疗科技有限公司 版权所有 |           Copyright © {{ new Date().getFullYear() }} 上海展影医疗科技有限公司 版权所有 | ||||||
|  |  | ||||||
|  | @ -14,7 +14,7 @@ | ||||||
|     <!-- 临床数据 --> |     <!-- 临床数据 --> | ||||||
|     <div v-if="stack.isExistsClinicalData" class="info-cd" @click.stop="handleViewCD($event)"> |     <div v-if="stack.isExistsClinicalData" class="info-cd" @click.stop="handleViewCD($event)"> | ||||||
|       <el-tooltip class="item" effect="dark" :content="$t('trials:reading:button:clinicalData')" placement="bottom"> |       <el-tooltip class="item" effect="dark" :content="$t('trials:reading:button:clinicalData')" placement="bottom"> | ||||||
|         <svg-icon icon-class="159" class="svg-icon" /> |         <svg-icon icon-class="documentation" class="svg-icon"/> | ||||||
|       </el-tooltip> |       </el-tooltip> | ||||||
| 
 | 
 | ||||||
|     </div> |     </div> | ||||||
|  | @ -222,7 +222,8 @@ export default { | ||||||
|         visitTaskId: '', |         visitTaskId: '', | ||||||
|         taskBlindName: '', |         taskBlindName: '', | ||||||
|         frame: null, |         frame: null, | ||||||
|         imageRendered: false |         imageRendered: false, | ||||||
|  |         isExistsClinicalData:false | ||||||
|         // preventCache: true |         // preventCache: true | ||||||
|       }, |       }, | ||||||
|       dicomInfo: { |       dicomInfo: { | ||||||
|  | @ -1058,6 +1059,7 @@ export default { | ||||||
|         this.stack.seriesIndex = dicomSeries.seriesIndex |         this.stack.seriesIndex = dicomSeries.seriesIndex | ||||||
|         this.stack.sliceThickness = dicomSeries.sliceThickness |         this.stack.sliceThickness = dicomSeries.sliceThickness | ||||||
|         this.stack.instanceCount = dicomSeries.instanceCount |         this.stack.instanceCount = dicomSeries.instanceCount | ||||||
|  |         this.stack.isExistsClinicalData = dicomSeries.isExistsClinicalData | ||||||
|         // this.measuredData = dicomSeries.measuredData |         // this.measuredData = dicomSeries.measuredData | ||||||
|         var idx = this.visitTaskList.findIndex(i => i.VisitTaskId === dicomSeries.visitTaskId) |         var idx = this.visitTaskList.findIndex(i => i.VisitTaskId === dicomSeries.visitTaskId) | ||||||
|         this.stack.visitTaskNum = this.visitTaskList[idx].VisitTaskNum |         this.stack.visitTaskNum = this.visitTaskList[idx].VisitTaskNum | ||||||
|  |  | ||||||
|  | @ -482,7 +482,7 @@ export default { | ||||||
|         idx > -1 ? seriesInfo = seriesList[idx] : seriesInfo = seriesList[0] |         idx > -1 ? seriesInfo = seriesList[idx] : seriesInfo = seriesList[0] | ||||||
|       } |       } | ||||||
|       if (seriesInfo) { |       if (seriesInfo) { | ||||||
|         const index = Math.floor(seriesInfo.imageIds.length * ((baseObj.series.imageIdIndex + 1) / baseObj.series.instanceCount)) |         const index = Math.floor(seriesInfo.imageIds.length * ((baseObj.series.imageIdIndex + 1) / baseObj.series.imageIds.length)) | ||||||
|         seriesInfo.imageIdIndex = index > 0 ? index - 1 : 0 |         seriesInfo.imageIdIndex = index > 0 ? index - 1 : 0 | ||||||
|         obj.studyIndex = seriesInfo.studyIndex |         obj.studyIndex = seriesInfo.studyIndex | ||||||
|         obj.seriesIndex = seriesInfo.seriesIndex |         obj.seriesIndex = seriesInfo.seriesIndex | ||||||
|  |  | ||||||
|  | @ -11,6 +11,13 @@ | ||||||
|     @mouseup="sliderMouseup" |     @mouseup="sliderMouseup" | ||||||
|     @contextmenu.prevent="onContextmenu" |     @contextmenu.prevent="onContextmenu" | ||||||
|   > |   > | ||||||
|  |     <!-- 临床数据 --> | ||||||
|  |     <div v-if="stack.isExistsClinicalData" class="info-cd" @click.stop="handleViewCD($event)"> | ||||||
|  |       <el-tooltip class="item" effect="dark" :content="$t('trials:reading:button:clinicalData')" placement="bottom"> | ||||||
|  |         <svg-icon icon-class="documentation" class="svg-icon"/> | ||||||
|  |       </el-tooltip> | ||||||
|  | 
 | ||||||
|  |     </div> | ||||||
|     <!-- 切换访视 --> |     <!-- 切换访视 --> | ||||||
|     <div |     <div | ||||||
|       v-if="stack.imageRendered && isReadingTaskViewInOrder" |       v-if="stack.imageRendered && isReadingTaskViewInOrder" | ||||||
|  | @ -214,7 +221,8 @@ export default { | ||||||
|         visitTaskId: '', |         visitTaskId: '', | ||||||
|         taskBlindName: '', |         taskBlindName: '', | ||||||
|         frame: null, |         frame: null, | ||||||
|         imageRendered: false |         imageRendered: false, | ||||||
|  |         isExistsClinicalData:false | ||||||
|         // preventCache: true |         // preventCache: true | ||||||
|       }, |       }, | ||||||
|       dicomInfo: { |       dicomInfo: { | ||||||
|  | @ -1042,6 +1050,7 @@ export default { | ||||||
|         this.stack.seriesIndex = dicomSeries.seriesIndex |         this.stack.seriesIndex = dicomSeries.seriesIndex | ||||||
|         this.stack.sliceThickness = dicomSeries.sliceThickness |         this.stack.sliceThickness = dicomSeries.sliceThickness | ||||||
|         this.stack.instanceCount = dicomSeries.instanceCount |         this.stack.instanceCount = dicomSeries.instanceCount | ||||||
|  |         this.stack.isExistsClinicalData = dicomSeries.isExistsClinicalData | ||||||
|         // this.measuredData = dicomSeries.measuredData |         // this.measuredData = dicomSeries.measuredData | ||||||
|         var idx = this.visitTaskList.findIndex(i => i.VisitTaskId === dicomSeries.visitTaskId) |         var idx = this.visitTaskList.findIndex(i => i.VisitTaskId === dicomSeries.visitTaskId) | ||||||
|         this.stack.visitTaskNum = this.visitTaskList[idx].VisitTaskNum |         this.stack.visitTaskNum = this.visitTaskList[idx].VisitTaskNum | ||||||
|  | @ -1920,6 +1929,12 @@ export default { | ||||||
|       e.stopImmediatePropagation() |       e.stopImmediatePropagation() | ||||||
|       e.stopPropagation() |       e.stopPropagation() | ||||||
|       e.preventDefault() |       e.preventDefault() | ||||||
|  |     }, | ||||||
|  |     handleViewCD(e) { | ||||||
|  |       DicomEvent.$emit('previewCD', this.stack.visitTaskId) | ||||||
|  |       e.stopImmediatePropagation() | ||||||
|  |       e.stopPropagation() | ||||||
|  |       e.preventDefault() | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|   } |   } | ||||||
|  | @ -2008,7 +2023,15 @@ export default { | ||||||
|     font-size: 14px; |     font-size: 14px; | ||||||
|   } |   } | ||||||
| } | } | ||||||
| 
 | .info-cd{ | ||||||
|  |   position: absolute; | ||||||
|  |   left: 10px; | ||||||
|  |   top: 5px; | ||||||
|  |   text-align: left; | ||||||
|  |   color: #ddd; | ||||||
|  |   font-size: 18px; | ||||||
|  |   cursor: pointer; | ||||||
|  | } | ||||||
| .info-series { | .info-series { | ||||||
|   position: absolute; |   position: absolute; | ||||||
|   left: 10px; |   left: 10px; | ||||||
|  |  | ||||||
|  | @ -18,6 +18,11 @@ | ||||||
|       </div> |       </div> | ||||||
|       <el-table |       <el-table | ||||||
|         :data="questionForm[question.Id]"> |         :data="questionForm[question.Id]"> | ||||||
|  |         <el-table-column :label="$t('CustomizeQuestionFormItem:label:OrderMark')" width="60px" show-overflow-tooltip> | ||||||
|  |           <template slot-scope="scope"> | ||||||
|  |             {{question.OrderMark}}{{scope.$index + 1}} | ||||||
|  |           </template> | ||||||
|  |         </el-table-column> | ||||||
|         <el-table-column |         <el-table-column | ||||||
|           :prop="item.Id" |           :prop="item.Id" | ||||||
|           :label="item.QuestionName" |           :label="item.QuestionName" | ||||||
|  | @ -288,7 +293,7 @@ | ||||||
|               :visit-task-id="visitTaskId" |               :visit-task-id="visitTaskId" | ||||||
|               :criterion-id="criterionId" |               :criterion-id="criterionId" | ||||||
|               :type="addOrEdit.type" |               :type="addOrEdit.type" | ||||||
|               :CalculationList="CalculationList" |               :CalculationList="CalculationTabelList" | ||||||
|               @formItemTableNumberChange="formItemTableNumberChange" |               @formItemTableNumberChange="formItemTableNumberChange" | ||||||
|               @setFormItemData="setFormItemData" |               @setFormItemData="setFormItemData" | ||||||
|               @resetFormItemData="resetFormItemData" |               @resetFormItemData="resetFormItemData" | ||||||
|  | @ -368,7 +373,8 @@ export default { | ||||||
|       loading: false, |       loading: false, | ||||||
|       RowIndex: 0, |       RowIndex: 0, | ||||||
|       RowId: null, |       RowId: null, | ||||||
|       digitPlaces: 0 |       digitPlaces: 0, | ||||||
|  |       CalculationTabelList: [] | ||||||
|     } |     } | ||||||
|   }, |   }, | ||||||
|   watch: { |   watch: { | ||||||
|  | @ -411,7 +417,7 @@ export default { | ||||||
|       } |       } | ||||||
|     } |     } | ||||||
|     if (this.question.Type === 'table') { |     if (this.question.Type === 'table') { | ||||||
|       // this.getQuestionCalculateRelation() |       this.getQuestionCalculateRelation() | ||||||
|       if (this.questionForm[this.question.Id]) { |       if (this.questionForm[this.question.Id]) { | ||||||
|         this.QuestionsForm = {} |         this.QuestionsForm = {} | ||||||
|         this.question.TableQuestions.Questions.forEach(v => { |         this.question.TableQuestions.Questions.forEach(v => { | ||||||
|  | @ -511,10 +517,9 @@ export default { | ||||||
|     }, |     }, | ||||||
|     getQuestionCalculateRelation() { |     getQuestionCalculateRelation() { | ||||||
|       getQuestionCalculateRelation({ |       getQuestionCalculateRelation({ | ||||||
|         TrialReadingCriterionId: this.criterionId, |  | ||||||
|         ReadingQuestionId: this.question.Id |         ReadingQuestionId: this.question.Id | ||||||
|       }).then(res => { |       }).then(res => { | ||||||
|         this.CalculationList = res.Result |         this.CalculationTabelList = res.Result | ||||||
|       }) |       }) | ||||||
|     }, |     }, | ||||||
|     save() { |     save() { | ||||||
|  |  | ||||||
|  | @ -211,6 +211,12 @@ export default { | ||||||
|       type: String, |       type: String, | ||||||
|       required: true |       required: true | ||||||
|     }, |     }, | ||||||
|  |     CalculationList: { | ||||||
|  |       type: Array, | ||||||
|  |       default() { | ||||||
|  |         return [] | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|     readingTaskState: { |     readingTaskState: { | ||||||
|       type: Number, |       type: Number, | ||||||
|       required: true |       required: true | ||||||
|  | @ -248,14 +254,27 @@ export default { | ||||||
|       digitPlaces: 0 |       digitPlaces: 0 | ||||||
|     } |     } | ||||||
|   }, |   }, | ||||||
|  |   // watch: { | ||||||
|  |   //   questionForm: { | ||||||
|  |   //     deep: true, | ||||||
|  |   //     immediate: true, | ||||||
|  |   //     handler(v) { | ||||||
|  |   // | ||||||
|  |   //     } | ||||||
|  |   //   } | ||||||
|  |   // }, | ||||||
|   watch: { |   watch: { | ||||||
|     questionForm: { |     questionForm: { | ||||||
|       deep: true, |       deep: true, | ||||||
|       immediate: true, |       immediate: true, | ||||||
|       handler(v) { |       handler(v, oldv) { | ||||||
| 
 |         try { | ||||||
|  |           if (!v[this.question.Id] || !oldv[this.question.Id]) return | ||||||
|  |         } catch (e) { | ||||||
|  |         } | ||||||
|  |         this.formItemNumberChange(this.question.Id, false) | ||||||
|       } |       } | ||||||
|     } |     }, | ||||||
|   }, |   }, | ||||||
|   mounted() { |   mounted() { | ||||||
|     this.digitPlaces = localStorage.getItem('digitPlaces') ? parseInt(localStorage.getItem('digitPlaces')) : 0 |     this.digitPlaces = localStorage.getItem('digitPlaces') ? parseInt(localStorage.getItem('digitPlaces')) : 0 | ||||||
|  | @ -323,8 +342,95 @@ export default { | ||||||
|       } else { |       } else { | ||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|  |     logic(rules, num = 0) { | ||||||
|  |       try { | ||||||
|  |         if (rules.CalculateQuestionList.length === 0) { | ||||||
|  |           return false | ||||||
|  |         } | ||||||
|  |         var count = 0 | ||||||
|  |         var maxList = [], minList = [] | ||||||
|  |         rules.CalculateQuestionList.forEach((o, i) => { | ||||||
|  |           if (rules.CustomCalculateMark > 4) { | ||||||
|  |             if (i !== 0) { | ||||||
|  |               switch (rules.CustomCalculateMark) { | ||||||
|  |                 case 7: | ||||||
|  |                   count += parseFloat(this.questionForm[o.TableQuestionId]) | ||||||
|  |                   if (i === rules.CalculateQuestionList.length - 1) { | ||||||
|  |                     num = count / rules.CalculateQuestionList.length | ||||||
|  |                   } | ||||||
|  |                   break; | ||||||
|  |                 case 8: | ||||||
|  |                   maxList.push(this.questionForm[o.TableQuestionId]) | ||||||
|  |                   if (i === rules.CalculateQuestionList.length - 1) { | ||||||
|  |                     num = Math.max(...maxList) | ||||||
|  |                   } | ||||||
|  |                   break; | ||||||
|  |                 case 9: | ||||||
|  |                   minList.push(this.questionForm[o.TableQuestionId]) | ||||||
|  |                   if (i === rules.CalculateQuestionList.length - 1) { | ||||||
|  |                     num = Math.min(...minList) | ||||||
|  |                   } | ||||||
|  |                   break; | ||||||
|  |               } | ||||||
|  |             } else { | ||||||
|  |               maxList.push(this.questionForm[o.TableQuestionId]) | ||||||
|  |               minList.push(this.questionForm[o.TableQuestionId]) | ||||||
|  |               count = parseFloat(this.questionForm[o.TableQuestionId]) | ||||||
|  |               num = parseFloat(this.questionForm[o.TableQuestionId]) | ||||||
|  |             } | ||||||
|  |           } else { | ||||||
|  |             if (i !== 0) { | ||||||
|  |               switch (rules.CustomCalculateMark) { | ||||||
|  |                 case 1: | ||||||
|  |                   num += parseFloat(this.questionForm[o.TableQuestionId]) | ||||||
|  |                   break; | ||||||
|  |                 case 2: | ||||||
|  |                   num -= parseFloat(this.questionForm[o.TableQuestionId]) | ||||||
|  |                   break; | ||||||
|  |                 case 3: | ||||||
|  |                   num *= parseFloat(this.questionForm[o.TableQuestionId]) | ||||||
|  |                   break; | ||||||
|  |                 case 4: | ||||||
|  |                   if (parseFloat(this.questionForm[o.TableQuestionId]) === 0) { | ||||||
|  |                     num = 0 | ||||||
|  |                   } else { | ||||||
|  |                     num /= parseFloat(this.questionForm[o.TableQuestionId]) | ||||||
|  |                   } | ||||||
|  |                   break; | ||||||
|  |               } | ||||||
|  |             } else { | ||||||
|  |               num = parseFloat(this.questionForm[o.TableQuestionId]) | ||||||
|  |             } | ||||||
|  |           } | ||||||
|  |         }) | ||||||
|  |       } catch (e) { | ||||||
|  |         console.log(e) | ||||||
|  |       } | ||||||
|  |       var digitPlaces = parseInt(localStorage.getItem('digitPlaces')) | ||||||
|  |       if (rules.ValueType === 2) { | ||||||
|  |         num = num * 100 | ||||||
|  |       } | ||||||
|  |       return num.toFixed(digitPlaces) | ||||||
|  |     }, | ||||||
|     formItemNumberChange(v, question) { |     formItemNumberChange(v, question) { | ||||||
|       this.$emit('formItemTableNumberChange', v, question) |       console.log(this.CalculationList) | ||||||
|  |       this.CalculationList.forEach((v, i) => { | ||||||
|  |         console.log('v', v) | ||||||
|  |         var find = v.CalculateQuestionList.filter(o => { | ||||||
|  |           return o.QuestionId === question.Id | ||||||
|  |         }) | ||||||
|  |         console.log('find', find) | ||||||
|  |         // find的自动计算值number | ||||||
|  |         if (find) { | ||||||
|  |           var num = this.logic(v) | ||||||
|  |           console.log(num) | ||||||
|  |           if (num !== false) { | ||||||
|  |             this.$set(this.questionForm, v.QuestionId, num) | ||||||
|  |             // this.$emit('setFormItemData', { key: v.QuestionId, val: num }) | ||||||
|  |           } | ||||||
|  |         } | ||||||
|  |       }) | ||||||
|  |       // this.$emit('formItemTableNumberChange', v, question) | ||||||
|     }, |     }, | ||||||
|     resetChild(obj) { |     resetChild(obj) { | ||||||
|       obj.forEach(i => { |       obj.forEach(i => { | ||||||
|  |  | ||||||
|  | @ -476,7 +476,7 @@ export default { | ||||||
|         idx > -1 ? seriesInfo = seriesList[idx] : seriesInfo = seriesList[0] |         idx > -1 ? seriesInfo = seriesList[idx] : seriesInfo = seriesList[0] | ||||||
|       } |       } | ||||||
|       if (seriesInfo) { |       if (seriesInfo) { | ||||||
|         const index = Math.floor(seriesInfo.imageIds.length * ((baseObj.series.imageIdIndex + 1) / baseObj.series.instanceCount)) |         const index = Math.floor(seriesInfo.imageIds.length * ((baseObj.series.imageIdIndex + 1) / baseObj.series.imageIds.length)) | ||||||
|         seriesInfo.imageIdIndex = index > 0 ? index - 1 : 0 |         seriesInfo.imageIdIndex = index > 0 ? index - 1 : 0 | ||||||
|         obj.studyIndex = seriesInfo.studyIndex |         obj.studyIndex = seriesInfo.studyIndex | ||||||
|         obj.seriesIndex = seriesInfo.seriesIndex |         obj.seriesIndex = seriesInfo.seriesIndex | ||||||
|  |  | ||||||
|  | @ -447,8 +447,8 @@ | ||||||
|         </el-select> |         </el-select> | ||||||
|       </el-form-item> |       </el-form-item> | ||||||
|       <el-form-item |       <el-form-item | ||||||
|         v-if="(form.QuestionGenre === 0 || form.QuestionGenre === null) && (form.Type === 'select' || form.Type === 'radio') && isFromSystem" |         v-if="(form.Type === 'select' || form.Type === 'radio') && isFromSystem" | ||||||
|         :label="$t('trials:qcCfg:table:typeValue')" |         :label="$t('trials:readingUnit:qsList:title:defaultValue')" | ||||||
|       > |       > | ||||||
|         <el-select v-model="form.DefaultValue" clearable> |         <el-select v-model="form.DefaultValue" clearable> | ||||||
|           <el-option |           <el-option | ||||||
|  | @ -459,6 +459,15 @@ | ||||||
|           /> |           /> | ||||||
|         </el-select> |         </el-select> | ||||||
|       </el-form-item> |       </el-form-item> | ||||||
|  |       <el-form-item | ||||||
|  |         v-if="(form.Type === 'number') && !isFromSystem" | ||||||
|  |         :label="$t('trials:readingUnit:qsList:title:defaultValue')" | ||||||
|  |       > | ||||||
|  |         <el-input | ||||||
|  |           :disabled="form.DataSource === 1" | ||||||
|  |           v-model="form.DefaultValue" | ||||||
|  |         /> | ||||||
|  |       </el-form-item> | ||||||
|       <!-- 分组 --> |       <!-- 分组 --> | ||||||
|       <el-form-item |       <el-form-item | ||||||
|         v-if="form.Type !== 'group'" |         v-if="form.Type !== 'group'" | ||||||
|  |  | ||||||
|  | @ -69,6 +69,21 @@ | ||||||
|           v-model="form.IsCopy" |           v-model="form.IsCopy" | ||||||
|         /> |         /> | ||||||
|       </el-form-item> |       </el-form-item> | ||||||
|  |       <!-- 问题数据来源 --> | ||||||
|  |       <el-form-item v-if="form.Type === 'number'" :label="$t('trials:readingUnit:qsList:title:dataSource')" | ||||||
|  |                     prop="DataSource"> | ||||||
|  |         <el-radio-group | ||||||
|  |           v-model="form.DataSource" | ||||||
|  |         > | ||||||
|  |           <el-radio | ||||||
|  |             v-for="item of $d.DataSource" | ||||||
|  |             :key="`DataSource${item.value}`" | ||||||
|  |             :label="item.value" | ||||||
|  |           > | ||||||
|  |             {{ item.label }} | ||||||
|  |           </el-radio> | ||||||
|  |         </el-radio-group> | ||||||
|  |       </el-form-item> | ||||||
|       <el-form-item |       <el-form-item | ||||||
|         v-if="form.Type === 'number'" |         v-if="form.Type === 'number'" | ||||||
|         :label="$t('trials:readingUnit:qsList:title:valueType')" |         :label="$t('trials:readingUnit:qsList:title:valueType')" | ||||||
|  | @ -135,14 +150,26 @@ | ||||||
|             style="line-height: 40px;" |             style="line-height: 40px;" | ||||||
|             @change="(v) => CustomCalculateMarkChange(v)" |             @change="(v) => CustomCalculateMarkChange(v)" | ||||||
|           > |           > | ||||||
|             <el-radio |             <div> | ||||||
|               v-for="item of $d.CustomCalculateMark" |               <el-radio | ||||||
|               v-if="item.value <= 4" |                 v-for="item of $d.CustomCalculateMark" | ||||||
|               :key="`CustomCalculateMark${item.value}`" |                 v-show="item.value <= 4" | ||||||
|               :label="item.value" |                 :key="`CustomCalculateMark${item.value}`" | ||||||
|             > |                 :label="item.value" | ||||||
|               {{ item.label }} |               > | ||||||
|             </el-radio> |                 {{ item.label }} | ||||||
|  |               </el-radio> | ||||||
|  |             </div> | ||||||
|  |             <div> | ||||||
|  |               <el-radio | ||||||
|  |                 v-for="item of $d.CustomCalculateMark" | ||||||
|  |                 v-show="item.value > 6" | ||||||
|  |                 :key="`CustomCalculateMark${item.value}`" | ||||||
|  |                 :label="item.value" | ||||||
|  |               > | ||||||
|  |                 {{ item.label }} | ||||||
|  |               </el-radio> | ||||||
|  |             </div> | ||||||
|           </el-radio-group> |           </el-radio-group> | ||||||
|         </el-form-item> |         </el-form-item> | ||||||
|         <el-table |         <el-table | ||||||
|  | @ -174,16 +201,12 @@ | ||||||
|             min-width="180" |             min-width="180" | ||||||
|           > |           > | ||||||
|             <template slot-scope="scope"> |             <template slot-scope="scope"> | ||||||
|               <el-select v-if="!scope.row.IsTable" v-model="scope.row.TableQuestionId" clearable> |               <el-select v-model="scope.row.TableQuestionId" clearable> | ||||||
|                 <el-option v-for="item of Questions" :key="item.QuestionId" :label="item.QuestionName" :value="item.QuestionId" /> |                 <el-option v-for="item of Questions" :key="item.QuestionId" :label="item.QuestionName" :value="item.QuestionId" /> | ||||||
|               </el-select> |               </el-select> | ||||||
|               <el-select v-if="scope.row.IsTable" v-model="scope.row.TableQuestionId" clearable> |  | ||||||
|                 <el-option v-for="item of !scope.row.QuestionId ? [] : tableQuestions.find(v => v.QuestionId === scope.row.QuestionId).TableQuestions" :key="item.QuestionId" :label="item.QuestionName" :value="item.QuestionId" /> |  | ||||||
|               </el-select> |  | ||||||
|             </template> |             </template> | ||||||
|           </el-table-column> |           </el-table-column> | ||||||
|           <el-table-column |           <el-table-column | ||||||
|             v-if="form.CustomCalculateMark <= 4" |  | ||||||
|             :label="$t('common:action:action')" |             :label="$t('common:action:action')" | ||||||
|             prop="TableQuestionId" |             prop="TableQuestionId" | ||||||
|             show-overflow-tooltip |             show-overflow-tooltip | ||||||
|  | @ -620,7 +643,20 @@ export default { | ||||||
|             } |             } | ||||||
|           } |           } | ||||||
|         } |         } | ||||||
| 
 |         // for (const k in this.form) { | ||||||
|  |         //   if (k === 'CalculateQuestions' && this.data[k] !== undefined) { | ||||||
|  |         //     console.log(this.data[k]) | ||||||
|  |         //     this.form[k] = JSON.parse(this.data[k]) | ||||||
|  |         //     console.log('CalculateQuestions', this.form[k]) | ||||||
|  |         //   } else if (k === 'ClassifyAlgorithms' && this.data[k] !== undefined && this.data[k] !== '') { | ||||||
|  |         //     this.ClassifyAlgorithmsList = JSON.parse(this.data[k]) | ||||||
|  |         //     console.log(11111, this.form) | ||||||
|  |         //   } else { | ||||||
|  |         //     if (this.data.hasOwnProperty(k)) { | ||||||
|  |         //       this.form[k] = this.data[k] | ||||||
|  |         //     } | ||||||
|  |         //   } | ||||||
|  |         // } | ||||||
|         if (this.form.ParentId) { |         if (this.form.ParentId) { | ||||||
|           var index = this.parentOptions.findIndex(item => { |           var index = this.parentOptions.findIndex(item => { | ||||||
|             return item.QuestionId === this.form.ParentId |             return item.QuestionId === this.form.ParentId | ||||||
|  |  | ||||||
|  | @ -491,7 +491,7 @@ | ||||||
|           </el-tab-pane> |           </el-tab-pane> | ||||||
|           <!-- 临床数据采集 --> |           <!-- 临床数据采集 --> | ||||||
|           <el-tab-pane |           <el-tab-pane | ||||||
|             v-if="rowData.IsBaseLine && otherInfo.ClinicalInformationTransmissionEnum > 0 && otherInfo.IsHaveSubjectClinicalData" |             v-if="rowData.IsBaseLine && (otherInfo.IsHaveSubjectClinicalData || otherInfo.IsHaveVisitClinicalData)" | ||||||
|             :label="$t('trials:uploadClinicalData:tab:uploadClinicalData')" |             :label="$t('trials:uploadClinicalData:tab:uploadClinicalData')" | ||||||
|             name="clinical-data" |             name="clinical-data" | ||||||
|           > |           > | ||||||
|  | @ -499,7 +499,7 @@ | ||||||
|           </el-tab-pane> |           </el-tab-pane> | ||||||
|           <!-- 临床数据采集2 --> |           <!-- 临床数据采集2 --> | ||||||
|           <el-tab-pane |           <el-tab-pane | ||||||
|             v-if="!rowData.IsBaseLine && otherInfo.ClinicalInformationTransmissionEnum > 0 && otherInfo.IsHaveVisitClinicalData" |             v-if="!rowData.IsBaseLine && otherInfo.IsHaveVisitClinicalData" | ||||||
|             :label="$t('trials:uploadClinicalData:tab:uploadClinicalData')" |             :label="$t('trials:uploadClinicalData:tab:uploadClinicalData')" | ||||||
|             name="clinical-data" |             name="clinical-data" | ||||||
|           > |           > | ||||||
|  | @ -572,10 +572,11 @@ | ||||||
|           <UploadNonDicomFiles v-if="rowData.Id" :data="rowData" :subject-visit-id="rowData.Id" :body-parts="otherInfo.BodyPartTypes" :modalities="otherInfo.Modalitys" :allow-add-or-edit="false" @getList="getList"/> |           <UploadNonDicomFiles v-if="rowData.Id" :data="rowData" :subject-visit-id="rowData.Id" :body-parts="otherInfo.BodyPartTypes" :modalities="otherInfo.Modalitys" :allow-add-or-edit="false" @getList="getList"/> | ||||||
|         </el-card> |         </el-card> | ||||||
|         <!-- 临床数据 --> |         <!-- 临床数据 --> | ||||||
|         <h4 v-if="rowData.IsBaseLine && otherInfo.ClinicalInformationTransmissionEnum > 0 && otherInfo.IsHaveSubjectClinicalData" class="box-title" style="margin-top:10px;"> |         <!-- 基线显示受试者级别和方式级别的临床数据 --> | ||||||
|  |         <h4 v-if="rowData.IsBaseLine && otherInfo.ClinicalInformationTransmissionEnum > 0 && (otherInfo.IsHaveSubjectClinicalData || otherInfo.IsHaveVisitClinicalData)" class="box-title" style="margin-top:10px;"> | ||||||
|           {{ $t('trials:crcUpload:label:clinicalData') }} |           {{ $t('trials:crcUpload:label:clinicalData') }} | ||||||
|         </h4> |         </h4> | ||||||
|         <el-card v-if="rowData.IsBaseLine && otherInfo.ClinicalInformationTransmissionEnum > 0 && otherInfo.IsHaveSubjectClinicalData" class="box-card"> |         <el-card v-if="rowData.IsBaseLine && otherInfo.ClinicalInformationTransmissionEnum > 0 && (otherInfo.IsHaveSubjectClinicalData || otherInfo.IsHaveVisitClinicalData)" class="box-card"> | ||||||
|           <UploadClinicalData v-if="rowData.Id && rowData.IsBaseLine" :enum-type="otherInfo.ClinicalInformationTransmissionEnum" :allow-add-or-edit="false" :data="rowData" :subject-visit-id="rowData.Id" @getList="getList" /> |           <UploadClinicalData v-if="rowData.Id && rowData.IsBaseLine" :enum-type="otherInfo.ClinicalInformationTransmissionEnum" :allow-add-or-edit="false" :data="rowData" :subject-visit-id="rowData.Id" @getList="getList" /> | ||||||
|         </el-card> |         </el-card> | ||||||
|         <h4 v-if="!rowData.IsBaseLine && otherInfo.ClinicalInformationTransmissionEnum > 0 && otherInfo.IsHaveVisitClinicalData" class="box-title" style="margin-top:10px;"> |         <h4 v-if="!rowData.IsBaseLine && otherInfo.ClinicalInformationTransmissionEnum > 0 && otherInfo.IsHaveVisitClinicalData" class="box-title" style="margin-top:10px;"> | ||||||
|  |  | ||||||
|  | @ -63,7 +63,8 @@ module.exports = { | ||||||
|         // target: 'http://123.56.181.144:8000/api', // 国内测试环境
 |         // target: 'http://123.56.181.144:8000/api', // 国内测试环境
 | ||||||
|         // target: 'http://123.56.94.154:8079', // 国内测试环境2
 |         // target: 'http://123.56.94.154:8079', // 国内测试环境2
 | ||||||
|         // target: 'http://123.56.94.154:7000', // 国内测试环境2
 |         // target: 'http://123.56.94.154:7000', // 国内测试环境2
 | ||||||
|         target: 'http://123.56.94.154:30668', |         target: 'http://123.56.94.154:30000', | ||||||
|  |         // target: 'http://47.117.164.182:7060/',
 | ||||||
|         // target: 'http://123.56.181.144:7000',
 |         // target: 'http://123.56.181.144:7000',
 | ||||||
|         changeOrigin: true, |         changeOrigin: true, | ||||||
|         secure: false, |         secure: false, | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue