private AuthorizedNetworksWindow(DatabaseInstance instance) :
     base(GoogleCloudExtension.Resources.AuthorizedNetworksWindowCaption)
 {
     Content = new AuthorizedNetworksWindowContent
     {
         DataContext = new AuthorizedNetworksViewModel(this, instance)
     };
 }
示例#2
0
文件: TaskDal.cs 项目: uwitec/wms-1
        public int CloseTask(TaskEntity entity)
        {
            IMapper           map = DatabaseInstance.Instance();
            DynamicParameters p   = new DynamicParameters();

            p.Add("@V_TASK_ID", entity.TaskID);
            p.AddOut("@V_RESULT", DbType.Int32);
            map.Execute("P_SO_CLOSE_PICK_TASK_HAND", p, CommandType.StoredProcedure);
            return(p.Get <Int32>("@V_RESULT"));
        }
        public InstanceViewModel(CloudSQLSourceRootViewModel owner, DatabaseInstance instance)
        {
            _owner    = owner;
            _instance = instance;

            Caption = Instance.Name;

            UpdateMenu();
            UpdateIcon();
        }
示例#4
0
        /// <summary>
        /// 查询未关闭的采购单
        /// </summary>
        /// <param name="orgCode"></param>
        /// <returns></returns>
        public List <POBodyEntity> QueryNotClosedBills(string orgCode)
        {
            IMapper map = DatabaseInstance.Instance();

            return(map.Query <POBodyEntity>(string.Format("{0} WHERE H.ORG_CODE = @OrgCode AND H.BILL_STATE < '{1}'", PO_HEADER_FIELD, BillStateConst.PO_STATE_CODE_COMPLETE),
                                            new
            {
                OrgCode = orgCode
            }));
        }
示例#5
0
文件: TaskDal.cs 项目: uwitec/wms-1
        /// <summary>
        /// 获取任务池当前状态信息
        /// </summary>
        /// <returns></returns>
        public static List <TaskEntity> GetCurrentTask()
        {
            IMapper map = DatabaseInstance.Instance();
            string  sql = "SELECT A.ID, A.TASK_TYPE, C.ITEM_DESC, A.BILL_ID, A.USER_CODE, U.USER_NAME, A.QTY, A.CREATE_DATE, A.TASK_DESC " +
                          "FROM TASKS A " +
                          "LEFT JOIN USERS U ON A.USER_CODE = U.USER_CODE " +
                          "INNER JOIN WM_BASE_CODE C ON A.TASK_TYPE = C.ITEM_VALUE ";

            return(map.Query <TaskEntity>(sql));
        }
示例#6
0
        /// <summary>
        /// 查询当前装车编号所有的订单的托盘(不含托盘自重)[重载]
        /// </summary>
        /// <param name="vhTrainNo"></param>
        /// <param name="loadingOrder"></param>
        /// <param name="isIncludeWLX"></param>
        /// <param name="isBulkToCase">只为了函数重载</param>
        /// <returns></returns>
        public DataTable GetCurrentVhNoAllContainers(string vhTrainNo, string loadingOrder, bool isIncludeWLX, bool isBulkToCase)
        {
            string sql = @"SELECT wld.VH_TRAIN_NO, wld.IN_VH_SORT, wcs.CT_CODE, wsh.BILL_ID, wsh.BILL_NO, wc.CT_TYPE, wcs.CT_STATE,
  ((IFNULL(SUM(
    (CASE WHEN wc.CT_TYPE='50' AND wsd.IS_CASE=2 
      THEN (wspr.PICK_QTY/(SELECT t.QTY FROM wm_um_sku t 
                  WHERE t.SKU_CODE = wsd.SKU_CODE 
                  ORDER BY t.SKU_LEVEL DESC LIMIT 1))
      ELSE wspr.PICK_QTY
      END)
    * 
    (CASE WHEN wc.CT_TYPE='50' AND wsd.IS_CASE=2 
      THEN (SELECT t.WEIGHT FROM wm_um_sku t 
                  WHERE t.SKU_CODE = wsd.SKU_CODE 
                  ORDER BY t.SKU_LEVEL DESC LIMIT 1)
      ELSE wus.WEIGHT/wus.QTY
      END)
  ), 0))/1000) CALC_WEIGHT, 
  (wcs.GROSS_WEIGHT/1000) GROSS_WEIGHT,
    
  (CASE wc.CT_TYPE WHEN '51' THEN 1 
  WHEN '50' THEN SUM(

  CASE wsd.IS_CASE WHEN 2 THEN 
    ROUND((wspr.PICK_QTY/(SELECT t.QTY FROM wm_um_sku t 
                                  WHERE t.SKU_CODE = wsd.SKU_CODE 
                                  ORDER BY t.SKU_LEVEL DESC LIMIT 1)),0)
  ELSE ROUND(wspr.PICK_QTY/wus.QTY,0) END 

  ) END ) SAILQTY 

  FROM wm_container_state wcs 
  INNER JOIN wm_container wc ON wc.CT_CODE = wcs.CT_CODE AND wc.CT_TYPE = '50' 
  INNER JOIN wm_so_header wsh ON wsh.BILL_ID = wcs.BILL_HEAD_ID 
  INNER JOIN wm_loading_detail wld ON wld.BILL_NO = wsh.BILL_NO 
  LEFT JOIN wm_so_pick_record wspr ON wspr.BILL_ID = wsh.BILL_ID AND wspr.CT_CODE = wcs.CT_CODE 
  LEFT JOIN wm_so_pick wsp ON wsp.ID = wspr.PICK_ID 
  LEFT JOIN wm_so_detail wsd ON wsd.ID = wsp.DETAIL_ID 
  LEFT JOIN wm_um_sku wus ON wus.UM_CODE = wsd.UM_CODE AND wus.SKU_CODE = wsd.SKU_CODE
  WHERE wld.VH_TRAIN_NO = @VH_TRAIN_NO 
  GROUP BY wspr.BILL_ID, wspr.CT_CODE 
  ORDER BY wld.IN_VH_SORT ASC, wld.BILL_NO ASC, wcs.CT_CODE ASC;";

            if (loadingOrder == "1")
            {
                sql = sql.Replace("wld.IN_VH_SORT ASC", "wld.IN_VH_SORT DESC");
            }
            if (isIncludeWLX)
            {
                sql = sql.Replace("AND wc.CT_TYPE = '50'", "");
            }
            IMapper map = DatabaseInstance.Instance();

            return(map.LoadTable(sql, new { VH_TRAIN_NO = vhTrainNo }));
        }
示例#7
0
文件: SOCtlDal.cs 项目: uwitec/wms-1
        public List <SoContainerLocation> QeryCTL()
        {
            string sql = string.Format("SELECT wcl.CTL_NAME,wbc.ITEM_DESC ITEM_DESC1,wbc1.ITEM_DESC ITEM_DESC2 FROM wm_container_location wcl " +
                                       " INNER JOIN wm_base_code wbc ON wcl.CTL_STATE=wbc.ITEM_VALUE" +
                                       " INNER JOIN wm_base_code wbc1 ON wcl.CTL_TYPE=wbc1.ITEM_VALUE" +
                                       " WHERE wcl.IS_DELETE = 1" +
                                       " ORDER BY wcl.CTL_TYPE DESC");
            IMapper map = DatabaseInstance.Instance();

            return(map.Query <SoContainerLocation>(sql));
        }
示例#8
0
        ///<summary>
        ///查询所有客户及默认地址
        ///</summary>
        ///<returns></returns>
        public List <CustomerEntity> GetAllCustomer(string warehouseCode)
        {
            IMapper map = DatabaseInstance.Instance();
            string  sql = string.Format("SELECT C.C_CODE, C.C_NAME, C.NAME_S, C.AREA_ID, A.AR_NAME, C.IS_ACTIVE, " +
                                        "C.SORT_ORDER, C.REMARK, C.UPDATE_BY, C.UPDATE_DATE, C.IS_OWN, C.WH_CODE, C.RT_CODE, R.RT_NAME, " +
                                        "C.ADDRESS, C.CONTACT, C.PHONE, C.POSTCODE,C.DISTANCE FROM CUSTOMERS C " +
                                        "LEFT JOIN WM_ROUTE R ON R.RT_CODE = C.RT_CODE " +
                                        "LEFT JOIN AREA A ON C.AREA_ID = A.ID ");

            return(map.Query <CustomerEntity>(sql));
        }
示例#9
0
        /// <summary>
        /// 检查编码是否已存在
        /// </summary>
        /// <param name="unit"></param>
        /// <returns></returns>
        private bool IsCodeExists(VehicleEntity unit)
        {
            IMapper map = DatabaseInstance.Instance();
            string  id  = map.ExecuteScalar <string>("select VH_CODE from WM_VEHICLE where VH_CODE = @COD OR VH_NO = @VehicleNo", new
            {
                COD       = unit.VehicleCode,
                VehicleNo = unit.VehicleNO
            });

            return(!string.IsNullOrEmpty(id));
        }
示例#10
0
        /// <summary>
        /// 获取所有有关联的托盘
        /// </summary>
        /// <param name="warehouseCode"></param>
        /// <returns></returns>
        public static List <ContainerEntity> GetContainerListByBillID()
        {
            string sql = string.Format(
                "SELECT C.CT_CODE, C.CT_NAME, C.CT_TYPE, T.ITEM_DESC CT_TYPE_DESC, C.CT_WEIGHT, CS.BILL_HEAD_ID, C.IS_DELETED " +
                "FROM WM_CONTAINER C INNER JOIN WM_BASE_CODE T ON C.CT_TYPE = T.ITEM_VALUE " +
                "LEFT JOIN WM_CONTAINER_STATE CS ON CS.CT_CODE = C.CT_CODE " +
                "WHERE IFNULL(CS.BILL_HEAD_ID, 0) <> 0 AND C.CT_TYPE = '51' AND IFNULL(C.IS_DELETED, 0) <> 1 ");
            IMapper map = DatabaseInstance.Instance();

            return(map.Query <ContainerEntity>(sql));
        }
示例#11
0
文件: ToolsDal.cs 项目: uwitec/wms-1
        /// <summary>
        /// 退货单位及其数量维护
        /// </summary>
        /// <param name="billID">退货单ID</param>
        /// <returns></returns>
        public static string Tools_Return_Modify(int billID)
        {
            DynamicParameters pram = new DynamicParameters();

            pram.Add("V_BILL_ID", billID);
            pram.AddOut("V_MSG", DbType.String, 100);
            IMapper map = DatabaseInstance.Instance();

            map.Execute("P_TOOL_MODIFY_RETURN_BILL", pram, CommandType.StoredProcedure);
            return(pram.Get <string>("V_MSG"));
        }
示例#12
0
        public void ImportLocation(DataTable tHeader, string userName)
        {
            string LocationCode, LocationDesc, ZoneCode = string.Empty;

            IMapper           map         = DatabaseInstance.Instance();
            IDbTransaction    trans       = map.BeginTransaction();
            DynamicParameters parmsHeader = new DynamicParameters();

            parmsHeader.Add("LOCATION_CODE");
            parmsHeader.Add("LOCATION_DESC");
            parmsHeader.Add("ZONE_CODE");
            parmsHeader.AddOut("RET", DbType.Int32);

            try
            {
                foreach (DataRow row in tHeader.Rows)
                {
                    LocationCode = ConvertUtil.ToString(row["货位编号"]);
                    LocationDesc = ConvertUtil.ToString(row["货位描述"]);
                    ZoneCode     = ConvertUtil.ToString(row["所属货区"]);
                    if (string.IsNullOrEmpty(LocationCode))
                    {
                        throw new Exception("货位编号不能为空。");
                    }

                    if (string.IsNullOrEmpty(ZoneCode))
                    {
                        throw new Exception("所属货区不能为空。");
                    }

                    parmsHeader.Set("LOCATION_CODE", LocationCode);
                    parmsHeader.Set("LOCATION_DESC", LocationDesc);
                    parmsHeader.Set("ZONE_CODE", ZoneCode);

                    map.Execute("P_LOCATION_IMPORT", parmsHeader, trans, CommandType.StoredProcedure);
                    int billID = parmsHeader.Get <int>("RET");
                    if (billID == -1)
                    {
                        row["导入结果"] = "略过";
                    }
                    else
                    {
                        row["导入结果"] = "成功";
                    }
                }

                trans.Commit();
            }
            catch (Exception ex)
            {
                trans.Rollback();
                throw ex;
            }
        }
示例#13
0
        public List <RecLocationEntity> GetAllRecLocation()
        {
            string sql = "SELECT wz.ZN_NAME,wl.LC_CODE,wsl.SKU_CODE,ws.SKU_NAME,ws.SPEC,ifnull(wsl.LC_CODE,'') RECLOC FROM wm_location wl "
                         + "JOIN wm_zone wz ON wl.ZN_CODE=wz.ZN_CODE "
                         + "LEFT JOIN wm_sku_location wsl ON wl.LC_CODE=wsl.LC_CODE "
                         + "LEFT JOIN wm_sku ws ON wsl.SKU_CODE=ws.SKU_CODE ";

            IMapper map = DatabaseInstance.Instance();

            return(map.Query <RecLocationEntity>(sql));
        }
示例#14
0
        public static bool HasThisRight(string userCode, short moduleId)
        {
            IMapper map = DatabaseInstance.Instance();
            string  sql = "select ru.USER_CODE from USER_ROLE as ru " +
                          "inner join MODULE_ROLE as mr on ru.ROLE_ID = mr.ROLE_ID " +
                          "where ru.USER_CODE = @UserCode and mr.MODULE_ID = @ModuleId AND IFNULL(RU.IS_DELETED, 0) <> 1";

            string _UserCode = map.ExecuteScalar <string>(sql, new { UserCode = userCode, ModuleId = moduleId });

            return(!string.IsNullOrEmpty(_UserCode));
        }
示例#15
0
文件: TaskDal.cs 项目: uwitec/wms-1
        public static string CreateLoadingTask(string billIDs, string shipNo)
        {
            IMapper           map  = DatabaseInstance.Instance();
            DynamicParameters parm = new DynamicParameters();

            parm.Add("V_BILL_IDS", billIDs);
            parm.Add("V_SHIP_NO", shipNo);
            parm.AddOut("V_ERR_MSG", DbType.String, 500);
            map.ExecuteScalar <string>("P_SO_CREATE_LOADING_TASK", parm, null, CommandType.StoredProcedure);
            return(parm.Get <string>("V_ERR_MSG"));
        }
示例#16
0
文件: TaskDal.cs 项目: uwitec/wms-1
        public static string CreateTask(int billID, string taskType)
        {
            IMapper           map  = DatabaseInstance.Instance();
            DynamicParameters parm = new DynamicParameters();

            parm.Add("v_bill_id", billID);
            parm.Add("v_task_type", taskType);
            parm.AddOut("v_msg", DbType.String, 30);
            map.ExecuteScalar <string>("P_SO_AUTO_TASK_CREATE", parm, null, CommandType.StoredProcedure);
            return(parm.Get <string>("v_msg"));
        }
示例#17
0
文件: TaskDal.cs 项目: uwitec/wms-1
        public static DataTable GetASNCount()
        {
            IMapper map = DatabaseInstance.Instance();
            string  sql = @"SELECT wbc.ITEM_DESC,wbc.ITEM_VALUE,COUNT(wah.BILL_NO) QTY,'查看' 'OPERATION','收货单状态' AS T FROM wm_base_code wbc 
                      LEFT JOIN wm_asn_header wah ON wbc.ITEM_VALUE=wah.BILL_STATE
                      WHERE wbc.REMARK='ASN状态' AND wbc.ITEM_VALUE IN ('20','21','22','23','24')
                      GROUP BY wbc.ITEM_DESC
                      ORDER BY wbc.ITEM_VALUE ASC; ";

            return(map.LoadTable(sql));
        }
 protected FolderContainerTreeNode(DatabaseConnection databaseConnection, DatabaseInstance databaseInstance, string displayText = "", string imageName = "folder-horizontal.png", string expandedImageName = "folder-horizontal-open.png")
     : base(displayText, databaseConnection, databaseInstance)
 {
     //LeftImages.Add(DatabaseExplorerImageList.Instance.ImageList.Images[imageName]);
     this.Override.NodeAppearance.Image = DatabaseExplorerImageList.Instance.ImageList.Images[imageName];
     if (expandedImageName != null)
     {
         this.Override.ExpandedNodeAppearance.Image =
             DatabaseExplorerImageList.Instance.ImageList.Images[expandedImageName];
     }
 }
示例#19
0
        /// <summary>
        /// 根据角色找人员
        /// </summary>
        /// <param name="roleName"></param>
        /// <returns></returns>
        public static List <UserEntity> GetUserByRole(string roleName)
        {
            IMapper map = DatabaseInstance.Instance();
            string  sql = String.Format("SELECT C.USER_CODE,C.USER_NAME FROM roles A "
                                        + "JOIN user_role B ON A.ROLE_ID=B.ROLE_ID "
                                        + "JOIN users C ON B.USER_CODE=C.USER_CODE "
                                        + "JOIN user_online D ON C.USER_CODE=D.USER_CODE "
                                        + "WHERE D.IS_ONLINE='Y' AND C.IS_DELETED IS  NULL  AND A.ROLE_NAME='{0}';", roleName);

            return(map.Query <UserEntity>(sql));
        }
示例#20
0
        public DataTable GetGronpingTask(string user_code)
        {
            string  sql = "";
            IMapper map = DatabaseInstance.Instance();

            DynamicParameters parms = new DynamicParameters();

            parms.Add("V_USER_CODE", user_code);

            return(map.LoadTable("P_FIlTER_ORDER_WHILE_GROUPING_TASKS", parms, CommandType.StoredProcedure));
        }
示例#21
0
        /// <summary>
        /// 查询单据日志
        /// </summary>
        /// <param name="billID"></param>
        /// <returns></returns>
        public DataTable GetBillLog(int billID)
        {
            string  sql = string.Format(@"SELECT L.EVT, L.CREATE_DATE, 
  (CASE WHEN U.USER_NAME IS NULL THEN L.CREATOR ELSE U.USER_NAME END) CREATOR
  FROM WM_ASN_LOG L
  LEFT JOIN USERS U ON U.USER_CODE = L.CREATOR
  WHERE L.BILL_ID = {0}", billID);
            IMapper map = DatabaseInstance.Instance();

            return(map.LoadTable(sql));
        }
 public DatabaseInstanceTreeNode(DatabaseInstance databaseInstance, DatabaseConnection databaseConnection)
     : base(databaseConnection, databaseInstance)
 {
     if (databaseInstance == null)
     {
         throw new ArgumentNullException("databaseInstance");
     }
     DatabaseInstance = databaseInstance;
     Text             = databaseInstance.DisplayName;
     Override.NodeAppearance.Image = DatabaseExplorerImageList.Instance.ImageList.Images["database_yellow.png"];
 }
示例#23
0
        public void Open(Action <DatabaseInter> callBack)
        {
            _tables = new Dictionary <string, TableInter>();

            DatabaseInstance.Open(Name, (database) =>
            {
                _data = database;

                callBack(this);
            });
        }
示例#24
0
        /// <summary>
        /// 根据时间查询入库单量和总件数
        /// </summary>
        /// <param name="startTime"></param>
        /// <param name="endTime"></param>
        /// <returns></returns>
        public static DataTable GetAsnBillCountAndTotalPiece(DateTime startTime, DateTime endTime)
        {
            string sql = "SELECT H.BILL_NO 订单编号, IFNULL(SUM(D.PUT_QTY), 0) 总件数 " +
                         "FROM WM_ASN_HEADER H " +
                         "LEFT JOIN WM_ASN_DETAIL D ON D.BILL_ID = H.BILL_ID " +
                         "WHERE H.BILL_STATE = 27 AND H.CLOSE_DATE >= @StartTime AND H.CLOSE_DATE < @EndTime " +
                         "GROUP BY D.BILL_ID ";
            IMapper map = DatabaseInstance.Instance();

            return(map.LoadTable(sql, new { StartTime = startTime, EndTime = endTime }));
        }
示例#25
0
        /// <summary>
        /// 根据时间查询发货率
        /// </summary>
        /// <param name="startTime"></param>
        /// <param name="endTime"></param>
        /// <returns></returns>
        public static DataTable GetDelivery(DateTime startTime, DateTime endTime)
        {
            string sql = "SELECT wsh.BILL_NO AS '出库单号', CASE when (UNIX_TIMESTAMP(IFNULL(wsh.CLOSE_DATE, wsh.LAST_UPDATETIME)) " +
                         "- UNIX_TIMESTAMP(wsh.CONFIRM_DATE) < 86400) THEN '是' ELSE '否' END AS '发货是否及时' " +
                         "FROM wm_so_header wsh " +
                         "WHERE wsh.BILL_STATE = '68' AND wsh.BILL_TYPE = '120'  AND IFNULL(wsh.CLOSE_DATE, wsh.LAST_UPDATETIME) >= @StartTime " +
                         "AND IFNULL(wsh.CLOSE_DATE, wsh.LAST_UPDATETIME) <= @EndTime";
            IMapper map = DatabaseInstance.Instance();

            return(map.LoadTable(sql, new { StartTime = startTime, EndTime = endTime }));
        }
示例#26
0
        /// <summary>
        /// 查询当前扫描容器所在的车次
        /// </summary>
        /// <param name="containerCode"></param>
        /// <returns></returns>
        public string GetVehicleTripByCurrentContainer(string containerCode)
        {
            string sql = "SELECT wos.VEHICLE_NO, wos.BILL_NO, wcs.CT_CODE " +
                         "FROM wm_container_state wcs " +
                         "INNER JOIN wm_so_header wsh ON wsh.BILL_ID = wcs.BILL_HEAD_ID " +
                         "INNER JOIN wm_order_sort wos ON wos.BILL_NO = wsh.BILL_NO " +
                         "WHERE wcs.CT_CODE = @CT_CODE;";
            IMapper map = DatabaseInstance.Instance();

            return(map.ExecuteScalar <string>(sql, new { CT_CODE = containerCode }));
        }
示例#27
0
        public decimal GetWLXsGrossWeight(List <string> wlxList)
        {
            string  test = string.Join(",", wlxList.ToArray());
            string  sql  = @"SELECT SUM(wcs.GROSS_WEIGHT) 
  FROM wm_container_state wcs 
  WHERE wcs.CT_CODE IN ({0});";
            IMapper map  = DatabaseInstance.Instance();
            object  obj  = map.ExecuteScalar <object>(string.Format(sql, test));

            return(Convert.ToDecimal(obj));
        }
示例#28
0
        public string GetBillNOS(int vhID)
        {
            string  sql = @"SELECT GROUP_CONCAT(wsh.BILL_NO) BILLNOS FROM wm_so_header wsh 
                          JOIN tasks t ON wsh.BILL_ID =t.BILL_ID AND t.TASK_TYPE=143
                          JOIN wm_loading_detail wld ON wsh.BILL_NO =wld.BILL_NO
                          JOIN wm_loading_header wlh ON wld.VH_TRAIN_NO=wlh.VH_TRAIN_NO
                          WHERE wlh.VH_ID=@VH_ID";
            IMapper map = DatabaseInstance.Instance();

            return(map.ExecuteScalar <string>(sql, new { VH_ID = vhID }));
        }
示例#29
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="id"></param>
        /// <param name="warehouse"></param>
        /// <returns>1表示成功,-1表示未找到最小单位</returns>
        public int ExecuteStock(int id, string warehouse)
        {
            IMapper           map  = DatabaseInstance.Instance();
            DynamicParameters dyna = new DynamicParameters();

            dyna.Add("V_ID", id);
            dyna.Add("V_WAREHOUSE", warehouse);
            dyna.AddOut("V_RESULT", DbType.Int32);
            map.Execute("P_COUNT_STOCK", dyna, CommandType.StoredProcedure);
            return(dyna.Get <int>("V_RESULT"));
        }
示例#30
0
文件: ZoneDal.cs 项目: uwitec/wms-1
        ///<summary>
        ///查询所有货区
        ///</summary>
        ///<returns></returns>
        public List <ZoneEntity> GetAllZone()
        {
            IMapper map = DatabaseInstance.Instance();
            string  sql = "SELECT P.ZN_CODE, P.ZN_NAME, P.WH_CODE, W.WH_NAME, " +
                          "P.TEMP_CODE, T.TEMP_NAME, P.ZT_CODE, B.ITEM_DESC ZT_NAME, P.IS_ACTIVE FROM WM_ZONE P " +
                          "INNER JOIN WM_WAREHOUSE W ON W.WH_CODE = P.WH_CODE " +
                          "INNER JOIN WM_TEMPERATURE T ON P.TEMP_CODE = T.TEMP_CODE " +
                          "INNER JOIN WM_BASE_CODE B ON B.GROUP_CODE = '101' AND B.ITEM_VALUE = P.ZT_CODE";

            return(map.Query <ZoneEntity>(sql));
        }
示例#31
0
        /// <summary>
        /// 根据时间获取配货件数平均值(D类库)
        /// </summary>
        /// <param name="startTime"></param>
        /// <param name="endTime"></param>
        /// <returns></returns>
        public static DataTable GetCountAvg(DateTime startTime, DateTime endTime)
        {
            string sql = "SELECT SUM(R.PICK_QTY)/ COUNT(DISTINCT R.USER_CODE) AS '配货平均件数'" +
                         "FROM WM_SO_PICK_RECORD R INNER JOIN WM_SO_PICK P ON R.PICK_ID = P.ID " +
                         "INNER JOIN WM_SO_DETAIL D ON P.DETAIL_ID = D.ID " +
                         "INNER JOIN WM_SO_HEADER H ON D.BILL_ID = H.BILL_ID " +
                         "WHERE H.BILL_STATE = '68' AND R.PICK_DATE BETWEEN @StartTime AND @EndTime ";
            IMapper map = DatabaseInstance.Instance();

            return(map.LoadTable(sql, new { StartTime = startTime, EndTime = endTime }));
        }
        /// <summary>
        /// Ensure the Authorized Networks field and all of its parents are initialized for an instance.
        /// </summary>
        private static void EnsureAuthorizedNetworksInitialized(DatabaseInstance instance)
        {
            // Ensure that all nested objects are initilaized.
            if (instance.Settings == null)
            {
                instance.Settings = new Settings();
            }

            if (instance.Settings.IpConfiguration == null)
            {
                instance.Settings.IpConfiguration = new IpConfiguration();
            }

            if (instance.Settings.IpConfiguration.AuthorizedNetworks == null)
            {
                instance.Settings.IpConfiguration.AuthorizedNetworks = new List<AclEntry>();
            }
        }
示例#33
0
        public void Load(string clusterName)
        {
            using (Context context = ContextManager.Instance.CreateContext(ConnectionMode.AutoOpen, TransactionMode.AutoCommit))
            {
                var ef = new EntityFactory(context);
                var cluster = ef.LoadEntity<Jhu.Graywulf.Registry.Cluster>(clusterName);

                machines = new Dictionary<Guid, Machine>();
                serverInstances = new Dictionary<Guid, ServerInstance>();
                databaseInstances = new Dictionary<Guid, DatabaseInstance>();
                databaseDefinitions = new Dictionary<Guid, DatabaseDefinition>();
                queues = new Dictionary<Guid, Queue>();

                cluster.LoadMachineRoles(true);

                // *** TODO: handle machines that are down
                foreach (var mr in cluster.MachineRoles.Values)
                {
                    mr.LoadMachines(true);

                    foreach (var mm in mr.Machines.Values)
                    {
                        var mmi = new Machine(mm);
                        machines.Add(mm.Guid, mmi);

                        mm.LoadServerInstances(true);

                        foreach (var si in mm.ServerInstances.Values)
                        {
                            var ssi = new ServerInstance(si);
                            ssi.Machine = mmi;

                            serverInstances.Add(si.Guid, ssi);
                        }

                        mm.LoadQueueInstances(true);

                        foreach (var qi in mm.QueueInstances.Values)
                        {
                            var q = new Queue();
                            q.Update(qi);
                            queues.Add(qi.Guid, q);
                        }
                    }
                }

                cluster.LoadDomains(true);
                foreach (var dom in cluster.Domains.Values)
                {
                    dom.LoadFederations(true);
                    foreach (var ff in dom.Federations.Values)
                    {
                        ff.LoadDatabaseDefinitions(true);
                        foreach (var dd in ff.DatabaseDefinitions.Values)
                        {
                            databaseDefinitions.Add(dd.Guid, new DatabaseDefinition(dd));

                            dd.LoadDatabaseInstances(true);
                            foreach (var di in dd.DatabaseInstances.Values)
                            {
                                var ddi = new DatabaseInstance(di);

                                // add to global list
                                databaseInstances.Add(di.Guid, ddi);

                                // add to database definition lists
                                Dictionary<Guid, DatabaseInstance> databaseinstances;
                                if (databaseDefinitions[dd.Guid].DatabaseInstances.ContainsKey((di.DatabaseVersion.Name)))
                                {
                                    databaseinstances = databaseDefinitions[dd.Guid].DatabaseInstances[di.DatabaseVersion.Name];
                                }
                                else
                                {
                                    databaseinstances = new Dictionary<Guid, DatabaseInstance>();
                                    databaseDefinitions[dd.Guid].DatabaseInstances.Add(di.DatabaseVersion.Name, databaseinstances);
                                }

                                databaseinstances.Add(di.Guid, ddi);

                                ddi.ServerInstance = serverInstances[di.ServerInstanceReference.Guid];
                                ddi.DatabaseDefinition = databaseDefinitions[dd.Guid];
                            }
                        }
                    }
                }
            }
        }
 /// <summary>
 /// Shows the dialog to the user.
 /// </summary>
 /// <param name="instance">The instance on which to managed authorized networks.</param>
 /// <returns>The authorized network changes or null if the user canceled the dialog.</returns>
 public static AuthorizedNetworkChange PromptUser(DatabaseInstance instance)
 {
     AuthorizedNetworksWindow dialog = new AuthorizedNetworksWindow(instance);
     dialog.ShowModal();
     return dialog.ViewModel.Result;
 }
 /// <summary>
 /// Update the authorized networks of a instance.  This completely replaces the current 
 /// list of networks with the new list.
 /// </summary>
 public static void UpdateAuthorizedNetworks(DatabaseInstance instance, IList<AclEntry> acls)
 {
     EnsureAuthorizedNetworksInitialized(instance);
     instance.Settings.IpConfiguration.AuthorizedNetworks = acls;
 }
 public InstanceItem(DatabaseInstance instance) : base(className: Resources.CloudExplorerSqlInstanceCategory, componentName: instance.Name)
 {
     _instance = instance;
 }