Browse Source

小优化

xiaochan 3 weeks ago
parent
commit
e487e2807f

+ 1 - 1
pom.xml

@@ -10,7 +10,7 @@
     </parent>
     <groupId>thyyxxk</groupId>
     <artifactId>web-server</artifactId>
-    <version>14.2.3</version>
+    <version>14.2.5</version>
     <name>web-server</name>
     <description>server for yibao-web</description>
     <properties>

+ 29 - 0
src/main/java/thyyxxk/webserver/controller/bedsideElectronicScreen/BedsideElectronicScreenController.java

@@ -0,0 +1,29 @@
+package thyyxxk.webserver.controller.bedsideElectronicScreen;
+
+import lombok.RequiredArgsConstructor;
+import org.springframework.web.bind.annotation.PostMapping;
+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.exception.ExceptionEnum;
+import thyyxxk.webserver.dao.his.bedsideElectronicScreen.BedsideElectronicScreenDao;
+import thyyxxk.webserver.entity.ResultVo;
+import thyyxxk.webserver.entity.bedsideElectronicScreenService.req.SetBedElectronScreen;
+import thyyxxk.webserver.utils.R;
+
+import javax.validation.Valid;
+
+
+@RestController
+@RequestMapping("/bedsideElectronicScreen")
+@RequiredArgsConstructor
+public class BedsideElectronicScreenController {
+    private final BedsideElectronicScreenDao dao;
+
+    @PostMapping("/setBedElectronScreen")
+    public ResultVo<String> setBedElectronScreen(@RequestBody @Valid SetBedElectronScreen params) {
+        dao.setBedElectronScreen(params);
+        return R.ok(ExceptionEnum.SUCCESS_AND_EL_MESSAGE);
+    }
+
+}

+ 13 - 0
src/main/java/thyyxxk/webserver/dao/his/bedsideElectronicScreen/BedsideElectronicScreenDao.java

@@ -0,0 +1,13 @@
+package thyyxxk.webserver.dao.his.bedsideElectronicScreen;
+
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Update;
+import thyyxxk.webserver.entity.bedsideElectronicScreenService.req.SetBedElectronScreen;
+
+@Mapper
+public interface BedsideElectronicScreenDao {
+
+    @Update("update zy_bed_mi set electronic_screen = #{code} " +
+            "where ward_code = #{ward} and dept_code = #{dept} and bed_no = #{bedNo}")
+    void setBedElectronScreen(SetBedElectronScreen params);
+}

+ 2 - 2
src/main/java/thyyxxk/webserver/dao/his/hutoolcache/HutoolCacheDao.java

@@ -46,14 +46,14 @@ public interface HutoolCacheDao {
             "hzDay=(select hz_day from zd_unit_code where zd_unit_code.code=b.dept_code)," +
             "empTitName=(select rtrim(d.name) from zd_emp_title d where d.code=b.emp_tit_code)," +
             "rtrim(b.dept_code) as deptCode,user_config, " +
-            "cast(isnull(NULLIF(doctor_xz_yp, ''), 0) as int) as doctor_xz_yp,isnull(doctor_yp_zl, 0) as doctor_yp_zl " +
+            "cast(isnull(NULLIF(doctor_xz_yp, ''), 0) as int) + 1 as doctor_xz_yp,isnull(doctor_yp_zl, 0) as doctor_yp_zl " +
             "from dj_user_base a, a_employee_mi b where a.code=#{code} and isnull(b.del_flag,0)!=1 and a.code=b.code")
     UserInfo selectUserInfo(String code);
 
     @Select("select rtrim(code) as code,rtrim(code_rs) as codeRs,rtrim(name) as name," +
             "yb_code ybCode,emp_tit_code,dept_code," +
             "empTitName=(select rtrim(d.name) from zd_emp_title d where d.code=emp_tit_code)," +
-            "cast(isnull(NULLIF(doctor_xz_yp, ''), 0) as int) as doctor_xz_yp,isnull(doctor_yp_zl, 0) as doctor_yp_zl " +
+            "cast(isnull(NULLIF(doctor_xz_yp, ''), 0) as int) + 1 as doctor_xz_yp,isnull(doctor_yp_zl, 0) as doctor_yp_zl " +
             "from a_employee_mi where code=#{code}")
     UserInfo selectUserInfoFromHis(String code);
 

+ 19 - 3
src/main/java/thyyxxk/webserver/dao/his/medicaladvice/patientinfo/AdjustBedDao.java

@@ -22,12 +22,16 @@ public interface AdjustBedDao {
             "    select user_code from dj_user_role where role_id in (4,12,18)" +
             "    ) ")
     List<String> getAdmins(String ward);
+
     @Update(" update mz_zy_req set  bed_no = #{bedNo}, req_status =#{reqStatus},pre_bed_confirm_id=#{preBedConfirmId},pre_bed_confirm_date=#{preBedConfirmDate},pre_bed_confirm_remark=#{preBedConfirmRemark} where patient_id=#{patientId} and CONVERT(VARCHAR(30),visit_date,20) =#{visitDateStr} ")
     void updateBedNo(MzZyReq mzZyReq);
+
     @Select("  select top 1 1 from zy_bed_mi where bed_no = #{bedNo} and ward_code = #{wardCode} and bed_status ='1' ")
-    Integer isIdleBedNo(@Param("bedNo") String bedNo,@Param("wardCode") String wardCode);
+    Integer isIdleBedNo(@Param("bedNo") String bedNo, @Param("wardCode") String wardCode);
+
     @Select(" select  bed_no from zy_bed_mi where bed_status ='1' and ward_code= #{ward} order by cast(bed_no as int) ")
     List<String> selectIdleBedNoList(String ward);
+
     @Select(" SELECT zy_bed_mi.room_no,\n" +
             "       zy_bed_mi.bed_no,\n" +
             "       inpatient_no=isnull(zy_actpatient.inpatient_no,zy_bed_mi.inpatient_no),\n" +
@@ -42,28 +46,39 @@ public interface AdjustBedDao {
             "       zy_actpatient.refer_physician,\n" +
             "       refer_physician_name =(select name from a_employee_mi where zy_actpatient.refer_physician= code),\n" +
             "       zy_actpatient.responce_type,\n" +
-            "       responce_type_name = (select name from  zy_zd_responce_type where zy_actpatient.responce_type=code)\n" +
+            "       responce_type_name = (select name from  zy_zd_responce_type where zy_actpatient.responce_type=code)," +
+            "       electronic_screen\n" +
             " from zy_bed_mi left join  zy_actpatient  on  zy_bed_mi.inpatient_no = zy_actpatient.inpatient_no\n" +
             "   where   zy_bed_mi.ward_code = #{wardCode} order by cast(zy_bed_mi.bed_no as int) ")
     List<ZyBedMi> selectZybedMi(ZyBedMi param);
+
     @Select(" select top 1 * from   mz_zy_req   where patient_id=#{patientId} and CONVERT(VARCHAR(30),visit_date,20) =#{visitDateStr} ")
     MzZyReq selectMzZyReq(MzZyReq mzZyReq);
+
     @Select(" select top 1 1 from zy_actpatient where bed_no =#{bedNo} and dept =#{wardCode}")
     Integer isExistPatient(ZyBedMi param);
+
     @Update(" update zy_bed_mi set inpatient_no =#{inpatientNo} , admiss_times =#{admissTimes} , bed_status =#{bedStatus} where bed_no =#{bedNo} and dept_code =#{wardCode}")
     void updatePatientByBed(ZyBedMi param);
+
     @Select("  select top 1 req_status from mz_zy_req where patient_id=#{patientId} and CONVERT(VARCHAR(30),visit_date,20) =#{visitDateStr} ")
     String selectReqStatus(MzZyReq req);
+
     @Select(" select top 1 inpatient_no , admiss_times from zy_actpatient where bed_no =#{bedNo} and dept =#{wardCode} ")
     ZyBedMi selectActInpatientByBed(ZyBedMi param);
+
     @Update(" update zy_actpatient SET bed_no =#{bedNo} , bed_status =#{bedStatus} , ward =#{wardCode} WHERE ( inpatient_no =#{inpatientNo} or inpatient_no like ( #{inpatientNo} + '$%' ) ) AND admiss_times =#{admissTimes};")
     void updateActpatientBed(ZyBedMi zyBedMi);
+
     @Update(" update yz_yp_zy_order SET bed_no =#{bedNo} WHERE ( inpatient_no =#{inpatientNo} or inpatient_no =( #{inpatientNo} + '$1' ) or inpatient_no =( #{inpatientNo} + '$2' ) or inpatient_no =( #{inpatientNo} + '$3' ) or inpatient_no =( #{inpatientNo} + '$4' ) or inpatient_no =( #{inpatientNo} + '$5' ) or inpatient_no =( #{inpatientNo} + '$6' ) ) AND admiss_times =#{admissTimes}")
     void updateYpZyOrder(ZyBedMi zyBedMi);
+
     @Update(" update yz_act_occ SET bed_no =#{bedNo} WHERE ( inpatient_no =#{inpatientNo} or inpatient_no =( #{inpatientNo} + '$1' ) or inpatient_no =( #{inpatientNo} + '$2' ) or inpatient_no =( #{inpatientNo} + '$3' ) or inpatient_no =( #{inpatientNo} + '$4' ) or inpatient_no =( #{inpatientNo} + '$5' ) or inpatient_no =( #{inpatientNo} + '$6' ) ) AND admiss_times =#{admissTimes}")
     void updateYzActOcc(ZyBedMi zyBedMi);
+
     @Select(" select top 1 1 from mz_zy_req where req_ward=#{wardCode} and visit_date >=#{startVisitDate} and visit_date<=#{endVisitDate} and bed_no=#{bedNo}")
     Integer queryIsPreBed(ZyBedMi param);
+
     @Select(" select top 1 rtrim(name) name  from mz_patient_mi where patient_id =#{patientId}  ")
     String selectPatientMi(@Param("patientId") String patientId);
 
@@ -83,6 +98,7 @@ public interface AdjustBedDao {
             "deptName=(select d.name from zd_unit_code d where d.code=dept_code) " +
             "from a_employee_mi where hsry_flag=1")
     List<CodeName> getHsry();
+
     @Select(" select rtrim(ward) ward from    zy_actpatient where inpatient_no=#{inpatientNo} and admiss_times =#{admissTimes}")
-    String selectWard(@Param("inpatientNo") String inpatientNo, @Param("admissTimes")Integer admissTimes);
+    String selectWard(@Param("inpatientNo") String inpatientNo, @Param("admissTimes") Integer admissTimes);
 }

+ 1 - 1
src/main/java/thyyxxk/webserver/dao/his/zhuyuanyisheng/emr/EmrPatientDao.java

@@ -40,7 +40,7 @@ public interface EmrPatientDao extends BaseMapper<EmrPatientData> {
             "       modify_date, " +
             "       name," +
             "       submit," +
-            "       parent " +
+            "       parent, signComplete = (select ca_sign_data.sign_complete from ca_sign_data where document_id = 'ZY' + emr_document_id) " +
             "from emr_patient_data " +
             "where pat_no = #{patNo} " +
             "  and times = #{times}" +

+ 20 - 0
src/main/java/thyyxxk/webserver/entity/bedsideElectronicScreenService/req/SetBedElectronScreen.java

@@ -0,0 +1,20 @@
+package thyyxxk.webserver.entity.bedsideElectronicScreenService.req;
+
+import lombok.Data;
+
+import javax.validation.constraints.NotBlank;
+
+@Data
+public class SetBedElectronScreen {
+    @NotBlank(message = "床位号不能为空")
+    private String bedNo;
+
+    @NotBlank(message = "病房不能为空")
+    private String ward;
+
+    @NotBlank(message = "屏幕编码不能为空")
+    private String code;
+
+    @NotBlank(message = "科室不能为空")
+    private String dept;
+}

+ 156 - 147
src/main/java/thyyxxk/webserver/entity/medicaladvice/medicamanage/patientinfo/ZyBedMi.java

@@ -8,168 +8,177 @@ import java.util.Date;
 
 /**
  * ${comments}
- * 
+ *
  * @author lh
  * @email lihong@gmail.com
  * @date 2023-06-01 17:16:48
  */
 @Data
 public class ZyBedMi implements Serializable {
-	private static final long serialVersionUID = 1L;
+    private static final long serialVersionUID = 1L;
 
-	/**
-	 * 床铺状态空闲
-	 */
-	public static String BED_STATUS_FREE = "1";
-	/**
-	 * 床铺状态有人
-	 */
-	public static String BED_STATUS_HOLD_UP = "2";
-	/**
-	 * 床铺状态号床
-	 */
-	public static String BED_STATUS_OTHER = "3";
+    /**
+     * 床铺状态空闲
+     */
+    public static String BED_STATUS_FREE = "1";
+    /**
+     * 床铺状态有人
+     */
+    public static String BED_STATUS_HOLD_UP = "2";
+    /**
+     * 床铺状态号床
+     */
+    public static String BED_STATUS_OTHER = "3";
 
-	/**
-	 * $column.comments
-	 */
-	private String icuFlag;
-	/**
-	 * $column.comments
-	 */
-	private String wardCode;
-	/**
-	 * $column.comments
-	 */
-	private String inpatientNo;
-	/**
-	 * $column.comments
-	 */
-	private Float roomRate2;
-	/**
-	 * $column.comments
-	 */
-	private String chargeCodeAir;
-	/**
-	 * $column.comments
-	 */
-	private String deptCode;
-	/**
-	 * $column.comments
-	 */
-	private Float percent2;
-	/**
-	 * $column.comments
-	 */
-	private Float heatingFee;
-	/**
-	 * $column.comments
-	 */
-	private BigDecimal specialCharge;
-	/**
-	 * $column.comments
-	 */
-	private String zySerialNo;
-	/**
-	 * $column.comments
-	 */
-	private String bedStatus;
-	/**
-	 * $column.comments
-	 */
-	private Float percent5;
-	/**
-	 * $column.comments
-	 */
-	private String chargeCodeBed;
-	/**
-	 * $column.comments
-	 */
-	private String bedNo;
-	/**
-	 * $column.comments
-	 */
-	private Date effDate1;
-	/**
-	 * $column.comments
-	 */
-	private String type;
-	/**
-	 * $column.comments
-	 */
-	private String chargeCodeHeat;
-	/**
-	 * $column.comments
-	 */
-	private String roomNo;
-	/**
-	 * $column.comments
-	 */
-	private Float airconditionFee;
-	/**
-	 * $column.comments
-	 */
-	private Float percent3;
-	/**
-	 * $column.comments
-	 */
-	private String remark;
-	/**
-	 * $column.comments
-	 */
-	private Integer admissTimes;
-	/**
-	 * $column.comments
-	 */
-	private Float percent4;
-	/**
-	 * $column.comments
-	 */
-	private Date effDate2;
-	/**
-	 * $column.comments
-	 */
-	private String sex;
-	/**
-	 * $column.comments
-	 */
-	private Float percent1;
-	/**
-	 * $column.comments
-	 */
-	private String bedPos;
-	/**
-	 * $column.comments
-	 */
-	private Float roomRate1;
-	/**
-	 * $column.comments
-	 */
-	private String heatcoldFlag;
+    /**
+     * $column.comments
+     */
+    private String icuFlag;
+    /**
+     * $column.comments
+     */
+    private String wardCode;
+    /**
+     * $column.comments
+     */
+    private String inpatientNo;
+    /**
+     * $column.comments
+     */
+    private Float roomRate2;
+    /**
+     * $column.comments
+     */
+    private String chargeCodeAir;
+    /**
+     * $column.comments
+     */
+    private String deptCode;
+    /**
+     * $column.comments
+     */
+    private Float percent2;
+    /**
+     * $column.comments
+     */
+    private Float heatingFee;
+    /**
+     * $column.comments
+     */
+    private BigDecimal specialCharge;
+    /**
+     * $column.comments
+     */
+    private String zySerialNo;
+    /**
+     * $column.comments
+     */
+    private String bedStatus;
+    /**
+     * $column.comments
+     */
+    private Float percent5;
+    /**
+     * $column.comments
+     */
+    private String chargeCodeBed;
+    /**
+     * $column.comments
+     */
+    private String bedNo;
+    /**
+     * $column.comments
+     */
+    private Date effDate1;
+    /**
+     * $column.comments
+     */
+    private String type;
+    /**
+     * $column.comments
+     */
+    private String chargeCodeHeat;
+    /**
+     * $column.comments
+     */
+    private String roomNo;
+    /**
+     * $column.comments
+     */
+    private Float airconditionFee;
+    /**
+     * $column.comments
+     */
+    private Float percent3;
+    /**
+     * $column.comments
+     */
+    private String remark;
+    /**
+     * $column.comments
+     */
+    private Integer admissTimes;
+    /**
+     * $column.comments
+     */
+    private Float percent4;
+    /**
+     * $column.comments
+     */
+    private Date effDate2;
+    /**
+     * $column.comments
+     */
+    private String sex;
+    /**
+     * $column.comments
+     */
+    private Float percent1;
+    /**
+     * $column.comments
+     */
+    private String bedPos;
+    /**
+     * $column.comments
+     */
+    private Float roomRate1;
+    /**
+     * $column.comments
+     */
+    private String heatcoldFlag;
 
-	private String name;
-	private String sexName;
-	/**管床医生 */
-	private String referPhysician;
-	private String referPhysicianName;
-	/**医保类型*/
-	private String responceType;
-	private String startVisitDate;
-	private String endVisitDate;
-	private String responceTypeName;
+    private String name;
+    private String sexName;
+    /**
+     * 管床医生
+     */
+    private String referPhysician;
+    private String referPhysicianName;
+    /**
+     * 医保类型
+     */
+    private String responceType;
+    private String startVisitDate;
+    private String endVisitDate;
+    private String responceTypeName;
 
-	private Date admissDate;
+    private Date admissDate;
 
-	public String getSexName(){
-		if(sex == null) return "";
-		switch (sex) {
-			case "1":
+    /**
+     * 床位小屏幕的编码
+     */
+    private String electronicScreen;
+
+    public String getSexName() {
+        if (sex == null) return "";
+        switch (sex) {
+            case "1":
                 return "男";
             case "2":
                 return "女";
             default:
                 return "未知";
-		}
-	}
+        }
+    }
 
 }

+ 6 - 0
src/main/java/thyyxxk/webserver/entity/zhuyuanyisheng/emr/EmrPatientData.java

@@ -177,6 +177,12 @@ public class EmrPatientData implements Serializable {
      */
     private Date reviewTime;
 
+    /**
+     * 签名是否完成
+     */
+    @TableField(exist = false)
+    private Boolean signComplete;
+
     public String getType() {
         if (EmrServer.THIS_IS_DIR.equals(emrCategoryCode)) {
             return "group-category";

+ 49 - 0
src/main/java/thyyxxk/webserver/service/bedsideElectronicScreen/BedsideElectronicScreenService.java

@@ -0,0 +1,49 @@
+package thyyxxk.webserver.service.bedsideElectronicScreen;
+
+import cn.hutool.core.lang.TypeReference;
+import cn.hutool.http.HttpRequest;
+import cn.hutool.json.JSONUtil;
+import lombok.Data;
+import lombok.RequiredArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.stereotype.Service;
+import thyyxxk.webserver.config.envionment.SystemConfig;
+import thyyxxk.webserver.config.exception.ExceptionEnum;
+import thyyxxk.webserver.dao.his.bedsideElectronicScreen.BedsideElectronicScreenDao;
+import thyyxxk.webserver.entity.ResultVo;
+import thyyxxk.webserver.utils.R;
+
+
+@Slf4j
+@Service
+@RequiredArgsConstructor
+public class BedsideElectronicScreenService {
+    private final BedsideElectronicScreenDao dao;
+    private final SystemConfig systemConfig;
+
+    @Data
+    public static class MagicApiRst {
+        private String ip;
+        private String content;
+    }
+
+    public ResultVo<String> sendByPatNo(String patNo) {
+        String magicApi = systemConfig.getMagicApi() + "/public/bedsideElectronicScreenService";
+
+        ResultVo<MagicApiRst> rstResultVo = JSONUtil.toBean(HttpRequest.post(magicApi)
+                .execute()
+                .body(), new TypeReference<ResultVo<MagicApiRst>>() {
+        }, false);
+
+        if (rstResultVo.getCode() != 1) {
+            return R.fail(ExceptionEnum.LOGICAL_ERROR, rstResultVo.getMessage());
+        }
+
+        MagicApiRst data = rstResultVo.getData();
+
+
+        return R.ok();
+    }
+
+
+}

+ 1 - 1
src/main/java/thyyxxk/webserver/service/ca/CaServer.java

@@ -667,7 +667,7 @@ public class CaServer implements Assertion {
                 .times(caSignData.getTimes())
                 .file(signData.getStr("pdf"))
                 .fileName(document.replace(caSignData.getSource(), ""))
-                .caData(signData.getStr("signed"))
+                .caData(signData.getStr("signed", ""))
                 .build();
 
         CaSignData updateData = CaSignData.builder().signComplete(true).documentId(document).build();

+ 2 - 2
src/main/java/thyyxxk/webserver/service/zhuyuanyiji/MenZhengXiangMuServer.java

@@ -78,7 +78,7 @@ public class MenZhengXiangMuServer {
     }
 
     public ResultVo<JSONObject> getReqDetailsByNo(String patientId, Integer reqNo) {
-        return ResultVoUtil.success(dao.getReqDetailsByNo(patientId ,reqNo ));
+        return ResultVoUtil.success(dao.getReqDetailsByNo(patientId, reqNo));
     }
 
     public List<MzChargeDetail> tcTree(List<MzChargeDetail> tempList) {
@@ -95,7 +95,7 @@ public class MenZhengXiangMuServer {
                 item.setChargeFeeNew(item.getUnitPrice().multiply(item.getQuantity()).multiply(item.getDrugWin()));
             }
             if ("TC".equals(item.getBillItemCode())) {
-                item.setChargeName(item.getTcName() + "(套餐)");
+                item.setChargeName(item.getTcName());
                 resultList.add(item);
             }
         }

+ 3 - 2
src/main/java/thyyxxk/webserver/service/zhuyuanyisheng/YiZhuLuRuServer.java

@@ -1455,9 +1455,9 @@ public class YiZhuLuRuServer {
         Integer drugLeven = Convert.toInt(ypInfo.get("ypLevel"));
         Integer antitumorLevel = Convert.toInt(ypInfo.get("antitumorLevel"));
 
-        if (drugLeven > cacheUserInfo.getDoctorYpZl()) {
+        if (drugLeven > Convert.toInt(cacheUserInfo.getDoctorXzYp())) {
             return ResultVoUtil.success(ExceptionEnum.LOGICAL_ERROR,
-                    StrUtil.format("该医生等级不足,药品等级【{}】,医生等级:【{}】", drugLeven, u.getDoctorLevel()));
+                    StrUtil.format("该医生等级不足,药品等级【{}】,医生等级:【{}】", drugLeven, cacheUserInfo.getDoctorXzYp()));
         }
 
         if (cacheUserInfo.getDoctorYpZl() < antitumorLevel) {
@@ -1467,6 +1467,7 @@ public class YiZhuLuRuServer {
         return ResultVoUtil.success(u);
     }
 
+
     public ResultVo<String> updateOrderInstruction(BigDecimal orderNo, String str) {
         dao.updateOrderInstruction(orderNo, str);
         return ResultVoUtil.success(ExceptionEnum.SUCCESS_AND_EL_MESSAGE, "更新成功。");

+ 1 - 0
src/main/java/thyyxxk/webserver/service/zhuyuanyisheng/emr/EmrServer.java

@@ -1110,6 +1110,7 @@ public class EmrServer {
         JSONObject properties = template.getJSONObject("properties");
         properties.put("creator", userId);
         properties.put("createTime", cn.hutool.core.date.DateUtil.now());
+        properties.put("patientId", params.getPatNo() + "_" + params.getTimes());
         String categoryCode = properties.getString("categoryCode");
         JSONObject addFileDocument = new JSONObject() {{
             put("document", template);

+ 34 - 17
update/2025-11-10.md

@@ -1,31 +1,38 @@
 ```sql
-alter table yz_act_occ add execute_ca_sign_id varchar(32)
+alter table yz_act_occ
+    add execute_ca_sign_id varchar(32)
+
+
+exec sp_addextendedproperty 'MS_Description', N'对应 ca_sign_log 的id', 'SCHEMA', 'dbo', 'TABLE', 'yz_act_occ',
+     'COLUMN',
+     'execute_ca_sign_id'
+go
 ```
 
 ```sql
 
 create table t_nurse_printer
 (
-    id             varchar(32) not null
+    id              varchar(32) not null
         constraint t_nurse_printer_pk
             primary key,
-    ip_address     varchar(32) not null,
-    bottle_card    varchar(64),
-    infusion_card  varchar(64),
-    spare_column_1 varchar(64),
-    spare_column_2 varchar(64),
-    spare_column_3 varchar(64),
-    spare_column_4 varchar(64),
-    spare_column_5 varchar(64),
-    spare_column_6 varchar(64),
-    spare_column_7 varchar(64),
-    spare_column_8 varchar(64),
-    spare_column_9 varchar(64),
+    ip_address      varchar(32) not null,
+    bottle_card     varchar(64),
+    infusion_card   varchar(64),
+    spare_column_1  varchar(64),
+    spare_column_2  varchar(64),
+    spare_column_3  varchar(64),
+    spare_column_4  varchar(64),
+    spare_column_5  varchar(64),
+    spare_column_6  varchar(64),
+    spare_column_7  varchar(64),
+    spare_column_8  varchar(64),
+    spare_column_9  varchar(64),
     spare_column_10 varchar(64),
     spare_column_11 varchar(64),
     spare_column_12 varchar(64),
-    creator varchar(12) not null ,
-    create_time datetime not null default getdate(),
+    creator         varchar(12) not null,
+    create_time     datetime    not null default getdate(),
     modifier        varchar(12),
     modify_time     datetime
 )
@@ -54,4 +61,14 @@ create index t_nurse_printer_creator_index
     on t_nurse_printer (creator)
 go
 
-```
+```
+
+```sql
+alter table zy_bed_mi
+    add electronic_screen varchar(10)
+go
+
+exec sp_addextendedproperty 'MS_Description', N'患者旁边的电子屏幕', 'SCHEMA', 'dbo', 'TABLE', 'zy_bed_mi', 'COLUMN',
+     'electronic_screen'
+go
+```