wangzhinan 3 年之前
父节点
当前提交
f3ad61b7bd
共有 19 个文件被更改,包括 220 次插入57 次删除
  1. 2 1
      common/common-entity/src/main/java/com/yihu/jw/entity/a1entity/MediicinecabinetInventory.java
  2. 13 0
      common/common-entity/src/main/java/com/yihu/jw/entity/a1entity/Mediicinedrugs.java
  3. 52 0
      common/common-entity/src/main/java/com/yihu/jw/entity/a1entity/RuleDO.java
  4. 2 0
      common/common-request-mapping/src/main/java/com/yihu/jw/rm/base/BaseRequestMapping.java
  5. 3 1
      svr/svr-base/src/main/java/com/yihu/jw/base/dao/a2dao/MedicineWarrayRuleDao.java
  6. 11 0
      svr/svr-base/src/main/java/com/yihu/jw/base/dao/a2dao/MediicinecabinetInventoryDao.java
  7. 4 0
      svr/svr-base/src/main/java/com/yihu/jw/base/dao/a2dao/MediicinestockupDao.java
  8. 3 0
      svr/svr-base/src/main/java/com/yihu/jw/base/dao/a2dao/MediicinestockupdetailDao.java
  9. 21 28
      svr/svr-base/src/main/java/com/yihu/jw/base/endpoint/a4endpoint/MedicineDeviceEndpoint.java
  10. 3 1
      svr/svr-base/src/main/java/com/yihu/jw/base/endpoint/a4endpoint/MedicineOutEndpoint.java
  11. 3 1
      svr/svr-base/src/main/java/com/yihu/jw/base/endpoint/a4endpoint/MedicineUpEndpoint.java
  12. 5 1
      svr/svr-base/src/main/java/com/yihu/jw/base/endpoint/a4endpoint/MedicineWarrayEndpoint.java
  13. 2 2
      svr/svr-base/src/main/java/com/yihu/jw/base/service/a3service/MedicineDrugsService.java
  14. 1 1
      svr/svr-base/src/main/java/com/yihu/jw/base/service/a3service/MedicineOrderService.java
  15. 61 8
      svr/svr-base/src/main/java/com/yihu/jw/base/service/a3service/MedicineServive.java
  16. 5 2
      svr/svr-base/src/main/java/com/yihu/jw/base/service/a3service/MedicineStockOutService.java
  17. 6 2
      svr/svr-base/src/main/java/com/yihu/jw/base/service/a3service/MedicineStockUpService.java
  18. 12 8
      svr/svr-base/src/main/java/com/yihu/jw/base/service/a3service/MedicineWarrayService.java
  19. 11 1
      svr/svr-base/src/main/java/com/yihu/jw/base/service/a3service/MedicinedeviceService.java

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

@ -125,9 +125,10 @@ public class MediicinecabinetInventory extends UuidIdentityEntityWithOperator im
    private String faultState;
    private String faultState;
    /**
    /**
     * 2021-12-29 额定库存,用于设备药品库存预警,
     * 2021-12-29 额定库存,用于设备药品库存预警,单货道额定库存------->统计判断缺货在进行累加
     * 初始化为0,+
     * 初始化为0,+
     * 重置设备(解绑设备)为0,+
     * 重置设备(解绑设备)为0,+
     * 设定商品,更换商品,矫正库存--->qty,下架药品-->0 +
     */
     */
    private Integer ratedInventory;
    private Integer ratedInventory;

+ 13 - 0
common/common-entity/src/main/java/com/yihu/jw/entity/a1entity/Mediicinedrugs.java

@ -223,6 +223,11 @@ public class Mediicinedrugs extends UuidIdentityEntityWithOperator implements Se
     */
     */
    private String orgName;
    private String orgName;
    /**
     * 拼音码
     */
    private String spellCode;
    public Mediicinedrugs() {
    public Mediicinedrugs() {
    }
    }
@ -500,4 +505,12 @@ public class Mediicinedrugs extends UuidIdentityEntityWithOperator implements Se
    public void setOrgName(String orgName) {
    public void setOrgName(String orgName) {
        this.orgName = orgName;
        this.orgName = orgName;
    }
    }
    public String getSpellCode() {
        return spellCode;
    }
    public void setSpellCode(String spellCode) {
        this.spellCode = spellCode;
    }
}
}

+ 52 - 0
common/common-entity/src/main/java/com/yihu/jw/entity/a1entity/RuleDO.java

@ -0,0 +1,52 @@
package com.yihu.jw.entity.a1entity;
import java.io.Serializable;
public class RuleDO implements Serializable {
    private Integer upper;
    private Integer lower;
    private Integer matchValue;
    private String matchUnit;
    public RuleDO() {
    }
    public Integer getUpper() {
        return upper;
    }
    public void setUpper(Integer upper) {
        this.upper = upper;
    }
    public Integer getLower() {
        return lower;
    }
    public void setLower(Integer lower) {
        this.lower = lower;
    }
    public Integer getMatchValue() {
        return matchValue;
    }
    public void setMatchValue(Integer matchValue) {
        this.matchValue = matchValue;
    }
    public String getMatchUnit() {
        return matchUnit;
    }
    public void setMatchUnit(String matchUnit) {
        this.matchUnit = matchUnit;
    }
}

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

@ -240,6 +240,8 @@ public class BaseRequestMapping {
        public static final String getDevicePriceStatistics = "/getDevicePriceStatistics";
        public static final String getDevicePriceStatistics = "/getDevicePriceStatistics";
        public static final String getShippingType = "/getShippingType";
        public static final String getShippingType = "/getShippingType";
        public static final String getPrescriptionStatics = "/getPrescriptionStatics";
        public static final String getPrescriptionStatics = "/getPrescriptionStatics";
        public static final String SYSTEMUPDATE  = "/systemUpdate";
    }
    }
    /**
    /**

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

@ -4,8 +4,10 @@ package com.yihu.jw.base.dao.a2dao;
import com.yihu.jw.entity.a1entity.MedicineWarrayRule;
import com.yihu.jw.entity.a1entity.MedicineWarrayRule;
import org.springframework.data.repository.PagingAndSortingRepository;
import org.springframework.data.repository.PagingAndSortingRepository;
import java.util.List;
public interface MedicineWarrayRuleDao extends PagingAndSortingRepository<MedicineWarrayRule, String> {
public interface MedicineWarrayRuleDao extends PagingAndSortingRepository<MedicineWarrayRule, String> {
    MedicineWarrayRule findMedicineWarrayRuleByEquNumAndDel(String equNum, Integer del);
    List<MedicineWarrayRule> findMedicineWarrayRulesByEquNumAndDel(String equNum, Integer del);
}
}

+ 11 - 0
svr/svr-base/src/main/java/com/yihu/jw/base/dao/a2dao/MediicinecabinetInventoryDao.java

@ -26,4 +26,15 @@ public interface MediicinecabinetInventoryDao extends PagingAndSortingRepository
    List<MediicinecabinetInventory> findMediicinecabinetInventoriesByLayerNoAndMerge(String layerNo, String merge);
    List<MediicinecabinetInventory> findMediicinecabinetInventoriesByLayerNoAndMerge(String layerNo, String merge);
    List<MediicinecabinetInventory> findMediicinecabinetInventoriesByIdDeviceAndStateInAndDrugCodeNotNullAndAndOrgCodeNotNull(String deviceId, String[] states);
    @Query("select sum(qty) as qty, drugCode as drugCode, orgCode as orgCode, sum(ratedInventory) as ratedInventory from MediicinecabinetInventory where idDevice = ?1 and state in ?2 and drugCode is not null and orgCode is not null group by drugCode,orgCode")
    List<Map<String, Object>> selectsomethingBysomeCondition(String deviceId, String[] states);
    @Query("select sum(qty) as qty, drugCode as drugCode, orgCode as orgCode, sum(ratedInventory) as ratedInventory from MediicinecabinetInventory where equNum = ?1 and state in ?2 and drugCode is not null and orgCode is not null group by drugCode,orgCode")
    List<Map<String, Object>> selectsomethingBysomeConditionWithEquNum(String equNum, String[] states);
}
}

+ 4 - 0
svr/svr-base/src/main/java/com/yihu/jw/base/dao/a2dao/MediicinestockupDao.java

@ -14,4 +14,8 @@ public interface MediicinestockupDao extends PagingAndSortingRepository<Mediicin
    @Query("select a from Mediicinestockup a  ")
    @Query("select a from Mediicinestockup a  ")
    List<Mediicinestockup> getlist();
    List<Mediicinestockup> getlist();
    @Query(" select id as id from Mediicinestockup where replenishEr = ?1 and replenishEqu = ?2 and state = ?3")
    List<String> selectUpIdsByReplenishErAndReplenishEquAndState(String userId, String deviceId, String state);
}
}

+ 3 - 0
svr/svr-base/src/main/java/com/yihu/jw/base/dao/a2dao/MediicinestockupdetailDao.java

@ -13,4 +13,7 @@ public interface MediicinestockupdetailDao extends PagingAndSortingRepository<Me
    //按订单号出货明细
    //按订单号出货明细
    @Query("select a from Mediicinestockupdetail a where a.idstockup =  ?1 ")
    @Query("select a from Mediicinestockupdetail a where a.idstockup =  ?1 ")
    List<Mediicinestockupdetail> getoutdetail(String idstockup);
    List<Mediicinestockupdetail> getoutdetail(String idstockup);
    List<Mediicinestockupdetail> findMediicinestockupdetailsByIdstockupInOrderByIdstockupAscCreateTimeDesc(List<String> ids);
}
}

+ 21 - 28
svr/svr-base/src/main/java/com/yihu/jw/base/endpoint/a4endpoint/MedicineDeviceEndpoint.java

@ -3,6 +3,7 @@ package com.yihu.jw.base.endpoint.a4endpoint;
import com.alibaba.fastjson.JSONObject;
import com.alibaba.fastjson.JSONObject;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.yihu.jw.base.service.a3service.MedicineServive;
import com.yihu.jw.base.service.a3service.MedicinedeviceService;
import com.yihu.jw.base.service.a3service.MedicinedeviceService;
import com.yihu.jw.base.util.ConstantUtils;
import com.yihu.jw.base.util.ConstantUtils;
import com.yihu.jw.entity.a1entity.MedicineDeviceDelivery;
import com.yihu.jw.entity.a1entity.MedicineDeviceDelivery;
@ -19,7 +20,6 @@ import com.yihu.jw.rm.base.BaseRequestMapping;
import io.swagger.annotations.Api;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import io.swagger.annotations.ApiParam;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.bind.annotation.*;
@ -35,6 +35,8 @@ public class MedicineDeviceEndpoint extends EnvelopRestEndpoint {
    @Autowired
    @Autowired
    private  MedicinedeviceService deviceService;
    private  MedicinedeviceService deviceService;
    @Autowired
    private MedicineServive medicineServive;
    @Autowired
    @Autowired
    private ObjectMapper objectMapper;
    private ObjectMapper objectMapper;
@ -749,33 +751,24 @@ public class MedicineDeviceEndpoint extends EnvelopRestEndpoint {
    }
    }
    @PostMapping(value = BaseRequestMapping.BaseDevice.setWarrayRule)
    @ApiOperation(value = "设置设备药品库存报警规则")
    public Envelop setWarrayRule(
            @ApiParam(name = "isAll", value = "是否全部设备", required = true)
            @RequestParam(value = "isAll") Boolean isAll,
            @ApiParam(name = "equNums", value = "设备编号串,多个用英文逗号隔开")
            @RequestParam(value = "equNums", required = false) String equNums,
            @ApiParam(name = "rule1", value = "规则1")
            @RequestParam(value = "rule1", required = false ) String rule1,
            @ApiParam(name = "rule2", value = "规则2")
            @RequestParam(value = "rule2", required = false) String rule2
            ,@ApiParam(name = "userId", value = "用户id", required = true)
            @RequestParam(value = "userId") String userId) throws Exception {
        if (StringUtils.isEmpty(rule1) && StringUtils.isEmpty(rule2)) {
            return failed("预警规则为空");
        }
        if (!isAll && StringUtils.isEmpty(equNums)) {
            return failed("未选择设备");
        }
        String str = deviceService.setMedicineWarrayRule(isAll, equNums, rule1, rule2, userId);
        JSONObject jsonObject = JSONObject.parseObject(str);
        if (jsonObject.getString("response").equalsIgnoreCase(ConstantUtils.FAIL)) {
            return failed(jsonObject.getString("msg"));
        }
        return success(jsonObject.getString("response"));
    /**
     * 设备端系统更新
     * @param equNum
     * @param type
     * @param mess
     * @return
     * @throws Exception
     */
    @PostMapping(value = BaseRequestMapping.BaseDevice.SYSTEMUPDATE)
    @ApiOperation(value = "设备端系统更新")
    public Envelop systemUpdate(
            @ApiParam(name = "equNum", value = "设备编码", required = false)
            @RequestParam(value = "equNum", required = false) String equNum,
            @ApiParam(name = "type", value = "事件类型", required = true)
            @RequestParam(value = "type", required = true) String type,
            @ApiParam(name = "mess", value = "事件说明", required = true)
            @RequestParam(value = "mess", required = true) String mess) throws Exception {
        return success(medicineServive.systemUpdate(equNum,type,mess));
    }
    }
}
}

+ 3 - 1
svr/svr-base/src/main/java/com/yihu/jw/base/endpoint/a4endpoint/MedicineOutEndpoint.java

@ -133,6 +133,8 @@ public class MedicineOutEndpoint extends EnvelopRestEndpoint {
            @RequestParam(value = "replenishEr", required = false) String replenishEr,
            @RequestParam(value = "replenishEr", required = false) String replenishEr,
            @ApiParam(name = "docNum", value = "单号")
            @ApiParam(name = "docNum", value = "单号")
            @RequestParam(value = "docNum", required = false) String docNum,
            @RequestParam(value = "docNum", required = false) String docNum,
            @ApiParam(name = "deviceId", value = "设备id")
            @RequestParam(value = "deviceId", required = false) String deviceId,
            @ApiParam(name = "receiveState", value = "领料状态")
            @ApiParam(name = "receiveState", value = "领料状态")
            @RequestParam(value = "receiveState", required = false) String receiveState,
            @RequestParam(value = "receiveState", required = false) String receiveState,
            @ApiParam(name = "userId", value = "用户id")
            @ApiParam(name = "userId", value = "用户id")
@ -141,7 +143,7 @@ public class MedicineOutEndpoint extends EnvelopRestEndpoint {
            @RequestParam(value = "page") int page,
            @RequestParam(value = "page") int page,
            @ApiParam(name = "size", value = "页码", required = true, defaultValue = "15")
            @ApiParam(name = "size", value = "页码", required = true, defaultValue = "15")
            @RequestParam(value = "size") int size) throws Exception {
            @RequestParam(value = "size") int size) throws Exception {
        JSONObject result = stockoutService.queryOutListFullInfo(startTime, endTime, replenishEr, docNum,receiveState, userId, page,size,wechatId);
        JSONObject result = stockoutService.queryOutListFullInfo(deviceId,startTime, endTime, replenishEr, docNum,receiveState, userId, page,size,wechatId);
        return success(result.getJSONArray("msg"),result.getInteger("count"),page,size);
        return success(result.getJSONArray("msg"),result.getInteger("count"),page,size);
    }
    }

+ 3 - 1
svr/svr-base/src/main/java/com/yihu/jw/base/endpoint/a4endpoint/MedicineUpEndpoint.java

@ -101,13 +101,15 @@ public class MedicineUpEndpoint extends EnvelopRestEndpoint {
            @RequestParam(value = "community", required = false) String community,
            @RequestParam(value = "community", required = false) String community,
            @ApiParam(name = "state", value = "备货单状态,1已生成,2未生成,3删除")
            @ApiParam(name = "state", value = "备货单状态,1已生成,2未生成,3删除")
            @RequestParam(value = "state", required = false) String state,
            @RequestParam(value = "state", required = false) String state,
            @ApiParam(name = "deviceId", value = "设备id")
            @RequestParam(value = "deviceId", required = false) String deviceId,
            @ApiParam(name = "userId", value = "用户id")
            @ApiParam(name = "userId", value = "用户id")
            @RequestParam(value = "userId", required = true) String userId,
            @RequestParam(value = "userId", required = true) String userId,
            @ApiParam(name = "page", value = "分页大小", required = true, defaultValue = "1")
            @ApiParam(name = "page", value = "分页大小", required = true, defaultValue = "1")
            @RequestParam(value = "page") int page,
            @RequestParam(value = "page") int page,
            @ApiParam(name = "size", value = "页码", required = true, defaultValue = "15")
            @ApiParam(name = "size", value = "页码", required = true, defaultValue = "15")
            @RequestParam(value = "size") int size) throws Exception {
            @RequestParam(value = "size") int size) throws Exception {
        JSONObject result = stockupService.queryUpListFullInfo(startTime, endTime, content, community, state, userId,page,size,wechatId);
        JSONObject result = stockupService.queryUpListFullInfo(deviceId,startTime, endTime, content, community, state, userId,page,size,wechatId);
        return success(result.getJSONArray("msg"),result.getInteger("count"),page,size);
        return success(result.getJSONArray("msg"),result.getInteger("count"),page,size);
    }
    }

+ 5 - 1
svr/svr-base/src/main/java/com/yihu/jw/base/endpoint/a4endpoint/MedicineWarrayEndpoint.java

@ -64,6 +64,10 @@ public class MedicineWarrayEndpoint extends EnvelopRestEndpoint {
            @RequestParam(value = "lowT",required = false) String lowT,
            @RequestParam(value = "lowT",required = false) String lowT,
            @ApiParam(name = "heightT", value = "温度上限", required = false, defaultValue = "")
            @ApiParam(name = "heightT", value = "温度上限", required = false, defaultValue = "")
            @RequestParam(value = "heightT",required = false) String heightT,
            @RequestParam(value = "heightT",required = false) String heightT,
            @ApiParam(name = "lowH", value = "湿度下限", required = false, defaultValue = "")
            @RequestParam(value = "lowH",required = false) String lowH,
            @ApiParam(name = "heightH", value = "湿度上限", required = false, defaultValue = "")
            @RequestParam(value = "heightH",required = false) String heightH,
            @ApiParam(name = "content", value = "搜索内容")
            @ApiParam(name = "content", value = "搜索内容")
            @RequestParam(value = "content", required = false) String content,
            @RequestParam(value = "content", required = false) String content,
            @ApiParam(name = "startTime", value = "开始时间", required = false, defaultValue = "")
            @ApiParam(name = "startTime", value = "开始时间", required = false, defaultValue = "")
@ -74,7 +78,7 @@ public class MedicineWarrayEndpoint extends EnvelopRestEndpoint {
            @RequestParam(value = "page") int page,
            @RequestParam(value = "page") int page,
            @ApiParam(name = "size", value = "分页大小", required = true, defaultValue = "15")
            @ApiParam(name = "size", value = "分页大小", required = true, defaultValue = "15")
            @RequestParam(value = "size") int size) throws Exception {
            @RequestParam(value = "size") int size) throws Exception {
        JSONObject result = warraytService.getTemperature(equNum, equType,networkStatus, lowT, heightT, content,startTime, endTime,page,size);
        JSONObject result = warraytService.getTemperature(equNum, equType,networkStatus, lowT, heightT,lowH,heightH, content,startTime, endTime,page,size);
        return success(result.getJSONArray("msg"),result.getInteger("count"),page,size);
        return success(result.getJSONArray("msg"),result.getInteger("count"),page,size);
    }
    }

+ 2 - 2
svr/svr-base/src/main/java/com/yihu/jw/base/service/a3service/MedicineDrugsService.java

@ -301,7 +301,7 @@ public class MedicineDrugsService extends BaseJpaService<Mediicinedrugs, Mediici
            conditionSql += " and t.state = '" + state + "'";
            conditionSql += " and t.state = '" + state + "'";
        }
        }
        if (!StringUtils.isEmpty(content)){
        if (!StringUtils.isEmpty(content)){
            conditionSql += " AND CONCAT(IFNULL(t.`drug_code`,''), IFNULL(t.`drug_bar_code`,''), IFNULL(t.`drug_name`,''), IFNULL(t.`drug_short_code`,'')) like '%"+content+"%'";
            conditionSql += " AND CONCAT(IFNULL(t.drug_code,''), IFNULL(t.drug_bar_code,''), IFNULL(t.drug_name,''), IFNULL(t.drug_short_code,''), IFNULL(lower(t.spell_code),'')) like '%"+content.toLowerCase()+"%'";
        }
        }
        if (!StringUtils.isEmpty(drugClass)){
        if (!StringUtils.isEmpty(drugClass)){
            conditionSql += " and t.drug_class_code = '" + drugClass + "'";
            conditionSql += " and t.drug_class_code = '" + drugClass + "'";
@ -415,7 +415,7 @@ public class MedicineDrugsService extends BaseJpaService<Mediicinedrugs, Mediici
        String conditionSql = " WHERE t.org_code = '" + mediicinedevice.getBelongCommunity() + "'\n";
        String conditionSql = " WHERE t.org_code = '" + mediicinedevice.getBelongCommunity() + "'\n";
        if (!StringUtils.isEmpty(content)) {
        if (!StringUtils.isEmpty(content)) {
            conditionSql += " AND CONCAT(IFNULL(t.`drug_name`,''),IFNULL(t.`drug_code`,''),IFNULL(t.`drug_name_alies`,'')) LIKE '%" + content + "%'";
            conditionSql += " AND CONCAT(IFNULL(t.drug_name,''),IFNULL(t.drug_code,''),IFNULL(t.drug_name_alies,''),IFNULL(lower(t.spell_code),'')) LIKE '%" + content.toLowerCase() + "%'";
        }
        }
//        List<Mediicinedrugs> mediicinedrugs = drugsDao.findMediicinedrugsByOrgCode(mediicinedevice.getBelongCommunity());
//        List<Mediicinedrugs> mediicinedrugs = drugsDao.findMediicinedrugsByOrgCode(mediicinedevice.getBelongCommunity());
        result.put("msg", hibenateUtils.createSQLQuery(sql + conditionSql));
        result.put("msg", hibenateUtils.createSQLQuery(sql + conditionSql));

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

@ -440,7 +440,7 @@ public class MedicineOrderService extends BaseJpaService<Mediicineorder, Mediici
        jsonObject.put("orderTypeName", orderTypeMap.get(mediicineorder.getOrderType()));
        jsonObject.put("orderTypeName", orderTypeMap.get(mediicineorder.getOrderType()));
        //取药码
        //取药码
        jsonObject.put("pickUpNum", mediicineorder.getPickUpNum());
        jsonObject.put("pickUpNum", mediicineorder.getPickUpNum());
        jsonObject.put("device", StringUtils.isEmpty(mediicineorder.getShippingEqu()) ? null : deviceDao.findOne(mediicineorder.getShippingEqu()));
        jsonObject.put("device", StringUtils.isEmpty(mediicineorder.getShippingEqu()) ? null : deviceDao.findMediicinedeviceByEquNum(mediicineorder.getShippingEqu()));
        result.put("msg", jsonObject);
        result.put("msg", jsonObject);
        result.put("response", ConstantUtils.SUCCESS);
        result.put("response", ConstantUtils.SUCCESS);
        return result;
        return result;

+ 61 - 8
svr/svr-base/src/main/java/com/yihu/jw/base/service/a3service/MedicineServive.java

@ -2,9 +2,10 @@ package com.yihu.jw.base.service.a3service;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.alibaba.fastjson.JSONObject;
import com.yihu.jw.base.dao.a2dao.MediicineDeviceDao;
import com.yihu.jw.base.dao.a2dao.MediicinedrugsDao;
import com.yihu.jw.base.dao.a2dao.MediicinedrugsDao;
import com.yihu.jw.entity.a1entity.Mediicinedevice;
import com.yihu.jw.entity.a1entity.Mediicinedrugs;
import com.yihu.jw.entity.a1entity.Mediicinedrugs;
import com.yihu.jw.hospital.HospitalDao;
import com.yihu.jw.util.http.HttpClientUtil;
import com.yihu.jw.util.http.HttpClientUtil;
import com.yihu.jw.wlyy.wlyyhttp.WlyyHttpService;
import com.yihu.jw.wlyy.wlyyhttp.WlyyHttpService;
import org.apache.commons.lang3.StringUtils;
import org.apache.commons.lang3.StringUtils;
@ -26,6 +27,9 @@ public class MedicineServive {
    private HttpClientUtil httpClientUtil;
    private HttpClientUtil httpClientUtil;
    @Autowired
    @Autowired
    private MediicinedrugsDao mediicinedrugsDao;
    private MediicinedrugsDao mediicinedrugsDao;
    @Autowired
    private MediicineDeviceDao deviceDao;
    @Value("${medicine.socketUrl}")
    @Value("${medicine.socketUrl}")
    private String socketUrl;
    private String socketUrl;
@ -69,6 +73,7 @@ public class MedicineServive {
                        org.setOrgCode(h.getString("orgCode"));
                        org.setOrgCode(h.getString("orgCode"));
                        org.setQuantityUnit(h.getString("quantity_unit_name"));
                        org.setQuantityUnit(h.getString("quantity_unit_name"));
                        org.setPackUnit(h.getString("pack_unit_name"));
                        org.setPackUnit(h.getString("pack_unit_name"));
                        org.setSpellCode(h.getString("spellCode"));
                        list.add(org);
                        list.add(org);
                        addCount++;
                        addCount++;
                    } else {
                    } else {
@ -85,6 +90,7 @@ public class MedicineServive {
                        org.setOrgCode(h.getString("orgCode"));
                        org.setOrgCode(h.getString("orgCode"));
                        org.setQuantityUnit(h.getString("quantity_unit_name"));
                        org.setQuantityUnit(h.getString("quantity_unit_name"));
                        org.setPackUnit(h.getString("pack_unit_name"));
                        org.setPackUnit(h.getString("pack_unit_name"));
                        org.setSpellCode(h.getString("spellCode"));
                        list.add(org);
                        list.add(org);
                        updateCount++;
                        updateCount++;
                    }
                    }
@ -99,24 +105,71 @@ public class MedicineServive {
            , Boolean humidityControl, Boolean heat) throws Exception {
            , Boolean humidityControl, Boolean heat) throws Exception {
        JSONObject object = new JSONObject();
        JSONObject object = new JSONObject();
        String param = "";
        String param = "";
        if (StringUtils.isNoneBlank(devId)) {
        if (StringUtils.isNoneBlank(devId)) {
            param = "?devId=" + devId;
            param += "?devId=" + devId;
        }
        }
        if (StringUtils.isNoneBlank(temperature)) {
        if (StringUtils.isNoneBlank(temperature)) {
            param += "?temperature=" + temperature;
            object.put("temperature",temperature);
        }
        }
        if (StringUtils.isNoneBlank(humidity)) {
        if (StringUtils.isNoneBlank(humidity)) {
            param += "?humidity=" + humidity;
            object.put("humidity",humidity);
        }
        }
        param += "?temperatureControl=" + temperatureControl;
        param += "?humidityControl=" + humidityControl;
        param += "?heat=" + heat;
        object.put("temperatureControl",temperatureControl);
        object.put("humidityControl",humidityControl);
        object.put("heat",heat);
        param+="&type=SetTemperatureAndHumidity&mess="+object.toJSONString()+"";
        String res = httpClientUtil.get(socketUrl+param,"utf-8");
        String res = httpClientUtil.get(socketUrl+param,"utf-8");
       System.out.println(res);
        System.out.println(res);
        /* if (StringUtils.isNoneBlank(res)){
        /* if (StringUtils.isNoneBlank(res)){
            object =JSONObject.parseObject(res);
            object =JSONObject.parseObject(res);
        }else{
        }else{
            throw new Exception("调用设备通信接口设置温湿度失败!");
            throw new Exception("调用设备通信接口设置温湿度失败!");
        }*/
        }*/
    }
    }
    /**
     * socket发送事件
     * @param devId
     * @param type
     * @param message
     * @throws Exception
     */
    public String sendSocketMessage(String devId, String type,String message) throws Exception {
        JSONObject object = new JSONObject();
        String param = "";
        if (StringUtils.isNoneBlank(devId)) {
            param = "?devId=" + devId;
        }
        param +="&type="+type+"&mess="+message+"";
        String res = httpClientUtil.get(socketUrl+param,"utf-8");
        System.out.println(res);
        return res;
    }
    /**
     * socket发送事件
     * @param equNum
     * @param type
     * @param message
     * @throws Exception
     */
    public String systemUpdate(String equNum, String type,String message) throws Exception {
        int i=0;
        if (StringUtils.isNoneBlank(equNum)){
            String res = sendSocketMessage(equNum+"_T",type,message);
            logger.info("更新设备"+res);
            i++;
        }else {
            List<Mediicinedevice> mediicinedeviceList =deviceDao.selectByBelongComminity();
            for (Mediicinedevice mediicinedevice:mediicinedeviceList){
                String res = sendSocketMessage(mediicinedevice.getEquNum()+"_T",type,message);
                logger.info("更新设备"+res);
                i++;
            }
            logger.info("更新"+i+"台设备");
        }
        return "更新"+i+"台设备";
    }
}
}

+ 5 - 2
svr/svr-base/src/main/java/com/yihu/jw/base/service/a3service/MedicineStockOutService.java

@ -297,8 +297,7 @@ public class MedicineStockOutService extends BaseJpaService<Mediicinestockout, M
    //orderNum, equNum, contact, startTime, endTime, sellState, orderState, dispensingWindow
    //orderNum, equNum, contact, startTime, endTime, sellState, orderState, dispensingWindow
    public JSONObject queryOutListFullInfo(
                                             String startTime, String endTime, String replenishEr,
    public JSONObject queryOutListFullInfo(String deviceId,String startTime, String endTime, String replenishEr,
                                             String docNum, String receiveState, String userId, int page, int size,String wechatId) throws Exception {
                                             String docNum, String receiveState, String userId, int page, int size,String wechatId) throws Exception {
        JSONObject result = new JSONObject();
        JSONObject result = new JSONObject();
        UserDO user = userDao.findOne(userId);
        UserDO user = userDao.findOne(userId);
@ -398,6 +397,10 @@ public class MedicineStockOutService extends BaseJpaService<Mediicinestockout, M
        if (!StringUtils.isEmpty(docNum)){
        if (!StringUtils.isEmpty(docNum)){
            conditionSql += " and t.doc_num like '%" + docNum + "%'";
            conditionSql += " and t.doc_num like '%" + docNum + "%'";
        }
        }
        if (!StringUtils.isEmpty(deviceId)){
             conditionSql +=" and t.replenish_equ ='"+deviceId+"' ";
        }
        sql = sql + conditionSql +" order by t.receive_state asc,t.doc_time desc ";
        sql = sql + conditionSql +" order by t.receive_state asc,t.doc_time desc ";
        List<Map<String,Object>> list=null;
        List<Map<String,Object>> list=null;

+ 6 - 2
svr/svr-base/src/main/java/com/yihu/jw/base/service/a3service/MedicineStockUpService.java

@ -246,8 +246,7 @@ public class MedicineStockUpService extends BaseJpaService<Mediicinestockup, Med
    }
    }
    public JSONObject queryUpListFullInfo(
            String startTime, String endTime, String content,
    public JSONObject queryUpListFullInfo(String deviceId,String startTime, String endTime, String content,
            String community, String state, String userId, int page, int size,String wechatId) throws Exception {
            String community, String state, String userId, int page, int size,String wechatId) throws Exception {
        JSONObject result = new JSONObject();
        JSONObject result = new JSONObject();
        UserDO user = userDao.findOne(userId);
        UserDO user = userDao.findOne(userId);
@ -320,7 +319,9 @@ public class MedicineStockUpService extends BaseJpaService<Mediicinestockup, Med
                "t.remark AS remark,\n" +
                "t.remark AS remark,\n" +
                "t.replenish_cate AS replenishCate,\n" +
                "t.replenish_cate AS replenishCate,\n" +
                "t.replenish_equ AS replenishEqu,\n" +
                "t.replenish_equ AS replenishEqu,\n" +
                "t.replenish_equ_name AS replenishEquName,\n" +
                "t.replenish_er AS replenishEr,\n" +
                "t.replenish_er AS replenishEr,\n" +
                "t.replenish_er_name AS replenishErName,\n" +
                "t.replenish_inventory AS replenishInventory,\n" +
                "t.replenish_inventory AS replenishInventory,\n" +
                "t.state AS state,\n" +
                "t.state AS state,\n" +
                "t.track_num AS trackNum,\n" +
                "t.track_num AS trackNum,\n" +
@ -347,6 +348,9 @@ public class MedicineStockUpService extends BaseJpaService<Mediicinestockup, Med
        if (!StringUtils.isEmpty(state)){
        if (!StringUtils.isEmpty(state)){
            conditionSql += " and t.state = '" + state + "'";
            conditionSql += " and t.state = '" + state + "'";
        }
        }
        if (!StringUtils.isEmpty(deviceId)){
            conditionSql += " and t.replenish_equ = '" + deviceId + "'";
        }
        sql = sql + conditionSql +" order by t.state desc,t.doc_time desc  ";
        sql = sql + conditionSql +" order by t.state desc,t.doc_time desc  ";
        List<Map<String,Object>> list=null;
        List<Map<String,Object>> list=null;

+ 12 - 8
svr/svr-base/src/main/java/com/yihu/jw/base/service/a3service/MedicineWarrayService.java

@ -80,7 +80,7 @@ public class MedicineWarrayService extends BaseJpaService<Mediicinewarray, Medii
    }
    }
    public JSONObject getTemperature(
    public JSONObject getTemperature(
            String equNum, String equType, String netStatus, String lowT, String heightT,
            String equNum, String equType, String netStatus, String lowT, String heightT,String lowH,String heightH,
                String content, String startTime, String endTime, int page, int size) throws Exception {
                String content, String startTime, String endTime, int page, int size) throws Exception {
        JSONObject result = new JSONObject();
        JSONObject result = new JSONObject();
        String sql = "SELECT\n" +
        String sql = "SELECT\n" +
@ -130,19 +130,25 @@ public class MedicineWarrayService extends BaseJpaService<Mediicinewarray, Medii
//        conditionSql += " and t.type like '%温度%'";
//        conditionSql += " and t.type like '%温度%'";
        if (!StringUtils.isEmpty(equNum)){
        if (!StringUtils.isEmpty(equNum)){
            conditionSql += " and t.equ_num = '" + equNum + "'";
            conditionSql += " and t.equ_num = '" + equNum + "' ";
        }
        }
        if (!StringUtils.isEmpty(equType)){
        if (!StringUtils.isEmpty(equType)){
            conditionSql += " and t.equ_type = '" + equType + "'";
            conditionSql += " and t.equ_type = '" + equType + "' ";
        }
        }
        if (!StringUtils.isEmpty(netStatus)){
        if (!StringUtils.isEmpty(netStatus)){
            conditionSql += " and t.network_status = '" + netStatus + "'";
            conditionSql += " and t.network_status = '" + netStatus + "' ";
        }
        }
        if (!StringUtils.isEmpty(lowT)) {
        if (!StringUtils.isEmpty(lowT)) {
            conditionSql += " and t.temperature >= " + lowT;
            conditionSql += " and t.temperature >= " + lowT +" ";
        }
        }
        if (!StringUtils.isEmpty(heightT)) {
        if (!StringUtils.isEmpty(heightT)) {
            conditionSql += " and t.temperature <= " + heightT;
            conditionSql += " and t.temperature <= " + heightT +" ";
        }
        if (!StringUtils.isEmpty(lowH)) {
            conditionSql += " and t.humidity >= " + lowH +" ";
        }
        if (!StringUtils.isEmpty(heightH)) {
            conditionSql += " and t.humidity <= " + heightH +" ";
        }
        }
        if (!StringUtils.isEmpty(content)){
        if (!StringUtils.isEmpty(content)){
            conditionSql += " and CONCAT(IFNULL(t.`equ_name`,''), IFNULL(t.`equ_num`,'')) like '%" + content + "%'";
            conditionSql += " and CONCAT(IFNULL(t.`equ_name`,''), IFNULL(t.`equ_num`,'')) like '%" + content + "%'";
@ -807,8 +813,6 @@ public class MedicineWarrayService extends BaseJpaService<Mediicinewarray, Medii
        mediicinedevice.setAbnormal(type);
        mediicinedevice.setAbnormal(type);
        mediicinedevice.setLogTime(new Date());
        mediicinedevice.setLogTime(new Date());
        mediicinedevice.setNowHumidity(humidity+"");
        mediicinedevice.setNowHumidity(humidity+"");
        mediicinedevice.setNetworkStatus("1");
        mediicinedevice.setSaleStatus("1");
        deviceDao.save(mediicinedevice);
        deviceDao.save(mediicinedevice);
        Mediicinewarray mediicinewarray = medicinedeviceService.uploadDeviceInfo(equNum, temperature, humidity, type, null, null, null, null);
        Mediicinewarray mediicinewarray = medicinedeviceService.uploadDeviceInfo(equNum, temperature, humidity, type, null, null, null, null);
        result.put("msg",mediicinewarray);
        result.put("msg",mediicinewarray);

+ 11 - 1
svr/svr-base/src/main/java/com/yihu/jw/base/service/a3service/MedicinedeviceService.java

@ -534,7 +534,7 @@ public class MedicinedeviceService  extends BaseJpaService<Mediicinedevice, Medi
     * @return
     * @return
     */
     */
    @Transactional(rollbackFor = Exception.class)
    @Transactional(rollbackFor = Exception.class)
    public String updateDeviceSaleStatus(String deviceId, String saleStatus){
    public String updateDeviceSaleStatus(String deviceId, String saleStatus) throws Exception {
        JSONObject result = new JSONObject();
        JSONObject result = new JSONObject();
        if(StringUtils.isEmpty(deviceId) && StringUtils.isEmpty(saleStatus)){
        if(StringUtils.isEmpty(deviceId) && StringUtils.isEmpty(saleStatus)){
            result.put("msg","deviceId and saleStatus is null");
            result.put("msg","deviceId and saleStatus is null");
@ -549,6 +549,13 @@ public class MedicinedeviceService  extends BaseJpaService<Mediicinedevice, Medi
        }
        }
        mediicinedevice.setSaleStatus(saleStatus);
        mediicinedevice.setSaleStatus(saleStatus);
        this.save(mediicinedevice);
        this.save(mediicinedevice);
        //设备发送事件给前端
        if (saleStatus.equalsIgnoreCase("2")){
            medicineServive.sendSocketMessage(mediicinedevice.getEquNum()+"_T","equ_maintenance","设备维护");
        }else {
            medicineServive.sendSocketMessage(mediicinedevice.getEquNum()+"_T","equ_normal","设备正常");
        }
        result.put("response",ConstantUtils.SUCCESS);
        result.put("response",ConstantUtils.SUCCESS);
        result.put("msg",mediicinedevice);
        result.put("msg",mediicinedevice);
        return result.toJSONString();
        return result.toJSONString();
@ -2563,6 +2570,7 @@ public class MedicinedeviceService  extends BaseJpaService<Mediicinedevice, Medi
                "\tdir.layer_no as layerNo,\n" +
                "\tdir.layer_no as layerNo,\n" +
                "\tdir.wayer_no as wayerNo,\n" +
                "\tdir.wayer_no as wayerNo,\n" +
                "\tdir.merge_cargo as mergeCargo,\n" +
                "\tdir.merge_cargo as mergeCargo,\n" +
                "\tdir.quantity as quantity,\n" +
                "\tdir.merge_state as mergeState\n" +
                "\tdir.merge_state as mergeState\n" +
                "FROM\n" +
                "FROM\n" +
                "\tt_medicine_drug_inventory_record dir\n" +
                "\tt_medicine_drug_inventory_record dir\n" +
@ -4221,4 +4229,6 @@ public class MedicinedeviceService  extends BaseJpaService<Mediicinedevice, Medi
        return result.toJSONString();
        return result.toJSONString();
    }
    }
}
}