Kaynağa Gözat

迁移数据资料调整

leiy 10 ay önce
ebeveyn
işleme
2d362ea783

+ 141 - 1
OASystem/OASystem.Api/Controllers/GroupsController.cs

@@ -10120,11 +10120,146 @@ namespace OASystem.API.Controllers
                 _sqlSugar.ChangeDatabase(DBEnum.OA2014DB);
                 //var groupClinetData1
 
+                string sql = string.Format($"Select  * From  DeleClient Where Isdel = 0");
+                var oldOAClientList = await _sqlSugar.SqlQueryable<OA2021_DeleClient>(sql).Where(it => it.Isdel == 0).ToListAsync();
 
 
+                int updateCount = 0;
+
+                if (oldOAClientList.Count > 0 )
+                {
+
+                    _sqlSugar.ChangeDatabase(DBEnum.OA2023DB);
+
+                    _sqlSugar.BeginTran();
+
+                    var clientComInfos = _sqlSugar.Queryable<Crm_CustomerCompany>().Where(it => it.IsDel == 0).ToList();
+                    var clientInfos = _sqlSugar.Queryable<Crm_DeleClient>().Where(it => it.IsDel == 0).ToList();
+
+                    foreach (var item in oldOAClientList)
+                    {
+
+                        int comId = 0;
+
+                        string format = "yyyy-MM-dd HH:mm:ss";
+
+                        string data11 = "1990-01-01 00:00";
+                        var data1 = IsValidDate(item.OPdate, format);
+                        if (data1) data11 = item.OPdate;
+
+
+                        //客户公司验证
+                        if (!string.IsNullOrEmpty(item.Company))
+                        {
+                            var clientComInfo = clientComInfos.Where(it => it.CompanyFullName.Equals(item.Company)).FirstOrDefault();
+
+
+                           
+
+                            if (clientComInfo == null) // add
+                            {
+                                var addInfo = new Crm_CustomerCompany()
+                                {
+                                    CompanyAbbreviation = "",
+                                    CompanyFullName = item.Company,
+                                    Address = "",
+                                    PostCodes = "",
+                                    LastedOpUserId = item.OPer,
+                                    LastedOpDt = Convert.ToDateTime(data11),
+                                    CreateUserId = item.OPer,
+                                    CreateTime = Convert.ToDateTime(data11),
+                                    IsDel = 0
+                                };
+
+                                var comId1 = _sqlSugar.Insertable<Crm_CustomerCompany>(addInfo).ExecuteReturnIdentity();
+                                if (comId1 > 0) comId = comId1;
+                            }
+                            else comId = clientComInfo.Id;
+                        }
+
+                        //客户人员验证
+                        int clientId = 0;
+                        string name = item.LastName + item.Name;
+                        if (!string.IsNullOrEmpty(name))
+                        {
+                            var clientInfo = clientInfos.Where(it => (it.LastName + it.FirstName).Equals(name)).FirstOrDefault();
+                            if (clientInfo == null)
+                            {
+
+
+                                string format1 = "yyyy-MM-dd";
+
+                                string data111 = "1990-01-01";
+
+                                var data11_1 = IsValidDate(item.Birthday, format1);
+                                if (data11_1) data111 = item.OPdate;
+
+                                var addInfo1 = new Crm_DeleClient()
+                                {
+                                    CrmCompanyId = comId,
+                                    DiId = -1,
+                                    LastName = item.LastName,
+                                    FirstName = item.Name,
+                                    OldName = "",
+                                    Pinyin = item.Pinyin,
+                                    Sex = item.Sex == "男" ? 0 : item.Sex == "女" ? 1 : -1,
+                                    Marriage = 0,
+                                    Phone = item.Phone,
+                                    Job = item.Job,
+                                    BirthDay = Convert.ToDateTime(data111).ToString("yyyy-MM-dd"),
+
+
+                                };
+
+                                var clientId1 = _sqlSugar.Insertable<Crm_DeleClient>(addInfo1).ExecuteReturnIdentity();
+                                if (clientId1 > 0) clientId = clientId1;
+                            }
+                            else clientId = clientInfo.Id;
+                        }
+
+
+                        if (clientId < 1)
+                        {
+                            continue;
+                        }
+
+                        int airType= 0;
+
+                        if (item.AirType == "超经舱") airType = 459;
+                        else if (item.AirType == "公务舱") airType = 458;
+                        else if (item.AirType == "经济舱") airType = 460;
+                        else if (item.AirType == "其他") airType = 565;
+                        else if (item.AirType == "头等舱") airType = 457;
+
+                        var _TourClientListEntity = new Grp_TourClientList()
+                        {
+                            DiId = item.Diid,
+                            ClientId = clientId,
+                            CreateUserId = item.OPer,
+                            CreateTime = Convert.ToDateTime(data11),
+                            Remark = item.Remark,
+                            IsDel = item.Isdel,
+                            ShippingSpaceTypeId = airType,
+                            ShippingSpaceSpecialNeeds = item.AirRemark,
+                            HotelSpecialNeeds = item.RoomType
+                        };
+
+                        var _TourClientList = _sqlSugar.Insertable<Grp_TourClientList>(_TourClientListEntity).ExecuteCommand();
+
+                        if (_TourClientList > 0)
+                        {
+                            updateCount++;
+                        }
+                    }
+
+                    _sqlSugar.CommitTran();
+                }
+
+                return Ok(JsonView(true, $"更新条数:{updateCount}条"));
             }
             catch (Exception ex)
             {
+                _sqlSugar.RollbackTran();
 
                 return Ok(JsonView(false, ex.Message));
             }
@@ -10133,7 +10268,12 @@ namespace OASystem.API.Controllers
 
         }
 
-
+        private  bool IsValidDate(string dateString, string format)
+        {
+            DateTime dateValue;
+            bool valid = DateTime.TryParseExact(dateString, format, CultureInfo.InvariantCulture, DateTimeStyles.None, out dateValue);
+            return valid;
+        }
 
 
         /// <summary>

+ 1 - 1
OASystem/OASystem.Domain/Entities/Customer/Crm_DeleClient.cs

@@ -131,7 +131,7 @@ namespace OASystem.Domain.Entities.Customer
         /// <summary>
         /// 职位
         /// </summary>
-        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(50)")]
+        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(200)")]
         public string Job { get; set; }
         /// <summary>
         /// 本人工作内容

+ 1 - 1
OASystem/OASystem.Domain/Entities/Groups/Grp_TourClientList.cs

@@ -45,7 +45,7 @@ namespace OASystem.Domain.Entities.Groups
         public string? HotelSpecialNeeds { get; set; }
 
         /// <summary>
-        /// 酒店特殊需求
+        /// 餐食特殊需求
         /// </summary>
         [SugarColumn(IsNullable = true, ColumnDataType = "varchar(500)")]
         public string? MealSpecialNeeds { get; set; }

+ 127 - 0
OASystem/OASystem.Domain/ViewModels/Groups/OA2021_DeleClient.cs

@@ -0,0 +1,127 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace OASystem.Domain.ViewModels.Groups
+{
+    /// <summary>
+    /// 老OA接团客户名单
+    /// </summary>
+    public class OA2021_DeleClient
+    {
+        /// <summary>
+        ///  标识
+        /// </summary>
+        public int Id { get; set; }
+
+        /// <summary>
+        ///  团号
+        /// </summary>
+        public int Diid { get; set; }
+
+        /// <summary>
+        ///  名
+        /// </summary>
+        public string Name { get; set; }
+        /// <summary>
+        ///  姓
+        /// </summary>
+        public string LastName { get; set; }
+        /// <summary>
+        ///  拼音姓名
+        /// </summary>
+        public string Pinyin { get; set; }
+        /// <summary>
+        ///  单位
+        /// </summary>
+        public string Company { get; set; }
+        /// <summary>
+        /// 组团单位
+        /// </summary>
+        public string GroupUnit { get; set; }
+        /// <summary>
+        ///  职务
+        /// </summary>
+        public string Job { get; set; }
+
+        /// <summary>
+        ///  手机电话
+        /// </summary>
+        public string Phone { get; set; }
+
+        /// <summary>
+        ///  性别
+        /// </summary>
+        public string Sex { get; set; }
+        /// <summary>
+        ///  身份证
+        /// </summary>
+        public string IDcard { get; set; }
+        /// <summary>
+        ///  护照类型
+        /// </summary>
+        public string PassprotType { get; set; }
+
+        /// <summary>
+        /// 签发国家码
+        /// </summary>
+        public string passportCountry { get; set; }
+        /// <summary>
+        ///  护照编号
+        /// </summary>
+        public string PassportNo { get; set; }
+        /// <summary>
+        ///  护照签发地
+        /// </summary>
+        public string IssuePlace { get; set; }
+        /// <summary>
+        ///  护照签发日期
+        /// </summary>
+        public string IssueDate { get; set; }
+
+        /// <summary>
+        ///  护照有效期
+        /// </summary>
+        public string ExpiryDate { get; set; }
+        /// <summary>
+        ///  生日
+        /// </summary>
+        public string Birthday { get; set; }
+
+        /// <summary>
+        ///  舱位类型
+        /// </summary>
+        public string AirType { get; set; }
+        /// <summary>
+        ///  舱位备注
+        /// </summary>
+        public string AirRemark { get; set; }
+        /// <summary>
+        ///  房型
+        /// </summary>
+        public string RoomType { get; set; }
+
+        /// <summary>
+        ///  备注
+        /// </summary>
+        public string Remark { get; set; }
+
+        /// <summary>
+        ///  记录人
+        /// </summary>
+        public int OPer { get; set; }
+
+        /// <summary>
+        ///  记录时间
+        /// </summary>
+        public string OPdate { get; set; }
+
+        /// <summary>
+        ///  删除标识
+        /// </summary>
+        public int Isdel { get; set; }
+
+    }
+}

+ 1 - 1
OASystem/OASystem.Domain/ViewModels/Groups/OA2021_DelegationInfo.cs

@@ -392,7 +392,7 @@ namespace OASystem.Domain.ViewModels.Groups
     /// <summary>
     /// OA2021团组客户信息类
     /// </summary>
-    public class OA2021_DeleClient
+    public class OA2021_DeleClient1
     {
         /// <summary>
         ///  标识

+ 1 - 0
OASystem/OASystem.Domain/ViewModels/Groups/VisaInfoView.cs

@@ -29,6 +29,7 @@ namespace OASystem.Domain.ViewModels.Groups
         public decimal VisaPrice { get; set; }
         /// <summary>
         /// 总经理是否审核
+        /// 0 未审核 1已通过 2未通过
         /// </summary>
         public int IsAuditGM { get; set; }
         /// <summary>

+ 1 - 1
OASystem/OASystem.Infrastructure/Repositories/Groups/DelegationVisaRepository.cs

@@ -183,7 +183,7 @@ Group by PicType Order By PicType ", pro.ProgressViewId);
         {
             ChangeDataBase(DBEnum.OA2014DB);
             string sqlDeleClient = String.Format(@" Select * From DeleClient With(Nolock) Where diid = {0} ", diid);
-            List<OA2021_DeleClient> listDeleClient = _sqlSugar.SqlQueryable<OA2021_DeleClient>(sqlDeleClient).ToList();
+            List<OA2021_DeleClient1> listDeleClient = _sqlSugar.SqlQueryable<OA2021_DeleClient1>(sqlDeleClient).ToList();
             ChangeDataBase(DBEnum.OA2023DB);
 
             List<Grp_VisaProgressCustomer> listVisaCustomer = new List<Grp_VisaProgressCustomer>();

+ 3 - 0
OASystem/OASystem.Infrastructure/Repositories/Groups/TourClientListRepository.cs

@@ -303,6 +303,8 @@ namespace OASystem.Infrastructure.Repositories.Groups
                     }
                 }
 
+
+                _DeleClient.CrmCompanyId = crmCompanyId;
                 //客户人员 操作
                 //2.添加 or 修改 客户基本信息
                 if (clientInfo != null)  //该客户存在 修改信息 
@@ -314,6 +316,7 @@ namespace OASystem.Infrastructure.Repositories.Groups
                                                                                      it.LastName,
                                                                                      it.FirstName,
                                                                                      it.Pinyin,
+                                                                                     it.Job,
                                                                                      it.Sex,
                                                                                      it.Phone,
                                                                                      it.BirthDay