Commit caed2e8c authored by 罗成兵's avatar 罗成兵

bug完善

parent 4a18acc2
......@@ -49,6 +49,7 @@
const columns = [
{
title: '发放单位',
width:'200px',
dataIndex: 'sendNodeName',
ellipsis: true
},
......@@ -64,7 +65,6 @@
},
{
title: '批次号',
width: '120px',
dataIndex: 'batchNumber',
ellipsis: true
},
......@@ -75,7 +75,6 @@
},
{
title: '有效期',
width: '120px',
scopedSlots: {customRender: 'expireDateS'},
},
{
......@@ -106,7 +105,6 @@
{
title: '操作',
align: 'center',
width: 120,
fixed: 'right',
scopedSlots: {customRender: 'action'},
},
......
......@@ -17,9 +17,9 @@
<!--v-price="{digit:4}"-->
<a-input v-model="searchForm.telephone" placeholder="请输入联系电话" style="width: 250px"></a-input>
</a-form-item>
<a-button type="primary" icon="search" class="search_btn" @click="searchList">搜索</a-button>
<a-button class="search_btn" icon="close" style="margin-left: 10px" @click="restSearchForm">清空</a-button>
<div style="clear: both"></div>
<a-button type="primary" icon="search" class="search_btn" @click="searchList">搜索</a-button>
<a-button class="search_btn" icon="close" style="margin-left: 10px" @click="restSearchForm">清空</a-button>
<div style="clear: both"></div>
</a-form>
<div style="clear: both"></div>
......@@ -34,7 +34,8 @@
</template>
<template slot="action" slot-scope="record">
<a-button type="link" size="small" @click="toDetail(record)" :disabled="record.status===2">发放</a-button>
<a-button type="link" size="small" @click="deleteConfirm(record)" :disabled="record.status===2">删除</a-button>
<a-button type="link" size="small" @click="deleteConfirm(record)" :disabled="record.status===2">删除
</a-button>
</template>
</a-table>
<a-pagination
......@@ -54,6 +55,7 @@
<script>
import {getEnumByFlag, isEmptyParams} from "../../utils/common";
import moment from 'moment'
const columns = [
{
title: '女方姓名',
......@@ -104,8 +106,8 @@
{
title: '操作',
align: 'center',
fixed:'right',
width:120,
fixed: 'right',
width: 120,
scopedSlots: {customRender: 'action'},
},
]
......@@ -127,7 +129,7 @@
columns,
tableData: [],
loading: false,
routerParams:{}
routerParams: {}
}
},
created() {
......@@ -186,10 +188,10 @@
},
restSearchForm() {
this.searchForm = {
breedId: undefined,
medicalName: '',
factoryId: '',
produceDate: undefined
breedId: undefined,
medicalName: '',
factoryId: '',
produceDate: undefined
}
this.searchList()
},
......@@ -219,10 +221,10 @@
},
toDetail(record) {
let params = {
...record,
id: record.id,
routerFlag: 'update'
}
this.$router.push({path:'/folviteDistribution/add', query: params})
this.$router.push({path: '/folviteDistribution/add', query: params})
}
},
}
......@@ -242,10 +244,11 @@
.btn_space {
margin-right: 5px;
}
/* .search_form {
margin-top: -17px;
border: 1px solid rgba(255,77,128, .2);
border-top: 0px;
padding: 30px;
}*/
/* .search_form {
margin-top: -17px;
border: 1px solid rgba(255,77,128, .2);
border-top: 0px;
padding: 30px;
}*/
</style>
......@@ -2,255 +2,261 @@
<div>
<a-spin tip="加载中..." :spinning="spinning">
<a-card>
<div style="font-size: 18px;font-weight: 600">
<span>叶酸发放登记</span>
</div>
<a-form-model ref="formRef" :model="formData" :rules="formRules" :labelCol="{span: 6}"
:wrapperCol="{span: 16}">
<div style="margin: 30px 0px">
<div class="divider_my"><span class="midText">居民信息</span></div>
<div style="font-size: 18px;font-weight: 600">
<span>叶酸发放登记</span>
</div>
<div style="clear: both"></div>
<a-card size="small" :headStyle="{background: '#FAFAFA'}">
<div slot="title">
<img class="title_img" src="../../../../../static/images/user_info_index.png">
<span class="title_font">女方信息</span>
</div>
<a-button slot="extra">身份证识别</a-button>
<a-row :gutter="16">
<a-col :span="12">
<a-form-model-item label="姓名" prop="womanName">
<a-input placeholder="请输入姓名" v-model="formData.womanName"></a-input>
</a-form-model-item>
</a-col>
<a-col :span="12">
<a-form-model-item label="证件类型" prop="womenCertificateType">
<a-select v-model="formData.womenCertificateType" placeholder="请选择">
<a-select-option v-for="item in certificateTypeList"
:key="item.enumValue" :value="item.enumValue"
>
{{item.enumName}}
</a-select-option>
</a-select>
</a-form-model-item>
</a-col>
<a-form-model ref="formRef" :model="formData" :rules="formRules" :labelCol="{span: 6}"
:wrapperCol="{span: 16}">
<a-col :span="12">
<a-form-model-item label="证件号码" prop="womenIdCard">
<a-input placeholder="请输入证件号码" v-model="formData.womenIdCard"></a-input>
</a-form-model-item>
</a-col>
<a-col :span="12">
<a-form-model-item label="是否曾经怀孕" prop="oncePregnant">
<a-radio-group v-model="formData.oncePregnant" @change="onChangePregnant">
<a-radio :value="1">
</a-radio>
<a-radio :value="2">
</a-radio>
</a-radio-group>
</a-form-model-item>
</a-col>
<a-col :span="12">
<a-form-model-item label="孕次" prop="pregnantNum" v-if="formData.oncePregnant==1">
<a-input v-toInt placeholder="请输入" v-model="formData.pregnantNum"></a-input>
</a-form-model-item>
</a-col>
</a-row>
</a-card>
<a-card size="small" :headStyle="{background: '#FAFAFA'}" style="margin-top: 16px">
<div slot="title">
<img class="title_img" src="../../../../../static/images/user_info_index.png">
<span class="title_font">男方信息</span>
<div style="margin: 30px 0px">
<div class="divider_my"><span class="midText">居民信息</span></div>
</div>
<a-button slot="extra">身份证识别</a-button>
<a-row :gutter="16">
<a-col :span="12">
<a-form-model-item label="姓名" prop="manName">
<a-input placeholder="请输入姓名" v-model="formData.manName"></a-input>
</a-form-model-item>
</a-col>
<a-col :span="12">
<a-form-model-item label="证件类型" prop="menCertificateType">
<a-select v-model="formData.menCertificateType" placeholder="请选择">
<a-select-option v-for="item in certificateTypeList"
:key="item.enumValue" :value="item.enumValue"
>
{{item.enumName}}
</a-select-option>
</a-select>
</a-form-model-item>
</a-col>
<div style="clear: both"></div>
<a-card size="small" :headStyle="{background: '#FAFAFA'}">
<div slot="title">
<img class="title_img" src="../../../../../static/images/user_info_index.png">
<span class="title_font">女方信息</span>
</div>
<a-button slot="extra">身份证识别</a-button>
<a-row :gutter="16">
<a-col :span="12">
<a-form-model-item label="姓名" prop="womanName">
<a-input placeholder="请输入姓名" v-model="formData.womanName"></a-input>
</a-form-model-item>
</a-col>
<a-col :span="12">
<a-form-model-item label="证件类型" prop="womenCertificateType">
<a-select v-model="formData.womenCertificateType" placeholder="请选择">
<a-select-option v-for="item in certificateTypeList"
:key="item.enumValue" :value="item.enumValue"
>
{{item.enumName}}
</a-select-option>
</a-select>
</a-form-model-item>
</a-col>
<a-col :span="12">
<a-form-model-item label="证件号码" prop="menIdCard">
<a-input placeholder="请输入证件号码" v-model="formData.menIdCard"></a-input>
</a-form-model-item>
</a-col>
</a-row>
</a-card>
<a-card size="small" :headStyle="{background: '#FAFAFA'}" style="margin-top: 16px">
<div slot="title">
<img class="title_img" src="../../../../../static/images/user_info_index.png">
<span class="title_font">其他信息</span>
</div>
<a-row :gutter="16">
<a-col :span="24">
<a-form-model-item label="联系电话" prop="telephone" :labelCol="{span: 3}"
:wrapperCol="{span: 8}">
<a-input placeholder="请输入联系电话" v-model="formData.telephone"></a-input>
</a-form-model-item>
</a-col>
<a-col :span="24">
<a-form-model-item label="现住地址" prop="presentCode" :labelCol="{span: 3}"
:wrapperCol="{span: 20}">
<!--<a-input placeholder="请输入现住地址" v-model="formData.presentCode"></a-input>-->
<a-cascader v-model="formData.presentCode"
change-on-select
:options="areaInfo"
:fieldNames="fieldNames"
:load-data="loadAreaData"
@click.native="initLoadAreaData"
placeholder="请选择"/>
</a-form-model-item>
</a-col>
<a-col :span="12">
<a-form-model-item label="证件号码" prop="womenIdCard">
<a-input placeholder="请输入证件号码" v-model="formData.womenIdCard"></a-input>
</a-form-model-item>
</a-col>
<a-col :span="12">
<a-form-model-item label="是否曾经怀孕" prop="oncePregnant">
<a-radio-group v-model="formData.oncePregnant" @change="onChangePregnant">
<a-radio :value="1">
</a-radio>
<a-radio :value="2">
</a-radio>
</a-radio-group>
</a-form-model-item>
</a-col>
<a-col :span="12">
<a-form-model-item label="孕次" prop="pregnantNum" v-if="formData.oncePregnant==1">
<a-input v-toInt placeholder="请输入" v-model="formData.pregnantNum"></a-input>
</a-form-model-item>
</a-col>
</a-row>
</a-card>
<a-card size="small" :headStyle="{background: '#FAFAFA'}" style="margin-top: 16px">
<div slot="title">
<img class="title_img" src="../../../../../static/images/user_info_index.png">
<span class="title_font">男方信息</span>
</div>
<a-button slot="extra">身份证识别</a-button>
<a-row :gutter="16">
<a-col :span="12">
<a-form-model-item label="姓名" prop="manName">
<a-input placeholder="请输入姓名" v-model="formData.manName"></a-input>
</a-form-model-item>
</a-col>
<a-col :span="12">
<a-form-model-item label="证件类型" prop="menCertificateType">
<a-select v-model="formData.menCertificateType" placeholder="请选择">
<a-select-option v-for="item in certificateTypeList"
:key="item.enumValue" :value="item.enumValue"
>
{{item.enumName}}
</a-select-option>
</a-select>
</a-form-model-item>
</a-col>
<a-col :span="24">
<a-form-model-item label="详细地址" prop="nowAddress" :labelCol="{span: 3}"
:wrapperCol="{span: 20}">
<a-input placeholder="请输入详细地址" v-model="formData.nowAddress"></a-input>
</a-form-model-item>
</a-col>
<a-col :span="12">
<a-form-model-item label="签署方式" prop="signedMode">
<a-select v-model="formData.signedMode" placeholder="请选择" disabled>
<a-select-option v-for="item in signedModeList"
:key="item.enumValue" :value="item.enumValue"
>
{{item.enumName}}
</a-select-option>
</a-select>
</a-form-model-item>
</a-col>
<a-col :span="12">
<a-form-model-item label="签署日期" prop="parentDate">
<a-date-picker v-model="formData.parentDate" format="YYYY-MM-DD" style="width: 100%"/>
</a-form-model-item>
</a-col>
<a-col :span="21" :offset="3">
<a-form-model-item :wrapperCol="{span: 23}">
<a-card class="book" :headStyle="{background: '#FAFAFA'}">
<div slot="title" style="text-align: center;padding: 10px 0px">
<span style="color: #262626;font-size: 14px">知情同意书</span>
</div>
<div>
<div v-html="bookHtmlContent.content">
<a-col :span="12">
<a-form-model-item label="证件号码" prop="menIdCard">
<a-input placeholder="请输入证件号码" v-model="formData.menIdCard"></a-input>
</a-form-model-item>
</a-col>
</a-row>
</a-card>
<a-card size="small" :headStyle="{background: '#FAFAFA'}" style="margin-top: 16px">
<div slot="title">
<img class="title_img" src="../../../../../static/images/user_info_index.png">
<span class="title_font">其他信息</span>
</div>
<a-row :gutter="16">
<a-col :span="24">
<a-form-model-item label="联系电话" prop="telephone" :labelCol="{span: 3}"
:wrapperCol="{span: 8}">
<a-input placeholder="请输入联系电话" v-model="formData.telephone"></a-input>
</a-form-model-item>
</a-col>
<a-col :span="24">
<a-form-model-item label="现住地址" prop="presentCode" :labelCol="{span: 3}"
:wrapperCol="{span: 20}">
<!--<a-input placeholder="请输入现住地址" v-model="formData.presentCode"></a-input>-->
<a-cascader v-model="formData.presentCode"
change-on-select
:options="areaInfo"
:fieldNames="fieldNames"
:load-data="loadAreaData"
@click.native="initLoadAreaData"
placeholder="请选择"/>
</a-form-model-item>
</a-col>
</div>
</div>
</a-card>
</a-form-model-item>
</a-col>
<a-col :span="24">
<a-form-model-item label="详细地址" prop="nowAddress" :labelCol="{span: 3}"
:wrapperCol="{span: 20}">
<a-input placeholder="请输入详细地址" v-model="formData.nowAddress"></a-input>
</a-form-model-item>
</a-col>
<a-col :span="12">
<a-form-model-item label="签署方式" prop="signedMode">
<a-select v-model="formData.signedMode" placeholder="请选择" disabled>
<a-select-option v-for="item in signedModeList"
:key="item.enumValue" :value="item.enumValue"
>
{{item.enumName}}
</a-select-option>
</a-select>
</a-form-model-item>
</a-col>
<a-col :span="12">
<a-form-model-item label="签署日期" prop="parentDate">
<a-date-picker v-model="formData.parentDate" format="YYYY-MM-DD"
style="width: 100%"/>
</a-form-model-item>
</a-col>
<a-col :span="21" :offset="3">
<a-form-model-item :wrapperCol="{span: 23}">
<a-card class="book" :headStyle="{background: '#FAFAFA'}">
<div slot="title" style="text-align: center;padding: 10px 0px">
<span style="color: #262626;font-size: 14px">知情同意书</span>
</div>
<div>
<div v-html="bookHtmlContent.content">
<!-- <a-col :span="21" :offset="3">
<a-form-model-item :wrapperCol="{span: 23}">
<div style="border: 1px dashed #EEEEEE">
<div class="sign">签字</div>
<vue-signature-pad
id="signature"
width="100%"
height="200px"
ref="signaturePad"
:options="options"
/>
<div class="opt">
<a-button @click="reWrite">重写</a-button>
<a-button type="primary" @click="save" style="margin-left: 10px">确定签字</a-button>
</div>
</div>
</a-form-model-item>
</a-col>-->
</a-row>
</a-card>
<div style="margin: 30px 0px">
<div class="divider_my"><span class="midText">发放信息</span></div>
</div>
<div style="clear: both"></div>
</div>
</div>
</a-card>
</a-form-model-item>
</a-col>
<a-col :span="12">
<a-form-model-item label="发放日期" prop="provideDate">
<a-date-picker v-model="formData.provideDate" format="YYYY-MM-DD" style="width: 100%"/>
</a-form-model-item>
</a-col>
<a-col :span="12">
<a-form-model-item label="发放医生" prop="provideDoctorId">
<a-select v-model="formData.provideDoctorId" placeholder="请选择">
<a-select-option v-for="item in doctorInfoList"
:key="item.id" :value="item.id"
>
{{item.staffName}}
</a-select-option>
</a-select>
</a-form-model-item>
</a-col>
<a-col :span="21" :offset="3">
<a-form-model-item :wrapperCol="{span: 23}">
<a-button type="primary" @click="openStockModel" style="margin-bottom: 10px">请选择要发放的叶酸种类</a-button>
<a-table :dataSource="formData.provideRecordList" rowKey="id" :pagination="false" class="table_input tab_error"
bordered>
<a-table-column title="供应商名称" data-index="supplierName"></a-table-column>
<a-table-column title="品牌" data-index="brandName"></a-table-column>
<a-table-column title="批次号" data-index="batchNumber"></a-table-column>
<a-table-column title="当前库存" data-index="number"></a-table-column>
<a-table-column title="发放数量" width="190px" fixed="right">
<template slot-scope="text, record, index">
<a-form-model-item :prop="'provideRecordList.' + index + '.sendNumber'"
:rules="formRules.sendNumber" class="tab_input_r">
<a-input type="number"
v-toInt
v-model="record.sendNumber"
placeholder="请输入发放数量"
style="width: 150px;margin-top: 20px"
@change="getChangeRecord(record)"
>
<!-- <a-col :span="21" :offset="3">
<a-form-model-item :wrapperCol="{span: 23}">
<div style="border: 1px dashed #EEEEEE">
<div class="sign">签字</div>
<vue-signature-pad
id="signature"
width="100%"
height="200px"
ref="signaturePad"
:options="options"
/>
<div class="opt">
<a-button @click="reWrite">重写</a-button>
<a-button type="primary" @click="save" style="margin-left: 10px">确定签字</a-button>
</div>
</div>
</a-form-model-item>
</a-col>-->
</a-row>
</a-card>
<div style="margin: 30px 0px">
<div class="divider_my"><span class="midText">发放信息</span></div>
</div>
<div style="clear: both"></div>
<a-col :span="12">
<a-form-model-item label="发放日期" prop="provideDate">
<a-date-picker v-model="formData.provideDate" format="YYYY-MM-DD" style="width: 100%"/>
</a-form-model-item>
</a-col>
<a-col :span="12">
<a-form-model-item label="发放医生" prop="provideDoctorId">
<a-select v-model="formData.provideDoctorId" placeholder="请选择">
<a-select-option v-for="item in doctorInfoList"
:key="item.id" :value="item.id"
>
{{item.staffName}}
</a-select-option>
</a-select>
</a-form-model-item>
</a-col>
<a-col :span="21" :offset="3">
<a-form-model-item :wrapperCol="{span: 23}">
<a-button type="primary" @click="openStockModel" style="margin-bottom: 10px">请选择要发放的叶酸种类
</a-button>
<a-table :dataSource="formData.provideRecordList" rowKey="id" :pagination="false"
class="table_input tab_error"
bordered>
<a-table-column title="供应商名称" data-index="supplierName"></a-table-column>
<a-table-column title="品牌" data-index="brandName"></a-table-column>
<a-table-column title="批次号" data-index="batchNumber"></a-table-column>
<a-table-column title="当前库存" data-index="number"></a-table-column>
<a-table-column title="发放数量" width="190px" fixed="right">
<template slot-scope="text, record, index">
<a-form-model-item :prop="'provideRecordList.' + index + '.sendNumber'"
:rules="formRules.sendNumber" class="tab_input_r">
<a-input type="number"
v-toInt
v-model="record.sendNumber"
placeholder="请输入发放数量"
style="width: 150px;margin-top: 20px"
@change="getChangeRecord(record)"
>
</a-input>
</a-form-model-item>
</template>
</a-table-column>
<a-table-column title="操作" align="center" fixed="right" width="70px">
<template slot-scope="text, record, index">
<!-- <a-button type="link" class="table_delbtn" @click="deleteGoodsList(index)">删除</a-button> -->
<a-popconfirm
title="确定移除该物资吗?"
ok-text="是"
cancel-text="否"
@confirm="confirm(index)"
>
<a href="#" class="table_delbtn">删除</a>
</a-popconfirm>
</template>
</a-table-column>
</a-table>
</a-form-model-item>
</a-col>
<a-col :span="24">
<a-form-model-item label="备注" prop="remarks" :labelCol="{span: 3}" :wrapperCol="{span: 20}">
<a-textarea placeholder="请输入备注" v-model="formData.remarks" :rows="5"></a-textarea>
</a-form-model-item>
</a-col>
</a-form-model>
</a-input>
</a-form-model-item>
</template>
</a-table-column>
<a-table-column title="操作" align="center" fixed="right" width="70px">
<template slot-scope="text, record, index">
<!-- <a-button type="link" class="table_delbtn" @click="deleteGoodsList(index)">删除</a-button> -->
<a-popconfirm
title="确定移除该物资吗?"
ok-text="是"
cancel-text="否"
@confirm="confirm(index)"
>
<a href="#" class="table_delbtn">删除</a>
</a-popconfirm>
</template>
</a-table-column>
</a-table>
</a-form-model-item>
</a-col>
<a-col :span="24">
<a-form-model-item label="备注" prop="remarks" :labelCol="{span: 3}" :wrapperCol="{span: 20}">
<a-textarea placeholder="请输入备注,最多可输入500字" v-model="formData.remarks" :rows="5"
:maxLength="500"></a-textarea>
</a-form-model-item>
</a-col>
</a-form-model>
<!-- 选择叶酸种类弹框-->
<!-- 选择叶酸种类弹框-->
<div>
<in-stock-manage-info ref="inStockManageInfo" @selectedIdList="getChecked" v-if="readyGetChecked"></in-stock-manage-info>
<in-stock-manage-info ref="inStockManageInfo" @selectedIdList="getChecked"
v-if="readyGetChecked"></in-stock-manage-info>
</div>
<div style="text-align: center;margin-top: 16px">
<a-button @click="goBack">取消</a-button>
<a-button type="primary" :loading="spinning" @click="addMaterialDis" style="margin-left: 8px">发放
</a-button>
</div>
<div style="text-align: center;margin-top: 16px">
<a-button @click="goBack">取消</a-button>
<a-button type="primary" :loading="spinning" @click="addMaterialDis" style="margin-left: 8px">发放</a-button>
</div>
</a-card>
</a-spin>
</div>
......@@ -269,14 +275,13 @@
data() {
return {
unitInfo: JSON.parse(window.sessionStorage.getItem('networkInfo')),
routerParams: [],
spinning: false,
// 弹窗内表单
formData: {
womanName: undefined,
womenCertificateType: '1',
womenIdCard: undefined,
oncePregnant: 1,
oncePregnant: '',
pregnantNum: undefined,
manName: undefined,
menCertificateType: '1',
......@@ -301,12 +306,12 @@
womenIdCard: [
{required: true, message: '请输入证件号码'}
],
oncePregnant: [
{required: true, message: '请选择是否曾经怀孕'}
],
pregnantNum: [
{required: true, message: '请输入孕次'}
],
// oncePregnant: [
// {required: true, message: '请选择是否曾经怀孕'}
// ],
// pregnantNum: [
// {required: true, message: '请输入孕次'}
// ],
manName: [
{required: true, message: '请输入姓名'}
],
......@@ -326,10 +331,10 @@
nowAddress: [
{required: true, message: '请输入详细地址'}
],
signedMode: [
signedMode: [
{required: true, message: '请选择签署方式'}
],
parentDate: [
parentDate: [
{required: true, message: '请选择签署日期'}
],
provideDate: [
......@@ -352,10 +357,7 @@
}
},
},
],
remarks: [
{required: true, message: '请输入备注'}
],
]
},
womanPregnant: false,//是否怀孕
options: {
......@@ -369,7 +371,7 @@
},
readyGetChecked: true,
doctorInfoList: [],
areaInfo:[],
areaInfo: [],
fieldNames: {
label: 'areaName',
value: 'areaCode',
......@@ -385,7 +387,7 @@
this.getBookHtmlContent()
this.getAllDoctorList()
if (this.routerParams.routerFlag == 'update') {//从申请过来的发放
this.getStockListDetail()
this.getStockListDetail()
} else {//由新增过来的发放
this.initLoadAreaData()
}
......@@ -445,9 +447,9 @@
},
getBookHtmlContent() {//获取用户知情书模板
this.$api.common.fetchConsentInfo().then(({data}) => {
if (this.$api.utils.isBlank(data)){
this.bookHtmlContent={content:""}
}else {
if (this.$api.utils.isBlank(data)) {
this.bookHtmlContent = {content: ""}
} else {
this.bookHtmlContent = data;
}
})
......@@ -455,7 +457,7 @@
getAllDoctorList() {
this.$api.common.fetchAllDoctor().then(({data}) => {
this.doctorInfoList = data
})
})
},
//------签字-----------
reWrite() {
......@@ -494,24 +496,24 @@
},
addMaterialDis() {//发放
let vm = this
let vm = this;
this.$refs.formRef.validate(valid => {
if (valid) {
if (this.formData.provideRecordList.length === 0) {
this.$message.warning('发放叶酸不能为空!');
} else {
this.spinning = true;
let params ={}
let params = {};
this.formData.provideRecordList.forEach(item => {
item.stockId = item.id
});
const {parentDate, provideDate,presentCode,provideDoctorId, ...others} = vm.formData
const {parentDate, provideDate, presentCode, provideDoctorId, ...others} = vm.formData
let parentTime = moment(parentDate).format('YYYY-MM-DD')
let provideTme = moment(provideDate).format('YYYY-MM-DD')
let presentCodeInfo = presentCode[presentCode.length -1]
let presentCodeInfo = presentCode[presentCode.length - 1];
let provideDoctorInfo = vm.doctorInfoList.filter(item => item.id == provideDoctorId)
params ={
params = {
parentDate: parentTime,
provideDate: provideTme,
presentCode: presentCodeInfo,
......@@ -563,7 +565,13 @@
},
goBack() {
closedDetail('/inStock/addMaterialDistribution', '/Home/folviteDistribution')
if (this.routerParams.routerFlag == "update") {
this.$router.push("/Home/folviteApply");
closedDetail('/inStock/addMaterialDistribution', '/Home/folviteApply');
} else {
this.$router.push("/Home/folviteDistribution");
closedDetail('/inStock/addMaterialDistribution', '/Home/folviteDistribution')
}
}
}
}
......@@ -593,9 +601,10 @@
.book {
.ant-card-head-title {
padding: 0px!important;
padding: 0px !important;
}
}
.sign {
position: absolute;
background: #FFF1F0;
......@@ -609,11 +618,12 @@
float: right;
margin-top: 10px;
}
.table_input {
.ant-table-tbody > tr > td {
padding: 5px!important;
overflow-wrap: break-word;
}
}
.table_input {
.ant-table-tbody > tr > td {
padding: 5px !important;
overflow-wrap: break-word;
}
}
</style>
......@@ -2,120 +2,120 @@
<div>
<a-spin tip="加载中..." :spinning="spinning">
<a-card>
<div>
<div>
<span style="font-size: 18px;font-weight: 600;"> 叶酸发放登记</span>
</div>
<div style="margin: 30px 0px">
<div class="divider_my"><span class="midText">居民信息</span></div>
</div>
<div style="clear: both"></div>
<div style="margin-top: 16px">
<div class="detail_title" >
<div class="divider_my_dashed">
<span class="midText" style="font-size: 14px;color: #FF4D80;">女方信息</span>
</div>
<div style="clear: both"></div>
</div>
<a-descriptions bordered>
<a-descriptions-item label="姓名">
{{detailInfo.womanName || '--'}}
</a-descriptions-item>
<a-descriptions-item label="证件类型">
{{detailInfo.womenCertificateTypeName || '--'}}
</a-descriptions-item>
<a-descriptions-item label="证件号码">
{{detailInfo.womenIdCard || '--'}}
</a-descriptions-item>
<a-descriptions-item label="是否曾经怀孕">
{{detailInfo.oncePregnantName || '--'}}
</a-descriptions-item>
<a-descriptions-item label="孕次">
{{detailInfo.pregnantNum || '--'}}
</a-descriptions-item>
</a-descriptions>
<div class="detail_title" style="border-top: 0px">
<div class="divider_my_dashed">
<span class="midText" style="font-size: 14px;color: #FF4D80;">男方信息</span>
<div>
<div>
<span style="font-size: 18px;font-weight: 600;"> 叶酸发放登记</span>
</div>
<div style="margin: 30px 0px">
<div class="divider_my"><span class="midText">居民信息</span></div>
</div>
<div style="clear: both"></div>
</div>
<a-descriptions bordered>
<a-descriptions-item label="姓名">
{{detailInfo.manName || '--'}}
</a-descriptions-item>
<a-descriptions-item label="证件类型">
{{detailInfo.menCertificateTypeName || '--'}}
</a-descriptions-item>
<a-descriptions-item label="证件号码">
{{detailInfo.menIdCard || '--'}}
</a-descriptions-item>
</a-descriptions>
<div class="detail_title" style="border-top: 0px">
<div class="divider_my_dashed">
<span class="midText" style="font-size: 14px;color: #FF4D80;">其他信息</span>
<div style="margin-top: 16px">
<div class="detail_title">
<div class="divider_my_dashed">
<span class="midText" style="font-size: 14px;color: #FF4D80;">女方信息</span>
</div>
<div style="clear: both"></div>
</div>
<a-descriptions bordered>
<a-descriptions-item label="姓名">
{{detailInfo.womanName || '--'}}
</a-descriptions-item>
<a-descriptions-item label="证件类型">
{{detailInfo.womenCertificateTypeName || '--'}}
</a-descriptions-item>
<a-descriptions-item label="证件号码">
{{detailInfo.womenIdCard || '--'}}
</a-descriptions-item>
<a-descriptions-item label="是否曾经怀孕">
{{detailInfo.oncePregnantName || '--'}}
</a-descriptions-item>
<a-descriptions-item label="孕次">
{{detailInfo.pregnantNum || '--'}}
</a-descriptions-item>
</a-descriptions>
<div class="detail_title" style="border-top: 0px">
<div class="divider_my_dashed">
<span class="midText" style="font-size: 14px;color: #FF4D80;">男方信息</span>
</div>
<div style="clear: both"></div>
</div>
<a-descriptions bordered>
<a-descriptions-item label="姓名">
{{detailInfo.manName || '--'}}
</a-descriptions-item>
<a-descriptions-item label="证件类型">
{{detailInfo.menCertificateTypeName || '--'}}
</a-descriptions-item>
<a-descriptions-item label="证件号码">
{{detailInfo.menIdCard || '--'}}
</a-descriptions-item>
</a-descriptions>
<div class="detail_title" style="border-top: 0px">
<div class="divider_my_dashed">
<span class="midText" style="font-size: 14px;color: #FF4D80;">其他信息</span>
</div>
<div style="clear: both"></div>
</div>
<a-descriptions bordered>
<a-descriptions-item label="联系电话">
{{detailInfo.telephone || '--'}}
</a-descriptions-item>
<a-descriptions-item label="现在住址">
{{detailInfo.presentCodeName || '--'}}
</a-descriptions-item>
<a-descriptions-item label="详细地址">
{{detailInfo.nowAddress || '--'}}
</a-descriptions-item>
<a-descriptions-item label="签署方式">
{{detailInfo.signedModeName || '--'}}
</a-descriptions-item>
<a-descriptions-item label="签署日期">
{{detailInfo.parentDate || '--'}}
</a-descriptions-item>
<a-descriptions-item label="上传照片">
<img width="120px" height="120px" :src="detailInfo.consentUrl"/>
</a-descriptions-item>
</a-descriptions>
<!-- <a-descriptions bordered layout="vertical" class="no_border">-->
<!-- <a-descriptions-item label="上传照片">-->
<!-- {{detailInfo.batchNumber || '&#45;&#45;'}}-->
<!-- </a-descriptions-item>-->
<!-- </a-descriptions>-->
</div>
<div style="margin: 30px 0px">
<div class="divider_my"><span class="midText">发放信息</span></div>
</div>
<div style="clear: both"></div>
<a-descriptions bordered :column="2">
<a-descriptions-item label="发放日期">
{{detailInfo.provideDate || '--'}}
</a-descriptions-item>
<a-descriptions-item label="发放医生">
{{detailInfo.provideDoctorName || '--'}}
</a-descriptions-item>
<a-descriptions-item label="备注">
{{detailInfo.remarks || '--'}}
</a-descriptions-item>
</a-descriptions>
<div class="detail_title" style="border-top: 0px">
<div class="divider_my_dashed">
<span class="midText" style="font-size: 14px;color: #FF4D80;">叶酸发放种类</span>
</div>
<div style="clear: both"></div>
</div>
<a-table :dataSource="detailInfo.provideRecordList"
:columns="columns"
rowKey="id"
:pagination="false"
bordered
>
</a-table>
</div>
<a-descriptions bordered>
<a-descriptions-item label="联系电话">
{{detailInfo.telephone || '--'}}
</a-descriptions-item>
<a-descriptions-item label="现在住址">
{{detailInfo.presentCode || '--'}}
</a-descriptions-item>
<a-descriptions-item label="详细地址">
{{detailInfo.nowAddress || '--'}}
</a-descriptions-item>
<a-descriptions-item label="签署方式">
{{detailInfo.signedModeName || '--'}}
</a-descriptions-item>
<a-descriptions-item label="签署日期1">
{{detailInfo.parentDate || '--'}}
</a-descriptions-item>
<a-descriptions-item label="线下知情同意书">
<img width="120px" height="120px" :src="detailInfo.consentUrl"/>
</a-descriptions-item>
</a-descriptions>
<a-descriptions bordered layout="vertical" class="no_border">
<a-descriptions-item label="上传照片">
{{detailInfo.batchNumber || '--'}}
</a-descriptions-item>
</a-descriptions>
</div>
<div style="margin: 30px 0px">
<div class="divider_my"><span class="midText">发放信息</span></div>
</div>
<div style="clear: both"></div>
<a-descriptions bordered :column="2">
<a-descriptions-item label="发放日期">
{{detailInfo.provideDate || '--'}}
</a-descriptions-item>
<a-descriptions-item label="发放医生">
{{detailInfo.provideDoctorName || '--'}}
</a-descriptions-item>
<a-descriptions-item label="备注">
{{detailInfo.remarks || '--'}}
</a-descriptions-item>
</a-descriptions>
<div class="detail_title" style="border-top: 0px">
<div class="divider_my_dashed">
<span class="midText" style="font-size: 14px;color: #FF4D80;">叶酸发放种类</span>
<div style="text-align: center;margin-top: 40px">
<a-button @click="goBack">关闭</a-button>
</div>
<div style="clear: both"></div>
</div>
<a-table :dataSource="detailInfo.provideRecordList"
:columns="columns"
rowKey="id"
:pagination="false"
bordered
>
</a-table>
</div>
<div style="text-align: center;margin-top: 40px">
<a-button @click="goBack">关闭</a-button>
</div>
</a-card>
</a-spin>
</div>
......@@ -123,6 +123,8 @@
<script>
import moment from 'moment';
import {closedDetail} from "../../../utils/common";
import router from "../../../../router";
const columns = [
{
title: '供应商',
......@@ -170,11 +172,12 @@
residentId: this.routerParams.id
}
this.$api.folviteDistributionManage.fetchFolviteDistributionDetail(par).then(({data = [], code}) => {
this.spinning = false
this.spinning = false;
this.detailInfo = data
})
},
goBack() {
this.$router.push("/Home/folviteDistribution");
closedDetail('/inStock/inStockManageDetail', '/Home/folviteDistribution')
}
},
......
......@@ -196,7 +196,6 @@
pageIndex: this.pagination.pageIndex,
pageSize: this.pagination.pageSize
}
console.log(par);
this.$api.stockManage.fetchInStockList(par).then(({data = {}}) => {
const {dataList = [], total = 0} = data
this.tableData = dataList
......
......@@ -48,6 +48,7 @@
:multiple="true"
:action="uploadAction"
:headers="headers"
@preview="preview"
@change="handleChange"
:file-list="fileList"
>
......@@ -100,7 +101,7 @@
{
title: '证件号码',
dataIndex: 'womenIdCard',
ellipsis: true
ellipsis: false
},
{
title: '联系电话',
......@@ -129,7 +130,8 @@
},
{
title: '操作',
align: 'center',
fixed:'right',
align: 'left',
width: "200px",
scopedSlots: {customRender: 'action'},
},
......@@ -234,6 +236,9 @@
});
this.fileList = fileList;
},
preview(val){
window.open(val.response.data.trueDownloadUrl)
},
onsubmit() {
if (this.$api.utils.isBlank(this.formData.consentId)) {
this.$message.warning('请上传文件');
......
<template>
<div class="inStockAdd">
<a-card style="height: 100vh">
<a-divider orientation="left">
<span style="font-size: 16px;">叶酸库存录入</span>
</a-divider>
<div style="width:90%;margin: 0 auto;margin-top: 20px">
<a-form-model ref="formRef" :model="formData" :rules="formRules"
:labelCol="{span: 6}"
:wrapperCol="{span: 16}"
>
<a-row :gutter="16">
<a-col :span="12">
<a-form-model-item label="供应商" prop="supplierId">
<a-select v-model="formData.supplierId"
placeholder="请选择"
:dropdownMatchSelectWidth="false"
@click.native="getAllSupply"
>
<a-select-option v-for="item in allSupplyInfo" :key="item.id"
:value="item.id">{{item.supplierName}}
</a-select-option>
</a-select>
</a-form-model-item>
</a-col>
<a-col :span="12">
<a-form-model-item label="品牌" prop="brandId">
<a-select v-model="formData.brandId"
placeholder="品牌名称"
:dropdownMatchSelectWidth="false"
>
<a-select-option v-for="item in brandNameList" :key="item.enumValue"
:value="item.enumValue">{{item.enumName}}
</a-select-option>
</a-select>
</a-form-model-item>
</a-col>
<a-col :span="12">
<a-form-model-item label="批次号" prop="batchNumber">
<a-input v-model="formData.batchNumber"
placeholder="请输入批次号"></a-input>
</a-form-model-item>
</a-col>
<a-col :span="12">
<a-form-model-item label="生产日期" prop="produceDate">
<a-date-picker v-model="formData.produceDate" format="YYYY-MM-DD" style="width: 100%"
/>
</a-form-model-item>
</a-col>
<a-col :span="12">
<a-form-model-item label="有效期至" prop="expireDate">
<a-date-picker v-model="formData.expireDate" format="YYYY-MM-DD" style="width: 100%"
/>
</a-form-model-item>
</a-col>
<a-col :span="12">
<a-form-model-item label="单价" prop="unitPrice">
<a-input v-price
v-model="formData.unitPrice"
suffix="元"
placeholder="请输入单价"></a-input>
</a-form-model-item>
</a-col>
<a-col :span="12">
<a-form-model-item label="采购日期" prop="purchDate">
<a-date-picker v-model="formData.purchDate" format="YYYY-MM-DD" style="width: 100%"
/>
</a-form-model-item>
</a-col>
<a-col :span="12">
<a-form-model-item label="数量" prop="number">
<a-input v-toInt
v-model="formData.number"
placeholder="请输入数量">
<a-select slot="addonAfter" v-model="formData.specs" default-value="瓶" style="width: 60px">
<a-select-option value="瓶">
<a-divider orientation="left">
<span style="font-size: 16px;">叶酸库存录入</span>
</a-divider>
<div style="width:90%;margin: 0 auto;margin-top: 20px">
<a-form-model ref="formRef" :model="formData" :rules="formRules"
:labelCol="{span: 6}"
:wrapperCol="{span: 16}"
>
<a-row :gutter="16">
<a-col :span="12">
<a-form-model-item label="供应商" prop="supplierId">
<a-select v-model="formData.supplierId"
placeholder="请选择"
:dropdownMatchSelectWidth="false"
@click.native="getAllSupply"
>
<a-select-option v-for="item in allSupplyInfo" :key="item.id"
:value="item.id">{{item.supplierName}}
</a-select-option>
<a-select-option value="盒">
</a-select>
</a-form-model-item>
</a-col>
<a-col :span="12">
<a-form-model-item label="品牌" prop="brandId">
<a-select v-model="formData.brandId"
placeholder="品牌名称"
:dropdownMatchSelectWidth="false"
>
<a-select-option v-for="item in brandNameList" :key="item.enumValue"
:value="item.enumValue">{{item.enumName}}
</a-select-option>
</a-select>
</a-input>
</a-form-model-item>
</a-col>
<a-col :span="12">
<a-form-model-item label="入库时间" prop="enterDate">
<a-date-picker v-model="formData.enterDate" format="YYYY-MM-DD" style="width: 100%"
/>
</a-form-model-item>
</a-col>
<a-col :span="12">
<a-form-model-item label="入库经手人" prop="handler">
<a-input
v-model="formData.handler"
placeholder="请输入入库经手人"></a-input>
</a-form-model-item>
</a-col>
<a-col :span="24">
<a-form-model-item label="备注"
prop="remarks"
:labelCol="{span: 3}"
:wrapperCol="{span: 20}">
<a-textarea
:rows="6"
v-model="formData.remarks"
placeholder="请输入备注"></a-textarea>
</a-form-model-item>
</a-col>
</a-row>
</a-form-model>
</div>
<div style="text-align: center">
<a-button class="search_btn btn_space" @click="goBack">取消</a-button>
<a-button type="primary" class="search_btn btn_space" :loading="subLoad" style="margin-left: 10px" @click="submitForm">库存录入</a-button>
</div>
</a-form-model-item>
</a-col>
<a-col :span="12">
<a-form-model-item label="批次号" prop="batchNumber">
<a-input v-model="formData.batchNumber"
placeholder="请输入批次号"></a-input>
</a-form-model-item>
</a-col>
<a-col :span="12">
<a-form-model-item label="生产日期" prop="produceDate">
<a-date-picker v-model="formData.produceDate" format="YYYY-MM-DD" style="width: 100%"
/>
</a-form-model-item>
</a-col>
<a-col :span="12">
<a-form-model-item label="有效期至" prop="expireDate">
<a-date-picker v-model="formData.expireDate" format="YYYY-MM-DD" style="width: 100%"
/>
</a-form-model-item>
</a-col>
<a-col :span="12">
<a-form-model-item label="单价" prop="unitPrice">
<a-input v-price
v-model="formData.unitPrice"
suffix="元"
placeholder="请输入单价,保留2位小数"></a-input>
</a-form-model-item>
</a-col>
<a-col :span="12">
<a-form-model-item label="采购日期" prop="purchDate">
<a-date-picker v-model="formData.purchDate" format="YYYY-MM-DD" style="width: 100%"
/>
</a-form-model-item>
</a-col>
<a-col :span="12">
<a-form-model-item label="数量" prop="number">
<a-input v-toInt
v-model="formData.number"
placeholder="请输入数量">
<a-select slot="addonAfter" v-model="formData.specs" default-value="瓶"
style="width: 60px">
<a-select-option value="瓶">
</a-select-option>
<a-select-option value="盒">
</a-select-option>
</a-select>
</a-input>
</a-form-model-item>
</a-col>
<a-col :span="12">
<a-form-model-item label="入库时间" prop="enterDate">
<a-date-picker v-model="formData.enterDate" format="YYYY-MM-DD" style="width: 100%"
/>
</a-form-model-item>
</a-col>
<a-col :span="12">
<a-form-model-item label="入库经手人" prop="handler">
<a-input
v-model="formData.handler"
placeholder="请输入入库经手人"></a-input>
</a-form-model-item>
</a-col>
<a-col :span="24">
<a-form-model-item label="备注"
prop="remarks"
:labelCol="{span: 3}"
:wrapperCol="{span: 20}">
<a-textarea
:rows="6"
:maxLength="500"
v-model="formData.remarks"
placeholder="请输入备注,最多500个字"></a-textarea>
</a-form-model-item>
</a-col>
</a-row>
</a-form-model>
</div>
<div style="text-align: center">
<a-button class="search_btn btn_space" @click="goBack">取消</a-button>
<a-button type="primary" class="search_btn btn_space" :loading="subLoad" style="margin-left: 10px"
@click="submitForm">库存录入
</a-button>
</div>
</a-card>
</div>
</template>
<script>
import moment from 'moment'
import {closedDetail, getEnumByFlag} from "../../../utils/common";
import commonCode from "../../../commonCode";
export default {
components: {},
data() {
return {
brandNameList: [],
subLoad:false,
subLoad: false,
// form表单
formData: {
brandId: undefined,
......@@ -137,7 +143,7 @@
produceDate: undefined,
expireDate: undefined,
purchDate: undefined,
enterDate:undefined,
enterDate: undefined,
handler: undefined,
number: undefined,
specs: '瓶',
......@@ -147,7 +153,7 @@
brandId: [
{required: true, message: '请选择品牌'}
],
batchNumber:[
batchNumber: [
{required: true, message: '请输入批次号'}
],
supplierId: [
......@@ -171,11 +177,11 @@
unitPrice: [
{required: true, message: '请输入单价'}
],
remarks:[
remarks: [
{required: false, message: '请输入备注'}
],
},
allSupplyInfo:[]
allSupplyInfo: []
}
},
created() {
......@@ -183,31 +189,35 @@
},
methods: {
getAllSupply() {
let par= {}
let par = {}
this.$api.common.fetchAllSupply(par).then(({data = []}) => {
this.allSupplyInfo = data
})
},
// 弹窗确定按钮
submitForm() {
let vm = this
let vm = this;
this.$refs.formRef.validate(valid => {
if (valid) {
this.subLoad = true
let pars = {}
Object.assign(pars, vm.formData)
pars.produceDate = moment(vm.formData.produceDate).format('YYYY-MM-DD')
pars.expireDate = moment(vm.formData.expireDate).format('YYYY-MM-DD')
pars.purchDate = moment(vm.formData.purchDate).format('YYYY-MM-DD')
pars.enterDate = moment(vm.formData.enterDate).format('YYYY-MM-DD')
this.subLoad = true;
let pars = {};
Object.assign(pars, vm.formData);
console.log(pars);
pars.unitPrice = Number(pars.unitPrice).toFixed(2);
pars.produceDate = moment(vm.formData.produceDate).format('YYYY-MM-DD');
pars.expireDate = moment(vm.formData.expireDate).format('YYYY-MM-DD');
pars.purchDate = moment(vm.formData.purchDate).format('YYYY-MM-DD');
pars.enterDate = moment(vm.formData.enterDate).format('YYYY-MM-DD');
let par = {
...pars
}
};
vm.$api.stockManage.addHistoryStock(par).then(res => {
if (res.code === 'SUCCESS') {
vm.subLoad = false
vm.subLoad = false;
vm.$message.success('录入成功!')
vm.goBack()
vm.goBack();
} else {
vm.subLoad = false
}
}).catch(() => {
vm.subLoad = false
......@@ -216,7 +226,7 @@
});
},
goBack() {
closedDetail('/inStock/add','/Home/inStock')
closedDetail('/inStock/add', '/Home/inStock')
}
},
}
......
......@@ -112,13 +112,13 @@
const columns = [
{
title: '品牌',
dataIndex: 'brandName',
title: '供应商名称',
dataIndex: 'supplierName',
ellipsis: true
},
{
title: '供应商名称',
dataIndex: 'supplierName',
title: '品牌',
dataIndex: 'brandName',
ellipsis: true
},
{
......@@ -142,11 +142,11 @@
dataIndex: 'unitPrice',
ellipsis: true
},
{
title: '规格',
dataIndex: 'specs',
ellipsis: true
},
// {
// title: '规格',
// dataIndex: 'specs',
// ellipsis: true
// },
{
title: '库存总数',
dataIndex: 'number',
......@@ -159,6 +159,7 @@
},
{
title: '操作',
fixed:"right",
align: 'center',
scopedSlots: {customRender: 'action'},
},
......@@ -239,7 +240,6 @@
getInStockList() {
this.loading = true;
let pars = this.getQueryParam();
console.log(pars);
this.$api.stockManage.fetchInStockList(pars).then(({data = {}}) => {
const {dataList = [], total = 0} = data
this.tableData = dataList
......@@ -304,7 +304,7 @@
this.$router.push({path: '/inStock/addMaterialDistribution', query: {selected: this.selectedRowKeys}})
},
toDetail(record) {
this.$router.push({path: '/inStock/inStockManageDetail', query: record})
this.$router.push({path: '/inStock/inStockManageDetail', query: {id:record.id}})
}
},
}
......
......@@ -105,12 +105,12 @@
{required: true, message: '请输入联系人电话', trigger: 'change'},
{validator: checkPhone},
],
areaCode: [
{required: true, message: '请选择联系地址', trigger: 'change'}
],
address: [
{required: true, message: '请输入详细地址', trigger: 'change'}
],
// areaCode: [
// {required: true, message: '请选择联系地址', trigger: 'change'}
// ],
// address: [
// {required: true, message: '请输入详细地址', trigger: 'change'}
// ],
},
queryParams: {},
areaInfo: [],
......@@ -158,7 +158,6 @@
targetOption.children = [...data]
this.areaInfo = [...this.areaInfo]
}
console.log(this.areaInfo)
})
},
// 弹窗确定按钮
......@@ -173,7 +172,6 @@
areaCode: areaInfo,
...others
};
console.log(par)
if (this.queryParams.modeType === 'add') {
vm.$api.common.fetchAddSupply(par).then(res => {
this.subLoad = false;
......
......@@ -119,7 +119,7 @@
}
},
created() {
this.routerParams = this.$route.query
this.routerParams = this.$route.query;
if (this.routerParams.menuId) {
window.sessionStorage.setItem('menuId', this.routerParams.menuId)
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment