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
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
15 changed files
with
292 additions
and
21 deletions
+292
-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
+0
-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
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
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
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 @@
<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"
>
<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"
/>
<script
type=
"text/javascript"
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 {
input
::-webkit-input-placeholder
{
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'
import
ChoiceContraceptives
from
'../views/choiceContraceptives'
import
SiteDetails
from
'../views/siteDetails'
import
ReceiveSuccess
from
'../views/receiveSuccess'
import
ManualCollection
from
"../views/medicalCollection/manualCollection"
;
import
ManualSuccess
from
"../views/medicalCollection/manualSuccess"
;
Vue
.
use
(
VueRouter
)
...
...
@@ -18,6 +20,9 @@ const routes = [
{
path
:
'/choiceContraceptives'
,
name
:
'choiceContraceptives'
,
component
:
ChoiceContraceptives
},
{
path
:
'/siteDetails'
,
name
:
'siteDetails'
,
component
:
SiteDetails
},
{
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'
;
// baseURL: process.env.VUE_APP_BASE_URL,
var
apiInstance
=
axios
.
create
({
baseURL
:
process
.
env
.
VUE_APP_BASE_URL
,
baseURL
:
''
,
timeout
:
10000
,
withCredentials
:
true
})
...
...
@@ -22,30 +23,45 @@ apiInstance.interceptors.request.use(config=>{
})
/*获取网点*/
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
=>
{
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
=>
{
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
=>
{
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
=>
{
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
=>
{
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 @@
},
methods
:{
getStockListInfo
(
callBack
)
{
this
.
routerDetail
=
JSON
.
parse
(
this
.
$route
.
query
.
info
)
this
.
routerDetail
=
JSON
.
parse
(
this
.
$route
.
query
)
let
par
=
{
relationId
:
this
.
routerDetail
,
relationId
:
this
.
routerDetail
.
id
,
...
this
.
param
}
getStockInfo
(
par
).
then
(({
data
=
{}})
=>
{
...
...
@@ -142,7 +142,7 @@
residentName
:
this
.
username
,
residentId
:
userId
,
telephone
:
phone
,
networkId
:
this
.
routerDetail
,
networkId
:
this
.
routerDetail
.
id
,
number
:
1
,
receiveWay
:
receiveWay
[
0
].
id
,
...
other
...
...
src/views/collectRecords.vue
View file @
3c0c0909
...
...
@@ -15,7 +15,7 @@
>
<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=
"item"
>
<label
class=
"item-left"
>
规格:
</label>
...
...
@@ -95,6 +95,7 @@
message
:
'系统异常,请联系客服!'
,
duration
:
2000
});
this
.
loading
=
false
}).
finally
(()
=>
{
this
.
loading
=
false
})
...
...
src/views/medicalCollection/manualCollection.vue
0 → 100644
View file @
3c0c0909
This diff is collapsed.
Click to expand it.
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 @@
// 将qrcodeContent方法绑定到window下面,提供给外部调用
let
vm
=
this
window
[
'qrcodeContent'
]
=
(
result
)
=>
{
vm
.
subscanQRCallBack
(
result
)
vm
.
subscanQRCallBack
(
result
)
}
},
methods
:
{
...
...
@@ -95,7 +95,12 @@
})
},
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
()
{
/* this.$router.push({
...
...
@@ -126,7 +131,9 @@
this
.
$router
.
push
(
'/collectRecords'
);
},
toRealHome
()
{
callMobile
(
"goIndex"
,
{});
// callMobile("goIndex", {});
let
resultT
=
{
id
:
20
,
type
:
2
,
typeName
:
'人工发放'
,
netName
:
'昆明市官渡区医学会'
}
this
.
$router
.
push
({
path
:
'/manualCollection'
,
query
:
resultT
})
},
createMap
()
{
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 = {
warning
:
false
,
errors
:
false
},
//
https:true,
https
:
true
,
proxy
:
{
//配置跨域
'/api'
:
{
target
:
'http
://123.56.183.13:8889/
'
,
//真实的后台接口
target
:
'http
s://beta-yjservice.yiboshi.com
'
,
//真实的后台接口
changOrigin
:
true
,
//允许跨域
pathRewrite
:
{
/* 重写路径,当我们在浏览器中看到请求的地址为:http://localhost:8080/api/core/getData/userInfo 时
...
...
@@ -44,7 +44,7 @@ module.exports = {
},
}
},
chainWebpack
:(
config
)
=>
{
chainWebpack
:(
config
)
=>
{
config
.
plugins
.
delete
(
'preload'
);
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