81041
2019-01-04 61bbe5440372ed390e289d1399ff8e05fcbfac78
gx_tieta/src/com/fgkj/services/ram/Fbs9100_sysparamService.java
@@ -1,6 +1,7 @@
package com.fgkj.services.ram;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.List;
import com.fgkj.dao.BaseDAO;
@@ -9,6 +10,7 @@
import com.fgkj.dao.impl.ram.Fbs9100_setparamImpl;
import com.fgkj.dao.impl.ram.Fbs9100_sysparamImpl;
import com.fgkj.dto.ServiceModel;
import com.fgkj.dto.ram.Fbs9100_setparam;
import com.fgkj.dto.ram.Fbs9100_sysparam;
public class Fbs9100_sysparamService {
@@ -23,41 +25,103 @@
   //修改系统参数
   public ServiceModel update(Object obj) {
      Fbs9100_sysparam fbs_sys=(Fbs9100_sysparam) obj;
      Boolean b=dao.update(obj);
      boolean bl=false;
      if(b){
         if(fbs_sys.getNum()==FBS9100_ComBase.CMD_ResetSystem){//重启
            bl=(new Fbs9100_setparamImpl()).sendCmdToFBS9100Dev(fbs_sys.getNum(),0, fbs_sys.getDev_id());
         }else{
            bl=((Fbs9100_sysparamImpl)dao).sendCmdToFBS9100Dev(fbs_sys.getNum(), fbs_sys.getDev_id());
         }
      if(fbs_sys.getNum()==FBS9100_ComBase.CMD_ResetSystem){//重启
         bl=(new Fbs9100_setparamImpl()).sendCmdToFBS9100Dev(fbs_sys.getNum(),0, fbs_sys.getDev_id());
         if(bl){
            model.setCode(1);
            model.setMsg("修改成功!");
            model.setMsg("重启成功!");
          }else{
             model.setCode(0);
            model.setMsg("设置9100参数失败,请检查网络!");
            model.setMsg("重启失败!");
          }
      }else{
         model.setCode(0);
         model.setMsg("修改失败!");
      }
         Boolean b=dao.update(obj);
         if(b){
            bl=((Fbs9100_sysparamImpl)dao).sendCmdToFBS9100Dev(fbs_sys.getNum(), fbs_sys.getDev_id());
            if(bl){
               model.setCode(1);
               model.setMsg("修改成功!");
             }else{
                model.setCode(0);
               model.setMsg("设置9100参数失败,请检查网络!");
             }
         }else{
            model.setCode(0);
            model.setMsg("修改失败!");
         }
      }
      return model;   
   }
   
   //根据设备id查询系统参数(一定是被管理的)
    public ServiceModel serchByCondition(Object obj){
        List list = dao.serchByCondition(obj);
      if(list!=null && list.size()>0){
         model.setCode(1);
         model.setData(list);
         model.setMsg("查询成功!");
      }else{
         model.setCode(0);
       Fbs9100_sysparam sys=(Fbs9100_sysparam) obj;
       boolean bl=((Fbs9100_sysparamImpl)dao).replace(obj);
       boolean b=((Fbs9100_sysparamImpl)dao).sendCmdToFBS9100Dev(FBS9100_ComBase.CMD_GetSYSSetParam, sys.getDev_id());
       if(b){
          List list = dao.serchByCondition(obj);
          if(list!=null && list.size()>0){
             model.setCode(1);
             model.setData(list);
             model.setMsg("查询成功!");
          }else{
             model.setCode(0);
             model.setMsg("查询失败!");
          }
       }else{
          model.setCode(0);
         model.setMsg("查询失败!");
      }
       }
      return model;
   } 
  //批量设置系统参数
     public ServiceModel updatePro(Object obj) {
        boolean bl=((Fbs9100_sysparamImpl)dao).updatePro(obj);
        if(bl) {
           List<Fbs9100_sysparam> list=(List<Fbs9100_sysparam>) obj;
           Calendar c = Calendar.getInstance();
           //现在的时间(单位:毫秒)
           long now_time = c.getTimeInMillis();
           long time=0;
           int success=0;
           do {
              for (int i = 0; i < list.size(); i++) {
                 Fbs9100_sysparam fs=new Fbs9100_sysparam();
                 fs=list.get(i);
                 if(fs.getNum()==0) {//前台传参设置
                    boolean b=((Fbs9100_sysparamImpl)dao).getCmdAck(fs.getOp_cmd(), fs.getDev_id());
                    if(b) {
                       success+=1;
                       list.get(i).setNum(1);
                    }
                 }
              }
              if(success==list.size()) {
                 break;
              }
              Calendar cl = Calendar.getInstance();
              long moment_time = cl.getTimeInMillis();
              time=moment_time-now_time;
           }while(time<=5*1000);
           model.setData(list);
           model.setCode(1);
           model.setSum(success);
           model.setMsg("修改成功!");
        }else {
           model.setCode(0);
           model.setMsg("修改失败!");
        }
        return model;
     }
    public static void main(String[] args) {
      Fbs9100_sysparamService fs=new Fbs9100_sysparamService();
      Fbs9100_sysparam sys=new Fbs9100_sysparam();
      sys.setDev_id(910000001);
      ServiceModel model=fs.serchByCondition(sys);
      System.out.println(model);
   }
}