Exemplo n.º 1
0
        private void InportZyk(DataTable dt, List <BMKTable> BMK_list)
        {
            short        num     = 1;
            List <T_zyk> listAll = new List <T_zyk>();
            //首先确定所有位置
            List <int> pos = new List <int>();

            for (int i = 0; i < dt.Columns.Count; i++)
            {
                if ((dt.Columns[i].ColumnName.Contains("TDDWDM")) && (dt.Columns[i].ColumnName.Length >= 7))
                {
                    pos.Add(i);
                }
            }

            foreach (DataRow dr in dt.Rows)
            {
                long lbmkID = GetBMKIDFromList(BMK_list, dr["KSH"].ToString());
                if (lbmkID > 0)
                {
                    for (int j = 0; j < pos.Count; j++)
                    {
                        long lPcdm   = GetOriginListID(PCDM_list, GetOneStrValue(dr, "PCDM", CosDataBase.LONGINT_TYPE));
                        long lKldm   = GetOriginListID(KLDM_list, GetOneStrValue(dr, "KLDM", CosDataBase.LONGINT_TYPE));
                        long lJhxzdm = GetOriginListID(JHXZDM_list, GetOneStrValue(dr, "JHXZ", CosDataBase.LONGINT_TYPE));
                        long lTddwdm = GetOriginListID(TDDW_list, dr.ItemArray[pos[j]].ToString());
                        long lZydh   = GetOriginListID(ZYDH_list, dr.ItemArray[pos[j] + 1].ToString());
                        //Expression<Func<T_jhk, bool>> where = (c => c.ZydhOrigin == lZydh && c.TddwdmOrigin == lTddwdm);
                        //List<T_jhk> list = GetRecord(where);
                        List <T_jhk> list = JHK_list.Where(c => c.ZydhOrigin == lZydh && c.TddwdmOrigin == lTddwdm).ToList();

                        if ((list != null) && (list.Count > 0))
                        {
                            T_zyk model = new T_zyk();
                            model.RelationID1  = lbmkID;
                            model.RelationID2  = list[0].ID;
                            model.PcdmOrigin   = lPcdm;
                            model.KldmOrigin   = lKldm;
                            model.JhxzdmOrigin = lJhxzdm;
                            model.JhlbdmOrigin = 0;
                            model.TddwdmOrigin = lTddwdm;
                            model.ZydhOrigin   = lZydh;
                            model.Zyxh         = num;
                            listAll.Add(model);
                            num++;
                        }
                    }
                }
            }
            AddRecords(listAll);
        }
Exemplo n.º 2
0
        public void InportOriginData(DataTable dt, int nYear, long lProvinceID)
        {
            if (dt != null)
            {
                List <T_zyk>   listAdd = new List <T_zyk>();
                bmkTableManage bmkMan  = new bmkTableManage();
                foreach (DataRow dr in dt.Rows)
                {
                    //long lbmkID = bmkMan.GetbmkID(dr["KSH"].ToString());
                    long lbmkID = GetBMKIDFromList(BMK_list, dr["KSH"].ToString());
                    if (lbmkID != 0)
                    {
                        //首先找到计划库对应的字段
                        long lPcdm   = GetOriginListID(PCDM_list, GetOneStrValue(dr, "PCDM", CosDataBase.LONGINT_TYPE));
                        long lKldm   = GetOriginListID(KLDM_list, GetOneStrValue(dr, "KLDM", CosDataBase.LONGINT_TYPE));
                        long lJhxzdm = GetOriginListID(JHXZDM_list, GetOneStrValue(dr, "JHXZDM", CosDataBase.LONGINT_TYPE));
                        long lJhlbdm = GetOriginListID(JHLBDM_list, GetOneStrValue(dr, "JHLBDM", CosDataBase.LONGINT_TYPE));
                        long lTddwdm = GetOriginListID(TDDW_list, GetOneStrValue(dr, "TDDWDM", CosDataBase.LONGINT_TYPE));
                        long lZydh   = GetOriginListID(ZYDH_list, GetOneStrValue(dr, "ZYDH", CosDataBase.LONGINT_TYPE));
                        //Expression<Func<T_jhk, bool>> where = (c => c.ZydhOrigin == lZydh && c.TddwdmOrigin == lTddwdm);
                        //List<T_jhk> list = GetRecord(where);
                        List <T_jhk> list = JHK_list.Where(c => c.ZydhOrigin == lZydh && c.TddwdmOrigin == lTddwdm).ToList();

                        if ((list != null) && (list.Count > 0))
                        {
                            long lJhkID = list[0].ID;
                            //Expression<Func<T_zyk, bool>> where1 = (c => c.RelationID1 == lbmkID && c.RelationID2 == lJhkID);
                            //List<T_zyk> list1 = GetRecord(where1);
                            //if ((list1 == null) || (list1.Count == 0))
                            //{
                            T_zyk model = new T_zyk();
                            model.RelationID1  = lbmkID;
                            model.RelationID2  = lJhkID;
                            model.PcdmOrigin   = lPcdm;
                            model.KldmOrigin   = lKldm;
                            model.JhxzdmOrigin = lJhxzdm;
                            model.JhlbdmOrigin = lJhlbdm;
                            model.TddwdmOrigin = lTddwdm;
                            model.ZydhOrigin   = lZydh;
                            model.Zyxh         = Convert.ToInt16(GetOneStrValue(dr, "ZYXH", CosDataBase.SMALLINT_TYPE));
                            listAdd.Add(model);
                            //AddOneRecord(model);
                            //}
                        }
                    }
                }
                AddRecords(listAdd);
            }
        }