一、客户需求

  通过导入银行POS机流水,将流水与ERP系统的零售付款数据进行对比,统计差异!

  

二、功能设计

  1、新增“POS机号对应表单”,用于维护POS机与erp店仓对应

  

  2、新增“POS机流水导入窗口”,用于记录银行POS流水

  

  3、新增“对账功能”试图,展现结果

  

 4、写试图语句

  

  1 create or replace view store_statements as
2 select rownum id,
3 hs.ad_client_id,
4 hs.ad_org_id,
5 hs.billdate,
6 hs.c_store_id,
7 sum(nvl(tot_amt2,0)) as tot_amt2,
8 sum(nvl(tot_amt9,0)) as tot_amt9,
9 sum(nvl(tot_amt16,0)) as tot_amt16,
10 sum(nvl(tot_amt4,0)) as tot_amt4,
11 sum(nvl(tot_amt11,0)) as tot_amt11,
12 sum(nvl(tot_amt18,0)) as tot_amt18,
13 sum(nvl(tot_amt3,0)) as tot_amt3,
14 sum(nvl(tot_amt17,0)) as tot_amt17,
15 sum(nvl(tot_amt10,0)) as tot_amt10,
16 sum(nvl(tot_amt15,0)) as tot_amt15,
17 sum(nvl(tot_amt13,0)) as tot_amt13,
18 sum(nvl(tot_amt6,0)) as tot_amt6,
19 sum(nvl(tot_amt8,0)) as tot_amt8,
20 sum(nvl(tot_amt19,0)) as tot_amt19,
21 sum(nvl(tot_amt24,0)) as tot_amt24,
22 sum(nvl(tot_amt25,0)) as tot_amt25,
23 sum(nvl(tot_amt23,0)) as tot_amt23,
24 sum(nvl(tot_amt21,0)) as tot_amt21,
25 sum(nvl(tot_amt27,0)) as tot_amt27,
26 sum(nvl(tot_amt17,0)) as tot_amt28,
27 sum(nvl(tot_amt22,0)) as tot_amt22
28 from (
29 --零售付款明细
30 select a.ad_client_id,
31 a.ad_org_id,
32 c.billdate,
33 c.c_store_id,
34 sum(decode(a.c_payway_id, 2, nvl(a.payamount, 0))) as tot_amt2,
35 sum(decode(a.c_payway_id, 5, nvl(a.payamount, 0))) as tot_amt9,
36 sum(decode(a.c_payway_id, 4, nvl(a.payamount, 0))) as tot_amt16,
37 sum(decode(a.c_payway_id, 3, nvl(a.payamount, 0))) as tot_amt19,
38 sum(decode(a.c_payway_id, 8, nvl(a.payamount, 0))) as tot_amt24,
39 sum(decode(a.c_payway_id, 7, nvl(a.payamount, 0))) as tot_amt25
40 from m_retailpayitem a, m_retail c
41 where a.m_retail_id = c.id
42 --and c.billdate > '20200331'
43 --and c.c_store_id = 917
44 group by a.ad_client_id, a.ad_org_id, c.billdate, c.c_store_id) hs
45
46 left join
47 --零售其它付款明细
48 (select a.ad_client_id,
49 a.ad_org_id,
50 c.billdate,
51 c.c_store_id,
52 sum(nvl(a.payamount, 0)) as tot_amt22
53 from m_retailpayitem a, m_retail c
54 where a.m_retail_id = c.id
55 and a.c_payway_id not in (2,3,4,5,7,8)
56 --and c.billdate > '20200331'
57 --and c.c_store_id = 917
58 group by a.ad_client_id, a.ad_org_id, c.billdate, c.c_store_id) qt on hs.c_store_id = qt.c_store_id and hs.billdate = qt.billdate
59 left join
60 --充值付款明细
61 (select b.ad_client_id,
62 b.ad_org_id,
63 b.billdate,
64 b.c_store_id,
65 sum(decode(a.c_payway_id, 2, nvl(a.payamount, 0))) as tot_amt4,
66 sum(decode(a.c_payway_id, 5, nvl(a.payamount, 0))) as tot_amt11,
67 sum(decode(a.c_payway_id, 4, nvl(a.payamount, 0))) as tot_amt18,
68 sum( nvl(b.tot_amt_actual, 0)) as tot_amt21
69 from b_vipmoney_payitem a, b_vipmoney b
70 where a.b_vipmoney_id = b.id
71 -- and b.billdate > '20200331'
72 and b.status = 2
73 --and b.c_store_id = 917
74 group by b.ad_client_id, b.ad_org_id, b.billdate, b.c_store_id
75 union all
76 select b.ad_client_id,
77 b.ad_org_id,
78 b.billdate,
79 b.c_store_id,
80 sum(decode(a.c_payway_id, 2, nvl(a.payamount, 0))) as tot_amt4,
81 sum(decode(a.c_payway_id, 5, nvl(a.payamount, 0))) as tot_amt11,
82 sum(decode(a.c_payway_id, 4, nvl(a.payamount, 0))) as tot_amt18,
83 sum( nvl(b.tot_amt_actual, 0)) as tot_amt21
84 from b_vip_money_payitem a, b_vip_money b
85 where a.b_vip_money_id = b.id
86 --and b.billdate > '20200331'
87 and b.status = 2
88 --and b.c_store_id = 917
89 group by b.ad_client_id, b.ad_org_id, b.billdate, b.c_store_id) gs on hs.c_store_id = gs.c_store_id and hs.billdate = gs.billdate
90 left join
91 --订金付款明细
92 (select b.ad_client_id,
93 b.ad_org_id,
94 b.billdate,
95 b.c_store_id,
96 sum(decode(a.c_payway_id, 2, nvl(a.payamount, 0))) as tot_amt3,
97 sum(decode(a.c_payway_id, 5, nvl(a.payamount, 0))) as tot_amt10,
98 sum(decode(a.c_payway_id, 4, nvl(a.payamount, 0))) as tot_amt17,
99 sum(decode(a.c_payway_id, 3, nvl(a.payamount, 0))) as tot_amt23
100 from m_receipts_payitem a, m_receipts b
101 where a.m_receipts_id = b.id
102 -- and b.billdate > '20200331'
103 --and b.c_store_id = 917
104 group by b.ad_client_id, b.ad_org_id, b.billdate, b.c_store_id) ts on hs.c_store_id = ts.c_store_id and hs.billdate = ts.billdate
105
106 left join
107 --订金付款明细
108 (select b.ad_client_id,
109 b.ad_org_id,
110 b.billdate,
111 b.c_store_id,
112 sum( nvl(b.tot_amt, 0)) as tot_amt27
113 from m_receipts_item b
114 where b.type in('退订','订金')
115 -- and b.billdate > '20200331'
116 --and b.c_store_id = 917
117 group by b.ad_client_id, b.ad_org_id, b.billdate, b.c_store_id) ds on hs.c_store_id = ds.c_store_id and hs.billdate = ds.billdate
118 left join
119 --银行流水明细
120 (select 37as ad_client_id,
121 27 as ad_org_id,
122 b.c_store_id,
123 to_number(to_char(to_date(a.trading_hours,
124 'yyyy-mm-dd,hh24:mi:ss'),
125 'yyyymmdd')) as billdate,
126 sum(decode(a.payment_channels,
127 '微信' , nvl(a.total_amount,0))) as TOT_AMT13,
128 sum(decode(a.payment_channels,
129 '微信' , nvl(a.poundage,0))) as TOT_AMT15,
130 sum(decode(a.payment_channels,
131 '刷卡支付' , nvl(a.total_amount,0))) as TOT_AMT6,
132 sum(decode(a.payment_channels,
133 '刷卡支付' , nvl(a.poundage,0))) as TOT_AMT8
134 from merchants_statementsitem a
135 left join shop_pos b
136 on a.terminal_no = b.pos_no
137 group by 37,
138 27,
139 to_char(to_date(a.trading_hours,
140 'yyyy-mm-dd,hh24:mi:ss'),
141 'yyyymmdd'),
142 b.c_store_id) ls on hs.c_store_id = ls.c_store_id and hs.billdate = ls.billdate
143 group by rownum, hs.ad_client_id, hs.ad_org_id, hs.billdate, hs.c_store_id
144 order by hs.c_store_id desc, hs.billdate
145 ;

  

伯俊BOS2.0店铺收入对账功能设计的更多相关文章

  1. 伯俊BOS2.0关于订金单的处理方案

    订金单功能调整设计 一.     功能确认 BPOS关于订金的使用对应的是"预收单",原"预收单"设置有商品明细,根据客户对订金的需求,取消原有"商品 ...

  2. 保密数据!泽宝曝光各个主要店铺收入 核心SKU数量少得惊人

    今年跨境电商圈的一大并购,上市公司星徽精密并购知名跨境电商大卖家泽宝股份正在进程中.星徽精密在向证监会行政许可项目审查回复中,披露了泽宝股份众多保密数据,揭开了泽宝股份众多经营关键点,值得跨境电商卖家 ...

  3. 阿里云在云栖大会发布SaaS加速器3.0版最新成果,让天下没有难做的SaaS

    2019年杭州·云栖大会顺利落幕,超过6万人次观展,200余位顶尖科学家分享了前沿技术.作为“阿里云不做SaaS”,坚持“被集成”战略的落地体现,阿里云SaaS加速器在云栖大会现场发布了SaaS加速器 ...

  4. jquery-防多店铺购物车结算全选,单选,及删除,价格计算

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...

  5. $2015 武汉森果公司web后端开发实习日记----书写是为了更好的思考

    找暑期实习,3月份分别投了百度和腾讯的实习简历,都止步于笔试,总结的主要原因有两点:基础知识不扎实,缺乏项目经验.后来到拉勾网等网站上寻找实习,看了很多家,都还是处于观望状态.后来参加了武汉实习吧在大 ...

  6. Hibernate中用left join(左外连接)查询映射中没有关联关系的两个表记录问题

    一.问题背景 分账表split_summary结构如下: create table SPLIT_SUMMARY ( uuid VARCHAR2(32) not null, star_tdate VAR ...

  7. 新人 记录VUE中分页实现

    关于函数传值 this.getPurchaseHistoryData(index, num,timeType);第一位是显示的页数,第二是控制首页4上一页-1下一页是2末页是5 第三是是对昨天是1,今 ...

  8. mybatis xml <choose>标签使用

    <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PUBLIC "-/ ...

  9. 共享商业&技术红利,阿里云SaaS加速器让天下没有难做的SaaS

    9月26日,阿里云在2019杭州云栖大会上发布了SaaS加速器3.0版“一云多端”多个应用平台,展示了阿里云给伙伴带来的多种商业和技术红利.阿里云SaaS加速器将帮助伙伴做好SaaS,卖好SaaS:帮 ...

随机推荐

  1. 第二十九章、containers容器类部件QFrame框架部件详解

    一.概述 容器部件就是可以在部件内放置其他部件的部件,在Qt Designer中可以使用的容器部件有如下: 容器中的Frame为一个矩形的框架对象,对应类QFrame,QFrame类是PyQt中带框架 ...

  2. 第1章 Python学习环境构建目录

    第1章 引子 第1.1节 学习环境搭建 第1.2节 Python学习环境的使用 第2章 Python编程基础知识 第2.1节 简单的Python数据类型.变量赋值及输入输出 第2.2节 Python的 ...

  3. PyQt(Python+Qt)学习随笔:Qt Designer中部件的geometry几何属性

    geometry属性保存部件相对于其父级对象的位置和大小,Qt实际上是以一个长方形来表示部件的位置和大小的,包括左上角的坐标位置.长度和宽带. 当部件的geometry调整时,部件如果可见将立即接收m ...

  4. 用Python爬取了三大相亲软件评论区,结果...

    小三:怎么了小二?一副愁眉苦脸的样子. 小二:唉!这不是快过年了吗,家里又催相亲了 ... 小三:现在不是流行网恋吗,你可以试试相亲软件呀. 小二:这玩意靠谱吗? 小三:我也没用过,你自己看看软件评论 ...

  5. js已知A,B两点坐标,在线段AB上有C点,已知AC的距离,求C点的坐标

    /** * @param {Number} _x1 A点坐标 * @param {Number} _y1 A点坐标 * @param {Number} _x2 B点坐标 * @param {Numbe ...

  6. WebFlux中thymeleaf视图找不到的问题解决

    由于在weblux临时增加一个H5的页面,发生如下错误 Whitelabel Error Page This application has no configured error view, so ...

  7. STL——容器(List)List 的概念

    1. List 容器的基本概念 1. list 是一个双向链表容器,可高效的进行插入删除元素,他的原理在于每个元素都有两个指针来记录前后两个元素的地址,像火车车厢一样,list 中各个元素在物理存储单 ...

  8. HTTP/2做错了什么?刚刚辉煌2年就要被弃用了!?

    GitHub 19k Star 的Java工程师成神之路,不来了解一下吗! GitHub 19k Star 的Java工程师成神之路,真的不来了解一下吗! GitHub 19k Star 的Java工 ...

  9. Unity2D 人物移动切换人物图片

      勾选Constraints_freeze Rotation_z轴锁定,防止碰撞偏移.        public float moveSpeed = 3f;//定义移动速度        priv ...

  10. MySQL全面瓦解14:事务

    关于事务 我们在数据库中需要执行一个系列的操作的时候,要保证这个系列执行的连续性和完整性,要么整个系列的执行都成功,要么就全部失败(只要有一个步骤失败,其他均回滚到之前的状态), 保证不会存在一部分成 ...