Exemple #1
0
        /// <summary>
        /// 获得产品ID号,工单号,产品型号
        /// </summary>
        /// <returns></returns>
        public DataSet GetProWoModuleType()
        {
            DataSet dsReturn   = new DataSet();
            string  sqlCommand = string.Empty;

            try
            {
                POR_PRODUCT           _product   = new POR_PRODUCT();
                POR_WORK_ORDER_FIELDS _workorder = new POR_WORK_ORDER_FIELDS();
                BASE_PRODUCTMODEL     _promodel  = new BASE_PRODUCTMODEL();

                Conditions    _conditions = new Conditions();
                List <string> lst         = new List <string>();
                lst.Add(POR_PRODUCT.FIELDS_PRODUCT_CODE);
                lst.Add(POR_PRODUCT.FIELDS_PRODUCT_KEY);
                _conditions.Add(DatabaseLogicOperator.And, POR_PRODUCT.FIELDS_ISFLAG, DatabaseCompareOperator.Equal, "1");
                sqlCommand  = DatabaseTable.BuildQuerySqlStatement(_product, lst, _conditions);
                sqlCommand += @" order by " + POR_PRODUCT.FIELDS_PRODUCT_CODE + " asc";
                DataTable dtProduct = db.ExecuteDataSet(CommandType.Text, sqlCommand).Tables[0];
                dtProduct.TableName = POR_PRODUCT.DATABASE_TABLE_NAME;
                dsReturn.Merge(dtProduct, true, MissingSchemaAction.Add);

                _conditions.RemoveAll();
                lst = new List <string>();
                lst.Add(POR_WORK_ORDER_FIELDS.FIELD_ORDER_NUMBER);
                lst.Add(POR_WORK_ORDER_FIELDS.FIELD_WORK_ORDER_KEY);
                sqlCommand  = DatabaseTable.BuildQuerySqlStatement(_workorder, lst, _conditions);
                sqlCommand += @" order by " + POR_WORK_ORDER_FIELDS.FIELD_ORDER_NUMBER + " asc";
                DataTable dtWorkOrder = db.ExecuteDataSet(CommandType.Text, sqlCommand).Tables[0];
                dtWorkOrder.TableName = POR_WORK_ORDER_FIELDS.DATABASE_TABLE_NAME;
                dsReturn.Merge(dtWorkOrder, true, MissingSchemaAction.Add);

                _conditions.RemoveAll();
                lst = new List <string>();
                lst.Add(BASE_PRODUCTMODEL.FIELDS_PROMODEL_NAME);
                lst.Add(BASE_PRODUCTMODEL.FIELDS_PROMODEL_KEY);
                sqlCommand  = DatabaseTable.BuildQuerySqlStatement(_promodel, lst, _conditions);
                sqlCommand += @" order by " + BASE_PRODUCTMODEL.FIELDS_PROMODEL_NAME + " asc";
                DataTable dtModel = db.ExecuteDataSet(CommandType.Text, sqlCommand).Tables[0];
                dtModel.TableName = BASE_PRODUCTMODEL.DATABASE_TABLE_NAME;
                dsReturn.Merge(dtModel, true, MissingSchemaAction.Add);

                FanHai.Hemera.Share.Common.ReturnMessageUtils.AddServerReturnMessage(dsReturn, "");
            }
            catch (Exception ex)
            {
                FanHai.Hemera.Share.Common.ReturnMessageUtils.AddServerReturnMessage(dsReturn, ex.Message);
                LogService.LogError("GetProWoModuleType Error: " + ex.Message);
            }
            return(dsReturn);
        }
Exemple #2
0
        /// <summary>
        /// 初始化控件值。
        /// </summary>
        private void InitControlValue()
        {
            this.teOrderNumber.Text       = string.Empty;
            this.teQty.Text               = "0";
            this.lueOrderState.EditValue  = string.Empty;
            this.lueProId.EditValue       = string.Empty;
            this.cmbPartNumber.Text       = string.Empty;
            this.cmbRevenueType.Text      = string.Empty;
            this.cmbOrderType.Text        = string.Empty;
            this.cmbPriority.Text         = "1";
            this.deStartDateTime.DateTime = DateTime.Now;
            this.deEndDateTime.DateTime   = DateTime.Now;
            this.meComment.Text           = string.Empty;
            this.tePartDescription.Text   = string.Empty;

            POR_WORK_ORDER_FIELDS order = new POR_WORK_ORDER_FIELDS();

            this._dtWorkOrderNumber = CommonUtils.CreateDataTable(order);
            POR_WORK_ORDER_BOM_FIELDS orderBom = new POR_WORK_ORDER_BOM_FIELDS();

            this._dtWorkOrderBom  = CommonUtils.CreateDataTable(orderBom);
            this.gcBOM.DataSource = this._dtWorkOrderBom;
        }
Exemple #3
0
        public DataSet AddWorkOrder(DataSet dataSet)
        {
            DataSet retDS = new DataSet();

            if (null == dataSet || !dataSet.Tables.Contains(POR_WORK_ORDER_FIELDS.DATABASE_TABLE_NAME))
            {
                SolarViewer.Hemera.Share.Common.ReturnMessageUtils.AddServerReturnMessage(retDS, "WorkOrderEngine::AddWorkOrder - Invalidate Parameter");
                return(retDS);
            }
            string   sqlCommand = "";
            Database db         = DatabaseFactory.CreateDatabase();

            using (DbConnection dbConn = db.CreateConnection())
            {
                DataSet dSet     = (DataSet)dataSet;
                DataSet dsReturn = new DataSet();
                try
                {
                    //Open Connection
                    dbConn.Open();
                    //Create Transaction
                    DbTransaction dbTran = dbConn.BeginTransaction();
                    try
                    {
                        Hashtable             dtWorkOrder     = SolarViewer.Hemera.Share.Common.CommonUtils.ConvertToHashtable(dataSet.Tables[POR_WORK_ORDER_FIELDS.DATABASE_TABLE_NAME]);
                        POR_WORK_ORDER_FIELDS workOrderFields = new POR_WORK_ORDER_FIELDS();
                        sqlCommand = DatabaseTable.BuildInsertSqlStatement(workOrderFields, dtWorkOrder, null);
                        db         = DatabaseFactory.CreateDatabase();
                        db.ExecuteNonQuery(dbTran, CommandType.Text, sqlCommand);
                        if (dataSet.Tables.Contains(TRANS_TABLES.TABLE_UDAS))
                        {
                            POR_WORK_ORDER_ATTR_FIELDS workOrderUDAsFields = new POR_WORK_ORDER_ATTR_FIELDS();
                            foreach (DataRow dataRow in dataSet.Tables[TRANS_TABLES.TABLE_UDAS].Rows)
                            {
                                Hashtable fields = new Hashtable()
                                {
                                    { POR_WORK_ORDER_ATTR_FIELDS.FIELDS_WORK_ORDER_KEY, dataRow[COMMON_FIELDS.FIELD_COMMON_LINKED_ITEM_KEY] },
                                    { POR_WORK_ORDER_ATTR_FIELDS.FIELDS_ATTRIBUTE_KEY, dataRow[BASE_ATTRIBUTE_FIELDS.FIELDS_ATTRIBUTE_KEY] },
                                    { POR_WORK_ORDER_ATTR_FIELDS.FIELDS_ATTRIBUTE_NAME, dataRow[BASE_ATTRIBUTE_FIELDS.FIELDS_ATTRIBUTE_NAME] },
                                    { POR_WORK_ORDER_ATTR_FIELDS.FIELDS_ATTRIBUTE_VALUE, dataRow[COMMON_FIELDS.FIELD_COMMON_ATTRIBUTE_VALUE] },
                                    { POR_WORK_ORDER_ATTR_FIELDS.FIELDS_EDITOR, dataRow[COMMON_FIELDS.FIELD_COMMON_EDITOR] },
                                    { POR_WORK_ORDER_ATTR_FIELDS.FIELDS_EDIT_TIME, DateTime.Now },
                                    { POR_WORK_ORDER_ATTR_FIELDS.FIELDS_EDIT_TIMEZONE, dataRow[COMMON_FIELDS.FIELD_COMMON_EDIT_TIMEZONE] }
                                };
                                sqlCommand = DatabaseTable.BuildInsertSqlStatement(workOrderUDAsFields, fields, null);
                                db.ExecuteNonQuery(dbTran, CommandType.Text, sqlCommand);
                            }
                        }
                        dbTran.Commit();
                        SolarViewer.Hemera.Share.Common.ReturnMessageUtils.AddServerReturnMessage(retDS, "");
                    }
                    catch (Exception ex)
                    {
                        dbTran.Rollback();
                        SolarViewer.Hemera.Share.Common.ReturnMessageUtils.AddServerReturnMessage(retDS, ex.Message);
                        LogService.LogError("AddWorkOrder Error: " + ex.Message);
                    }
                    finally
                    {
                        dbConn.Close();
                    }
                }
                catch (Exception ex)
                {
                    SolarViewer.Hemera.Share.Common.ReturnMessageUtils.AddServerReturnMessage(retDS, ex.Message);
                    LogService.LogError("AddWorkOrder Error: " + ex.Message);
                }
            }

            return(retDS);
        }