Exemple #1
0
 /// <summary>
 /// 根据
 /// </summary>
 /// <param name="HouseIds"></param>
 /// <returns></returns>
 public EasyUIGridModel GetWBInfoByHouseIds(IList <string> HouseIds)
 {
     if (HouseIds.Count > 0)
     {
         BDCSrvSoap soap = new BDCSrvSoapClient();
         IList <WBInfoForAHouse> wbinfos = new List <WBInfoForAHouse>();
         foreach (string hid in HouseIds)
         {
             string  paramstring = "HouseID=" + hid;
             DataSet ds          = soap.SPF_FC_FWQK(paramstring);
             if (ds != null && ds.Tables[0].Rows.Count > 0)
             {
                 WBInfoForAHouse w = new WBInfoForAHouse();
                 w.HID  = ds.Tables[0].Rows[0]["HID"].ToString();
                 w.XMMC = ds.Tables[0].Rows[0]["XMMC"].ToString();
                 w.LPMC = ds.Tables[0].Rows[0]["LPMC"].ToString();
                 w.DYH  = ds.Tables[0].Rows[0]["DYH"].ToString();
                 w.FJH  = ds.Tables[0].Rows[0]["FJH"].ToString();
                 w.JZMJ = ds.Tables[0].Rows[0]["JZMJ"].ToString();
                 w.FWZT = ds.Tables[0].Rows[0]["FWZT"].ToString();
                 w.CFZT = ds.Tables[0].Rows[0]["CFZT"].ToString();
                 w.DYZT = ds.Tables[0].Rows[0]["DYZT"].ToString();
                 w.ZXZT = ds.Tables[0].Rows[0]["ZXZT"].ToString();
                 if (ds.Tables[1] != null && ds.Tables[1].Rows.Count > 0)
                 {
                     w.MCList   = new List <string>();
                     w.ZJLXList = new List <string>();
                     w.ZJHMList = new List <string>();
                     w.LXDHList = new List <string>();
                     w.LXDZList = new List <string>();
                     for (int i = 0; i < ds.Tables[1].Rows.Count; i++)
                     {
                         w.MCList.Add(ds.Tables[1].Rows[i]["MC"].ToString());
                         w.ZJLXList.Add(ds.Tables[1].Rows[i]["ZJLX"].ToString());
                         w.ZJHMList.Add(ds.Tables[1].Rows[i]["ZJHM"].ToString());
                         w.LXDZList.Add(ds.Tables[1].Rows[i]["LXDZ"].ToString());
                     }
                 }
                 wbinfos.Add(w);
             }
             else
             {
                 wbinfos.Add(new WBInfoForAHouse {
                     XMMC = "网备中无此房屋"
                 });
             }
         }
         EasyUIGridModel ret = new EasyUIGridModel(0, wbinfos.Count, wbinfos);
         return(ret);
     }
     else
     {
         return(null);
     }
 }
        private WBInfoForAHouse getQlrMCInWB(string houseid)
        {
            BDCSrvSoap      soap        = new BDCSrvSoapClient();
            string          paramstring = "HouseID=" + houseid;
            DataSet         ds          = soap.SPF_FC_FWQK(paramstring);
            WBInfoForAHouse w           = null;

            if (ds != null && ds.Tables[0].Rows.Count > 0)
            {
                w      = new WBInfoForAHouse();
                w.HID  = ds.Tables[0].Rows[0]["HID"].ToString();
                w.XMMC = ds.Tables[0].Rows[0]["XMMC"].ToString();
                w.LPMC = ds.Tables[0].Rows[0]["LPMC"].ToString();
                w.DYH  = ds.Tables[0].Rows[0]["DYH"].ToString();
                w.FJH  = ds.Tables[0].Rows[0]["FJH"].ToString();
                w.JZMJ = ds.Tables[0].Rows[0]["JZMJ"].ToString();
                w.FWZT = ds.Tables[0].Rows[0]["FWZT"].ToString();
                w.CFZT = ds.Tables[0].Rows[0]["CFZT"].ToString();
                w.DYZT = ds.Tables[0].Rows[0]["DYZT"].ToString();
                w.ZXZT = ds.Tables[0].Rows[0]["ZXZT"].ToString();
                if (ds.Tables[1] != null && ds.Tables[1].Rows.Count > 0)
                {
                    w.MCList   = new List <string>();
                    w.ZJLXList = new List <string>();
                    w.ZJHMList = new List <string>();
                    w.LXDHList = new List <string>();
                    w.LXDZList = new List <string>();
                    for (int i = 0; i < ds.Tables[1].Rows.Count; i++)
                    {
                        w.MCList.Add(ds.Tables[1].Rows[i]["MC"].ToString());
                        w.ZJLXList.Add(ds.Tables[1].Rows[i]["ZJLX"].ToString());
                        w.ZJHMList.Add(ds.Tables[1].Rows[i]["ZJHM"].ToString());
                        w.LXDZList.Add(ds.Tables[1].Rows[i]["LXDZ"].ToString());
                    }
                }
            }
            return(w);
        }
        /// <summary>
        /// 获取网备中的权利人名称
        /// </summary>
        /// <param name="houseId"></param>
        /// <returns></returns>
        private WBInfoForAHouse GetInfoInWB(string houseId)
        {
            WBInfoForAHouse mc = getQlrMCInWB(houseId);

            if (mc != null)
            {
                return(mc);
            }
            else
            {
                BDCExtendDal dal       = new BDCExtendDal();
                string       ychouseid = dal.GetYCHouseIdBy(houseId);
                mc = getQlrMCInWB(houseId);
                if (mc != null)
                {
                    return(mc);
                }
                else
                {
                    string schouseid = dal.GetSCHouseIdBy(houseId);
                    return(getQlrMCInWB(houseId));
                }
            }
        }
        private BDCFilterResult CheckInWB(WBInfoForAHouse wbInfo, string djlx, string slbh, string tzr)
        {
            BDCFilterResult ret = new BDCFilterResult {
                IsSuccess = true
            };

            if (djlx.Equals("抵押"))
            {
                if (wbInfo.CFZT != "0")
                {//网备里面有查封,不能做权属登记
                    ret.IsSuccess   = false;
                    ret.Message     = wbInfo.ZL + ",在网签系统中有查封状态";
                    ret.ConfirmType = 0;
                    return(ret);
                }
                if (wbInfo.DYZT != "0")
                {
                    ret.IsSuccess   = false;
                    ret.Message     = wbInfo.ZL + ",在网签系统中有抵押状态";
                    ret.ConfirmType = 1;
                    return(ret);
                }
            }
            else if (djlx.Equals("权属"))
            {
                if (wbInfo.CFZT != "0")
                {//网备里面有查封,不能做权属登记
                    ret.IsSuccess   = false;
                    ret.Message     = wbInfo.ZL + ",在网签系统中有查封状态";
                    ret.ConfirmType = 0;
                    return(ret);
                }
                if (wbInfo.DYZT != "0")
                {
                    ret.IsSuccess   = false;
                    ret.Message     = wbInfo.ZL + ",在网签系统中有抵押状态";
                    ret.ConfirmType = 0;
                    return(ret);
                }
            }
            else if (djlx.Equals("预告"))
            {
                if (wbInfo.CFZT != "0")
                {//网备里面有查封,不能做权属登记
                    ret.IsSuccess   = false;
                    ret.Message     = wbInfo.ZL + ",在网签系统中有查封状态";
                    ret.ConfirmType = 0;
                    return(ret);
                }
                if (wbInfo.DYZT != "0")
                {
                    ret.IsSuccess   = false;
                    ret.Message     = wbInfo.ZL + ",在网签系统中有抵押状态";
                    ret.ConfirmType = 0;
                    return(ret);
                }
                bool hasQ = false;
                foreach (string q in wbInfo.MCList)
                {
                    if (tzr.Contains(q))
                    {
                        hasQ = true;
                    }
                }
                if (!hasQ)
                {
                    ret.IsSuccess   = false;
                    ret.Message     = wbInfo.ZL + ",在网签系统中的人名和通知人名不一致";
                    ret.ConfirmType = 0;
                    return(ret);
                }
            }
            else if (djlx.Equals("查封"))
            {
                bool hasQ = false;
                foreach (string q in wbInfo.MCList)
                {
                    if (tzr.Contains(q))
                    {
                        hasQ = true;
                    }
                }
                if (!hasQ)
                {
                    ret.IsSuccess   = false;
                    ret.Message     = wbInfo.ZL + ",在网签系统中的人名和通知人名不一致";
                    ret.ConfirmType = 0;
                    return(ret);
                }
            }
            return(ret);
        }
 public BDCFilterResult Filter(PageParams param)
 {
     try
     {
         if (configFromBDC.ContainsKey("RegistCheckFilter") && configFromBDC["RegistCheckFilter"].Equals("是"))
         {
             string djlx = getDJLXBySLBH(param.PrjId);
             IList <BDCFilterResult> retS = new List <BDCFilterResult>();
             IList <string>          hs   = GetDJHouses(param.PrjId);
             if (hs == null || hs.Count == 0)
             {
                 return(new BDCFilterResult {
                     IsSuccess = true
                 });
             }
             string tzr = GetTXRXM(param.PrjId, djlx);
             if (hs.Count > 0)
             {
                 foreach (string h in hs)
                 {//在不动产系统中安装
                     BDCFilterResult ret = new BDCFilterResult();
                     ret.IsSuccess = true;
                     if (!configFromBDC.ContainsKey("RegistCheckFrom"))
                     {
                         int how2Check = How2Check(h, param.PrjId);
                         if (how2Check == 1 && djlx != "预告")
                         {
                             ret = CheckInBDC(h, djlx, param.PrjId, tzr);
                         }
                         else if (how2Check == 2 || djlx == "预告")
                         {
                             WBInfoForAHouse aH = GetInfoInWB(h);
                             if (aH != null)
                             {
                                 ret = CheckInWB(aH, djlx, param.PrjId, tzr);
                             }
                             else
                             {
                                 FCWebServiceDal dal = new FCWebServiceDal();
                                 if (!string.IsNullOrEmpty(dal.GetHYCId(h)))
                                 {
                                     ret.IsSuccess   = false;
                                     ret.Message     = "户ID为[" + h + "]存在预测信息,但在网备中未找到任何信息。\n";
                                     ret.ConfirmType = 1;
                                 }
                             }
                         }
                         retS.Add(ret);
                     }
                     else
                     {
                         if (configFromBDC["RegistCheckFrom"].Contains("不动产"))
                         {
                             ret = CheckInBDC(h, djlx, param.PrjId, tzr);
                             retS.Add(ret);
                         }
                         if (configFromBDC["RegistCheckFrom"].Contains("网备"))
                         {
                             WBInfoForAHouse aH = GetInfoInWB(h);
                             if (aH != null)
                             {
                                 ret = CheckInWB(aH, djlx, param.PrjId, tzr);
                             }
                             else
                             {
                                 FCWebServiceDal dal = new FCWebServiceDal();
                                 if (!string.IsNullOrEmpty(dal.GetHYCId(h)))
                                 {
                                     ret.IsSuccess   = false;
                                     ret.Message     = "户ID为[" + h + "]存在预测信息,但在网备中未找到任何信息。\n";
                                     ret.ConfirmType = 1;
                                 }
                             }
                             retS.Add(ret);
                         }
                     }
                 }
             }
             if (configFromBDC.ContainsKey("RegistCheckFrom") && configFromBDC["RegistCheckFrom"].Equals("存量房"))
             {
                 FCWebServiceDal    dal         = new FCWebServiceDal();
                 IList <XGZHAndQLR> xgzhAndQlrs = dal.GetFDJBInfo(param.PrjId);
                 BDCFilterResult    ret         = CheckInCLF(xgzhAndQlrs, djlx, param.PrjId, tzr);
                 retS.Add(ret);
             }
             BDCFilterResult retn        = new BDCFilterResult();
             bool            isSuccess   = true;
             string          message     = "";
             int             confirmType = -1;
             foreach (BDCFilterResult r in retS)
             {
                 if (!r.IsSuccess)
                 {
                     isSuccess   = false;
                     message    += r.Message + "\n";
                     confirmType = 1;
                 }
                 if (r.ConfirmType == 0)
                 {
                     confirmType = 0;
                 }
             }
             retn.ConfirmType = confirmType;
             retn.Message     = message;
             retn.IsSuccess   = isSuccess;
             return(retn);
         }
         else
         {
             return(new BDCFilterResult {
                 IsSuccess = true
             });
         }
     }
     catch (Exception ex) {
         return(new BDCFilterResult {
             IsSuccess = false, ConfirmType = 0, Message = ex.Message
         });
     }
 }