|  | @ -1,17 +1,11 @@
 | 
												
													
														
															|  | package com.yihu.jw.service.device;
 |  | package com.yihu.jw.service.device;
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  | import com.alibaba.fastjson.JSONObject;
 |  | 
 | 
												
													
														
															|  | import com.yihu.jw.entity.iot.device.IotDeviceDO;
 |  | 
 | 
												
													
														
															|  | import com.yihu.jw.entity.iot.device.IotDeviceSimDO;
 |  | import com.yihu.jw.entity.iot.device.IotDeviceSimDO;
 | 
												
													
														
															|  | import com.yihu.jw.entity.iot.device.IotPatientDeviceDO;
 |  | 
 | 
												
													
														
															|  | import com.yihu.jw.entity.iot.dict.IotSystemDictDO;
 |  | import com.yihu.jw.entity.iot.dict.IotSystemDictDO;
 | 
												
													
														
															|  | import com.yihu.jw.repository.device.IotDeviceDao;
 |  | import com.yihu.jw.repository.device.IotDeviceDao;
 | 
												
													
														
															|  | import com.yihu.jw.repository.device.IotDeviceSimDao;
 |  | import com.yihu.jw.repository.device.IotDeviceSimDao;
 | 
												
													
														
															|  | import com.yihu.jw.repository.device.IotPatientDeviceDao;
 |  | import com.yihu.jw.repository.device.IotPatientDeviceDao;
 | 
												
													
														
															|  | import com.yihu.jw.repository.dict.IotSystemDictDao;
 |  | import com.yihu.jw.repository.dict.IotSystemDictDao;
 | 
												
													
														
															|  | import com.yihu.jw.restmodel.iot.device.IotOrderVO;
 |  | 
 | 
												
													
														
															|  | import com.yihu.jw.restmodel.web.MixEnvelop;
 |  | 
 | 
												
													
														
															|  | import com.yihu.jw.rm.iot.IotRequestMapping;
 |  | 
 | 
												
													
														
															|  | import com.yihu.jw.util.http.HttpClientUtil;
 |  | import com.yihu.jw.util.http.HttpClientUtil;
 | 
												
													
														
															|  | import com.yihu.mysql.query.BaseJpaService;
 |  | import com.yihu.mysql.query.BaseJpaService;
 | 
												
													
														
															|  | import org.apache.commons.lang.StringUtils;
 |  | import org.apache.commons.lang.StringUtils;
 | 
												
											
												
													
														
															|  | @ -23,7 +17,6 @@ import org.springframework.transaction.annotation.Transactional;
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  | import java.util.ArrayList;
 |  | import java.util.ArrayList;
 | 
												
													
														
															|  | import java.util.List;
 |  | import java.util.List;
 | 
												
													
														
															|  | import java.util.Map;
 |  | 
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  | /**
 |  | /**
 | 
												
													
														
															|  |  * @author HZY
 |  |  * @author HZY
 | 
												
											
												
													
														
															|  | @ -72,96 +65,7 @@ public class IotDeviceSimService extends BaseJpaService<IotDeviceSimDO, IotDevic
 | 
												
													
														
															|  |         iotDeviceSimDao.save(simDO);
 |  |         iotDeviceSimDao.save(simDO);
 | 
												
													
														
															|  |     }
 |  |     }
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |     /**
 |  | 
 | 
												
													
														
															|  |      *新增SIM卡
 |  | 
 | 
												
													
														
															|  |      * @param json
 |  | 
 | 
												
													
														
															|  |      */
 |  | 
 | 
												
													
														
															|  |     public MixEnvelop<IotOrderVO, IotOrderVO> addSIM(String json) {
 |  | 
 | 
												
													
														
															|  |         IotDeviceSimDO sim = JSONObject.parseObject(json, IotDeviceSimDO.class);
 |  | 
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |         IotDeviceSimDO deviceSimDaoBySim = iotDeviceSimDao.findBySim(sim.getSim());
 |  | 
 | 
												
													
														
															|  |         if(deviceSimDaoBySim!=null){
 |  | 
 | 
												
													
														
															|  |             return MixEnvelop.getError("SIM已存在");
 |  | 
 | 
												
													
														
															|  |         }
 |  | 
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |         IotPatientDeviceDO patientSim = iotPatientDeviceDao.findBySim(sim.getSim());
 |  | 
 | 
												
													
														
															|  |         if (patientSim!=null){
 |  | 
 | 
												
													
														
															|  |             sim.setDeviceName(patientSim.getDeviceName());
 |  | 
 | 
												
													
														
															|  |             sim.setDeviceSn(patientSim.getDeviceSn());
 |  | 
 | 
												
													
														
															|  |             sim.setContactsName(patientSim.getPatientName());
 |  | 
 | 
												
													
														
															|  |             sim.setContactsMobile(patientSim.getMobile());
 |  | 
 | 
												
													
														
															|  |         } else {
 |  | 
 | 
												
													
														
															|  |             IotDeviceDO deviceSim = iotDeviceDao.findBySimNo(sim.getSim());
 |  | 
 | 
												
													
														
															|  |             if (deviceSim!=null){
 |  | 
 | 
												
													
														
															|  |                 sim.setDeviceName(deviceSim.getName());
 |  | 
 | 
												
													
														
															|  |                 sim.setDeviceSn(deviceSim.getDeviceSn());
 |  | 
 | 
												
													
														
															|  |             }
 |  | 
 | 
												
													
														
															|  |         }
 |  | 
 | 
												
													
														
															|  |         sim.setRemainingBalance(sim.getAdvancePayment()-sim.getPayment());
 |  | 
 | 
												
													
														
															|  |         sim.setStatus(1);
 |  | 
 | 
												
													
														
															|  |         sim.setDel("0");
 |  | 
 | 
												
													
														
															|  |         iotDeviceSimDao.save(sim);
 |  | 
 | 
												
													
														
															|  |         return MixEnvelop.getSuccess(IotRequestMapping.DeviceSim.message_success_add);
 |  | 
 | 
												
													
														
															|  |     }
 |  | 
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |     /**
 |  | 
 | 
												
													
														
															|  |      * 条件分页查找
 |  | 
 | 
												
													
														
															|  |      * @param page
 |  | 
 | 
												
													
														
															|  |      * @param size
 |  | 
 | 
												
													
														
															|  |      * @param status
 |  | 
 | 
												
													
														
															|  |      * @param sim
 |  | 
 | 
												
													
														
															|  |      * @param sn
 |  | 
 | 
												
													
														
															|  |      * @return
 |  | 
 | 
												
													
														
															|  |      */
 |  | 
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |     public MixEnvelop<IotDeviceSimDO, IotDeviceSimDO> conditionQueryPage(Integer page, Integer size, String status, String sim, String sn){
 |  | 
 | 
												
													
														
															|  |         StringBuffer sql = new StringBuffer("SELECT c.* from iot_device_sim c WHERE 1=1 ");
 |  | 
 | 
												
													
														
															|  |         StringBuffer sqlCount = new StringBuffer("SELECT COUNT(c.id) count from iot_device_sim c  WHERE 1=1 ");
 |  | 
 | 
												
													
														
															|  |         List<Object> args = new ArrayList<>();
 |  | 
 | 
												
													
														
															|  |         if(StringUtils.isNotBlank(status)){
 |  | 
 | 
												
													
														
															|  |             sql.append(" and c.status=? ");
 |  | 
 | 
												
													
														
															|  |             sqlCount.append("and c.status='").append(status).append("' ");
 |  | 
 | 
												
													
														
															|  |             args.add(status);
 |  | 
 | 
												
													
														
															|  |         }
 |  | 
 | 
												
													
														
															|  |         if(StringUtils.isNotBlank(sim)){
 |  | 
 | 
												
													
														
															|  |             sql.append(" and (c.sim like '%").append(sim).append("%')");
 |  | 
 | 
												
													
														
															|  |             sqlCount.append(" and (c.sim like '%").append(sim).append("%')");
 |  | 
 | 
												
													
														
															|  |         }
 |  | 
 | 
												
													
														
															|  |         if(StringUtils.isNotBlank(sn)){
 |  | 
 | 
												
													
														
															|  |             sql.append(" and (c.device_sn like '%").append(sn).append("%')");
 |  | 
 | 
												
													
														
															|  |             sqlCount.append(" and (c.device_sn like '%").append(sn).append("%')");
 |  | 
 | 
												
													
														
															|  |         }
 |  | 
 | 
												
													
														
															|  |         sql.append("order by c.update_time desc limit ").append((page-1)*size).append(",").append(size);
 |  | 
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |         List<IotDeviceSimDO> list = jdbcTemplate.query(sql.toString(),args.toArray(),new BeanPropertyRowMapper(IotDeviceSimDO.class));
 |  | 
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |         List<Map<String,Object>> countList = jdbcTemplate.queryForList(sqlCount.toString());
 |  | 
 | 
												
													
														
															|  |         long count = Long.valueOf(countList.get(0).get("count").toString());
 |  | 
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |         return MixEnvelop.getSuccessListWithPage(IotRequestMapping.DeviceSim.message_success_find,list, page, size,count);
 |  | 
 | 
												
													
														
															|  |     }
 |  | 
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |     /**
 |  | 
 | 
												
													
														
															|  |      * 分页查找所有应用SIM卡信息
 |  | 
 | 
												
													
														
															|  |      * @param page
 |  | 
 | 
												
													
														
															|  |      * @param size
 |  | 
 | 
												
													
														
															|  |      * @return
 |  | 
 | 
												
													
														
															|  |      */
 |  | 
 | 
												
													
														
															|  |     public MixEnvelop<IotDeviceSimDO, IotDeviceSimDO> findAllSim(Integer page, Integer size) {
 |  | 
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |         StringBuffer sql= new StringBuffer("SELECT DISTINCT * FROM iot_device_sim ");
 |  | 
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |         sql.append(" limit ").append((page-1)*size).append(",").append(size);
 |  | 
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |         List<IotDeviceSimDO> list = jdbcTemplate.query(sql.toString(),new BeanPropertyRowMapper(IotDeviceSimDO.class));
 |  | 
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |         //获取总数
 |  | 
 | 
												
													
														
															|  |         long count = list.size();
 |  | 
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |         return MixEnvelop.getSuccessListWithPage(IotRequestMapping.DeviceSim.message_success_find,list,page, size,count);
 |  | 
 | 
												
													
														
															|  |     }
 |  | 
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |     /**
 |  |     /**
 |