张田田 7 місяців тому
батько
коміт
8e380fa889
2 змінених файлів з 21 додано та 15 видалено
  1. 18 12
      src/pages/index/care/issueService.vue
  2. 3 3
      src/service/EditSystemService.vue

+ 18 - 12
src/pages/index/care/issueService.vue

@@ -568,14 +568,16 @@ function calculateCount(row: any) {
   } else if (pricingType === '1') {
   } else if (pricingType === '1') {
     // 按穴位计价
     // 按穴位计价
     const frequencyType = Number(row.frequencyType) || 0;
     const frequencyType = Number(row.frequencyType) || 0;
-    row.totalMeasure = Math.ceil((period / frequencyType) * frequency);
+    row.totalMeasure = Math.ceil(period / frequencyType) * frequency;
+    // console.log(frequencyType, 'frequencyType', frequency, period, row.totalMeasure);
+    // console.log(acCount, maxCount, 'acCount, maxCount', row.conditioningProgramDetail.cpDynamicPricingRule?.[1]?.priceType);
     if (acCount > maxCount) {
     if (acCount > maxCount) {
       if (row.conditioningProgramDetail.cpDynamicPricingRule?.[1]?.priceType === 0) {
       if (row.conditioningProgramDetail.cpDynamicPricingRule?.[1]?.priceType === 0) {
         // 单价
         // 单价
         if (acCount > 0) {
         if (acCount > 0) {
           let unitPrice: number = row.conditioningProgramDetail.cpDynamicPricingRule[1].price * acCount;
           let unitPrice: number = row.conditioningProgramDetail.cpDynamicPricingRule[1].price * acCount;
           row.unitPrice = unitPrice;
           row.unitPrice = unitPrice;
-          row.totalPrice = Math.ceil((period / frequencyType) * frequency * unitPrice);
+          row.totalPrice = row.totalMeasure * unitPrice;
         } else {
         } else {
           row.unitPrice = '-';
           row.unitPrice = '-';
           row.totalPrice = 0;
           row.totalPrice = 0;
@@ -588,13 +590,16 @@ function calculateCount(row: any) {
         row.totalPrice = row.conditioningProgramDetail.cpDynamicPricingRule[1].price * row.totalMeasure;
         row.totalPrice = row.conditioningProgramDetail.cpDynamicPricingRule[1].price * row.totalMeasure;
       }
       }
     } else {
     } else {
+      // console.log(row.conditioningProgramDetail.cpDynamicPricingRule, 'row.conditioningProgramDetail.cpDynamicPricingRule?.length');
       if (row.conditioningProgramDetail.cpDynamicPricingRule?.length > 0) {
       if (row.conditioningProgramDetail.cpDynamicPricingRule?.length > 0) {
         if (row.conditioningProgramDetail.cpDynamicPricingRule?.[0]?.priceType === 0) {
         if (row.conditioningProgramDetail.cpDynamicPricingRule?.[0]?.priceType === 0) {
           // 单价
           // 单价
           if (acCount > 0) {
           if (acCount > 0) {
             let unitPrice: number = row.conditioningProgramDetail.cpDynamicPricingRule[0].price * acCount;
             let unitPrice: number = row.conditioningProgramDetail.cpDynamicPricingRule[0].price * acCount;
             row.unitPrice = unitPrice;
             row.unitPrice = unitPrice;
-            row.totalPrice = Math.ceil((period / frequencyType) * frequency * unitPrice);
+
+            row.totalPrice = row.totalMeasure * unitPrice;
+            // console.log(unitPrice, 'unitPrice', row.totalPrice, 'row.totalPrice', period, frequencyType, frequency, acCount);
           } else {
           } else {
             row.unitPrice = '-';
             row.unitPrice = '-';
             row.totalPrice = 0;
             row.totalPrice = 0;
@@ -605,6 +610,7 @@ function calculateCount(row: any) {
           let unitPrice: number = row.conditioningProgramDetail.cpDynamicPricingRule[0].price;
           let unitPrice: number = row.conditioningProgramDetail.cpDynamicPricingRule[0].price;
           row.unitPrice = unitPrice;
           row.unitPrice = unitPrice;
           row.totalPrice = row.conditioningProgramDetail.cpDynamicPricingRule[0].price * row.totalMeasure;
           row.totalPrice = row.conditioningProgramDetail.cpDynamicPricingRule[0].price * row.totalMeasure;
+          // console.log(row.totalPrice, 'row.totalPrice', row.conditioningProgramDetail.cpDynamicPricingRule[0].price, row.totalMeasure);
         }
         }
       }
       }
     }
     }
@@ -674,7 +680,7 @@ async function handleSubmit() {
     notification.error({ message: '请输入有效的手机号码' });
     notification.error({ message: '请输入有效的手机号码' });
     return;
     return;
   }
   }
-  if(!form.estimatedStartDate) {
+  if (!form.estimatedStartDate) {
     notification.error({ message: '请选择调养日期' });
     notification.error({ message: '请选择调养日期' });
     return;
     return;
   }
   }
@@ -1171,14 +1177,14 @@ function openPatientHealthRecord(row: { id: string }, showType: 'analysis' | 'sc
                   @click="currentPatient?.status === '0' ? null : editPart(row)"
                   @click="currentPatient?.status === '0' ? null : editPart(row)"
                   :style="{ color: '#1890ff', cursor: 'pointer' }"
                   :style="{ color: '#1890ff', cursor: 'pointer' }"
                 >
                 >
-                  {{ (() => {
-                    const acuPointNames = Array.isArray(row?.acuPointNames) ? row.acuPointNames : [];
-                    const acuMeridianNames = Array.isArray(row?.acuMeridianNames) ? row.acuMeridianNames : [];
-                    const combined = acuPointNames.concat(acuMeridianNames).join('、');
-                    return combined === '' ? 
-                      (currentPatient?.status === '0' ? '' : '编辑') : 
-                      combined;
-                  })() }}
+                  {{
+                    (() => {
+                      const acuPointNames = Array.isArray(row?.acuPointNames) ? row.acuPointNames : [];
+                      const acuMeridianNames = Array.isArray(row?.acuMeridianNames) ? row.acuMeridianNames : [];
+                      const combined = acuPointNames.concat(acuMeridianNames).join('、');
+                      return combined === '' ? (currentPatient?.status === '0' ? '' : '编辑') : combined;
+                    })()
+                  }}
                 </a>
                 </a>
               </template>
               </template>
             </vxe-column>
             </vxe-column>

+ 3 - 3
src/service/EditSystemService.vue

@@ -370,7 +370,7 @@ function calculateCount(row: any) {
     // 按穴位计价
     // 按穴位计价
     const frequencyType = Number(row.frequencyType) || 0;
     const frequencyType = Number(row.frequencyType) || 0;
 
 
-    row.totalMeasure = Math.ceil((period / frequencyType) * frequency);
+    row.totalMeasure = Math.ceil((period / frequencyType)) * frequency;
     // console.log(frequencyType, 'frequencyType', frequency, period, row.totalMeasure);
     // console.log(frequencyType, 'frequencyType', frequency, period, row.totalMeasure);
     // console.log(acCount, maxCount, 'acCount, maxCount', row.conditioningProgramDetail.cpDynamicPricingRule?.[1]?.priceType);
     // console.log(acCount, maxCount, 'acCount, maxCount', row.conditioningProgramDetail.cpDynamicPricingRule?.[1]?.priceType);
     if (acCount > maxCount) {
     if (acCount > maxCount) {
@@ -379,7 +379,7 @@ function calculateCount(row: any) {
         if (acCount > 0) {
         if (acCount > 0) {
           let unitPrice: number = row.conditioningProgramDetail.cpDynamicPricingRule[1].price * acCount;
           let unitPrice: number = row.conditioningProgramDetail.cpDynamicPricingRule[1].price * acCount;
           row.unitPrice = unitPrice;
           row.unitPrice = unitPrice;
-          row.totalPrice = Math.ceil((period / frequencyType) * frequency) * unitPrice;
+          row.totalPrice = row.totalMeasure * unitPrice;
         } else {
         } else {
           row.unitPrice = '-';
           row.unitPrice = '-';
           row.totalPrice = 0;
           row.totalPrice = 0;
@@ -398,7 +398,7 @@ function calculateCount(row: any) {
           if (acCount > 0) {
           if (acCount > 0) {
             let unitPrice: number = row.conditioningProgramDetail.cpDynamicPricingRule[0].price * acCount;
             let unitPrice: number = row.conditioningProgramDetail.cpDynamicPricingRule[0].price * acCount;
             row.unitPrice = unitPrice;
             row.unitPrice = unitPrice;
-            row.totalPrice = Math.ceil((period / frequencyType) * frequency) * unitPrice;
+            row.totalPrice = row.totalMeasure * unitPrice;
           } else {
           } else {
             row.unitPrice = '-';
             row.unitPrice = '-';
             row.totalPrice = 0;
             row.totalPrice = 0;