Ver Fonte

门诊诊疗信息优化

lihong há 5 meses atrás
pai
commit
f53ea1441e

+ 2 - 1
src/main/java/thyyxxk/webserver/controller/mzmedical/MzMedicalMainController.java

@@ -6,6 +6,7 @@ import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 import thyyxxk.webserver.config.auth.PassToken;
+import thyyxxk.webserver.config.exception.ExceptionEnum;
 import thyyxxk.webserver.entity.ResultVo;
 import thyyxxk.webserver.entity.mzmedical.MzMedicalField;
 import thyyxxk.webserver.entity.mzmedical.MzMedicalMain;
@@ -42,7 +43,7 @@ public class MzMedicalMainController {
     @PostMapping("/updateDelFlag")
     public ResultVo<String> updateDelFlag(@RequestBody MzMedicalMain mzMedicalMain){
         service.updateDelFlag(mzMedicalMain);
-        return ResultVoUtil.success();
+        return ResultVoUtil.success(ExceptionEnum.SUCCESS_AND_EL_MESSAGE);
     }
 
     @PostMapping("/queryMzMedicalMainPage")

+ 8 - 7
src/main/java/thyyxxk/webserver/dao/his/mzmedical/MzMedicalMainDao.java

@@ -113,9 +113,9 @@ public interface MzMedicalMainDao  {
             "           sum(case when zd_charge_ba_class = '1003' then convert(decimal(18, 2),unit_price*quantity*drug_win) else 0 end) fee1003,  " +
             "           sum(case when zd_charge_ba_class = '11' then convert(decimal(18, 2),unit_price*quantity*drug_win) else 0 end) fee11,  " +
             "           sum(case when zd_charge_ba_class = '12' then convert(decimal(18, 2),unit_price*quantity*drug_win) else 0 end) fee12,  " +
-            "           sum(case when zd_charge_ba_class = '13' then convert(decimal(18, 2),unit_price*quantity*drug_win) else 0 end) fee13,  " +
-            "           sum(case when zd_charge_ba_class = '14' then convert(decimal(18, 2),unit_price*quantity*drug_win) else 0 end) fee14,  " +
-            "           sum(case when zd_charge_ba_class = '15' then convert(decimal(18, 2),unit_price*quantity*drug_win) else 0 end) fee15,  " +
+            "           sum(case when a.bill_item_code='010' then convert(decimal(18, 2),unit_price*quantity*drug_win) else 0 end) fee13,  " +
+            "           sum(case when a.bill_item_code='011' then convert(decimal(18, 2),unit_price*quantity*drug_win) else 0 end) fee14,  " +
+            "           sum(case when a.bill_item_code='012' then convert(decimal(18, 2),unit_price*quantity*drug_win) else 0 end) fee15,  " +
             "           sum(case when zd_charge_ba_class = '16' then convert(decimal(18, 2),unit_price*quantity*drug_win) else 0 end) fee16,  " +
             "           sum(case when zd_charge_ba_class = '17' then convert(decimal(18, 2),unit_price*quantity*drug_win) else 0 end) fee17,  " +
             "           sum(case when zd_charge_ba_class = '18' then convert(decimal(18, 2),unit_price*quantity*drug_win) else 0 end) fee18,  " +
@@ -124,11 +124,12 @@ public interface MzMedicalMainDao  {
             "           sum(case when zd_charge_ba_class = '21' then convert(decimal(18, 2),unit_price*quantity*drug_win) else 0 end) fee21,  " +
             "           sum(case when zd_charge_ba_class = '22' then convert(decimal(18, 2),unit_price*quantity*drug_win) else 0 end) fee22,  " +
             "           sum(case when zd_charge_ba_class = '23' then convert(decimal(18, 2),unit_price*quantity*drug_win) else 0 end) fee23,  " +
-            "           sum(case when zd_charge_ba_class = '24' or isnull(zd_charge_ba_class,'') ='' then convert(decimal(18, 2),unit_price*quantity*drug_win) else 0 end) fee24  " +
+            "           sum(case when zd_charge_ba_class = '24' or (a.bill_item_code not in ('010','011','012') and isnull(zd_charge_ba_class,'')='') then convert(decimal(18, 2),unit_price*quantity*drug_win) else 0 end) fee24  " +
             "    from mz_charge_detail a  " +
-            "             join zd_charge_item b on a.charge_item_code = b.code  " +
+            "            left join zd_charge_item b on a.charge_item_code = b.code  " +
             "    where  " +
             "       pay_mark = '0'  " +
+            "      and a.bill_item_code !='TC' " +
             "      and tf_flag != 1  " +
             "      and receipt_no > 0  " +
             "    group by patient_id, times  " +
@@ -183,8 +184,8 @@ public interface MzMedicalMainDao  {
             "              op_name opr_name1,  " +
             "              op_scale op_scale1,  " +
             "              a3.wjw_code mzfs1,  " +
-            "              case when isnull(a3.wjw_code,'') !='' then doctor_zd else '' end mz_doctor1,  " +
-            "              doctor_zd opr_doctor1,  " +
+            "               case when isnull(a3.wjw_code,'') !='' then isnull((select name from a_employee_mi where code= a2.doctor_mz_ys),(select name from a_employee_mi where code= a2.doctor_zd)) else '' end mz_doctor1,  " +
+            "              (select name from a_employee_mi where code =doctor_zd ) opr_doctor1,  " +
             "              op_datetime opr_date1  " +
             " from op_record a1  " +
             "         join op_record_join a2 on a1.record_id = a2.record_id  " +

+ 2 - 2
src/main/java/thyyxxk/webserver/service/mzmedical/MzMedicalMainService.java

@@ -93,7 +93,7 @@ public class MzMedicalMainService {
             dao.delByVistDate(param.getStartTime(), param.getEndTime());
         }
         List<MzMedicalMain> mzMedicalMainSourceData = dao.selectMzMedicalSourceData(param.getStartTime(), param.getEndTime());
-        AssertUtil.isnotBlank(mzMedicalMainSourceData, "没有需要同步的数据");
+        AssertUtil.isnotBlank(mzMedicalMainSourceData, "没有需要生成的数据");
         List<MzMedicalMain> oprtSource = dao.selectOprtSource(param.getStartTime(), param.getEndTime());
         Map<String, List<MzMedicalMain>> oprtMap = null;
         if (CollUtil.isNotEmpty(oprtSource)) {
@@ -174,7 +174,7 @@ public class MzMedicalMainService {
         for (List<MzMedicalMain> temp : split) {
             dao.batchInsertData(temp);
         }
-        return ResultVoUtil.success(ExceptionEnum.SUCCESS_AND_EL_MESSAGE, "同步成功");
+        return ResultVoUtil.success(ExceptionEnum.SUCCESS_AND_EL_MESSAGE, "生成数据成功");
     }
 
     private String getCertificateType(String certificateType) {