Пример #1
0
        //
        // GET: /Setup/


        public ActionResult Index()
        {
            ClsStatic.ValidateReferral();
            ViewBag.Message = TempData["Message"];
            ViewBag.IsPopup = TempData["IsPopup"];


            //List<sPlsSVQHeaders_Result> rslt = con.sPlsSVQHeaders("s", null, null, null, null, null, null, User.Identity.Name).ToList();
            return(View());
        }
Пример #2
0
        public ActionResult Delete(int?id)
        {
            ClsStatic.ValidateReferral();

            dPlsUsers_Result rslt = con.dPlsUsers("d", id, null, null, null, null, null, null, null, User.Identity.Name).FirstOrDefault();


            TempData["Message"] = rslt.Message;
            TempData["IsPopup"] = "y";
            return(RedirectToAction("Index", "Users"));
        }
Пример #3
0
        public ActionResult Questions(int?Id)
        {
            ClsStatic.ValidateReferral();
            ViewBag.Message = TempData["Message"];
            ViewBag.IsPopup = TempData["IsPopup"];


            List <sPlsSVQQuestions_Result> rslt = con.sPlsSVQQuestions("s", null, Id, null, null, null, null, null, null, User.Identity.Name).ToList();

            return(View(rslt));
        }
Пример #4
0
        //
        // GET: /Setup/

        public ActionResult Index(int?Id)
        {
            // Id = Project Id
            ClsStatic.ValidateReferral();
            ViewBag.Message = TempData["Message"];
            ViewBag.IsPopup = TempData["IsPopup"];

            List <sPlsSVQSections_Result> rslt = con.sPlsSVQSections("s", null, Id, null, null, null, null, User.Identity.Name).ToList();

            //ViewBag.ProjectId = rslt.FirstOrDefault().Id_SVQ_Headers;
            ViewBag.ProjectId = Id;
            return(View(rslt));
        }
Пример #5
0
        public ActionResult ChangePassword(int?id)
        {
            ClsStatic.ValidateReferral();
            string        UserName = null;
            PasswordModel model    = new PasswordModel();

            if (id == null)
            {
                UserName = User.Identity.Name;
            }
            sPlsUsers_Result rslt = con.sPlsUsers("s", id, UserName, null, null, null, null, null, null, User.Identity.Name).FirstOrDefault();

            model.UserName = rslt.UserName;
            return(View(model));
        }
Пример #6
0
        public ActionResult Edit(int?Id)
        {
            ClsStatic.ValidateReferral();

            sPlsUsers_Result rslt  = con.sPlsUsers("s", Id, null, null, null, null, null, null, null, User.Identity.Name).ToList().FirstOrDefault();
            UsersModels      model = new UsersModels();

            model.UserId   = rslt.UserId;
            model.UserName = rslt.UserName;
            model.FullName = rslt.FullName;
            model.Email    = rslt.EmailAddress;
            model.MobileNo = rslt.MobileNumber;
            model.Status   = rslt.Status;

            return(View(model));
        }
Пример #7
0
        /// <summary>
        ///  浏览待匹配图层
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void buttonXBrowserTarlayer_Click(object sender, EventArgs e)
        {
            string targetFeatureclassPath = null;

            ZJGISOpenData.Forms.FrmOpenData frmOpenData = new ZJGISOpenData.Forms.FrmOpenData();

            if (frmOpenData.ShowDialog() == DialogResult.Cancel)
            {
                return;
            }

            //sourceFeatureclass = ClsUpdateCommon.OpenSourceLayer(out sourceFeatureclassPath);
            Collection <object> featClsCol = new Collection <object>();

            featClsCol = frmOpenData.FeatClsCollection;
            if (featClsCol.Count == 1)
            {
                targetFeatureClass = featClsCol[0] as IFeatureClass;
            }
            else
            {
                MessageBoxEx.Show("请加载数据源", "提示", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }
            targetFeatureClassName = targetFeatureClass.AliasName;
            targetFeatureclassPath = frmOpenData.PathName + @"\" + targetFeatureClass.AliasName;
            if (string.IsNullOrEmpty(targetFeatureclassPath))
            {
                return;
            }
            IDataset pDataset = targetFeatureClass as IDataset;

            textBoxXTargetLayer.Text = targetFeatureclassPath;


            //20170515注释掉
            //targeFeatureWorkspace = ClsDBInfo.SdeWorkspace as IFeatureWorkspace;
            FileGDBWorkspaceFactoryClass fac = new FileGDBWorkspaceFactoryClass();

            targeFeatureWorkspace = (IFeatureWorkspace)fac.OpenFromFile(frmOpenData.PathName, 0);
            //targetFeatureClass = targeFeatureWorkspace.OpenFeatureClass(targetFeatureClassName);
            //targetFields = ClsUpdateCommon.GetAttribute(targetFeatureClass);

            wizardPage1.NextButtonEnabled = eWizardButtonState.True;
            targetFields = ClsStatic.GetAttribute(targetFeatureClass);
        }
Пример #8
0
        public ActionResult Edit(int?Id, int?ProjectId)
        {
            ClsStatic.ValidateReferral();


            sPlsSVQSections_Result rslt  = con.sPlsSVQSections("s", Id, ProjectId, null, null, null, null, User.Identity.Name).FirstOrDefault();
            SectionModels          model = new SectionModels();

            model.SectionId            = rslt.Id;
            model.HeaderId             = rslt.Id_SVQ_Headers;
            model.Section_Name         = rslt.Section_Name;
            model.Section_Title        = rslt.Section_Title;
            model.Section_Instructions = rslt.Section_Instructions;
            model.Is_Required_Section  = rslt.Is_Required_Section;

            return(View(model));
        }
Пример #9
0
        public ActionResult IntvSession(InterviewModels m)
        {
            ClsStatic.ValidateReferral();

            // Summary of Project disaply
            // section name with total number of questions

            List <sPlsInterviewQuestions_Result> rslt;

            if (m.Session_Id == null)
            {
                rslt = con.sPlsInterviewQuestions("s", m.ProjectId, m.Participant_Id, m.Session_Id, m.Section_id, m.Id_SVQ_Questions, m.Id_Option_Groups_Choices, m.Measurement_Unit, User.Identity.Name).ToList();
            }
            else
            {
                rslt = con.sPlsInterviewQuestions("i", m.ProjectId, m.Participant_Id, m.Session_Id, m.Section_id, m.Id_SVQ_Questions, m.Id_Option_Groups_Choices, m.Measurement_Unit, User.Identity.Name).ToList();
            }

            sPlsInterviewQuestions_Result rslt_row = rslt.FirstOrDefault();


            InterviewModels model = new InterviewModels();



            model.TblRecord        = rslt;
            model.Section_id       = rslt_row.Id_SVQ_Sections.ToString();
            model.Id_SVQ_Questions = rslt_row.Id_SVQ_Questions;
            model.Session_Id       = rslt_row.Session_Id;
            model.Id_Option_Groups = rslt_row.Id_Option_Groups;
            model.Measurement_Unit = rslt_row.Measurement_Unit;



            //m.Section_Name = rslt.Section_Name;
            //m.Section_Title = rslt.Section_Title;
            //m.Section_Instructions = rslt.Section_Instructions;

            //m.Question_Name = rslt.Question_Name;
            //m.Question_Subtext = rslt.Question_Subtext;
            //m.Question_Code = rslt.Question_Code;


            return(View(model));
        }
Пример #10
0
        public ActionResult Edit(int?Id)
        {
            ClsStatic.ValidateReferral();

            sPlsSVQQuestions_Result rslt  = con.sPlsSVQQuestions("s", Id, null, null, null, null, null, null, null, User.Identity.Name).ToList().FirstOrDefault();
            QuestionModels          model = new QuestionModels();

            model.QuestionId           = rslt.Id;
            model.SectionId            = rslt.Id_SVQ_Sections;
            model.Question_Name        = rslt.Question_Name;
            model.Question_Subtext     = rslt.Question_Subtext;
            model.Question_Code        = rslt.Question_Code;
            model.Measurement_Unit     = rslt.Measurement_Unit.ToString();
            model.Id_Option_Categories = rslt.Id_Option_Groups;
            model.Id_Input_Types       = rslt.Id_Input_Types;

            return(View(model));
        }
Пример #11
0
        public ActionResult Edit(int?Id)
        {
            ClsStatic.ValidateReferral();

            sPlsParticipants_Result rslt  = con.sPlsParticipants("s", Id, null, null, null, null, null, null, null, null, User.Identity.Name).ToList().FirstOrDefault();
            ParticipantsModels      model = new ParticipantsModels();

            model.Id                 = rslt.Id;
            model.Participant_Id     = rslt.ParticipantId;
            model.First_Name         = rslt.First_Name;
            model.Last_Name          = rslt.Last_Name;
            model.Address            = rslt.Address;
            model.Ward_No            = rslt.Ward_No;
            model.Contact_Number     = rslt.Contact_Number;
            model.Consent_Obtained   = rslt.Consent_Obtained;
            model.Interview_Language = rslt.Interview_Language;

            return(View(model));
        }
Пример #12
0
        public ActionResult Index(InterviewModels model)
        {
            ClsStatic.ValidateReferral();
            ViewBag.Message = TempData["Message"];
            ViewBag.IsPopup = TempData["IsPopup"];
            int ProjectId = model.ProjectId;
            sPlsParticipants_Result rslt = con.sPlsParticipants("s", null, model.Participant_Id, null, null, null, null, null, null, null, User.Identity.Name).ToList().FirstOrDefault();

            if (rslt != null)
            {
                model.ProjectId      = ProjectId;
                model.Participant_Id = rslt.ParticipantId;
                model.First_Name     = rslt.First_Name;
                model.Last_Name      = rslt.Last_Name;
                model.Address        = rslt.Address;
                model.Ward_No        = rslt.Ward_No;
            }
            return(View(model));
        }
Пример #13
0
        public ActionResult Delete(int Id, int?ProjectId)
        {
            int SectionId = Id;

            ClsStatic.ValidateReferral();
            try
            {
                dPlsSVQSections_Result rslt = con.dPlsSVQSections("d", SectionId, ProjectId, null, null, null, null, User.Identity.Name).FirstOrDefault();

                TempData["Message"] = rslt.Message;
                TempData["IsPopup"] = "y";
                return(RedirectToAction("Index", "Sections", new { Id = ProjectId }));
            }
            catch
            {
            }


            return(View());
        }
Пример #14
0
        public ActionResult Delete(int?id, int?SectionId)
        {
            ClsStatic.ValidateReferral();
            try
            {
                dPlsSVQQuestions_Result rslt = con.dPlsSVQQuestions("d", id, SectionId, null, null, null, null, null, null, User.Identity.Name).FirstOrDefault();

                if (rslt.Code == "000")
                {
                    TempData["Message"] = rslt.Message;
                    TempData["IsPopup"] = "y";
                    return(RedirectToAction("Index", "Questions", new { Id = SectionId }));
                }
            }
            catch
            {
                ModelState.AddModelError("", "Techinical Error Occurred While Processing Your Request");
            }

            return(View());
        }
Пример #15
0
        /// <summary>
        /// 浏览源图层
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void buttonXBrowseLayer_Click(object sender, EventArgs e)
        {
            string sourceFeatureclassPath = null;

            ZJGISOpenData.Forms.FrmOpenData frmOpenData = new ZJGISOpenData.Forms.FrmOpenData();

            if (frmOpenData.ShowDialog() == DialogResult.Cancel)
            {
                return;
            }

            //sourceFeatureclass = ClsUpdateCommon.OpenSourceLayer(out sourceFeatureclassPath);
            Collection <object> featClsCol = new Collection <object>();

            featClsCol = frmOpenData.FeatClsCollection;
            if (featClsCol.Count == 1)
            {
                sourceFeatureclass = featClsCol[0] as IFeatureClass;
            }
            else
            {
                MessageBoxEx.Show("请加载数据源", "提示", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }
            sourceFeatureclassPath = frmOpenData.PathName + @"\" + sourceFeatureclass.AliasName;
            if (string.IsNullOrEmpty(sourceFeatureclassPath))
            {
                return;
            }
            IDataset pDataset = sourceFeatureclass as IDataset;

            textBoxXLayerPath.Text = sourceFeatureclassPath;

            wizardPage1.NextButtonEnabled = eWizardButtonState.True;
            sourceFields = ClsStatic.GetAttribute(sourceFeatureclass);
        }
Пример #16
0
        //private static IFeatureWorkspace m_FeatureWorkspace;

        /// <summary>
        /// 数据编码(自动赋值编码)
        /// </summary>
        /// <param name="source">源要素类</param>
        /// <param name="target">目标要素类</param>
        /// <param name="relation">匹配结果表</param>
        /// <param name="updateRela">欲更新的属性表字段</param>
        /// <param name="pProgressBarX"></param>
        /// <param name="targetFeatureWorkspace">待匹配图层路径</param>
        /// <returns></returns>
        //public static bool UpdateData(IFeatureClass sourceFcls, IFeatureClass targetFcls, ITable resultTable, Dictionary<string, string> updateRela
        //    , ProgressBarX pProgressBarX, IFeatureWorkspace targetFeatureWorkspace)
        public static bool UpdateData(IFeatureClass sourceFcls, IFeatureClass targetFcls, ITable resultTable,
                                      ProgressBarX pProgressBarX, IFeatureWorkspace targetFeatureWorkspace)
        {
            ClsBarSync progressBar = new ClsBarSync(pProgressBarX);

            progressBar.SetStep(1);
            progressBar.SetMax(resultTable.RowCount(null));

            //检查参数
            if (sourceFcls == null || targetFcls == null || resultTable == null)
            {
                return(false);
            }

            #region 原注释
            //当欲更新字段在目标要素类中不存在时,新建字段
            //foreach (string item in fields)
            //{
            //    if (target.FindField(item) == -1)
            //    {
            //        IField addedField = source.Fields.get_Field(source.FindField(item));
            //        target.AddField(addedField);
            //    }
            //}
            #endregion
            //20170914 注释掉

            ////当欲更新字段在目标要素类中不存在时,新建字段
            //foreach (KeyValuePair<string, string> item in updateRela)
            //{
            //    if (targetFcls.FindField(item.Value) == -1)
            //    {
            //        IField addedField = new FieldClass();
            //        IFieldEdit pFieldEdit = addedField as IFieldEdit;
            //        pFieldEdit.Name_2 = item.Value;
            //        pFieldEdit.AliasName_2 = item.Value;
            //        pFieldEdit.Editable_2 = true;
            //        pFieldEdit.Required_2 = false;
            //        pFieldEdit.IsNullable_2 = true;
            //        targetFcls.AddField(addedField);
            //    }
            //}
            IWorkspaceEdit2 pWorkspaceEdit = targetFeatureWorkspace as IWorkspaceEdit2;
            pWorkspaceEdit.StartEditing(false);
            pWorkspaceEdit.StartEditOperation();

            #region 20170515注释掉
            //ClsUpdateCommon.EnableAchive(target.AliasName, targetFeatureWorkspace);
            //IHistoricalWorkspace pHistoricalWorkspace = targetFeatureWorkspace as IHistoricalWorkspace;
            //DateTime dTime=DateTime.Now;
            //pHistoricalWorkspace.AddHistoricalMarker(dTime.ToString(), dTime);//严格应该为数据库时间
            #endregion

            #region 原来注释
            //foreach (KeyValuePair<string, string> item in updateRela)
            //{
            //    if (target.FindField(item.Value) == -1)
            //    {
            //        IField addedField = new FieldClass();
            //        IFieldEdit pFieldEdit = addedField as IFieldEdit;
            //        pFieldEdit.Name_2 = item.Value;
            //        pFieldEdit.AliasName_2 = item.Value;
            //        pFieldEdit.Editable_2 = true;
            //        pFieldEdit.Required_2 = false;
            //        pFieldEdit.IsNullable_2 = true;
            //        target.AddField(addedField);
            //    }
            //}
            #endregion

            //源图层要素的oid——1
            int pSrcOIDIndex = resultTable.FindField("源OID");
            //待匹配图层要素的oid——2
            int pTarOIDIndex = resultTable.FindField("待匹配OID");
            //变化标记的oid——3
            int pChangeTagIndex = resultTable.FindField("变化标记");

            ICursor rowCursor = resultTable.Search(null, false);
            IRow    tempRow   = null;
            tempRow = rowCursor.NextRow();
            while (tempRow != null)
            {
                //当没有匹配的项时或者未发生变化时不做任何更改
                if (tempRow.get_Value(pTarOIDIndex) == null || tempRow.get_Value(pChangeTagIndex).ToString() == "0")
                {
                    progressBar.PerformOneStep();
                    continue;
                }
                //获取源图层要素
                IFeature sourceFeature = sourceFcls.GetFeature(Convert.ToInt32(tempRow.get_Value(pSrcOIDIndex)));
                //变化标记字段值
                string pChangeContent = tempRow.get_Value(pChangeTagIndex).ToString();
                //获取源图层要素
                string[] fromids = tempRow.get_Value(pTarOIDIndex).ToString().Split(';');


                if (!(fromids.Length == 1 && fromids[0].Trim().Length == 0))
                {
                    //查找匹配与待匹配的要素
                    IFeature targetFeature = null;
                    //点和线匹配名称
                    string pSourceName = sourceFeature.get_Value(sourceFeature.Fields.FindField(ClsConfig.LayerConfigs[(sourceFcls  as IDataset).Name].NameField)).ToString();
                    string pTargetName = string.Empty;
                    //面匹配分类码
                    //string pSourceFCODE = sourceFeature.get_Value(sourceFeature.Fields.FindField("FCODE")).ToString().Trim();
                    string pTargetFCODE = string.Empty;

                    //不同形状的数据
                    if (sourceFcls.ShapeType != targetFcls.ShapeType)
                    {
                        if (sourceFeature.Shape.GeometryType == esriGeometryType.esriGeometryPoint)
                        {
                            //根据不同的匹配类型进行相关操作
                            switch (pChangeContent)
                            {
                            case "图形变化":    //图形变化
                            //case "一对一":
                            case ClsConstant.One2One:
                                //targetFeature.Shape = sourceFeature.Shape;
                                //plistString.Add(sourceFeature.get_Value(sourceFeature.Fields.FindField("ENTIID")).ToString());
                                //test
                                targetFeature = targetFcls.GetFeature(Convert.ToInt32(tempRow.get_Value(pTarOIDIndex)));
                                string test3 = ClsConfig.LayerConfigs[(targetFcls  as IDataset).Name].NameField;
                                pTargetName = targetFeature.get_Value(targetFeature.Fields.FindField(ClsConfig.LayerConfigs[(targetFcls  as IDataset).Name].NameField)).ToString();
                                //test
                                string test1 = targetFeature.get_Value(targetFeature.Fields.FindField(ClsConfig.LayerConfigs[(targetFcls  as IDataset).Name].EntityID)).ToString();
                                string test2 = sourceFeature.get_Value(sourceFeature.Fields.FindField(ClsConfig.LayerConfigs[(sourceFcls  as IDataset).Name].EntityID)).ToString();
                                if (ClsStatic.StringSameOrNot(pSourceName, pTargetName) > 1)
                                {
                                    targetFeature.set_Value(targetFeature.Fields.FindField(ClsConfig.LayerConfigs[(targetFcls  as IDataset).Name].EntityID), sourceFeature.get_Value(sourceFeature.Fields.FindField(ClsConfig.LayerConfigs[(sourceFcls  as IDataset).Name].EntityID)));
                                    targetFeature.Store();
                                }
                                //sourceFeature.set_Value(sourceFeature.Fields.FindField("ENTIID"), targetFeature.get_Value(targetFeature.Fields.FindField("ENTIID")));
                                break;

                            //case "新增要素"://新添加要素
                            case ClsConstant.One2Zero:    //新添加要素
                                //targetFeature = target.CreateFeature();
                                //targetFeature.Shape = sourceFeature.ShapeCopy;
                                //UpdateAttribute(sourceFeature, targetFeature, updateRela);
                                break;

                            //case "一对多":
                            case ClsConstant.One2More:
                                //for (int i = 0; i < fromids.Length; i++)
                                //{
                                //    string test = fromids[i];
                                //    int test3 = Convert.ToInt32(fromids[i]);

                                //    targetFeature = target.GetFeature(Convert.ToInt32(fromids[i]));
                                //    pTargetName = targetFeature.get_Value(targetFeature.Fields.FindFieldByAliasName("名称")).ToString();
                                //    //targetFeature.Shape = sourceFeature.Shape;
                                //    if (ClsStatic.StringSameOrNot(pSourceName, pTargetName) > 1)
                                //    {
                                //        if (targetFeature.get_Value(targetFeature.Fields.FindField("ENTIID")).ToString().Trim().Length == 0)
                                //        {
                                //            targetFeature.set_Value(targetFeature.Fields.FindField("ENTIID"), sourceFeature.get_Value(sourceFeature.Fields.FindField("ENTIID")));
                                //            targetFeature.Store();
                                //        }
                                //    }
                                //}
                                //MessageBox.Show("出现一对多情况,请校对匹配结果表后执行匹配", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
                                //return false;
                                break;

                            case "属性变化":    //属性变化
                                //UpdateAttribute(sourceFeature, targetFeature, updateRela);
                                break;

                            case "属性图形变化":    //都变化
                                //targetFeature.Shape = sourceFeature.Shape;
                                //UpdateAttribute(sourceFeature, targetFeature, updateRela);
                                break;

                            //case "多对一"://多尺度更新
                            case ClsConstant.More2One:    //多尺度更新
                                //targetFeature.Shape = finalGeometry;
                                break;

                            default:
                                break;
                            }
                        }
                        else if (sourceFeature.Shape.GeometryType == esriGeometryType.esriGeometryPolyline)
                        {
                            //根据不同的匹配类型进行相关操作
                            switch (pChangeContent)
                            {
                            case "图形变化":    //图形变化
                            //case "一对一":
                            case ClsConstant.One2One:
                                targetFeature = targetFcls.GetFeature(Convert.ToInt32(tempRow.get_Value(pTarOIDIndex)));
                                pTargetName   = targetFeature.get_Value(targetFeature.Fields.FindField(ClsConfig.LayerConfigs[(targetFcls  as IDataset).Name].NameField)).ToString();
                                //targetFeature.Shape = sourceFeature.Shape;
                                if (pSourceName == pTargetName)
                                {
                                    targetFeature.set_Value(targetFeature.Fields.FindField(ClsConfig.LayerConfigs[(targetFcls  as IDataset).Name].EntityID), sourceFeature.get_Value(sourceFeature.Fields.FindField(ClsConfig.LayerConfigs[(sourceFcls  as IDataset).Name].EntityID)));
                                    targetFeature.Store();
                                }
                                //sourceFeature.set_Value(sourceFeature.Fields.FindField("ENTIID"), targetFeature.get_Value(targetFeature.Fields.FindField("ENTIID")));
                                break;

                            //case "新增要素"://新添加要素
                            case ClsConstant.One2Zero:    //新添加要素
                                //targetFeature = target.CreateFeature();
                                //targetFeature.Shape = sourceFeature.ShapeCopy;
                                //UpdateAttribute(sourceFeature, targetFeature, updateRela);
                                break;

                            //case "一对多":
                            case ClsConstant.One2More:
                                //MessageBox.Show("出现一对多情况,请校对匹配结果表后执行匹配", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
                                //return false;
                                for (int i = 0; i < fromids.Length; i++)
                                {
                                    string test  = fromids[i];
                                    int    test2 = Convert.ToInt32(fromids[i]);

                                    targetFeature = targetFcls.GetFeature(Convert.ToInt32(fromids[i]));
                                    pTargetName   = targetFeature.get_Value(targetFeature.Fields.FindField(ClsConfig.LayerConfigs[(targetFcls  as IDataset).Name].NameField)).ToString();
                                    //targetFeature.Shape = sourceFeature.Shape;
                                    if (pSourceName == pTargetName)
                                    {
                                        if (targetFeature.get_Value(targetFeature.Fields.FindField(ClsConfig.LayerConfigs[(targetFcls  as IDataset).Name].EntityID)).ToString().Trim().Length == 0)
                                        {
                                            targetFeature.set_Value(targetFeature.Fields.FindField(ClsConfig.LayerConfigs[(targetFcls  as IDataset).Name].EntityID), sourceFeature.get_Value(sourceFeature.Fields.FindField(ClsConfig.LayerConfigs[(sourceFcls  as IDataset).Name].EntityID)));
                                            targetFeature.Store();
                                        }
                                    }
                                }

                                break;

                            case "属性变化":    //属性变化
                                //UpdateAttribute(sourceFeature, targetFeature, updateRela);
                                break;

                            case "属性图形变化":    //都变化
                                //targetFeature.Shape = sourceFeature.Shape;
                                //UpdateAttribute(sourceFeature, targetFeature, updateRela);
                                break;

                            //case "多对一"://多尺度更新
                            case ClsConstant.More2One:    //多尺度更新
                                //targetFeature.Shape = finalGeometry;
                                break;

                            default:
                                break;
                            }
                        }
                        else if (sourceFeature.Shape.GeometryType == esriGeometryType.esriGeometryPolygon)
                        {
                            //根据不同的匹配类型进行相关操作
                            switch (pChangeContent)
                            {
                            case "图形变化":    //图形变化
                            //case "一对一":
                            case ClsConstant.One2One:
                                targetFeature = targetFcls.GetFeature(Convert.ToInt32(tempRow.get_Value(pTarOIDIndex)));
                                pTargetFCODE  = targetFeature.get_Value(targetFeature.Fields.FindField("FCODE")).ToString().Trim();
                                //targetFeature.Shape = sourceFeature.Shape;
                                //if (pSourceFCODE == pTargetFCODE)
                                //{
                                targetFeature.set_Value(targetFeature.Fields.FindField(ClsConfig.LayerConfigs[(targetFcls  as IDataset).Name].EntityID), sourceFeature.get_Value(sourceFeature.Fields.FindField(ClsConfig.LayerConfigs[(sourceFcls  as IDataset).Name].EntityID)));
                                targetFeature.Store();
                                //}
                                //sourceFeature.set_Value(sourceFeature.Fields.FindField("ENTIID"), targetFeature.get_Value(targetFeature.Fields.FindField("ENTIID")));
                                break;

                            //case "新增要素"://新添加要素
                            case ClsConstant.One2Zero:    //新添加要素
                                //targetFeature = target.CreateFeature();
                                //targetFeature.Shape = sourceFeature.ShapeCopy;
                                //UpdateAttribute(sourceFeature, targetFeature, updateRela);
                                break;

                            //case "一对多":
                            case ClsConstant.One2More:
                                //MessageBox.Show("出现一对多情况,请校对匹配结果表后执行匹配", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
                                //return false;

                                //for (int i = 0; i < fromids.Length; i++)
                                //{
                                //    string test = fromids[i];
                                //    int test2 = Convert.ToInt32(fromids[i]);
                                //    targetFeature = targetFcls.GetFeature(Convert.ToInt32(fromids[i]));
                                //    pTargetName = targetFeature.get_Value(targetFeature.Fields.FindField(ClsConfig.LayerConfigs[(targetFcls  as IDataset).Name].NameField)).ToString();
                                //    //targetFeature.Shape = sourceFeature.Shape;
                                //    if (pSourceName == pTargetName)
                                //    {
                                //        if (targetFeature.get_Value(targetFeature.Fields.FindField(ClsConfig.LayerConfigs[(targetFcls  as IDataset).Name].EntityID)).ToString().Trim().Length == 0)
                                //        {
                                //            targetFeature.set_Value(targetFeature.Fields.FindField(ClsConfig.LayerConfigs[(targetFcls  as IDataset).Name].EntityID), sourceFeature.get_Value(sourceFeature.Fields.FindField(ClsConfig.LayerConfigs[(sourceFcls  as IDataset).Name].EntityID)));
                                //            targetFeature.Store();
                                //        }
                                //    }
                                //}

                                break;

                            case "属性变化":    //属性变化
                                //UpdateAttribute(sourceFeature, targetFeature, updateRela);
                                break;

                            case "属性图形变化":    //都变化
                                //targetFeature.Shape = sourceFeature.Shape;
                                //UpdateAttribute(sourceFeature, targetFeature, updateRela);
                                break;

                            //case "多对一"://多尺度更新
                            case ClsConstant.More2More:    //多尺度更新
                                //targetFeature.Shape = finalGeometry;
                                break;

                            default:
                                break;
                            }
                        }
                    }
                    //相同形状的数据
                    else
                    {
                        if (sourceFeature.Shape.GeometryType == esriGeometryType.esriGeometryPoint)
                        {
                            //根据不同的匹配类型进行相关操作
                            switch (pChangeContent)
                            {
                            case "图形变化":    //图形变化
                            //case "一对一":
                            case ClsConstant.One2One:
                                //targetFeature.Shape = sourceFeature.Shape;
                                //plistString.Add(sourceFeature.get_Value(sourceFeature.Fields.FindField("ENTIID")).ToString());
                                //test
                                targetFeature = targetFcls.GetFeature(Convert.ToInt32(tempRow.get_Value(pTarOIDIndex)));
                                //string test3 = ClsConfig.LayerConfigs[(targetFcls  as IDataset).Name].NameField;
                                string test3 = ClsConfig.LayerConfigs[(targetFcls  as IDataset).Name].NameField;
                                pTargetName = targetFeature.get_Value(targetFeature.Fields.FindField(ClsConfig.LayerConfigs[(targetFcls  as IDataset).Name].NameField)).ToString();
                                //test
                                string test1 = targetFeature.get_Value(targetFeature.Fields.FindField(ClsConfig.LayerConfigs[(targetFcls  as IDataset).Name].EntityID)).ToString();
                                string test2 = sourceFeature.get_Value(sourceFeature.Fields.FindField(ClsConfig.LayerConfigs[(sourceFcls  as IDataset).Name].EntityID)).ToString();
                                //if (ClsStatic.StringSameOrNot(pSourceName, pTargetName) > 1)
                                //{
                                targetFeature.set_Value(targetFeature.Fields.FindField(ClsConfig.LayerConfigs[(targetFcls  as IDataset).Name].EntityID), sourceFeature.get_Value(sourceFeature.Fields.FindField(ClsConfig.LayerConfigs[(sourceFcls  as IDataset).Name].EntityID)));
                                targetFeature.Store();
                                //}
                                //sourceFeature.set_Value(sourceFeature.Fields.FindField("ENTIID"), targetFeature.get_Value(targetFeature.Fields.FindField("ENTIID")));
                                break;

                            //case "新增要素"://新添加要素
                            case ClsConstant.One2Zero:    //新添加要素
                                //targetFeature = target.CreateFeature();
                                //targetFeature.Shape = sourceFeature.ShapeCopy;
                                //UpdateAttribute(sourceFeature, targetFeature, updateRela);
                                break;

                            //case "一对多":
                            case ClsConstant.One2More:
                                //for (int i = 0; i < fromids.Length; i++)
                                //{
                                //    string test = fromids[i];
                                //    int test3 = Convert.ToInt32(fromids[i]);

                                //    targetFeature = target.GetFeature(Convert.ToInt32(fromids[i]));
                                //    pTargetName = targetFeature.get_Value(targetFeature.Fields.FindFieldByAliasName("名称")).ToString();
                                //    //targetFeature.Shape = sourceFeature.Shape;
                                //    if (ClsStatic.StringSameOrNot(pSourceName, pTargetName) > 1)
                                //    {
                                //        if (targetFeature.get_Value(targetFeature.Fields.FindField("ENTIID")).ToString().Trim().Length == 0)
                                //        {
                                //            targetFeature.set_Value(targetFeature.Fields.FindField("ENTIID"), sourceFeature.get_Value(sourceFeature.Fields.FindField("ENTIID")));
                                //            targetFeature.Store();
                                //        }
                                //    }
                                //}
                                //MessageBox.Show("出现一对多情况,请校对匹配结果表后执行匹配", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
                                //return false;
                                break;

                            case "属性变化":    //属性变化
                                //UpdateAttribute(sourceFeature, targetFeature, updateRela);
                                break;

                            case "属性图形变化":    //都变化
                                //targetFeature.Shape = sourceFeature.Shape;
                                //UpdateAttribute(sourceFeature, targetFeature, updateRela);
                                break;

                            //case "多对一"://多尺度更新
                            case ClsConstant.More2One:    //多尺度更新
                                //targetFeature.Shape = finalGeometry;
                                break;

                            default:
                                break;
                            }
                        }
                        else if (sourceFeature.Shape.GeometryType == esriGeometryType.esriGeometryPolyline)
                        {
                            //根据不同的匹配类型进行相关操作
                            switch (pChangeContent)
                            {
                            case "图形变化":    //图形变化
                            //case "一对一":
                            case ClsConstant.One2One:
                                targetFeature = targetFcls.GetFeature(Convert.ToInt32(tempRow.get_Value(pTarOIDIndex)));
                                pTargetName   = targetFeature.get_Value(targetFeature.Fields.FindField(ClsConfig.LayerConfigs[(targetFcls  as IDataset).Name].NameField)).ToString();
                                //targetFeature.Shape = sourceFeature.Shape;
                                //if (pSourceName == pTargetName)
                                //{
                                targetFeature.set_Value(targetFeature.Fields.FindField(ClsConfig.LayerConfigs[(targetFcls  as IDataset).Name].EntityID), sourceFeature.get_Value(sourceFeature.Fields.FindField(ClsConfig.LayerConfigs[(sourceFcls  as IDataset).Name].EntityID)));
                                targetFeature.Store();
                                //}
                                //sourceFeature.set_Value(sourceFeature.Fields.FindField("ENTIID"), targetFeature.get_Value(targetFeature.Fields.FindField("ENTIID")));
                                break;

                            //case "新增要素"://新添加要素
                            case ClsConstant.One2Zero:    //新添加要素
                                //targetFeature = target.CreateFeature();
                                //targetFeature.Shape = sourceFeature.ShapeCopy;
                                //UpdateAttribute(sourceFeature, targetFeature, updateRela);
                                break;

                            //case "一对多":
                            case ClsConstant.One2More:
                                //MessageBox.Show("出现一对多情况,请校对匹配结果表后执行匹配", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
                                //return false;
                                for (int i = 0; i < fromids.Length; i++)
                                {
                                    string test  = fromids[i];
                                    int    test2 = Convert.ToInt32(fromids[i]);

                                    targetFeature = targetFcls.GetFeature(Convert.ToInt32(fromids[i]));
                                    pTargetName   = targetFeature.get_Value(targetFeature.Fields.FindField(ClsConfig.LayerConfigs[(targetFcls  as IDataset).Name].NameField)).ToString();
                                    //targetFeature.Shape = sourceFeature.Shape;
                                    if (pSourceName == pTargetName)
                                    {
                                        if (targetFeature.get_Value(targetFeature.Fields.FindField(ClsConfig.LayerConfigs[(targetFcls  as IDataset).Name].EntityID)).ToString().Trim().Length == 0)
                                        {
                                            targetFeature.set_Value(targetFeature.Fields.FindField(ClsConfig.LayerConfigs[(targetFcls  as IDataset).Name].EntityID), sourceFeature.get_Value(sourceFeature.Fields.FindField(ClsConfig.LayerConfigs[(sourceFcls  as IDataset).Name].EntityID)));
                                            targetFeature.Store();
                                        }
                                    }
                                }

                                break;

                            case "属性变化":    //属性变化
                                //UpdateAttribute(sourceFeature, targetFeature, updateRela);
                                break;

                            case "属性图形变化":    //都变化
                                //targetFeature.Shape = sourceFeature.Shape;
                                //UpdateAttribute(sourceFeature, targetFeature, updateRela);
                                break;

                            //case "多对一"://多尺度更新
                            case ClsConstant.More2One:    //多尺度更新
                                //targetFeature.Shape = finalGeometry;
                                break;

                            default:
                                break;
                            }
                        }
                        else if (sourceFeature.Shape.GeometryType == esriGeometryType.esriGeometryPolygon)
                        {
                            //根据不同的匹配类型进行相关操作
                            switch (pChangeContent)
                            {
                            case "图形变化":    //图形变化
                            //case "一对一":
                            case ClsConstant.One2One:
                                targetFeature = targetFcls.GetFeature(Convert.ToInt32(tempRow.get_Value(pTarOIDIndex)));
                                pTargetFCODE  = targetFeature.get_Value(targetFeature.Fields.FindField("FCODE")).ToString().Trim();
                                //targetFeature.Shape = sourceFeature.Shape;
                                //if (pSourceFCODE == pTargetFCODE)
                                //{
                                targetFeature.set_Value(targetFeature.Fields.FindField(ClsConfig.LayerConfigs[(targetFcls  as IDataset).Name].EntityID), sourceFeature.get_Value(sourceFeature.Fields.FindField(ClsConfig.LayerConfigs[(sourceFcls  as IDataset).Name].EntityID)));
                                targetFeature.Store();
                                //}
                                //sourceFeature.set_Value(sourceFeature.Fields.FindField("ENTIID"), targetFeature.get_Value(targetFeature.Fields.FindField("ENTIID")));
                                break;

                            //case "新增要素"://新添加要素
                            case ClsConstant.One2Zero:    //新添加要素
                                //targetFeature = target.CreateFeature();
                                //targetFeature.Shape = sourceFeature.ShapeCopy;
                                //UpdateAttribute(sourceFeature, targetFeature, updateRela);
                                break;

                            //case "一对多":
                            case ClsConstant.One2More:
                                //MessageBox.Show("出现一对多情况,请校对匹配结果表后执行匹配", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
                                //return false;

                                //for (int i = 0; i < fromids.Length; i++)
                                //{
                                //    string test = fromids[i];
                                //    int test2 = Convert.ToInt32(fromids[i]);
                                //    targetFeature = targetFcls.GetFeature(Convert.ToInt32(fromids[i]));
                                //    pTargetName = targetFeature.get_Value(targetFeature.Fields.FindField(ClsConfig.LayerConfigs[(targetFcls  as IDataset).Name].NameField)).ToString();
                                //    //targetFeature.Shape = sourceFeature.Shape;
                                //    if (pSourceName == pTargetName)
                                //    {
                                //        if (targetFeature.get_Value(targetFeature.Fields.FindField(ClsConfig.LayerConfigs[(targetFcls  as IDataset).Name].EntityID)).ToString().Trim().Length == 0)
                                //        {
                                //            targetFeature.set_Value(targetFeature.Fields.FindField(ClsConfig.LayerConfigs[(targetFcls  as IDataset).Name].EntityID), sourceFeature.get_Value(sourceFeature.Fields.FindField(ClsConfig.LayerConfigs[(sourceFcls  as IDataset).Name].EntityID)));
                                //            targetFeature.Store();
                                //        }
                                //    }
                                //}

                                break;

                            case "属性变化":    //属性变化
                                //UpdateAttribute(sourceFeature, targetFeature, updateRela);
                                break;

                            case "属性图形变化":    //都变化
                                //targetFeature.Shape = sourceFeature.Shape;
                                //UpdateAttribute(sourceFeature, targetFeature, updateRela);
                                break;

                            //case "多对一"://多尺度更新
                            case ClsConstant.More2More:    //多尺度更新
                                //targetFeature.Shape = finalGeometry;
                                break;

                            default:
                                break;
                            }
                        }
                    }
                    //targetFeature.Store();
                }

                progressBar.PerformOneStep();
                tempRow = rowCursor.NextRow();
            }

            //对待匹配图层中剩余的点()进行编码
            //CreatePOICodeRest(target, "ENTIID", plistString);

            pWorkspaceEdit.StopEditOperation();
            pWorkspaceEdit.StopEditing(true);
            return(true);
        }