Procházet zdrojové kódy

【系统服务包】【机构服务包】详情显示问题

张田田 před 10 měsíci
rodič
revize
21a410935a

+ 5 - 4
src/pages/index/care/institutionService.vue

@@ -171,8 +171,9 @@ function seeInstitutionDetail(model: SystemCwModel, index: number) {
     title: model?.id ? `机构服务详情` : `新增机构服务`,
     // height: 700,
     // width: 1000,
-    height: window.innerHeight,
-    width: window.innerWidth,
+    height: '100vh',
+    width: '100vw',
+    fullscreen: true,
     escClosable: true,
     destroyOnClose: true,
     id: `servicePackageDetail-modal`,
@@ -216,8 +217,8 @@ function editInstitution(model?: SystemCwModel, index?: number) {
     title: model?.id ? `修改机构服务` : `新增机构服务`,
     // height: 700,
     // width: 1200,
-    height: window.innerHeight,
-    width: window.innerWidth,
+    height: '100vh',
+    width: '100vw',
     // position: {
     //   top: Math.min(100, window.innerHeight * 0.1),
     //   left: Math.min(100, window.innerWidth * 0.1),

+ 2 - 2
src/pages/index/care/systemService.vue

@@ -178,13 +178,13 @@ function deleteSystemService(model: SystemCwModel, index: number) {
 }
 
 function seeInstitution(model?: SystemCwModel, index?: number) {
-  const types = 'institution';
+  const types = 'system';
   VxeUI.modal.open({
     id: 'servicePackageDetail-modal',
     title: '系统服务',
     // height: 700,
     // width: 1000,
-    height: window.innerHeight,
+      height: window.innerHeight,
     width: window.innerWidth,
     escClosable: true,
     destroyOnClose: true,

+ 1 - 1
src/request/api/care.api.ts

@@ -275,7 +275,7 @@ export function addConditioningSchemeMethod(data: Partial<OpenConditioningScheme
 // 根据调理包id获取调理包详情
 export function getConditioningRecordDetailMethod(data: Partial<SystemCwModel>) {
   console.log('获取调理包详情',data);
-  if(data.types === 'institution'){
+  if(data.types === 'institution' || data.types === 'system'){
     // 机构调理包详情
     return request.Post(`/fdhb-pc/conditioningManage/wrap/getCwDetailById/${data.id}`, {
       name: 'get-conditioning-record-detail',

+ 0 - 16
src/service/EditSystemService.vue

@@ -748,22 +748,6 @@ function openPopover() {
           </a-select>
         </div>
       </div>
-      <!-- <div v-for="(item, idx) in formData.cwPatientMatchRules" :key="idx" style="display: flex; align-items: center; margin-bottom: 8px">
-        <span>情况{{ idx + 1 }} 专病:</span>
-        <RemoteSelect :load="pageMedicineMethod" key-prop="name" v-model:value="item.diagnoseDisease" style="margin: 0 8px" :multiple="multiple"/>
-        <span>且 证型:</span>
-        <RemoteSelect :load="pageDiagnoseTypeMethod" key-prop="name" v-model:value="item.diagnoseSyndrome.name" style="margin: 0 8px" :multiple="multiple"  />
-        <span>且 体质:</span>
-        <a-select v-model="item.constitutionGroup" style="width: 120px; margin: 0 8px" placeholder="请选择" allowClear mode="multiple">
-          <a-select-option v-for="option in constitutionGroups" :key="option.id" :value="option.id" placeholder="请选择">{{ option.name }}</a-select-option>
-        </a-select>
-        <a-button v-if="(formData.cwPatientMatchRules?.length ?? 0) > 1" @click="removeSituation(idx)" type="text" danger>
-          <MinusCircleOutlined />
-        </a-button>
-        <a-button v-if="idx === (formData.cwPatientMatchRules?.length ?? 0) - 1" @click="addSituation" type="text">
-          <PlusCircleOutlined />
-        </a-button>
-      </div> -->
     </div>
 
     <div style="margin-bottom: 16px">

+ 72 - 9
src/service/ServicePackageDetail.vue

@@ -17,6 +17,10 @@ onMounted(async () => {
     notification.error({ message: '获取数据失败' });
   }
 });
+const visible = ref<boolean>(false);
+const setVisible = (value: boolean): void => {
+  visible.value = value;
+};
 </script>
 
 <template>
@@ -39,11 +43,73 @@ onMounted(async () => {
                     ? '已完结'
                     : ''
       }}</span>
-      <span v-if="tableData?.diagnosis || tableData?.diagnoseDiseaseNames?.length>0" >疾病名称:{{ tableData?.diagnosis || tableData?.diagnoseDiseaseNames?.join(',') }}</span>
-      <span v-if="tableData?.symptom || tableData?.diagnoseSyndromeNames?.length>0" >证型:{{ tableData?.symptom || tableData?.diagnoseSyndromeNames?.join(',') }}</span>
+
+      <div>
+        <div class="flex mb-2" style="align-items: center">
+          <!-- 机构名称 -->
+          <div class="mr-10" v-if="props.data?.types === 'institution'" style="display: flex; align-items: center; margin-bottom: 0">
+            <span style="white-space: nowrap; margin-right: 8px">机构名称:</span>
+            <span>{{ tableData?.institutionName }}</span>
+          </div>
+          <!-- 服务包名称 -->
+          <div class="mr-6" style="display: flex; align-items: center; margin-bottom: 0">
+            <span style="white-space: nowrap; margin-right: 8px">服务包名称:</span>
+            <span>{{ tableData?.name }}</span>
+          </div>
+          <!-- 服务形象照 -->
+          <div class="flex" v-if="props.data?.types === 'institution'" style="align-items: center; margin-bottom: 0">
+            <div class="w-20" style="white-space: nowrap; margin-right: 8px">服务形象照:</div>
+            <a-image
+              :width="100"
+              :height="100"
+              :preview="{
+                visible,
+                onVisibleChange: setVisible,
+              }"
+              :src="tableData?.photo"
+            />
+          </div>
+        </div>
+
+        <div style="margin-bottom: 16px">
+          <div class="mb-3">适用情况</div>
+          <div class="flex items-center mb-3" v-if="tableData?.conditioningWrapPatientMatchRule?.sex || tableData?.conditioningWrapPatientMatchRule?.age">
+            <span class="w-20">使用限制</span>
+            <div class="mr-10" v-if="tableData?.conditioningWrapPatientMatchRule?.sex">
+              <span>性别:{{ tableData?.conditioningWrapPatientMatchRule?.sex }}</span>
+            </div>
+            <div v-if="tableData?.conditioningWrapPatientMatchRule?.age">
+              <span>年龄:{{ tableData?.conditioningWrapPatientMatchRule?.age }}</span>
+            </div>
+          </div>
+          <div class="flex items-center" v-if="tableData?.conditioningWrapPatientMatchRule?.diagnoseDiseaseNames?.length > 0 || tableData?.conditioningWrapPatientMatchRule?.diagnoseSyndromeNames?.length > 0 || tableData?.conditioningWrapPatientMatchRule?.constitutionGroupNames?.length > 0 || tableData?.conditioningWrapPatientMatchRule?.willillStateNames?.length > 0">
+            <span class="w-20">适用</span>
+            <div class="mr-10 flex items-center" v-if="tableData?.conditioningWrapPatientMatchRule?.diagnoseDiseaseNames?.length > 0">
+              <span>专病:</span>
+              <span>{{ tableData?.conditioningWrapPatientMatchRule?.diagnoseDiseaseNames?.join(',') }}</span>
+            </div>
+            <div class="mr-10 flex items-center" v-if="tableData?.conditioningWrapPatientMatchRule?.diagnoseSyndromeNames?.length > 0">
+              <span>证型:</span>
+              <span>{{ tableData?.conditioningWrapPatientMatchRule?.diagnoseSyndromeNames?.join(',') }}</span>
+            </div>
+
+            <div class="flex items-center mr-10" v-if="tableData?.conditioningWrapPatientMatchRule?.constitutionGroupNames?.length > 0">
+              <span>体质:</span>
+              <span>{{ tableData?.conditioningWrapPatientMatchRule?.constitutionGroupNames?.join(',') }}</span>
+            </div>
+
+            <div v-if="tableData?.conditioningWrapPatientMatchRule?.willillStateNames?.length > 0">
+              <span>欲病状态:</span>
+              <span>{{ tableData?.conditioningWrapPatientMatchRule?.willillStateNames?.join(',') }}</span>
+            </div>
+          </div>
+        </div>
+      </div>
+      <!-- <span v-if="tableData?.diagnosis || tableData?.diagnoseDiseaseNames?.length > 0">疾病名称:{{ tableData?.diagnosis || tableData?.diagnoseDiseaseNames?.join(',') }}</span>
+      <span v-if="tableData?.symptom || tableData?.diagnoseSyndromeNames?.length > 0">证型:{{ tableData?.symptom || tableData?.diagnoseSyndromeNames?.join(',') }}</span>
       <span>开具医生:{{ tableData?.createBy }}</span>
       <span>开具时间:{{ tableData?.createTime }}</span>
-      <span v-if="tableData?.estimatedEndDate">调养周期:{{ tableData?.estimatedStartDate }} - {{ tableData?.estimatedEndDate }}</span>
+      <span v-if="tableData?.estimatedEndDate">调养周期:{{ tableData?.estimatedStartDate }} - {{ tableData?.estimatedEndDate }}</span> -->
     </div>
 
     <!-- 表格和作废字样包裹层 -->
@@ -54,9 +120,7 @@ onMounted(async () => {
         <vxe-column field="days" title="周期" align="center" :disabled="true" />
         <vxe-column field="frequencyType" title="频率" width="auto">
           <template #default="{ row }">
-            <div v-if="row.frequencyType === '不限'">
-             不限
-            </div>
+            <div v-if="row.frequencyType === '不限'">不限</div>
             <div style="display: flex; align-items: center" v-else>
               <span>每</span>
               <a-input v-model:value="row.frequencyType" style="width: 60px" @change="() => calculateCount(row)" :disabled="true" />
@@ -64,7 +128,6 @@ onMounted(async () => {
               <a-input v-model:value="row.frequencyMeasure" style="width: 60px" @change="() => calculateCount(row)" :disabled="true" />
               <span>{{ row.conditioningProgramDetail?.cpFixedPricingRule?.pricingUnit }}</span>
             </div>
-           
           </template>
         </vxe-column>
         <vxe-column field="conditioningProgramDetail.conditioningProgramType" title="方案类型" align="center" />
@@ -124,8 +187,8 @@ onMounted(async () => {
   background: #fff;
 }
 .header {
-  display: flex;
-  align-items: center;
+  /* display: flex;
+  align-items: center; */
   gap: 24px;
   margin-bottom: 12px;
 }