use JingMenShi_CICI

SELECT * FROM imp_goods_bak

  

SELECT * FROM imp_member
where 次卡> 0



 
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)
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

  
 
UPDATE imp_member set card_type_name = 会员等级


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(),'' + card_type_name,card_type_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
group BY  card_type_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 = 姓名
UPDATE imp_member SET mobile = 电话
UPDATE imp_member SET mem_no =  会员号
UPDATE imp_member SET card_no = 会员号
UPDATE imp_member SET gender = CASE WHEN 性别 like '男' THEN 1 ELSE 0 END
UPDATE imp_member SET memo = ISNULL(备注,'')
UPDATE imp_member SET memo = '' WHERE memo IS NULL
UPDATE imp_member SET create_date = 开卡日期
UPDATE imp_member SET expire_date = dateadd(year,100,create_date)
UPDATE imp_member SET Balance = 余额
UPDATE imp_member SET point = 积分

UPDATE imp_member SET comp_id = 1

UPDATE A
SET A.card_type_id = B.FId
FROM imp_member AS A,TMemberCardType AS B
WHERE A.card_type_name = B.FName

UPDATE imp_member SET Birthday_Type = 'G'  
UPDATE imp_member SET Birthday_Type = 'G' where 生日 like '%公历%'
UPDATE imp_member SET Birthday_Type = 'L' where 生日 not like '%公历%' and 生日 != '-'
UPDATE imp_member SET Birthday = replace(生日,'（公历）','') where 生日 != '-'

 

     
 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,
       point AS FPoint,
       1 AS FRecvConsSMS,
       1 AS FRecvBulkSMS,
       memo 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 
        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,
        '' AS FMemo 
   FROM imp_member 
   
   

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  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 
 
 --疗程暂无

 SELECT * FROM imp_member_course

SELECT poolName FROM imp_member_course
GROUP BY poolName

select dbo.FNNewId() AS id,dbo.FNNewId() AS course_id, 'YH_' + poolName AS no, poolName AS name 
INTO imp_item
from imp_member_course
GROUP BY poolName
  

    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)

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.poolName = B.name
 
 
 UPDATE A
    SET A.mem_id = B.mem_id
   FROM imp_member_course AS A,imp_member AS B
  WHERE A.memberId = B.id
  
 UPDATE imp_member_course SET pur_Times = rechargedTimes ,remain_Times = remainedTimes
 
 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()
 
  
      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
   WHERE mem_id IS NOT NULL
   
   
   UPDATE A
   SET A.FCalcMode = 2
 FROM TMemberCourse AS A,TImpmemberCourse AS B
WHERE A.FId = B.FId
AND B.code !=  1

    
     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
    WHERE mem_id is not null
     
     

 
   select * from imp_member_trans_hist
  select * from imp_member_trans_hist_detail
 
 delete imp_member_trans_hist
 delete imp_member_trans_hist_detail



    ALTER TABLE Imp_Member_trans_Hist ADD comp_id BIGINT
    ALTER TABLE Imp_Member_trans_Hist ADD mem_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.会员号 = B.会员号

    select 会员号 from Imp_Member_trans_Hist
	group by 会员号
   
 
   
  SELECT * FROM Imp_Member_trans_Hist_detail
  order by 商品原价

  update Imp_Member_trans_Hist_detail set 商品数量= 0,商品原价= 0 where 商品名称= '抹零'

INSERT TMemberOldTransHist(FId,FMemId,FTime,FCardId,FCompId,FBillType,FBizType,FTransNo,FContent,FPrice,FQuantity,FAmount,FPayment,FEmployee,FMemo)
SELECT DBO.FNNewId(),A.mem_id,A.日期,0,A.comp_id,'DR','Import',a.流水号,b.商品名称,cast(b.商品原价 as float),b.商品数量,cast(b.实收金额 as float),'',isnull('',''),支付方式
FROM  Imp_Member_trans_Hist AS A ,Imp_Member_trans_Hist_detail as b
WHERE a.流水号= b.流水号


  
--产品
SELECT * FROM imp_goods
SELECT * FROM imp_goods_type

SELECT 分类 as name into imp_goods_type from imp_goods
group by 分类



ALTER TABLE imp_goods ADD id BIGINT
ALTER TABLE imp_goods ADD type_id BIGINT
ALTER TABLE imp_goods ADD unit_id BIGINT
ALTER TABLE imp_goods_type ADD id BIGINT
ALTER TABLE imp_goods Add sale_price decimal(18,6)
ALTER TABLE imp_goods Add cost_price decimal(18,6)


UPDATE imp_goods SET id = dbo.FNNewId()
UPDATE imp_goods_type SET id = dbo.FNNewId()
UPDATE imp_goods SET sale_price = 销售价
UPDATE imp_goods SET cost_price = 进货价


UPDATE A
   SET A.type_id = B.id 
  FROM imp_goods AS A,imp_goods_type as b
WHERE A.分类 = B.name

UPDATE A
   SET A.unit_id = b.FId
FROM imp_goods AS A,TBasicType AS B
WHERE A.主单位= b.fname



UPDATE A
   SET A.unit_id = b.FId
FROM imp_goods AS A,TBasicType AS B
WHERE A.主单位= '无'
and b.fname = '瓶'

select * from imp_goods where unit_id is null


UPDATE imp_goods SET type_id = 0 WHERE type_id IS NULL

INSERT TBasicType(FId,FKey,FNo,FName,FParentId,FDescription,FCustom,FOrder,FAllowEdit,FEnabled)
SELECT id,'GoodsType','' + name,name,0,'','',0,-1,1
FROM imp_goods_type

 alter table TGoods alter column fname nvarchar(50)
 alter table TGoods alter column FNo nvarchar(50)
 alter table TGoods alter column FNoOfPad nvarchar(50)

 UPDATE A
    SET A.FTypeId = B.type_id
FROM TGoods AS A,imp_goods AS B
WHERE A.FId = b.id


 INSERT INTO TGoods(FId,FNo,FName,FNoOfPad,FTypeId,FBriefCode,FUnitId,FSalePrice,FPurCostPrice,FSaleCostPrice,FConsCostPrice,FValuationMode,FBarCode,FEnabled,FSpecification,FPurUnitId,FConsUnitId,FSupplierId,FStoreId,FConsStoreId,FSaleStoreId,FMaxStock,FMinStock,FPeriodEnabled,FShelfLife,FDctId,FPointMode,FPointValue,FDeptId,FIsSale,FUnitLock,FDescription,FCustom1,FCustom2,FCustom3)
 SELECT id,条码,商品名称,条码,type_id,dbo.FNGetFirstPinYin(商品名称),
 unit_id,sale_price,FPurCostPrice = cost_price,FSaleCostPrice = 0,FConsCostPrice = 0,
 FValuationMode = 0,FBarCode =条码,FEnabled = 1,FSpecification = 货号,
 FPurUnitId = 0,FConsUnitId = 0,FSupplierId = 0,FStoreId = 0,FConsStoreId= 0,FSaleStoreId= 0,
 FMaxStock= 0,FMinStock= 0,FPeriodEnabled= 0,FShelfLife= 0,FDctId= 0,FPointMode= 0,FPointValue= 0,
 FDeptId= 0,1 as FIsSale,FUnitLock= 0,FDescription= '',FCustom1 = '',FCustom2 = '',FCustom3 = ''
 FROM imp_goods
  

 DELETE TGoodsMultiUnit WHERE FUnitType = 1

  INSERT INTO TGoodsMultiUnit(FId,FGoodsId,FUnitType,FUnitId,FSequence,FConvDir,FConvRate,FSalePrice,FPurCostPrice,FSaleCostPrice,FConsCostPrice,FBarCode,FUnitLock)
  SELECT dbo.FNNewId(),FId,1,FUnitId,1,1,1,FSalePrice,FPurCostPrice,FSaleCostPrice,FConsCostPrice,FBarCode,FUnitLock
   FROM TGoods 

   DELETE TGoodsMultiUnit
   

 
    INSERT TGoodsSub(FId,FCompId,FGoodsId)
    SELECT dbo.FNNewId(),C.FId,I.FId
      FROM TGoods AS I,TCompany AS C
     WHERE I.FId != 0
     AND C.FId != 0 
    -- AND C.FNo = '009'
     AND NOT EXISTS(SELECT TOP 1 1 FROM TGoodsSub AS B WHERE B.FCompId = C.FId AND B.FGoodsId = I.FId)
    
    -- AND C.FId = 1

 
    

	   INSERT TBasicTypeSub(FBasicTypeId,FCompId)
    SELECT A.FId,C.FId
    FROM TBasicType AS A,TCompany AS C
   WHERE A.FId > 0
   AND C.FId > 0
   --AND C.FNo = '009'
        AND NOT EXISTS(SELECT TOP 1 1 FROM TBasicTypeSub AS B WHERE B.FCompId = C.FId AND B.FBasicTypeId = A.FId)
    
 