婴儿防盗定位

婴儿防盗定位

  • 完成定位软件的升级,页面重新改写,历经了好长的岁月。

  • 显示实时位置

    1:加入定位模块代码,
    2:启动硬件,显示定位
    3:定位模块为什么不能自发的去调用参数的路径,采用什么方式才能达到这样的效果
    1.解决方案,在新项目中插入原项目的页面,可以不
    4:新项目能通过RemotingServiceUtil 查看服务器是否在线,不能通过LocatingServiceUtil查看服务器是否在线
    5:让新项目中flash 能发起 http://192.168.2.150/Flash/xml/Map.ashx?id=29
    http://localhost:4337/Loc/Flash/Map?id=29
    返回
    <?xml version="1.0" standalone="yes" ?>
    <map>
    <id>29</id>
    <mapName>WPDEMO</mapName>
    <facilityId>29</facilityId>
    <eastWest>8</eastWest>
    <southNorth>5</southNorth>
    <mapFile>/Objects/MapFile.ashx?id=29</mapFile>
    <mapAreaFile>/Flash/xml/MapArea.ashx?mapId=29</mapAreaFile>
    <mapAPFile>/Flash/xml/AP.ashx?mapId=29</mapAPFile>
    <mapRouteFile>/Flash/xml/Route.ashx?mapId=29</mapRouteFile>
    </map>
    6:新项目flash能调用tagcoordinate
    
    7:新项目中点击实时监控
  • 人员管理

    1:所有人员点击查询在线,显示在线的
    view_HostPositionStatusView    视图中那个字段表示在线,IsDisappeared

  • 定位器状态分页

    1:数据
    2:解决 获取ap最新状态的三条数据
    1:看原项目
     IServiceApi serviceApi = LocatingServiceUtil.Instance<IServiceApi>();
                  APStatusView[] apStatus = serviceApi.SelectAPStatusList(
                                         null,
                                         null,
                                         _activatedSorter.SortKey,
                                         _activatedSorter.SortDirection,
                                         p.PageSize,
                                         p.RecordOffset,
                                         out totalCount
                                     );
    3:/Date(1487832070044)/ 转化时间

  • 定位器记录

    定位记录
    using (AppDataContext db = new AppDataContext())
              {
                  IList<APLocatorLogView> query = db.APLocatorLogViews
                      .OrderByDescending(x => x.WriteTime)
                      .Select(x => new APLocatorLogView
                      {
                          APName = x.APName,
                          APMac = x.APMac,
                          APLocatorStatus = x.APLocatorStatus,
                          CoordinatesName = x.CoordinatesName,
                          MapId = x.MapId,
                          FacilityName = x.FacilityName,
                          WriteTime = x.WriteTime
                      }).ToList();
    
    1:datatable怎么mData能获取两个数据源,从而拼在一个方块中
    定位设置
    using (AppDataContext db = new AppDataContext())
              {
                  var query = db.DBViewTagSettings
                      .Where(x => HostTag.All
                                  .Where(u => u.TagId != 0)
                                  .Select(u => u.TagId).ToArray()
                                  .Contains((int)x.Id));//x.TagId));
                  switch (stateFilter.SelectedIndex)
                  {
    
    recordsFiltered   和 recordsTotal
    
    js中文乱码charset="gbk"
    
    js整除
    
    使用者备注,
    HostTagGroupStatus tagUser = HostTagGroupStatus.SelectByTagId((int)setting.Id);//.TagId);
    使用者类型
    BusTagUserType.GetTagUserTypeName(tagUser.HostGroupId);
    快捷操作
    点击类的按钮
    1:选择按钮的图标
    2:js  点击a 标签怎么触发方法
    点击,
    执行停止
    成功
    状态停止
    根据状态发生变化,按钮变化

  • 停止/启动某个标签的定位

    TagLocateSetting.StopLocating(tagIdArray);
    
              // Send a command to LocatingService.
              LocatingServiceUtil.Instance<IServiceApi>().StartStopLocating();
    IList<string> selectedChannels = new List<string>();
              foreach (ListItem item in scanChannels.Items)
              {
                  if (item.Selected)
                  {
                      selectedChannels.Add(item.Value);
                  }
              }
    XDocument xDoc = XDocument.Load(Server.MapPath(PathUtil.ResolveUrl("Settings/LocateParameters.xml")));
              XElement root = xDoc.Element("Parameters");
              int surveyGroupId = int.Parse(root.Element("SurveyGroup").Value);
              using (AppDataContext db = new AppDataContext())
              {
                  SurveyGroup surveryGroupValue = db.SurveyGroups.FirstOrDefault();
                  if (surveryGroupValue != null)
                  {
                      surveyGroupId = surveryGroupValue.Id;
                  }
              }
    
    
              TagLocateSetting useSettingModel = new TagLocateSetting
              {
                  LocatingMode = byte.Parse(root.Element("LocatingMode").Value),
                  RssiBackCount = int.Parse(root.Element("RssiBackCount").Value),
                  ScanInterval = int.Parse(root.Element("ScanInterval").Value),
                  ScanMode = byte.Parse(root.Element("ScanMode").Value),
                  ScanSsid = root.Element("ScanSsid").Value,
                  ScanChannels = root.Element("ScanChannels").Value,
                  ScanTarget = byte.Parse(root.Element("ScanTarget").Value),
                  SurveyGroupId = surveyGroupId,
                  UpdateTime = DateTime.Now,
                  CommandState = (byte)LocatingCommandState.WaitToStart
              };
    
    
              //TagLocateSetting useSettingModel = new TagLocateSetting {
              //    LocatingMode = byte.Parse(locatingMode.SelectedValue),
              //    RssiBackCount = int.Parse(rssiBackCount.SelectedValue),
              //    ScanInterval = int.Parse(scanInterval.SelectedValue),
              //    ScanMode = 2,
              //    ScanSsid = scanSsid.Text.Trim(),
              //    ScanChannels = string.Join(",", selectedChannels.ToArray()),
              //    ScanTarget = byte.Parse(scanTarget.SelectedValue),
              //    SurveyGroupId = int.Parse(surveyGroup.SelectedValue),
              //    UpdateTime = DateTime.Now,
              //    CommandState = (byte)LocatingCommandState.WaitToStart
              //};
              if (Config.Settings.ProjectType == ProjectTypeEnum.WXFactory)
              {
                  useSettingModel.ScanMode = 1;
    
    
                  TagSetting useSetting = new TagSetting
                  {
                      ScanMarkEnable=true,
                      ScanMarkDetectInterval=Convert.ToInt32(this.detectInterval.Text.Trim()),
                      ScanMarkScanTime=Convert.ToInt32(this.scanTime.Text.Trim()),
                      ScanMarkScanInterval=Convert.ToInt32(this.wscanInterval.Text.Trim()),
                      ScanMarkScanCount=Convert.ToInt32(this.scanCount.Text.Trim()),
                      ScanMarkGoodSignal=Convert.ToInt32(this.goodSignal.Text.Trim()),
                      ScanMarkLocatingInterval=Convert.ToInt32(this.locatingInterval.Text.Trim())                  
    
                  };
                  foreach (var id in tagIdArray)
                  {
                      if (id > 0)
                      {
                          using (AppDataContext db = new AppDataContext()) 
                          {
                              var dbTagSet = db.TagSettings.SingleOrDefault(t => t.TagId == id);
                              if (dbTagSet!=null)
                              {
                                  dbTagSet.ScanMarkEnable = true;
                                  dbTagSet.ScanMarkDetectInterval = useSetting.ScanMarkDetectInterval;
                                  dbTagSet.ScanMarkScanTime = useSetting.ScanMarkScanTime;
                                  dbTagSet.ScanMarkScanInterval=useSetting.ScanMarkScanInterval;
                                  dbTagSet.ScanMarkScanCount = useSetting.ScanMarkScanCount;
                                  dbTagSet.ScanMarkGoodSignal = useSetting.ScanMarkGoodSignal;
                                  dbTagSet.ScanMarkLocatingInterval = useSetting.ScanMarkLocatingInterval;
                                  db.SubmitChanges();
                              }
                              //else if (dbTagSet.ScanMarkDetectInterval != 0 && dbTagSet.ScanMarkGoodSignal != 0)
                              //{
                              //    this.detectInterval.Text = dbTagSet.ScanMarkDetectInterval.ToString();
                              //    this.scanTime.Text = dbTagSet.ScanMarkScanTime.ToString();
                              //    this.wscanInterval.Text = dbTagSet.ScanMarkScanInterval.ToString();
                              //    this.scanCount.Text = dbTagSet.ScanMarkScanCount.ToString();
                              //    this.goodSignal.Text = dbTagSet.ScanMarkGoodSignal.ToString();
                              //    this.locatingInterval.Text = dbTagSet.ScanMarkLocatingInterval.ToString();
    
                              //}
                          }
                      }
                  }
    
              }
              TagLocateSetting.StartLocating(tagIdArray, useSettingModel);
    
              // Send a command to LocatingService.
              LocatingServiceUtil.Instance<IServiceApi>().StartStopLocating();

  • TagGroup

    IList<HostGroupInfo> lGroup = HostGroupInfo.All;
              List<HostCountByGroup> lGroupCount = new List<HostCountByGroup>();
              if (lGroup != null)
              {
                  IList<HostTagGroupStatus> allHosts = HostTagGroupStatus.All;
                  foreach (HostGroupInfo info in lGroup)
                  {
                      //GTang2010/01/27
                      if (Config.Settings.ProjectType == ProjectTypeEnum.NMPrison)
                      {
                          if (info.HostGroupId == (int)HostGroupTypeEnum.Phenomenon || info.HostGroupId == (int)HostGroupTypeEnum.Location)
                          {
                              continue;
                          }
                      }
                      else if (Config.Settings.ProjectType == ProjectTypeEnum.YZPrison)
                      {
                          if (info.HostGroupId == (int)HostGroupTypeEnum.Location)
                          {
                              continue;
                          }
                      }
                      //-------------
                      HostCountByGroup hostCount = new HostCountByGroup();
                      hostCount.Id = info.HostGroupId;
                      hostCount.GroupName = info.HostGroupName;
                      hostCount.GroupDescription = info.Description;
                      hostCount.TagCount = allHosts.Where(x => x.HostGroupId == info.HostGroupId).Count(); ;
                      lGroupCount.Add(hostCount);
                  }
                  groupList.DataSource = lGroupCount;
                  groupList.DataBind();
              }
    HostCountByGroup
    internal int Id;
              internal string GroupName;
              internal int TagCount;
              internal string GroupDescription;

  • 设置告警条件

    1:点击编辑,显示标签列表。
    2:已选标签栏中需要显示已经绑定的标签
    3:如何在cshtml中jscript中循环viewData
    发布问题,修改设计方向
    <script>
      var data = []; 
      @foreach (var e in (ViewData["demos"] as List<Tag>))
      {
       <text>
      data.push({ id: "@e.Id", name: "@e.TagName" });
      </text>
      }
      console.log(data);
    
    </script>
    <script>
      var data = []; 
    
      data.push({ id: "5847", name: "NewTag_00:0A" });
    
    
      data.push({ id: "5848", name: "NewTag_00:0D" });
    
    
      data.push({ id: "5849", name: "0021" });
    
      console.log(data);
    
    </script>
    4:在html中
    @foreach (var color in ViewData["tags"] as List<Tag>)  
    
      {
    
    @color.Id 
    
      } 
    5:修改方向,单用点击编辑的时候,传入用户的id,在弹出口中,用ajax初始化,来初始化 标签列表和已选中标签的栏,当用户点击弹出框的确认按钮的时候,设置form表单中隐藏tags输入栏的值。
    
    6:修改方向,用户的绑定tags都存在隐藏的文件中,没有tagName,那就在后端重新ViewData存放viewData 中的List json之后存放在tags隐藏的输入框中,后面取的时候转换下Parse,
    tr怎么隐藏
    
    7:初始化  弹出框中的已选中标签
    js中怎么判断array中是否已经存在object属性
    http://www.cnblogs.com/wuhuacong/p/3667703.html  tags输入框的使用
    
    8:jquery 移除属性checked
    jquery table 点击确认选中按钮后,怎么清除勾选。
    9:对区域设置告警条件,添加使用者
    1:区域存放 {id,name}到输入框中
    *1:看原项目中怎么获取maparea和他绑定的警告条件和人员
    int deleteRuleId = Fetch.QueryUrlAsIntegerOrDefault("deleteRuleId", -1);
              if (deleteRuleId != -1)
              {
                  if (!LocatingServiceUtil.IsAvailable())
                  {
                      AreaWarningRule.Delete(deleteRuleId);
                      AreaWarningRuleCoverage.DeleteByRuleId(deleteRuleId);
                  }
                  else
                  {
                      IServiceApi serviceApi = LocatingServiceUtil.Instance<IServiceApi>();
                      serviceApi.DeleteWarningRule(deleteRuleId);
                      serviceApi.DeleteWarningRuleCoverage(deleteRuleId);
                  }
                  Terminator.Redirect(Fetch.Referrer);
              }
    
              MapArea area = MapArea.Select(_id);
              areaName.Text = area.AreaName;
              facilityName.Text = Facility.GetNameByMapId(area.MapId);
    
              IList<AreaWarningRule> _p = AreaWarningRule.SelectRuleByAreaId(area.Id);
              IList<AreaWarningRuleCoverage> _c = AreaWarningRuleCoverage.GetAreaWarningRuleCoverages();
              _list = (from _p1 in _p
                       join _c1 in _c
                       on _p1.Id equals _c1.RuleId
                       join _h1 in HostTag.All
                       on _c1.TagId equals _h1.TagId
                       select new _temp
                       {
                           RuleId = _c1.RuleId,
                           TagId = _c1.TagId,
                           HostName = _h1.HostName
                       }).ToList();
    
              ruleList.DataSource = _p;
              ruleList.DataBind();

    • 删除告警条件
    1.设置界面已设置告警条件的显示
    12列,每列一行。
    jstree 怎么获取选中节点
    2:jstree怎么给节点赋id
    childrenJson.push({ text: chooseList[j].Name, icon: (chooseList[j].Type == 0 ? "fa fa-sign-in" : "fa fa-sign-out"), id: chooseList[j].Id });
    var ids = $('#tree').jstree('get_selected');
    var ids = $('#tree').jstree('get_selected',true);
    
    重新考虑,删除只对ruleId删除,一个ruleId,可以对多标签
    
    根据获得的删除的ids,来查找rulesId的集合,来删除rule.
    String[] d= (from _p1 in _p 
                     join _c1 in _c
                         on _p1.Id  equals _c1.RuleId
                         join _h1 in _h
                         on _c1.TagId equals _h1.TagId
                         where  (_h1.HostId in idArray)
                           select _c1.RuleId
                     ).ToArray();
    4:删除警告条件
    jstree 清除
    $('#jstree2').data('jstree', false).empty()
     $('#jstree2').data('jstree', false).empty();我调用了这个方法后,直接变成loading了
    for jstree3 . I use destroy() function and again create tree running jstree() function
    在新的系统中规定,一个标签就是一条规则,该标签对于此区域只有一种可能,要么出去报警,要么进入报警
    • 新增报警
    1.不显示已绑定的标签。
      2.点击确认之后,比较原有标签List,是否含有新增的标签,有的话,进行删除规则
       再将新的标签list进行添加规则
    3 查询所有规则  进行tree的重现渲染。
    4.原项目怎么添加警告条件
     AreaWarningRule rule = new AreaWarningRule();
                rule.EnableToAllTags = forAllTags.SelectedValue == "1";
                rule.AreaEventType = byte.Parse(areaEventType.SelectedValue);
                rule.AreaId = _id;
                rule.IsDisabled = false;
    
                int[] tagidarray = new int[tagSelector.SelectedUserIds.Count()];
                ArrayList alHostId = new ArrayList();
                int[] hostIdArray = null;
                sTagID = "";
                for (int i = 0; i < tagSelector.SelectedUserIds.Count(); i++)
                {
                    //根据hostid取得tagid
                    HostTag ht = new HostTag();
                    ht = HostTag.GetById(tagSelector.SelectedUserIds[i]);
                    if (ht != null)
                    {
                        alHostId.Add(ht.HostId);
                        sTagID += ht.TagId + ",";
                        tagidarray[i] = ht.TagId;
                    }
                }
                hostIdArray = (int[])alHostId.ToArray(typeof(int));
                AreaWarningRule.sTagID = sTagID;
    
                if (!LocatingServiceUtil.IsAvailable())
                {
                    AreaWarningRule.InsertAndReturnId(rule);
                    if (rule.EnableToAllTags == false)
                    {
                        //AreaWarningRuleCoverage.SetCoverage(rule.Id, hostIdArray);
                        AreaWarningRuleCoverage.SetCoverage(rule.Id, tagidarray);
                        //AreaWarningRuleCoverage.SetCoverage(rule.Id, tagSelector.SelectedTagIdArray);
                    }
                }
                else
                {
    
                    IServiceApi serviceApi = LocatingServiceUtil.Instance<IServiceApi>();
                    EditResult result = serviceApi.InsertWarningRule(rule);
                    rule.Id = result.Id;
                    if (rule.EnableToAllTags == false)
                    {
                        serviceApi.SetWarningRuleCoverage(rule.Id, tagidarray);
                        //serviceApi.SetWarningRuleCoverage(rule.Id, tagSelector.SelectedTagIdArray);
                    }
                }
    
    Array.ConvertAll<string, int>(idArray, s => int.Parse(s));
    1:右侧添加一个框
    2:组和对象的删除关联
    
    3:组和对象的增加关联
        _id = HostGroupInfo.AddHostGroupInfo(0, groupName.Text.Trim(), Strings.Left(groupDescription.Text.Trim(), 200), Convert.ToInt32(this.grouplist.SelectedValue));
                    HostTag.RemoveHostGroupByGroupId(_id);
     HostGroupInfo.UpdateHostGroupInfo(_id, groupName.Text.Trim(), Strings.Left(groupDescription.Text.Trim(), 200), Convert.ToInt32(this.grouplist.SelectedValue));
                    HostTag.RemoveHostGroupByGroupId(_id);
                    if (tagSelector.SelectedUserIds != null)
                    {
                        AddHostTagGroup(tagSelector.SelectedUserIds, _id);
    
                    }
    
    private void AddHostTagGroup(int[] TagIdArray, int groupId)
            {
                int MapId = 0;
                List<int> lHostIds = new List<int>();
                for (int i = 0; i < TagIdArray.Length; i++)
                {
    
                    HostTag host = HostTag.GetById(TagIdArray[i]);
    
                    if (host != null && host.HostId > 0)
                    {
                        HostTag.SetHostGroup(host.HostId, groupId);
                    }
                    else
                    {
                        host = new HostTag();
                        Tag tag = Tag.Select(TagIdArray[i]);
                        if (tag != null)
                        {
                            host.HostExternalId = tag.SerialNo;
                            //TagHost tagHost = Tag.SelectTagHost(TagIdArray[i]);
                            host.HostName = groupName.Text.Trim() + "_" + ((tag.TagMac.Length > 9) ? tag.TagMac.Substring(9) : tag.TagMac);
                            host.Description = tag.TagName;
                            host.ImagePath = "";
                            host.HostType = 0;
                            host.TagId = TagIdArray[i];
                            host.HostId = HostTag.AddOrUpdateHostTag(0, host.TagId, host.HostExternalId, host.HostName, host.HostType, host.Description, host.ImagePath);
                            HostTag.SetHostGroup(host.HostId, groupId);
                            if (i == 0)
                            {
                                TagStatusView tagView1 = TagStatusView.SelectTagStatusByHostId(host.HostId);
                                MapId = tagView1.MapId;
                            }
                        }
    
                    }
                    lHostIds.Add(host.HostId);
                }
                int[] hostIds = lHostIds.ToArray();
                if (LocatingServiceUtil.IsAvailable())
                {
                    //内蒙不需要这样删除
                    try
                    {
                        int[] delhostIds;
                        GetDelIDs(out delhostIds, groupId, MapId, hostIds);
                        if (delhostIds.Count() > 1)
                        {
                            //合并两个数组,传值,以-1为分界值
                            int[] myhostIds = new int[delhostIds.Length + hostIds.Length];
                            delhostIds.CopyTo(myhostIds, 0);
                            hostIds.CopyTo(myhostIds, delhostIds.Length);
                            LocatingServiceUtil.Instance<IServiceApi>().UpdateHostGroup(myhostIds, groupId);
                        }
                        else
                        {
                            LocatingServiceUtil.Instance<IServiceApi>().UpdateHostGroup(hostIds, groupId);
                        }
                    }
                    catch (Exception err)
                    {
    
                    }
    
                }
            }
    
     /// <summary>
            /// 取出需要删除掉的hostid
            /// </summary>
            /// <param name="delhostIds"></param>
            /// <param name="groupid"></param>
            /// <param name="MapId"></param>
            /// <param name="hostIds"></param>
            /// 
    
            private void GetDelIDs(out int[] delhostIds, int groupid, int MapId, int[] hostIds)
            {
                LocatingServiceUtil.DemandLocatingService();
                IServiceApi serviceApi = LocatingServiceUtil.Instance<IServiceApi>();
                List<int> ihostid = new List<int>();
                bool bExist = false;
                int itotalcount = 0;
                int imapid = MapId;
                int[] FindHostIDByGroup = new int[] { groupid };
                TagStatusView[] tgv = serviceApi.SelectTagStatusListByKeywords(
                                     "",
                                     FindHostIDByGroup,
                                     MapId,
                                     false,
                                     false,
                                     false,
                                     false,
                                     false,
                                     false,
                                     "TagName",
                                    SortDirection.Ascending,
                                     50,
                                     0,
                                     out itotalcount
                                 );
                for (int k = 0; k < tgv.Count(); k++)
                {
                    for (int m = 0; m < hostIds.Count(); m++)
                    {
                        if (tgv[k].HostTag.HostId == hostIds[m])
                        {
                            bExist = true;
                            break;
                        }
                    }
                    if (bExist)
                    {
                        bExist = false;
                        continue;
                    }
                    else
                    {
                        ihostid.Add(tgv[k].HostTag.HostId);
                    }
                }
                if (ihostid.Count() > 0)
                {
                    ihostid.Add(-1);
                }
    
                delhostIds = ihostid.ToArray();
            }

  • 登录,日志大概设计

    var permissions = AdminUserContext.Current.LoginInfo.BusinessPermissionList.Select(p => p.ToString());
    
    需要登录的controller,继承 AdminControlerBase
    
    OnActionExecuting  action执行前。
    1。如果注释了AuthorizeIgnoreAttribute  就不需要登录直接进行跳转
    2.LoginInfo  获取用户登录信息,如果不存在就跳转
    3.执行action
    
    怎么获取用户的权限配置
    AdminMenuConfig  和  CachedConfigContext  
    1.创建userController的列表显示页面
    
    2.保存表单 ,都采用ajax
    Strings.MD5(password.Text.Trim())
    //user 是怎么进行编辑,保存的
    Data.User.Insert(user);
    
                             //记录日志
                         Diary.Insert(me.Id, 0, 0, "新增系统用户: " + user.UserName);
    Data.User.UpdateById(_userId, user.Password, user.Role);
    
                  //记录日志
                  Diary.Insert(me.Id, 0, 0, "修改系统用户" + user.UserName + "的信息。")
    
    input type="radio" name="Role"  怎么取值
    
    c# mvc 怎么设置 radio 选中  回显

  • 数据管理

    backupdays.Text = "30";
              readonlyMark.Text = "<font color='red'>(从现在起几天前的数据进行备份)</font>";
    
              var backupInfor = BackupLogConfig.All;
              if (backupInfor == null || backupInfor.Count == 0)
              {
                  feedbacks.Items.AddError("备份配置表未设置!");
                  return;
              }
              else
              {
                  foreach (var name in backupInfor)
                  {
                      if (name.FieldType == "backuppath")
                      {
                          lblBackupPath.Text = name.FieldValue;
                      }
                      else
                      {
                          lblBackupTableList.Text += name.FieldValue + "(" + name.Description + ")" + "<br>";
                      }
                  }
              }
          }
    test.dbo.history_TagPositionLog 
    D:\DB_History\
    WriteTime
    using System.Data.SqlClient;
    //备份
    int Days = int.Parse(backupdays.Text);           //最近几天前的进行备份
              string FPath = lblBackupPath.Text.Trim();        //导出数据所在文件路径 
              int ITest = 0;                                   //为0时为测试,即只创建文件,不删除原始数据
              ITest = int.Parse(Rdolist.SelectedValue);
              string sProcName = "pNetRadio_historyDataExport";
    
              try
              {
                  var backupInfor = BackupLogConfig.All;
                  foreach (var name in backupInfor)
                  {
                      if (name.FieldType == "backuptable" && name.DateFieldName != "")
                      {
                          using (AppDataContext db = new AppDataContext())
                          {
                              SqlCommand myCommand;
                              SqlConnection myConnection = (SqlConnection)db.Connection;
    
                              myCommand = new SqlCommand(sProcName, myConnection);
                              myCommand.CommandType = CommandType.StoredProcedure;
                              myCommand.CommandTimeout = 600;
    
                              myCommand.Parameters.AddWithValue("@Days", Days);
                              myCommand.Parameters.AddWithValue("@TblName", name.FieldValue);         //表名
                              myCommand.Parameters.AddWithValue("@FieldName", name.DateFieldName);    //表对应的时间字段
                              myCommand.Parameters.AddWithValue("@FPath", FPath);
                              myCommand.Parameters.AddWithValue("@iTest ", ITest);
    
                              myConnection.Open();
                              myCommand.ExecuteNonQuery();
                              myConnection.Close();
                          }
                      }
                  }
    
                  ScriptManager.RegisterStartupScript(this, this.GetType(), "Message",
                      @"
                      var l=window.onload;
                      window.onload=function()
                      {   
                          if(l!=null)                     
                          {l();}
                           window.setTimeout('window.alert(\'备份完成!\');',2)
                          window.onload=l;
                      }
                      "
                      , true);
              }

  • 多地图

    function initMap() {
              var div = document.getElementById("flashContainer");
    
              var obj = new Object();
              obj.width = div.clientWidth; //宽度
              obj.height = div.clientHeight; //高度
              obj.maplistxml = "../Flash/xml/MapList.ashx";         //地图列表XML
              obj.mapxml = "../Flash/xml/Map.ashx?id=<%# FacilityMapId%>";      //地图XML
              obj.tagxml = "../Flash/xml/TagCoordinates.ashx?mapId=<%# FacilityMapId%>";    //标签XML
              obj.cameraxml = "../Flash/xml/camera.ashx?mapId=<%# FacilityMapId%>"; //摄像头url
              obj.hostgroupxml = "../Flash/xml/HostGroup.ashx";
              obj.latesteventsxml = "../Flash/xml/LatestEvents.ashx";
              obj.jumpurl = "?facilityId=@fid&mapId=@mid"; //下拉列表选择时跳转到的网址,@开头的字符串将会被替换为列表值
              obj.searchurl = "?keyword=@keyword&eventtypes=@eventtypes&pagesize=@pagesize&currentpage=@currentpage&taggroups=@taggroups&tagid=@tagid"; //标签搜索网址,@开头的字符串将会被替换为列表值
              obj.refersh = 2000;               //刷新时间(毫秒),标签XML数据的间隔时间
              obj.delay = 500;              //现实中的1000毫秒相当于地图上的数值,500表示移动速度为现实的2倍
              obj.speed = 4;
              return obj;
          }
    

  • webservice api的变化

    http://192.168.2.150/Flash/xml/TagCoordinates.ashx?mapId=29&keyword=&eventtypes=&pagesize=5&currentpage=1&taggroups=&tagid=null&time=1487227073662
    0
    <?xml version="1.0" standalone="yes" ?>
    - <tagCoordinates>
    - <pagination>
    <recordCount>1</recordCount>
    <pageSize>5</pageSize>
    <currentPage>1</currentPage>
    </pagination>
    - <coordinates id="32" mapId="29" mapName="WPDEMO" coordinatesName="A" x="1.07" y="1.22">
    <tag id="5849" tagName="0021" warningTypes="" warningLevel="1" moveSpeed="2" icon="/Images/police.gif" updateTime="2017/2/20 9:52:37" groupIds="1" />
    </coordinates>
    </tagCoordinates>
    1
    <?xml version="1.0" standalone="yes" ?>
    - <tagCoordinates>
    - <pagination>
    <recordCount>1</recordCount>
    <pageSize>5</pageSize>
    <currentPage>1</currentPage>
    </pagination>
    - <coordinates id="33" mapId="29" mapName="WPDEMO" coordinatesName="B" x="1.12" y="3.6">
    <tag id="5849" tagName="0021" warningTypes="" warningLevel="1" moveSpeed="2" icon="/Images/police.gif" updateTime="2017/2/20 9:46:47" groupIds="1" />
    </coordinates>
    </tagCoordinates>
    2  
    <?xml version="1.0" standalone="yes" ?>
    - <tagCoordinates>
    - <pagination>
    <recordCount>1</recordCount>
    <pageSize>5</pageSize>
    <currentPage>1</currentPage>
    </pagination>
    - <coordinates id="35" mapId="29" mapName="WPDEMO" coordinatesName="D" x="6.73" y="1.25">
    <tag id="5849" tagName="0021" warningTypes="" warningLevel="1" moveSpeed="2" icon="/Images/police.gif" updateTime="2017/2/20 9:45:02" groupIds="1" />
    </coordinates>
    </tagCoordinates>

  • actionscript 添加动画

    1:actionScript移动图标,
    1:简单的点击事件,实现了点击,输出消息。
    2:实现点击事件,实现按钮位置的改变
    2:获取实时位置
    http://bbs.9ria.com/thread-24082-1-1.html  时间为参数,获取对应时间的对应位置
    3:actionScript添加显示对象
    
    4:actionScript对象移动
    http://wenku.baidu.com/link?url=9epBGMTAkD4YXM75kWUJFGgWdvpiI2KJHDhG_zmQqtCz4hb-svV__7OEKLTZ0gUnQfWxI9dSIHYldDhGVShx9lEZW1lbpgw0hyz1q1jVQJ7
    1.actionScript能创建movieClip的对象吗?
    2:看下项目的swf
    0:方法 http://blog.csdn.net/dj0379/article/details/8072909
    1: actionScriptViewer http://download.csdn.net/detail/u010629930/5348217
    

  • flash actionscript

    ctrl+g   可以组合
    ctrl+k    排列分布
    ctrl+b  打散
    alt   复制     按住alt键进行大小的调整
    空格键
    放大镜使用
    
    关键帧
    空白关键帧
    帧
    空白帧
    
    动作动画
    
    stage3D
    
    动画设计制作入门与提高
    2.1.矢量绘图的基础
    绘制夜景
    4.3 对象的合并和分离
    4.8图层
    5.3  动态文字按钮
    5.7.1认识库
    6.6.1 飞舞的蝴蝶
    9.1  关于actionscript  
    9.4  用按钮控制电影的播放
    10.5.3  制作滚动的文本框
    11.4    用户界面组件
    13.2  花开的效果
    14   圣诞贺卡
    
    10.3.3   动态路径
    如何绘制光滑的曲线
    引导线
    滤镜什么作用

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值