Exemple #1
0
        public static void KltpjInsert(Kltpj klmodel)
        {
            StringBuilder strSql = new StringBuilder();

            strSql.Append("insert into PC_XTPK_STATUS (");
            strSql.Append("MC,DW,TYRQ,CPSJ,CPBS,ZPBS,PZSJ,KYQD,NW,NY,NJ,XN,BSB,TXML,SXQ,JG,BZ,ZT)");
            strSql.Append(" values(");
            strSql.Append("@MC,@DW,@TYRQ,@CPSJ,@CPBS,@ZPBS,@PZSJ,@KYQD,@NW,@NY,@NJ,@XN,@BSB,@TXML,@SXQ,@JG,@BZ,@ZT)");
            OleDbParameter[] parameters =
            {
                new OleDbParameter("@MC",   klmodel.Mc),
                new OleDbParameter("@DW",   klmodel.Dw),
                new OleDbParameter("@TYRQ", DateTime.Parse(klmodel.Tyrq)),
                new OleDbParameter("@CPSJ", klmodel.Cpsj),
                new OleDbParameter("@CPBS", klmodel.Cpbs),
                new OleDbParameter("@ZPBS", klmodel.Zpbs),
                new OleDbParameter("@PZSJ", klmodel.Pzsj),
                new OleDbParameter("@KYQD", klmodel.Kyqd),
                new OleDbParameter("@NW",   klmodel.Nw),
                new OleDbParameter("@NY",   klmodel.Ny),
                new OleDbParameter("@NJ",   klmodel.Nj),
                new OleDbParameter("@XN",   klmodel.Xn),
                new OleDbParameter("@BSB",  klmodel.Bsb),
                new OleDbParameter("@TXML", klmodel.Txml),
                new OleDbParameter("@SXQ",  klmodel.Sxq),
                new OleDbParameter("@JG",   klmodel.Jg),
                new OleDbParameter("@BZ",   klmodel.Bz),
                new OleDbParameter("@ZT",                              1),
            };
            Hashtable sqlTable = new Hashtable
            {
                { strSql.ToString(), parameters }
            };

            try { DbHelperOleDb.ExecuteSqlTran(sqlTable); }
            catch { throw; }
        }
        private void doTpjImport(string tablename)
        {
            object    targetObject = null;
            DataTable fieldnames   = null;

            switch (tablename)
            {
            case "PC_XTPL_STATUS": targetObject = new Yttpj(); fieldnames = Tpj_Insert_BLL.getChineseFieldName(tablename); break;

            case "PC_XTPK_STATUS": targetObject = new Kltpj(); fieldnames = Tpj_Insert_BLL.getChineseFieldName(tablename); break;

            case "PC_XTPY_STATUS": targetObject = new Tpjyy(); fieldnames = Tpj_Insert_BLL.getChineseFieldName(tablename); break;
            }
            if (targetObject == null || fieldnames == null)
            {
                return;
            }
            List <DataRow> dataRows = fieldnames.Rows.OfType <DataRow>().ToList();
            //获取父类对象类型信息
            TypeInfo parentType = targetObject.GetType().BaseType.GetTypeInfo();
            //获取对象类型信息
            TypeInfo current = targetObject.GetType().GetTypeInfo();
            //获取类声明字段
            List <PropertyInfo> properties = parentType.DeclaredProperties.ToList();

            properties.AddRange(current.DeclaredProperties.ToList());

            //创建控件集合
            StackPanel parentStack = new StackPanel()
            {
                HorizontalAlignment = HorizontalAlignment.Left, VerticalAlignment = VerticalAlignment.Center, Orientation = Orientation.Horizontal
            };

            foreach (PropertyInfo item in properties)
            {
                StackPanel childStack = new StackPanel()
                {
                    HorizontalAlignment = HorizontalAlignment.Center, VerticalAlignment = VerticalAlignment.Center, Orientation = Orientation.Horizontal
                };
                DataRow findOne = dataRows.Find(x => x.ItemArray[1].ToString().Equals(item.Name, StringComparison.OrdinalIgnoreCase));
                if (findOne == null)
                {
                    continue;
                }
                TextBlock lable = new TextBlock()
                {
                    Text = findOne.ItemArray[2].ToString() + ":"
                };
                FrameworkElement field = null;
                if (item.Name.Equals("csrq", StringComparison.OrdinalIgnoreCase) || item.Name.Equals("tyrq", StringComparison.OrdinalIgnoreCase))
                {
                    field = new DatePicker()
                    {
                        Width = 100, Margin = new Thickness()
                        {
                            Left = 0, Top = 0, Right = 10, Bottom = 0
                        }, SelectedDateFormat = DatePickerFormat.Short
                    };
                    Binding binding = new Binding();
                    binding.Path = new PropertyPath(item.Name);
                    binding.Mode = BindingMode.TwoWay;
                    binding.UpdateSourceTrigger = UpdateSourceTrigger.PropertyChanged;
                    field.SetBinding(DatePicker.TextProperty, binding);
                }
                else
                {
                    field = new TextBox()
                    {
                        Width = 50, Margin = new Thickness()
                        {
                            Left = 0, Top = 0, Right = 10, Bottom = 0
                        }
                    };
                    field.SetBinding(TextBox.TextProperty, item.Name);
                }
                childStack.Children.Add(lable);
                childStack.Children.Add(field);
                parentStack.Children.Add(childStack);
            }
            TpjImport tpjImport = new TpjImport();

            tpjImport.tpj_info.Content = parentStack;
            tpjImport.DataContext      = targetObject;
            tpjImport.ShowDialog();
        }