diff --git a/2023-04-23.md b/2023-04-23.md
new file mode 100644
index 0000000..e69de29
diff --git a/Snipaste_2023-03-28_09-21-51.png b/Snipaste_2023-03-28_09-21-51.png
new file mode 100644
index 0000000..4b65766
Binary files /dev/null and b/Snipaste_2023-03-28_09-21-51.png differ
diff --git a/Snipaste_2023-04-01_17-47-48 1.png b/Snipaste_2023-04-01_17-47-48 1.png
new file mode 100644
index 0000000..e6ea422
Binary files /dev/null and b/Snipaste_2023-04-01_17-47-48 1.png differ
diff --git a/Snipaste_2023-04-01_17-47-48.png b/Snipaste_2023-04-01_17-47-48.png
new file mode 100644
index 0000000..88fb566
Binary files /dev/null and b/Snipaste_2023-04-01_17-47-48.png differ
diff --git a/work常用/CQL 常用语句.md b/work常用/CQL 常用语句.md
new file mode 100644
index 0000000..f51e0f3
--- /dev/null
+++ b/work常用/CQL 常用语句.md
@@ -0,0 +1,15 @@
++ 查询节点入度为1的其他节点
+```sql
+# view 为标签 name 为节点属性, <--表示指向方向
+match (n:view{name: "CRZ_FINANCE_INVEST_PRJ_DETAIL_VW" })<--(b) return n,b
+```
++ 查询某个节点入度(其他节点指向该节点)
+```
+match (n:view{name: 'CRZ_FINANCE_INVEST_PRJ_DETAIL_VW'}) with n, size((n)<-[]-()) as s return s;
+```
++ 向上遍历
+```cpyher
+# 查询与视图CRZ_FINANCE_INVEST_PRJ_DETAIL_VW相关的所有节点及关系,<-表示入度,在这个例子中,视图是作为被其他节点指向的一方
+MATCH (c:view{name:"CRZ_FINANCE_INVEST_PRJ_DETAIL_VW"})<-[r*0..]-(result) return result
+MATCH (c:view{name:"DW_INFRASTRUCTURE_INDEX_VW"})<-[r*0..]-(result) return result
+```
diff --git a/work常用/Linux命令.md b/work常用/Linux命令.md
index 2ae48b6..dea8918 100644
--- a/work常用/Linux命令.md
+++ b/work常用/Linux命令.md
@@ -153,6 +153,29 @@ lsof -i:8080
# 查看文件进程
lsof xxx.txt
```
+
++ ip
+```
+ip link show # 显示网络接口信息
+ip link set eth0 up # 开启网卡
+ip link set eth0 down # 关闭网卡
+ip link set eth0 promisc on # 开启网卡的混合模式
+ip link set eth0 promisc offi # 关闭网卡的混个模式
+ip link set eth0 txqueuelen 1200 # 设置网卡队列长度
+ip link set eth0 mtu 1400 # 设置网卡最大传输单元
+ip addr show # 显示网卡IP信息
+ip addr add 192.168.0.1/24 dev eth0 # 设置eth0网卡IP地址192.168.0.1
+ip addr del 192.168.0.1/24 dev eth0 # 删除eth0网卡IP地址
+
+ip route show # 显示系统路由
+ip route add default via 192.168.1.254 # 设置系统默认路由
+ip route list # 查看路由信息
+ip route add 192.168.4.0/24 via 192.168.0.254 dev eth0 # 设置192.168.4.0网段的网关为192.168.0.254,数据走eth0接口
+ip route add default via 192.168.0.254 dev eth0 # 设置默认网关为192.168.0.254
+ip route del 192.168.4.0/24 # 删除192.168.4.0网段的网关
+ip route del default # 删除默认路由
+ip route delete 192.168.1.0/24 dev eth0 # 删除路由
+```
## 2.2 查看网关
```
# 查看gateway
@@ -203,6 +226,49 @@ scp local_file remote_host:remote_file
scp -r local_dir remote_host:remote_folder
```
+## 2.8 查看网卡
+查看当前使用网卡
+```
+nmcli d
+```
+
+修改IP,添加DNS
+```text
+nmcli c m ens33 ipv4.address 192.168.80.10/24 # 修改 IP 地址和子网掩码
+nmcli c m ens33 ipv4.method manual # 修改为静态配置,默认是 auto
+nmcli c m ens33 ipv4.gateway 192.168.80.2 # 修改默认网关
+nmcli c m ens33 ipv4.dns 192.168.80.2 # 修改 DNS
+nmcli c m ens33 +ipv4.dns 114.114.114.114 # 添加一个 DNS
+nmcli c m ens33 ipv6.method ignored # 将 IPv6 禁用,针对CentOS8,三个可选项:disabled、auto、manual
+nmcli c m ens33 connection.autoconnect yes # 开机启动
+```
+
+显示连接信息
+```
+nmcli connection show
+或
+nmcli c show
+```
+
+## 2.9 安装SSH
+```shell
+yum -y install openssh openssh-server openssh-clients
+systemctl start sshd
+systemctl status sshd
+```
+
+## 2.10 修改DNS
+```
+vim /etc/resolv.conf
+# 重启网络
+systemctl start network.service
+```
+
+## 2.11 网络测试
+```shell
+# 返回0表示正常
+wget --spider -T 5 -q -t 2 www.baidu.com | echo $?
+```
# 三、权限
## 3.1 用户权限及用户组
Linux/Unix 的文件调用权限分为三级 : 文件所有者(Owner)、用户组(Group)、其它用户(Other Users)
@@ -313,6 +379,46 @@ df -h
jsp
```
+## 4.9 软链接
+将python2.7.9映射为python,可以先用whereis python或者which python查找位置
+```shell
+ln -s /usr/local/python-2.7.9/bin/python /usr/bin/python
+```
+
+## 4.10 查看上次登录
+```shell
+who -b
+```
+
+## 4.11 配置定时任务
+hadoop任务可能不会执行,因为crontab的path和系统path不一致,找到hadoop命令。如果出现找不到命令情况请添加cron path
+```shell
+ root 用户
+ vim /etc/crontab
+
+ SHELL=/bin/bash
+ PATH=/sbin:/bin:/usr/sbin:/usr/bin
+ MAILTO=root
+
+ # For details see man 4 crontabs
+
+ # Example of job definition:
+ # .---------------- minute (0 - 59)
+ # | .------------- hour (0 - 23)
+ # | | .---------- day of month (1 - 31)
+ # | | | .------- month (1 - 12) OR jan,feb,mar,apr ...
+ # | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
+ # | | | | |
+ # * * * * * user-name command to be executed
+ 20 04 * * * root reboot
+
+ # 加载配置
+ crontab /etc/crontab
+
+ # 重启crontab服务
+ systemctl restart crond.service
+```
+
# 五、vim
![[vi-vim-cheat-sheet-sch.gif]]
@@ -329,3 +435,15 @@ jsp
| 修改文件format | :set fileformat=unix |
| 删除 | dd 删除当前行 |
| 方向键 | h:左 j:下 k:上 l:右 |
+
+# 六、环境变量
+## 6.1 java 环境变量
+```shell
+export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk
+export PATH=$JAVA_HOME/bin:$PATH
+export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
+source ~/.bashrc
+# 验证
+java -version
+echo $JAVA_HOME
+```
diff --git a/work常用/Oracle常用.md b/work常用/Oracle常用.md
new file mode 100644
index 0000000..2b7146d
--- /dev/null
+++ b/work常用/Oracle常用.md
@@ -0,0 +1,159 @@
+# 一、元数据
+## 1.1 存储过程
++ 查看所有存储过程
+```sql
+select distinct name From user_source where type = 'PROCEDURE'
+```
++ 查看存储过程语句
+```sql
+SELECT text
+ FROM user_source
+ WHERE NAME = 'EXECUTE_JOB_FINANCE_SURVEY'
+ORDER BY line
+```
+## 1.2 表
++ 查看所有表
+```sql
+# 查询当前用户
+select * from user_tab_comments where table_type='TABLE';
+# 查询所有用户,当前用户必须有sysdba权限
+select * from all_tab_comments
+```
++ 查看表所有字段
+```sql
+SELECT
+ COLUMN_NAME,
+ DATA_TYPE
+FROM
+ user_tab_columns
+WHERE
+ table_name = 'DW_INFRASTRUCTURE_SURVEY'
+ORDER BY
+ COLUMN_ID ASC;
+```
++ 查看具体字段
+```sql
+SELECT
+ COLUMN_NAME,
+ DATA_TYPE,
+ DATA_LENGTH,
+ NULLABLE,
+ DEFAULT_LENGTH,
+ DATA_DEFAULT
+FROM
+ user_tab_columns
+WHERE
+ table_name = 'DW_INFRASTRUCTURE_SURVEY'
+ AND COLUMN_NAME = 'STATISTICAL_TIME'
+ORDER BY
+ COLUMN_ID ASC;
+```
++ 查看字段及注释
+```sql
+SELECT
+ b.COLUMN_NAME,
+ a.COMMENTS,
+ case when DATA_PRECISION is null and DATA_SCALE=0 and DATA_TYPE='NUMBER' then 'NUMBER(38,0)' when
+ DATA_PRECISION is not null and DATA_SCALE>0 then 'NUMBER('||DATA_PRECISION||','||DATA_SCALE||')' when
+ DATA_TYPE<>'DATE' then DATA_TYPE||'('||DATA_LENGTH||')' else DATA_TYPE end as DATA_TYPE_,
+ b.NULLABLE,
+ b.DATA_LENGTH,
+ b.DEFAULT_LENGTH,
+ b.DATA_DEFAULT,
+ DATA_PRECISION,
+ DATA_SCALE,
+ b.COLUMN_ID,
+ b.DATA_TYPE
+FROM
+ user_col_comments a
+ LEFT JOIN user_tab_columns b ON a.table_name = b.table_name
+ AND a.COLUMN_NAME = b.COLUMN_NAME
+WHERE
+ a.table_name = 'OA_VEHICLE_OIL_CHARGE'
+ORDER BY
+ b.COLUMN_ID ASC
+```
+
++ 修改表备注
+```
+# 表备注
+Comment on table DW_RE_PROGRESS_DETAIL is '项目进度-进度明细';
+# 字段备注
+comment on column Student.id is '学生id';
+comment on column Student.name is '学生姓名';
+```
+
+## 1.3 视图
++ 查询当前用户所有视图
+```sql
+select * from user_tab_comments where table_type='VIEW'
+```
+
++ 视图创建语句
+```sql
+select text from all_views where view_name='DW_SAFETY_RISK_LARG_QS_VW'
+```
+
+# 二、常用函数
+## 2.1 行转列、列转行
++ pivot
+```sql
+--行转列
+select *
+ from SalesList pivot(
+ max(salesNum) for shangPin in ( --shangPin 即要转成列的字段
+ '上衣' as 上衣, --max(salesNum) 此处必须为聚合函数,
+ '裤子' as 裤子, --in () 对要转成列的每一个值指定一个列名
+ '袜子' as 袜子,
+ '帽子' as 帽子
+ )
+ )
+ where 1 = 1; --这里可以写查询条件,没有可以直接不要where
+```
+
+```sql
+with hsb_stat as (select count(1) as num,'已完成重大污染物识别与评价项目' as item from SU_CHECK_ENVWATER_IMPL where STAT_ITEM_ID=110 and FINISH_STATUS=1 and PROJECT_ID=#{project_id}
+union
+select count(1) as num,'已完成环水保检测项目' as item from SU_CHECK_ENVWATER_IMPL where STAT_ITEM_ID=111 and FINISH_STATUS=1 and PROJECT_ID=#{project_id}
+union
+select count(1) as num,'已完成“三同时”落实情况项目' as item from SU_CHECK_ENVWATER_IMPL where STAT_ITEM_ID=112 and FINISH_STATUS=1 and PROJECT_ID=#{project_id}
+union
+select count(1) as num,'已完成环水保验收项目' as item from SU_CHECK_ENVWATER_IMPL where STAT_ITEM_ID=113 and FINISH_STATUS=1 and PROJECT_ID=#{project_id}
+union
+select nvl(sum(CHECK_COUNT),0) as num,'检查次数' as item from SU_CHECK_ENVWATER_IMPL where PROJECT_ID=#{project_id}
+union
+select nvl(sum(CHECK_ISSUE_COUNT),0) as num,'发现问题数' as item from SU_CHECK_ENVWATER_IMPL where PROJECT_ID=#{project_id}
+union
+select nvl(sum(RECTIFY_ISSUE_COUNT),0) as num,'整改完成' as item from SU_CHECK_ENVWATER_IMPL where PROJECT_ID=#{project_id})
+-- 重点
+select * from hsb_stat pivot(max(num) for item in (
+ '已完成“三同时”落实情况项目' as santongshi,
+ '已完成环水保检测项目' as hsjc,
+ '已完成环水保验收项目' as hsys,
+ '已完成重大污染物识别与评价项目' as zdwrw,
+ '检查次数' as jccs,
+ '整改完成' as zgwc,
+ '发现问题数' as fxwts
+))
+```
++ merge into 合并
+```sql
+MERGE INTO t1
+USING (SELECT id,name FROM t2) t2
+ON ( t1.id=t2.id)
+WHEN MATCHED THEN
+UPDATE SET T1.name= t2.name
+WHEN NOT MATCHED THEN
+INSERT (id,name) VALUES (t2.id,t2.name);
+
+
+# 结合with
+MERGE INTO #TEMP1 A
+USING (
+WITH SUMORDER AS
+ (SELECT PRODUCTID, SUM(AMOUNT) TOTAL
+ FROM ORDER GROUP BY PRODUCTID)
+ SELECT * FROM SUMORDER
+) B ON (A.PRODUCTID = B.PRODUCTID)
+WHEN MATCHED THEN UPDATE SET A.TOTAL = B.TOTAL;
+```
diff --git a/work常用/SqlServer常用.md b/work常用/SqlServer常用.md
new file mode 100644
index 0000000..618924a
--- /dev/null
+++ b/work常用/SqlServer常用.md
@@ -0,0 +1,147 @@
+# 一、统计
+## 1.1 数据量统计
+```sql
+exec sp_spaceused 表名;
+```
+
+## 1.2 批量统计
+本质是循环
+```sql
+exec sp_MSforeachtable "exec sp_spaceused '?'"
+```
+
+# 二、分页
+## 2.1 topN
+查看前5条
+```sql
+select TOP 5 *from T_ProductMain
+```
+
+## 2.2 分页查询
+要查询上述结果中第 7 条到第 9 条记录
+```sql
+select top 3 id from tablename
+where id not in (
+ select top 6 id from tablename
+)
+```
+m-1=6,m=7
+```sql
+select top (n-m+1) id from tablename
+where id not in (
+ select top m-1 id from tablename
+)
+```
+通过行号分页
+```sql
+SELECT * FROM
+(
+SELECT ROW_NUMBER()over(order by getdate()) AS rownumber,* from T_ProductMain
+) AS #a
+WHERE #a.rownumber>=1 AND #a.rownumber<=5
+```
+sqlserver 2012及以上版本支持
+```sql
+SELECT * FROM T_AttrPart
+ORDER BY PartNo offset 0 ROWS FETCH NEXT 10 ROWS ONLY
+```
+
+# 三、元数据
+## 3.1 查看所有表名
+```sql
+select top 10000
+ROW_NUMBER() OVER (ORDER BY a.name) AS No,
+a.name AS 表名,
+CONVERT(NVARCHAR(100),isnull(g.[value],'-')) AS 说明
+from
+sys.tables a left join sys.extended_properties g
+on (a.object_id = g.major_id AND g.minor_id = 0);
+```
+
+## 3.2 查看字段及类型
+```sql
+select column_name name,data_type type
+from information_schema.columns
+where table_name = 'T_AltAffix'
+```
+
+## 3.3 查看数据库版本
+```sql
+SELECT SERVERPROPERTY('productversion') as version_code, SERVERPROPERTY ('productlevel') as version_level, SERVERPROPERTY ('edition') as version_type
+```
+
+## 3.4 系统自带
++ 存储过程
+```sql
+dt_addtosourcecontrol
+dt_addtosourcecontrol_u
+dt_adduserobject
+dt_adduserobject_vcs
+dt_checkinobject
+dt_checkinobject_u
+dt_checkoutobject
+dt_checkoutobject_u
+dt_droppropertiesbyid
+dt_dropuserobjectbyid
+dt_generateansiname
+dt_getobjwithprop
+dt_getobjwithprop_u
+dt_getpropertiesbyid
+dt_getpropertiesbyid_u
+dt_getpropertiesbyid_vcs
+dt_getpropertiesbyid_vcs_u
+dt_isundersourcecontrol
+dt_isundersourcecontrol_u
+dt_removefromsourcecontrol
+dt_setpropertybyid
+dt_setpropertybyid_u
+dt_validateloginparams
+dt_validateloginparams_u
+dt_vcsenabled
+dt_verstamp006
+dt_verstamp007
+dt_whocheckedout
+dt_whocheckedout_u
+```
+
+## 3.5 查看字符集
+```sql
+SELECT COLLATIONPROPERTY('Chinese_PRC_Stroke_CI_AI_KS_WS', 'CodePage');
+```
+| 字符集编码 | 类型 |
+| ---------- | --------------- |
+| 936 | 简体中文GBK |
+| 950 | 繁体中文BIG5 |
+| 437 | 美国/加拿大英语 |
+| 932 | 日文 |
+| 949 | 韩文 |
+| 866 | 俄文 |
+| 65001 | unicode UFT-8 |
+
+## 3.6 查看数据占用大小
+```sql
+ SELECT a.name [文件名称] ,cast(a.[size]*1.0/128 as decimal(12,1)) AS [文件设置大小(MB)] ,
+ CAST( fileproperty(s.name,'SpaceUsed')/(8*16.0) AS DECIMAL(12,1)) AS [文件所占空间(MB)] ,
+ CAST( (fileproperty(s.name,'SpaceUsed')/(8*16.0))/(s.size/(8*16.0))*100.0 AS DECIMAL(12,1)) AS [所占空间率%] ,
+ CASE WHEN A.growth =0 THEN '文件大小固定,不会增长' ELSE '文件将自动增长' end [增长模式] ,CASE WHEN A.growth > 0 AND is_percent_growth = 0
+ THEN '增量为固定大小' WHEN A.growth > 0 AND is_percent_growth = 1 THEN '增量将用整数百分比表示' ELSE '文件大小固定,不会增长' END AS [增量模式] ,
+ CASE WHEN A.growth > 0 AND is_percent_growth = 0 THEN cast(cast(a.growth*1.0/128as decimal(12,0)) AS VARCHAR)+'MB'
+ WHEN A.growth > 0 AND is_percent_growth = 1 THEN cast(cast(a.growth AS decimal(12,0)) AS VARCHAR)+'%' ELSE '文件大小固定,不会增长' end AS [增长值(%或MB)] ,
+ a.physical_name AS [文件所在目录] ,a.type_desc AS [文件类型]
+FROM sys.database_files a
+INNER JOIN sys.sysfiles AS s ON a.[file_id]=s.fileid
+LEFT JOIN sys.dm_db_file_space_usage b ON a.[file_id]=b.[file_id] ORDER BY a.[type]
+```
+
+# 四、视图
++ 索引视图
+```sql
+# 创建索引视图,必须指定列名
+create view vwi_T_AttrPart WITH SCHEMABINDING as
+SELECT ROW_NUMBER()over(order by getdate()) AS rownumber,PartNo ,ParentNO ,PartName ,SectNo ,OrderNo ,SessionCode ,IsNew ,AltMainNo ,PayPartID ,EngineerTypeID1 ,EngineerTypeID2 ,EngineerTypeID3 ,EngineerID ,SectDetailID ,StartPile ,EndPile ,CenterPile ,Mileage ,PartTypeID ,PartRemarks from dbo.T_AttrPart
+
+# 添加索引列(报错:不能在索引或统计信息中使用 视图'dbo.vwi_T_AttrPart' 的列 'rownumber',也不能将该列用作分区键,因为它不具有确定性)
+CREATE UNIQUE CLUSTERED INDEX
+ ucidx_rownumber
+ON dbo.vwi_T_AttrPart(rownumber);
+```
\ No newline at end of file
diff --git a/work常用/docker 命令.md b/work常用/docker 命令.md
index 636ff73..596c74d 100644
--- a/work常用/docker 命令.md
+++ b/work常用/docker 命令.md
@@ -125,6 +125,8 @@ docker exec -i -t mynginx /bin/bash
通过 exec 命令对指定的容器执行 bash:
```
docker exec -it 9df70f9a0714 /bin/bash
+# root 权限进入
+docker exec -it -u root 9df70f9a0714 bash
```
# 二、容器rootfs命令
diff --git a/work常用/java 并发任务编排.md b/work常用/java 并发任务编排.md
new file mode 100644
index 0000000..ce37845
--- /dev/null
+++ b/work常用/java 并发任务编排.md
@@ -0,0 +1 @@
+[Gobrs-Async](https://async.sizegang.cn/)
\ No newline at end of file
diff --git a/work常用/pip 命令.md b/work常用/pip 命令.md
new file mode 100644
index 0000000..df8702c
--- /dev/null
+++ b/work常用/pip 命令.md
@@ -0,0 +1,5 @@
+# 一、 镜像加速
+```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常用/常用linux命令.md b/work常用/常用linux命令.md
deleted file mode 100644
index 29d043a..0000000
--- a/work常用/常用linux命令.md
+++ /dev/null
@@ -1,107 +0,0 @@
-* 显示前N个
-
- ```
- ll -lht|head -n 20
- ```
-
-* 压缩命令过长
-
- ```shell
- find ./ -name '*' -print |zip files -@
- ```
-
-* 合并文件
-
- ```sql
- cat *.txt > target.txt
- ```
-
-* 配置定时任务
-
- ```sql
- root 用户
- vim /etc/crontab
-
- SHELL=/bin/bash
- PATH=/sbin:/bin:/usr/sbin:/usr/bin
- MAILTO=root
-
- # For details see man 4 crontabs
-
- # Example of job definition:
- # .---------------- minute (0 - 59)
- # | .------------- hour (0 - 23)
- # | | .---------- day of month (1 - 31)
- # | | | .------- month (1 - 12) OR jan,feb,mar,apr ...
- # | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
- # | | | | |
- # * * * * * user-name command to be executed
- 20 04 * * * root reboot
-
- # 加载配置
- crontab /etc/crontab
-
- # 重启crontab服务
- systemctl restart crond.service
- ```
-
-* 查看上一次启动
-
- ```sql
- who -b
- ```
-
-* 切分文件
-
- ```sql
- # 按大小切分
- split -b 100m xxxx
- # 按行切分
- split -l xxxx
- # 设置拆分后文件名,指定数字后缀
- split -b 100m -d xxxx xxxx_part_
- ```
-
-* 显示文件大小
-
- ```sql
- du -sh xxxx
- ```
-
-* grep
-
- ```sql
- # 高亮查找结果
- grep --color "test" catalina.out
- # 显示在第几行
- grep -n test catalina.out
- ```
-
-* zip
-
- ```shell
- # 压缩
- zip -r ./xxx.zip ./*
- # 解压
- unzip xxx.zip
- # 查看压缩文件内容
- unzip -v xxx.zip
- # 从zip中删除xxx.txt文件
- zip xxx.zip -d xxx.txt
- ```
-* 软链接
-
- ```shell
- ln -s 源文件名 软链接文件名
- ```
-
-* 查看端口占用情况
-
- ```shell
- # 查看所有
- lsof -i
- # 查看指定端口
- lsof -i:8080
- # 查看文件进程
- lsof xxx.txt
- ```
diff --git a/工作日志/ATD/202303/2023-03-27.md b/工作日志/ATD/202303/2023-03-27.md
new file mode 100644
index 0000000..c9275b4
--- /dev/null
+++ b/工作日志/ATD/202303/2023-03-27.md
@@ -0,0 +1,3 @@
+1. 了解计量支付前期数据前期方案及工作,整理方案中存在的问题
+2. 整理新版数据前期思路并与董工讨论
+3. 编写SqlServer数据量统计代码对旧库数据统计并输出文档
\ No newline at end of file
diff --git a/工作日志/ATD/202303/2023-03-28.md b/工作日志/ATD/202303/2023-03-28.md
new file mode 100644
index 0000000..9a81868
--- /dev/null
+++ b/工作日志/ATD/202303/2023-03-28.md
@@ -0,0 +1,10 @@
+计划:
+- [x] 从网上整理数据迁移方案模板、chatGpt协助
+- [x] 梳理SqlServer迁移至oracle可能出现的问题(表空间、字符集、字段类型、函数、触发器等)
+- [ ] 搭建dataX、dataX-web测试环境
+- [x] 编写数据迁移方案-技术篇(总体分为技术篇与业务篇)
+
+工作日志:
+1. 编写数据迁移方案
+ 共6个模块,完成1~3模块
+2. 思路验证
\ No newline at end of file
diff --git a/工作日志/ATD/202303/2023-03-29.md b/工作日志/ATD/202303/2023-03-29.md
new file mode 100644
index 0000000..cafde51
--- /dev/null
+++ b/工作日志/ATD/202303/2023-03-29.md
@@ -0,0 +1,11 @@
+计划:
+- [ ] 搭建dataX、dataX-web测试环境
+- [x] 测试大表range分页方案
+- [x] 数据一致性校验工具设计
+- [x] 完成第一版数据迁移方案编写
+
+工作日志:
+一、数据迁移方案
+1. 对分表策略进行测试,分别测试视图、索引视图分表。
+2. 完善方案,新增质量要求、决策依据、未来规划模块
+3. 虚拟机搭建dataX测试环境
\ No newline at end of file
diff --git a/工作日志/ATD/202303/2023-03-30.md b/工作日志/ATD/202303/2023-03-30.md
new file mode 100644
index 0000000..c9999ea
--- /dev/null
+++ b/工作日志/ATD/202303/2023-03-30.md
@@ -0,0 +1,9 @@
+计划:
+云南交发省级事权高速公路建设项目综合管理信息平台-
+- [x] 筹融资及资金使用SQL修改
+- [x] 质量安全SQL修改
+
+工作日志:
+1. 勐醒至江城至绿春高速公路--->筹融资及资金使用--->资金到位及投资完成界面查询SQL(修复月份重复bug)
+2. 勐醒至江城至绿春高速公路--->质量安全--->监理检验 (修复年份SQL-bug)
+3. 发现勐醒至江城至绿春高速公路--->筹融资及资金使用--->资金到位与投资完成情况对比-->年度数据为0 bug,经排查后端接口正常,已提交前端处理。
\ No newline at end of file
diff --git a/工作日志/ATD/202303/2023-03-31.md b/工作日志/ATD/202303/2023-03-31.md
new file mode 100644
index 0000000..ef3f62e
--- /dev/null
+++ b/工作日志/ATD/202303/2023-03-31.md
@@ -0,0 +1,10 @@
+计划:
+一、计量支付、投融资系统数据迁移
+- [ ] 梳理任务清单
+- [ ] 填写风险评估
+- [ ] 数据探查工具开发
+
+工作日志:
+1. 数据迁移方案评审(参与人:公司领导)
+2. 数据探查工具开发
+3. 协助罗丹排查源表及汇总表同步问题,发现存储过程执行异常,但是无法排查异常原因。
\ No newline at end of file
diff --git a/工作日志/ATD/202304/2023-04-03.md b/工作日志/ATD/202304/2023-04-03.md
new file mode 100644
index 0000000..352af74
--- /dev/null
+++ b/工作日志/ATD/202304/2023-04-03.md
@@ -0,0 +1,45 @@
+计划:
+一、事权
+- [ ] 梳理事权项目涉及到的表、视图、存储过程并整理出完整的数据模型(方式方法不限)
+ - [x] 安装datahub对库进行扫描---->元数据、数据血缘、数据流向
+ - [ ] 整理事权高速公路建设项目综合管理信息平台查询SQL--->数据血缘
+ - [ ] 修改存储过程逻辑:1.将删除后插入修改为:状态位修改插入或查询插入到临时表再插入新数据 2.增加日志表记录执行过程
+
+
+工作日志:
+1. WSL-docker 搭建datahub对事权库进行扫描
+2. 对照事权-->数据填报采集系统及数据库设计文档梳理填报用到的表
+3. 使用pdman对事权库逆向出ODS表89张,与数据库设计文档提供的67张有差异,其余22张表用途不明
+4. 清除合同管理、征地拆迁测试数据
+```sql
+-- 合同管理
+-- 合同签订情况总览、合同支付情况
+select * from DW_CONTRACT where rownum<=10;
+
+create table DW_CONTRACT_bak_zr_20230403 as select * from DW_CONTRACT;
+
+-- truncate table DW_CONTRACT;
+
+-- 征地拆迁
+-- 项目征地拆迁进度及费用支付情况 DW_LAND_DETAIL、DW_MAIN_DIMENSION
+select * from DW_LAND_DETAIL where rownum<=10;
+
+create table DW_LAND_DETAIL_bak_zr_20230403 as select * from DW_LAND_DETAIL;
+
+-- truncate table DW_LAND_DETAIL;
+
+select * from DW_MAIN_DIMENSION where rownum<=10;
+
+create table DW_MAIN_DIMENSION_bak_zr_20230403 as select * from DW_MAIN_DIMENSION;
+
+-- truncate table DW_MAIN_DIMENSION;
+
+-- 工程变更,指定project_ID
+delete from dw_change where ID_ in (
+select ID_ from dw_change where MAIN_ID_ in (
+select id from dw_main_dimension where PROJECT_ID in (600000000000000138))
+)
+-- 工程变更台账
+delete from ods_change_account where PROJECT_ID in (600000000000000138)
+```
+5. 手动调用存储过程P_DW_MAIN_DIMENSION、P_DW_PROJECT_PROGRESS_LIST补充dw_main_dimension、dw_progress_complete表数据
\ No newline at end of file
diff --git a/工作日志/ATD/202304/2023-04-04.md b/工作日志/ATD/202304/2023-04-04.md
new file mode 100644
index 0000000..d73ae8e
--- /dev/null
+++ b/工作日志/ATD/202304/2023-04-04.md
@@ -0,0 +1,12 @@
+
+问题:
+一、通过逆向分析事权数据库得到89张ODS表,已知70张,未知19张,如何分析出未知表的用途与数据流?
+方法:1. 分析填报接口SQL 2. 分析视图 3. 将未知表整理出来交给其他人(熟悉业务)
+
+二、如何描述表与表、表与视图、视图与视图、表与存储过程、视图与存储过程的关系及数据流向?
+要求:1. 字段级别的血缘(自动分析、手动录入) 2. 支持搜索
+
+计划:
+- [x] 事权ODS表梳理及建模(共89张,已知70张)
+- [ ] 分析数据库视图及存储过程,梳理数据血缘关系(分析剩余22张ODS表用途)
+- [ ] 梳理填报接口,并整理数据插入逻辑及目标表(ODS)
\ No newline at end of file
diff --git a/工作日志/ATD/202304/2023-04-06.md b/工作日志/ATD/202304/2023-04-06.md
new file mode 100644
index 0000000..c658e47
--- /dev/null
+++ b/工作日志/ATD/202304/2023-04-06.md
@@ -0,0 +1,8 @@
+计划:
+事权DW表重写
+- [ ] 编写代码递归扫描存储过程,找出需要处理的DW表并形成台账
+- [ ] 根据扫描结果绘制数据血缘关系图(表级别)
+- [ ] 梳理前端查询接口反推DW表-->反推存储过程-->ODS表--->视图替换
+工作日志:
+1. 梳理事权统计前端接口,并根据接口回溯代码,代码回溯DW表,DW表回溯存储过程
+2. 协助罗丹搭建代码SpringCloud环境
\ No newline at end of file
diff --git a/工作日志/ATD/202304/2023-04-07.md b/工作日志/ATD/202304/2023-04-07.md
new file mode 100644
index 0000000..82a2bb6
--- /dev/null
+++ b/工作日志/ATD/202304/2023-04-07.md
@@ -0,0 +1,9 @@
+计划:
+上午:
+- [x] 根据已梳理ODS表使用pdManer工具绘制ER图
+- [x] 整理ODS表重建视图思路
+下午:
+- [ ] 数据血缘工具功能点及流程图
+- [ ] 测试Neo4j 节点查询,学习并整理常用查询语句
+
+工作日志:
diff --git a/工作日志/ATD/202304/2023-04-10.md b/工作日志/ATD/202304/2023-04-10.md
new file mode 100644
index 0000000..baeb3b3
--- /dev/null
+++ b/工作日志/ATD/202304/2023-04-10.md
@@ -0,0 +1,18 @@
+计划:
+一、数据迁移
+- [x] 梳理完整任务计划表并进行时间评估(核对新旧系统表结构除外)
+二、数据血缘
+- [ ] 测试数据血缘管理,完成元数据提取模块
+
+工作日志:
+数据迁移:
+1. 梳理完整任务计划表并进行时间评估
+2. 新旧表字段核对思路:
+ 以计量支付为例:
+ 从系统功能反推数据流
+ 1、拆分新版计量支付功能点
+ 2、通过debug回溯功能点与新表对应关系
+ 3、人工分析旧表与新表字段关系
+ 4、搭建测试环境,模拟从旧表抽数到新表
+ 5、通过步骤1、2梳理的功能与表对应关系进行功能性验证。如果功能不正常需修改步骤4产出脚本。
+3. 搭建dataX、dataX-web集群,并编写安装维护手册(缺少集群配置)
diff --git a/工作日志/ATD/202304/2023-04-11.md b/工作日志/ATD/202304/2023-04-11.md
new file mode 100644
index 0000000..559e9da
--- /dev/null
+++ b/工作日志/ATD/202304/2023-04-11.md
@@ -0,0 +1,17 @@
+计划:
+数据迁移
+- [x] 在windows server上安装sqlServer数据库并将计量支付历史数据导入
+- [x] 新Linux服务器搭建worker节点,并完成dataX双节点部署,完成后完善ETL安装维护手册
+- [ ] 梳理计量支付用户、部门相关表结构
+
+工作日志:
+一、数据迁移
+1. 同步基投库到1.2 sqlserver
+2. 对基投库进行逆向建模
+3. 安装dataX执行器并进行测试,目前已搭建2节点ETL小集群。ETL集群安装维护文档编写完毕。
+二、事权
+1. 修改多项目危大工程风险分级管控情况
+2. 修改多项目各项目危大工程风险分级管控情况
+3. 单项目危大工程风险分级管控情况
+4. 单项目月度危大工程风险分级管控情况
+上述均新增 已评审危大工程专项方案数、已评审危大工程专项数占比2个字段
diff --git a/工作日志/ATD/202304/2023-04-12.md b/工作日志/ATD/202304/2023-04-12.md
new file mode 100644
index 0000000..b3c9ebc
--- /dev/null
+++ b/工作日志/ATD/202304/2023-04-12.md
@@ -0,0 +1,66 @@
+数据迁移:
+- [ ] 梳理RoadInfoMgrYNJT表结构
+
+工作日志:
+一、事权
+1. 新增环水保多项目及单项目汇总、详情统计接口共4个
+2. 质量安全->风险分级管控->危大工程分级管控情况、各项目危大工程管控情况增加已评审专项、未评审专项统计字段
+3. 清理质量安全数据
+```sql
+-- 物理表
+-- 红线问题隐患排查治理情况(过程问题隐患排查)
+create table ODS_SAFETY_PROBLEM_RED_DETAIL_bak_20230412 as select * from ODS_SAFETY_PROBLEM_RED_DETAIL;
+truncate table ODS_SAFETY_PROBLEM_RED_DETAIL;
+
+-- ODS_SAFETY_TRAIN_DETIAL 安全教育培训(明细表)
+create table ODS_SAFETY_TRAIN_DETIAL_bak_20230412 as select * from ODS_SAFETY_TRAIN_DETIAL;
+truncate table ODS_SAFETY_TRAIN_DETIAL;
+
+-- ODS_SAFETY_DRILL_DETAIL 应急预案与演练
+create table ODS_SAFETY_DRILL_DETAIL_bak_20230412 as select * from ODS_SAFETY_DRILL_DETAIL;
+truncate table ODS_SAFETY_DRILL_DETAIL;
+
+
+-- ODS_SAFETY_PROBLEM_DETAIL 非红线问题隐患排查治理情况(过程问题隐患排查)
+create table ODS_SAFETY_PROBLEM_DETAIL_bak_20230412 as select * from ODS_SAFETY_PROBLEM_DETAIL;
+truncate table ODS_SAFETY_PROBLEM_DETAIL;
+
+
+-- ODS_SAFETY_RISK_LEVEL_DETAIL 安全风险分级管控情况(风险分级管控)
+create table ODS_SAFETY_RISK_LEVEL_DETAIL_bak_20230412 as select * from ODS_SAFETY_RISK_LEVEL_DETAIL;
+truncate table ODS_SAFETY_RISK_LEVEL_DETAIL;
+
+
+-- ODS_SAFETY_RISK_LARG_DETAIL 危险性较大工程风险管控情况
+create table ODS_SAFETY_RISK_LARG_DETAIL_bak_20230412 as select * from ODS_SAFETY_RISK_LARG_DETAIL;
+truncate table ODS_SAFETY_RISK_LARG_DETAIL;
+
+-- ODS_SAFETY_CONTR_DETAIL 平安工地考核
+create table ODS_SAFETY_CONTR_DETAIL_bak_20230412 as select * from ODS_SAFETY_CONTR_DETAIL;
+truncate table ODS_SAFETY_CONTR_DETAIL;
+
+-- ODS_SAFETY_FEE_COST_DETAIL 安全生产费投入情况(安全生产费用)
+create table ODS_SAFETY_FEE_COST_DETAIL_bak_20230412 as select * from ODS_SAFETY_FEE_COST_DETAIL;
+truncate table ODS_SAFETY_FEE_COST_DETAIL;
+
+-- 交工检测
+create table ODS_HANDOVER_INSPECTION_bak_20230412 as select * from ODS_HANDOVER_INSPECTION;
+truncate table ODS_HANDOVER_INSPECTION;
+
+create table ODS_HANDOVER_INSPECTION_DETAIL_bak_20230412 as select * from ODS_HANDOVER_INSPECTION_DETAIL;
+truncate table ODS_HANDOVER_INSPECTION_DETAIL;
+
+-- 质量问题排查
+create table ODS_QUALITY_PROBLEM_RED_DETAIL_bak_20230412 as select * from ODS_QUALITY_PROBLEM_RED_DETAIL;
+truncate table ODS_QUALITY_PROBLEM_RED_DETAIL;
+
+create table ODS_QUALITY_PROBLEM_NO_RED_DETAIL_bak_20230412 as select * from ODS_QUALITY_PROBLEM_NO_RED_DETAIL;
+truncate table ODS_QUALITY_PROBLEM_NO_RED_DETAIL;
+
+-- 中间表
+truncate table HZ_AQ_ZTXX;
+truncate table HZ_AQ_PAGDZT;
+truncate table HZ_AQ_PAGDZT;
+truncate table HZ_AQ_SCF;
+truncate table HZ_ZL_ZTQK;
+```
\ No newline at end of file
diff --git a/工作日志/ATD/202304/2023-04-13.md b/工作日志/ATD/202304/2023-04-13.md
new file mode 100644
index 0000000..a35ad17
--- /dev/null
+++ b/工作日志/ATD/202304/2023-04-13.md
@@ -0,0 +1,9 @@
+计划:
+一、数据迁移
+- [ ] 梳理RoadInfoMgrYNJT表结构
+- [ ] 对照计量支付界面梳理新表
+
+工作日志:
+事权:
+1. 对接段,讨论事权中间表处理方式
+2. 梳理目前统计层接口使用到的汇总表
\ No newline at end of file
diff --git a/工作日志/ATD/202304/2023-04-14.md b/工作日志/ATD/202304/2023-04-14.md
new file mode 100644
index 0000000..2333eef
--- /dev/null
+++ b/工作日志/ATD/202304/2023-04-14.md
@@ -0,0 +1,9 @@
+计划:
+一、事权
+- [x] 完成统计层接口使用到的汇总表梳理
+
+工作日志:
+一、事权:
+1. 新增环水保多项目明细跳转单项目明细查询接口
+2. 完成统计层接口使用到的汇总表梳理
+3. 环水保多项目排序规则修改
\ No newline at end of file
diff --git a/工作日志/ATD/202304/2023-04-15.md b/工作日志/ATD/202304/2023-04-15.md
new file mode 100644
index 0000000..9a7eb86
--- /dev/null
+++ b/工作日志/ATD/202304/2023-04-15.md
@@ -0,0 +1,4 @@
+计划:
+一、事权
+- [ ] bugfix
+- [ ] 梳理事权统计表与ODS表数据流向
\ No newline at end of file
diff --git a/工作日志/ATD/202304/2023-04-17.md b/工作日志/ATD/202304/2023-04-17.md
new file mode 100644
index 0000000..2979010
--- /dev/null
+++ b/工作日志/ATD/202304/2023-04-17.md
@@ -0,0 +1,11 @@
+计划:
+一、事权
+- [x] 梳理征地拆迁、合同管理、质量安全环水保汇总表与原始表关系
+- [ ] 存储过程执行语句分析功能开发
+
+工作日志:
+一、事权:
+1. 完成项目进度、质量安全环水保、合同管理、征地拆迁、工程变更汇总表与原始表关系梳理
+2. 单项目-->征地拆迁问题明细去重
+3. 单项目-->环水保落实情况接口新增OID
+4. 多项目-->质量安全环水保-->风险分级管控-->危大工程分级管控情况、各项目危大工程管控情况新增未评审方案占比数
\ No newline at end of file
diff --git a/工作日志/ATD/202304/2023-04-18.md b/工作日志/ATD/202304/2023-04-18.md
new file mode 100644
index 0000000..6829e1e
--- /dev/null
+++ b/工作日志/ATD/202304/2023-04-18.md
@@ -0,0 +1,9 @@
+计划:
+一、事权:
+- [x] 完成总体概况、基建程序、筹融资及资金使用汇总表与原始表关系梳理
+
+工作日志:
+一、事权
+1. 完成汇总表数据血缘关系梳理
+2. 整理梳理过程中发现的问题
+3. 编写征地拆迁、质量安全汇总表数据清理脚本
\ No newline at end of file
diff --git a/工作日志/ATD/202304/2023-04-19.md b/工作日志/ATD/202304/2023-04-19.md
new file mode 100644
index 0000000..993a451
--- /dev/null
+++ b/工作日志/ATD/202304/2023-04-19.md
@@ -0,0 +1,9 @@
+计划:
+一、事权
+- [ ] 汇总表问题梳理及改造评审
+- [ ] 梳理昭通高速企业智慧办公系统中HR部分设计及字段不合理情况
+
+工作日志:
+一、昭通OA
+1. 梳理昭通OA-HR管理模块问题点
+2. 梳理HR管理模块-人员管理流程图并进行评审
\ No newline at end of file
diff --git a/工作日志/ATD/202304/2023-04-20.md b/工作日志/ATD/202304/2023-04-20.md
new file mode 100644
index 0000000..efe23ff
--- /dev/null
+++ b/工作日志/ATD/202304/2023-04-20.md
@@ -0,0 +1,13 @@
+计划:
+一、昭通OA
+- [x] 根据19号评审结果对HR-人员管理流程进行细化
+- [x] 组织二次评审
+
+工作日志
+一、昭通OA
+1. HR-人员管理流程细化
+2. 增加人员合同管理模块
+3. 根据评审意见进行修改:
+ 1. 修改退休及返聘流程
+ 2. 增加终止合同流程
+ 3. 加入合同状态变化
\ No newline at end of file
diff --git a/工作日志/ATD/202304/2023-04-21.md b/工作日志/ATD/202304/2023-04-21.md
new file mode 100644
index 0000000..e99f27e
--- /dev/null
+++ b/工作日志/ATD/202304/2023-04-21.md
@@ -0,0 +1,7 @@
+计划:
+一、昭通OA
+- [ ] 根据客户给出工资计算表及现有OA系统,梳理并设计薪资管理模块
+
+工作日志:
+一、昭通OA
+1. 对照蓝凌OA,HR模块梳理并补充现有HR模块
\ No newline at end of file
diff --git a/工作日志/ATD/202304/2023-04-23.md b/工作日志/ATD/202304/2023-04-23.md
new file mode 100644
index 0000000..a87c9d8
--- /dev/null
+++ b/工作日志/ATD/202304/2023-04-23.md
@@ -0,0 +1,9 @@
+计划:
+一、事权
+ - [ ] 使用pdman 梳理DW表到ODS表字段级别血缘关系
+
+
+工作日志:
+一、事权
+1. 搭建事权ODS-DW表同步框架
+2. 编写周报
\ No newline at end of file
diff --git a/工作日志/ATD/202304/2023-04-24.md b/工作日志/ATD/202304/2023-04-24.md
new file mode 100644
index 0000000..ea61317
--- /dev/null
+++ b/工作日志/ATD/202304/2023-04-24.md
@@ -0,0 +1,9 @@
+计划:
+一、事权
+- [x] 项目进度-->合理性分析ODS到DW层数据同步
+
+工作日志:
+一、事权
+1. 项目进度-->控制性工程进度重写DW_RE_PROGRESS_DETAIL表
+二、其他
+1. 茶话会
\ No newline at end of file
diff --git a/工作日志/ATD/202304/2023-04-25.md b/工作日志/ATD/202304/2023-04-25.md
new file mode 100644
index 0000000..5e08a7e
--- /dev/null
+++ b/工作日志/ATD/202304/2023-04-25.md
@@ -0,0 +1,12 @@
+计划:
+一、事权
+- [ ] 开发DW_RE_PROGRESS_DETAIL 接口(按年、按月刷新数据)
+- [ ] 部署到测试服务器
+- [ ] 对接前端
+- [ ] 修改控制性工程进度界面查询接口对接DW_RE_PROGRESS_DETAIL表
+
+工作日志:
+一、事权
+1. 排查DW_RE_PROGRESS_DETAIL表数据不准确问题
+二、昭通OA
+1. 梳理车辆管理建表需求,对照蓝凌OA、泛微
\ No newline at end of file
diff --git a/工作日志/ATD/202304/2023-04-26.md b/工作日志/ATD/202304/2023-04-26.md
new file mode 100644
index 0000000..7304841
--- /dev/null
+++ b/工作日志/ATD/202304/2023-04-26.md
@@ -0,0 +1,7 @@
+计划:
+一、昭通OA
+1. 对照需求及第三方OA梳理车辆管理表结构
+
+工作日志:
+一、昭通OA
+1. 新建车辆管理模块11张表并进行评审
\ No newline at end of file
diff --git a/工作日志/ATD/202304/2023-04-27.md b/工作日志/ATD/202304/2023-04-27.md
new file mode 100644
index 0000000..600e0c7
--- /dev/null
+++ b/工作日志/ATD/202304/2023-04-27.md
@@ -0,0 +1,7 @@
+计划:
+一、昭通OA
+- [ ] 完成车辆模块建表,并输出表结构文档提交昭通团队二次评审
+- [ ] 确定代码集定义及需新增的字段
+
+二、事权
+1.
\ No newline at end of file
diff --git a/工作日志/ATD/环境/项目地址.md b/工作日志/ATD/环境/项目地址.md
new file mode 100644
index 0000000..1801fdc
--- /dev/null
+++ b/工作日志/ATD/环境/项目地址.md
@@ -0,0 +1,48 @@
+[云南交发省级事权高速公路建设项目综合管理信息平台](http://172.16.3.244/home) ---未上线
+admin/admin@2022
+
+FINANCE_ACOUNT_DW --- 到位资金金额
+FINANCE_ACOUNT_DW_RATIO --资金到位率
+FINANCE_TOTAL --累计计划到位金额
+INVEST_ACOUNT_DW --- 投资到位金额
+INVEST_ACOUNT_DW_RATIO ----投资到位率
+INVEST_TOTAL --- 计划投资金额
+MY --- 年月
+
+
+[软件研发与服务云平台]([软件研发和服务云平台](http://172.16.3.219/atdplatform/)) ---正式环境
+Zourui/12345
+
+
+[交通工程建设项目管理平台(计量支付)](http://172.16.3.145/)
+admin/12345
+
+http://220.165.247.94:3227/index.php/apps/files/?dir=/20230403&openfile=34168
+邹瑞
+zhourui
+zhourui12345678
+
+[dataX-web](http://172.16.3.145:9527/index.html)
+admin/123456
+dataX-web使用的mysql 172.16.3.145:3306 root/1qaz@1234
+
+[禅道](http://220.165.247.68:29980/zentao)
+zourui/zourui#123
+
+[昭通高速企业智慧办公系统-测试环境](http://172.16.3.220/home)
+admin/Atd@2021
+
+[昭通高速企业智慧办公系统](http://172.16.3.221/home)
+admin/Atd@2021
+
+代码集: http://172.16.3.219/
+zour / dasiwoyebushuo
+
+SVN:http://172.16.2.2/svn/paas/microservice/server/other/xmgl-sqddt
+zourui/zourui
+
+
+泛微 :访问地址:https://enterprise.e-cology.com.cn
+登录账号:demoano | 登录密码:90683
+
+蓝凌 :18787010990
diff --git a/开发计划/tiny-datahub/开发计划.md b/开发计划/tiny-datahub/开发计划.md
new file mode 100644
index 0000000..3dbd126
--- /dev/null
+++ b/开发计划/tiny-datahub/开发计划.md
@@ -0,0 +1,17 @@
+## 一、第一阶段
+### 1. 视图、存储过程逆向分析并构建关系图
+已完成
+### 2. 定时构建
+1. 通过apscheduler实现定时任务
+
+## 二、第二阶段
+### 1. 数据库版本差异扫描及版本管理
+### 2. 数据比对工具
+### 3. 数据探查
+### 4. 表结构生成(支持不同类型数据库互转)
+### 5. FastApi 开发http查询接口
+
+## 三、第三阶段
+### 1. 元查询、展示
+### 2. 字段级别血缘关系分析实现
+### 3. 字段级别、表级别血缘关系展示
\ No newline at end of file
diff --git a/日常学习/中间件/redis/spring-boot-redis.md b/日常学习/中间件/redis/spring-boot-redis.md
new file mode 100644
index 0000000..1d516e3
--- /dev/null
+++ b/日常学习/中间件/redis/spring-boot-redis.md
@@ -0,0 +1,149 @@
+# 一、POM
+```xml
+
+ org.springframework.boot
+ spring-boot-starter-data-redis
+
+```
+
+# 二、使用注解
+
++ 配置redis
+
+```java
+//开启基于注解的配置
+@EnableCaching
+@Configuration
+public class RedisConfig {
+
+ /**
+ * redis数据库自定义key的命名空间
+ */
+ public static final String REDIS_DATABASE_KEY="tmall_springboot";
+ public static final String REDIS_CATEGORY_KEY="category";
+ public static final String REDIS_ORDER_ITEM_KEY="orderItem";
+ public static final String REDIS_ORDER_KEY="order";
+ public static final String REDIS_PRODUCT_KEY="product";
+ public static final String REDIS_PROPERTY_KEY="property";
+ public static final String REDIS_PROPERTY_VALUE_KEY="propertyValue";
+ public static final String REDIS_REVIEW_KEY="review";
+ public static final String REDIS_USER_KEY="user";
+ public static final String REDIS_PRODUCT_IMAGE_KEY="productImage";
+
+
+ /**
+ * 自动配置的redisTemplate,存在序列化问题,会导致存入redis数据库中的数据,不容易看清所以需要自己配置
+ */
+ /**
+ * 配置自定义redisTemplate
+ * @return
+ */
+ @Bean
+ RedisTemplate redisTemplate(RedisConnectionFactory redisConnectionFactory,RedisSerializer redisSerializer) {
+
+ RedisTemplate redisTemplate = new RedisTemplate<>();
+
+ redisTemplate.setConnectionFactory(redisConnectionFactory);
+
+ // 设置键(key)的序列化采用StringRedisSerializer。
+ redisTemplate.setKeySerializer(new StringRedisSerializer());
+ // 设置值(value)的序列化采用Jackson2JsonRedisSerializer。
+ redisTemplate.setValueSerializer(redisSerializer);
+ // 设置hashKey的序列化
+ redisTemplate.setHashKeySerializer(new StringRedisSerializer());
+ redisTemplate.setHashValueSerializer(redisSerializer);
+ redisTemplate.afterPropertiesSet();
+ return redisTemplate;
+ }
+
+ /**
+ * 配置json序列化器(我们使用jackson的序列化器)
+ */
+ @Bean
+ public RedisSerializer redisSerializer(){
+
+ Jackson2JsonRedisSerializer jackson2JsonRedisSerializer = new Jackson2JsonRedisSerializer(Object.class);
+ ObjectMapper objectMapper = new ObjectMapper();
+ objectMapper.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY);
+ objectMapper.enableDefaultTyping(ObjectMapper.DefaultTyping.NON_FINAL);
+ jackson2JsonRedisSerializer.setObjectMapper(objectMapper);
+
+ return jackson2JsonRedisSerializer;
+ }
+
+ /**
+ * 配置redis缓存管理器,管理注解版的缓存
+ */
+ @Bean
+ public RedisCacheManager redisCacheManager(RedisConnectionFactory redisConnectionFactory,RedisSerializer redisSerializer) {
+ RedisCacheWriter redisCacheWriter = RedisCacheWriter.nonLockingRedisCacheWriter(redisConnectionFactory);
+ //设置Redis缓存有效期为10分钟
+ RedisCacheConfiguration redisCacheConfiguration = RedisCacheConfiguration.defaultCacheConfig()
+ .serializeValuesWith(RedisSerializationContext.SerializationPair.fromSerializer(redisSerializer))
+ //ttl
+ .entryTtl(Duration.ofHours(2));
+ return new RedisCacheManager(redisCacheWriter, redisCacheConfiguration);
+ }
+
+}
+
+```
+
+
++ @Cacheable
+先从redis数据库中 按照当前key查找,有没有。如果redis中有,是不会走当前该方法的,如果没有再调用方法返回结果,如果结果不为null将其缓存到数据库中(一般用于find)
+```java
+@Cacheable(value = RedisConfig.REDIS_DATABASE_KEY, key = "'user-'+#p0", unless = "#result==null")
+ @Override
+ public User getUserByName(String name) {
+ UserExample example = new UserExample();
+ example.createCriteria().andNameEqualTo(name);
+ List users = userMapper.selectByExample(example);
+ if(users.size()==0){
+ return null;
+ }
+ return users.get(0);
+ }
+
+```
+
+value:key的一部分(前缀),主要是指明数据放在那个key范围
+key:key的主体,#p0:指明取出第一个参数 #p1:指明取出第二个参数。。。依此类推
+unless:结果为true,将当前的数据结果不保存到redis,#result:指明取出数据库中返回的结果
+condition 结果如果为true,将当前数据保存到redis
+
++ @CachePut
+主要用于向数据库中插入数据,向数据中插入数据的时候,会将返回的int类型,放入redis中缓存,当然是有选择性的(一般用于insert)
+
+```java
+@CachePut(value = RedisConfig.REDIS_DATABASE_KEY,key = "'user-insert-'+#p0.id",unless = "#result==0")
+ @Override
+ public int insert(User record) {
+ return userMapper.insert(record);
+ }
+
+```
+
+value:key的一部分,命名空间
+key:指定key的名称
+unless:满足条件,则不将返回的结果放入redis
+condition: 满足条件,则将返回的结果放入redis
+
++ @CacheEvict
+满足条件则移除当前key在redis中的数据(一般用于update/delete)
+```java
+@CacheEvict(value = RedisConfig.REDIS_DATABASE_KEY,key = "'user-'+#p0.id",condition = "#result==1")
+ @Override
+ public int updateByPrimaryKey(User record) {
+ return userMapper.updateByPrimaryKey(record);
+ }
+
+```
+value: 同理命名空间
+key: key名称
+condition:满足什么条件从缓存中移除指定的key
+AllEntries:true/false 是否移除命名空间下的所有key
+
+# 三、硬编码
+
+使用StringRedisTemplate
\ No newline at end of file
diff --git a/日常学习/数据同步/DataX-web/在linux上安装.md b/日常学习/数据同步/DataX-web/在linux上安装.md
new file mode 100644
index 0000000..feb152a
--- /dev/null
+++ b/日常学习/数据同步/DataX-web/在linux上安装.md
@@ -0,0 +1,6 @@
+# 一、安装
+1. 需要先安装datax
+
+# 二、测试及使用
+
+# 三、节点扩容(集群搭建)
\ No newline at end of file
diff --git a/日常学习/数据同步/DataX/在Linux上安装.md b/日常学习/数据同步/DataX/在Linux上安装.md
new file mode 100644
index 0000000..3b72ab4
--- /dev/null
+++ b/日常学习/数据同步/DataX/在Linux上安装.md
@@ -0,0 +1,14 @@
+[dataX](https://github.com/alibaba/DataX/blob/master/userGuid.md)
+
+# 一、下载及安装
+1. 从dataX github页面下载tar包并放在/home下
+2. 验证Linux是否安装python及jdk,python可以为3,jdk为1.8版本
+3. 解压datax tar -zxvf /xxxx/datax.tar.gz
+
+# 二、运行测试用例
+在datax 目录进入bin,例如/home/zr/DataX/datax/bin,执行
+```shell
+python datax.py ../job/job.json
+```
+执行完成后输出,表示安装成功
+![[Snipaste_2023-03-28_09-21-51.png]]
diff --git a/未命名 1.canvas b/未命名 1.canvas
new file mode 100644
index 0000000..2289854
--- /dev/null
+++ b/未命名 1.canvas
@@ -0,0 +1,4 @@
+{
+ "nodes":[],
+ "edges":[]
+}
\ No newline at end of file
diff --git a/本机环境/WSL/WSL 桥接网络.md b/本机环境/WSL/WSL 桥接网络.md
new file mode 100644
index 0000000..6caa81f
--- /dev/null
+++ b/本机环境/WSL/WSL 桥接网络.md
@@ -0,0 +1,51 @@
+前提:开启hyper-V
+1. 获取所有网卡信息
+```shell
+Get-NetAdapter
+```
+![[Snipaste_2023-04-01_17-47-48.png]]
+2. 启动WSL,打开powershell(管理员模式),选择网卡桥接
+这里桥接到WLAN
+```shell
+Set-VMSwitch WSL -NetAdapterName WLAN
+# 中文
+Set-VMSwitch WSL -NetAdapterName "以太网 3"
+```
+
+3. 查看宿主机网关
+```shell
+ipconfig
+```
+找到IP段和网关
+![[Snipaste_2023-04-01_17-47-48 1.png]]
+4. 修改WSL IP地址及网关
+```shell
+# 绑定到eth0网卡
+sudo ip addr del $(ip addr show eth0 | grep 'inet\b' | awk '{print $2}' | head -n 1) dev eth0
+# 设置IP段
+sudo ip addr add 192.168.0.150/24 broadcast 192.168.0.255 dev eth0
+# 设置网关
+sudo ip route add 0.0.0.0/0 via 192.168.0.1 dev eth0
+```
+5. 更新名称解析服务器地址
+```shell
+vim /etc/resolv.conf
+```
+修改其中内容为 `nameserver 网关地址`
+
+
+## 快速设置
+```shell
+# powershell 管理员,注意修改网卡名称
+Set-VMSwitch WSL -NetAdapterName WLAN
+
+# 在wsl中执行
+sh /home/zr/setnet.sh
+```
+
+
+## 取消桥接
+powershell管理员执行,即可恢复
+```shell
+Set-VMSwitch WSL -SwitchType Internal
+```
\ No newline at end of file
diff --git a/本机环境/开发环境.md b/本机环境/开发环境.md
index 6a9cad7..bc96462 100644
--- a/本机环境/开发环境.md
+++ b/本机环境/开发环境.md
@@ -1,4 +1,12 @@
+ PG12
localhost:5432 postgres:root@123
+ redis
-localhost:6379 redispw
\ No newline at end of file
+localhost:6379 redispw
++ oracle
+localhost:1521 zr:root@123
++ neo4j
+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