Jelajahi Sumber

Merge branch 'medicare' of http://192.168.1.220:10080/Amoy2/wlyy2.0 into dev

chenjiasheng 3 tahun lalu
induk
melakukan
1284424528
16 mengubah file dengan 474 tambahan dan 215 penghapusan
  1. 2 1
      common/common-entity/src/main/java/com/yihu/jw/entity/a1entity/MediicinecabinetInventory.java
  2. 1 1
      common/common-entity/src/main/java/com/yihu/jw/entity/a1entity/Mediicinedevice.java
  3. 192 192
      common/common-entity/src/main/java/com/yihu/jw/entity/a1entity/Mediicineorder.java
  4. 4 3
      common/common-entity/src/main/java/com/yihu/jw/entity/a1entity/Mediicineorderdetail.java
  5. 2 1
      common/common-entity/src/main/java/com/yihu/jw/entity/a1entity/Mediicinestockout.java
  6. 3 2
      common/common-entity/src/main/java/com/yihu/jw/entity/a1entity/Mediicinestockoutdetail.java
  7. 3 2
      common/common-entity/src/main/java/com/yihu/jw/entity/a1entity/Mediicinestockrecorddetail.java
  8. 2 1
      common/common-entity/src/main/java/com/yihu/jw/entity/a1entity/Mediicinestockup.java
  9. 3 2
      common/common-entity/src/main/java/com/yihu/jw/entity/a1entity/Mediicinestockupdetail.java
  10. 2 1
      common/common-entity/src/main/java/com/yihu/jw/entity/a1entity/Mediicinestore.java
  11. 2 1
      common/common-entity/src/main/java/com/yihu/jw/entity/a1entity/Mediicineuser.java
  12. 4 3
      common/common-entity/src/main/java/com/yihu/jw/entity/a1entity/Mediicinewarray.java
  13. 1 0
      common/common-request-mapping/src/main/java/com/yihu/jw/rm/base/BaseRequestMapping.java
  14. 1 1
      svr/svr-base/src/main/java/com/yihu/jw/base/dao/a2dao/MediicineorderDao.java
  15. 18 0
      svr/svr-base/src/main/java/com/yihu/jw/base/endpoint/a4endpoint/MedicineOrderEndpoint.java
  16. 234 4
      svr/svr-base/src/main/java/com/yihu/jw/base/service/a3service/MedicineOrderService.java

+ 2 - 1
common/common-entity/src/main/java/com/yihu/jw/entity/a1entity/MediicinecabinetInventory.java

@ -1,5 +1,6 @@
package com.yihu.jw.entity.a1entity;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yihu.jw.entity.UuidIdentityEntityWithOperator;
import javax.persistence.Entity;
@ -108,7 +109,7 @@ public class MediicinecabinetInventory extends UuidIdentityEntityWithOperator im
    public void setNum(String num) {
        this.num = num;
    }
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+08:00")
    public Date getLongtime() {
        return longtime;
    }

+ 1 - 1
common/common-entity/src/main/java/com/yihu/jw/entity/a1entity/Mediicinedevice.java

@ -252,7 +252,7 @@ public class Mediicinedevice extends UuidIdentityEntityWithOperator implements S
    public void setEquInfo(String equInfo) {
        this.equInfo = equInfo;
    }
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+08:00")
    public Date getRegDate() {
        return regDate;
    }

+ 192 - 192
common/common-entity/src/main/java/com/yihu/jw/entity/a1entity/Mediicineorder.java

@ -13,65 +13,60 @@ import java.util.Date;
@Table(name = "t_mediicine_order")
public class Mediicineorder extends UuidIdentityEntityWithOperator implements Serializable {
    /**
     * 订单号
     * 住址
     */
    private String orderNum;
    private String address;
    /**
     * 订单状态
     * 年龄
     */
    private String orderState;
    private String age;
    /**
     * 出货状态
     * 交易金额
     */
    private String sellState;
    private String amount;
    /**
     * 取药区域
     * 货道信息
     */
    private String dispensingWindow;
    private String cargoInfo;
    /**
     * 开方时间
     * 联系方式
     */
    private Date prescribeTime;
    private String contact;
    /**
     * 处方号
     * 取药区域
     */
    private String prescribeNum;
    private String dispensingWindow;
    /**
     * 交易金额
     * 设备地址
     */
    private Float amount;
    private String equAddress;
    /**
     * 实收销售额
     * 设备编号
     */
    private Float netSaleAmount;
    private String equNum;
    /**
     * 商品总金额
     * 药品名称
     */
    private String goodsTotalAmount;
    private String goodsName;
    /**
     * 付款时间
     * 药品总金额
     */
    private Date payTime;
    private String goodsTotalAmount;
    /**
     * 订单来源
     * 身份证号
     */
    private String orderSource;
    private String idNum;
    /**
     * 存取信息
@ -79,16 +74,14 @@ public class Mediicineorder extends UuidIdentityEntityWithOperator implements Se
    private String infoAccess;
    /**
     * 取货码
     * 姓名
     */
    private String pickUpNum;
    private String name;
    /**
     *诊断信息
     * 实收销售额
     */
    private String info;
    private String netSaleAmount;
    /**
     * 订单金额
@ -96,45 +89,54 @@ public class Mediicineorder extends UuidIdentityEntityWithOperator implements Se
    private String orderAmount;
    /**
     * 订单类型
     * 订单号
     */
    private String orderType;
    private String orderNum;
    /**
     * 社保扣款
     * 订单来源
     */
    private String socialinsurPayment;
    private String orderSource;
    /**
     * 姓名
     * 订单状态
     */
    private String name;
    private String orderState;
    /**
     * 性别
     * 订单类型
     */
    private String sex;
    private String orderType;
    /**
     * 身份证号
     * 付款时间
     */
    private Date payTime;
    private String idNum;
    /**
     * 取药码
     */
    private String pickUpNum;
    /**
     * 年龄
     * 处方号
     */
    private String age;
    private String prescribeNum;
    /**
     * 联系方式
     * 开方时间
     */
    private String contact;
    private Date prescribeTime;
    /**
     * 住址
     * 出货状态
     */
    private String address;
    private String sellState;
    /**
     * 性别
     */
    private String sex;
    /**
     * 出货设备
@ -142,118 +144,123 @@ public class Mediicineorder extends UuidIdentityEntityWithOperator implements Se
    private String shippingEqu;
    /**
     * 设备编号
     * 出货时间
     */
    private String equNum;
    private Date shippingTime;
    /**
     * 设备地址
     * 社保扣款
     */
    private String equAddress;
    private String socialinsurPayment;
    /**
     * 商品名称
     * 订单属性
     */
    private String goodsName;
    private String attr;
    /**
     * 出货时间
     * 商户ID
     */
    private Date shippingTime;
    private String userId;
    /**
     * 货道信息
     * 门店编号
     */
    private String shopNo;
    /**
     * 医院信息
     */
    private String hospitalInfo;
    private String cargoInfo;
    /**
     * 出生日期
     */
    private Date birth;
    /*
    科室信息
    * */
    private String deptNum;
    private String deptName;
    /**
     *订单属性
     * 科室信息
     */
    private String attr;
    /**
     *商户ID
     */
    private String userId;
    private String deptNum;
    /**
     *门店编号
     * 科室名称
     */
    private String shopNo;
    private String deptName;
    /**
     *医生信息
     * 医生信息
     */
    private String doctorNum;
    /**
     *医生姓名
     * 医生姓名
     */
    private String doctorName;
    /**
     *医嘱
     * 医嘱
     */
    private String doctorAdvice;
    /**
     *过敏史
     * 过敏史
     */
    private String allergyInfo;
    /**
     *社保卡号
     * 诊断信息
     */
    private String info;
    /**
     * 社保卡号
     */
    private String socialSecurityCardNum;
    public Mediicineorder() {
    }
    public String getAddress() {
        return address;
    }
    public String getOrderNum() {
        return orderNum;
    public void setAddress(String address) {
        this.address = address;
    }
    public void setOrderNum(String orderNum) {
        this.orderNum = orderNum;
    public String getAge() {
        return age;
    }
    public String getOrderState() {
        return orderState;
    public void setAge(String age) {
        this.age = age;
    }
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+08:00")
    public void setBirth(Date birth) {
        this.birth = birth;
    public String getAmount() {
        return amount;
    }
    public void setAmount(String amount) {
        this.amount = amount;
    }
    public String getCargoInfo() {
        return cargoInfo;
    }
    public void setOrderState(String orderState) {
        this.orderState = orderState;
    public void setCargoInfo(String cargoInfo) {
        this.cargoInfo = cargoInfo;
    }
    public String getSellState() {
        return sellState;
    public String getContact() {
        return contact;
    }
    public void setSellState(String sellState) {
        this.sellState = sellState;
    public void setContact(String contact) {
        this.contact = contact;
    }
    public String getDispensingWindow() {
@ -264,38 +271,28 @@ public class Mediicineorder extends UuidIdentityEntityWithOperator implements Se
        this.dispensingWindow = dispensingWindow;
    }
    public Date getPrescribeTime() {
        return prescribeTime;
    }
    public void setPrescribeTime(Date prescribeTime) {
        this.prescribeTime = prescribeTime;
    }
    public String getPrescribeNum() {
        return prescribeNum;
    public String getEquAddress() {
        return equAddress;
    }
    public void setPrescribeNum(String prescribeNum) {
        this.prescribeNum = prescribeNum;
    public void setEquAddress(String equAddress) {
        this.equAddress = equAddress;
    }
    public Float getAmount() {
        return amount;
    public String getEquNum() {
        return equNum;
    }
    public void setAmount(Float amount) {
        this.amount = amount;
    public void setEquNum(String equNum) {
        this.equNum = equNum;
    }
    public Float getNetSaleAmount() {
        return netSaleAmount;
    public String getGoodsName() {
        return goodsName;
    }
    public void setNetSaleAmount(Float netSaleAmount) {
        this.netSaleAmount = netSaleAmount;
    public void setGoodsName(String goodsName) {
        this.goodsName = goodsName;
    }
    public String getGoodsTotalAmount() {
@ -306,20 +303,12 @@ public class Mediicineorder extends UuidIdentityEntityWithOperator implements Se
        this.goodsTotalAmount = goodsTotalAmount;
    }
    public Date getPayTime() {
        return payTime;
    }
    public void setPayTime(Date payTime) {
        this.payTime = payTime;
    }
    public String getOrderSource() {
        return orderSource;
    public String getIdNum() {
        return idNum;
    }
    public void setOrderSource(String orderSource) {
        this.orderSource = orderSource;
    public void setIdNum(String idNum) {
        this.idNum = idNum;
    }
    public String getInfoAccess() {
@ -330,118 +319,121 @@ public class Mediicineorder extends UuidIdentityEntityWithOperator implements Se
        this.infoAccess = infoAccess;
    }
    public String getPickUpNum() {
        return pickUpNum;
    public String getName() {
        return name;
    }
    public void setPickUpNum(String pickUpNum) {
        this.pickUpNum = pickUpNum;
    public void setName(String name) {
        this.name = name;
    }
    public String getOrderAmount() {
        return orderAmount;
    public String getNetSaleAmount() {
        return netSaleAmount;
    }
    public void setOrderAmount(String orderAmount) {
        this.orderAmount = orderAmount;
    public void setNetSaleAmount(String netSaleAmount) {
        this.netSaleAmount = netSaleAmount;
    }
    public String getOrderType() {
        return orderType;
    public String getOrderAmount() {
        return orderAmount;
    }
    public void setOrderType(String orderType) {
        this.orderType = orderType;
    public void setOrderAmount(String orderAmount) {
        this.orderAmount = orderAmount;
    }
    public String getSocialinsurPayment() {
        return socialinsurPayment;
    public String getOrderNum() {
        return orderNum;
    }
    public void setSocialinsurPayment(String socialinsurPayment) {
        this.socialinsurPayment = socialinsurPayment;
    public void setOrderNum(String orderNum) {
        this.orderNum = orderNum;
    }
    public String getName() {
        return name;
    public String getOrderSource() {
        return orderSource;
    }
    public void setName(String name) {
        this.name = name;
    public void setOrderSource(String orderSource) {
        this.orderSource = orderSource;
    }
    public String getSex() {
        return sex;
    public String getOrderState() {
        return orderState;
    }
    public void setSex(String sex) {
        this.sex = sex;
    public void setOrderState(String orderState) {
        this.orderState = orderState;
    }
    public String getIdNum() {
        return idNum;
    public String getOrderType() {
        return orderType;
    }
    public void setIdNum(String idNum) {
        this.idNum = idNum;
    public void setOrderType(String orderType) {
        this.orderType = orderType;
    }
    public String getAge() {
        return age;
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+08:00")
    public Date getPayTime() {
        return payTime;
    }
    public void setAge(String age) {
        this.age = age;
    public void setPayTime(Date payTime) {
        this.payTime = payTime;
    }
    public String getContact() {
        return contact;
    public String getPickUpNum() {
        return pickUpNum;
    }
    public void setContact(String contact) {
        this.contact = contact;
    public void setPickUpNum(String pickUpNum) {
        this.pickUpNum = pickUpNum;
    }
    public String getAddress() {
        return address;
    public String getPrescribeNum() {
        return prescribeNum;
    }
    public void setAddress(String address) {
        this.address = address;
    public void setPrescribeNum(String prescribeNum) {
        this.prescribeNum = prescribeNum;
    }
    public String getShippingEqu() {
        return shippingEqu;
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+08:00")
    public Date getPrescribeTime() {
        return prescribeTime;
    }
    public void setShippingEqu(String shippingEqu) {
        this.shippingEqu = shippingEqu;
    public void setPrescribeTime(Date prescribeTime) {
        this.prescribeTime = prescribeTime;
    }
    public String getEquNum() {
        return equNum;
    public String getSellState() {
        return sellState;
    }
    public void setEquNum(String equNum) {
        this.equNum = equNum;
    public void setSellState(String sellState) {
        this.sellState = sellState;
    }
    public String getEquAddress() {
        return equAddress;
    public String getSex() {
        return sex;
    }
    public void setEquAddress(String equAddress) {
        this.equAddress = equAddress;
    public void setSex(String sex) {
        this.sex = sex;
    }
    public String getGoodsName() {
        return goodsName;
    public String getShippingEqu() {
        return shippingEqu;
    }
    public void setGoodsName(String goodsName) {
        this.goodsName = goodsName;
    public void setShippingEqu(String shippingEqu) {
        this.shippingEqu = shippingEqu;
    }
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+08:00")
    public Date getShippingTime() {
        return shippingTime;
    }
@ -450,12 +442,12 @@ public class Mediicineorder extends UuidIdentityEntityWithOperator implements Se
        this.shippingTime = shippingTime;
    }
    public String getCargoInfo() {
        return cargoInfo;
    public String getSocialinsurPayment() {
        return socialinsurPayment;
    }
    public void setCargoInfo(String cargoInfo) {
        this.cargoInfo = cargoInfo;
    public void setSocialinsurPayment(String socialinsurPayment) {
        this.socialinsurPayment = socialinsurPayment;
    }
    public String getAttr() {
@ -490,6 +482,14 @@ public class Mediicineorder extends UuidIdentityEntityWithOperator implements Se
        this.hospitalInfo = hospitalInfo;
    }
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+08:00")
    public Date getBirth() {
        return birth;
    }
    public void setBirth(Date birth) {
        this.birth = birth;
    }
    public String getDeptNum() {
        return deptNum;

+ 4 - 3
common/common-entity/src/main/java/com/yihu/jw/entity/a1entity/Mediicineorderdetail.java

@ -1,5 +1,6 @@
package com.yihu.jw.entity.a1entity;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yihu.jw.entity.UuidIdentityEntityWithOperator;
import javax.persistence.Entity;
@ -337,7 +338,7 @@ public class Mediicineorderdetail extends UuidIdentityEntityWithOperator impleme
    public void setDispensingWindow(String dispensingWindow) {
        this.dispensingWindow = dispensingWindow;
    }
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+08:00")
    public Date getPrescribeTime() {
        return prescribeTime;
    }
@ -377,7 +378,7 @@ public class Mediicineorderdetail extends UuidIdentityEntityWithOperator impleme
    public void setGoodsTotalAmount(String goodsTotalAmount) {
        this.goodsTotalAmount = goodsTotalAmount;
    }
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+08:00")
    public Date getPayTime() {
        return payTime;
    }
@ -513,7 +514,7 @@ public class Mediicineorderdetail extends UuidIdentityEntityWithOperator impleme
    public void setGoodsName(String goodsName) {
        this.goodsName = goodsName;
    }
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+08:00")
    public Date getShippingTime() {
        return shippingTime;
    }

+ 2 - 1
common/common-entity/src/main/java/com/yihu/jw/entity/a1entity/Mediicinestockout.java

@ -1,6 +1,7 @@
package com.yihu.jw.entity.a1entity;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yihu.jw.entity.UuidIdentityEntityWithOperator;
import javax.persistence.Entity;
@ -143,7 +144,7 @@ public class Mediicinestockout extends UuidIdentityEntityWithOperator implements
    public void setReplenishInventory(String replenishInventory) {
        this.replenishInventory = replenishInventory;
    }
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+08:00")
    public Date getDocTime() {
        return docTime;
    }

+ 3 - 2
common/common-entity/src/main/java/com/yihu/jw/entity/a1entity/Mediicinestockoutdetail.java

@ -2,6 +2,7 @@ package com.yihu.jw.entity.a1entity;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yihu.jw.entity.UuidIdentityEntityWithOperator;
import javax.persistence.Entity;
@ -151,7 +152,7 @@ public class Mediicinestockoutdetail extends UuidIdentityEntityWithOperator impl
    public void setDrugCode(String drugCode) {
        this.drugCode = drugCode;
    }
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+08:00")
    public Date getProDate() {
        return proDate;
    }
@ -159,7 +160,7 @@ public class Mediicinestockoutdetail extends UuidIdentityEntityWithOperator impl
    public void setProDate(Date proDate) {
        this.proDate = proDate;
    }
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+08:00")
    public Date getExpDate() {
        return expDate;
    }

+ 3 - 2
common/common-entity/src/main/java/com/yihu/jw/entity/a1entity/Mediicinestockrecorddetail.java

@ -1,5 +1,6 @@
package com.yihu.jw.entity.a1entity;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yihu.jw.entity.UuidIdentityEntityWithOperator;
import javax.persistence.Entity;
@ -143,7 +144,7 @@ public class Mediicinestockrecorddetail extends UuidIdentityEntityWithOperator i
    public void setDrugCode(String drugCode) {
        this.drugCode = drugCode;
    }
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+08:00")
    public Date getProDate() {
        return proDate;
    }
@ -151,7 +152,7 @@ public class Mediicinestockrecorddetail extends UuidIdentityEntityWithOperator i
    public void setProDate(Date proDate) {
        this.proDate = proDate;
    }
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+08:00")
    public Date getExpDate() {
        return expDate;
    }

+ 2 - 1
common/common-entity/src/main/java/com/yihu/jw/entity/a1entity/Mediicinestockup.java

@ -1,6 +1,7 @@
package com.yihu.jw.entity.a1entity;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yihu.jw.entity.UuidIdentityEntityWithOperator;
import javax.persistence.Entity;
@ -125,7 +126,7 @@ public class Mediicinestockup extends UuidIdentityEntityWithOperator implements
    public void setDocNum(String docNum) {
        this.docNum = docNum;
    }
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+08:00")
    public Date getDocTime() {
        return docTime;
    }

+ 3 - 2
common/common-entity/src/main/java/com/yihu/jw/entity/a1entity/Mediicinestockupdetail.java

@ -1,5 +1,6 @@
package com.yihu.jw.entity.a1entity;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yihu.jw.entity.UuidIdentityEntityWithOperator;
import javax.persistence.Entity;
@ -154,7 +155,7 @@ public class Mediicinestockupdetail extends UuidIdentityEntityWithOperator imple
    public void setDrugCode(String drugCode) {
        this.drugCode = drugCode;
    }
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+08:00")
    public Date getProDate() {
        return proDate;
    }
@ -162,7 +163,7 @@ public class Mediicinestockupdetail extends UuidIdentityEntityWithOperator imple
    public void setProDate(Date proDate) {
        this.proDate = proDate;
    }
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+08:00")
    public Date getExpDate() {
        return expDate;
    }

+ 2 - 1
common/common-entity/src/main/java/com/yihu/jw/entity/a1entity/Mediicinestore.java

@ -1,5 +1,6 @@
package com.yihu.jw.entity.a1entity;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yihu.jw.entity.UuidIdentityEntityWithOperator;
import javax.persistence.Entity;
@ -74,7 +75,7 @@ public class Mediicinestore extends UuidIdentityEntityWithOperator implements Se
    public void setNum(String num) {
        this.num = num;
    }
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+08:00")
    public Date getLongtime() {
        return longtime;
    }

+ 2 - 1
common/common-entity/src/main/java/com/yihu/jw/entity/a1entity/Mediicineuser.java

@ -2,6 +2,7 @@ package com.yihu.jw.entity.a1entity;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yihu.jw.entity.UuidIdentityEntityWithOperator;
import javax.persistence.Entity;
@ -89,7 +90,7 @@ public class Mediicineuser extends UuidIdentityEntityWithOperator implements Ser
    public void setSex(String sex) {
        this.sex = sex;
    }
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+08:00")
    public Date getBirDate() {
        return birDate;
    }

+ 4 - 3
common/common-entity/src/main/java/com/yihu/jw/entity/a1entity/Mediicinewarray.java

@ -1,6 +1,7 @@
package com.yihu.jw.entity.a1entity;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yihu.jw.entity.UuidIdentityEntityWithOperator;
import javax.persistence.Entity;
@ -170,7 +171,7 @@ public class Mediicinewarray extends UuidIdentityEntityWithOperator implements S
    public void setType(String type) {
        this.type = type;
    }
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+08:00")
    public Date getLogTime() {
        return logTime;
    }
@ -266,7 +267,7 @@ public class Mediicinewarray extends UuidIdentityEntityWithOperator implements S
    public void setEquInfo(String equInfo) {
        this.equInfo = equInfo;
    }
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+08:00")
    public Date getRegDate() {
        return regDate;
    }
@ -362,7 +363,7 @@ public class Mediicinewarray extends UuidIdentityEntityWithOperator implements S
    public void setStatus(String status) {
        this.status = status;
    }
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+08:00")
    public Date getExceed() {
        return exceed;
    }

+ 1 - 0
common/common-request-mapping/src/main/java/com/yihu/jw/rm/base/BaseRequestMapping.java

@ -143,6 +143,7 @@ public class BaseRequestMapping {
        public static final String getOrderDetailListById  = "/getOrderDetailListById";
        public static final String getOrderDetailById  = "/getOrderDetailById";
        public static final String checkOrder  = "/checkOrder";
        public static final String checkOrderAndReturn  = "/checkOrderAndReturn";
        public static final String getOrderOutList  = "/getOrderOutList";
        public static final String updateOrderOutStatus  = "/updateOrderOutStatus";
        public static final String sumamount  = "/sumamount";

+ 1 - 1
svr/svr-base/src/main/java/com/yihu/jw/base/dao/a2dao/MediicineorderDao.java

@ -1,8 +1,8 @@
package com.yihu.jw.base.dao.a2dao;
import com.yihu.jw.entity.a1entity.Mediicineorder;
import com.yihu.jw.entity.a1entity.Mediicineorder;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.PagingAndSortingRepository;

+ 18 - 0
svr/svr-base/src/main/java/com/yihu/jw/base/endpoint/a4endpoint/MedicineOrderEndpoint.java

@ -227,6 +227,24 @@ public class MedicineOrderEndpoint extends EnvelopRestEndpoint {
    }
    @GetMapping(value = BaseRequestMapping.BaseOrder.checkOrderAndReturn)
    @ApiOperation(value = "检查订单并且返回列表" , notes="检查订单")
    public Envelop checkOrderAndReturn(
            @ApiParam(name = "deviceId", value = "设备id", required = true)
            @RequestParam(value = "deviceId", required = true) String deviceId,
            @ApiParam(name = "pickUpNum", value = "取药码")
            @RequestParam(value = "pickUpNum", required = false) String pickUpNum,
            @ApiParam(name = "cardNum", value = "社保卡号")
            @RequestParam(value = "cardNum", required = false) String cardNum
    ) {
        JSONObject jsonObject =  orderservice.checkOrderAndReturn(deviceId, pickUpNum, cardNum);
        if (jsonObject.getString("response").equalsIgnoreCase(ConstantUtils.FAIL)) {
            return failed(jsonObject.getString("msg"));
        }
        return success(jsonObject.getJSONObject("msg"));
    }
    @GetMapping(value = BaseRequestMapping.BaseOrder.getOrderOutList)
    @ApiOperation(value = "通过orderId查询订单出货单" , notes="通过orderId查询订单出货单")
    public Envelop getOrderOutList(

+ 234 - 4
svr/svr-base/src/main/java/com/yihu/jw/base/service/a3service/MedicineOrderService.java

@ -1,19 +1,15 @@
package com.yihu.jw.base.service.a3service;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.yihu.jw.base.dao.a2dao.*;
import com.yihu.jw.base.util.ConstantUtils;
import com.yihu.jw.base.util.JavaBeanUtils;
import com.yihu.jw.entity.a1entity.*;
import com.yihu.jw.entity.patient.Message;
import com.yihu.jw.util.date.DateUtil;
import com.yihu.jw.utils.StringUtil;
import com.yihu.jw.utils.hibernate.HibenateUtils;
import com.yihu.mysql.query.BaseJpaService;
import org.elasticsearch.common.recycler.Recycler;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@ -638,4 +634,238 @@ public class MedicineOrderService extends BaseJpaService<Mediicineorder, Mediici
    }
    /**
     * 检查订单&返回订单出货单列表
     * @param deviceId
     * @param pickUpNum
     * @param cardNum
     * @return
     */
    public JSONObject checkOrderAndReturn(String deviceId, String pickUpNum, String cardNum) {
        JSONObject result = new JSONObject();
        if (deviceId == null || StringUtils.isEmpty(deviceId)) {
            result.put("msg","parameter deviceId is null or empty");
            result.put("response", ConstantUtils.FAIL);
            return result;
        }
        if (pickUpNum == null && cardNum == null) {
            result.put("msg","parameter packUpNum or cardNum is null");
            result.put("response", ConstantUtils.FAIL);
            return result;
        }
        if (StringUtils.isEmpty(pickUpNum) && StringUtils.isEmpty(cardNum)) {
            result.put("msg","parameter pickUpNum or cardNum is empty");
            result.put("response", ConstantUtils.FAIL);
            return result;
        }
        Mediicineorder  mediicineorder = null;
        if (!StringUtils.isEmpty(pickUpNum)) {
            mediicineorder = orderDao.findMediicineorderByPickUpNum(pickUpNum);
        }
        if (!StringUtils.isEmpty(cardNum)) {
            mediicineorder = orderDao.findMediicineorderBySocialSecurityCardNum(cardNum);
        }
        if (mediicineorder == null) {
            result.put("msg","order doesn't exist");
            result.put("response", ConstantUtils.FAIL);
            return result;
        }
        //订单详细内容--备用方案
//        List<Mediicineorderdetail> list = orderdetailDao.findMediicineorderdetailsByIdOrder(mediicineorder.getId());
        String sql = "SELECT\n" +
                "    t.id AS id,\n" +
                "    t.batch_num AS batchNum,\n" +
                "    t.cargo_info AS cargoInfo,\n" +
                "    t.drug_code AS drugCode,\n" +
                "    t.id_order AS idOrder,\n" +
                "    t.med_info AS medInfo,\n" +
                "    t.order_no AS orderNo,\n" +
                "    t.price AS price,\n" +
                "    t.quantity AS quantity,\n" +
                "    t.address AS address,\n" +
                "    t.age AS age,\n" +
                "    t.amount AS amount,\n" +
                "    t.contact AS contact,\n" +
                "    t.dispensing_window AS dispensingWindow,\n" +
                "    t.equ_address AS equAddress,\n" +
                "    t.equ_num AS equNum,\n" +
                "    t.goods_name AS goodsName,\n" +
                "    t.goods_total_amount AS goodsTotalAmount,\n" +
                "    t.id_num AS idNum,\n" +
                "    t.info_access AS infoAccess,\n" +
                "    t.`name` AS `name`,\n" +
                "    t.net_sale_amount AS netSaleAmount,\n" +
                "    t.order_amount AS orderAmount,\n" +
                "    t.order_num AS orderNum,\n" +
                "    t.order_source AS orderSource,\n" +
                "    t.order_state AS orderState,\n" +
                "    t.order_type AS orderType,\n" +
                "    t.pay_time AS payTime,\n" +
                "    t.pick_up_num AS pickUpNum,\n" +
                "    t.prescribe_num AS prescribeNum,\n" +
                "    t.prescribe_time AS prescribeTime,\n" +
                "    t.sell_state AS sellState,\n" +
                "    t.sex AS sex,\n" +
                "    t.shipping_equ AS shippingEqu,\n" +
                "    t.shipping_time AS shippingTime,\n" +
                "    t.socialinsurpayment AS socialinsurpayment,\n" +
                "    t.create_time AS createTime,\n" +
                "    t.create_user AS createUser,\n" +
                "    t.create_user_name AS createUserName,\n" +
                "    t.update_time AS updateTime,\n" +
                "    t.update_user AS updateUser,\n" +
                "    t.update_user_name AS updateUserName,\n" +
                "    t.drug_sku AS drugSku,\n" +
                "    t.drug_num AS drugNum,\n" +
                "    t.specif AS specif,\n" +
                "    t.use_num AS useNum,\n" +
                "    t.use_way AS useWay,\n" +
                "    t.use_rate AS useRate,\n" +
                "    t.use_dose AS useDose,\n" +
                "    t.unit AS unit,\n" +
                "    t.use_way_add AS useWayAdd,\n" +
                "    t.manufactor AS manufactor,\n" +
                "    t.social_security_card_num AS socialSecurityCardNum,\n" +
                "    t.org_code AS orgCode\n" +
                "FROM\n" +
                "    t_mediicine_order_detail AS t\n";
        if (!StringUtils.isEmpty(pickUpNum)) {
            sql += "WHERE t.pick_up_num = '" + pickUpNum + "'";
        }
        if (!StringUtils.isEmpty(cardNum)) {
            if (!StringUtils.isEmpty(pickUpNum)) {
                sql += "AND t.social_security_card_num = '" + cardNum + "'";
            } else {
                sql += "WHERE t.social_security_card_num = '" + cardNum + "'";
            }
        }
        List<Map<String,Object>> list = null;
        //订单详细内容
        list = hibenateUtils.createSQLQuery(sql);
        //没有订单信息
        Boolean isInStock = true;
        for (Map<String, Object> stringObjectMap : list) {
            String secondSql = "SELECT\n" +
                    "\tifnull(\n" +
                    "\t\t(\n" +
                    "\t\t\tSELECT\n" +
                    "\t\t\t\tcount(DISTINCT(t.id))\n" +
                    "\t\t\tFROM\n" +
                    "\t\t\t\tt_mediicinecabinet_inventory t WHERE t.drug_code = '" + stringObjectMap.get("drugCode") + "'\n" +
                    "\t\t\tAND t.org_code = '" + stringObjectMap.get("orgCode") + "'\n" +
                    "\t\t\tAND t.id_device = '"+ deviceId + "'\n" +
                    "\t\t\tGROUP BY\n" +
                    "\t\t\t\tt.drug_code,\n" +
                    "\t\t\t\tt.org_code\n" +
                    "\t\t\tHAVING\n" +
                    "\t\t\t\tsum(t.qty) >= " + Integer.parseInt(String.valueOf(stringObjectMap.get("quantity"))) + "\n" +
                    "\t\t),\n" +
                    "\t\t0\n" +
                    "\t)";
            int count = jdbcTemplate.queryForObject(secondSql,Integer.class);
            stringObjectMap.put("status", 1);
            if (count == 0) {
                isInStock = false;
                stringObjectMap.put("status", 0);
//                result.put("response", ConstantUtils.FAIL);
//                return result;
            }
        }
        JSONObject jsonObject = new JSONObject();
        jsonObject.put("status", 0);
        if (!isInStock) {
            jsonObject.put("list", list);
            result.put("response", ConstantUtils.SUCCESS);
            result.put("msg", jsonObject);
            return result;
        }
        //生成出货单
        int count = jdbcTemplate.queryForObject(
                "SELECT\n" +
                        "\tcount(DISTINCT(id))\n" +
                        "FROM\n" +
                        "\tt_medicine_shipment_log\n" +
                        "WHERE\n" +
                        "\torder_id = '" + list.get(0).get("idOrder") + "'",Integer.class);
        if (count > 0) {
            String tempSql = "SELECT\n" +
                    "\tt.id AS id,\n" +
                    "\tt.device_id AS deviceId,\n" +
                    "\tt.order_id AS orderId,\n" +
                    "\tt.drug_id AS drugId,\n" +
                    "\tt.`status` AS `status`,\n" +
                    "\tt.out_time AS outTime,\n" +
                    "\tt.layer_no AS layerNo,\n" +
                    "\tt.wayer_no AS wayerNo,\n" +
                    "\tt.description AS description,\n" +
                    "\tt.create_time AS createTime,\n" +
                    "\tt.create_user AS createUser,\n" +
                    "\tt.create_user_name AS createUserName,\n" +
                    "\tt.update_time AS updateTime,\n" +
                    "\tt.update_user AS updateUser,\n" +
                    "\tt.update_user_name AS updateUserName\n" +
                    "FROM\n" +
                    "\tt_medicine_shipment_log AS t\n" +
                    "WHERE \n" +
                    "\tt.order_id = '" + mediicineorder.getId()+"'";
            List<Map<String, Object>> tempList = hibenateUtils.createSQLQuery(tempSql);
            jsonObject.put("list", tempList);
            jsonObject.put("status", 1);
            result.put("response", ConstantUtils.SUCCESS);
            result.put("msg", jsonObject);
            return result;
        }
        List<MedicineShipmentLog> shipmentLogs = new ArrayList<>();
        //订单详情遍历
        for (Map<String, Object> stringObjectMap : list) {
            Mediicinedrugs mediicinedrugs = drugsDao.findByDrugCodeAndOrgCode(stringObjectMap.get("drugCode").toString(), stringObjectMap.get("orgCode").toString());
            //订单药品数目
            Integer qty = Integer.parseInt(String.valueOf(stringObjectMap.get("quantity")));
            //库存集合
            List<Map<String, Object>> tempList = hibenateUtils.createSQLQuery(
                    "SELECT\n" +
                            "    t.id,\n" +
                            "    t.layer_no AS layerNo,\n" +
                            "    t.wayer_no AS wayerNo,\n" +
                            "    t.qty\n" +
                            "FROM\n" +
                            "\tt_mediicinecabinet_inventory t\n" +
                            "WHERE\n" +
                            "\tt.drug_code = '"+ stringObjectMap.get("drugCode") +"'\n" +
                            "AND t.org_code = '" + stringObjectMap.get("orgCode") +"'\n" +
                            "AND t.id_device = '" + deviceId + "'\n" +
                            "and t.qty > 0"
            );
            for (int i = 0; i < qty; i++) {
                for (Map<String, Object> objectMap : tempList) {
                    if (Integer.parseInt(String.valueOf(objectMap.get("qty"))) >0) {
                        objectMap.put("qty",Integer.parseInt(String.valueOf(objectMap.get("qty"))) - 1 );
                        MedicineShipmentLog shipmentLog = new MedicineShipmentLog();
                        shipmentLog.setDeviceId(deviceId);
                        shipmentLog.setOrderId(stringObjectMap.get("idOrder").toString());
                        shipmentLog.setDrugId(mediicinedrugs.getId());
                        shipmentLog.setStatus("1");
                        shipmentLog.setLayerNo(objectMap.get("layerNo").toString());
                        shipmentLog.setWayerNo(objectMap.get("wayerNo").toString());
                        shipmentLogDao.save(shipmentLog);
                        shipmentLogs.add(shipmentLog);
                    }
                }
            }
            //只生成出货单,不扣减药柜库存
//            for (Map<String, Object> objectMap : tempList) {
//                MediicinecabinetInventory inventory = inventoryDao.findOne(objectMap.get("id").toString());
//                inventory.setQty(String.valueOf(objectMap.get("qty")));
//                inventoryDao.save(inventory);
//            }
        }
        jsonObject.put("list", shipmentLogs);
        jsonObject.put("status", 1);
        result.put("response", ConstantUtils.SUCCESS);
        result.put("msg", jsonObject);
        return result;
    }
}