当前位置: 首页 > news >正文

思迅商云8会员积分全部清0

请您备份数据库后执行以下语句:
declare @card_id   varchar(20),
        @acc_num   numeric(16,4),
        @dec_num   numeric(16,4),
        @minus_num numeric(16,4),
        @branch_no varchar(4),
        @count     int
select @branch_no=sys_var_value from t_sys_system where sys_var_id='g_branch_no'
--定义游标
declare temp_dec_vip cursor for
        select card_id,acc_num,dec_num 
        from t_rm_vip_info 
        where acc_num-dec_num<>0  --剩余积分不为
        and card_type in (select type_id from t_rm_vip_type where acc_flag='0') ;--and card_id='在此输入会员档案的会员号';
        
open temp_dec_vip;
fetch temp_dec_vip into @card_id,@acc_num,@dec_num;
while @@fetch_status=0
begin
   select @minus_num = @acc_num - @dec_num
   if @minus_num>0   --积分为正数,写入积分冲减记录
   begin
  --写积分冲减流水
  insert into t_rm_vip_good_flow(vgf_branch_no, vgf_vip_no, vgf_flag, vgf_item_no, vgf_item_num, vgf_vip_num, vgf_oper, vgf_date, memo)  
  values (@branch_no , @card_id, '1', '', 0, @minus_num, '1001', getdate(), '积分清零-冲减积分' ) 
  --更新会员档案已冲减积分
   update t_rm_vip_info set dec_num=dec_num + @minus_num where card_id=@card_id
        --更新积分明细已冲减积分
   select @count = 0
   select @count=count(*) from t_rm_vip_consume where card_id = @card_id and branch_no = @branch_no
   
   If @count > 0 
   Update t_rm_vip_consume Set vip_minus_total = isnull(vip_minus_total,0) +@minus_num,com_flag = '0'
   Where card_id = @card_id and branch_no =@branch_no
         Else
   Insert  t_rm_vip_consume (card_id,branch_no,com_flag,vip_minus_total)
   Values (@card_id,@branch_no,'0',@minus_num)
    end
   
    
    else  --积分为负数,写入积分奖励记录
       begin
         insert into t_rm_vip_good_flow(vgf_branch_no, vgf_vip_no, vgf_flag, vgf_item_no, vgf_item_num, vgf_vip_num, vgf_oper, vgf_date, memo)  
   values (@branch_no , @card_id, '3', '', 0, @minus_num, '1001', getdate(), '积分清零-奖励积分' ) 
   --档案积分清零
   update t_rm_vip_info set dec_num=dec_num + @minus_num where card_id=@card_id
   
    select @count = 0    --获取t_rm_vip_consume的行数
   select @count=count(*) from t_rm_vip_consume where card_id = @card_id and branch_no = @branch_no
 
   If @count > 0 
   Update t_rm_vip_consume Set vip_acc_amount = isnull(vip_acc_amount,0) +@minus_num,com_flag = '0'
   Where card_id = @card_id and branch_no =@branch_no
         Else     --t_rm_vip_consume记录不存在,插入t_rm_vip_consum记录
   Insert  t_rm_vip_consume (card_id,branch_no,com_flag,vip_acc_amount)
   Values (@card_id,@branch_no,'0',@minus_num)
  end 
 
   fetch temp_dec_vip into @card_id,@acc_num,@dec_num
end
close temp_dec_vip
deallocate temp_dec_vip
go

http://www.lryc.cn/news/463428.html

相关文章:

  • $nextTick原理
  • python办公:批量PDF合并—通用版
  • 人工智能研究创造出新型蛋白质
  • blender 金币基站 建模 学习笔记
  • eggjs sequelize egg-sequelize-auto自动从零生成一个数据表 自动创建model
  • 解决低版本pytorch和onnx组合时torch.atan2()不被onnx支持的问题
  • javaWeb项目-ssm+jsp房屋出租管理系统功能介绍
  • 【R语言】gadm全球行政区划数据库
  • 3万字66道Java基础面试题总结(2024版本)
  • go 环境安装
  • stereo-seq 细胞、捕获到的分子及其特征的统计描述
  • ceph rook-ceph 部署 cephobjectstore 失败
  • 1791. 找出星型图的中心节点
  • 微调小型Llama 3.2(十亿参数)模型取代GPT-4o
  • 【JavaEE】【IO】文件操作
  • commonjs和esmodule的导入导出细节
  • 【热门】用ChatGPT做智慧农业云平台——农业ERP管控系统
  • Android从上帝视角来看PackageManagerService
  • 阵列式位移计与传统测斜仪相比的优势
  • 第7章 网络请求和状态管理
  • 苍穹外卖学习笔记(二十七)
  • 使用exe4j打包jar包生成exe文件,GUI应用详细使用教程
  • go jwt 用户登录和返回用户信息 token ----important!!!
  • OpenCV高级图形用户界面(12)用于更改指定窗口的大小函数resizeWindow()的使用
  • babylonjs shader学习之copy shadertoy案例
  • Leetcode 1137. 第 N 个泰波那契数
  • Rust 语言持续崛起,即将冲击 TIOBE 指数前十,能否成为编程语言新王者?
  • Linux 手撕线程池
  • [Unity Demo]从零开始制作空洞骑士Hollow Knight第十五集:制作更多地图,更多敌人,更多可交互对象
  • 在Openshift上安装MetalLB