Explorar o código

Merge branch 'feature/CC' into develop

cc12458 hai 9 meses
pai
achega
7ecd3ae620
Modificáronse 2 ficheiros con 6 adicións e 5 borrados
  1. 1 1
      src/components/ChineseMedicine.vue
  2. 5 4
      src/utils/medicine.js

+ 1 - 1
src/components/ChineseMedicine.vue

@@ -1842,7 +1842,7 @@ export default {
       
       if (obj.dose == null) {
         obj.oldDose = CC_Dosage2Basis(scope.row)
-        obj.dose = CC_Basis2Dosage(obj)
+        obj.dose = CC_Basis2Dosage(obj, (value) => !obj.unit || ['g', '克'].includes(obj.unit) || Number.isInteger(value))
       }
 
       const m = Object.assign(totalData[scope.row.id - 1], obj);

+ 5 - 4
src/utils/medicine.js

@@ -16,11 +16,12 @@ export function CC_Dosage2Basis({dose = 0, xbzxs = 1}) {
  * @param medicine 药品
  * @param {number} medicine.oldDose 基础剂量
  * @param {number} medicine.xbzxs 转换系数
- * @param {boolean=false} keep 保留计算结果
+ * @param {((value: number, oldValue: number) => boolean) | boolean=true} keep 保留计算结果
  * @returns {number} 输入剂量
  */
-export function CC_Basis2Dosage({oldDose = 0, xbzxs = 1}, keep = false) {
-    console.log('log-->CC_Basis2Dosage', `basis: ${oldDose}, xbzxs: ${xbzxs}`);
+export function CC_Basis2Dosage({oldDose = 0, xbzxs = 1}, keep = true) {
+    console.log('log-->CC_Basis2Dosage', `basis: ${oldDose}, xbzxs: ${xbzxs}; keep=${typeof keep === 'function' ? '计算' : keep}`);
     if (!xbzxs || xbzxs === 1) return +oldDose;
-    return +oldDose / xbzxs;
+    const value= +oldDose / xbzxs;
+    return (typeof keep === 'function' ? keep(value, oldDose) : keep) ? value : null;
 }