You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
sql-tools/Import/vipinfo_029shk_.sql

307 lines
9.7 KiB

1 year ago
use xian_shihuakou
SELECT * FROM VipInfo
--<EFBFBD><EFBFBD>Ա
ALTER TABLE VipInfo ADD FMemId BIGINT
ALTER TABLE VipInfo ADD FCardId BIGINT
ALTER TABLE VipInfo ADD FCardTypeName VARCHAR(100)
ALTER TABLE VipInfo ADD FMemNo VARCHAR(50)
ALTER TABLE VipInfo ADD FCardNo VARCHAR(50)
ALTER TABLE VipInfo ADD FName NVARCHAR(50)
ALTER TABLE VipInfo ADD FGender INT
ALTER TABLE VipInfo ADD FMobile VARCHAR(50)
ALTER TABLE VipInfo ADD FBirthdayType VARCHAR(50)
ALTER TABLE VipInfo ADD FBirthday DATETIME
ALTER TABLE VipInfo ADD FCompId BIGINT
ALTER TABLE VipInfo ADD FCardTypeId BIGINT
ALTER TABLE VipInfo ADD FMemo VARCHAR(MAX)
ALTER TABLE VipInfo ADD FBalance DECIMAL(18,6)
ALTER TABLE VipInfo ADD FBalance2 DECIMAL(18,6)
ALTER TABLE VipInfo ADD FPoint DECIMAL(18,6)
ALTER TABLE VipInfo ADD FCreateDate DATETIME
ALTER TABLE VipInfo ADD FExpiredDate DATETIME
ALTER TABLE VipInfo ADD FIsCourse BIT
ALTER TABLE VipInfo ADD FDeleted BIT
UPDATE VipInfo SET FIsCourse = 0
UPDATE VipInfo SET FIsCourse = 1 WHERE cardType = '<EFBFBD>ƴο<EFBFBD>'
UPDATE VipInfo SET FDeleted = 0
UPDATE VipInfo SET FDeleted = 1 WHERE IsLoss != '<EFBFBD><EFBFBD>'
INSERT INTO TMemberCardType(FId,FNo,FName,FValueType,FMaterial,FPrice,FCardFeeAmt,FAcctId,FDeposit,FAcctId2,FDeposit2,FAcctId3,FDeposit3,FTimes,FAlertBalance,FMinRchgAmt,FSalePointMode,FSalePointValue,FRchgPointMode,FRchgPointValue,FPaySmsFee,FTimeCard,FValidityPeriod,FValidityPeriodUnit,FExpiredDate,FDefaultMemo,FCreateTime,FAllowSale,FAllowRchg,FDeptId,FEnabled,FOrder)
SELECT FId =dbo.FNNewId(),cardName,cardName as name,1,FMaterial = 2,0,FCardFeeAmt = 0,FAcctId = 3,FDeposit = 0,FAcctId2 = 0,FDeposit2 = 0 ,FAcctId3 = 0,FDeposit3 = 0,
FTimes = 0,FAlertBalance = 0,FMinRchgAmt = 0,FSalePointMode = 0,FSalePointValue = 0 ,FRchgPointMode = 0,FRchgPointValue = 0,FPaySmsFee = 0,FTimeCard = 0,FValidityPeriod = 100,FValidityPeriodUnit = 1,
FExpiredDate = NULL,FDefaultMemo = '',FCreateTime = GETDATE(),1,1,FDeptId = 0,FEnabled =1,FOrder = 1
FROM VipInfo
group BY cardName
SELECT * FROM VipInfo WHERE IsLoss != '<EFBFBD><EFBFBD>'
UPDATE VipInfo SET FCardId = dbo.FNNewId() WHERE FCardId IS NULL
UPDATE VipInfo SET FMemId = dbo.FNNewId() WHERE FMemId IS NULL
UPDATE VipInfo SET FName = ISNULL(ISNULL(VipName,VipMobile),CardNum)
UPDATE VipInfo SET FMobile = ISNULL(VipMobile,'')
UPDATE VipInfo SET FMemNO = CardNum
UPDATE VipInfo SET FCardNo = CardNum
UPDATE VipInfo SET FCompId = dbo.FNCompId('002')
UPDATE VipInfo SET FGender = case when sex = '<EFBFBD><EFBFBD>' then 1 else 0 end
UPDATE VipInfo SET FMemo = ISNULL('','')
UPDATE VipInfo SET FPoint = JiFen
UPDATE VipInfo SET FBalance = xianjinmoney
--UPDATE VipInfo SET FBalance2 = balanceofBonus
UPDATE VipInfo SET FExpiredDate = dateadd(year,100,FCreateDate) where FExpiredDate IS NULL
UPDATE VipInfo SET FCreateDate = createtime
UPDATE VipInfo SET FExpiredDate = NULL
UPDATE VipInfo SET FMemo = ISNULL(VipNote,'')
SELECT * FROM VipInfo
UPDATE A
SET A.FCardTypeId = B.FId
FROM VipInfo AS A,TMemberCardType AS B
WHERE A.cardname = B.FName
SELECT * FROM VipInfo WHERE FExpiredDate IS NULL
UPDATE VipInfo SET FBirthdayType = 'G'
ALTER TABLE VipInfo ADD FBirthdayStr VARCHAR(100)
UPDATE VipInfo SET FBirthdayStr = ''
UPDATE VipInfo SET FBirthdayStr = birthdayYear + '-' + BirthdayMonth + '-' + BirthdayDay
WHERE birthdayYear != 0 AND BirthdayMonth != 0 AND BirthdayDay != 0
UPDATE VipInfo SET FBirthday = VipBirth
SELECT FMemNo,SUM(1)
FROM VipInfo
GROUP BY FMemNo
HAVING(SUM(1) > 1)
--<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ظ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
DROP TABLE #Card
SELECT FCardNo into #Card
FROM VipInfo
GROUP BY FCardNo
HAVING(SUM(1)) > 1
ALTER TABLE VipInfo ADD FSeq INT IDENTITY
ALTER TABLE VipInfo ADD FIndex INT
UPDATE A
SET A.FIndex = 1+(SELECT COUNT(1) FROM VipInfo AS B WHERE A.FCardNo = B.FCardNo AND (A.FCreateDate > B.FCreateDate OR (A.FCreateDate = B.FCreateDate AND (A.FSeq > B.FSeq) )))
FROM VipInfo AS A
UPDATE VipInfo SET FCardNo = FCardNo + '.' + CAST(FIndex AS VARCHAR)
WHERE FCardNo IN( SELECT FCardNo FROM #Card)
UPDATE VipInfo SET FMemNo = FCardNo
INSERT INTO TMember(
FMemId,
FMemNo,
FName,
FBriefCode,
FTypeId,
FCompId,
FCreateDate,
FGender,
FBirthdayType,
FBirthday,FTelephone,FMobilePhone,FQQ,FWeChat,FIdCard,FEmail,FAddress,FProId,FCPW,FQPW,
FChargeEmpId,FPoint,FRecvConsSMS,FRecvBulkSMS,FMemo,FCustom1,FCustom2,FCustom3,FCustom4,FCustom5)
SELECT FMemId AS FMemId,
FMemNo AS FMemNo,
FName AS FName,
dbo.FNGetFirstPinYin(FName),
0 AS FTypeId,
FCompId AS FCompId,
FCreateDate AS FCreateDate,
FGender AS FGender,
FBirthdayType AS FBirthdayType,
FBirthday AS FBirthday,
'' AS FTelephone,
ISNULL(FMobile,'') AS FMobilePhone,
'' AS FQQ,
'' AS FWeChat,
'' AS FIdCard,
'' AS FEmail,
'' AS FAddress,
0 AS FProId,
'' AS FCPW,
'' AS FQPW,
0 AS FChargeEmpId,
0 AS FPoint,
1 AS FRecvConsSMS,
1 AS FRecvBulkSMS,
'' AS FMemo,
'' AS FCustom1,'' AS FCustom2,'' AS FCustom3,'' AS FCustom4,'' AS FCustom5
from VipInfo
INSERT TMemberPointHist(FId,FMemId,FTime,FCardId,FCompId,FBillType,FBizType,FTransId,FTransNo,FInAmount,FOutAmount,FBalance,FMemo,FRecordTime)
SELECT dbo.FNNewId(),A.FMemId,getdate(),0,1,'DR','Import',0,'',FPoint,0,FPoint,'',getdate()
FROM VipInfo AS A WHERE FPoint != 0
SELECT * FROM VipInfo WHERE id = '14983583898781696'
INSERT INTO TMemberCard(
FCardId,
FCardNo,
FTypeId,
FValueType,
FCompId,
FMemId,
FState,
FCreateDate,
FExpiredDate,
FTotalTimes,
FUsedTimes,
FSaleCompId,
FSaleBillId,
FMemo)
SELECT
FCardId AS FId,
FMemNo AS FNo,
FCardTypeId AS FTypeId,
(SELECT FValueType FROM TMemberCardType WHERE FId = FCardTypeId) AS FValueType,
FCompId AS FCompId,
FMemId AS FMemId,
1 AS FState,
FCreateDate AS FCreateDate,
FExpiredDate AS FExpiredDate,
0 AS FTotalTimes,
0 AS FUsedTimes,
FCompId AS FSaleCompId,
0 AS FSaleBillId,
FMemo AS FMemo
FROM VipInfo
WHERE FIsCourse = 0
and FDeleted = 0
INSERT TMemberCardAccount(FMemId,FId,FCardId,FAcctId,FDeposit,FBalance,FArrear,FCreateDate,FExpiredDate,FMemo)
SELECT FMemId,dbo.FNNewId(),FCardId AS FCardId,3,FBalance,FBalance,0,FCreateDate,NULL AS FExpiredDate,''
FROM VipInfo
WHERE FIsCourse = 0
and FDeleted = 0
INSERT TMemberCardAcctHist(FId,FMemId,FCardId,FAcctId,FTime,FCardTypeId,FCompId,FBillType,FBizType,FTransId,FTransNo,FInAmount,FOutAmount,FBalance,FArrear,FRecordTime,FMemo)
select dbo.FNNewId(),A.FMemId,A.FCardId,3,getdate(),A.FCardTypeId,A.FCompId,'DR','Import',0,'',A.FBalance,0,A.FBalance,0,getdate(),'<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵͳ<EFBFBD>е<EFBFBD><EFBFBD><EFBFBD>'
FROM VipInfo AS A
WHERE FIsCourse = 0
and FDeleted = 0
select dbo.FNNewId() AS FId,dbo.FNNewId() AS FCourseId, '' + CardName AS FNo, CardName AS FName
INTO TImpItem
from VipInfo
WHERE FIsCourse = 1
GROUP BY CardName
INSERT TItem(FId,FNo,FNoOfPad,FName,FAbbr,FTypeId,FBriefCode,FDescription,FPriceMode,FIsService,FStatTimes,FCustom1,FCustom2,FCustom3,FEnabled,FPrice,FVipPrice,FTime,FDctId,FPointMode,FPointValue,FDeptId,FAllowBooking)
SELECT FId,FNo,FName,FName,FName,0,dbo.FNGetFirstPinYin(FName),'''',1,1,1,'''','''','''',1,0,0,0,0,0,0,0,1
FROM TImpItem
INSERT INTO TCourse(FId,FNo,FName,FBriefCode,FItemId,FPackId,FSequence,FTypeId,FTimes,FFreeTimes,FDurable,FValidityPeriodUnit,FValidityPeriod,FCreateDate,FExpiredDate,FDescription,FEnabled,FPrice,FAmount,FCalcMode)
SELECT FCourseId AS FId,
I.FNo + '',
I.FName + '-' + '' AS FName,
'' AS FBriefCode,
I.FId AS FItemId,
0 AS FPackId,
1 AS FSequence,
(SELECT TOP 1 FId FROM TBasicType WHERE FKey = 'CourseType') AS FTypeId,
1 AS FTimes,
0 AS FFreeTimes,
0 AS FDurable,
0 AS FValidityPeriodUnit,
0 AS FValidityPeriod,
getdate() AS FCreateDate,
NULL AS FExpiredDate,
'' AS FDescription,
1 AS FEnabled,
0 AS FPrice,
0 AS FAmount,
1 AS FCalcMode
FROM TImpItem AS I
ALTER TABLE VipInfo ADD FId BIGINT
ALTER TABLE VipInfo ADD FCourseId BIGINT
ALTER TABLE VipInfo ADD FRemainTimes DECIMAL(18,6)
ALTER TABLE VipInfo ADD FUsedPurTimes DECIMAL(18,6)
ALTER TABLE VipInfo ADD FPurAmount DECIMAL(18,6)
ALTER TABLE VipInfo ADD FItemId BIGINT
ALTER TABLE VipInfo ADD FPurTimes DECIMAL(18,6)
ALTER TABLE VipInfo ADD FAdjustPrice DECIMAL(18,6)
UPDATE A
SET A.FItemId = B.FId,
A.FCourseId = B.FCourseId
FROM VipInfo AS A,TImpItem AS B
WHERE A.CardName = B.FName
SELECT * FROM VipInfo WHERE VipNote != ''
UPDATE VipInfo SET FPurTimes = CardTimes ,FRemainTimes = CardTimes
UPDATE VipInfo SET FId = dbo.FNNewid()
INSERT TMemberCourse(FId,FMemId,FCourseId,FMemPackId,FItemId,FCompId,FPurTimes,FPurAmount,FFreeTimes,FUsedPurTimes,FFreeAmount,FPurchaseDate,FExpiredDate,FBizType,FTransId,FArrear,FDurable,FMemo,FCalcMode,FAdjustPrice)
SELECT FId,FMemId,FCourseId,0,FItemId,FCompId,FPurTimes,ISNULL(FPurAmount,0),0,FPurTimes - FRemainTimes,0,FCreateDate,FExpiredDate,'DR.Import',0,0,0,'<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵͳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>',1,ISNULL(FAdjustPrice,0)
FROM VipInfo
--WHERE FCourseId IS NOT NULL
WHERE FIsCourse = 1
AND FDeleted = 0
INSERT INTO TMemberCourseLog(FId,FMemId,FCardId,FPackId,FCourseId,FTime,FInPurTimes,FInFreeTimes,FOutPurTimes,FOutFreeTimes,
FCompId,
FBillType,FBizType,FBillId,FBillNo,FBillDetailId)
SELECT dbo.FNNewId(),FMemId,FId,0,FCourseId,FTime = getdate(),FPurTimes,FPurTimes - FRemainTimes,0,0,
FCompId,
'DR','Import',0,'',0
FROM VipInfo WHERE FIsCourse = 1
AND FDeleted = 0