Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
J
jinfa-platform
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
linweijiong
jinfa-platform
Commits
252817f1
Commit
252817f1
authored
Aug 06, 2021
by
前端-钟卫鹏
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'v2' of
http://10.0.0.22:3000/lingxi/lingxi-business-paltform
into v2
parents
ac146745
e9ffdf8b
Show whitespace changes
Inline
Side-by-side
Showing
24 changed files
with
1009 additions
and
761 deletions
+1009
-761
index.ts
config/routes/index.ts
+1
-0
report.20210804.155111.26372.0.001.json
report.20210804.155111.26372.0.001.json
+0
-723
app.tsx
src/app.tsx
+2
-0
index.less
...nts/AddressSelect/components/AddressRadioGroup/index.less
+56
-0
index.tsx
...ents/AddressSelect/components/AddressRadioGroup/index.tsx
+243
-0
index.less
...Select/components/AddressRadioGroupFormilyItem/index.less
+0
-0
index.tsx
...sSelect/components/AddressRadioGroupFormilyItem/index.tsx
+32
-0
index.less
src/components/AddressSelect/index.less
+28
-0
index.tsx
src/components/AddressSelect/index.tsx
+264
-0
schema.ts
src/components/AddressSelect/schema.ts
+242
-0
CustomAddressSelect.tsx
src/components/NiceForm/components/CustomAddressSelect.tsx
+32
-0
index.tsx
src/components/NiceForm/index.tsx
+2
-0
index.tsx
src/components/NiceForm/public/index.tsx
+8
-2
BasicLayout.tsx
src/layouts/BasicLayout.tsx
+4
-4
MenuSlider.tsx
src/layouts/components/MenuSlider.tsx
+3
-1
RightContent.tsx
src/layouts/components/RightContent.tsx
+23
-4
RightContent.less
src/layouts/styles/RightContent.less
+22
-2
index.ts
...tion/returnPrSubmit/components/ReturnForm/schema/index.ts
+18
-2
index.tsx
src/pages/contract/coordination/details/index.tsx
+12
-11
addList.tsx
src/pages/contract/manage/add/addList.tsx
+3
-2
FormList.tsx
src/pages/contract/manage/add/components/FormList.tsx
+6
-7
index.tsx
src/pages/contract/manage/details/index.tsx
+2
-2
index.tsx
src/pages/home/components/UserCenter/index.tsx
+2
-1
index.tsx
...ifyComingData/components/VerifyComingDataDrawer/index.tsx
+4
-0
No files found.
config/routes/index.ts
View file @
252817f1
...
...
@@ -83,6 +83,7 @@ const memberCenterRoute = {
path
:
'/memberCenter/noAuth'
,
auth
:
false
,
hideInMenu
:
true
,
name
:
'无权限'
,
component
:
'@/pages/403'
,
},
// 能力中心的404页
...
...
report.20210804.155111.26372.0.001.json
deleted
100644 → 0
View file @
ac146745
{
"header"
:
{
"reportVersion"
:
1
,
"event"
:
"Allocation failed - JavaScript heap out of memory"
,
"trigger"
:
"FatalError"
,
"filename"
:
"report.20210804.155111.26372.0.001.json"
,
"dumpEventTime"
:
"2021-08-04T15:51:11Z"
,
"dumpEventTimeStamp"
:
"1628063471363"
,
"processId"
:
26372
,
"cwd"
:
"F:
\\
pc
\\
lingxi-business-paltform"
,
"commandLine"
:
[
"C:
\\
Program Files
\\
nodejs
\\
node.exe"
,
"F:
\\
pc
\\
lingxi-business-paltform
\\
node_modules
\\
.bin
\\\\
..
\\
umi
\\
bin
\\
umi.js"
,
"build"
],
"nodejsVersion"
:
"v12.15.0"
,
"wordSize"
:
64
,
"arch"
:
"x64"
,
"platform"
:
"win32"
,
"componentVersions"
:
{
"node"
:
"12.15.0"
,
"v8"
:
"7.7.299.13-node.16"
,
"uv"
:
"1.33.1"
,
"zlib"
:
"1.2.11"
,
"brotli"
:
"1.0.7"
,
"ares"
:
"1.15.0"
,
"modules"
:
"72"
,
"nghttp2"
:
"1.40.0"
,
"napi"
:
"5"
,
"llhttp"
:
"2.0.4"
,
"http_parser"
:
"2.9.3"
,
"openssl"
:
"1.1.1d"
,
"cldr"
:
"35.1"
,
"icu"
:
"64.2"
,
"tz"
:
"2019c"
,
"unicode"
:
"12.1"
},
"release"
:
{
"name"
:
"node"
,
"lts"
:
"Erbium"
,
"headersUrl"
:
"https://nodejs.org/download/release/v12.15.0/node-v12.15.0-headers.tar.gz"
,
"sourceUrl"
:
"https://nodejs.org/download/release/v12.15.0/node-v12.15.0.tar.gz"
,
"libUrl"
:
"https://nodejs.org/download/release/v12.15.0/win-x64/node.lib"
},
"osName"
:
"Windows_NT"
,
"osRelease"
:
"10.0.17134"
,
"osVersion"
:
"Windows 10 Pro"
,
"osMachine"
:
"x86_64"
,
"cpus"
:
[
{
"model"
:
"Intel(R) Core(TM) i5-9400F CPU @ 2.90GHz"
,
"speed"
:
2904
,
"user"
:
23768671
,
"nice"
:
0
,
"sys"
:
19487687
,
"idle"
:
294227609
,
"irq"
:
3215828
},
{
"model"
:
"Intel(R) Core(TM) i5-9400F CPU @ 2.90GHz"
,
"speed"
:
2904
,
"user"
:
25971421
,
"nice"
:
0
,
"sys"
:
14055000
,
"idle"
:
297457218
,
"irq"
:
96500
},
{
"model"
:
"Intel(R) Core(TM) i5-9400F CPU @ 2.90GHz"
,
"speed"
:
2904
,
"user"
:
36302359
,
"nice"
:
0
,
"sys"
:
18148125
,
"idle"
:
283033156
,
"irq"
:
78140
},
{
"model"
:
"Intel(R) Core(TM) i5-9400F CPU @ 2.90GHz"
,
"speed"
:
2904
,
"user"
:
23471546
,
"nice"
:
0
,
"sys"
:
15003843
,
"idle"
:
299008250
,
"irq"
:
101281
},
{
"model"
:
"Intel(R) Core(TM) i5-9400F CPU @ 2.90GHz"
,
"speed"
:
2904
,
"user"
:
24836375
,
"nice"
:
0
,
"sys"
:
14092562
,
"idle"
:
298554703
,
"irq"
:
89218
},
{
"model"
:
"Intel(R) Core(TM) i5-9400F CPU @ 2.90GHz"
,
"speed"
:
2904
,
"user"
:
29928062
,
"nice"
:
0
,
"sys"
:
16491125
,
"idle"
:
291064453
,
"irq"
:
90796
}
],
"networkInterfaces"
:
[
{
"name"
:
"以太网"
,
"internal"
:
false
,
"mac"
:
"a8:5e:45:b4:75:d7"
,
"address"
:
"fe80::f51b:eb4:4ec0:d370"
,
"netmask"
:
"ffff:ffff:ffff:ffff::"
,
"family"
:
"IPv6"
,
"scopeid"
:
14
},
{
"name"
:
"以太网"
,
"internal"
:
false
,
"mac"
:
"a8:5e:45:b4:75:d7"
,
"address"
:
"10.0.0.56"
,
"netmask"
:
"255.255.254.0"
,
"family"
:
"IPv4"
},
{
"name"
:
"Loopback Pseudo-Interface 1"
,
"internal"
:
true
,
"mac"
:
"00:00:00:00:00:00"
,
"address"
:
"::1"
,
"netmask"
:
"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff"
,
"family"
:
"IPv6"
,
"scopeid"
:
0
},
{
"name"
:
"Loopback Pseudo-Interface 1"
,
"internal"
:
true
,
"mac"
:
"00:00:00:00:00:00"
,
"address"
:
"127.0.0.1"
,
"netmask"
:
"255.0.0.0"
,
"family"
:
"IPv4"
}
],
"host"
:
"PT-20191211ATIL"
},
"javascriptStack"
:
{
"message"
:
"No stack."
,
"stack"
:
[
"Unavailable."
]
},
"nativeStack"
:
[
{
"pc"
:
"0x00007ff7b9951759"
,
"symbol"
:
"std::basic_ostream<char,std::char_traits<char> >::operator<<+10873"
},
{
"pc"
:
"0x00007ff7b9955b7c"
,
"symbol"
:
"std::basic_ostream<char,std::char_traits<char> >::operator<<+28316"
},
{
"pc"
:
"0x00007ff7b9954b38"
,
"symbol"
:
"std::basic_ostream<char,std::char_traits<char> >::operator<<+24152"
},
{
"pc"
:
"0x00007ff7b9a4446b"
,
"symbol"
:
"v8::base::CPU::has_sse+37723"
},
{
"pc"
:
"0x00007ff7ba248d9e"
,
"symbol"
:
"v8::Isolate::ReportExternalAllocationLimitReached+94"
},
{
"pc"
:
"0x00007ff7ba230de1"
,
"symbol"
:
"v8::SharedArrayBuffer::Externalize+833"
},
{
"pc"
:
"0x00007ff7ba0fe6ac"
,
"symbol"
:
"v8::internal::Heap::EphemeronKeyWriteBarrierFromCode+1436"
},
{
"pc"
:
"0x00007ff7ba0da6a3"
,
"symbol"
:
"v8::internal::MarkCompactCollector::EnsureSweepingCompleted+1747"
},
{
"pc"
:
"0x00007ff7ba0d899b"
,
"symbol"
:
"v8::internal::ConcurrentBitmap<1>::IsClean+65995"
},
{
"pc"
:
"0x00007ff7ba10401d"
,
"symbol"
:
"v8::internal::Heap::LeftTrimFixedArray+1117"
},
{
"pc"
:
"0x00007ff7ba105d24"
,
"symbol"
:
"v8::internal::Heap::PageFlagsAreConsistent+1060"
},
{
"pc"
:
"0x00007ff7ba0fbe13"
,
"symbol"
:
"v8::internal::Heap::CollectGarbage+1283"
},
{
"pc"
:
"0x00007ff7ba0fa5e4"
,
"symbol"
:
"v8::internal::Heap::AddRetainedMap+2356"
},
{
"pc"
:
"0x00007ff7ba11b8b5"
,
"symbol"
:
"v8::internal::Factory::NewFillerObject+53"
},
{
"pc"
:
"0x00007ff7b9e87a17"
,
"symbol"
:
"v8::internal::interpreter::JumpTableTargetOffsets::iterator::operator=+3687"
},
{
"pc"
:
"0x00007ff7ba674d3d"
,
"symbol"
:
"v8::internal::SetupIsolateDelegate::SetupHeap+567949"
},
{
"pc"
:
"0x000001aa1ef29d29"
,
"symbol"
:
""
}
],
"javascriptHeap"
:
{
"totalMemory"
:
2874466304
,
"totalCommittedMemory"
:
2874466304
,
"usedMemory"
:
2415902256
,
"availableMemory"
:
1506034072
,
"memoryLimit"
:
4345298944
,
"heapSpaces"
:
{
"read_only_space"
:
{
"memorySize"
:
262144
,
"committedMemory"
:
262144
,
"capacity"
:
261872
,
"used"
:
32296
,
"available"
:
229576
},
"new_space"
:
{
"memorySize"
:
33554432
,
"committedMemory"
:
33554432
,
"capacity"
:
16759808
,
"used"
:
418640
,
"available"
:
16341168
},
"old_space"
:
{
"memorySize"
:
2627317760
,
"committedMemory"
:
2627317760
,
"capacity"
:
2227868296
,
"used"
:
2227725096
,
"available"
:
143200
},
"code_space"
:
{
"memorySize"
:
13533184
,
"committedMemory"
:
13533184
,
"capacity"
:
7641504
,
"used"
:
7486688
,
"available"
:
154816
},
"map_space"
:
{
"memorySize"
:
26218496
,
"committedMemory"
:
26218496
,
"capacity"
:
7980000
,
"used"
:
7980000
,
"available"
:
0
},
"large_object_space"
:
{
"memorySize"
:
172957696
,
"committedMemory"
:
172957696
,
"capacity"
:
171709136
,
"used"
:
171709136
,
"available"
:
0
},
"code_large_object_space"
:
{
"memorySize"
:
622592
,
"committedMemory"
:
622592
,
"capacity"
:
550400
,
"used"
:
550400
,
"available"
:
0
},
"new_large_object_space"
:
{
"memorySize"
:
0
,
"committedMemory"
:
0
,
"capacity"
:
16759808
,
"used"
:
0
,
"available"
:
16759808
}
}
},
"resourceUsage"
:
{
"userCpuSeconds"
:
190.218
,
"kernelCpuSeconds"
:
22.437
,
"cpuConsumptionPercent"
:
142.721
,
"maxRss"
:
3050725376
,
"pageFaults"
:
{
"IORequired"
:
1261622
,
"IONotRequired"
:
0
},
"fsActivity"
:
{
"reads"
:
18421
,
"writes"
:
135
}
},
"libuv"
:
[
],
"environmentVariables"
:
{
"=C:"
:
"C:
\\
"
,
"=F:"
:
"F:
\\
pc
\\
lingxi-business-paltform"
,
"ALLUSERSPROFILE"
:
"C:
\\
ProgramData"
,
"ANDROID_HOME"
:
"C:
\\
Users
\\
Administrator
\\
AppData
\\
Local
\\
Android
\\
Sdk"
,
"APPDATA"
:
"C:
\\
Users
\\
Administrator
\\
AppData
\\
Roaming"
,
"asl.log"
:
"Destination=file"
,
"BACK_GATEWAY"
:
"http://10.0.0.17:8100"
,
"CHROME_CRASHPAD_PIPE_NAME"
:
"
\\\\
.
\\
pipe
\\
crashpad_10628_IIPKUPQBOITDZSTE"
,
"COLORTERM"
:
"truecolor"
,
"CommonProgramFiles"
:
"C:
\\
Program Files
\\
Common Files"
,
"CommonProgramFiles(x86)"
:
"C:
\\
Program Files (x86)
\\
Common Files"
,
"CommonProgramW6432"
:
"C:
\\
Program Files
\\
Common Files"
,
"COMPUTERNAME"
:
"PT-20191211ATIL"
,
"ComSpec"
:
"C:
\\
Windows
\\
system32
\\
cmd.exe"
,
"dp0"
:
"F:
\\
pc
\\
lingxi-business-paltform
\\
node_modules
\\
.bin
\\
"
,
"DriverData"
:
"C:
\\
Windows
\\
System32
\\
Drivers
\\
DriverData"
,
"FPS_BROWSER_APP_PROFILE_STRING"
:
"Internet Explorer"
,
"FPS_BROWSER_USER_PROFILE_STRING"
:
"Default"
,
"GIT_ASKPASS"
:
"d:
\\
Microsoft VS Code
\\
resources
\\
app
\\
extensions
\\
git
\\
dist
\\
askpass.sh"
,
"HOME"
:
"C:
\\
Users
\\
Administrator"
,
"HOMEDRIVE"
:
"C:"
,
"HOMEPATH"
:
"
\\
Users
\\
Administrator"
,
"HTTPS"
:
"true"
,
"INIT_CWD"
:
"F:
\\
pc
\\
lingxi-business-paltform"
,
"IOJS_ORG_MIRROR"
:
"https://npm.taobao.org/mirrors/iojs"
,
"LANG"
:
"zh_CN.UTF-8"
,
"LOCALAPPDATA"
:
"C:
\\
Users
\\
Administrator
\\
AppData
\\
Local"
,
"LOGONSERVER"
:
"
\\\\
PT-20191211ATIL"
,
"NODE"
:
"C:
\\
Program Files
\\
nodejs
\\
node.exe"
,
"NODEJS_ORG_MIRROR"
:
"https://npm.taobao.org/mirrors/node"
,
"NODE_ENV"
:
"production"
,
"NODE_EXE"
:
"C:
\\
Program Files
\\
nodejs
\\\\
node.exe"
,
"NODE_OPTIONS"
:
"--max_old_space_size=4096"
,
"NODIST_IOJS_MIRROR"
:
"https://npm.taobao.org/mirrors/iojs"
,
"NODIST_NODE_MIRROR"
:
"https://npm.taobao.org/mirrors/node"
,
"NPM_CLI_JS"
:
"C:
\\
Program Files
\\
nodejs
\\\\
node_modules
\\
npm
\\
bin
\\
npm-cli.js"
,
"npm_config_access"
:
""
,
"npm_config_allow_same_version"
:
""
,
"npm_config_also"
:
""
,
"npm_config_always_auth"
:
""
,
"npm_config_argv"
:
"{
\"
remain
\"
:[],
\"
cooked
\"
:[
\"
run
\"
,
\"
build:v2
\"
],
\"
original
\"
:[
\"
run
\"
,
\"
build:v2
\"
]}"
,
"npm_config_audit"
:
"true"
,
"npm_config_audit_level"
:
"low"
,
"npm_config_auth_type"
:
"legacy"
,
"npm_config_before"
:
""
,
"npm_config_bin_links"
:
"true"
,
"npm_config_browser"
:
""
,
"npm_config_ca"
:
""
,
"npm_config_cache"
:
"C:
\\
Users
\\
Administrator
\\
AppData
\\
Roaming
\\
npm-cache"
,
"npm_config_cache_lock_retries"
:
"10"
,
"npm_config_cache_lock_stale"
:
"60000"
,
"npm_config_cache_lock_wait"
:
"10000"
,
"npm_config_cache_max"
:
"Infinity"
,
"npm_config_cache_min"
:
"10"
,
"npm_config_cafile"
:
""
,
"npm_config_cert"
:
""
,
"npm_config_chromedriver_cdnurl"
:
"https://npm.taobao.org/mirrors/chromedriver"
,
"npm_config_cidr"
:
""
,
"npm_config_cofing"
:
"https://registry.npmjs.org/"
,
"npm_config_color"
:
"true"
,
"npm_config_commit_hooks"
:
"true"
,
"npm_config_couchbase_binary_host_mirror"
:
"https://npm.taobao.org/mirrors/couchbase/v{version}"
,
"npm_config_debug_binary_host_mirror"
:
"https://npm.taobao.org/mirrors/node-inspector"
,
"npm_config_depth"
:
"Infinity"
,
"npm_config_description"
:
"true"
,
"npm_config_dev"
:
""
,
"npm_config_disturl"
:
"https://npm.taobao.org/dist"
,
"npm_config_dry_run"
:
""
,
"npm_config_editor"
:
"notepad.exe"
,
"npm_config_electron_mirror"
:
"https://npm.taobao.org/mirrors/electron/"
,
"npm_config_engine_strict"
:
""
,
"npm_config_fetch_retries"
:
"2"
,
"npm_config_fetch_retry_factor"
:
"10"
,
"npm_config_fetch_retry_maxtimeout"
:
"60000"
,
"npm_config_fetch_retry_mintimeout"
:
"10000"
,
"npm_config_flow_bin_binary_host_mirror"
:
"https://npm.taobao.org/mirrors/flow/v"
,
"npm_config_force"
:
""
,
"npm_config_format_package_lock"
:
"true"
,
"npm_config_fse_binary_host_mirror"
:
"https://npm.taobao.org/mirrors/fsevents"
,
"npm_config_fund"
:
"true"
,
"npm_config_fuse_bindings_binary_host_mirror"
:
"https://npm.taobao.org/mirrors/fuse-bindings/v{version}"
,
"npm_config_git"
:
"git"
,
"npm_config_git4win_mirror"
:
"https://npm.taobao.org/mirrors/git-for-windows"
,
"npm_config_git_tag_version"
:
"true"
,
"npm_config_global"
:
""
,
"npm_config_globalconfig"
:
"C:
\\
Users
\\
Administrator
\\
AppData
\\
Roaming
\\
npm
\\
etc
\\
npmrc"
,
"npm_config_globalignorefile"
:
"C:
\\
Users
\\
Administrator
\\
AppData
\\
Roaming
\\
npm
\\
etc
\\
npmignore"
,
"npm_config_global_style"
:
""
,
"npm_config_gl_binary_host_mirror"
:
"https://npm.taobao.org/mirrors/gl/v{version}"
,
"npm_config_group"
:
""
,
"npm_config_grpc_node_binary_host_mirror"
:
"https://npm.taobao.org/mirrors"
,
"npm_config_hackrf_binary_host_mirror"
:
"https://npm.taobao.org/mirrors/hackrf/v{version}"
,
"npm_config_ham_it_up"
:
""
,
"npm_config_heading"
:
"npm"
,
"npm_config_home"
:
"https://npm.taobao.org"
,
"npm_config_https_proxy"
:
""
,
"npm_config_if_present"
:
""
,
"npm_config_ignore_optional"
:
""
,
"npm_config_ignore_prepublish"
:
""
,
"npm_config_ignore_scripts"
:
""
,
"npm_config_init_author_email"
:
""
,
"npm_config_init_author_name"
:
""
,
"npm_config_init_author_url"
:
""
,
"npm_config_init_license"
:
"MIT"
,
"npm_config_init_module"
:
"C:
\\
Users
\\
Administrator
\\
.npm-init.js"
,
"npm_config_init_version"
:
"1.0.0"
,
"npm_config_json"
:
""
,
"npm_config_key"
:
""
,
"npm_config_legacy_bundling"
:
""
,
"npm_config_leveldown_binary_host_mirror"
:
"https://npm.taobao.org/mirrors/leveldown/v{version}"
,
"npm_config_leveldown_hyper_binary_host_mirror"
:
"https://npm.taobao.org/mirrors/leveldown-hyper/v{version}"
,
"npm_config_link"
:
""
,
"npm_config_local_address"
:
""
,
"npm_config_loglevel"
:
"notice"
,
"npm_config_logs_max"
:
"10"
,
"npm_config_long"
:
""
,
"npm_config_maxsockets"
:
"50"
,
"npm_config_message"
:
"%s"
,
"npm_config_metrics_registry"
:
"http://10.0.0.19:4873/"
,
"npm_config_mknod_binary_host_mirror"
:
"https://npm.taobao.org/mirrors/mknod/v{version}"
,
"npm_config_nodegit_binary_host_mirror"
:
"https://npm.taobao.org/mirrors/nodegit/v{version}/"
,
"npm_config_node_gyp"
:
"node C:
\\
Users
\\
Administrator
\\
AppData
\\
Roaming
\\
npm
\\
node_modules
\\
node-gyp
\\
bin
\\
node-gyp.js"
,
"npm_config_node_options"
:
""
,
"npm_config_node_sqlite3_binary_host_mirror"
:
"https://npm.taobao.org/mirrors"
,
"npm_config_node_tk5_binary_host_mirror"
:
"https://npm.taobao.org/mirrors/node-tk5/v{version}"
,
"npm_config_node_version"
:
"12.15.0"
,
"npm_config_noproxy"
:
""
,
"npm_config_offline"
:
""
,
"npm_config_onload_script"
:
""
,
"npm_config_only"
:
""
,
"npm_config_operadriver_cdnurl"
:
"https://npm.taobao.org/mirrors/operadriver"
,
"npm_config_optional"
:
"true"
,
"npm_config_otp"
:
""
,
"npm_config_package_lock"
:
"true"
,
"npm_config_package_lock_only"
:
""
,
"npm_config_parseable"
:
""
,
"npm_config_phantomjs_cdnurl"
:
"https://npm.taobao.org/mirrors/phantomjs"
,
"npm_config_prefer_offline"
:
""
,
"npm_config_prefer_online"
:
""
,
"npm_config_prefix"
:
"C:
\\
Users
\\
Administrator
\\
AppData
\\
Roaming
\\
npm"
,
"npm_config_preid"
:
""
,
"npm_config_production"
:
""
,
"npm_config_profiler_binary_host_mirror"
:
"https://npm.taobao.org/mirrors/node-inspector/"
,
"npm_config_progress"
:
"true"
,
"npm_config_proxy"
:
""
,
"npm_config_puppeteer_download_host"
:
"https://npm.taobao.org/mirrors"
,
"npm_config_python"
:
"C:
\\
Users
\\
Administrator
\\
.windows-build-tools
\\
python27
\\
python.exe"
,
"npm_config_python_mirror"
:
"https://npm.taobao.org/mirrors/python"
,
"npm_config_rabin_binary_host_mirror"
:
"https://npm.taobao.org/mirrors/rabin/v{version}"
,
"npm_config_read_only"
:
""
,
"npm_config_rebuild_bundle"
:
"true"
,
"npm_config_registry"
:
"http://10.0.0.19:7001"
,
"npm_config_rollback"
:
"true"
,
"npm_config_sass_binary_site"
:
"https://npm.taobao.org/mirrors/node-sass"
,
"npm_config_save"
:
"true"
,
"npm_config_save_bundle"
:
""
,
"npm_config_save_dev"
:
""
,
"npm_config_save_exact"
:
""
,
"npm_config_save_optional"
:
""
,
"npm_config_save_prefix"
:
"^"
,
"npm_config_save_prod"
:
""
,
"npm_config_scope"
:
""
,
"npm_config_scripts_prepend_node_path"
:
"warn-only"
,
"npm_config_script_shell"
:
""
,
"npm_config_searchexclude"
:
""
,
"npm_config_searchlimit"
:
"20"
,
"npm_config_searchopts"
:
""
,
"npm_config_searchstaleness"
:
"900"
,
"npm_config_send_metrics"
:
""
,
"npm_config_shell"
:
"C:
\\
Windows
\\
system32
\\
cmd.exe"
,
"npm_config_shrinkwrap"
:
"true"
,
"npm_config_sign_git_commit"
:
""
,
"npm_config_sign_git_tag"
:
""
,
"npm_config_sodium_prebuilt_binary_host_mirror"
:
"https://npm.taobao.org/mirrors/sodium-prebuilt/v{version}"
,
"npm_config_sqlite3_binary_site"
:
"https://npm.taobao.org/mirrors/sqlite3"
,
"npm_config_sso_poll_frequency"
:
"500"
,
"npm_config_sso_type"
:
"oauth"
,
"npm_config_strict_ssl"
:
"true"
,
"npm_config_tag"
:
"latest"
,
"npm_config_tag_version_prefix"
:
"v"
,
"npm_config_timing"
:
""
,
"npm_config_tmp"
:
"C:
\\
Users
\\
ADMINI~1
\\
AppData
\\
Local
\\
Temp"
,
"npm_config_umask"
:
"0000"
,
"npm_config_unicode"
:
""
,
"npm_config_unsafe_perm"
:
"true"
,
"npm_config_update_notifier"
:
"true"
,
"npm_config_usage"
:
""
,
"npm_config_user"
:
""
,
"npm_config_userconfig"
:
"C:
\\
Users
\\
Administrator
\\
.npmrc"
,
"npm_config_user_agent"
:
"yarn/1.22.10 npm/? node/v12.15.0 win32 x64"
,
"npm_config_utf_8_validate_binary_host_mirror"
:
"https://npm.taobao.org/mirrors/utf-8-validate/v{version}"
,
"npm_config_utp_native_binary_host_mirror"
:
"https://npm.taobao.org/mirrors/utp-native/v{version}"
,
"npm_config_version"
:
""
,
"npm_config_versions"
:
""
,
"npm_config_version_commit_hooks"
:
"true"
,
"npm_config_version_git_message"
:
"v%s"
,
"npm_config_version_git_sign"
:
""
,
"npm_config_version_git_tag"
:
"true"
,
"npm_config_version_tag_prefix"
:
"v"
,
"npm_config_viewer"
:
"browser"
,
"npm_config_wrap_output"
:
""
,
"npm_config_zmq_prebuilt_binary_host_mirror"
:
"https://npm.taobao.org/mirrors/zmq-prebuilt/v{version}"
,
"npm_execpath"
:
"C:
\\
Program Files
\\
nodejs
\\
node_modules
\\
npm
\\
bin
\\
npm-cli.js"
,
"npm_lifecycle_event"
:
"build:clean"
,
"npm_lifecycle_script"
:
"cross-env NODE_OPTIONS=--max_old_space_size=4096 umi build"
,
"npm_node_execpath"
:
"C:
\\
Program Files
\\
nodejs
\\
node.exe"
,
"npm_package_dependencies_antd"
:
"^4.16.6"
,
"npm_package_dependencies_antd_img_crop"
:
"^3.12.0"
,
"npm_package_dependencies_babel_plugin_transform_remove_console"
:
"^6.9.4"
,
"npm_package_dependencies_bignumber_js"
:
"^9.0.1"
,
"npm_package_dependencies_bizcharts"
:
"^4.1.10"
,
"npm_package_dependencies_copy_to_clipboard"
:
"^3.3.1"
,
"npm_package_dependencies_crypto_js"
:
"^4.0.0"
,
"npm_package_dependencies_god"
:
"^0.2.10"
,
"npm_package_dependencies_immutability_helper"
:
"^3.1.1"
,
"npm_package_dependencies_js_cookie"
:
"^2.2.1"
,
"npm_package_dependencies_lingxi_design_ui"
:
"^2.0.6"
,
"npm_package_dependencies_lint_staged"
:
"^10.0.7"
,
"npm_package_dependencies_lodash"
:
"^4.17.20"
,
"npm_package_dependencies_mobx"
:
"^5.15.4"
,
"npm_package_dependencies_mobx_react"
:
"^6.2.2"
,
"npm_package_dependencies_moment"
:
"^2.27.0"
,
"npm_package_dependencies_pinyin"
:
"^2.9.1"
,
"npm_package_dependencies_prettier"
:
"^1.19.1"
,
"npm_package_dependencies_qrcode"
:
"^1.4.4"
,
"npm_package_dependencies_query_string"
:
"^6.13.1"
,
"npm_package_dependencies_react"
:
"^16.12.0"
,
"npm_package_dependencies_react_dnd"
:
"^11.1.3"
,
"npm_package_dependencies_react_dnd_html5_backend"
:
"^11.1.3"
,
"npm_package_dependencies_react_dom"
:
"^16.12.0"
,
"npm_package_dependencies_react_fontawesome"
:
"^1.7.1"
,
"npm_package_dependencies_react_image_crop"
:
"^8.6.4"
,
"npm_package_dependencies_react_reconciler"
:
"^0.25.1"
,
"npm_package_dependencies_react_sortablejs"
:
"^6.0.0"
,
"npm_package_dependencies_rgbaster"
:
"^2.1.1"
,
"npm_package_dependencies_sortablejs"
:
"^1.12.0"
,
"npm_package_dependencies_typescript"
:
"^3.9.7"
,
"npm_package_dependencies_umi"
:
"3.2.28"
,
"npm_package_dependencies_video_react"
:
"^0.14.1"
,
"npm_package_dependencies_yorkie"
:
"^2.0.0"
,
"npm_package_dependencies__antv_data_set"
:
"^0.11.5"
,
"npm_package_dependencies__ant_design_icons"
:
"^4.2.1"
,
"npm_package_dependencies__ant_design_pro_layout"
:
"^5.0.16"
,
"npm_package_dependencies__ctrl_tinycolor"
:
"^3.4.0"
,
"npm_package_dependencies__formily_antd"
:
"^1.3.3"
,
"npm_package_dependencies__formily_antd_components"
:
"^1.3.3"
,
"npm_package_dependencies__lingxi_disign_core"
:
"^1.0.1"
,
"npm_package_dependencies__lingxi_disign_react"
:
"^1.0.3"
,
"npm_package_dependencies__lingxi_disign_react_web"
:
"^1.0.2"
,
"npm_package_dependencies__lingxi_disign_ui"
:
"^1.0.1"
,
"npm_package_dependencies__turf_turf"
:
"^6.4.0"
,
"npm_package_dependencies__types_crypto_js"
:
"^4.0.1"
,
"npm_package_dependencies__types_js_cookie"
:
"^2.2.6"
,
"npm_package_dependencies__umijs_hooks"
:
"^1.9.3"
,
"npm_package_dependencies__umijs_plugin_esbuild"
:
"^1.0.1"
,
"npm_package_dependencies__umijs_preset_react"
:
"1.x"
,
"npm_package_dependencies__umijs_test"
:
"^3.2.0"
,
"npm_package_description"
:
"### 为数商云&醒电构建项目提供react脚手架模板"
,
"npm_package_devDependencies_async"
:
"^3.2.0"
,
"npm_package_devDependencies_axios"
:
"^0.19.2"
,
"npm_package_devDependencies_chalk"
:
"^4.1.0"
,
"npm_package_devDependencies_clone"
:
"^2.1.2"
,
"npm_package_devDependencies_connect_history_api_fallback"
:
"^1.6.0"
,
"npm_package_devDependencies_cross_env"
:
"^7.0.3"
,
"npm_package_devDependencies_events"
:
"^3.2.0"
,
"npm_package_devDependencies_express"
:
"^4.17.1"
,
"npm_package_devDependencies_fs_extra"
:
"^9.0.1"
,
"npm_package_devDependencies_glob"
:
"^7.1.6"
,
"npm_package_devDependencies_god_upload_scp"
:
"1.0.1"
,
"npm_package_devDependencies_god_yapi2ts"
:
"^1.0.0"
,
"npm_package_devDependencies_gulp"
:
"^4.0.2"
,
"npm_package_devDependencies_gulp_git"
:
"^2.10.1"
,
"npm_package_devDependencies_hard_source_webpack_plugin"
:
"^0.13.1"
,
"npm_package_devDependencies_http_proxy_middleware"
:
"^1.0.5"
,
"npm_package_devDependencies_json2ts"
:
"^0.0.7"
,
"npm_package_devDependencies_node_cmd"
:
"^4.0.0"
,
"npm_package_devDependencies_ora"
:
"^4.0.4"
,
"npm_package_devDependencies_scp2"
:
"^0.1.0-b1"
,
"npm_package_devDependencies_ssh2"
:
"^0.8.9"
,
"npm_package_devDependencies_util"
:
"^0.12.3"
,
"npm_package_devDependencies__types_qrcode"
:
"^1.3.4"
,
"npm_package_devDependencies__types_sortablejs"
:
"^1.10.6"
,
"npm_package_gitHead"
:
"65e92bbb4cda82a30084789862c6fe37eea04234"
,
"npm_package_license"
:
"MIT"
,
"npm_package_lint_staged___ts__x__0"
:
"prettier --parser=typescript --write"
,
"npm_package_lint_staged____js_jsx_less_md_json__0"
:
"prettier --write"
,
"npm_package_name"
:
"lingxi-business-paltform"
,
"npm_package_readmeFilename"
:
"README.md"
,
"npm_package_scripts_api"
:
"god-ytt"
,
"npm_package_scripts_build"
:
"yarn api && yarn scripts:build && yarn build:clean"
,
"npm_package_scripts_build_10"
:
"cross-env SITE_ID=1 BACK_GATEWAY=http://10.0.0.10:8100 USE_ROUTE_CONFIG=false SOCKET_URL=ws://10.0.0.10:9400 yarn build"
,
"npm_package_scripts_build_all"
:
"cross-env SITE_ID=1 BACK_GATEWAY=http://lingxi-all.wg.shushangyun.com USE_ROUTE_CONFIG=false SOCKET_URL=ws://lingxi-all.wg.shushangyun.com yarn build"
,
"npm_package_scripts_build_analyze"
:
"cross-env NODE_OPTIONS=--max_old_space_size=4096 ANALYZE=1 umi build"
,
"npm_package_scripts_build_clean"
:
"cross-env NODE_OPTIONS=--max_old_space_size=4096 umi build"
,
"npm_package_scripts_build_dev"
:
"pm2 start scripts/devServer.js"
,
"npm_package_scripts_build_scm"
:
"cross-env SITE_ID=1 BACK_GATEWAY=http://lingxi-scm.wg.shushangyun.com USE_ROUTE_CONFIG=false SOCKET_URL=ws://lingxi-scm.wg.shushangyun.com yarn build"
,
"npm_package_scripts_build_study"
:
"cross-env SITE_ID=1 BACK_GATEWAY=http://10.0.1.207:8100 USE_ROUTE_CONFIG=false SOCKET_URL=ws://10.0.1.207:9400 yarn build"
,
"npm_package_scripts_build_v2"
:
"cross-env SITE_ID=1 BACK_GATEWAY=http://10.0.0.17:8100 USE_ROUTE_CONFIG=false SOCKET_URL=ws://10.0.0.17:9880 yarn build"
,
"npm_package_scripts_build_v2Preview"
:
"cross-env SITE_ID=1 BACK_GATEWAY=http://10.0.1.220:8100 USE_ROUTE_CONFIG=false SOCKET_URL=ws://10.0.1.220:9400 yarn build"
,
"npm_package_scripts_build_v2scm"
:
"cross-env SITE_ID=1 BACK_GATEWAY=http://10.0.1.220:8100 USE_ROUTE_CONFIG=false SOCKET_URL=ws://10.0.1.220:9400 yarn build"
,
"npm_package_scripts_build_yxc"
:
"yarn api && yarn scripts:build-yxc && umi build"
,
"npm_package_scripts_clean"
:
"rimraf node_modules"
,
"npm_package_scripts_postinstall"
:
"umi generate tmp"
,
"npm_package_scripts_prettier"
:
"prettier --write '**/*.{js,jsx,tsx,ts,less,md,json}'"
,
"npm_package_scripts_scripts_build"
:
"node scripts/run"
,
"npm_package_scripts_scripts_build_yxc"
:
"node scripts/run http://yxc-web-demo.shushangyun.com/api"
,
"npm_package_scripts_start"
:
"yarn api && yarn scripts:build && cross-env NODE_OPTIONS=--max_old_space_size=4096 umi dev"
,
"npm_package_scripts_start_10"
:
"cross-env SITE_ID=1 BACK_GATEWAY=http://10.0.0.10:8100 USE_ROUTE_CONFIG=true SOCKET_URL=ws://10.0.0.10:9400 yarn start"
,
"npm_package_scripts_start_25"
:
"cross-env SITE_ID=1 BACK_GATEWAY=http://10.0.0.25:8100 USE_ROUTE_CONFIG=true SOCKET_URL=ws://10.0.0.25:9400 yarn start"
,
"npm_package_scripts_start_analyze"
:
"ANALYZE=1 umi dev"
,
"npm_package_scripts_start_cross"
:
"cross-env SITE_ID=352 USE_ROUTE_CONFIG=false SOCKET_URL=ws://10.0.0.25:9400 yarn start"
,
"npm_package_scripts_start_dev"
:
"umi dev "
,
"npm_package_scripts_start_scm"
:
"cross-env SITE_ID=1 BACK_GATEWAY=http://lingxi-scm.wg.shushangyun.com USE_ROUTE_CONFIG=false SOCKET_URL=ws://lingxi-scm.wg.shushangyun.com yarn start"
,
"npm_package_scripts_start_study"
:
"cross-env SITE_ID=1 BACK_GATEWAY=http://10.0.1.207:8100 USE_ROUTE_CONFIG=false SOCKET_URL=ws://10.0.1.207:9400 yarn start"
,
"npm_package_scripts_start_url"
:
"cross-env SITE_ID=1 BACK_GATEWAY=http://lingxi-all.wg.shushangyun.com USE_ROUTE_CONFIG=true SOCKET_URL=ws://lingxi-all.wg.shushangyun.com yarn start"
,
"npm_package_scripts_start_v2"
:
"cross-env SITE_ID=1 BACK_GATEWAY=http://10.0.0.17:8100 USE_ROUTE_CONFIG=true SOCKET_URL=ws://10.0.0.17:9880 yarn start"
,
"npm_package_scripts_start_v2Preview"
:
"cross-env SITE_ID=1 BACK_GATEWAY=http://10.0.1.220:8100 USE_ROUTE_CONFIG=false SOCKET_URL=ws://10.0.1.220:9400 yarn start"
,
"npm_package_scripts_start_v2scm"
:
"cross-env SITE_ID=1 BACK_GATEWAY=http://10.0.1.220:8100 USE_ROUTE_CONFIG=false SOCKET_URL=ws://10.0.1.220:9400 yarn start"
,
"npm_package_scripts_test"
:
"umi-test"
,
"npm_package_scripts_test_coverage"
:
"umi-test --coverage"
,
"npm_package_scripts_upload_10"
:
"cross-env local=10 taskName=upload yarn scripts:build"
,
"npm_package_scripts_upload_25"
:
"cross-env local=25 taskName=upload yarn scripts:build"
,
"npm_package_scripts_upload_scm"
:
"cross-env local=scm taskName=upload yarn scripts:build"
,
"npm_package_scripts_upload_study"
:
"cross-env local=study taskName=upload yarn scripts:build"
,
"npm_package_scripts_upload_v2"
:
"cross-env local=v2 taskName=upload yarn scripts:build"
,
"npm_package_scripts_upload_v2Preview"
:
"cross-env local=v2Preview taskName=upload yarn scripts:build"
,
"npm_package_scripts_upload_v2scm"
:
"cross-env local=v2scm taskName=upload yarn scripts:build"
,
"npm_package_version"
:
"1.0.4"
,
"NPM_PREFIX_NPM_CLI_JS"
:
"C:
\\
Users
\\
Administrator
\\
AppData
\\
Roaming
\\
npm
\\
node_modules
\\
npm
\\
bin
\\
npm-cli.js"
,
"NUMBER_OF_PROCESSORS"
:
"6"
,
"NVMW_IOJS_ORG_MIRROR"
:
"https://npm.taobao.org/mirrors/iojs"
,
"NVMW_NODEJS_ORG_MIRROR"
:
"https://npm.taobao.org/mirrors/node"
,
"NVMW_NPM_MIRROR"
:
"https://npm.taobao.org/mirrors/npm"
,
"NVM_IOJS_ORG_MIRROR"
:
"https://npm.taobao.org/mirrors/iojs"
,
"NVM_NODEJS_ORG_MIRROR"
:
"https://npm.taobao.org/mirrors/node"
,
"OneDrive"
:
"C:
\\
Users
\\
Administrator
\\
OneDrive"
,
"ORIGINAL_XDG_CURRENT_DESKTOP"
:
"undefined"
,
"OS"
:
"Windows_NT"
,
"Path"
:
"C:
\\
Users
\\
ADMINI~1
\\
AppData
\\
Local
\\
Temp
\\
yarn--1628063321797-0.06722880081974258;F:
\\
pc
\\
lingxi-business-paltform
\\
node_modules
\\
.bin;C:
\\
Users
\\
Administrator
\\
AppData
\\
Local
\\
Yarn
\\
Data
\\
link
\\
node_modules
\\
.bin;C:
\\
Program Files
\\
libexec
\\
lib
\\
node_modules
\\
npm
\\
bin
\\
node-gyp-bin;C:
\\
Program Files
\\
lib
\\
node_modules
\\
npm
\\
bin
\\
node-gyp-bin;C:
\\
Program Files
\\
nodejs
\\
node_modules
\\
npm
\\
bin
\\
node-gyp-bin;C:
\\
Users
\\
ADMINI~1
\\
AppData
\\
Local
\\
Temp
\\
yarn--1628063211217-0.5247000430510165;F:
\\
pc
\\
lingxi-business-paltform
\\
node_modules
\\
.bin;C:
\\
Users
\\
Administrator
\\
AppData
\\
Local
\\
Yarn
\\
Data
\\
link
\\
node_modules
\\
.bin;C:
\\
Users
\\
Administrator
\\
AppData
\\
Roaming
\\
npm
\\
bin;C:
\\
Program Files
\\
libexec
\\
lib
\\
node_modules
\\
npm
\\
bin
\\
node-gyp-bin;C:
\\
Program Files
\\
lib
\\
node_modules
\\
npm
\\
bin
\\
node-gyp-bin;C:
\\
Program Files
\\
nodejs
\\
node_modules
\\
npm
\\
bin
\\
node-gyp-bin;C:
\\
Program Files
\\
nodejs
\\
node_modules
\\
npm
\\
node_modules
\\
npm-lifecycle
\\
node-gyp-bin;F:
\\
pc
\\
lingxi-business-paltform
\\
node_modules
\\
.bin;C:
\\
Program Files
\\
Common Files
\\
Oracle
\\
Java
\\
javapath;C:
\\
Windows
\\
system32;C:
\\
Windows;C:
\\
Windows
\\
System32
\\
Wbem;C:
\\
Windows
\\
System32
\\
WindowsPowerShell
\\
v1.0
\\
;C:
\\
Windows
\\
System32
\\
OpenSSH
\\
;C:
\\
Program Files
\\
Git
\\
cmd;C:
\\
Users
\\
Administrator
\\
AppData
\\
Local
\\
Android
\\
Sdk
\\
platform-tools;C:
\\
Users
\\
Administrator
\\
AppData
\\
Local
\\
Android
\\
Sdk
\\
emulator;C:
\\
Users
\\
Administrator
\\
AppData
\\
Local
\\
Android
\\
Sdk
\\
tools;C:
\\
Users
\\
Administrator
\\
AppData
\\
Local
\\
Android
\\
Sdk
\\
tools
\\
bin;C:
\\
Program Files
\\
nodejs
\\
;C:
\\
Users
\\
Administrator
\\
AppData
\\
Local
\\
Programs
\\
Python
\\
Python39
\\
Scripts
\\
;C:
\\
Users
\\
Administrator
\\
AppData
\\
Local
\\
Programs
\\
Python
\\
Python39
\\
;C:
\\
Users
\\
Administrator
\\
.windows-build-tools
\\
python27
\\
;C:
\\
Users
\\
Administrator
\\
AppData
\\
Local
\\
Microsoft
\\
WindowsApps;C:
\\
Users
\\
Administrator
\\
AppData
\\
Local
\\
BypassRuntm;D:
\\
Microsoft VS Code
\\
bin;C:
\\
Users
\\
Administrator
\\
AppData
\\
Roaming
\\
npm"
,
"PATHEXT"
:
".COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JSE;.WSF;.WSH;.MSC;.CPL"
,
"PORT"
:
"4396"
,
"PROCESSOR_ARCHITECTURE"
:
"AMD64"
,
"PROCESSOR_IDENTIFIER"
:
"Intel64 Family 6 Model 158 Stepping 10, GenuineIntel"
,
"PROCESSOR_LEVEL"
:
"6"
,
"PROCESSOR_REVISION"
:
"9e0a"
,
"ProgramData"
:
"C:
\\
ProgramData"
,
"ProgramFiles"
:
"C:
\\
Program Files"
,
"ProgramFiles(x86)"
:
"C:
\\
Program Files (x86)"
,
"ProgramW6432"
:
"C:
\\
Program Files"
,
"PROMPT"
:
"$P$G"
,
"PSModulePath"
:
"C:
\\
Users
\\
Administrator
\\
Documents
\\
WindowsPowerShell
\\
Modules;C:
\\
Program Files
\\
WindowsPowerShell
\\
Modules;C:
\\
Windows
\\
system32
\\
WindowsPowerShell
\\
v1.0
\\
Modules"
,
"PUBLIC"
:
"C:
\\
Users
\\
Public"
,
"SESSIONNAME"
:
"Console"
,
"SITE_ID"
:
"1"
,
"SOCKET_URL"
:
"ws://10.0.0.17:9880"
,
"SystemDrive"
:
"C:"
,
"SystemRoot"
:
"C:
\\
Windows"
,
"TEMP"
:
"C:
\\
Users
\\
ADMINI~1
\\
AppData
\\
Local
\\
Temp"
,
"TERM_PROGRAM"
:
"vscode"
,
"TERM_PROGRAM_VERSION"
:
"1.58.2"
,
"TMP"
:
"C:
\\
Users
\\
ADMINI~1
\\
AppData
\\
Local
\\
Temp"
,
"UMI_DIR"
:
"F:
\\
pc
\\
lingxi-business-paltform
\\
node_modules
\\
umi"
,
"UMI_VERSION"
:
"3.2.28"
,
"USERDOMAIN"
:
"PT-20191211ATIL"
,
"USERDOMAIN_ROAMINGPROFILE"
:
"PT-20191211ATIL"
,
"USERNAME"
:
"Administrator"
,
"USERPROFILE"
:
"C:
\\
Users
\\
Administrator"
,
"USE_ROUTE_CONFIG"
:
"false"
,
"VSCODE_GIT_ASKPASS_MAIN"
:
"d:
\\
Microsoft VS Code
\\
resources
\\
app
\\
extensions
\\
git
\\
dist
\\
askpass-main.js"
,
"VSCODE_GIT_ASKPASS_NODE"
:
"D:
\\
Microsoft VS Code
\\
Code.exe"
,
"VSCODE_GIT_IPC_HANDLE"
:
"
\\\\
.
\\
pipe
\\
vscode-git-c8597e1775-sock"
,
"windir"
:
"C:
\\
Windows"
,
"YARN_WRAP_OUTPUT"
:
"false"
,
"_prog"
:
"node"
},
"sharedObjects"
:
[
"C:
\\
Program Files
\\
nodejs
\\
node.exe"
,
"C:
\\
Windows
\\
SYSTEM32
\\
ntdll.dll"
,
"C:
\\
Windows
\\
System32
\\
KERNEL32.DLL"
,
"C:
\\
Windows
\\
System32
\\
KERNELBASE.dll"
,
"C:
\\
Windows
\\
System32
\\
WS2_32.dll"
,
"C:
\\
Windows
\\
System32
\\
RPCRT4.dll"
,
"C:
\\
Windows
\\
System32
\\
ADVAPI32.dll"
,
"C:
\\
Windows
\\
System32
\\
msvcrt.dll"
,
"C:
\\
Windows
\\
System32
\\
sechost.dll"
,
"C:
\\
Windows
\\
System32
\\
USER32.dll"
,
"C:
\\
Windows
\\
System32
\\
win32u.dll"
,
"C:
\\
Windows
\\
System32
\\
GDI32.dll"
,
"C:
\\
Windows
\\
System32
\\
gdi32full.dll"
,
"C:
\\
Windows
\\
System32
\\
msvcp_win.dll"
,
"C:
\\
Windows
\\
SYSTEM32
\\
dbghelp.dll"
,
"C:
\\
Windows
\\
System32
\\
ucrtbase.dll"
,
"C:
\\
Windows
\\
System32
\\
PSAPI.DLL"
,
"C:
\\
Windows
\\
System32
\\
CRYPT32.dll"
,
"C:
\\
Windows
\\
System32
\\
MSASN1.dll"
,
"C:
\\
Windows
\\
System32
\\
WINMM.dll"
,
"C:
\\
Windows
\\
System32
\\
WINMMBASE.dll"
,
"C:
\\
Windows
\\
System32
\\
cfgmgr32.dll"
,
"C:
\\
Windows
\\
SYSTEM32
\\
USERENV.dll"
,
"C:
\\
Windows
\\
System32
\\
profapi.dll"
,
"C:
\\
Windows
\\
SYSTEM32
\\
bcrypt.dll"
,
"C:
\\
Windows
\\
SYSTEM32
\\
IPHLPAPI.DLL"
,
"C:
\\
Windows
\\
System32
\\
IMM32.DLL"
,
"C:
\\
Windows
\\
System32
\\
powrprof.dll"
,
"C:
\\
Windows
\\
SYSTEM32
\\
CRYPTBASE.DLL"
,
"C:
\\
Windows
\\
System32
\\
bcryptPrimitives.dll"
,
"C:
\\
Windows
\\
system32
\\
uxtheme.dll"
,
"C:
\\
Windows
\\
System32
\\
combase.dll"
,
"C:
\\
Windows
\\
system32
\\
mswsock.dll"
,
"C:
\\
Windows
\\
System32
\\
kernel.appcore.dll"
,
"C:
\\
Windows
\\
System32
\\
NSI.dll"
,
"C:
\\
Windows
\\
SYSTEM32
\\
dhcpcsvc6.DLL"
,
"C:
\\
Windows
\\
SYSTEM32
\\
dhcpcsvc.DLL"
,
"C:
\\
Windows
\\
system32
\\
napinsp.dll"
,
"C:
\\
Windows
\\
system32
\\
pnrpnsp.dll"
,
"C:
\\
Windows
\\
system32
\\
NLAapi.dll"
,
"C:
\\
Windows
\\
SYSTEM32
\\
DNSAPI.dll"
,
"C:
\\
Windows
\\
System32
\\
winrnr.dll"
,
"C:
\\
Program Files
\\
Bonjour
\\
mdnsNSP.dll"
]
}
\ No newline at end of file
src/app.tsx
View file @
252817f1
...
...
@@ -120,8 +120,10 @@ export function onRouteChange({ routes, matchedRoutes, location, action }) {
const
breadCrumb
=
matchedRoutes
.
slice
(
2
).
reduce
((
prev
,
current
)
=>
{
return
prev
+=
"."
+
current
.
route
.
name
},
'menu'
)
if
(
breadCrumb
)
{
recent
.
put
(
breadCrumb
,
location
.
pathname
+
location
.
search
);
}
}
// if (isDev) {
// return;
...
...
src/components/AddressSelect/components/AddressRadioGroup/index.less
0 → 100644
View file @
252817f1
@import '~antd/es/style/themes/default.less';
@addressList-prefix: addressList;
.@{addressList-prefix} {
display: block;
&-item {
display: flex;
align-items: center;
justify-content: space-between;
padding: @padding-sm - 2 @padding-md;
background-color: @background-color-base;
border-radius: 4px;
cursor: pointer;
box-sizing: border-box;
border: 1px solid transparent;
transition: all .3s;
&:not(:last-child) {
margin-bottom: @margin-md;
}
&:hover {
background-color: @white;
border-color: @primary-color;
.@{addressList-prefix}-item-actions {
visibility: visible;
}
}
&-left {
display: flex;
align-items: center;
}
&-right {
flex-shrink: 0;
}
&-default {
padding: @padding-xss - 2 @padding-xss;
font-size: 12px;
color: #5C626A;
background-color: #EBECF0;
border-radius: 2px;
}
&-actions {
visibility: hidden;
transition: all .3s;
}
}
}
\ No newline at end of file
src/components/AddressSelect/components/AddressRadioGroup/index.tsx
0 → 100644
View file @
252817f1
/*
* @Author: XieZhiXiong
* @Date: 2021-08-05 14:23:40
* @LastEditors: XieZhiXiong
* @LastEditTime: 2021-08-05 18:12:24
* @Description: 地址单选框组
*/
import
React
,
{
useState
,
useEffect
,
useMemo
}
from
'react'
;
import
{
Radio
,
Button
,
Modal
,
message
}
from
'antd'
;
import
{
ExclamationCircleOutlined
}
from
'@ant-design/icons'
;
import
{
PublicApi
}
from
'@/services/api'
;
import
{
GetLogisticsShipperAddressGetResponse
,
GetLogisticsReceiverAddressGetResponse
}
from
'@/services/LogisticsApi'
;
import
{
IRequestSuccess
}
from
'@/index'
;
import
styles
from
'./index.less'
;
const
{
confirm
}
=
Modal
;
export
type
AddressItemType
=
{
/**
* 主键id
*/
id
:
number
,
/**
* 发货人名称
*/
shipperName
:
string
,
/**
* 收件人名称
*/
receiverName
:
string
,
/**
* 发货地址
*/
fullAddress
:
string
,
/**
* 手机号码
*/
phone
:
string
,
/**
* 是否默认0-否1-是
*/
isDefault
:
number
,
}
export
type
AddressValueType
=
Omit
<
AddressItemType
,
'shipperName'
|
'receiverName'
>
&
{
/**
* 寄件人 或者 收件人名称
*/
name
:
string
,
}
interface
IProps
{
/**
* 类型:1 收货地址 2 发货地址,默认 2
*/
addressType
:
1
|
2
,
/**
* 值
*/
value
?:
AddressValueType
,
/**
* 选择触发改变
*/
onChange
?:
(
value
:
AddressValueType
)
=>
void
,
/**
* 是否默认选择 默认地址,是的话会触发 onChange value为默认地址,默认为false
*/
isDefaultAddress
?:
boolean
,
}
const
AddressRadioGroup
:
React
.
FC
<
IProps
>
=
(
props
)
=>
{
const
{
addressType
=
2
,
value
,
onChange
,
isDefaultAddress
=
false
,
}
=
props
;
const
[
list
,
setList
]
=
useState
<
AddressValueType
[]
>
([]);
const
[
internalValue
,
setInternalValue
]
=
useState
<
AddressValueType
|
undefined
>
(
undefined
);
const
triggerChange
=
(
value
:
AddressValueType
)
=>
{
if
(
onChange
)
{
onChange
(
value
);
}
};
const
getAddressList
=
()
=>
{
const
fetchAction
=
addressType
===
2
?
PublicApi
.
getLogisticsSelectListShipperAddress
()
:
PublicApi
.
getLogisticsSelectListReceiverAddress
();
fetchAction
.
then
((
res
:
IRequestSuccess
<
AddressItemType
[]
>
)
=>
{
if
(
res
.
code
===
1000
)
{
const
defaultItem
=
res
.
data
?.
find
((
item
)
=>
item
.
isDefault
);
setList
(
res
.
data
?.
map
(({
shipperName
,
receiverName
,
...
rest
})
=>
({
name
:
shipperName
||
receiverName
,
...
rest
,
})));
if
(
isDefaultAddress
&&
defaultItem
)
{
const
{
shipperName
,
receiverName
,
...
rest
}
=
defaultItem
;
triggerChange
({
name
:
shipperName
||
receiverName
,
...
rest
,
});
}
}
}).
catch
((
err
)
=>
{
console
.
warn
(
err
);
});
};
useEffect
(()
=>
{
if
(
'value'
in
props
)
{
setInternalValue
(
value
);
}
},
[
value
]);
useEffect
(()
=>
{
getAddressList
();
},
[]);
const
handleSelectItem
=
(
id
:
number
)
=>
{
const
current
=
list
.
find
((
item
)
=>
item
.
id
===
id
);
if
(
!
(
'value'
in
props
))
{
setInternalValue
(
current
);
}
if
(
current
)
{
triggerChange
(
current
);
}
};
const
handleRadioClick
=
(
e
:
React
.
MouseEvent
<
HTMLElement
,
MouseEvent
>
)
=>
{
e
.
stopPropagation
();
};
const
handleEdit
=
(
e
:
React
.
MouseEvent
<
HTMLElement
,
MouseEvent
>
,
id
:
number
)
=>
{
e
.
stopPropagation
();
};
const
handleDelete
=
(
e
:
React
.
MouseEvent
<
HTMLElement
,
MouseEvent
>
,
id
:
number
)
=>
{
e
.
stopPropagation
();
confirm
({
title
:
'提示'
,
icon
:
<
ExclamationCircleOutlined
/>,
content
:
`是否需要删除该地址信息?`
,
onOk
()
{
return
(
addressType
===
2
?
PublicApi
.
postLogisticsShipperAddressDelete
({
id
})
:
PublicApi
.
postLogisticsReceiverAddressDelete
({
id
})
);
},
});
};
// 设置默认地址,这里直接调用修改地址接口
const
handleSetDefaultItem
=
async
(
e
:
React
.
MouseEvent
<
HTMLElement
,
MouseEvent
>
,
id
:
number
)
=>
{
e
.
stopPropagation
();
const
mesInstance
=
message
.
loading
({
content
:
'正在设置'
,
duration
:
0
,
});
try
{
const
res
=
addressType
===
2
?
await
PublicApi
.
getLogisticsShipperAddressGet
({
id
:
`
${
id
}
`
})
:
await
PublicApi
.
getLogisticsReceiverAddressGet
({
id
:
`
${
id
}
`
});
if
(
res
.
code
===
1000
)
{
addressType
===
2
?
await
PublicApi
.
postLogisticsShipperAddressUpdate
({
...(
res
.
data
as
GetLogisticsShipperAddressGetResponse
),
isDefault
:
1
,
})
:
await
PublicApi
.
postLogisticsReceiverAddressUpdate
({
...(
res
.
data
as
GetLogisticsReceiverAddressGetResponse
),
isDefault
:
1
,
});
}
}
catch
(
error
)
{
console
.
warn
(
error
);
}
mesInstance
();
};
const
options
=
useMemo
(()
=>
{
return
list
.
map
((
item
)
=>
({
value
:
item
.
id
,
label
:
`
${
item
.
name
}
${
item
.
fullAddress
}
${
item
.
phone
}
`
,
isDefault
:
!!
item
.
isDefault
,
}));
},
[
list
]);
return
(
<
div
className=
{
styles
.
addressList
}
>
<
Radio
.
Group
value=
{
internalValue
?.
id
}
style=
{
{
display
:
'block'
}
}
>
{
options
.
map
((
item
)
=>
(
<
div
key=
{
item
.
value
}
className=
{
styles
[
'addressList-item'
]
}
onClick=
{
()
=>
handleSelectItem
(
item
.
value
)
}
>
<
div
className=
{
styles
[
'addressList-item-left'
]
}
>
<
Radio
value=
{
item
.
value
}
onClick=
{
handleRadioClick
}
>
{
item
.
label
}
</
Radio
>
{
item
.
isDefault
?
(
<
span
className=
{
styles
[
'addressList-item-default'
]
}
>
默认地址
</
span
>
)
:
(
<
div
className=
{
styles
[
'addressList-item-actions'
]
}
>
<
Button
type=
"text"
size=
"small"
onClick=
{
(
e
)
=>
handleSetDefaultItem
(
e
,
item
.
value
)
}
>
设为默认地址
</
Button
>
</
div
>
)
}
</
div
>
<
div
className=
{
styles
[
'addressList-item-right'
]
}
>
<
div
className=
{
styles
[
'addressList-item-actions'
]
}
>
<
Button
type=
"text"
size=
"small"
onClick=
{
(
e
)
=>
handleEdit
(
e
,
item
.
value
)
}
>
编辑
</
Button
>
<
Button
type=
"text"
size=
"small"
onClick=
{
(
e
)
=>
handleDelete
(
e
,
item
.
value
)
}
>
删除
</
Button
>
</
div
>
</
div
>
</
div
>
))
}
</
Radio
.
Group
>
</
div
>
);
};
export
default
AddressRadioGroup
;
src/components/AddressSelect/components/AddressRadioGroupFormilyItem/index.less
0 → 100644
View file @
252817f1
src/components/AddressSelect/components/AddressRadioGroupFormilyItem/index.tsx
0 → 100644
View file @
252817f1
/*
* @Author: XieZhiXiong
* @Date: 2021-08-05 14:54:18
* @LastEditors: XieZhiXiong
* @LastEditTime: 2021-08-05 14:54:19
* @Description:
*/
import
React
from
'react'
;
import
{
connect
}
from
'@formily/antd'
;
import
AddressRadioGroup
from
'../AddressRadioGroup'
;
const
AddressRadioGroupFormilyItem
=
connect
()((
props
)
=>
{
const
{
dataSource
,
value
,
onChange
,
addressType
,
...
rest
}
=
props
;
return
(
<
div
style=
{
{
flex
:
1
}
}
>
<
AddressRadioGroup
addressType=
{
addressType
}
value=
{
value
}
onChange=
{
onChange
}
{
...
rest
}
/>
</
div
>
);
});
export
default
AddressRadioGroupFormilyItem
;
src/components/AddressSelect/index.less
0 → 100644
View file @
252817f1
@import '~antd/es/style/themes/default.less';
.address-select {
display: flex;
align-items: center;
&-input {
flex: 1;
}
&-action {
margin-left: @margin-md;
}
}
.label-required {
font-size: 12px;
color: #909399;
&::after {
margin-left: 8px;
font-size: 12px;
font-family: SimSun, sans-serif;
color: #ff4d4f;
content: '*';
}
}
\ No newline at end of file
src/components/AddressSelect/index.tsx
0 → 100644
View file @
252817f1
/*
* @Author: XieZhiXiong
* @Date: 2021-08-05 10:28:06
* @LastEditors: XieZhiXiong
* @LastEditTime: 2021-08-05 18:37:33
* @Description: 地址选择 FormItem
*/
import
React
,
{
useState
,
useEffect
,
useMemo
}
from
'react'
;
import
{
Select
,
Button
,
Drawer
,
Divider
}
from
'antd'
;
import
{
PublicApi
}
from
'@/services/api'
;
import
{
createAsyncFormActions
,
FormEffectHooks
,
}
from
'@formily/antd'
;
import
{
DatePicker
}
from
'@formily/antd-components'
;
import
{
IRequestSuccess
}
from
'@/index'
;
import
{
useLinkEnumEffect
}
from
'@/components/NiceForm/linkages/linkEnum'
;
import
{
useAsyncSelect
}
from
'@/formSchema/effects/useAsyncSelect'
;
import
NiceForm
from
'@/components/NiceForm'
;
import
{
schema
}
from
'./schema'
;
import
{
AddressItemType
,
AddressValueType
}
from
'./components/AddressRadioGroup'
;
import
AddressRadioGroup
from
'./components/AddressRadioGroupFormilyItem'
;
import
styles
from
'./index.less'
;
const
formActions
=
createAsyncFormActions
();
const
{
onFormMount$
,
onFieldValueChange$
,
}
=
FormEffectHooks
;
interface
IProps
{
/**
* 类型:1 收货地址 2 发货地址,默认 2
*/
addressType
?:
1
|
2
,
/**
* 值
*/
value
?:
AddressValueType
,
/**
* 选择触发改变
*/
onChange
?:
(
value
:
AddressValueType
)
=>
void
,
/**
* 是否默认选择 默认地址,是的话会触发 onChange value为默认地址,默认为false
*/
isDefaultAddress
?:
boolean
,
}
export
type
SubmitValuesType
=
{
/**
* 地址单选选中的值
*/
address
?:
AddressValueType
,
/**
* 收件人名称 或 发货人名称
*/
name
:
string
,
/**
* 省级id
*/
provinceId
:
number
,
/**
* 市级id
*/
cityId
:
number
,
/**
* 区级id
*/
areaId
:
number
,
/**
* 详细地址
*/
detailed
:
string
,
/**
* 邮编
*/
postalCode
:
string
,
/**
* 区号
*/
telCode
:
string
,
/**
* 手机号码
*/
phone
:
string
,
/**
* 电话号码
*/
tel
:
string
,
/**
* 是否是默认
*/
isDefault
:
boolean
,
}
const
AddressSelect
:
React
.
FC
<
IProps
>
=
(
props
)
=>
{
const
{
addressType
=
2
,
value
,
onChange
,
isDefaultAddress
=
false
,
}
=
props
;
const
[
options
,
setOptions
]
=
useState
<
{
label
,
value
}[]
>
([]);
const
[
internalValue
,
setInternalValue
]
=
useState
<
AddressValueType
>
();
const
[
visibleDrawer
,
setVisibleDrawer
]
=
useState
(
false
);
const
[
submitLoading
,
setSubmitLoading
]
=
useState
(
false
);
const
triggerChange
=
(
value
:
AddressValueType
)
=>
{
if
(
onChange
)
{
onChange
(
value
);
}
};
const
getAddressList
=
()
=>
{
const
fetchAction
=
addressType
===
2
?
PublicApi
.
getLogisticsSelectListShipperAddress
()
:
PublicApi
.
getLogisticsSelectListReceiverAddress
();
fetchAction
.
then
((
res
:
IRequestSuccess
<
AddressItemType
[]
>
)
=>
{
if
(
res
.
code
===
1000
)
{
const
defaultItem
=
res
.
data
?.
find
((
item
)
=>
item
.
isDefault
);
setOptions
(
res
.
data
?.
map
((
item
)
=>
({
value
:
item
.
id
,
label
:
`
${
item
.
shipperName
||
item
.
receiverName
}
${
item
.
fullAddress
}
${
item
.
phone
}
`
})));
if
(
isDefaultAddress
&&
defaultItem
)
{
const
{
shipperName
,
receiverName
,
...
rest
}
=
defaultItem
;
triggerChange
({
name
:
shipperName
||
receiverName
,
...
rest
,
});
}
}
}).
catch
((
err
)
=>
{
console
.
warn
(
err
);
});
};
// 获取手机code
const
fetchTelCode
=
async
()
=>
{
const
{
data
,
code
}
=
await
PublicApi
.
getManageCountryAreaGetTelCode
();
if
(
code
===
1000
)
{
return
data
;
}
return
[];
};
useEffect
(()
=>
{
getAddressList
();
},
[]);
const
handleVisibleDrawer
=
(
flag
?:
boolean
)
=>
{
setVisibleDrawer
(
!!
flag
);
};
const
handleSubmit
=
(
values
:
SubmitValuesType
)
=>
{
console
.
log
(
'values'
,
values
)
};
const
useFields
=
():
any
=>
(
useMemo
(()
=>
({
AddressRadioGroup
,
}),
[])
);
const
AddressLabel
=
(
<
div
className=
{
styles
[
'label-required'
]
}
>
收件地区
</
div
>
);
const
handleAddAddress
=
()
=>
{
formActions
.
setFieldState
(
'ADDRESS_NEW'
,
state
=>
{
state
.
visible
=
!
state
.
visible
;
});
};
const
AddButton
=
useMemo
(()
=>
{
return
()
=>
(
<
div
>
<
Button
onClick=
{
handleAddAddress
}
>
新增收货地址
</
Button
>
<
Divider
style=
{
{
marginBottom
:
4
}
}
/>
</
div
>
);
},
[]);
return
(
<>
<
div
className=
{
styles
[
'address-select'
]
}
>
<
Select
options=
{
options
}
value=
{
value
?.
id
}
/>
<
Button
onClick=
{
()
=>
handleVisibleDrawer
(
true
)
}
className=
{
styles
[
'address-select-action'
]
}
>
管理
</
Button
>
</
div
>
<
Drawer
title=
"更改收货地址信息"
width=
{
800
}
onClose=
{
()
=>
handleVisibleDrawer
(
false
)
}
visible=
{
visibleDrawer
}
footer=
{
<
div
style=
{
{
textAlign
:
'right'
,
}
}
>
<
Button
onClick=
{
()
=>
handleVisibleDrawer
(
false
)
}
style=
{
{
marginRight
:
16
}
}
>
取 消
</
Button
>
<
Button
onClick=
{
()
=>
formActions
.
submit
()
}
type=
"primary"
loading=
{
submitLoading
}
>
确 定
</
Button
>
</
div
>
}
destroyOnClose
>
<
NiceForm
previewPlaceholder=
"' '"
components=
{
{
AddButton
,
}
}
expressionScope=
{
{
AddressLabel
,
}
}
fields=
{
useFields
()
}
effects=
{
(
$
,
{
setFieldState
})
=>
{
onFormMount$
().
subscribe
(
async
()
=>
{
const
areaRes
=
await
PublicApi
.
getManageAreaAll
();
if
(
areaRes
.
code
===
1000
)
{
const
{
data
}
=
areaRes
;
formActions
.
setFieldState
(
'provinceId'
,
targetState
=>
{
targetState
.
originData
=
data
;
targetState
.
props
.
enum
=
data
.
map
(
v
=>
({
label
:
v
.
name
,
value
:
v
.
id
,
}));
});
}
});
useLinkEnumEffect
(
'areaResponses'
,
result
=>
result
.
map
(
v
=>
({
label
:
v
.
name
,
value
:
v
.
id
,
})));
useAsyncSelect
(
'telCode'
,
fetchTelCode
);
}
}
actions=
{
formActions
}
schema=
{
schema
}
onSubmit=
{
values
=>
handleSubmit
(
values
)
}
/>
</
Drawer
>
</>
);
};
export
default
AddressSelect
;
src/components/AddressSelect/schema.ts
0 → 100644
View file @
252817f1
/*
* @Author: XieZhiXiong
* @Date: 2021-08-05 14:02:46
* @LastEditors: XieZhiXiong
* @LastEditTime: 2021-08-05 18:34:01
* @Description:
*/
import
{
ISchema
}
from
'@formily/antd'
;
import
{
PATTERN_MAPS
}
from
'@/constants/regExp'
;
export
const
schema
:
ISchema
=
{
type
:
'object'
,
properties
:
{
ADDRESS_LIST
:
{
type
:
'object'
,
'x-component'
:
'FlagBox'
,
'x-component-props'
:
{
title
:
'选择收货地址'
,
border
:
false
,
},
properties
:
{
MEGA_LAYOUT_1
:
{
type
:
'object'
,
'x-component'
:
'Mega-Layout'
,
'x-component-props'
:
{
wrapperCol
:
24
,
},
properties
:
{
address
:
{
type
:
'string'
,
'x-component'
:
'AddressRadioGroup'
,
'x-component-props'
:
{},
'x-rules'
:
[
{
required
:
true
,
message
:
'请选择地址'
,
},
],
},
},
},
},
},
ADD_ACTION
:
{
type
:
'object'
,
'x-component'
:
'AddButton'
,
},
ADDRESS_NEW
:
{
type
:
'object'
,
'x-component'
:
'FlagBox'
,
'x-component-props'
:
{
title
:
'填写收货信息'
,
border
:
false
,
},
visible
:
false
,
properties
:
{
MEGA_LAYOUT_2
:
{
type
:
'object'
,
'x-component'
:
'mega-layout'
,
'x-component-props'
:
{
labelCol
:
4
,
wrapperCol
:
20
,
labelAlign
:
'left'
,
},
properties
:
{
name
:
{
type
:
'string'
,
title
:
'收件人'
,
'x-component-props'
:
{
placeholder
:
'请输入'
,
},
'x-rules'
:
[
{
required
:
true
,
message
:
'请输入收件人'
,
},
{
limitByte
:
true
,
// 自定义校验规则
maxByte
:
10
,
}
],
required
:
true
,
},
MEGA_LAYOUT_2_1
:
{
type
:
'object'
,
'x-component'
:
'mega-layout'
,
'x-component-props'
:
{
label
:
'{{AddressLabel}}'
,
wrapperCol
:
24
,
},
required
:
true
,
properties
:
{
MEGA_LAYOUT_2_1_1
:
{
type
:
'object'
,
'x-component'
:
'mega-layout'
,
'x-component-props'
:
{
grid
:
true
,
full
:
true
,
autoRow
:
true
,
columns
:
3
,
},
properties
:
{
provinceId
:
{
type
:
'string'
,
enum
:
[],
'x-component-props'
:
{
placeholder
:
'- 省 -'
,
},
'x-linkages'
:
[
{
type
:
'value:linkage'
,
condition
:
'{{ !!$self.value }}'
,
// $value,不触发不知道咋回事
origin
:
'provinceId'
,
target
:
'cityId'
,
},
],
required
:
true
,
},
cityId
:
{
type
:
'string'
,
enum
:
[],
'x-component-props'
:
{
placeholder
:
'- 市 -'
,
},
'x-linkages'
:
[
{
type
:
'value:linkage'
,
condition
:
'{{ !!$self.value }}'
,
// $value,不触发不知道咋回事
origin
:
'cityId'
,
target
:
'areaId'
,
},
],
required
:
true
,
},
areaId
:
{
type
:
'string'
,
enum
:
[],
'x-component-props'
:
{
placeholder
:
'- 县 / 区 -'
,
},
required
:
true
,
},
},
},
},
},
detailed
:
{
type
:
'string'
,
title
:
'详细地址'
,
'x-component-props'
:
{
placeholder
:
'请输入详细地址(最长50个字符,25个汉字)'
,
},
'x-rules'
:
[
{
required
:
true
,
message
:
'请输入详细地址'
,
},
{
limitByte
:
true
,
// 自定义校验规则
maxByte
:
50
,
}
],
},
postalCode
:
{
type
:
'string'
,
title
:
'邮编'
,
'x-component-props'
:
{},
'x-rules'
:
[
{
limitByte
:
true
,
// 自定义校验规则
maxByte
:
16
,
}
],
},
MEGA_LAYOUT_2_2
:
{
type
:
'object'
,
'x-component'
:
'mega-layout'
,
'x-component-props'
:
{
label
:
'手机号码'
,
wrapperCol
:
24
,
},
properties
:
{
MEGA_LAYOUT2_1
:
{
type
:
'object'
,
'x-component'
:
'mega-layout'
,
'x-component-props'
:
{
grid
:
true
,
full
:
true
,
},
properties
:
{
telCode
:
{
type
:
'string'
,
enum
:
[],
'x-component-props'
:
{
placeholder
:
'请选择'
,
},
required
:
true
,
},
phone
:
{
type
:
'string'
,
required
:
true
,
'x-mega-props'
:
{
span
:
3
,
},
'x-component-props'
:
{
placeholder
:
'请输入你的手机号码'
,
maxLength
:
11
,
},
'x-rules'
:
[
{
pattern
:
PATTERN_MAPS
.
phone
,
message
:
'请输入正确格式的手机号'
,
},
],
},
},
},
},
},
tel
:
{
type
:
'string'
,
title
:
'电话号码'
,
'x-component-props'
:
{},
'x-rules'
:
[
{
limitByte
:
true
,
// 自定义校验规则
maxByte
:
16
,
}
],
},
isDefault
:
{
type
:
'boolean'
,
title
:
'是否默认'
,
'x-component'
:
'Switch'
,
},
},
},
},
},
},
};
\ No newline at end of file
src/components/NiceForm/components/CustomAddressSelect.tsx
0 → 100644
View file @
252817f1
/*
* @Author: XieZhiXiong
* @Date: 2021-08-05 11:26:43
* @LastEditors: XieZhiXiong
* @LastEditTime: 2021-08-05 11:30:21
* @Description:
*/
import
React
from
'react'
;
import
{
connect
}
from
'@formily/antd'
;
import
AddressSelect
from
'@/components/AddressSelect'
;
const
CustomAddressSelect
=
connect
()((
props
)
=>
{
const
{
dataSource
,
value
,
onChange
,
addressType
,
...
rest
}
=
props
;
return
(
<
div
style=
{
{
flex
:
1
}
}
>
<
AddressSelect
addressType=
{
addressType
}
value=
{
value
}
onChange=
{
onChange
}
{
...
rest
}
/>
</
div
>
);
});
export
default
CustomAddressSelect
;
src/components/NiceForm/index.tsx
View file @
252817f1
...
...
@@ -36,6 +36,7 @@ import AreaSelect from './components/AreaSelect';
import
CustomSelect
from
'./components/CustomSelect'
;
import
CheckboxGroup
from
'./components/CheckboxGroup'
;
import
CustomRadioGroup
from
'./components/CustomRadioGroup'
;
import
CustomAddressSelect
from
'./components/CustomAddressSelect'
;
import
{
useLinkComponentProps
}
from
'./linkages/linkComponentProps'
;
import
Loading
from
'../Loading'
;
import
MultAddress
from
'./components/MultAddress'
;
...
...
@@ -129,6 +130,7 @@ export const componentExport = {
CustomSelect
,
CheckboxGroup
,
CustomRadioGroup
,
CustomAddressSelect
,
Switch
,
}
const
NiceForm
:
React
.
FC
<
NiceFormProps
>
=
props
=>
{
...
...
src/components/NiceForm/public/index.tsx
View file @
252817f1
...
...
@@ -18,11 +18,13 @@ const RowLayout = styled(props => <Row justify='end' {...props}/>)`
const
FlagBox
=
styled
(
props
=>
<
div
{
...
props
}
/>)
`
.flag-box-title {
padding-left:
${
themeConfig
[
'@padding-xs'
]}
;
margin-bottom:
${
themeConfig
[
'@margin-lg'
]}
;
line-height:
${
themeConfig
[
'@font-size-lg'
]}
;
font-size:
${
themeConfig
[
'@font-size-lg'
]}
;
font-weight: 500;
}
.flag-box-title.border {
padding-left:
${
themeConfig
[
'@padding-xs'
]}
;
border-left: 2px solid
${
themeConfig
[
'@primary-color'
]}
;
}
`
...
...
@@ -111,12 +113,16 @@ registerVirtualBox('LeftRightLayout', (_props) => {
registerVirtualBox
(
'FlagBox'
,
(
_props
)
=>
{
const
{
children
,
props
}
=
_props
;
const
title
=
props
[
'x-component-props'
]
?
props
[
'x-component-props'
].
title
:
''
;
const
border
=
props
[
'x-component-props'
]
?
props
[
'x-component-props'
].
border
||
true
:
true
;
const
wrapProps
=
props
[
'x-component-props'
]
?
props
[
'x-component-props'
].
wrapProps
:
{};
const
titleCls
=
cx
(
'flag-box-title'
,
{
'border'
:
border
});
return
(
<
FlagBox
{
...
wrapProps
}
>
<
div
className=
"flag-box-title"
>
<
div
className=
{
titleCls
}
>
{
title
}
</
div
>
<
div
>
...
...
src/layouts/BasicLayout.tsx
View file @
252817f1
...
...
@@ -6,7 +6,7 @@ import ProLayout, {
getMenuData
,
getPageTitle
}
from
'@ant-design/pro-layout'
;
import
React
,
{
useState
,
useEffect
,
useLayoutEffect
}
from
'react'
;
import
React
,
{
useState
,
useEffect
,
useLayoutEffect
,
useMemo
}
from
'react'
;
import
{
Link
,
useIntl
,
Helmet
}
from
'umi'
;
import
RightContent
from
'./components/RightContent'
;
import
{
GlobalConfig
}
from
'@/global/config'
;
...
...
@@ -149,7 +149,7 @@ const BasicLayout: React.FC<BasicLayoutProps> = (props) => {
const
prolayoutStyle
=
isHome
?
{
minHeight
:
'100vh'
,
minWidth
:
'1280px'
minWidth
:
'1280px'
,
}
:
{}
...
...
@@ -162,7 +162,7 @@ const BasicLayout: React.FC<BasicLayoutProps> = (props) => {
// formatMessage={formatMessage}
menuHeaderRender=
{
(
logoDom
,
titleDom
)
=>
(
<
Link
to=
"/"
>
{
logoDom
}
{
/* {logoDom} */
}
{
titleDom
}
</
Link
>
)
}
...
...
@@ -182,7 +182,7 @@ const BasicLayout: React.FC<BasicLayoutProps> = (props) => {
changeOpenKeys=
{
(
keys
:
string
[])
=>
setOpenKeys
(
keys
)
}
/>
}
footerRender=
{
()
=>
defaultFooterDom
}
rightContentRender=
{
()
=>
<
RightContent
/>
}
rightContentRender=
{
()
=>
<
RightContent
isHome=
{
isHome
}
/>
}
{
...
props
}
{
...
settings
}
>
...
...
src/layouts/components/MenuSlider.tsx
View file @
252817f1
...
...
@@ -91,7 +91,9 @@ const MenuSlider: React.FC<MenuSliderProps> = (props) => {
return
<>
<
OuterSider
{
...
props
}
/>
<
Sider
theme=
"light"
className=
"menu_sider"
collapsed=
{
props
.
collapseState
}
>
<
div
className=
{
styles
.
logo
}
><
img
src=
{
GlobalConfig
.
global
.
siteInfo
.
logo
}
/></
div
>
<
Link
to=
{
`/`
}
className=
{
styles
.
logo
}
>
<
img
src=
{
GlobalConfig
.
global
.
siteInfo
.
logo
}
/>
</
Link
>
<
div
className=
{
styles
.
menuTitle
}
>
{
menuRouter
?.
name
}
</
div
>
...
...
src/layouts/components/RightContent.tsx
View file @
252817f1
import
{
Tooltip
,
Badge
}
from
'antd'
;
import
{
BellOutlined
,
CustomerServiceOutlined
}
from
'@ant-design/icons'
;
import
React
,
{
useCallback
,
useRef
,
useLayoutEffect
,
useState
,
useEffect
}
from
'react'
;
import
React
,
{
useCallback
,
useRef
,
useLayoutEffect
,
useState
,
useEffect
,
useMemo
}
from
'react'
;
import
Avatar
from
'./AvatarDropdown'
;
import
SelectLang
from
'./SelectLang'
;
import
Location
from
'./Location'
;
...
...
@@ -12,6 +12,7 @@ import { getAuth } from '@/utils/auth';
import
{
getCookie
}
from
'@/utils/cookie'
import
{
notificationChatRoom
}
from
'@/utils/im'
import
{
SOCKET_URL
,
PLATFORM_DOMAIN
}
from
'@/constants'
;
import
{
GlobalConfig
}
from
'@/global/config'
;
import
{
usePurchaseBidStore
}
from
'@/store/purchaseBid'
;
...
...
@@ -38,8 +39,8 @@ type WsMessage = {
timestamp
:
number
}
const
GlobalHeaderRight
:
React
.
FC
<
{
SiteStore
?:
any
}
>
=
(
props
)
=>
{
const
{
SiteStore
:
{
currentLayoutInfo
}
}
=
props
;
const
GlobalHeaderRight
:
React
.
FC
<
{
SiteStore
?:
any
,
isHome
:
boolean
}
>
=
(
props
)
=>
{
const
{
SiteStore
:
{
currentLayoutInfo
}
,
isHome
}
=
props
;
const
[
message
,
setMessage
]
=
useState
<
number
>
(
0
);
const
className
=
styles
.
right
;
...
...
@@ -82,7 +83,7 @@ const GlobalHeaderRight: React.FC<{ SiteStore?: any }> = (props) => {
console
.
log
(
"socket 出错"
)
}
}
},
[
ws
]);
},
[
ws
,
userInfo
]);
useEffect
(()
=>
{
webSocketInit
();
...
...
@@ -99,9 +100,26 @@ const GlobalHeaderRight: React.FC<{ SiteStore?: any }> = (props) => {
window
.
location
.
href
=
PLATFORM_DOMAIN
}
}
const
cacheStyle
=
useMemo
(()
=>
{
return
{
isHome
:
{
marginLeft
:
'-40px'
},
iamge
:
{
height
:
"30px"
,
marginRight
:
'12px'
}
}
},
[])
return
(
<
div
className=
{
className
}
>
<
div
>
<
Link
to=
{
"/memberCenter/home"
}
className=
{
styles
.
container
}
style=
{
isHome
?
cacheStyle
.
isHome
:
{}
}
>
{
isHome
&&
(
<
img
src=
{
GlobalConfig
.
global
.
siteInfo
.
logo
}
style=
{
cacheStyle
.
iamge
}
/>
)
}
<
span
>
{
GlobalConfig
.
global
.
siteInfo
.
name
}
</
span
>
</
Link
>
</
div
>
<
div
className=
{
styles
.
rightContent
}
>
<
span
style=
{
{
color
:
'rgba(0, 0, 0, 0.85)'
,
cursor
:
"pointer"
}
}
onClick=
{
handleBackMall
}
>
返回商城
</
span
>
<
Roles
/>
{
/* <Location /> */
}
...
...
@@ -128,6 +146,7 @@ const GlobalHeaderRight: React.FC<{ SiteStore?: any }> = (props) => {
</Tooltip> */
}
<
Avatar
/>
</
div
>
</
div
>
);
};
...
...
src/layouts/styles/RightContent.less
View file @
252817f1
...
...
@@ -14,12 +14,32 @@
.right {
display: flex;
float: right;
flex-direction: row;
align-items: center;
width: 100%;
// float: right;
height: @layout-header-height;
margin-left: auto;
overflow: hidden;
//
overflow: hidden;
font-size: 12px;
padding: 0 16px;
position: relative;
justify-content: space-between;
.container {
font-size: 16px;
display: flex;
flex-direction: row;
align-items: center;
color: #000;
}
.rightContent {
display: flex;
flex-direction: row;
align-items: center;
}
.action {
display: flex;
...
...
src/pages/afterService/returnApplication/returnPrSubmit/components/ReturnForm/schema/index.ts
View file @
252817f1
...
...
@@ -463,14 +463,30 @@ export const addSchema = (orderType: number): ISchema => {
},
],
},
// // 退货发货地址
// shippingAddress: {
// title: '退货发货地址',
// type: 'string',
// visible: false,
// 'x-component': 'AddressFormItem',
// 'x-component-props': {
// dataSource: [],
// },
// 'x-rules': [
// {
// required: true,
// message: '请选择退货发货地址',
// },
// ],
// },
// 退货发货地址
shippingAddress
:
{
title
:
'退货发货地址'
,
type
:
'string'
,
visible
:
false
,
'x-component'
:
'
AddressFormItem
'
,
'x-component'
:
'
CustomAddressSelect
'
,
'x-component-props'
:
{
dataSource
:
[]
,
isDefaultAddress
:
true
,
},
'x-rules'
:
[
{
...
...
src/pages/contract/coordination/details/index.tsx
View file @
252817f1
...
...
@@ -198,18 +198,9 @@ const Details = (props: any) => {
}
/* 提交表单 */
const
submitExamine
=
async
()
=>
{
let
flag
=
false
;
ListData
.
every
((
item
=>
{
if
(
item
.
associatedDataId
&&
item
.
associatedMaterielNo
)
{
flag
=
true
;
}
}))
if
(
!
flag
)
{
message
.
info
(
'请先关联报价商品'
);
}
else
{
if
(
type
===
'Sign'
&&
contractText
.
isUseElectronicContract
==
1
)
{
console
.
log
(
signatureLogId
)
let
res
=
await
PublicApi
.
getContractSignatureGetHandSignatureUrl
({
signatureLogId
:
98
});
let
res
=
await
PublicApi
.
getContractSignatureGetHandSignatureUrl
({
signatureLogId
,
});
if
(
res
.
code
==
1000
)
{
console
.
log
(
res
);
window
.
open
(
res
.
data
.
url
)
...
...
@@ -217,7 +208,17 @@ const Details = (props: any) => {
}
else
{
setIsModalVisible
(
!
Visible
)
}
}
// let flag = false;
// ListData.every((item => {
// if (item.associatedDataId && item.associatedMaterielNo) {
// flag = true;
// }
// }))
// if (!flag) {
// message.info('请先关联报价商品');
// } else {
// }
}
const
handleIsAllMemberChange
=
(
v
:
any
)
=>
{
...
...
src/pages/contract/manage/add/addList.tsx
View file @
252817f1
...
...
@@ -128,6 +128,7 @@ const addList = () => {
// 甲方不同意签订合同都可以修改
return
(
<
div
>
<
span
style=
{
{
color
:
'#00B37A'
,
cursor
:
'pointer'
,
marginRight
:
10
}
}
onClick=
{
()
=>
submit
(
record
.
id
)
}
>
提交
</
span
>
{
record
.
innerStatus
==
'1'
||
record
.
outerStatus
==
'1'
||
record
.
outerStatus
==
'3'
||
record
.
outerStatus
==
'5'
?
<
span
style=
{
{
color
:
'#00B37A'
,
cursor
:
'pointer'
,
marginRight
:
10
}
}
onClick=
{
()
=>
edit
(
record
)
}
>
修改
</
span
>
:
''
}
...
...
@@ -141,12 +142,12 @@ const addList = () => {
cancelText=
"否"
>
<
Button
style=
{
{
marginRight
:
10
}
}
// style=
{{
margin
:
10
}}
type=
"link"
>
删除
</
Button
>
</
Popconfirm
>
}
<
span
style=
{
{
color
:
'#00B37A'
,
cursor
:
'pointer'
,
marginRight
:
10
}
}
onClick=
{
()
=>
submit
(
record
.
id
)
}
>
提交
</
span
>
</
div
>
)
}
...
...
src/pages/contract/manage/add/components/FormList.tsx
View file @
252817f1
...
...
@@ -136,14 +136,13 @@ const FormList = (props: any) => {
bidCount
:
sourceType
==
'1'
?
item
.
awardTaxProbability
*
item
.
purchaseCount
/
100
:
sourceType
==
'2'
?
item
.
awardTenderRatio
*
item
.
inviteTenderMateriel
.
count
/
100
:
item
.
purchaseCount
,
bidAmount
:
sourceType
==
'1'
?
item
.
awardTaxProbability
*
item
.
purchaseCount
/
100
*
item
.
taxUnitPrice
:
sourceType
==
'2'
?
item
.
awardTenderRatio
*
item
.
inviteTenderMateriel
.
count
/
100
*
item
.
price
:
item
.
price
,
// productBrand
associatedType
:
_filter
(
sourceType
,
item
,
[
''
,
'productAttributeJson'
,
''
,
''
]).
split
(
'-'
)[
1
],
associatedBrand
:
_filter
(
sourceType
,
item
,
[
''
,
'productBrand'
,
''
,
''
]),
associatedDataId
:
_filter
(
sourceType
,
item
,
[
''
,
'productId'
,
'commoditySkuId'
]),
// 关联商品id
associatedMaterielNo
:
_filter
(
sourceType
,
item
,
[
''
,
'number'
,
'commodityAttribute'
]),
// 关联物料编号
associatedGoods
:
_filter
(
sourceType
,
item
,
[
''
,
'productAttributeJson'
,
'commodityAttribute'
,
''
]),
//关联
associatedMaterielNo
:
_filter
(
sourceType
,
item
,
[
''
,
'number'
,
'commodityCode'
]),
// 关联物料编号
associatedMaterielName
:
_filter
(
sourceType
,
item
,
[
''
,
'productName'
,
'commodityName'
]),
// 关联商品名称
associated
Goods
:
_filter
(
sourceType
,
item
,
[
''
,
'productAttributeJson'
,
'commodityBrand'
]),
//关联品牌
// associatedMaterielName: sourceType == '1' ? item.productName : sourceType == '2' ? item.commodityName : '',
// associatedGoods: sourceType == '1' ? item.productAttributeJson : sourceType == '2' ? item.commodityBrand : ''
,// 关联品牌
associated
Type
:
_filter
(
sourceType
,
item
,
[
''
,
'productAttributeJson'
,
'commodityCategory'
,
''
]).
split
(
'-'
)[
1
],
//规格型号
associatedCategory
:
_filter
(
sourceType
,
item
,
[
''
,
'productAttributeJson'
,
'commodityCategory'
,
''
]),
// 关联商品品类
associatedBrand
:
_filter
(
sourceType
,
item
,
[
''
,
'productBrand'
,
'commodityBrand'
,
''
])
,
// 关联品牌
rowId
:
index
,
}
})
...
...
@@ -358,7 +357,7 @@ const FormList = (props: any) => {
</
div
>
<
div
className=
{
styles
.
text
}
>
<
p
>
规格:
{
record
.
associatedGoods
}
</
p
>
<
p
>
品类:
{
record
.
associated
Type
}
</
p
>
<
p
>
品类:
{
record
.
associated
Category
}
</
p
>
</
div
>
<
div
className=
{
styles
.
text
}
>
<
p
>
品牌:
{
record
.
associatedBrand
}
</
p
>
...
...
src/pages/contract/manage/details/index.tsx
View file @
252817f1
...
...
@@ -292,10 +292,10 @@ const Details = (props: any) => {
</
div
>
<
div
className=
{
style
.
text
}
>
<
p
>
商品编号:
{
record
.
associatedMaterielNo
}
</
p
>
<
p
className=
{
style
.
nowrap
}
>
商品名称:
{
record
.
associated
Goods
}
</
p
>
<
p
className=
{
style
.
nowrap
}
>
商品名称:
{
record
.
associated
MaterielName
}
</
p
>
</
div
>
<
div
className=
{
style
.
text
}
>
<
p
>
规格型号:
{
record
.
associated
Type
}
</
p
>
<
p
>
规格型号:
{
record
.
associated
Goods
}
</
p
>
<
p
>
品类:
{
record
.
associatedCategory
}
</
p
>
</
div
>
<
div
className=
{
style
.
text
}
>
...
...
src/pages/home/components/UserCenter/index.tsx
View file @
252817f1
...
...
@@ -16,6 +16,7 @@ import Icon, { QuestionCircleOutlined } from '@ant-design/icons';
import
{
ReactComponent
as
DefaultAvatar
}
from
'@/assets/imgs/default_avatar.svg'
;
import
UploadFiles
from
'@/components/UploadFiles/UploadFiles'
import
{
UploadChangeParam
}
from
'antd/lib/upload/interface'
import
{
GlobalConfig
}
from
'@/global/config'
;
interface
Iprops
{}
...
...
@@ -74,7 +75,7 @@ const UserCenter: React.FC<Iprops> = (props) => {
<
div
className=
{
styles
.
header
}
>
<
div
className=
{
styles
.
infos
}
>
<
div
className=
{
styles
.
hi
}
>
{
`Hi, ${userAuth?.name}! 欢迎来到
数商云瓴犀业务中台能力中心
`
}
{
`Hi, ${userAuth?.name}! 欢迎来到
${GlobalConfig.global.siteInfo.name}
`
}
</
div
>
<
div
className=
{
styles
.
date
}
>
{
today
.
format
(
'YYYY年MM月DD日'
)
}
星期
{
WEEKDAYS
[
today
.
day
()]
}
...
...
src/pages/member/memberPrVerifyComingData/components/VerifyComingDataDrawer/index.tsx
View file @
252817f1
...
...
@@ -38,6 +38,10 @@ export type ValueType = {
* 审核原因
*/
reason
:
string
,
/**
* 上级id
*/
upperRelationId
:
number
,
}
interface
IProps
{
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment