// pages/quickArchives /quickArchives .js
var networkUtil = require('../../utils/network_util.js')
var numberUtil = require('../../utils/numberUtil.js')
var api = require('../../utils/apiFile.js')
var makePy = require('../../utils/makepy.js')
const {utils} = require("../../utils/sdk/src/utils");
const util = require("../../utils/util")
import { AreaPicker } from "../../utils/areaSelector/selector.js"
Page(Object.assign({}, AreaPicker,{
/**
* 页面的初始数据
*/
data: {
postObj: {},
queryData:{},
currentAddress: {},
sex:[
{
name:"男",
value:1,
checked:true
},
{
name:"女",
value:0,
checked:false
},
],
deliveryList:[
{
name:"顺产",
value: 1,
checked:true
},
{
name:"剖宫产",
value: 2,
checked:false
},
],
selectedChild:{},
isChooseBox:true,
//页面显示 1 新增建档 2 查看建档
showViewType:0,
hospitals:[],
SearchHospitals:[],
pickerBoxModal:true,
endDate:'',
submiting:false
},
/**
* 生命周期函数--监听页面加载
*/
onLoad: function (options) {
var that = this;
networkUtil.showLoading()
networkUtil._get(api.getConfigHospitals,{}, function(res) {
if(0 == res.data.errorcode){
that.setData({
hospitals:res.data.data,
selectHospital: {}, //{'hospitalId':216,'hospitalName':'秦皇岛市妇幼保健院'},
'queryData.hospital': {} //{'hospitalId':216,'hospitalName':'秦皇岛市妇幼保健院'}
})
}
}, function(res) {
networkUtil.showErrorToast(res.errormsg)
})
var date = new Date();
var nowMonth = date.getMonth() + 1;
var strDate = date.getDate();
// 日期分割符号
var seperator = "-";
that.setData({
endDate:date.getFullYear() + seperator + nowMonth + seperator + strDate
})
wx.onKeyboardHeightChange(res => {
// console.log(res.height)
this.setData({
bottom:res.height
})
})
},
radioChange(e) {
let value = e.detail.value;
this.setData({
['postObj.sex']: value
})
},
bindQueryInput(e) {
// console.log(e)
let key = e.currentTarget.id;
let value = e.detail.value;
this.setData({
['queryData.' + key]: value
})
},
bindKeyInput(e) {
// console.log(e)
let key = e.currentTarget.id;
let value = e.detail.value;
this.setData({
['postObj.' + key]: value
})
},
bindDateChange(e){
let value = e.detail.value;
this.setData({
['postObj.birth']: value
})
},
bindMomDateChange(e){
let value = e.detail.value;
this.setData({
['postObj.mBirth']: value
})
},
radioDeliveryChange (e) {
let value = e.detail.value;
// console.log(value)
this.setData({
['postObj.fmtype']: value
})
},
fouseSearchHospital(e){
let resultArr = this.data.SearchHospitals
if(this.data.SearchHospitals.length == 0){
resultArr = this.data.hospitals;
}
this.setData({
pickerBoxModal:false,
SearchHospitals:resultArr,
'queryData.hospital':resultArr[0],
})
},
bindSearchHospital(e){
let value = e.detail.value;
let that = this;
let resultArr = [],arr = that.data.hospitals,col='hospitalName';
for(var i= 0, searchText, tmp; i<arr.length; i++) {
tmp = arr[i];
if("object" == typeof(tmp)) {
searchText = String(tmp[col]);
searchText += makePy._makePy(searchText);
searchText = searchText.toLowerCase();
value = value.toLowerCase();
if(-1 != searchText.indexOf(value)) {
resultArr.push(tmp);
}
}
}
if(resultArr.length == 0){
that.setData({
pickerBoxModal:false,
SearchHospitals:resultArr,
'selectHospital.hospitalId': 0,
'queryData.hospital':{},
})
}else{
that.setData({
pickerBoxModal:false,
SearchHospitals:resultArr,
'selectHospital.hospitalId': 0,
'queryData.hospital':resultArr[0],
})
}
},
bindHospitalChange(e){
let value = e.detail.value;
let that = this;
// console.log(value)
this.setData({
selectHospital: that.data.SearchHospitals[value]
})
},
confirmSelect(){
if(this.data.selectHospital.hospitalId&&this.data.selectHospital.hospitalId!=0){
this.setData({
pickerBoxModal:true,
'queryData.hospital': this.data.selectHospital
})
}else(
this.setData({
pickerBoxModal:true,
selectHospital: this.data.queryData.hospital
})
)
},
cancelSelect(){
this.setData({
pickerBoxModal:true,
selectHospital:this.data.queryData.hospital
})
},
checkForm(){
let flag = true;
var data = this.data.postObj;
var value = "";
if(data.mommyCardNo&&!numberUtil.checkIdCard(data.mommyCardNo,'woman')){
flag = false;
value += "母亲身份证号码 "
}
if(!(data.phone&&numberUtil.IsTelPhoneNumber(data.phone))){
flag = false;
value += "母亲手机号 "
}
if(!data.birth){
flag = false;
value += "儿童生日 "
}
if(!data.babyName){
flag = false;
value += "儿童姓名 "
}
if(!data.sex){
flag = false;
value += "儿童性别 "
}
if(!data.weight){
flag = false;
value += "儿童出生体重 "
}
if(!data.height){
flag = false;
value += "儿童出生身长 "
}
if(!this.data.currentAddress.addEntry) {
flag = false;
value += "户籍地址 "
}
if(!data.babyAddress) {
flag = false;
value += "街道门牌 "
}
return {
flag:flag,
value:value
};
},
submitData(){
var key = this.checkForm();
var data = this.data.postObj;
data.hospitalId = this.data.queryData.hospital.hospitalId;
if (this.data.currentAddress.addEntry) {
data.babyProvinceId = this.data.currentAddress.addEntry[0].id;
data.babyCityId = this.data.currentAddress.addEntry[1].id;
data.babyAreaId = this.data.currentAddress.addEntry[2].id;
data.babyStreetId = this.data.currentAddress.addEntry[3].id;
}
var that = this;
if(key.flag){
this.setData({
submiting:true
})
networkUtil._post(api.addBabyInfo, data , (res)=> {
var code = res.data.data
wx.showModal({
title: '成功提交',
content: "您已成功建档",
showCancel: false,
submiting:false,
success: function (res){
that.setData({
babyInfo:that.data.postObj,
'babyInfo.code':code,
'babyInfo.hospitalName':that.data.queryData.hospital.hospitalName,
showViewType:2
})
}
})
}, function (res) {
wx.showModal({
title: '提交失败',
content: '错误信息:'+res.data.errormsg,
showCancel: false,
success: function (res) {
}
})
},'application/json')
}else{
wx.showModal({
title: '表单填写不规范',
content: "这些项目未正确填写:"+key.value,
showCancel: false,
success: function (res) {
}
})
}
},
radioChildChange(e){
// console.log('radio发生change事件,携带value值为:', e.detail.value)
const items = this.data.childList;
for (let i = 0, len = items.length; i < len; ++i) {
if(items[i].id == e.detail.value){
this.setData({
postObj:items[i],
})
}
}
},
query(){
let value = this.data.queryData.phone;
let hospital = this.data.queryData.hospital;
var that = this;
if(!(value&&numberUtil.IsTelPhoneNumber(value))){
wx.showModal({
title: '提示',
content: '请输入正确的母亲手机号!',
showCancel: false,
})
return
}
if(!hospital.hospitalId){
wx.showModal({
title: '提示',
content: '请选择建档机构!',
showCancel: false,
})
return
}
this.setData({
pickerBoxModal:true,
postObj:{}
})
networkUtil.showLoading()
var query = {phone:value,hospitalId:0}
query.hospitalId = hospital.hospitalId;
// console.log(query)
networkUtil._get(api.getBabyAppBuildInfo,query, function(res) {
if(0 == res.data.errorcode){
if(res.data.data.length>1){
that.setData({
childList : res.data.data,
isChooseBox : false
})
}else{
that.setData({
postObj : res.data.data[0],
showViewType:1
})
}
}
}, function(res) {
networkUtil.showErrorToast(res.errormsg)
})
},
cancel(e){
this.setData({
isChooseBox:true,
showViewType:0,
selectedChild:{}
})
},
submitSelect(){
this.setData({
isChooseBox:true,
showViewType:1
})
},
getMomBirth () {
let momCn = this.data.postObj.mommyCardNo;
let bs = util.getBirthdayAndSex(momCn);
this.setData({
['postObj.mBirth']: bs[0]
})
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady: function () {
},
/**
* 生命周期函数--监听页面显示
*/
onShow: function () {
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide: function () {
},
/**
* 生命周期函数--监听页面卸载
*/
onUnload: function () {
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh: function () {
},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom: function () {
},
/**
* 用户点击右上角分享
*/
onShareAppMessage: function () {
},
onAreaCommit(locationList, e) {//当用户更换地区
// console.log('选择地址后', locationList)
var self = this;
self.addrInfo = {
province: locationList[0] || {},
city: locationList[1] || {},
area: locationList[2] || {},
street: locationList[3] || {},
}
var address = {}
address.details = ''
for (var i in locationList){
address.details += locationList[i].name
}
address.addEntry = locationList
self.setData({
isShow: 0,
currentAddress: address
});
}
}))