From fc534e2d708d1b5078e37f52fcb3e9ed963c28ce Mon Sep 17 00:00:00 2001 From: old-tom <892955278@qq.com> Date: Sat, 20 May 2023 08:27:55 +0800 Subject: [PATCH] no message --- work常用/Oracle常用.md | 52 +++++++++++ work常用/pip 、pipenv.md | 74 +++++++++++++++ work常用/pip 命令.md | 5 -- .../业务词汇及专业解释.md | 12 +++ 工作日志/ATD/202304/2023-04-27.md | 35 +++++++- 工作日志/ATD/202304/2023-04-28.md | 7 ++ 工作日志/ATD/202305/2023-05-04.md | 8 ++ 工作日志/ATD/202305/2023-05-05.md | 7 ++ 工作日志/ATD/202305/2023-05-06.md | 3 + 工作日志/ATD/202305/2023-05-07.md | 4 + 工作日志/ATD/202305/2023-05-08.md | 9 ++ 工作日志/ATD/202305/2023-05-09.md | 10 +++ 工作日志/ATD/202305/2023-05-10.md | 8 ++ 工作日志/ATD/202305/2023-05-11.md | 3 + 工作日志/ATD/202305/2023-05-12.md | 4 + 工作日志/ATD/202305/2023-05-15.md | 8 ++ 工作日志/ATD/202305/2023-05-16.md | 8 ++ 工作日志/ATD/202305/2023-05-17.md | 12 +++ 工作日志/ATD/202305/2023-05-18.md | 5 ++ 工作日志/ATD/环境/项目地址.md | 2 + 开发计划/tiny-datahub/开发计划.md | 3 +- 日常学习/python/装饰器.md | 89 +++++++++++++++++++ 本机环境/开发环境.md | 5 +- 23 files changed, 365 insertions(+), 8 deletions(-) create mode 100644 work常用/pip 、pipenv.md delete mode 100644 work常用/pip 命令.md create mode 100644 work常用/业务知识/业务词汇及专业解释.md create mode 100644 工作日志/ATD/202304/2023-04-28.md create mode 100644 工作日志/ATD/202305/2023-05-04.md create mode 100644 工作日志/ATD/202305/2023-05-05.md create mode 100644 工作日志/ATD/202305/2023-05-06.md create mode 100644 工作日志/ATD/202305/2023-05-07.md create mode 100644 工作日志/ATD/202305/2023-05-08.md create mode 100644 工作日志/ATD/202305/2023-05-09.md create mode 100644 工作日志/ATD/202305/2023-05-10.md create mode 100644 工作日志/ATD/202305/2023-05-11.md create mode 100644 工作日志/ATD/202305/2023-05-12.md create mode 100644 工作日志/ATD/202305/2023-05-15.md create mode 100644 工作日志/ATD/202305/2023-05-16.md create mode 100644 工作日志/ATD/202305/2023-05-17.md create mode 100644 工作日志/ATD/202305/2023-05-18.md create mode 100644 日常学习/python/装饰器.md diff --git a/work常用/Oracle常用.md b/work常用/Oracle常用.md index 2b7146d..1f6b97f 100644 --- a/work常用/Oracle常用.md +++ b/work常用/Oracle常用.md @@ -157,3 +157,55 @@ WITH SUMORDER AS ) B ON (A.PRODUCTID = B.PRODUCTID) WHEN MATCHED THEN UPDATE SET A.TOTAL = B.TOTAL; ``` + +## 2.2 日期时间 ++ 数据库最大的年月往前推12个月 +```sql +SELECT + TO_CHAR( + ADD_MONTHS( + TO_DATE( to_char( to_date( ( select max(DECLARE_PERIOD_YEAR_MONTH) from CRZ_NMG_WORKER_WAGE_BOND where project_id=600000000000000138 ), 'yyyy-MM' ), 'yyyy-MM' ), 'yyyy-MM' ), + ROWNUM - 12 + ), + 'yyyy-MM' + ) AS MONTHLIST +FROM + DUAL CONNECT BY ROWNUM <= 12 +``` + ++ 指定月份的前N个月 +```sql +-- 获取2020-06的后5个月(2020-11) +SELECT TO_CHAR(ADD_MONTHS(to_date('2020-06','yyyy-MM'),5),'YYYY-MM') FROM dual; +-- 获取2020-06的前3个月(2020-03) +SELECT TO_CHAR(ADD_MONTHS(to_date('2020-06','yyyy-MM'),-3),'YYYY-MM') FROM dual; +``` + ++ 返回指定日期当月的最后一天 +```sql +SELECT SYSDATE,last_day(SYSDATE) FROM dual; +``` + +## 2.3 窗口函数 ++ over() +``` +# 累加 +sum(COLLECT_BOND_AMOUNT) over ( ORDER BY DECLARE_PERIOD_YEAR_MONTH desc) +# 分组累加 +sum( DESIGN_AMOUNT ) over ( partition BY PROJECT_ID order by DESIGN_AMOUNT desc) +# 在按部门划分的基础上,工资从高到低分级,级别RANK从1开始依次递增 +RANK() OVER(PARTITION BY E.DEPTNO ORDER BY E.SAL DESC) RANK +# 记录后第N条 +LEAD(E.SAL, 1, 0) OVER(PARTITION BY E.DEPTNO ORDER BY E.SAL) LEAD_SAL +# 记录前面第N行记录 +LAG(E.SAL, 1, 0) OVER(PARTITION BY E.DEPTNO ORDER BY E.SAL) LAG_SAL +# 取行号 +ROW_NUMBER() OVER(PARTITION BY E.DEPTNO ORDER BY E.SAL) ROW_NUM +# 统计某组中的总计值 +SUM(E.SAL) OVER(PARTITION BY E.DEPTNO) SUM_SAL +# 统计某组中的平均值 +AVG(E.SAL) OVER(PARTITION BY E.DEPTNO) AVG_SAL +# 按某列分组,并统计该组中记录数量 +COUNT(E.SAL) OVER(PARTITION BY E.DEPTNO) COUNT_SAL + +``` diff --git a/work常用/pip 、pipenv.md b/work常用/pip 、pipenv.md new file mode 100644 index 0000000..fe5cdee --- /dev/null +++ b/work常用/pip 、pipenv.md @@ -0,0 +1,74 @@ + +# 一、pip +## 1. 镜像加速 +```shell +# 添加 -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com +pip install 'acryl-datahub[oracle]' -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com +``` + +## 2. 导入导出依赖 +``` +pip freeze > requirements.txt # 生成 +pip install -r requirements.txt # 安装requirements.txt中依赖包 +``` + +# 二、pipenv(虚拟环境管理) + +```text +$ pipenv +Usage: pipenv [OPTIONS] COMMAND [ARGS]... + +Options: + --update 更新Pipenv & pip + --where 显示项目文件所在路径 + --venv 显示虚拟环境实际文件所在路径 + --py 显示虚拟环境Python解释器所在路径 + --envs 显示虚拟环境的选项变量 + --rm 删除虚拟环境 + --bare 最小化输出 + --completion 完整输出 + --man 显示帮助页面 + --three / --two 使用Python 3/2创建虚拟环境(注意本机已安装的Python版本) + --python TEXT 指定某个Python版本作为虚拟环境的安装源 + --site-packages 附带安装原Python解释器中的第三方库 + --jumbotron 不知道啥玩意.... + --version 版本信息 + -h, --help 帮助信息 +Commands: + check 检查安全漏洞 + graph 显示当前依赖关系图信息 + install 安装虚拟环境或者第三方库 + lock 锁定并生成Pipfile.lock文件 + open 在编辑器中查看一个库 + run 在虚拟环境中运行命令 + shell 进入虚拟环境 + uninstall 卸载一个 + update 卸载当前所有的包,并安装它们的最新版本 +``` + +常用命令如下: + +- pipenv --python 3.7 创建3.7版本Python环境 +- pipenv install package_name 安装包 +- pipenv graph 查看包与包之间依赖关系 +- pipenv --venv 查看虚拟环境保存路径 +- pipenv --py 查看python解释器路径 +- pipenv install package_name --skip-lock 跳过lock,可以等项目开发好后,再更新所有报的hash值 +- pipenv install --dev package_name 在开发环境安装测试包(可以加–skip-lock参数) +- pipenv uninstall package_name 卸载包 +- 你也可以指定 $ pipenv install -r path/to/requirements.txt 导入某个requirements文件 + + • 安装 + pip install pipenv + • 创建虚拟环境 + a. cd 到代码所在目录,创建文件夹 + b. 创建虚拟环境pipenv install 会默认创建当前python版本的环境,如需指定环境请使用 pipenv install --python 3.6 + • 包安装 + cd 到虚拟环境目录 pipenv shell 激活环境 +使用pip install 或pipenv install命令 + +重点(运行): +cd 到项目目录 pipenv run python xxx.py +必须在pipfile文件所在路径的目录下执行,例如在根目录下生成的pipfile文件,执行命令为pipenv run python xxx.py或pipenv run python /xxx.py + +由于直接用pipenv run来执行会有根目录的限制,所以推荐项目容器化部署,在docker容器里面,把生成的pipfile和pipfile.lock文件导出为requirements再用dockerFile执行安装,这样便可以灵活指定Workdir了,方便cd到项目下任意路径执行python运行命令。 \ No newline at end of file diff --git a/work常用/pip 命令.md b/work常用/pip 命令.md deleted file mode 100644 index df8702c..0000000 --- a/work常用/pip 命令.md +++ /dev/null @@ -1,5 +0,0 @@ -# 一、 镜像加速 -```shell -# 添加 -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com -pip install 'acryl-datahub[oracle]' -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com -``` \ No newline at end of file diff --git a/work常用/业务知识/业务词汇及专业解释.md b/work常用/业务知识/业务词汇及专业解释.md new file mode 100644 index 0000000..f533c6d --- /dev/null +++ b/work常用/业务知识/业务词汇及专业解释.md @@ -0,0 +1,12 @@ +# 一、编码类 +## 1.1 统一社会信用代码 +例:91530111MA6PD8BJ9K +统一社会信用代码是三证合一、一证一码的改革结果 +三证合一:营业执照、税务登记、组织机构代码合并为一张三证合一的营业执照。 +一证一码:营业执照注册号、税号、组织机构代码证号合并为统一社会信用代码。 +营业执照号=统一社会信用代码 +组织机构代码=统一社会信用代码[9-17],共9位 +税务登记证号=统一社会信用代码[3-17],共15位 + +[全国组织机构统一社会信用代码查询平台 - 全国组织机构统一社会信用代码数据服务中心 (cods.org.cn)](https://www.cods.org.cn/gscx/) + diff --git a/工作日志/ATD/202304/2023-04-27.md b/工作日志/ATD/202304/2023-04-27.md index 600e0c7..fae3c0a 100644 --- a/工作日志/ATD/202304/2023-04-27.md +++ b/工作日志/ATD/202304/2023-04-27.md @@ -4,4 +4,37 @@ - [ ] 确定代码集定义及需新增的字段 二、事权 -1. \ No newline at end of file +- [x] 梳理筹融资统计不准情况 + + + +#筹融资及资金使用 +ODS_FINANCE_SOURCE 资金到位融资金额构成 +ODS_FINANCE_PLAN 资金到位计划主表(年报) +ODS_FINANCE_PLAN_DETAIL 资金到位计划明细表(年报) +TJ_DWJH_VIEW 资金到位计划视图 + +ODS_FINANCE_FINISH 资金到位主表 +ODS_FINANCE_FINISH_DETAIL 资金到位明细 +TJ_ZJDW_VIEW 资金到位明细视图 + +ODS_INVEST_FORM 投资完成金额组成 +ODS_INVEST_PLAN 投资完成计划主表 +ODS_INVEST_PLAN_DETAIL 投资完成计划明细表 +VIEW_ODS_INVEST_PLAN_DETAIL 投资完成计划明细视图 + +ODS_INVEST_FINISH 投资完成主表 +ODS_INVEST_FINISH_DETAIL 投资完成明细 +TJ_TZWC_VIEW 投资完成明细视图 + + +CRZ_NMG_WORKER_WAGE_BOND 农民工工资收返保障情况 + + + + +概念: +累计到位资金=资金到位情况+初始累计到位金额(筹融资额构成) +累计资金到位率=累计到位资金/资金到位计划 +累计投资完成率=累计投资金额/设计金额 +年度资金到位率=年度实际到位/年度计划到位 \ No newline at end of file diff --git a/工作日志/ATD/202304/2023-04-28.md b/工作日志/ATD/202304/2023-04-28.md new file mode 100644 index 0000000..243c5f2 --- /dev/null +++ b/工作日志/ATD/202304/2023-04-28.md @@ -0,0 +1,7 @@ +计划: +一、事权 +- [ ] 完成筹融资统计修改 + +工作日志: +一、事权 +1. 筹融资资金到位及投资完成-指标卡、筹融资额构成情况、资金到位情况、投资金额组成查询接口重写 \ No newline at end of file diff --git a/工作日志/ATD/202305/2023-05-04.md b/工作日志/ATD/202305/2023-05-04.md new file mode 100644 index 0000000..46313f3 --- /dev/null +++ b/工作日志/ATD/202305/2023-05-04.md @@ -0,0 +1,8 @@ +计划: +一、事权 +- [ ] 筹融资模块统计fix,需先找赵核对并确认 +- [ ] 单项目-投资完成情况明细、资金到位计划与实际到位资金清空 + +工作日志: +一、事权 +1. 修复筹融资统计bug,排序、年度统计、字段不显示问题 \ No newline at end of file diff --git a/工作日志/ATD/202305/2023-05-05.md b/工作日志/ATD/202305/2023-05-05.md new file mode 100644 index 0000000..c415ec6 --- /dev/null +++ b/工作日志/ATD/202305/2023-05-05.md @@ -0,0 +1,7 @@ +计划: +一、事权 +- [ ] 基建程序统计重构 + +工作日志: +一、事权 +1. 基建程序指标卡、各项目统计接口重写 \ No newline at end of file diff --git a/工作日志/ATD/202305/2023-05-06.md b/工作日志/ATD/202305/2023-05-06.md new file mode 100644 index 0000000..52390c1 --- /dev/null +++ b/工作日志/ATD/202305/2023-05-06.md @@ -0,0 +1,3 @@ +工作日志: +一、事权-基建程序 +1. 前期工作修改统计项,并修改统计项视图 \ No newline at end of file diff --git a/工作日志/ATD/202305/2023-05-07.md b/工作日志/ATD/202305/2023-05-07.md new file mode 100644 index 0000000..8064f70 --- /dev/null +++ b/工作日志/ATD/202305/2023-05-07.md @@ -0,0 +1,4 @@ +工作日志: +一、事权-基建程序-多项目 +1. 重写各项目基建程序完成情况三个接口 +2. 修改基建程序完成情况总览明细查询接口 \ No newline at end of file diff --git a/工作日志/ATD/202305/2023-05-08.md b/工作日志/ATD/202305/2023-05-08.md new file mode 100644 index 0000000..9544e3e --- /dev/null +++ b/工作日志/ATD/202305/2023-05-08.md @@ -0,0 +1,9 @@ +计划: +一、事权报表重写 +- [ ] 筹融资-单项目-投资完成情况-计划完成与实际完成投资情况 +- [ ] 筹融资-单项目-资金到位情况-资金到位计划与实际到位资金情况 + +工作日志: +一、事权 +1. 筹融资-单项目-资金到位情况-资金到位计划与实际到位资金情况报表接口重构并替换正式版本 +2. 分析总体概况左下角统计结果不一致问题 \ No newline at end of file diff --git a/工作日志/ATD/202305/2023-05-09.md b/工作日志/ATD/202305/2023-05-09.md new file mode 100644 index 0000000..07808bb --- /dev/null +++ b/工作日志/ATD/202305/2023-05-09.md @@ -0,0 +1,10 @@ +计划: +一、事权 +- [x] 完成筹融资-单项目-投资完成情况-计划完成与实际完成投资情况报表 +- [ ] 处理金伟鹏给出的问题清单 + +工作日志: +一、事权 +1. 筹融资-单项目-投资完成情况-计划完成与实际完成投资情况报表 +2. 重写总体概况左侧指标卡统计SQL +3. 基建程序-多项目-指标卡截至上月末项目数统计 \ No newline at end of file diff --git a/工作日志/ATD/202305/2023-05-10.md b/工作日志/ATD/202305/2023-05-10.md new file mode 100644 index 0000000..e6adc8a --- /dev/null +++ b/工作日志/ATD/202305/2023-05-10.md @@ -0,0 +1,8 @@ +计划: +一、事权 +- [ ] 总体概况左下角操作逻辑与赵讨论 +二、血缘分析工具 +- [ ] 元数据查询bugfix +三、全省交通行业信用评价系统 +- [ ] 业务流程梳理 +- [ ] 评价算法 \ No newline at end of file diff --git a/工作日志/ATD/202305/2023-05-11.md b/工作日志/ATD/202305/2023-05-11.md new file mode 100644 index 0000000..f383556 --- /dev/null +++ b/工作日志/ATD/202305/2023-05-11.md @@ -0,0 +1,3 @@ +工作日志: +一、省厅信用系统 +1. 对接并梳理业务需求(旧系统公路、水路、水运) diff --git a/工作日志/ATD/202305/2023-05-12.md b/工作日志/ATD/202305/2023-05-12.md new file mode 100644 index 0000000..edc4dea --- /dev/null +++ b/工作日志/ATD/202305/2023-05-12.md @@ -0,0 +1,4 @@ +工作日志: +一、省厅信用系统 +1. 业务流程梳理 +2. 编写概要设计 \ No newline at end of file diff --git a/工作日志/ATD/202305/2023-05-15.md b/工作日志/ATD/202305/2023-05-15.md new file mode 100644 index 0000000..29a7ad8 --- /dev/null +++ b/工作日志/ATD/202305/2023-05-15.md @@ -0,0 +1,8 @@ +计划: +一、信用系统 +- [x] 组织概要审计评审 + + +工作日志: +1. 主题库建设思路 +2. 信用系统评审 \ No newline at end of file diff --git a/工作日志/ATD/202305/2023-05-16.md b/工作日志/ATD/202305/2023-05-16.md new file mode 100644 index 0000000..6034eb7 --- /dev/null +++ b/工作日志/ATD/202305/2023-05-16.md @@ -0,0 +1,8 @@ +计划: +一、信用系统 +- [ ] 完成三类主题库表结构设计 +- [ ] 天眼查爬虫 + +工作日志: +一、主题库设计 +1. 完成企业、人员主题库DWD层表结构设计 \ No newline at end of file diff --git a/工作日志/ATD/202305/2023-05-17.md b/工作日志/ATD/202305/2023-05-17.md new file mode 100644 index 0000000..b083918 --- /dev/null +++ b/工作日志/ATD/202305/2023-05-17.md @@ -0,0 +1,12 @@ +计划: +一、信用系统 +- [ ] 建设、运输表结构设计 +- [x] 学习信用会议纪要 + +工作日志: +一、信用系统 +1. 学习信用会议纪要 +2. 业务流程梳理、数据流向梳理 + +二、水路运政 +1. 梳理水路运政电子证照对接流程 \ No newline at end of file diff --git a/工作日志/ATD/202305/2023-05-18.md b/工作日志/ATD/202305/2023-05-18.md new file mode 100644 index 0000000..aa145ab --- /dev/null +++ b/工作日志/ATD/202305/2023-05-18.md @@ -0,0 +1,5 @@ +计划: +一、信用系统 +- [ ] 完成业务建模(业务模块、业务模块关系) + +今日工作: diff --git a/工作日志/ATD/环境/项目地址.md b/工作日志/ATD/环境/项目地址.md index 1801fdc..7659e3b 100644 --- a/工作日志/ATD/环境/项目地址.md +++ b/工作日志/ATD/环境/项目地址.md @@ -46,3 +46,5 @@ zourui/zourui 登录账号:demoano  |  登录密码:90683 蓝凌 :18787010990 + +VPN:https://220.165.247.70:6443 zourui/abc123 \ No newline at end of file diff --git a/开发计划/tiny-datahub/开发计划.md b/开发计划/tiny-datahub/开发计划.md index 3dbd126..35ea55d 100644 --- a/开发计划/tiny-datahub/开发计划.md +++ b/开发计划/tiny-datahub/开发计划.md @@ -2,7 +2,8 @@ ### 1. 视图、存储过程逆向分析并构建关系图 已完成 ### 2. 定时构建 -1. 通过apscheduler实现定时任务 +1. 通过apscheduler实现定时任务 (暂不支持动态添加定时任务) +2. stopwatch 实现(完成) ## 二、第二阶段 ### 1. 数据库版本差异扫描及版本管理 diff --git a/日常学习/python/装饰器.md b/日常学习/python/装饰器.md new file mode 100644 index 0000000..2678cc9 --- /dev/null +++ b/日常学习/python/装饰器.md @@ -0,0 +1,89 @@ +装饰器的一般语法结构如下: + +```python +def decorator(func): + def wrapper(): + # 新增功能或者附加限制条件 + # ... + return func() + return wrapper +``` + +装饰器函数可以不用使用装饰器语法糖@,而是采用原始的方式进行调用。例如,下面是一个用于计算函数运行时间的装饰器函数,它的等效写法是: +```python +import time + +def my_decorator(func): + def wrapper(*args, **kwargs): + start_time = time.time() + result = func(*args, **kwargs) + end_time = time.time() + print("Function took {:.6f} seconds.".format(end_time - start_time)) + return result + return wrapper + +def my_function(x): + time.sleep(x) + return x + +decorated_function = my_decorator(my_function) +print(decorated_function(2)) +``` + +装饰器也可以用类进行实现,我们可以定义一个类,将需要被装饰的函数作为一个参数传递给类的构造函数,并重载类的__call__方法。 +例如,下面是一个用于计算函数运行时间的类装饰器,它的等效写法是: +```python +import time + +class MyDecorator: + def __init__(self, func): + self.func = func + + def __call__(self, *args, **kwargs): + start_time = time.time() + result = self.func(*args, **kwargs) + end_time = time.time() + print("Function took {:.6f} seconds.".format(end_time - start_time)) + return result + +@MyDecorator +def my_function(x): + time.sleep(x) + return x + +print(my_function(2)) +``` + +### 单参数被装饰函数 +```python +def my_decorator(func): + def wrapper(arg): + print("Calling function...") + result = func(arg) + print("Function returned: ", result) + return result + return wrapper + +@my_decorator +def my_function(x): + return x * 2 + +my_function(2) # 输出:Calling function... Function returned: 4 +``` + +### 多参数被装饰函数 +```python +def my_decorator(func): + def wrapper(*args, **kwargs): + print("Calling function...") + result = func(*args, **kwargs) + print("Function returned: ", result) + return result + return wrapper + +@my_decorator +def my_function(x, y, z): + return x + y + z + +my_function(2, 3, z=4) # 输出:Calling function... Function returned: 9 +``` \ No newline at end of file diff --git a/本机环境/开发环境.md b/本机环境/开发环境.md index bc96462..d3d5460 100644 --- a/本机环境/开发环境.md +++ b/本机环境/开发环境.md @@ -9,4 +9,7 @@ docker 安装: 1.docker pull neo4j 2. docker run -d --name container_name -p 7474:7474 -p 7687:7687 --env NEO4J_AUTH=neo4j/root@12345 neo4j http://localhost:7474/ neo4j/clone-formula-shelf-hair-neptune-3446 -修改密码::server change-password \ No newline at end of file +修改密码::server change-password + ++ sqlserver 2008 +sa/root@123 \ No newline at end of file