需求文档.md 5.9 KB

修改insertOrEditForm

  • 在一开始检测router.query

    • 如果router.query.actionupdate,那么向后端发送网络请求

    • 后端接口对应代码为:

      @Validated
      @RequiredArgsConstructor
      @RestController
      @RequestMapping("/parameter/basicPublicTemplate/enteralNutritionTemplate")
      public class EnteralNutritionTemplateController extends BaseController {
            
        private final IEnteralNutritionTemplateService enteralNutritionTemplateService;
            
        /**
         * 获取肠内处方模板详细信息
         *
         * @param id 主键
         */
        @SaCheckPermission("basicPublicTemplate:enteralNutritionTemplate:query")
        @GetMapping("/{id}")
        public R<EnteralNutritionTemplateVo> getInfo(@NotNull(message = "主键不能为空")
                                         @PathVariable Long id) {
            return R.ok(enteralNutritionTemplateService.queryById(id));
        }
      }
      
    • R:

      @Data
      @NoArgsConstructor
      public class R<T> implements Serializable {
            
        @Serial
        private static final long serialVersionUID = 1L;
            
        /**
         * 成功
         */
        public static final int SUCCESS = 200;
            
        /**
         * 失败
         */
        public static final int FAIL = 500;
            
        private int code;
            
        private String msg;
            
        private T data;
            
        public static <T> R<T> ok() {
            return restResult(null, SUCCESS, "操作成功");
        }
            
        public static <T> R<T> ok(T data) {
            return restResult(data, SUCCESS, "操作成功");
        }
            
        public static <T> R<T> ok(String msg) {
            return restResult(null, SUCCESS, msg);
        }
            
        public static <T> R<T> ok(String msg, T data) {
            return restResult(data, SUCCESS, msg);
        }
            
        public static <T> R<T> fail() {
            return restResult(null, FAIL, "操作失败");
        }
            
        public static <T> R<T> fail(String msg) {
            return restResult(null, FAIL, msg);
        }
            
        public static <T> R<T> fail(T data) {
            return restResult(data, FAIL, "操作失败");
        }
            
        public static <T> R<T> fail(String msg, T data) {
            return restResult(data, FAIL, msg);
        }
            
        public static <T> R<T> fail(int code, String msg) {
            return restResult(null, code, msg);
        }
            
        /**
         * 返回警告消息
         *
         * @param msg 返回内容
         * @return 警告消息
         */
        public static <T> R<T> warn(String msg) {
            return restResult(null, HttpStatus.WARN, msg);
        }
            
        /**
         * 返回警告消息
         *
         * @param msg 返回内容
         * @param data 数据对象
         * @return 警告消息
         */
        public static <T> R<T> warn(String msg, T data) {
            return restResult(data, HttpStatus.WARN, msg);
        }
            
        private static <T> R<T> restResult(T data, int code, String msg) {
            R<T> r = new R<>();
            r.setCode(code);
            r.setData(data);
            r.setMsg(msg);
            return r;
        }
            
        public static <T> Boolean isError(R<T> ret) {
            return !isSuccess(ret);
        }
            
        public static <T> Boolean isSuccess(R<T> ret) {
            return R.SUCCESS == ret.getCode();
        }
      }
      
    • EnteralNutritionTemplateVo:

      @Data
      @ExcelIgnoreUnannotated
      @AutoMapper(target = EnteralNutritionTemplate.class)
      public class EnteralNutritionTemplateVo implements Serializable {
            
        @Serial
        private static final long serialVersionUID = 1L;
            
        /**
         * ID
         */
        @ExcelProperty(value = "ID")
        private Long id;
            
        /**
         * 模板名称
         */
        @ExcelProperty(value = "模板名称")
        private String templateName;
            
        /**
         * 模板描述
         */
        @ExcelProperty(value = "模板描述")
        private String templateDescription;
            
        /**
         * 处方类型
         */
        @ExcelProperty(value = "处方类型")
        private String prescriptionType;
            
        /**
         * 处方科室ID
         */
        @ExcelProperty(value = "处方科室ID")
        private Long prescriptionId;
            
        /**
         * 营养产品信息
         */
        @ExcelProperty(value = "营养产品信息")
        private String content;
            
        /**
         * 状态(0正常 1停用)
         */
        @ExcelProperty(value = "状态", converter = ExcelDictConvert.class)
        @ExcelDictFormat(readConverterExp = "0=正常,1=停用")
        private String status;
            
        /**
         * 创建者
         */
        @ExcelProperty(value = "创建者")
        private String createBy;
            
        /**
         * 创建时间
         */
        @ExcelProperty(value = "创建时间")
        private Date createTime;
            
        /**
         * 更新者
         */
        @ExcelProperty(value = "更新者")
        private String updateBy;
            
        /**
         * 更新时间
         */
        @ExcelProperty(value = "更新时间")
        private Date updateTime;
            
        private String prescriptionDepartmentName;
            
            
      }
      
    • 其中idrouter.query.id

    • 根据后端返回的状态

    • 如果为200,则将对应的数据填入页面

    • 否则提示异常信息