|
@@ -0,0 +1,110 @@
|
|
|
+package com.qunzhixinxi.hnqz.admin.oe.controller;
|
|
|
+
|
|
|
+import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
+import com.beust.jcommander.internal.Maps;
|
|
|
+import com.qunzhixinxi.hnqz.admin.oe.entity.dto.OeMedicineRequest;
|
|
|
+import com.qunzhixinxi.hnqz.admin.oe.entity.vo.OeMedicineVO;
|
|
|
+import com.qunzhixinxi.hnqz.common.core.util.R;
|
|
|
+import com.qunzhixinxi.hnqz.common.log.annotation.SysLog;
|
|
|
+import lombok.extern.slf4j.Slf4j;
|
|
|
+import org.springframework.web.bind.annotation.GetMapping;
|
|
|
+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 java.util.ArrayList;
|
|
|
+import java.util.List;
|
|
|
+import java.util.Map;
|
|
|
+
|
|
|
+/**
|
|
|
+ * oe药品管理控制器
|
|
|
+ *
|
|
|
+ * @author lixuesong
|
|
|
+ * @date 2023/08/07
|
|
|
+ */
|
|
|
+@Slf4j
|
|
|
+@RestController
|
|
|
+@RequestMapping("/oe/medicine")
|
|
|
+public class OeMedicineController {
|
|
|
+
|
|
|
+ /**
|
|
|
+ * oe药品保存
|
|
|
+ *
|
|
|
+ * @param toSaveMedicine 保存参数
|
|
|
+ * @return {@link R}<{@link ?}>
|
|
|
+ */
|
|
|
+ @SysLog("oe药品保存")
|
|
|
+ @PostMapping("/save")
|
|
|
+ public R<?> saveMedicine(@RequestBody OeMedicineRequest.ToSaveMedicine toSaveMedicine) {
|
|
|
+ log.info("oe药品保存参数:{}", toSaveMedicine);
|
|
|
+ // TODO
|
|
|
+ return R.ok();
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * oe药品更新
|
|
|
+ *
|
|
|
+ * @param toUpdateMedicine 保存参数
|
|
|
+ * @return {@link R}<{@link ?}>
|
|
|
+ */
|
|
|
+ @SysLog("oe药品更新")
|
|
|
+ @PostMapping("/update")
|
|
|
+ public R<?> updateMedicine(@RequestBody OeMedicineRequest.ToUpdateMedicine toUpdateMedicine) {
|
|
|
+ log.info("oe药品更新参数:{}", toUpdateMedicine);
|
|
|
+ // TODO
|
|
|
+ return R.ok();
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 推广药品列表
|
|
|
+ *
|
|
|
+ * @return {@link R}<{@link List}<{@link Map}<{@link String}, {@link String}>>>
|
|
|
+ */
|
|
|
+ @GetMapping("/list-tenant-medicine")
|
|
|
+ public R<List<Map<String, String>>> listTenantMedicine() {
|
|
|
+ List<Map<String, String>> list = new ArrayList<Map<String, String>>() {{
|
|
|
+ add(Maps.newHashMap("id", "1", "name", "药品1"));
|
|
|
+ add(Maps.newHashMap("id", "2", "name", "药品2"));
|
|
|
+ add(Maps.newHashMap("id", "3", "name", "药品3"));
|
|
|
+ }};
|
|
|
+
|
|
|
+ return R.ok(list);
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 分页查询药品
|
|
|
+ *
|
|
|
+ * @param page 分页参数
|
|
|
+ * @param name 名称
|
|
|
+ * @param commonName 通用名称
|
|
|
+ * @param productionEnterprise 生产企业
|
|
|
+ * @return {@link R}<{@link IPage}<{@link String}>>
|
|
|
+ */
|
|
|
+ @GetMapping("/page-medicine")
|
|
|
+ public R<IPage<OeMedicineVO>> pageMedicine(Page<OeMedicineVO> page, String name, String commonName, String productionEnterprise) {
|
|
|
+ int total = 20;
|
|
|
+ List<OeMedicineVO> list = new ArrayList<>();
|
|
|
+ for (int i = Math.toIntExact(page.getCurrent()); i < page.getSize(); i++) {
|
|
|
+ OeMedicineVO vo = new OeMedicineVO();
|
|
|
+ vo.setId((long) i);
|
|
|
+ vo.setName("商品名"+i);
|
|
|
+ vo.setCommonName("通用名"+i);
|
|
|
+ vo.setMah("上市许可持有人");
|
|
|
+ vo.setProductionEnterprise("生产企业"+i);
|
|
|
+ vo.setPromotedBusinessStatistics(10);
|
|
|
+ vo.setMedicalInsurance(i%2==0 ? Boolean.TRUE : Boolean.FALSE);
|
|
|
+ vo.setDosageForm(i%2==0 ?"片剂" : "注射液");
|
|
|
+ vo.setSpecification("0.1g");
|
|
|
+ vo.setDrugType(i%2==0 ? "仿制" : "原研");
|
|
|
+ list.add(vo);
|
|
|
+ }
|
|
|
+
|
|
|
+ page.setRecords(list);
|
|
|
+ page.setTotal(total);
|
|
|
+ page.setPages((total + page.getSize() - 1) / page.getSize());
|
|
|
+
|
|
|
+ return R.ok(page);
|
|
|
+ }
|
|
|
+}
|