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/迅航.sql

414 lines
13 KiB

SELECT * FROM imp_member
--»áÔ±
ALTER TABLE imp_member ADD mem_id BIGINT
ALTER TABLE imp_member ADD card_id BIGINT
ALTER TABLE imp_member ADD card_type_name VARCHAR(100)
ALTER TABLE imp_member ADD mem_no VARCHAR(50)
ALTER TABLE imp_member ADD card_No VARCHAR(50)
ALTER TABLE imp_member ADD name VARCHAR(50)
ALTER TABLE imp_member ADD gender INT
ALTER TABLE imp_member ADD mobile VARCHAR(50)
ALTER TABLE imp_member ADD birthday_type VARCHAR(50)
EXEC sp_rename 'imp_member.birthday','birthday_str'
ALTER TABLE imp_member ADD birthday DATETIME
ALTER TABLE imp_member ADD comp_id BIGINT
ALTER TABLE imp_member ADD card_type_id BIGINT
ALTER TABLE imp_member ADD memo VARCHAR(MAX)
ALTER TABLE imp_member ADD balance DECIMAL(18,6)
ALTER TABLE imp_member ADD balance2 DECIMAL(18,6)
ALTER TABLE imp_member ADD point DECIMAL(18,6)
ALTER TABLE imp_member ADD create_date datetime
ALTER TABLE imp_member ADD expire_date datetime
SELECT * FROM imp_company
ALTER TABLE imp_company ADD comp_id BIGINT
ALTER TABLE imp_company ADD comp_name NVARCHAR(100)
SELECT shopid,shopname INTO #company FROM imp_member
GROUP BY shopid,shopname
UPDATE A
SET A.comp_name = b.shopname
FROM imp_company AS a,#company AS b
WHERE a.shopId = b.shopid
update A
SET A.comp_id = B.FId
FROM imp_company AS A,TCompany AS B
WHERE A.comp_name = B.FName
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(),'' + member_level_name,member_level_name 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 isnull(member_level_name,'') != ''
group BY member_level_name
UPDATE imp_member SET card_id = dbo.FNNewId() WHERE card_id IS NULL
UPDATE imp_member SET mem_id = dbo.FNNewId() WHERE mem_id IS NULL
UPDATE imp_member SET name = username
UPDATE imp_member SET mobile = phone
UPDATE imp_member SET mem_no = card_number
UPDATE imp_member SET card_no = card_number
UPDATE imp_member SET gender = CASE WHEN sex = 1 THEN 1 ELSE 0 END
UPDATE imp_member SET memo = ISNULL(remark,'')
UPDATE imp_member SET memo = '' WHERE memo IS NULL
UPDATE imp_member SET Point = stay_score
UPDATE imp_member SET Balance = stay_money
UPDATE imp_member SET comp_id = 1
UPDATE imp_member SET create_date= createtime
UPDATE imp_member SET expire_date= dateadd(year,100,create_date)
UPDATE A
SET A.comp_id = B.comp_id
FROM imp_member AS A,imp_company AS B
WHERE A.shopname = b.comp_name
UPDATE A
SET A.card_type_id = B.FId
FROM imp_member AS A,TMemberCardType AS B
WHERE A.member_level_name = B.FName
UPDATE imp_member SET Birthday_Type = 'G'
UPDATE imp_member SET birthday = null
UPDATE imp_member SET birthday = birthday_str where birthday_str > '1753-01-01'
UPDATE imp_member SET birthday = '9999' + substring(birthday_str,5,6)
where birthday_str < '1753-01-01' and birthday_str > ''
SELECT mem_no,SUM(1)
FROM imp_member
GROUP BY mem_no
HAVING(SUM(1) > 1)
--´¦ÀíÖظ´¿¨ºÅ
DROP TABLE #Card
SELECT card_no into #Card
FROM imp_member
GROUP BY card_no
HAVING(SUM(1)) > 1
ALTER TABLE imp_member ADD seq INT IDENTITY
ALTER TABLE imp_member ADD idx INT
UPDATE A
SET A.idx = 1+(SELECT COUNT(1) FROM imp_member AS B WHERE A.card_no = B.card_no AND (A.create_date > B.create_date OR (A.create_date = B.create_date AND (A.seq > B.seq) )))
FROM imp_member AS A
UPDATE imp_member SET card_no = card_no + '_' + CAST(idx AS VARCHAR)
WHERE card_no IN( SELECT card_no FROM #Card)
UPDATE imp_member SET mem_no = card_no
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 mem_id AS FMemId,
mem_no AS FMemNo,
name AS FName,
dbo.FNGetFirstPinYin(name),
0 AS FTypeId,
comp_id AS FCompId,
create_date AS FCreateDate,
gender AS FGender,
birthday_type AS FBirthdayType,
birthday AS FBirthday,
'' AS FTelephone,
ISNULL(mobile,'') 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 TMemberArrear(FId,FMemId,FTime,FCompId,FContentType,FCardId,FBillType,FBizType,FTransId,FTransNo,FTransDetailId,FContentId,FArrear,FEmpId,FRepaid,FAcctArrear)
SELECT dbo.FNNewId(),A.FMemId,getdate(),A.FCompId,'Account',A.FCardId,'DR_KK','DR_CardSale',0,'',0,3,A.FArrear,0,0,A.FArrear
FROM imp_member AS A
WHERE A.FArrear > 0
UPDATE A
SET A.FBalance = B.FBalance - B.FArrear,
A.FArrear = B.FArrear
FROM TMemberCardAccount AS A,imp_member AS B
WHERE A.FCardId = B.FCardId
AND A.FAcctId = 3
AND B.FArrear > 0
UPDATE A
SET A.FBalance = B.FBalance - B.FArrear,
A.FInAmount = B.FBalance - B.FArrear,
A.FArrear = B.FArrear
FROM TMemberCardAcctHist AS A,imp_member AS B
WHERE A.FCardId = B.FCardId
AND A.FAcctId = 3
AND A.FBillType = 'DR'
AND B.FArrear > 0
SELECT * FROM TMemberCardAccount
WHERE 1=1
AND FArrear > 0
AND FCardId IN(SELECT FCardId FROM imp_member)
AND FCardId IN(SELECT FC)
ALTER TABLE imp_member ADD FArrear DECIMAL(18,6)
UPDATE imp_member SET FArrear = owedAmount
INSERT INTO TMemberCard(
FCardId,
FCardNo,
FTypeId,
FValueType,
FCompId,
FMemId,
FState,
FCreateDate,
FExpiredDate,
FTotalTimes,
FUsedTimes,
FSaleCompId,
FSaleBillId,
FMemo)
SELECT
card_id AS FId,
mem_no AS FNo,
card_type_id AS FTypeId,
(SELECT FValueType FROM TMemberCardType WHERE FId = card_type_id) AS FValueType,
comp_id AS FCompId,
mem_id AS FMemId,
1 AS FState,
create_date AS FCreateDate,
expire_date AS FExpiredDate,
0 AS FTotalTimes,
0 AS FUsedTimes,
comp_id AS FSaleCompId,
0 AS FSaleBillId,
memo AS FMemo
FROM imp_member
WHERE level_id = 0
select sum(fbalance) from tmembercardaccount
UPDATE TMemberCardAcctHist SET FAcctId = (select fid from tpayaccount where fno = 'XH')
INSERT TMemberCardAccount(FMemId,FId,FCardId,FAcctId,FDeposit,FBalance,FArrear,FCreateDate,FExpiredDate,FMemo)
SELECT mem_id,dbo.FNNewId(),card_id AS card_id,3,balance,balance,0,create_date,NULL AS FExpiredDate,''
FROM imp_member
INSERT TMemberCardAcctHist(FId,FMemId,FCardId,FAcctId,FTime,FCardTypeId,FCompId,FBillType,FBizType,FTransId,FTransNo,FInAmount,FOutAmount,FBalance,FArrear,FRecordTime,FMemo)
select dbo.FNNewId(),A.mem_id,A.card_id,3,getdate(),A.card_type_id,A.comp_id,'DR','Import',0,'',A.balance,0,A.balance,0,getdate(),'´ÓÀÏϵͳÖе¼Èë'
FROM imp_member AS A
INSERT TMemberCardAccount(FMemId,FId,FCardId,FAcctId,FDeposit,FBalance,FArrear,FCreateDate,FExpiredDate,FMemo)
SELECT mem_id,dbo.FNNewId(),card_id AS FCardId,10,balance2,balance2,0,create_date,NULL AS FExpiredDate,''
FROM imp_member
WHERE balance2 > 0
INSERT TMemberCardAcctHist(FId,FMemId,FCardId,FAcctId,FTime,FCardTypeId,FCompId,FBillType,FBizType,FTransId,FTransNo,FInAmount,FOutAmount,FBalance,FArrear,FRecordTime,FMemo)
select dbo.FNNewId(),A.mem_id,A.card_id,10,getdate(),A.card_type_id,A.comp_id,'DR','Import',0,'',A.balance2,0,A.balance2,0,getdate(),'´ÓÀÏϵͳÖе¼Èë'
FROM imp_member AS A
WHERE balance2 > 0
--ÁƳÌ
SELECT * FROM imp_member_course
SELECT card_name FROM imp_member_course
GROUP BY card_name
select dbo.FNNewId() AS id,dbo.FNNewId() AS course_id, '' + card_name AS no, card_name AS name
INTO imp_item
from imp_member_course
GROUP BY card_name
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 id,no,name,name,name,0,dbo.FNGetFirstPinYin(name),'''',1,1,1,'''','''','''',1,0,0,0,0,0,0,0,1
FROM imp_item
INSERT INTO TCourse(FId,FNo,FName,FBriefCode,FItemId,FPackId,FSequence,FTypeId,FTimes,FFreeTimes,FDurable,FValidityPeriodUnit,FValidityPeriod,FCreateDate,FExpiredDate,FDescription,FEnabled,FPrice,FAmount,FCalcMode)
SELECT course_id AS FId,
I.no + '',
I.name AS FName,
'' AS FBriefCode,
I.id 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 imp_item AS I
ALTER TABLE imp_member_course ADD mem_id BIGINT
ALTER TABLE imp_member_course ADD card_id BIGINT
ALTER TABLE imp_member_course ADD course_id BIGINT
ALTER TABLE imp_member_course ADD remain_Times DECIMAL(18,6)
ALTER TABLE imp_member_course ADD Used_Pur_Times DECIMAL(18,6)
ALTER TABLE imp_member_course ADD Pur_Amount DECIMAL(18,6)
ALTER TABLE imp_member_course ADD Comp_Id BIGINT
ALTER TABLE imp_member_course ADD Item_Id BIGINT
ALTER TABLE imp_member_course ADD Pur_Times DECIMAL(18,6)
ALTER TABLE imp_member_course ADD Adjust_Price DECIMAL(18,6)
ALTER TABLE imp_member_course ADD create_date datetime
ALTER TABLE imp_member_course ADD expire_date datetime
UPDATE A
SET A.item_id = B.Id,
A.Course_Id = B.Course_Id
FROM imp_member_course AS A,imp_item AS B
WHERE A.card_name = B.name
UPDATE A
SET A.mem_id = B.mem_id,
A.comp_id = b.comp_id,
a.create_date = b.create_date
FROM imp_member_course AS A,imp_member AS B
WHERE A.member_Id = B.id
UPDATE imp_member_course SET pur_Times = all_count ,remain_Times = surplus_count
UPDATE A
SET A.comp_id = b.comp_id
FROM imp_member_course AS a,imp_company AS B
WHERE a.shopid = b.shopid
UPDATE imp_member_course SET card_id = dbo.FNNewId()
UPDATE imp_member_course SET expire_date = expire_time
INSERT TMemberCourse(FId,FMemId,FCourseId,FMemPackId,FItemId,FCompId,FPurTimes,FPurAmount,FFreeTimes,FUsedPurTimes,FFreeAmount,FPurchaseDate,FExpiredDate,FBizType,FTransId,FArrear,FDurable,FMemo,FCalcMode,FAdjustPrice)
SELECT card_id,mem_id,course_id,0,item_id,comp_id,Pur_Times,ISNULL(Pur_Amount,0),0,Pur_Times - Remain_Times,0,Create_Date,Expire_Date,'DR.Import',0,0,0,'µ¼Èë',1,ISNULL(Adjust_Price,0)
FROM imp_member_course
--WHERE FCourseId IS NOT NULL
INSERT INTO TMemberCourseLog(FId,FMemId,FCardId,FPackId,FCourseId,FTime,FInPurTimes,FInFreeTimes,FOutPurTimes,FOutFreeTimes,
FCompId,
FBillType,FBizType,FBillId,FBillNo,FBillDetailId)
SELECT dbo.FNNewId(),Mem_Id,card_Id,0,Course_Id,FTime = getdate(),Pur_Times,Pur_Times - Remain_Times,0,0,
comp_id,
'DR','Import',0,'',0
FROM imp_member_course
INSERT TMemberPointHist(FId,FMemId,FTime,FCardId,FCompId,FBillType,FBizType,FTransId,FTransNo,FInAmount,FOutAmount,FBalance,FMemo,FRecordTime)
SELECT dbo.FNNewId(),A.mem_id,getdate(),0,1,'DR','Import',0,'',Point,0,Point,'',getdate()
FROM imp_member AS A WHERE Point != 0
ALTER TABLE Imp_Member_trans_Hist ADD mem_id BIGINT
ALTER TABLE Imp_Member_trans_Hist ADD comp_id BIGINT
UPDATE A
SET A.mem_id = B.mem_id,
A.comp_id = B.comp_id
FROM Imp_Member_trans_Hist AS A,imp_member AS B
WHERE A.member_Id = B.id
select * from Imp_Member_trans_Hist
INSERT TMemberOldTransHist(FId,FMemId,FTime,FCardId,FCompId,FBillType,FBizType,FTransNo,FContent,FPrice,FQuantity,FAmount,FPayment,FEmployee,FMemo)
SELECT DBO.FNNewId(),A.mem_id,A.createtime,0,A.comp_id,'DR','Import',order_number,order_name,give_score,1,give_score,pay_sort_name,isnull('',''),remark
FROM Imp_Member_trans_Hist AS A
WHERE ISNULL(mem_id,0) != 0
SELECT * FROM imp_member
WHERE level_id = 0 and cast(stay_money as float )> 0
select * from TMemberCardType