mirror of
https://gitee.com/java110/MicroCommunityWeb.git
synced 2026-06-12 18:11:00 +08:00
310 lines
13 KiB
JavaScript
Executable File
310 lines
13 KiB
JavaScript
Executable File
(function (vc) {
|
|
vc.extends({
|
|
propTypes: {
|
|
callBackListener: vc.propTypes.string, //父组件名称
|
|
callBackFunction: vc.propTypes.string //父组件监听方法
|
|
},
|
|
data: {
|
|
addMeterWaterInfo: {
|
|
waterId: '',
|
|
meterType: '',
|
|
preDegrees: '',
|
|
curDegrees: '',
|
|
preReadingTime: '',
|
|
curReadingTime: '',
|
|
remark: '',
|
|
roomId: '',
|
|
objId: '',
|
|
objName: '',
|
|
feeTypeCd: '',
|
|
feeConfigs: [],
|
|
configId: '',
|
|
objType: '1001',
|
|
hasRoom: false,
|
|
ownerName: '',
|
|
objType: '3333'
|
|
}
|
|
},
|
|
_initMethod: function () {
|
|
$that._initAddMeterWaterDateInfo();
|
|
},
|
|
_initEvent: function () {
|
|
vc.on('addMeterWater', 'openAddMeterWaterModal', function (_param) {
|
|
console.log('params :', _param);
|
|
if (_param.hasOwnProperty("objType")) {
|
|
$that.addMeterWaterInfo.objType = _param.objType;
|
|
}
|
|
if (_param.hasOwnProperty('roomId')) {
|
|
$that.addMeterWaterInfo.hasRoom = true;
|
|
$that.addMeterWaterInfo.roomId = _param.roomId;
|
|
$that.addMeterWaterInfo.objId = _param.roomId;
|
|
// $that.addMeterWaterInfo.objName = _param.roomName.replace('0单元', ''); //处理商铺
|
|
$that.addMeterWaterInfo.objName = $that.transRoomName(_param.roomName);
|
|
$that.addMeterWaterInfo.ownerName = _param.roomName + '(' + _param.ownerName + ')';
|
|
$that._queryPreMeterWater(_param.roomId);
|
|
}
|
|
$('#addMeterWaterModel').modal('show');
|
|
});
|
|
vc.on("addMeterWater", "notify", function (_param) {
|
|
if (_param.hasOwnProperty("roomId")) {
|
|
vc.component.addMeterWaterInfo.roomId = _param.roomId;
|
|
vc.component.addMeterWaterInfo.objId = _param.roomId;
|
|
// $that.addMeterWaterInfo.objName = _param.name.replace('0单元', ''); //处理商铺;
|
|
$that.addMeterWaterInfo.objName = $that.transRoomName(_param.name);
|
|
$that._queryPreMeterWater(_param.roomId);
|
|
}
|
|
});
|
|
},
|
|
methods: {
|
|
// 将1-1-1 转化为 1栋1单元1室
|
|
transRoomName: function (roomName) {
|
|
// 没有-则返回
|
|
if (roomName.indexOf('-') < 0) {
|
|
return roomName;
|
|
}
|
|
roomName = roomName.split('-');
|
|
return roomName[0] + '栋' + roomName[1] + '单元' + roomName[2] + '室';
|
|
},
|
|
_initAddMeterWaterDateInfo: function () {
|
|
vc.component.addMeterWaterInfo.preReadingTime = vc.dateTimeFormat(new Date().getTime());
|
|
$('.addPreReadingTime').datetimepicker({
|
|
language: 'zh-CN',
|
|
fontAwesome: 'fa',
|
|
format: 'yyyy-mm-dd hh:ii:ss',
|
|
initTime: true,
|
|
initialDate: new Date(),
|
|
autoClose: 1,
|
|
todayBtn: true
|
|
});
|
|
$('.addPreReadingTime').datetimepicker()
|
|
.on('changeDate', function (ev) {
|
|
var value = $(".addPreReadingTime").val();
|
|
vc.component.addMeterWaterInfo.preReadingTime = value;
|
|
});
|
|
$('.addCurReadingTime').datetimepicker({
|
|
language: 'zh-CN',
|
|
fontAwesome: 'fa',
|
|
format: 'yyyy-mm-dd hh:ii:ss',
|
|
initTime: true,
|
|
initialDate: new Date(),
|
|
autoClose: 1,
|
|
todayBtn: true
|
|
});
|
|
$('.addCurReadingTime').datetimepicker()
|
|
.on('changeDate', function (ev) {
|
|
var value = $(".addCurReadingTime").val();
|
|
var start = Date.parse(new Date(vc.component.addMeterWaterInfo.preReadingTime))
|
|
var end = Date.parse(new Date(value))
|
|
if (start - end >= 0) {
|
|
vc.toast("计费终止时间必须大于计费起始时间")
|
|
$(".addCurReadingTime").val('')
|
|
} else {
|
|
vc.component.addMeterWaterInfo.curReadingTime = value;
|
|
}
|
|
});
|
|
//防止多次点击时间插件失去焦点
|
|
document.getElementsByClassName('form-control addPreReadingTime')[0].addEventListener('click', myfunc)
|
|
|
|
function myfunc(e) {
|
|
e.currentTarget.blur();
|
|
}
|
|
|
|
document.getElementsByClassName("form-control addCurReadingTime")[0].addEventListener('click', myfunc)
|
|
|
|
function myfunc(e) {
|
|
e.currentTarget.blur();
|
|
}
|
|
},
|
|
addMeterWaterValidate() {
|
|
return vc.validate.validate({
|
|
addMeterWaterInfo: vc.component.addMeterWaterInfo
|
|
}, {
|
|
'addMeterWaterInfo.preDegrees': [
|
|
{
|
|
limit: "required",
|
|
param: "",
|
|
errInfo: "上期度数不能为空"
|
|
},
|
|
{
|
|
limit: "money",
|
|
param: "",
|
|
errInfo: "上期度数格式错误"
|
|
},
|
|
],
|
|
'addMeterWaterInfo.curDegrees': [
|
|
{
|
|
limit: "required",
|
|
param: "",
|
|
errInfo: "本期度数不能为空"
|
|
},
|
|
{
|
|
limit: "money",
|
|
param: "",
|
|
errInfo: "本期度数格式错误"
|
|
},
|
|
],
|
|
'addMeterWaterInfo.preReadingTime': [
|
|
{
|
|
limit: "required",
|
|
param: "",
|
|
errInfo: "上期读表时间不能为空"
|
|
},
|
|
{
|
|
limit: "dateTime",
|
|
param: "",
|
|
errInfo: "上期读表时间格式错误"
|
|
},
|
|
],
|
|
'addMeterWaterInfo.curReadingTime': [
|
|
{
|
|
limit: "required",
|
|
param: "",
|
|
errInfo: "本期读表时间不能为空"
|
|
},
|
|
{
|
|
limit: "dateTime",
|
|
param: "",
|
|
errInfo: "本期读表时间格式错误"
|
|
},
|
|
],
|
|
'addMeterWaterInfo.roomId': [
|
|
{
|
|
limit: "required",
|
|
param: "",
|
|
errInfo: "房屋必填"
|
|
}
|
|
],
|
|
'addMeterWaterInfo.configId': [
|
|
{
|
|
limit: "required",
|
|
param: "",
|
|
errInfo: "费用必填"
|
|
}
|
|
],
|
|
'addMeterWaterInfo.remark': [
|
|
{
|
|
limit: "maxLength",
|
|
param: "500",
|
|
errInfo: "备注格式错误"
|
|
},
|
|
],
|
|
});
|
|
},
|
|
saveMeterWaterInfo: function () {
|
|
if (!vc.component.addMeterWaterValidate()) {
|
|
vc.toast(vc.validate.errInfo);
|
|
return;
|
|
}
|
|
vc.component.addMeterWaterInfo.communityId = vc.getCurrentCommunity().communityId;
|
|
//不提交数据将数据 回调给侦听处理
|
|
if (vc.notNull($props.callBackListener)) {
|
|
vc.emit($props.callBackListener, $props.callBackFunction, vc.component.addMeterWaterInfo);
|
|
$('#addMeterWaterModel').modal('hide');
|
|
return;
|
|
}
|
|
vc.http.apiPost(
|
|
'meterWater.saveMeterWater',
|
|
JSON.stringify(vc.component.addMeterWaterInfo),
|
|
{
|
|
emulateJSON: true
|
|
},
|
|
function (json, res) {
|
|
//vm.menus = vm.refreshMenuActive(JSON.parse(json),0);
|
|
let _json = JSON.parse(json);
|
|
if (_json.code == 0) {
|
|
//关闭model
|
|
$('#addMeterWaterModel').modal('hide');
|
|
vc.component.clearAddMeterWaterInfo();
|
|
vc.emit('meterWaterManage', 'listMeterWater', {});
|
|
vc.emit('listRoomFee', 'notify', {});
|
|
vc.emit('listParkingSpaceFee', 'notify', {});
|
|
vc.emit('simplifyRoomFee', 'notify', {});
|
|
vc.emit('simplifyCarFee', 'notify', {});
|
|
return;
|
|
}
|
|
vc.message(_json.msg);
|
|
},
|
|
function (errInfo, error) {
|
|
console.log('请求失败处理');
|
|
vc.message(errInfo);
|
|
});
|
|
},
|
|
_changeAddMeterWaterFeeTypeCd: function (_feeTypeCd) {
|
|
var param = {
|
|
params: {
|
|
page: 1,
|
|
row: 20,
|
|
communityId: vc.getCurrentCommunity().communityId,
|
|
feeTypeCd: _feeTypeCd,
|
|
isDefault: 'F',
|
|
valid: '1'
|
|
}
|
|
};
|
|
//发送get请求
|
|
vc.http.get('roomCreateFeeAdd', 'list', param,
|
|
function (json, res) {
|
|
var _feeConfigManageInfo = JSON.parse(json);
|
|
vc.component.addMeterWaterInfo.feeConfigs = _feeConfigManageInfo.feeConfigs;
|
|
},
|
|
function (errInfo, error) {
|
|
console.log('请求失败处理');
|
|
});
|
|
$that._queryPreMeterWater($that.addMeterWaterInfo.roomId);
|
|
},
|
|
_queryPreMeterWater: function (_roomId) {
|
|
let _meterType = '1010';
|
|
let _feeTypeCd = $that.addMeterWaterInfo.feeTypeCd;
|
|
if (_feeTypeCd == '888800010015') {
|
|
_meterType = '2020';
|
|
} else if (_feeTypeCd == '888800010009') {
|
|
_meterType = '3030';
|
|
}
|
|
let param = {
|
|
params: {
|
|
communityId: vc.getCurrentCommunity().communityId,
|
|
objId: _roomId,
|
|
objType: $that.addMeterWaterInfo.objType,
|
|
meterType: _meterType
|
|
}
|
|
};
|
|
//发送get请求
|
|
vc.http.apiGet('/meterWater/queryPreMeterWater', param,
|
|
function (json, res) {
|
|
let _meterWaterInfo = JSON.parse(json);
|
|
let _total = _meterWaterInfo.total;
|
|
if (_total < 1) {
|
|
$that.addMeterWaterInfo.preDegrees = '0';
|
|
return;
|
|
}
|
|
$that.addMeterWaterInfo.preDegrees = _meterWaterInfo.data[0].curDegrees;
|
|
$that.addMeterWaterInfo.preReadingTime = _meterWaterInfo.data[0].curReadingTime;
|
|
},
|
|
function (errInfo, error) {
|
|
console.log('请求失败处理');
|
|
});
|
|
},
|
|
clearAddMeterWaterInfo: function () {
|
|
vc.component.addMeterWaterInfo = {
|
|
waterId: '',
|
|
meterType: '',
|
|
preDegrees: '',
|
|
curDegrees: '',
|
|
preReadingTime: '',
|
|
curReadingTime: '',
|
|
remark: '',
|
|
roomId: '',
|
|
objId: '',
|
|
objName: '',
|
|
feeTypeCd: '',
|
|
feeConfigs: [],
|
|
configId: '',
|
|
objType: '1001',
|
|
hasRoom: false,
|
|
ownerName: '',
|
|
objType: '3333'
|
|
};
|
|
}
|
|
}
|
|
});
|
|
})(window.vc);
|