Example #1
0
        public JsonResult InsertOrUpdate(Members input)
        {
            ResultDto <int> result = new ResultDto <int>();

            try
            {
                using (MembersService Member = new MembersService())
                {
                    if (input.Id == 0)
                    {
                        input.CreationTime = DateTime.Now;
                    }
                    else
                    {
                        input.UpdateTime = DateTime.Now;
                    }
                    MembersService ObjRead = new MembersService();
                    var            obj     = ObjRead.Reposity.GetAllList(o => o.UserID == input.UserID && o.Id != input.Id && o.UserID != "00" && o.UserID != "").FirstOrDefault();
                    if (obj != null)
                    {
                        result.code    = 500;
                        result.message = "身份证号已存在";
                    }
                    else
                    {
                        input.TenantId = TenantId;

                        BirthdayAgeSex user = AppBase.GetBirthdayAgeSex(input.UserID);
                        if (user != null)
                        {
                            input.Age      = user.Age;
                            input.Birthday = user.Birthday;
                            input.Sex      = user.Sex;
                        }

                        Member.Reposity.InsertOrUpdate(input);
                        result.code    = 100;
                        result.datas   = input.Id;
                        result.message = "ok";
                    }
                    ObjRead.Dispose();
                }
            }
            catch (Exception ex)
            {
                result.code    = 500;
                result.message = ex.Message;
            }
            return(Json(result));
        }
Example #2
0
        public static BirthdayAgeSex GetBirthdayAgeSex(string identityCard)
        {
            if (string.IsNullOrEmpty(identityCard))
            {
                return(null);
            }
            else
            {
                if (identityCard.Length != 15 && identityCard.Length != 18)//身份证号码只能为15位或18位其它不合法
                {
                    return(null);
                }
            }

            BirthdayAgeSex entity = new BirthdayAgeSex();
            string         strSex = string.Empty;

            if (identityCard.Length == 18)//处理18位的身份证号码从号码中得到生日和性别代码
            {
                entity.Birthday = identityCard.Substring(6, 4) + "-" + identityCard.Substring(10, 2) + "-" + identityCard.Substring(12, 2);
                strSex          = identityCard.Substring(14, 3);
            }
            if (identityCard.Length == 15)
            {
                entity.Birthday = "19" + identityCard.Substring(6, 2) + "-" + identityCard.Substring(8, 2) + "-" + identityCard.Substring(10, 2);
                strSex          = identityCard.Substring(12, 3);
            }

            entity.Age = CalculateAge(entity.Birthday); //根据生日计算年龄
            if (int.Parse(strSex) % 2 == 0)             //性别代码为偶数是女性奇数为男性
            {
                entity.Sex = "女";
            }
            else
            {
                entity.Sex = "男";
            }
            return(entity);
        }
Example #3
0
        public JsonResult ImportExcel(HttpPostedFileBase file)
        {
            ResultDto <string> result = new ResultDto <string>();

            try
            {
                if (file == null)
                {
                    result.code    = 101;
                    result.message = "请选择上传的Excel文件";
                }
                else
                {
                    Stream       inputStream  = file.InputStream;
                    HSSFWorkbook hssfworkbook = new HSSFWorkbook(inputStream);
                    ISheet       sheet        = hssfworkbook.GetSheetAt(0);
                    IRow         headerRow    = sheet.GetRow(0);
                    int          cellCount    = headerRow.LastCellNum;
                    int          rowCount     = sheet.LastRowNum;
                    string[]     CellArr      = ("姓名|关系|性别|民族|年龄|楼盘|单元|门牌号|身份证号|现户籍地址|原户籍地址|是否兴塘社区户籍|服务处所|职务|联系电话1|联系电话2|政治面貌|党员所在支部|是否楼道组长|是否户代表|是否居民代表|是否居民组长|是否愿意参加公益|是否愿意从事居民事务|调查时间|特长备注").Split('|');
                    bool         isValid      = true;
                    foreach (string item in CellArr)
                    {
                        ICell cell = headerRow.Cells.Where(o => o.StringCellValue == item).FirstOrDefault();
                        if (cell == null)
                        {
                            result.code    = 500;
                            result.message = "导入出错,缺少必要字段 “" + item + "”!";
                            isValid        = false;
                            break;
                        }
                    }
                    if (isValid)
                    {
                        MembersService ObjServ     = new MembersService();
                        MembersService ObjServRead = new MembersService();
                        TenantsService ObjTenant   = new TenantsService();
                        string         community   = "";
                        var            tent        = ObjTenant.Reposity.Get(TenantId);
                        if (tent != null)
                        {
                            community = tent.TenantName;
                        }
                        string msgs = "";
                        int    nums = 0;
                        for (int i = (sheet.FirstRowNum + 1); i <= rowCount; i++)
                        {
                            IRow row = sheet.GetRow(i);
                            if (row != null)
                            {
                                string userid = CellVal(headerRow, "身份证号", row);
                                try
                                {
                                    var obj = ObjServRead.Reposity.GetAllList(o => o.UserID == userid && o.UserID != "0" && o.HhdRegister).FirstOrDefault();
                                    if (obj != null)
                                    {
                                        obj.TrueName  = CellVal(headerRow, "姓名", row);
                                        obj.Relations = CellVal(headerRow, "关系", row);
                                        obj.Sex       = CellVal(headerRow, "性别", row);
                                        obj.Nation    = CellVal(headerRow, "民族", row);
                                        //obj.Birthday = CellVal(headerRow, "出生年月", row);
                                        obj.Age                    = int.Parse(CellVal(headerRow, "年龄", row));
                                        obj.Apartment              = CellVal(headerRow, "楼盘", row);
                                        obj.UnitNum                = CellVal(headerRow, "单元", row);
                                        obj.DoorCard               = CellVal(headerRow, "门牌号", row);
                                        obj.UserID                 = CellVal(headerRow, "身份证号", row);
                                        obj.Address                = CellVal(headerRow, "现户籍地址", row);
                                        obj.Address2               = CellVal(headerRow, "原户籍地址", row);
                                        obj.HhdRegister            = CellVal(headerRow, "是否兴塘社区户籍", row) == "是";
                                        obj.ServiceAddr            = CellVal(headerRow, "服务处所", row);
                                        obj.Duties                 = CellVal(headerRow, "职务", row);
                                        obj.Phone                  = CellVal(headerRow, "联系电话1", row);
                                        obj.Phone2                 = CellVal(headerRow, "联系电话2", row);
                                        obj.PoliticalRole          = CellVal(headerRow, "政治面貌", row);
                                        obj.PartyBranch            = CellVal(headerRow, "党员所在支部", row);
                                        obj.CorridorLeader         = CellVal(headerRow, "是否楼道组长", row) == "是";
                                        obj.HouseLeader            = CellVal(headerRow, "是否户代表", row) == "是";
                                        obj.ResidentRepresentative = CellVal(headerRow, "是否居民代表", row) == "是";
                                        obj.ResidentLeader         = CellVal(headerRow, "是否居民组长", row) == "是";
                                        obj.Pipwa                  = CellVal(headerRow, "是否愿意参加公益", row) == "是";
                                        obj.Eira                   = CellVal(headerRow, "是否愿意从事居民事务", row) == "是";
                                        obj.UpdateTime             = DateTime.Now;
                                        obj.Speciality             = CellVal(headerRow, "特长备注", row);
                                        obj.TenantId               = TenantId;
                                        obj.Community              = community;
                                        obj.IsReger                = false;
                                        ObjServ.Reposity.Update(obj);
                                    }
                                    else
                                    {
                                        Members entity = new Members();
                                        entity.TrueName  = CellVal(headerRow, "姓名", row);
                                        entity.Relations = CellVal(headerRow, "关系", row);
                                        entity.Sex       = CellVal(headerRow, "性别", row);
                                        entity.Nation    = CellVal(headerRow, "民族", row);
                                        //entity.Birthday = CellVal(headerRow, "出生年月", row);
                                        //entity.Age = int.Parse(CellVal(headerRow, "年龄", row));
                                        entity.Apartment              = CellVal(headerRow, "楼盘", row);
                                        entity.UnitNum                = CellVal(headerRow, "单元", row);
                                        entity.DoorCard               = CellVal(headerRow, "门牌号", row);
                                        entity.UserID                 = CellVal(headerRow, "身份证号", row);
                                        entity.Address                = CellVal(headerRow, "现户籍地址", row);
                                        entity.Address2               = CellVal(headerRow, "原户籍地址", row);
                                        entity.HhdRegister            = CellVal(headerRow, "是否兴塘社区户籍", row) == "是";
                                        entity.ServiceAddr            = CellVal(headerRow, "服务处所", row);
                                        entity.Duties                 = CellVal(headerRow, "职务", row);
                                        entity.Phone                  = CellVal(headerRow, "联系电话1", row);
                                        entity.Phone2                 = CellVal(headerRow, "联系电话2", row);
                                        entity.PoliticalRole          = CellVal(headerRow, "政治面貌", row);
                                        entity.PartyBranch            = CellVal(headerRow, "党员所在支部", row);
                                        entity.CorridorLeader         = CellVal(headerRow, "是否楼道组长", row) == "是";
                                        entity.HouseLeader            = CellVal(headerRow, "是否户代表", row) == "是";
                                        entity.ResidentRepresentative = CellVal(headerRow, "是否居民代表", row) == "是";
                                        entity.ResidentLeader         = CellVal(headerRow, "是否居民组长", row) == "是";
                                        entity.Pipwa                  = CellVal(headerRow, "是否愿意参加公益", row) == "是";
                                        entity.Eira         = CellVal(headerRow, "是否愿意从事居民事务", row) == "是";
                                        entity.UpdateTime   = DateTime.Now;
                                        entity.Speciality   = CellVal(headerRow, "特长备注", row);
                                        entity.UserName     = GetRndCode(6);
                                        entity.Password     = "******";
                                        entity.Email        = "-";
                                        entity.CreationTime = DateTime.Now;
                                        entity.TenantId     = TenantId;
                                        entity.Community    = community;
                                        entity.IsReger      = false;
                                        BirthdayAgeSex user = AppBase.GetBirthdayAgeSex(entity.UserID);
                                        if (user != null)
                                        {
                                            entity.Age      = user.Age;
                                            entity.Birthday = user.Birthday;
                                            entity.Sex      = user.Sex;
                                        }
                                        else
                                        {
                                            entity.UserID = "身份证号码不合法";
                                        }
                                        ObjServ.Reposity.Insert(entity);
                                    }
                                    nums++;
                                }
                                catch (Exception ex)
                                {
                                    msgs += userid + "错误:" + ex.Message + ","; continue;
                                }
                            }
                        }
                        result.code    = 100;
                        result.message = "上传成功" + nums + "条。发生错误条目:" + msgs;
                        ObjServ.Dispose();
                        ObjServRead.Dispose();
                        ObjTenant.Dispose();
                    }
                }
            }
            catch (Exception ex)
            {
                result.code    = 101;
                result.message = "导入失败,错误原因:" + ex.Message;
            }
            return(Json(result));
        }