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/旺点.web.sql

328 lines
11 KiB

1 year ago
use HuiLi_YinXiang
SELECT * FROM imp_member
--<EFBFBD><EFBFBD>Ա
ALTER TABLE imp_member ADD FMemId BIGINT
ALTER TABLE imp_member ADD FCardId BIGINT
ALTER TABLE imp_member ADD FCardTypeName VARCHAR(100)
ALTER TABLE imp_member ADD FMemNo VARCHAR(50)
ALTER TABLE imp_member ADD FCardNo VARCHAR(50)
ALTER TABLE imp_member ADD FName VARCHAR(50)
ALTER TABLE imp_member ADD FGender INT
ALTER TABLE imp_member ADD FMobile VARCHAR(50)
ALTER TABLE imp_member ADD FBirthdayType VARCHAR(50)
ALTER TABLE imp_member ADD FBirthday DATETIME
ALTER TABLE imp_member ADD FCompId BIGINT
ALTER TABLE imp_member ADD FCardTypeId BIGINT
ALTER TABLE imp_member ADD FMemo VARCHAR(MAX)
ALTER TABLE imp_member ADD FBalance DECIMAL(18,6)
ALTER TABLE imp_member ADD FBalance2 DECIMAL(18,6)
ALTER TABLE imp_member ADD FPoint DECIMAL(18,6)
ALTER TABLE imp_member ADD FCreateDate DATETIME
ALTER TABLE imp_member ADD FExpiredDate DATETIME
ALTER TABLE imp_member ADD FCardState INT
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(),MemberCardCategoryName,MemberCardCategoryName 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 imp_member
WHERE ConsumeMode = 4
group BY MemberCardCategoryName
UPDATE imp_member SET FCardId = dbo.FNNewId() WHERE FCardId IS NULL
UPDATE imp_member SET FMemId = dbo.FNNewId() WHERE FMemId IS NULL
UPDATE imp_member SET FName = MemberName
UPDATE imp_member SET FMobile = MobilePhone
UPDATE imp_member SET FMemNO = cardCode
UPDATE imp_member SET FCardNo = cardCode
UPDATE imp_member SET FCompId = 1
UPDATE imp_member SET FGender = CASE WHEN sex = 1 THEN 1 ELSE 0 END
UPDATE imp_member SET FMemo = ISNULL(MemberRemark,'')
UPDATE imp_member SET FMemo = '' WHERE FMemo IS NULL
UPDATE imp_member SET FPoint = surplusScore
UPDATE imp_member SET FName = FMobile WHERE FName IS NULL
UPDATE imp_member SET FName = FMemNo WHERE FName IS NULL
UPDATE imp_member SET FBalance = balance
UPDATE imp_member SET FBalance2 = balanceCredit
SELECT status FROM imp_member WHERE status != 1
UPDATE imp_member SET FCardState = 1
UPDATE imp_member SET FCardState = 4 WHERE Status != 1
UPDATE imp_member SET FCreateDate = CreateTime
UPDATE imp_member SET FExpiredDate = LifeEnd where LifeEnd != ''
UPDATE imp_member SET FExpiredDate = dateadd(year,100,FCreateDate) where FExpiredDate IS NULL
UPDATE imp_member SET FBirthdayType = 'G'
UPDATE A
SET A.FCardTypeId = B.FId
FROM imp_member AS A,TMemberCardType AS B
WHERE A.memberCardCategoryName = B.FName
AND ConsumeMode = 4
select * from imp_member
SELECT FMemNo,SUM(1)
FROM imp_member
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 imp_member
GROUP BY FCardNo
HAVING(SUM(1)) > 1
ALTER TABLE imp_member ADD FSeq INT IDENTITY
ALTER TABLE imp_member ADD FIndex INT
UPDATE A
SET A.FIndex = 1+(SELECT COUNT(1) FROM imp_member AS B WHERE A.FCardNo = B.FCardNo AND (A.FCreateDate > B.FCreateDate OR (A.FCreateDate = B.FCreateDate AND (A.FSeq > B.FSeq) )))
FROM imp_member AS A
UPDATE imp_member SET FCardNo = FCardNo + '.' + CAST(FIndex AS VARCHAR)
WHERE FCardNo IN( SELECT FCardNo FROM #Card)
UPDATE imp_member 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 imp_member
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,
FCardState AS FState,
FCreateDate AS FCreateDate,
FExpiredDate AS FExpiredDate,
0 AS FTotalTimes,
0 AS FUsedTimes,
FCompId AS FSaleCompId,
0 AS FSaleBillId,
FMemo AS FMemo
FROM imp_member
WHERE ConsumeMode = 4
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 imp_member
WHERE ConsumeMode = 4
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 imp_member AS A
WHERE ConsumeMode = 4
INSERT TMemberCardAccount(FMemId,FId,FCardId,FAcctId,FDeposit,FBalance,FArrear,FCreateDate,FExpiredDate,FMemo)
SELECT FMemId,dbo.FNNewId(),FCardId AS FCardId,10,FBalance2,FBalance2,0,FCreateDate,NULL AS FExpiredDate,''
FROM imp_member
WHERE FBalance2 > 0
AND ConsumeMode = 4
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,10,getdate(),A.FCardTypeId,A.FCompId,'DR','Import',0,'',A.FBalance2,0,A.FBalance2,0,getdate(),'<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵͳ<EFBFBD>е<EFBFBD><EFBFBD><EFBFBD>'
FROM imp_member AS A
WHERE FBalance2 > 0
AND ConsumeMode = 4
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 imp_member AS A WHERE FPoint != 0
--
select dbo.FNNewId() AS FId,dbo.FNNewId() AS FCourseId, '' + MemberCardCategoryName AS FNo, MemberCardCategoryName AS FName ,
CASE WHEN ConsumeMode = 1 THEN 2 ELSE 1 END FCalcMode
INTO TImpItem
from imp_member
WHERE ConsumeMode != 4
GROUP BY MemberCardCategoryName,ConsumeMode
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,
FCalcMode AS FCalcMode
FROM TImpItem AS I
ALTER TABLE imp_member ADD FId BIGINT
ALTER TABLE imp_member ADD FCourseId BIGINT
ALTER TABLE imp_member ADD FRemainTimes DECIMAL(18,6)
ALTER TABLE imp_member ADD FUsedPurTimes DECIMAL(18,6)
ALTER TABLE imp_member ADD FPurAmount DECIMAL(18,6)
ALTER TABLE imp_member ADD FItemId BIGINT
ALTER TABLE imp_member ADD FPurTimes DECIMAL(18,6)
ALTER TABLE imp_member ADD FAdjustPrice DECIMAL(18,6)
UPDATE A
SET A.FItemId = B.FId,
A.FCourseId = B.FCourseId
FROM imp_member AS A,TImpItem AS B
WHERE A.MemberCardCategoryName = B.FName
UPDATE imp_member SET FPurTimes = surpluscount ,FRemainTimes = surpluscount
UPDATE imp_member SET FPurAmount =cast( surpluscountMoney as float)
INSERT TMemberCourse(FId,FMemId,FCourseId,FMemPackId,FItemId,FCompId,FPurTimes,FPurAmount,FFreeTimes,FUsedPurTimes,FFreeAmount,FPurchaseDate,FExpiredDate,FBizType,FTransId,FArrear,FDurable,FMemo,FCalcMode,FAdjustPrice)
SELECT FCardId,FMemId,FCourseId,0,FItemId,FCompId,FPurTimes,ISNULL(FPurAmount,0),0,FPurTimes - FRemainTimes,0,FCreateDate,FExpiredDate,'DR.Import',0,0,0,'',1,CASE WHEN ConsumeMode = 1 THEN 2 ELSE 1 END
FROM imp_member
--WHERE FCourseId IS NOT NULL
WHERE ConsumeMode != 4
INSERT INTO TMemberCourseLog(FId,FMemId,FCardId,FPackId,FCourseId,FTime,FInPurTimes,FInFreeTimes,FOutPurTimes,FOutFreeTimes,
FCompId,
FBillType,FBizType,FBillId,FBillNo,FBillDetailId)
SELECT dbo.FNNewId(),FMemId,FCardId,0,FCourseId,FTime = getdate(),FPurTimes,FPurTimes - FRemainTimes,0,0,
FCompId,
'DR','Import',0,'',0
FROM imp_member
WHERE ConsumeMode != 4
ALTER TABLE imp_member_trans_hist ADD FCompId BIGINT
ALTER TABLE imp_member_trans_hist ADD FMemId BIGINT
select * from imp_member_trans_hist
UPDATE A
SET A.FMemId = B.FMemId,
A.FCompId = B.FCompId
FROM imp_member_trans_hist AS A,imp_member AS B
WHERE A.memberId = B.memberid
INSERT TMemberOldTransHist(FId,FMemId,FTime,FCardId,FCompId,FBillType,FBizType,FTransNo,FContent,FPrice,FQuantity,FAmount,FPayment,FEmployee,FMemo)
SELECT DBO.FNNewId(),A.FMemId,A.SaleDate,0,A.FCompId,'DR','Import',SaleBillCode,SaleItemName,SaleItemMoney,1,SaleItemMoney,'',isnull(SaleMan,''),''
FROM imp_member_trans_hist AS A
WHERE ISNULL(FMemId,0) != 0