Browse Source

化验公表项映射

Zhaops 6 years ago
parent
commit
b7e8dbeafc

+ 72 - 0
icssman-service/src/main/java/com/diagbot/facade/LisMappingFacade.java

@@ -1,15 +1,26 @@
 package com.diagbot.facade;
 
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.diagbot.client.UserServiceClient;
 import com.diagbot.dto.LisMappingPageDTO;
 import com.diagbot.dto.RespDTO;
+import com.diagbot.entity.LisMapping;
+import com.diagbot.enums.IsDeleteEnum;
+import com.diagbot.exception.CommonErrorCode;
+import com.diagbot.exception.CommonException;
 import com.diagbot.service.impl.LisMappingServiceImpl;
+import com.diagbot.util.DateUtil;
+import com.diagbot.util.ListUtil;
+import com.diagbot.util.StringUtil;
+import com.diagbot.util.UserUtils;
 import com.diagbot.vo.LisMappingPageVO;
+import com.diagbot.vo.LisMappingVO;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 
+import java.util.Date;
 import java.util.List;
 import java.util.Map;
 import java.util.stream.Collectors;
@@ -44,4 +55,65 @@ public class LisMappingFacade extends LisMappingServiceImpl {
         dtoPage.setRecords(records);
         return dtoPage;
     }
+
+    /**
+     * 新增化验映射关系
+     *
+     * @param lisMappingVO
+     * @return
+     */
+    public Boolean addLisMapping(LisMappingVO lisMappingVO) {
+        String userId = UserUtils.getCurrentPrincipleID();
+        Date now = DateUtil.now();
+        QueryWrapper<LisMapping> lisMappingQueryWrapper = new QueryWrapper<>();
+        lisMappingQueryWrapper.eq("is_deleted", IsDeleteEnum.N.getKey())
+                .eq("meal_name", lisMappingVO.getMealName())
+                .eq("item_name", lisMappingVO.getItemName());
+
+        List<LisMapping> lisMappingList = this.list(lisMappingQueryWrapper);
+        if (ListUtil.isNotEmpty(lisMappingList)) {
+            //错误码00020009 提示是否修改,是,调用修改接口
+            throw new CommonException(CommonErrorCode.IS_EXISTS, "映射关系已添加,是否更新");
+        }
+        LisMapping lisMapping = new LisMapping();
+        lisMapping.setMealName(lisMappingVO.getMealName());
+        lisMapping.setItemName(lisMappingVO.getItemName());
+        lisMapping.setUniqueName(lisMappingVO.getUniqueName());
+        lisMapping.setCreator(userId);
+        lisMapping.setModifier(userId);
+        lisMapping.setGmtCreate(now);
+        lisMapping.setGmtModified(now);
+        lisMapping.setIsDeleted(IsDeleteEnum.N.getKey());
+        Boolean state = this.save(lisMapping);
+        return state;
+    }
+
+    /**
+     * 修改化验公表映射关系
+     *
+     * @param lisMappingVO
+     * @return
+     */
+    public Boolean modifyLisMapping(LisMappingVO lisMappingVO) {
+        String userId = UserUtils.getCurrentPrincipleID();
+        Date now = DateUtil.now();
+        QueryWrapper<LisMapping> lisMappingQueryWrapper = new QueryWrapper<>();
+        lisMappingQueryWrapper.eq("is_deleted", IsDeleteEnum.N.getKey())
+                .eq("meal_name", lisMappingVO.getMealName())
+                .eq("item_name", lisMappingVO.getItemName());
+        //.eq("unique_name",lisMappingVO.getUniqueName());
+        List<LisMapping> lisMappingList = this.list(lisMappingQueryWrapper);
+        if (ListUtil.isEmpty(lisMappingList)) {
+            throw new CommonException(CommonErrorCode.NOT_EXISTS, "映射关系不存在,不允许修改");
+        } else if (lisMappingList.size() > 1) {
+            throw new CommonException(CommonErrorCode.SERVER_IS_ERROR, "存在多条映射关系,不允许修改");
+        }
+
+        LisMapping lisMapping = lisMappingList.get(0);
+        lisMapping.setUniqueName(lisMappingVO.getUniqueName());
+        lisMapping.setModifier(userId);
+        lisMapping.setGmtModified(now);
+        Boolean state = this.updateById(lisMapping);
+        return state;
+    }
 }

+ 21 - 0
icssman-service/src/main/java/com/diagbot/vo/LisMappingVO.java

@@ -0,0 +1,21 @@
+package com.diagbot.vo;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotBlank;
+
+/**
+ * @Description: 化验公表项保存参数
+ * @Author:zhaops
+ * @time: 2019/3/26 19:58
+ */
+@Getter
+@Setter
+public class LisMappingVO {
+    @NotBlank(message = "请输入大项名称")
+    private String mealName;
+    private String itemName;
+    @NotBlank(message = "请输入公表名称")
+    private String uniqueName;
+}

+ 34 - 1
icssman-service/src/main/java/com/diagbot/web/LisMappingController.java

@@ -4,7 +4,9 @@ package com.diagbot.web;
 import com.diagbot.annotation.SysLogger;
 import com.diagbot.dto.RespDTO;
 import com.diagbot.facade.LisMappingFacade;
+import com.diagbot.vo.IdVO;
 import com.diagbot.vo.LisMappingPageVO;
+import com.diagbot.vo.LisMappingVO;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -13,6 +15,8 @@ import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 
+import javax.validation.Valid;
+
 /**
  * <p>
  * 化验项目公表映射 前端控制器
@@ -45,4 +49,33 @@ public class LisMappingController {
     public RespDTO getLisMappingPage(@RequestBody LisMappingPageVO lisMappingPageVO) {
         return RespDTO.onSuc(lisMappingFacade.getLisMappingPage(lisMappingPageVO));
     }
-}
+
+    @ApiOperation(value = "化验公表项映射新增[by:zhaops]",
+            notes = "mealName:大项名称,必填<br>" +
+                    "itemName:小项名称<br>" +
+                    "uniqueName:公表名称,必填<br>" +
+                    "备注:错误码00020009 提示是否修改,是,调用修改接口<br>")
+    @PostMapping("/addLisMapping")
+    @SysLogger("addLisMapping")
+    public RespDTO<Boolean> addLisMapping(@RequestBody @Valid LisMappingVO lisMappingVO) {
+        return RespDTO.onSuc(lisMappingFacade.addLisMapping(lisMappingVO));
+    }
+
+    @ApiOperation(value = "化验公表项映射修改[by:zhaops]",
+            notes = "mealName:大项名称,必填<br>" +
+                    "itemName:小项名称<br>" +
+                    "uniqueName:公表名称,必填<br>")
+    @PostMapping("/modifyLisMapping")
+    @SysLogger("modifyLisMapping")
+    public RespDTO<Boolean> modifyLisMapping(@RequestBody @Valid LisMappingVO lisMappingVO) {
+        return RespDTO.onSuc(lisMappingFacade.modifyLisMapping(lisMappingVO));
+    }
+
+    @ApiOperation(value = "删除化验公表项映射[by:zhaops]",
+            notes = "id:id,必填<br>")
+    @PostMapping("/delLisMapping")
+    @SysLogger("delLisMapping")
+    public RespDTO<Boolean> delLisMapping(@RequestBody @Valid IdVO idVO) {
+        return RespDTO.onSuc(true);
+    }
+}