MicroCommunityWeb/public/components/common/addResourceStore/addResourceStore.js

368 lines
15 KiB
JavaScript
Executable File

(function (vc) {
vc.extends({
propTypes: {
callBackListener: vc.propTypes.string, //父组件名称
callBackFunction: vc.propTypes.string //父组件监听方法
},
data: {
addResourceStoreInfo: {
unitCode: '',
miniUnitCode: '',
miniUnitStock: '',
unitCodes: [],
resId: '',
parentRstId: '',
rstId: '',
rssId: '',
flag: '',
resName: '',
resCode: '',
price: '',
outLowPrice: '',
outHighPrice: '',
showMobile: 'N',
description: '',
remark: '',
shId: '',
photos: [],
storehouses: [],
resourceStoreTypes: [],
resourceStoreSpecifications: [],
sonResourceStoreTypes: [],
warningStock: ''
}
},
_initMethod: function () {
//与字典表单位关联
vc.getDict('resource_store', "unit_code", function (_data) {
vc.component.addResourceStoreInfo.unitCodes = _data;
});
},
_initEvent: function () {
vc.on('addResourceStore', 'openAddResourceStoreModal', function () {
$that._listAddResourceStoreType();
$that._listAddStorehouses();
$('#addResourceStoreModel').modal('show');
});
vc.on("addResourceStore", "notifyUploadImage", function (_param) {
vc.component.addResourceStoreInfo.photos = _param;
});
},
methods: {
addResourceStoreValidate() {
return vc.validate.validate({
addResourceStoreInfo: vc.component.addResourceStoreInfo
}, {
'addResourceStoreInfo.resName': [
{
limit: "required",
param: "",
errInfo: "物品名称不能为空"
},
{
limit: "maxin",
param: "2,100",
errInfo: "物品名称长度为2至100"
},
],
'addResourceStoreInfo.resCode': [
{
limit: "maxLength",
param: "50",
errInfo: "物品编码不能超过50位"
},
{
limit: "required",
param: "",
errInfo: "物品编码不能为空"
}
],
'addResourceStoreInfo.price': [
{
limit: "required",
param: "",
errInfo: "物品价格不能为空"
},
{
limit: "money",
param: "",
errInfo: "物品价格格式错误"
},
],
'addResourceStoreInfo.warningStock': [
{
limit: "required",
param: "",
errInfo: "警告库存不能为空"
},
{
limit: "min",
param: "0",
errInfo: "警告库存最小为零"
}
],
'addResourceStoreInfo.miniUnitCode': [
{
limit: "required",
param: "",
errInfo: "最小计量单位不能为空"
},
],
'addResourceStoreInfo.miniUnitStock': [
{
limit: "required",
param: "",
errInfo: "最小计量单位数量不能为空"
},
],
'addResourceStoreInfo.description': [
{
limit: "maxLength",
param: "200",
errInfo: "描述不能为空"
},
],
'addResourceStoreInfo.showMobile': [
{
limit: "required",
param: "",
errInfo: "手机端显示不能为空"
},
],
'addResourceStoreInfo.outLowPrice': [
{
limit: "required",
param: "",
errInfo: "最低收费标准不能为空"
},
{
limit: "money",
param: "",
errInfo: "收费标准格式错误"
},
],
'addResourceStoreInfo.outHighPrice': [
{
limit: "required",
param: "",
errInfo: "最高收费标准不能为空"
},
{
limit: "money",
param: "",
errInfo: "收费标准格式错误"
},
],
'addResourceStoreInfo.unitCode': [
{
limit: "required",
param: "",
errInfo: "单位不能为空"
},
],
'addResourceStoreInfo.parentRstId': [
{
limit: "required",
param: "",
errInfo: "物品类型不能为空"
},
],
'addResourceStoreInfo.rstId': [
{
limit: "required",
param: "",
errInfo: "二级分类不能为空"
},
],
'addResourceStoreInfo.shId': [
{
limit: "required",
param: "",
errInfo: "仓库不能为空"
},
]
});
},
decideAdd: function () {
if (parseFloat($that.addResourceStoreInfo.outLowPrice) > parseFloat($that.addResourceStoreInfo.outHighPrice)) {
vc.toast("最高收费标准不能小于最低收费标准!")
$that.addResourceStoreInfo.outHighPrice = "";
}
},
saveResourceStoreInfo: function () {
if (!vc.component.addResourceStoreValidate()) {
vc.toast(vc.validate.errInfo);
return;
}
vc.component.addResourceStoreInfo.communityId = vc.getCurrentCommunity().communityId;
//不提交数据将数据 回调给侦听处理
if (vc.notNull($props.callBackListener)) {
vc.emit($props.callBackListener, $props.callBackFunction, vc.component.addResourceStoreInfo);
$('#addResourceStoreModel').modal('hide');
return;
}
vc.http.post(
'addResourceStore',
'save',
JSON.stringify(vc.component.addResourceStoreInfo),
{
emulateJSON: true
},
function (json, res) {
//vm.menus = vm.refreshMenuActive(JSON.parse(json),0);
if (res.status == 200) {
//关闭model
$('#addResourceStoreModel').modal('hide');
vc.component.clearAddResourceStoreInfo();
vc.emit('resourceStoreManage', 'pageReload', {});
return;
}
vc.toast(json);
},
function (errInfo, error) {
console.log('请求失败处理');
vc.toast(errInfo);
});
},
//查询物品类型
_listAddResourceStoreType: function () {
var param = {
params: {
page: 1,
row: 100,
communityId: vc.getCurrentCommunity().communityId
}
};
//发送get请求
vc.http.get('resourceStoreTypeManage',
'list',
param,
function (json, res) {
var _resourceStoreType = JSON.parse(json);
vc.component.addResourceStoreInfo.resourceStoreTypes = _resourceStoreType.data;
}, function (errInfo, error) {
console.log('请求失败处理');
}
);
},
// 分类改变事件
resourceStoreTypesOnChangeAdd: function () {
vc.component.addResourceStoreInfo.rstId = '';
vc.component.addResourceStoreInfo.sonResourceStoreTypes = [];
if (vc.component.addResourceStoreInfo.parentRstId == '') {
return;
}
var param = {
params: {
page: 1,
row: 100,
rstId: vc.component.addResourceStoreInfo.parentRstId,
flag: "0"
}
};
//发送get请求
vc.http.get('resourceStoreTypeManage',
'list',
param,
function (json, res) {
var _resourceStoreTypeInfo = JSON.parse(json);
vc.component.addResourceStoreInfo.sonResourceStoreTypes = _resourceStoreTypeInfo.data;
}, function (errInfo, error) {
console.log('请求失败处理');
}
);
},
// 分类改变事件
sonResourceStoreTypesOnChangeAdd: function () {
if (vc.component.addResourceStoreInfo.parentRstId == '') {
vc.component.resourceStoreSpecification = [];
return;
}
vc.component._loadSonResourceStoreSpecificationAdd();
},
// 根据分类查询规格(一级分类)
_loadResourceStoreSpecificationAdd: function () {
var param = {
params: {
page: 1,
row: 100,
rstId: vc.component.addResourceStoreInfo.parentRstId
}
};
//发送get请求
vc.http.apiGet('resourceStore.listResourceStoreSpecifications',
param,
function (json, res) {
var _addResourceStoreInfo = JSON.parse(json);
vc.component.addResourceStoreInfo.resourceStoreSpecifications = _addResourceStoreInfo.data;
}, function (errInfo, error) {
console.log('请求失败处理');
}
);
},
// 根据分类查询规格(二级分类)
_loadSonResourceStoreSpecificationAdd: function () {
var param = {
params: {
page: 1,
row: 100,
rstId: vc.component.addResourceStoreInfo.rstId
}
};
//发送get请求
vc.http.apiGet('resourceStore.listResourceStoreSpecifications',
param,
function (json, res) {
var _addResourceStoreInfo = JSON.parse(json);
vc.component.addResourceStoreInfo.resourceStoreSpecifications = _addResourceStoreInfo.data;
}, function (errInfo, error) {
console.log('请求失败处理');
}
);
},
clearAddResourceStoreInfo: function () {
vc.component.addResourceStoreInfo = {
resName: '',
resCode: '',
resId: '',
parentRstId: '',
rstId: '',
price: '',
description: '',
outLowPrice: '',
outHighPrice: '',
showMobile: '',
remark: '',
unitCode: '',
shId: '',
unitCodes: [],
photos: [],
storehouses: [],
warningStock: ''
};
},
_listAddStorehouses: function (_page, _rows) {
var param = {
params: {
page: 1,
row: 100,
shType: '2806',
communityId: vc.getCurrentCommunity().communityId
}
};
//发送get请求
vc.http.apiGet('resourceStore.listStorehouses',
param,
function (json, res) {
let _storehouseManageInfo = JSON.parse(json);
vc.component.addResourceStoreInfo.storehouses = _storehouseManageInfo.data;
}, function (errInfo, error) {
console.log('请求失败处理');
}
);
},
}
});
})(window.vc);