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

425 lines
14 KiB

SELECT * FROM TImpMember
WHERE FMemNO = '1001'
use huhehaote_tianmeiyuan
use BeiJing_QingZhu
SELECT * FROM TMemberCardType
UPDATE TMemberCardType SET FNo = REPLACE(FNo,'[项目','[A项目') WHERE FNo like '%[项目%'
UPDATE TMemberCardType SET FName = REPLACE(FName,'A项目','产品') WHERE FName like '%项目%'
UPDATE TMemberCardType SET FName = REPLACE(FName,'产品','项目') WHERE FName like '%产品%'
SELECT * FROM TMemberCardType
WHERE FName like '%项目%'
2000[7][7][10]
SELECT * FROM TImpMemberCourse
ALTER TABLE TImpMemberCourse ADD FCompName NVARCHAR(100)
UPDATE TImpMember SET FCompName = '西红门店' WHERE FCompName is null
UPDATE TImpMember SET FCompName = '青城店' WHERE FCompName is null
--会员
ALTER TABLE TImpMember ADD FMemId BIGINT
ALTER TABLE TImpMember ADD FCardId BIGINT
ALTER TABLE TImpMember ADD FCardTypeName VARCHAR(100)
ALTER TABLE TImpMember ADD FMemNo VARCHAR(50)
ALTER TABLE TImpMember ADD FCardNo VARCHAR(50)
ALTER TABLE TImpMember ADD FName VARCHAR(50)
ALTER TABLE TImpMember ADD FGender INT
ALTER TABLE TImpMember ADD FMobile VARCHAR(50)
ALTER TABLE TImpMember ADD FBirthdayType VARCHAR(50)
ALTER TABLE TImpMember ADD FBirthday DATETIME
ALTER TABLE TImpMember ADD FCompId BIGINT
ALTER TABLE TImpMember ADD FCardTypeId BIGINT
ALTER TABLE TImpMember ADD FMemo VARCHAR(MAX)
ALTER TABLE TImpMember ADD FBalance DECIMAL(18,6)
ALTER TABLE TImpMember ADD FBalance2 DECIMAL(18,6)
ALTER TABLE TImpMember ADD FPoint DECIMAL(18,6)
ALTER TABLE TImpMember ADD FCreateDate DATETIME
ALTER TABLE TImpMember ADD FExpiredDate DATETIME
UPDATE TImpMember SET FCardTypeName =
member_iclevel + '[项目' + cast(cast(replace(member_discountP,'%','') as float) /10 as varchar) + '折]'
+ '[产品' + cast(cast(replace(member_discountS,'%','') as float) /10 as varchar) + '折]'
+ '[次卡' + cast(cast(replace(member_discountC,'%','') as float) /10 as varchar) + '折]'
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(),FCardTypeName,FCardTypeName 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 TImpMember
group BY FCardTypeName
ORDER BY FCardTypeName
INSERT INTO TMemberCardTypeSub(FId,FCompId,FCardTypeId,FAllowSale,FAllowRchg,FEnabled)
SELECT dbo.FNNewId(),C.FId,I.FId,FAllowSale,FAllowRchg,FEnabled
FROM TMemberCardType AS I,TCompany AS C
WHERE I.FId > 1
AND NOT EXISTS(SELECT TOP 1 1 FROM TMemberCardTypeSub AS B WHERE B.FCompId = C.FId AND B.FCardTypeId = I.FId)
AND C.FId =1
UPDATE TImpMember SET FCardId = dbo.FNNewId() WHERE FCardId IS NULL
UPDATE TImpMember SET FMemId = dbo.FNNewId() WHERE FMemId IS NULL
UPDATE TImpMember SET FName = member_name
UPDATE TImpMember SET FMobile = member_hand
UPDATE TImpMember SET FMemNO = replace( substring(member_code,CHARINDEX('>',member_code) + 1,len(member_code)) ,'</a>','')
UPDATE TImpMember SET FCardNo = FMemNO
UPDATE A
SET A.FCompId = B.FId
FROM TImpMember AS A,TCompany AS B
WHERE A.FCompName = B.FAbbr
UPDATE TImpMember SET FGender = CASE WHEN member_sex = '' THEN 1 ELSE 0 END
UPDATE TImpMember SET FMemo = ISNULL(member_memo,'')
UPDATE TImpMember SET FPoint = member_score
UPDATE TImpMember SET FBalance = cast(replace(member_store,',','') as float)
UPDATE TImpMember SET FBalance2 = member_sbonus
UPDATE TImpMember SET FCreateDate = member_time1
UPDATE TImpMember SET FExpiredDate = dateadd(year,100,FCreateDate) where FExpiredDate IS NULL
UPDATE A
SET A.FCardTypeId = B.FId
FROM TImpMember AS A,TMemberCardType AS B
WHERE A.FCardTypeName = B.FName
UPDATE TImpMember SET FBirthdayType = 'G'
SELECT FMemNo,SUM(1)
FROM TImpMember
GROUP BY FMemNo
HAVING(SUM(1) > 1)
--处理重复卡号
DROP TABLE #Card
SELECT FCardNo into #Card
FROM TImpMember
GROUP BY FCardNo
HAVING(SUM(1)) > 1
update TImpMember SET FMemNO = 'A' + FMemNo,FCardNo = 'A' + FCardNo
WHERE FMemNO IN(SELECT FCardNo FROM #CARD)
AND FCompId = dbo.FNCompId('001')
update TImpMember SET FMemNO = 'D' + FMemNo,FCardNo = 'D' + FCardNo
WHERE FMemNO IN(SELECT FCardNo FROM #CARD)
AND FCompId = dbo.FNCompId('004')
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 TImpMember
/*
--欠款
--账户欠款
SELECT * FROM TImpMember WHERE FArrear > 0
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 TImpMember AS A
WHERE A.FArrear > 0
UPDATE A
SET A.FBalance = B.FBalance - B.FArrear,
A.FArrear = B.FArrear
FROM TMemberCardAccount AS A,TImpMember 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,TImpMember 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 TImpMember)
AND FCardId IN(SELECT FC)
ALTER TABLE TImpMember ADD FArrear DECIMAL(18,6)
UPDATE TImpMember SET FArrear = owedAmount
*/
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 TImpMember
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 TImpMember
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(),'从老系统中导入'
FROM TImpMember AS A
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 TImpMember
WHERE FBalance2 > 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,10,getdate(),A.FCardTypeId,A.FCompId,'DR','Import',0,'',A.FBalance2,0,A.FBalance2,0,getdate(),'从老系统中导入'
FROM TImpMember AS A
WHERE FBalance2 > 0
--疗程
SELECT * FROM TImpMemberCourse
DELETE TImpItem WHERE FNAME = '艾灸1小时'
select dbo.FNNewId() AS FId, goods_Name AS FNo, goods_Name AS FName
INTO TImpItem
from TImpMemberCourse
GROUP BY goods_Name
select dbo.FNNewId() AS FId, CAST(0 AS BIGINT) AS FItemId ,goods_father AS FNo, goods_father AS FName
INTO TImpCourse
from TImpMemberCourse
GROUP BY goods_father
SELECT goods_father,goods_Name
from TImpMemberCourse
group by goods_father,goods_Name
UPDATE A
SET A.FItemId= B.FId
FROM TImpCourse AS A,TImpItem AS B,TImpMemberCourse AS C
WHERE A.FName = C.goods_father
AND B.FName = C.goods_name
SELECT * FROM TImpCourse AS B ,TImpItem AS A
WHERE A.FId = B.FItemId
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 FId AS FId,
I.FNo ,
I.FName ,
'' AS FBriefCode,
I.FItemId 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 TImpCourse AS I
ALTER TABLE TImpMemberCourse ADD FMemId BIGINT
ALTER TABLE TImpMemberCourse ADD FId BIGINT
ALTER TABLE TImpMemberCourse ADD FCourseId BIGINT
ALTER TABLE TImpMemberCourse ADD FRemainTimes DECIMAL(18,6)
ALTER TABLE TImpMemberCourse ADD FUsedPurTimes DECIMAL(18,6)
ALTER TABLE TImpMemberCourse ADD FPurAmount DECIMAL(18,6)
ALTER TABLE TImpMemberCourse ADD FCompId BIGINT
ALTER TABLE TImpMemberCourse ADD FItemId BIGINT
ALTER TABLE TImpMemberCourse ADD FCreateDate DATETIME
ALTER TABLE TImpMemberCourse ADD FExpiredDate DATETIME
ALTER TABLE TImpMemberCourse ADD FPurTimes DECIMAL(18,6)
ALTER TABLE TImpMemberCourse ADD FAdjustPrice DECIMAL(18,6)
UPDATE A
SET A.FItemId = B.FItemId,
A.FCourseId = B.FId
FROM TImpMemberCourse AS A,TImpCourse AS B
WHERE A.goods_father = B.FName
UPDATE A
SET A.FMemId = B.FMemId
FROM TImpMemberCourse AS A,TImpMember AS B
WHERE A.member_code = replace( substring(B.member_code,CHARINDEX('>',B.member_code) + 1,len(B.member_code)) ,'</a>','')
AND A.FCompName = B.FCompName
SELECT * FROM TImpMemberCourse
WHERE FMemId IS NULL
UPDATE TImpMemberCourse SET FPurTimes = goods_number1 ,FRemainTimes = goods_number2
UPDATE TImpMemberCourse SET FPurAmount= replace(goods_moneys1,',','')
UPDATE TImpMemberCourse SET FAdjustPrice = FPurAmount / FPurTimes
UPDATE TImpMemberCourse SET FCreateDate = goods_bdate
UPDATE TImpMemberCourse SET FExpiredDate = NULL
UPDATE A
SET A.FCompId = B.FId
FROM TImpMemberCourse AS A,TCompany AS B
WHERE A.FCompName = B.FAbbr
UPDATE TImpMemberCourse SET FId = dbo.FNNewId(),FCompId = dbo.FNCompId('002')
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,'从老系统导入',1,ISNULL(FAdjustPrice,0)
FROM TImpMemberCourse
--WHERE FCourseId IS NOT NULL
WHERE FMemId 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(),FMemId,FId,0,FCourseId,FTime = getdate(),FPurTimes,FPurTimes - FRemainTimes,0,0,
FCompId,
'DR','Import',0,'',0
FROM TImpMemberCourse
WHERE FMemId IS NOT NULL
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 TImpMember AS A WHERE FPoint != 0
INSERT TMemberOldTransHist(FId,FMemId,FTime,FCardId,FCompId,FBillType,FBizType,FTransNo,FContent,FPrice,FQuantity,FAmount,FPayment,FEmployee,FMemo)
SELECT DBO.FNNewId(),A.FMemId,A.FCreateTime,0,A.FCompId,'DR','Import','','充值',rechargeOfMemberCash,1,rechargeOfMemberCash,'',isnull(employeenames,''),''
FROM TImpMemberRchgHist AS A
WHERE ISNULL(FMemId,0) != 0
UPDATE TMemberOldTransHist SET FCompId = dbo.FNCompId('001')