Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in / Register
Toggle navigation
C
contraceptives_app
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
ynby
contraceptives_app
Commits
3c0c0909
Commit
3c0c0909
authored
Mar 31, 2021
by
gengchunlei
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
人工申领
parent
2ea6f30a
Hide whitespace changes
Inline
Side-by-side
Showing
15 changed files
with
695 additions
and
21 deletions
+695
-21
.env.dev
.env.dev
+1
-1
.env.prod
.env.prod
+1
-1
.env.test
.env.test
+1
-1
index.html
public/index.html
+2
-1
elGlobal.css
src/assets/elGlobal.css
+21
-0
successfulApplication.png
src/assets/img/successfulApplication.png
+0
-0
index.js
src/router/index.js
+5
-0
api.js
src/utils/api.js
+23
-7
choiceContraceptives.vue
src/views/choiceContraceptives.vue
+3
-3
collectRecords.vue
src/views/collectRecords.vue
+2
-1
manualCollection.vue
src/views/medicalCollection/manualCollection.vue
+403
-0
manualSuccess.vue
src/views/medicalCollection/manualSuccess.vue
+201
-0
myMap.vue
src/views/myMap.vue
+10
-3
testJson.js
src/views/testJson.js
+19
-0
vue.config.js
vue.config.js
+3
-3
No files found.
.env.dev
View file @
3c0c0909
NODE_ENV=dev
NODE_ENV=dev
VUE_APP_BASE_URL=http
://123.56.183.13:8889
/
VUE_APP_BASE_URL=http
s://beta-yaojuapp.yiboshi.com
/
.env.prod
View file @
3c0c0909
NODE_ENV=prod
NODE_ENV=prod
VUE_APP_PATH=https://ynfymds-service.yiboshi.com
VUE_APP_PATH=https://ynfymds-service.yiboshi.com
VUE_APP_BASE_URL = http
://123.56.183.13:8889
/
VUE_APP_BASE_URL = http
s://beta-yaojuapp.yiboshi.com
/
.env.test
View file @
3c0c0909
NODE_ENV
=
test
NODE_ENV
=
test
VUE_APP_PATH
=
http
://
123.56
.
183.13
:
8086
VUE_APP_PATH
=
http
s
://
beta
-
yaojuapp
.
yiboshi
.
com
/
public/index.html
View file @
3c0c0909
...
@@ -5,7 +5,8 @@
...
@@ -5,7 +5,8 @@
<meta
http-equiv=
"X-UA-Compatible"
content=
"IE=edge"
>
<meta
http-equiv=
"X-UA-Compatible"
content=
"IE=edge"
>
<meta
name=
"viewport"
content=
"width=device-width,initial-scale=1.0,maximum-scale=1.0,user-scalable=0"
/>
<meta
name =
"format-detection"
content =
"telephone=yes"
>
<meta
name=
"viewport"
content=
"width=device-width,initial-scale=1.0,maximum-scale=1.0,user-scalable=0"
/>
<meta
name =
"format-detection"
content =
"telephone=yes"
>
<link
rel=
"icon"
href=
"<%= BASE_URL %>favicon.ico"
>
<link
rel=
"icon"
href=
"<%= BASE_URL %>favicon.ico"
>
<link
rel=
"stylesheet"
type=
"text/css"
href=
"http://at.alicdn.com/t/font_2002967_absxhdgm27r.css"
>
<meta
http-equiv=
"Content-Security-Policy"
content=
"upgrade-insecure-requests"
>
<link
rel=
"stylesheet"
type=
"text/css"
href=
"https://at.alicdn.com/t/font_2002967_absxhdgm27r.css"
>
<link
rel=
"stylesheet"
href=
"https://a.amap.com/jsapi_demos/static/demo-center/css/demo-center.css"
/>
<link
rel=
"stylesheet"
href=
"https://a.amap.com/jsapi_demos/static/demo-center/css/demo-center.css"
/>
<script
type=
"text/javascript"
<script
type=
"text/javascript"
src=
"https://webapi.amap.com/maps?v=1.4.15&key=8830df3ce60e0b6348e0854a939ffa9d"
></script>
src=
"https://webapi.amap.com/maps?v=1.4.15&key=8830df3ce60e0b6348e0854a939ffa9d"
></script>
...
...
src/assets/elGlobal.css
View file @
3c0c0909
...
@@ -65,3 +65,24 @@ input, button {
...
@@ -65,3 +65,24 @@ input, button {
input
::-webkit-input-placeholder
{
input
::-webkit-input-placeholder
{
color
:
#ccc
;
color
:
#ccc
;
}
}
.flex_center
{
display
:
flex
;
justify-content
:
space-between
;
align-items
:
center
;
}
.flex_baseline
{
display
:
flex
;
justify-content
:
space-between
;
align-items
:
baseline
;
}
.flex_center_s
{
display
:
flex
;
justify-content
:
space-between
;
align-items
:
flex-start
;
}
.flex_start
{
display
:
flex
;
justify-content
:
flex-start
;
align-items
:
center
;
}
src/assets/img/successfulApplication.png
0 → 100644
View file @
3c0c0909
14.6 KB
src/router/index.js
View file @
3c0c0909
...
@@ -7,6 +7,8 @@ import ReturnVisit from '../views/returnVisit'
...
@@ -7,6 +7,8 @@ import ReturnVisit from '../views/returnVisit'
import
ChoiceContraceptives
from
'../views/choiceContraceptives'
import
ChoiceContraceptives
from
'../views/choiceContraceptives'
import
SiteDetails
from
'../views/siteDetails'
import
SiteDetails
from
'../views/siteDetails'
import
ReceiveSuccess
from
'../views/receiveSuccess'
import
ReceiveSuccess
from
'../views/receiveSuccess'
import
ManualCollection
from
"../views/medicalCollection/manualCollection"
;
import
ManualSuccess
from
"../views/medicalCollection/manualSuccess"
;
Vue
.
use
(
VueRouter
)
Vue
.
use
(
VueRouter
)
...
@@ -18,6 +20,9 @@ const routes = [
...
@@ -18,6 +20,9 @@ const routes = [
{
path
:
'/choiceContraceptives'
,
name
:
'choiceContraceptives'
,
component
:
ChoiceContraceptives
},
{
path
:
'/choiceContraceptives'
,
name
:
'choiceContraceptives'
,
component
:
ChoiceContraceptives
},
{
path
:
'/siteDetails'
,
name
:
'siteDetails'
,
component
:
SiteDetails
},
{
path
:
'/siteDetails'
,
name
:
'siteDetails'
,
component
:
SiteDetails
},
{
path
:
'/receiveSuccess'
,
name
:
'receiveSuccess'
,
component
:
ReceiveSuccess
},
{
path
:
'/receiveSuccess'
,
name
:
'receiveSuccess'
,
component
:
ReceiveSuccess
},
{
path
:
'/manualCollection'
,
name
:
'manualCollection'
,
component
:
ManualCollection
},
{
path
:
'/manualSuccess'
,
name
:
'manualSuccess'
,
component
:
ManualSuccess
},
]
]
...
...
src/utils/api.js
View file @
3c0c0909
import
axios
from
'axios'
;
import
axios
from
'axios'
;
// baseURL: process.env.VUE_APP_BASE_URL,
var
apiInstance
=
axios
.
create
({
var
apiInstance
=
axios
.
create
({
baseURL
:
process
.
env
.
VUE_APP_BASE_URL
,
baseURL
:
''
,
timeout
:
10000
,
timeout
:
10000
,
withCredentials
:
true
withCredentials
:
true
})
})
...
@@ -22,30 +23,45 @@ apiInstance.interceptors.request.use(config=>{
...
@@ -22,30 +23,45 @@ apiInstance.interceptors.request.use(config=>{
})
})
/*获取网点*/
/*获取网点*/
export
const
getNetworkInfo
=
params
=>
{
export
const
getNetworkInfo
=
params
=>
{
return
apiInstance
.
get
(
`/basic-info/v1/basic-info/basic-network-info/get-network-info`
,{
params
});
return
apiInstance
.
get
(
`/
api/
basic-info/v1/basic-info/basic-network-info/get-network-info`
,{
params
});
};
};
//获取用领取记录
//获取用领取记录
export
const
getUserCollectRecord
=
params
=>
{
export
const
getUserCollectRecord
=
params
=>
{
return
apiInstance
.
get
(
`/stock-info/v1/stock-info/stock-provide-record`
,
{
params
})
return
apiInstance
.
get
(
`/api/stock-info/v1/stock-info/stock-provide-record`
,
{
params
})
}
//根据领取单号获取领取记录
export
const
getUserCollectRecordByNo
=
params
=>
{
return
apiInstance
.
get
(
`/api/stock-info/v1/stock-info/stock-provide-record/query-by-no`
,
{
params
})
}
}
//获取库存信息
//获取库存信息
export
const
getStockInfo
=
params
=>
{
export
const
getStockInfo
=
params
=>
{
return
apiInstance
.
get
(
`/stock-info/v1/stock-info/stock-basic-info/basic-info`
,
{
params
})
return
apiInstance
.
get
(
`/
api/
stock-info/v1/stock-info/stock-basic-info/basic-info`
,
{
params
})
}
}
//判断用户首次领取是否已填随访
//判断用户首次领取是否已填随访
export
const
getUserReceiveNum
=
params
=>
{
export
const
getUserReceiveNum
=
params
=>
{
return
apiInstance
.
get
(
`/stock-info/v1/stock-info/stock-provide-record/number/
${
params
.
residentId
}
`
,
{
params
})
return
apiInstance
.
get
(
`/
api/
stock-info/v1/stock-info/stock-provide-record/number/
${
params
.
residentId
}
`
,
{
params
})
}
}
//填写随访记录
//填写随访记录
export
const
addVisitRecord
=
params
=>
{
export
const
addVisitRecord
=
params
=>
{
return
apiInstance
.
post
(
`/stock-info/v1/stock-info/stock-visit-info`
,
params
)
return
apiInstance
.
post
(
`/
api/
stock-info/v1/stock-info/stock-visit-info`
,
params
)
}
}
//确认领取药具
//确认领取药具
export
const
addMedicalRecord
=
params
=>
{
export
const
addMedicalRecord
=
params
=>
{
return
apiInstance
.
post
(
`/stock-info/v1/stock-info/stock-provide-record`
,
params
)
return
apiInstance
.
post
(
`/api/stock-info/v1/stock-info/stock-provide-record`
,
params
)
}
//获取人工网点药具信息
export
const
getManualNetworkMedical
=
params
=>
{
return
apiInstance
.
get
(
`/api/stock-info/v1/stock-info/stock-basic-info/phone-network-stock-info`
,
{
params
})
}
//人工网点领取
export
const
addManualMedicalRecord
=
params
=>
{
return
apiInstance
.
post
(
`/api/stock-info/v1/stock-info/stock-provide-record/artificial-receive`
,
params
)
}
}
src/views/choiceContraceptives.vue
View file @
3c0c0909
...
@@ -92,9 +92,9 @@
...
@@ -92,9 +92,9 @@
},
},
methods
:{
methods
:{
getStockListInfo
(
callBack
)
{
getStockListInfo
(
callBack
)
{
this
.
routerDetail
=
JSON
.
parse
(
this
.
$route
.
query
.
info
)
this
.
routerDetail
=
JSON
.
parse
(
this
.
$route
.
query
)
let
par
=
{
let
par
=
{
relationId
:
this
.
routerDetail
,
relationId
:
this
.
routerDetail
.
id
,
...
this
.
param
...
this
.
param
}
}
getStockInfo
(
par
).
then
(({
data
=
{}})
=>
{
getStockInfo
(
par
).
then
(({
data
=
{}})
=>
{
...
@@ -142,7 +142,7 @@
...
@@ -142,7 +142,7 @@
residentName
:
this
.
username
,
residentName
:
this
.
username
,
residentId
:
userId
,
residentId
:
userId
,
telephone
:
phone
,
telephone
:
phone
,
networkId
:
this
.
routerDetail
,
networkId
:
this
.
routerDetail
.
id
,
number
:
1
,
number
:
1
,
receiveWay
:
receiveWay
[
0
].
id
,
receiveWay
:
receiveWay
[
0
].
id
,
...
other
...
other
...
...
src/views/collectRecords.vue
View file @
3c0c0909
...
@@ -15,7 +15,7 @@
...
@@ -15,7 +15,7 @@
>
>
<div
class=
"content"
v-for=
"item in detailInfo"
:key=
"item.id"
>
<div
class=
"content"
v-for=
"item in detailInfo"
:key=
"item.id"
>
<div
class=
"title"
>
{{
item
.
medicalName
}}
</div>
<div
class=
"title"
><span>
{{
item
.
medicalName
}}
</span>
</div>
<div
class=
"details"
>
<div
class=
"details"
>
<div
class=
"item"
>
<div
class=
"item"
>
<label
class=
"item-left"
>
规格:
</label>
<label
class=
"item-left"
>
规格:
</label>
...
@@ -95,6 +95,7 @@
...
@@ -95,6 +95,7 @@
message
:
'系统异常,请联系客服!'
,
message
:
'系统异常,请联系客服!'
,
duration
:
2000
duration
:
2000
});
});
this
.
loading
=
false
}).
finally
(()
=>
{
}).
finally
(()
=>
{
this
.
loading
=
false
this
.
loading
=
false
})
})
...
...
src/views/medicalCollection/manualCollection.vue
0 → 100644
View file @
3c0c0909
<
template
>
<div>
<mt-header
title=
"人工网点申领"
>
<div
slot=
"left"
@
click=
"goBack"
>
<mt-button
icon=
"back"
></mt-button>
</div>
</mt-header>
<div>
<div
class=
"flex_center top_info"
>
<div>
<div
class=
"netType_div"
:style=
"
{background: (dataInfo.netType == 1 ? '#1890FF': '#13C2C2')}"
>
<span
style=
"margin: 0 auto"
>
{{
routerDetail
.
typeName
}}
</span>
</div>
<div
class=
"netNameTitle"
>
{{
routerDetail
.
netName
||
'未知'
}}
</div>
</div>
<div>
<div><span
class=
"manualPel"
>
申领人
</span></div>
<div
class=
"netNameTitle"
><span>
{{
sessionInfo
.
phone
||
'未知'
}}
</span></div>
</div>
</div>
<div
class=
"listTitle"
><span
class=
"listTitle_span"
>
药具申领
</span></div>
<div
class=
"list-data"
v-infinite-scroll=
"loadMore"
:infinite-scroll-disabled=
"loading"
infinite-scroll-distance=
"10"
v-if=
"!noDataShow"
>
<div
class=
"content"
v-for=
"item in detailInfo"
:key=
"item.id"
>
<div
class=
"title_bor flex_baseline"
>
<div
class=
"title"
>
{{
item
.
medicalName
}}
</div>
<div
class=
"leftManual"
>
还可申领
<span
style=
"color: #1890FF;margin: 0px 2px"
>
{{
item
.
available
}}
</span>
<span>
{{
item
.
unit
}}
</span></div>
</div>
<div
class=
"details"
>
<div
class=
"item"
>
<label
class=
"item-left"
>
生产厂家
</label>
<label
class=
"item-right"
>
{{
item
.
factoryName
||
'--'
}}
</label>
</div>
<div
class=
"item"
>
<label
class=
"item-left"
>
类型
</label>
<label
class=
"item-right"
>
{{
item
.
breedName
||
'--'
}}
</label>
</div>
<div
class=
"item"
>
<label
class=
"item-left"
>
规格
</label>
<label
class=
"item-right"
>
{{
item
.
specs
||
'--'
}}
</label>
</div>
<div
class=
"flex_center"
>
<div
class=
"item"
>
<label
class=
"item-left"
>
已申领
</label>
<label
class=
"item-right"
>
{{
item
.
received
}}
{{
item
.
unit
}}
</label>
</div>
<div
class=
"item"
>
<div
class=
"item-left del"
@
click=
"delNumber(item)"
>
-
</div>
<input
type=
"number"
class=
"item_input"
v-model=
"item.number"
@
keyup=
"changeNumber(item)"
>
<div
class=
"item-right add"
@
click=
"addNumber(item)"
>
+
</div>
</div>
</div>
</div>
</div>
</div>
<div
class=
"loading"
v-if=
"loading"
>
<span
id=
"load-text"
>
{{
loadText
}}
</span>
</div>
<div
class=
"sumi_medical"
v-if=
"!noDataShow"
>
<mt-button
type=
"primary"
style=
"width: 200px"
@
click=
"onSubmit"
>
申领药具
</mt-button>
</div>
<div
v-if=
"noDataShow"
>
<NoData></NoData>
</div>
</div>
</div>
</
template
>
<
script
>
import
{
addManualMedicalRecord
,
getManualNetworkMedical
,
}
from
"../../utils/api"
;
import
NoData
from
'../component/noData'
;
import
{
Toast
}
from
'mint-ui'
;
import
{
receiveWay
}
from
"../../utils/dictionaries"
;
export
default
{
components
:
{
NoData
},
data
()
{
return
{
loading
:
false
,
detailInfo
:
[],
loadText
:
'加载中...'
,
noDataShow
:
false
,
sessionInfo
:
{},
routerDetail
:
{},
param
:
{
pageIndex
:
0
,
pageSize
:
10
},
dataInfo
:
{}
}
},
created
()
{
this
.
routerDetail
=
this
.
$route
.
query
this
.
sessionInfo
=
JSON
.
parse
(
window
.
sessionStorage
.
getItem
(
'mobileTokenIno'
))
},
methods
:
{
getRecordInfo
(
callBack
)
{
let
par
=
{
relationId
:
this
.
routerDetail
.
id
,
telephone
:
this
.
sessionInfo
.
phone
||
'18987175004'
,
...
this
.
param
}
getManualNetworkMedical
(
par
).
then
(({
data
=
{}})
=>
{
const
{
dataList
=
[]}
=
data
.
data
dataList
.
forEach
(
item
=>
{
item
[
'number'
]
=
0
item
[
'availableCopy'
]
=
item
.
available
})
this
.
detailInfo
=
this
.
detailInfo
.
concat
(
dataList
)
if
(
this
.
detailInfo
.
length
==
0
)
{
this
.
noDataShow
=
true
}
else
{
this
.
noDataShow
=
false
}
if
(
dataList
.
length
<
this
.
param
.
pageSize
)
{
this
.
loadText
=
'暂无更多数据'
}
else
{
this
.
loading
=
false
}
// callBack && callBack()
}).
catch
(
res
=>
{
Toast
({
message
:
'系统异常,请联系客服!'
,
duration
:
2000
});
this
.
loading
=
false
}).
finally
(()
=>
{
this
.
loading
=
false
})
},
loadMore
()
{
this
.
loading
=
true
this
.
param
.
pageIndex
+=
1
this
.
getRecordInfo
()
},
delNumber
(
val
)
{
this
.
detailInfo
.
forEach
(
item
=>
{
if
(
item
.
id
==
val
.
id
)
{
if
(
item
.
number
>
0
)
{
item
.
number
--
}
else
{
item
.
number
=
0
}
}
})
let
ava
=
0
let
availab
=
0
this
.
detailInfo
.
forEach
(
item
=>
{
if
(
val
.
breedId
==
item
.
breedId
)
{
ava
+=
(
+
item
.
number
)
if
(
val
.
id
!=
item
.
id
)
{
availab
+=
(
+
item
.
number
)
}
}
})
this
.
detailInfo
.
forEach
(
item
=>
{
if
(
val
.
breedId
==
item
.
breedId
)
{
item
.
available
=
val
.
availableCopy
-
ava
if
(
item
.
available
<=
0
)
{
item
.
available
=
0
if
(
val
.
id
==
item
.
id
)
{
item
.
number
=
val
.
availableCopy
-
availab
}
}
}
})
},
addNumber
(
val
)
{
this
.
detailInfo
.
forEach
(
item
=>
{
if
(
item
.
id
==
val
.
id
)
{
if
(
item
.
number
<
val
.
availableCopy
)
{
item
.
number
++
}
else
{
item
.
number
=
val
.
availableCopy
}
}
})
let
ava
=
0
let
availab
=
0
this
.
detailInfo
.
forEach
(
item
=>
{
if
(
val
.
breedId
==
item
.
breedId
)
{
ava
+=
(
+
item
.
number
)
if
(
val
.
id
!=
item
.
id
)
{
availab
+=
(
+
item
.
number
)
}
}
})
this
.
detailInfo
.
forEach
(
item
=>
{
if
(
val
.
breedId
==
item
.
breedId
)
{
item
.
available
=
val
.
availableCopy
-
ava
if
(
item
.
available
<=
0
)
{
item
.
available
=
0
if
(
val
.
id
==
item
.
id
)
{
item
.
number
=
val
.
availableCopy
-
availab
}
}
}
})
},
changeNumber
(
val
)
{
this
.
detailInfo
.
forEach
(
item
=>
{
if
(
item
.
id
==
val
.
id
)
{
if
(
item
.
number
>
val
.
availableCopy
)
{
item
.
number
=
val
.
availableCopy
}
if
(
item
.
number
<
0
)
{
item
.
number
=
0
}
}
})
let
ava
=
0
let
availab
=
0
this
.
detailInfo
.
forEach
(
item
=>
{
if
(
val
.
breedId
==
item
.
breedId
)
{
ava
+=
(
+
item
.
number
)
if
(
val
.
id
!=
item
.
id
)
{
availab
+=
(
+
item
.
number
)
}
}
})
this
.
detailInfo
.
forEach
(
item
=>
{
if
(
val
.
breedId
==
item
.
breedId
)
{
item
.
available
=
val
.
availableCopy
-
ava
if
(
item
.
available
<=
0
)
{
item
.
available
=
0
if
(
val
.
id
==
item
.
id
)
{
item
.
number
=
val
.
availableCopy
-
availab
}
}
}
})
},
onSubmit
()
{
let
avali
=
0
let
info
=
JSON
.
parse
(
window
.
sessionStorage
.
getItem
(
'mobileTokenIno'
))
const
{
phone
=
''
,
userId
=
''
}
=
info
this
.
detailInfo
.
forEach
(
item
=>
{
avali
+=
(
+
item
.
number
)
item
[
'telephone'
]
=
phone
item
[
'networkId'
]
=
this
.
routerDetail
.
id
item
[
'receiveWay'
]
=
receiveWay
[
1
].
id
item
[
'produceDate'
]
=
item
.
produceDate
+
' '
+
'00:00:00'
item
[
'expireDate'
]
=
item
.
expireDate
+
' '
+
'00:00:00'
})
if
(
avali
==
0
)
{
return
Toast
({
message
:
'请先输入数量!'
,
duration
:
2000
});
}
let
par
=
{
dataList
:
this
.
detailInfo
}
addManualMedicalRecord
(
par
).
then
(({
data
})
=>
{
if
(
data
.
code
==
'SUCCESS'
)
{
this
.
$router
.
push
({
path
:
"/manualSuccess"
,
query
:{
info
:
data
.
data
}});
}
else
{
Toast
({
message
:
'系统异常,请联系客服!'
,
duration
:
2000
});
}
})
},
goBack
()
{
window
.
history
.
go
(
-
1
)
},
},
beforeDestroy
()
{
this
.
detailInfo
=
[]
}
}
</
script
>
<
style
scoped
lang=
"less"
>
.content {
width: 93%;
margin: 20px auto 0px;
padding: 10px;
border: 1px solid #F3F3F3;
border-radius: 1rem;
box-shadow: darkgrey 0px 2px 20px -10px;
.title {
font-weight: bold;
line-height: 30px;
font-size: 14px!important;
width: 70%;
}
.leftManual {
font-size: 12px;
color: #595959;
}
}
.manualPel {
color: #595959;
font-size: 11px;
}
.content .title_bor {
border-bottom: 1px solid #F3F3F3;
}
.content .details .item {
line-height: 24px;
.del {
font-size: 26px;
display: inline-block;
padding: 0px 8px;
}
.item_input {
width: 40px;
background: #F5F5F5;
border-radius: 4px;
border: 0px;
line-height: 24px;
text-align: center;
}
.add {
font-size: 26px;
display: inline-block;
/*padding: 0px 8px;*/
}
}
.content .details .item .item-right {
/*float: right;*/
margin-left: 8px;
color: #262626;
}
.content .details .item .item-left {
color: #595959;
}
.list-data{
/*height: calc(100% - 40px);*/
max-height: calc(100vh - 250px);
overflow-y: auto;
}
.loading{
height: 80px;
width: 100%;
text-align: center;
}
.listTitle {
margin: 20px 0px 0px 12px;
.listTitle_span {
font-weight: 600;
font-size: 16px;
}
}
.top_info {
border: 1px solid #F3F3F3;
border-radius: 0px 0px 16px 16px;
padding: 12px;
box-shadow: darkgrey 0px 2px 20px -10px;
}
.netType_div {
color: white;
border-radius: 8px 2px;
padding: 4px 9px;
width: 70px;
font-size: 10px
}
.netNameTitle {
font-size: 14px!important;
font-weight: 500;
margin-top: 11px
}
.sumi_medical {
position: fixed;
z-index: 2;
left: calc(50% - 100px);
bottom: 20px;
}
</
style
>
src/views/medicalCollection/manualSuccess.vue
0 → 100644
View file @
3c0c0909
<
template
>
<div>
<mt-header
title=
"申领结果"
>
<div
slot=
"left"
@
click=
"goBack"
>
<mt-button
icon=
"back"
></mt-button>
</div>
</mt-header>
<div>
<div
style=
"text-align: center"
>
<img
src=
"../../assets/img/successfulApplication.png"
style=
"width: 120px;height: 120px"
>
</div>
<div
class=
"list-data"
v-infinite-scroll=
"loadMore"
:infinite-scroll-disabled=
"loading"
infinite-scroll-distance=
"10"
>
<div
class=
"content"
v-for=
"item in detailInfo"
:key=
"item.id"
>
<div
class=
"title_bor flex_baseline"
>
<div
class=
"title"
>
{{
item
.
medicalName
}}
</div>
<div
class=
"leftManual"
>
本次申领
<span
style=
"color: #1890FF;margin: 0px 2px"
>
{{
item
.
number
}}
</span>
<span>
{{
item
.
unit
}}
</span></div>
</div>
<div
class=
"details"
>
<div
class=
"item"
>
<label
class=
"item-left"
>
生产厂家
</label>
<label
class=
"item-right"
>
{{
item
.
company
||
'--'
}}
</label>
</div>
<div
class=
"item"
>
<label
class=
"item-left"
>
类型
</label>
<label
class=
"item-right"
>
{{
item
.
breedName
||
'--'
}}
</label>
</div>
<div
class=
"item"
>
<label
class=
"item-left"
>
规格
</label>
<label
class=
"item-right"
>
{{
item
.
specs
||
'--'
}}
</label>
</div>
</div>
</div>
</div>
<div
class=
"loading"
v-if=
"loading"
>
<span
id=
"load-text"
>
{{
loadText
}}
</span>
</div>
<div
v-if=
"noDataShow"
>
<NoData></NoData>
</div>
</div>
</div>
</
template
>
<
script
>
import
{
getUserCollectRecordByNo
}
from
"../../utils/api"
;
import
NoData
from
'../component/noData'
;
import
{
Toast
}
from
'mint-ui'
;
export
default
{
components
:
{
NoData
},
data
()
{
return
{
loading
:
false
,
detailInfo
:
[],
loadText
:
'加载中...'
,
noDataShow
:
false
,
param
:
{
pageIndex
:
0
,
pageSize
:
10
},
dataInfo
:
{},
routerDetail
:
{}
}
},
created
()
{
this
.
routerDetail
=
this
.
$route
.
query
},
methods
:
{
getRecordInfo
(
callBack
)
{
let
pars
=
{
no
:
this
.
routerDetail
.
info
,
...
this
.
param
}
getUserCollectRecordByNo
(
pars
).
then
(({
data
=
{}})
=>
{
const
{
dataList
=
[]}
=
data
.
data
this
.
detailInfo
=
this
.
detailInfo
.
concat
(
dataList
)
if
(
this
.
detailInfo
.
length
==
0
)
{
this
.
noDataShow
=
true
}
else
{
this
.
noDataShow
=
false
}
if
(
dataList
.
length
<
this
.
param
.
pageSize
)
{
this
.
loadText
=
'暂无更多数据'
}
else
{
this
.
loading
=
false
}
// callBack && callBack()
}).
catch
(
res
=>
{
Toast
({
message
:
'系统异常,请联系客服!'
,
duration
:
2000
});
this
.
loading
=
false
}).
finally
(()
=>
{
this
.
loading
=
false
})
},
loadMore
()
{
this
.
loading
=
true
this
.
param
.
pageIndex
+=
1
this
.
getRecordInfo
()
},
goBack
()
{
window
.
history
.
go
(
-
1
)
},
},
beforeDestroy
()
{
this
.
detailInfo
=
[]
}
}
</
script
>
<
style
scoped
lang=
"less"
>
.content {
width: 93%;
margin: 20px auto 0px;
padding: 10px;
border: 1px solid #F3F3F3;
border-radius: 1rem;
box-shadow: darkgrey 0px 2px 20px -10px;
.title {
font-weight: bold;
line-height: 30px;
font-size: 14px!important;
width: 70%;
}
.leftManual {
font-size: 12px;
color: #595959;
}
}
.manualPel {
color: #595959;
font-size: 11px;
}
.content .title_bor {
border-bottom: 1px solid #F3F3F3;
}
.content .details .item {
line-height: 24px;
}
.content .details .item .item-right {
/*float: right;*/
margin-left: 8px;
color: #262626;
}
.content .details .item .item-left {
color: #595959;
}
.list-data{
/*height: calc(100% - 40px);*/
max-height: calc(100vh - 200px);
overflow-y: auto;
}
.loading{
height: 80px;
width: 100%;
text-align: center;
}
.listTitle {
margin: 20px 0px 0px 12px;
.listTitle_span {
font-weight: 600;
font-size: 16px;
}
}
.top_info {
border: 1px solid #F3F3F3;
border-radius: 0px 0px 16px 16px;
padding: 12px;
box-shadow: darkgrey 0px 2px 20px -10px;
}
.netType_div {
color: white;
border-radius: 8px 2px;
padding: 4px 9px;
width: 70px;
font-size: 10px
}
.netNameTitle {
font-size: 14px!important;
font-weight: 500;
margin-top: 11px
}
</
style
>
src/views/myMap.vue
View file @
3c0c0909
...
@@ -63,7 +63,7 @@
...
@@ -63,7 +63,7 @@
// 将qrcodeContent方法绑定到window下面,提供给外部调用
// 将qrcodeContent方法绑定到window下面,提供给外部调用
let
vm
=
this
let
vm
=
this
window
[
'qrcodeContent'
]
=
(
result
)
=>
{
window
[
'qrcodeContent'
]
=
(
result
)
=>
{
vm
.
subscanQRCallBack
(
result
)
vm
.
subscanQRCallBack
(
result
)
}
}
},
},
methods
:
{
methods
:
{
...
@@ -95,7 +95,12 @@
...
@@ -95,7 +95,12 @@
})
})
},
},
subscanQRCallBack
(
result
)
{
subscanQRCallBack
(
result
)
{
this
.
$router
.
push
({
path
:
`/choiceContraceptives`
,
query
:
{
info
:
result
}});
result
=
{
id
:
20
,
type
:
2
,
typeName
:
'人工发放'
,
netName
:
'昆明市官渡区医学会'
}
if
(
result
.
type
==
2
){
this
.
$router
.
push
({
path
:
`/manualCollection`
,
query
:
result
});
}
else
{
this
.
$router
.
push
({
path
:
`/choiceContraceptives`
,
query
:
result
});
}
},
},
toCollectRecords
()
{
toCollectRecords
()
{
/* this.$router.push({
/* this.$router.push({
...
@@ -126,7 +131,9 @@
...
@@ -126,7 +131,9 @@
this
.
$router
.
push
(
'/collectRecords'
);
this
.
$router
.
push
(
'/collectRecords'
);
},
},
toRealHome
()
{
toRealHome
()
{
callMobile
(
"goIndex"
,
{});
// callMobile("goIndex", {});
let
resultT
=
{
id
:
20
,
type
:
2
,
typeName
:
'人工发放'
,
netName
:
'昆明市官渡区医学会'
}
this
.
$router
.
push
({
path
:
'/manualCollection'
,
query
:
resultT
})
},
},
createMap
()
{
createMap
()
{
let
self
=
this
let
self
=
this
...
...
src/views/testJson.js
0 → 100644
View file @
3c0c0909
//可申领数据
export
const
manualData
=
{
netType
:
1
,
netTypeName
:
'人工发放'
,
netName
:
'昆明药具管理中心发放站'
,
manualTel
:
'18987175004'
,
dataList
:
[
{
id
:
1
,
medicalName
:
'天然乳胶避孕套(10支装)'
,
factoryName
:
'北京和声堂生物科技有限公司'
,
medicalTypeName
:
'避孕套'
,
specs
:
'大'
,
leftManual
:
10
,
manualed
:
12
,
medicalUnit
:
'盒'
},
{
id
:
2
,
medicalName
:
'天然乳胶避孕套(10支装)'
,
factoryName
:
'北京和声堂生物科技有限公司'
,
medicalTypeName
:
'避孕套1'
,
specs
:
'小'
,
leftManual
:
10
,
manualed
:
12
,
medicalUnit
:
'支'
},
{
id
:
3
,
medicalName
:
'天然乳胶避孕套(10支装)'
,
factoryName
:
'北京和声堂生物科技有限公司'
,
medicalTypeName
:
'避孕套2'
,
specs
:
'大'
,
leftManual
:
10
,
manualed
:
12
,
medicalUnit
:
'盒'
},
]
}
vue.config.js
View file @
3c0c0909
...
@@ -30,10 +30,10 @@ module.exports = {
...
@@ -30,10 +30,10 @@ module.exports = {
warning
:
false
,
warning
:
false
,
errors
:
false
errors
:
false
},
},
//
https:true,
https
:
true
,
proxy
:
{
//配置跨域
proxy
:
{
//配置跨域
'/api'
:
{
'/api'
:
{
target
:
'http
://123.56.183.13:8889/
'
,
//真实的后台接口
target
:
'http
s://beta-yjservice.yiboshi.com
'
,
//真实的后台接口
changOrigin
:
true
,
//允许跨域
changOrigin
:
true
,
//允许跨域
pathRewrite
:
{
pathRewrite
:
{
/* 重写路径,当我们在浏览器中看到请求的地址为:http://localhost:8080/api/core/getData/userInfo 时
/* 重写路径,当我们在浏览器中看到请求的地址为:http://localhost:8080/api/core/getData/userInfo 时
...
@@ -44,7 +44,7 @@ module.exports = {
...
@@ -44,7 +44,7 @@ module.exports = {
},
},
}
}
},
},
chainWebpack
:(
config
)
=>
{
chainWebpack
:(
config
)
=>
{
config
.
plugins
.
delete
(
'preload'
);
config
.
plugins
.
delete
(
'preload'
);
config
.
plugins
.
delete
(
'prefetch'
);
config
.
plugins
.
delete
(
'prefetch'
);
}
}
...
...
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