|
|
@ -42,6 +42,7 @@ |
|
|
|
<!-- 搜索按钮——窗体组件LocationForPADPlan --> |
|
|
|
<searchPage |
|
|
|
v-if="active == 1" |
|
|
|
@sxBtnClickHandle="sxBtnClickHandle" |
|
|
|
ref="searchTable" |
|
|
|
:tableLoading="tableLoading" |
|
|
|
:advancedFilter="advancedFilter( |
|
|
@ -424,48 +425,77 @@ export default { |
|
|
|
detailsDataPush(val) { |
|
|
|
this.$emit("detailsDataPush", val); |
|
|
|
}, |
|
|
|
// 点击筛选按钮 20230704 |
|
|
|
sxBtnClickHandle(data){ |
|
|
|
// 如果是code回显为一条数据处理 |
|
|
|
let _values = [] |
|
|
|
let _option = null |
|
|
|
let _new = [] |
|
|
|
data.forEach((item,key)=>{ |
|
|
|
if(item.column == 'code' && (item.action == '==' || item.action == '!=')){ |
|
|
|
_values.push(item.value) |
|
|
|
_option = item |
|
|
|
}else{ |
|
|
|
_new.push(item) |
|
|
|
} |
|
|
|
}) |
|
|
|
if(_option){ |
|
|
|
let _item = { |
|
|
|
action: _option.action, |
|
|
|
column: _option.column, |
|
|
|
logic: "And", |
|
|
|
value: _values.join(','), |
|
|
|
} |
|
|
|
_new.push(_item) |
|
|
|
this.$refs.searchTable.setScreenDataFilters(_new) |
|
|
|
} |
|
|
|
}, |
|
|
|
//确定筛选 |
|
|
|
advancedFilter(url, list, TotalCount, data, oldSkipCount) { |
|
|
|
return () => { |
|
|
|
list.SkipCount = (oldSkipCount - 1) * list.MaxResultCount; |
|
|
|
this.tableLoading = true; |
|
|
|
// 盘点库存 过滤线边仓数据 20230703更新 |
|
|
|
// 如果不是Excel盘点类型(this.CreateFormData.requestType != 1),过滤线边仓数据 20230703更新 |
|
|
|
if ( this.CreateFormData.requestType != 1) { |
|
|
|
let _filter = { |
|
|
|
action: "!=", |
|
|
|
column: "type", |
|
|
|
logic: "And", |
|
|
|
value: "5", |
|
|
|
hide:true |
|
|
|
} |
|
|
|
if(this.pageListLocation.condition.filters.length <= 0){ |
|
|
|
this.pageListLocation.condition.filters.push(_filter) |
|
|
|
} |
|
|
|
list.condition.filters.forEach((item,key)=>{ |
|
|
|
if(item.action == '!=' && item.column == 'type' && item.value == '5'){ |
|
|
|
item.hide = true |
|
|
|
} |
|
|
|
}) |
|
|
|
// 如果是Excel盘点类型(this.CreateFormData.requestType == 1),过滤原材料2 |
|
|
|
// 如果不是Excel盘点类型(this.CreateFormData.requestType != 1),过滤线边仓数据5 |
|
|
|
let type_value = this.CreateFormData.requestType == 1 ? '2' : '5' |
|
|
|
let _filter = { |
|
|
|
action: "!=", |
|
|
|
column: "type", |
|
|
|
logic: "And", |
|
|
|
value: type_value, |
|
|
|
hide:true |
|
|
|
} |
|
|
|
if(this.pageListLocation.condition.filters.length <= 0){ |
|
|
|
this.pageListLocation.condition.filters.push(_filter) |
|
|
|
} |
|
|
|
// 如果是Excel盘点类型(this.CreateFormData.requestType == 1),过滤原材料 |
|
|
|
else{ |
|
|
|
let _filter = { |
|
|
|
action: "!=", |
|
|
|
column: "type", |
|
|
|
logic: "And", |
|
|
|
value: "2", |
|
|
|
hide:true |
|
|
|
let _code_value = [] |
|
|
|
let _code_option = null |
|
|
|
list.condition.filters.forEach((item,key)=>{ |
|
|
|
if(item.action == '!=' && item.column == 'type' && item.value == type_value){ |
|
|
|
item.hide = true |
|
|
|
} |
|
|
|
if(this.pageListLocation.condition.filters.length <= 0){ |
|
|
|
this.pageListLocation.condition.filters.push(_filter) |
|
|
|
// code多选(只针对与等于和不等于)20230704 |
|
|
|
if(item.column == 'code'){ |
|
|
|
_code_value = item.value.split(',') |
|
|
|
_code_option = item |
|
|
|
list.condition.filters.splice(key,1) |
|
|
|
} |
|
|
|
list.condition.filters.forEach((item,key)=>{ |
|
|
|
if(item.action == '!=' && item.column == 'type' && item.value == '2'){ |
|
|
|
item.hide = true |
|
|
|
}) |
|
|
|
// 拆分code多选,回传给接口 20230704 |
|
|
|
_code_value.forEach((value,index)=>{ |
|
|
|
// 不等于情况(And),等于情况(如果key等于0是 And,其余的是 Or) |
|
|
|
let _logic = (_code_option.action == '!=') ? "And" : (index == 0 ? "And" : "Or") |
|
|
|
if(value && value.length > 0){ |
|
|
|
let _item = { |
|
|
|
action: _code_option.action, |
|
|
|
column: _code_option.column, |
|
|
|
logic: _logic, |
|
|
|
value: value, |
|
|
|
} |
|
|
|
}) |
|
|
|
} |
|
|
|
list.condition.filters.push(_item) |
|
|
|
} |
|
|
|
}) |
|
|
|
getPageList(list, url) |
|
|
|
.then((res) => { |
|
|
|
this[data] = res.items; |
|
|
|