ming-demo3
Version:
mdf metaui web
1,189 lines (1,059 loc) • 41 kB
JavaScript
"use strict";
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports["default"] = void 0;
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
var _findIndex2 = _interopRequireDefault(require("lodash/findIndex"));
var _react = _interopRequireWildcard(require("react"));
var _baseui = require("@mdf/baseui");
var _SvgIcon = _interopRequireDefault(require("@mdf/metaui-web/lib/components/common/SvgIcon"));
var filterredux = _interopRequireWildcard(require("../../redux/filterscheme"));
var _redux = require("redux");
var _reactRedux = require("react-redux");
var BasicComponents = _interopRequireWildcard(require("../basic"));
var _extend = require("@mdf/cube/lib/extend");
var BasicComponentsMap = {},
Solutionitem = {},
commonVOs = [],
commonitem = {},
commonNewitem = {},
id = null,
isCheck;
var newBasic = {};
var Filtermodal = function (_Component) {
(0, _inherits2["default"])(Filtermodal, _Component);
function Filtermodal(props) {
var _this2;
(0, _classCallCheck2["default"])(this, Filtermodal);
_this2 = (0, _possibleConstructorReturn2["default"])(this, (0, _getPrototypeOf2["default"])(Filtermodal).call(this, props));
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this2), "handleBodyClick", function (e) {
if (e.target.className == "query-item-button add-query-criteria") {
if (e.stopPropagation) {
e.stopPropagation();
}
}
document.body.removeEventListener('click', _this2.handleBodyClick);
});
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this2), "schemeListChange", function (solutionList) {
_this2.props.filterVM && _this2.props.filterVM.setCache('schemeList', solutionList);
});
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this2), "openQuerylist", function (e) {
document.body.addEventListener('click', _this2.handleBodyClick);
if (_this2.props.filterscheme[_this2.state.modelId].queryVisible == false) {
_this2.props.filterredux.openQuerylist(!_this2.props.filterscheme[_this2.state.modelId].queryVisible, _this2.state.modelId);
}
});
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this2), "visibleChange", function () {
_this2.props.filterredux.openQuerylist(false, _this2.state.modelId);
});
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this2), "AddDataOk", function () {
_this2.props.filterredux.openQuerylist(false, _this2.state.modelId);
var ValueList = [];
commonVOs = [];
var queryList = _this2.props.filterscheme[_this2.state.modelId].queryList;
var _this2$state = _this2.state,
checkedValue = _this2$state.checkedValue,
checkedValue2 = _this2$state.checkedValue2,
queryCheckValue = _this2$state.queryCheckValue;
checkedValue = [].concat(checkedValue2);
ValueList = checkedValue.map(function (value) {
var _queryList = queryList.find(function (v) {
return v.id === value;
});
return _queryList || [];
});
ValueList = ValueList.map(function (value) {
var _queryCheckValue = queryCheckValue.find(function (v) {
return v.itemId === value.id;
});
return _queryCheckValue || value;
});
ValueList.forEach(function (element) {
var itemName = element.itemName,
compareLogic = element.compareLogic,
itemType = element.itemType,
ctrlType = element.ctrlType,
isMasterOrg = element.isMasterOrg,
cRefType = element.cRefType,
value1 = element.value1,
defaultVal1 = element.defaultVal1,
defaultVal2 = element.defaultVal2,
value2 = element.value2,
displayname = element.displayname,
multSelect = element.multSelect,
refReturn = element.refReturn,
referCode = element.referCode,
enumArray = element.enumArray;
var filterVMField = new cb.models.FilterModel({
compareLogic: compareLogic,
ctrlType: itemType || ctrlType,
value1: value1 || defaultVal1,
value2: value2 || defaultVal2,
displayname: displayname,
multSelect: multSelect,
refReturn: refReturn,
cRefType: referCode || cRefType,
enumArray: enumArray,
isMasterOrg: isMasterOrg
});
_this2.viewModel.addProperty(itemName, filterVMField);
var eleType = itemType || ctrlType;
var lowerCtrlType = itemType || ctrlType && eleType.trim().toLocaleLowerCase();
if (lowerCtrlType === 'refer' || lowerCtrlType === 'treerefer' || lowerCtrlType === 'listrefer') {
_this2.triggerReferBrowse(filterVMField.getFromModel());
_this2.triggerReferBrowse(filterVMField.getToModel());
}
});
_this2.viewModel.fireEvent('addProperties');
_this2.setState({
ValueList: ValueList,
checkedValue: checkedValue
});
});
_this2.viewModel = new cb.models.ContainerModel({
params: {
cardKey: props.cardKey,
filterId: props.filterId
}
});
_this2.state = {
mention: false,
inMouseitemName: "",
checked: [],
IsdefaultValue: 0,
inpValue: '',
NewList: "",
sort: "",
filterId: _this2.props.filterId,
modelId: _this2.props.Id,
ValueList: [],
InputValue: "",
visible: false,
id: null,
NewaddChecked: [],
checkedValue: [],
copy_checkedValue: [],
showDele: true,
checkedValue2: [],
queryCheckValue: [],
AllFilterModel: [],
charlength: false
};
return _this2;
}
(0, _createClass2["default"])(Filtermodal, [{
key: "componentWillMount",
value: function componentWillMount() {
if (process.env.__CLIENT__ == true && cb && _extend.extendComp) {
Object.assign(newBasic, BasicComponents, _extend.extendComp.basic);
}
for (var attr in newBasic) {
BasicComponentsMap[attr.toLocaleLowerCase()] = newBasic[attr];
}
}
}, {
key: "componentDidMount",
value: function componentDidMount() {
this.props.filterVM.setData({
filterModal: this.viewModel
});
this.props.filterredux.init(this.state.modelId);
this.props.filterredux.getQueryItem(this.state.modelId, this.state.filterId);
this.props.filterredux.getCompareLogic(this.state.modelId);
}
}, {
key: "componentWillReceiveProps",
value: function componentWillReceiveProps(nextProps) {
var edit = nextProps.filterscheme[this.state.modelId].showedit;
var id = nextProps.filterscheme[this.state.modelId].editId;
if (edit == true) {
this.editSchemeInfo(id);
}
}
}, {
key: "editSchemeInfo",
value: function editSchemeInfo(id) {
var _this3 = this;
console.log(1);
commonVOs = [];
this.setState({
visible: !this.state.visible,
mention: false
});
this.props.filterredux.AddScheme(true, this.state.modelId);
if (!this.props.filterscheme[this.state.modelId].bEdit) {
this.props.filterredux.Isedit(!this.props.filterscheme[this.state.modelId].bEdit, this.state.modelId);
}
if (this.props.filterscheme[this.state.modelId].isdefault) {
this.props.filterredux.IsDefault(!this.props.filterscheme[this.state.modelId].isdefault, this.state.modelId);
}
if (this.props.filterscheme[this.state.modelId].queryVisible) {
this.props.filterredux.openQuerylist(false, this.state.modelId);
}
this.props.filterredux.editSchemeInfo(id, function (editSchemeitem) {
var AllFilterModel = editSchemeitem.AllFilterModel;
var queryCheckValue = editSchemeitem.CommonModel;
var InputValue = editSchemeitem.solutionName;
var IsdefaultValue = editSchemeitem.isDefault;
var ID = editSchemeitem.id;
if (IsdefaultValue) {
_this3.props.filterredux.IsDefault(true, _this3.state.modelId);
}
queryCheckValue.forEach(function (element) {
var _index = (0, _findIndex2["default"])(AllFilterModel, function (obj) {
return obj.id === element.itemId;
});
element.displayname = AllFilterModel[_index].displayname || null;
element.refReturn = AllFilterModel[_index].refReturn || null;
element.enumArray = AllFilterModel[_index].enumArray || null;
element.isMasterOrg = AllFilterModel[_index].isMasterOrg || false;
if (element.ctrlType === 'predicatedatepicker') {
element.value1 = {
value1: element.value1,
value2: element.value2
};
}
;
var itemName = element.itemName,
compareLogic = element.compareLogic,
itemId = element.itemId,
ctrlType = element.ctrlType,
isMasterOrg = element.isMasterOrg,
value1 = element.value1,
value2 = element.value2,
displayname = element.displayname,
multSelect = element.multSelect,
refReturn = element.refReturn,
cRefType = element.cRefType,
enumArray = element.enumArray;
var filterVMField = new cb.models.FilterModel({
compareLogic: compareLogic,
ctrlType: ctrlType,
value1: value1,
value2: value2,
displayname: displayname,
multSelect: multSelect,
refReturn: refReturn,
cRefType: cRefType,
enumArray: enumArray,
isMasterOrg: isMasterOrg
});
_this3.viewModel.addProperty(itemName, filterVMField);
var lowerCtrlType = ctrlType && ctrlType.trim().toLocaleLowerCase();
if (lowerCtrlType === 'refer' || lowerCtrlType === 'treerefer' || lowerCtrlType === 'listrefer') {
_this3.triggerReferBrowse(filterVMField.getFromModel());
_this3.triggerReferBrowse(filterVMField.getToModel());
}
});
var checkedValue = [];
for (var j = 0; j < queryCheckValue.length; j++) {
var Id = queryCheckValue[j].itemId;
checkedValue.push(Id);
}
var checkedValue2 = [].concat(checkedValue);
var copy_queryCheckValue = [].concat(queryCheckValue);
_this3.setState({
queryCheckValue: copy_queryCheckValue,
ValueList: queryCheckValue,
InputValue: InputValue,
id: ID,
checkedValue: checkedValue,
checkedValue2: checkedValue2,
inMouseitemName: "",
IsdefaultValue: IsdefaultValue,
AllFilterModel: AllFilterModel
});
}, this.state.modelId);
}
}, {
key: "triggerReferBrowse",
value: function triggerReferBrowse(referModel) {
if (!referModel) return;
var referValue = referModel.getValue();
if (!referValue) return;
referModel.browse(false, function (vm) {
vm.on('getRefMetaReady', function () {
var condition = {
'isExtend': true,
simpleVOs: [{
field: referModel.getState('valueField'),
op: 'in',
value1: referValue.split(',')
}]
};
vm.execute('pressEnter', {
model: referModel,
condition: condition,
browse: false
});
});
});
}
}, {
key: "render",
value: function render() {
var addScheme = null;
var id = this.state.modelId;
var filterdata = this.props.filterscheme;
var filterkey = Object.keys(filterdata);
if (filterkey.length == 0) {
return _react["default"].createElement("div", {
className: "scheme-list"
}, addScheme);
} else {
if (filterdata && filterdata[id] && filterdata[id].bAddscheme) {
addScheme = this.AddSchemeRender();
}
return _react["default"].createElement("div", {
className: "scheme-list"
}, addScheme);
}
}
}, {
key: "getFilterContainer",
value: function getFilterContainer() {
var container = document.getElementById('yxyweb-support-mount-model') || document.body;
var _div = document.createElement("div");
container.appendChild(_div);
return _div;
}
}, {
key: "AddSchemeRender",
value: function AddSchemeRender() {
var _this4 = this;
var bAddscheme = this.props.filterscheme[this.state.modelId].bAddscheme;
var bEdit = this.props.filterscheme[this.state.modelId].bEdit;
var addqueryItems = this.AddqueryItems();
var queryItemRender = this.QueryItemRender();
var addSchemeContent = this.AddSchemeContent();
var _this = this;
var content;
content = _react["default"].createElement("div", null, _react["default"].createElement(_baseui.Modal, {
className: "scheme-content",
title: bEdit ? "编辑" : "新增",
visible: true,
getContainer: function getContainer() {
return _this.getFilterContainer();
},
onCancel: function onCancel(e) {
return _this4.handleCancel(e);
},
maskClosable: false,
style: {
height: 400
},
footer: null
}, _react["default"].createElement("div", {
className: "Scheme-Content-body"
}, addSchemeContent), _react["default"].createElement("div", {
className: "query-state"
}, " ", queryItemRender), _react["default"].createElement("div", {
className: "ant-modal-footer"
}, addqueryItems)));
if (bAddscheme) {
return content;
} else return content = "";
}
}, {
key: "handleCancel",
value: function handleCancel() {
this.CloseAddScheme();
this.props.filterredux.openQuerylist(false, this.state.modelId);
}
}, {
key: "CloseAddScheme",
value: function CloseAddScheme() {
this.props.filterredux.AddScheme(false, this.state.modelId);
this.setState({
visible: false,
ValueList: [],
InputValue: '',
queryCheckValue: [],
id: null,
checkedValue: [],
checkedValue2: [],
inMouseitemName: "",
IsdefaultValue: 0,
AllFilterModel: []
});
}
}, {
key: "AddqueryItems",
value: function AddqueryItems() {
var _this5 = this;
return _react["default"].createElement("div", {
className: "query-button"
}, _react["default"].createElement("div", {
className: "query-item-button add-query-criteria",
onClick: function onClick(e) {
return _this5.openQuerylist(e);
}
}, _react["default"].createElement(_SvgIcon["default"], {
type: "plus"
}), "\u6DFB\u52A0\u67E5\u8BE2\u6761\u4EF6"), _react["default"].createElement(_baseui.Button, {
type: "default",
className: "cancelScheme",
onClick: function onClick() {
return _this5.CloseAddScheme();
}
}, "\u53D6\u6D88"), _react["default"].createElement(_baseui.Button, {
type: "primary",
className: "confirmScheme",
onClick: function onClick() {
return _this5.SaveSolution();
}
}, "\u786E\u8BA4"));
}
}, {
key: "SaveSolution",
value: function SaveSolution() {
var Data = this.viewModel.collectData(true);
var solutionId = this.state.id;
var DataValue = {};
var rangeInput;
var billnum = this.props.billnum ? this.props.billnum : null;
this.setState({
visible: false
});
if (this.props.filterscheme[this.state.modelId].isdefault) {
isCheck = 1;
} else {
isCheck = 0;
}
var commonList = [];
var _loop = function _loop(i) {
var name = commonVOs[i].itemName;
if (name in Data) {
DataValue = Data[name];
var dataLength = Object.keys(DataValue);
if (dataLength.length > 1) {
rangeInput = 1;
} else {
rangeInput = 0;
}
if (DataValue.value1 instanceof Array || DataValue.value2 instanceof Array) {
(DataValue.value1 = DataValue.value1.join(",")) || (DataValue.value2 = DataValue.value2.join(","));
}
var itemId = commonVOs[i].itemId;
var orderId = commonVOs[i].orderId;
var _id = commonVOs[i].id;
var compareLogic = commonVOs[i].compareLogic;
commonNewitem = {
"itemId": itemId,
"orderId": orderId,
"id": _id,
"compareLogic": compareLogic,
"rangeInput": rangeInput
};
Object.assign(commonNewitem, DataValue);
}
commonList.push(commonNewitem);
var hash = {};
commonList = commonList.reduce(function (item, next) {
hash[next.itemId] ? '' : hash[next.itemId] = true && item.push(next);
return item;
}, []);
};
for (var i = 0; i < commonVOs.length; i++) {
_loop(i);
}
Solutionitem = {
"solutionName": this.state.InputValue,
"isDefault": isCheck,
"filtersId": this.state.filterId,
"id": solutionId,
"commonVOs": commonList
};
var filtersId = this.state.filterId;
if (this.state.InputValue) {
this.props.filterredux.ToSolution(Solutionitem, filtersId, this.schemeListChange, this.state.modelId, billnum);
this.setState({
visible: false,
ValueList: [],
InputValue: '',
queryCheckValue: [],
id: null,
checkedValue: [],
checkedValue2: [],
inMouseitemName: "",
IsdefaultValue: 0,
AllFilterModel: []
});
} else {
this.setState({
mention: true
});
}
}
}, {
key: "QueryItemRender",
value: function QueryItemRender() {
var _this6 = this;
var queryList = this.props.filterscheme[this.state.modelId].queryList;
var noData = 'filter_scheme_popoverdown';
if (!queryList) return;
if (queryList.length > 0) {
noData = 'filter_scheme_popover';
}
var queryContent = _react["default"].createElement(_baseui.Popover, {
getPopupContainer: function getPopupContainer(triggerNode) {
return document.getElementById('yxyweb-support-mount-popover') || document.body || triggerNode.parentNode;
},
overlayClassName: noData,
content: this.getQueryContent(),
trigger: "click",
visible: this.props.filterscheme[this.state.modelId].queryVisible,
onVisibleChange: function onVisibleChange() {
return _this6.visibleChange();
},
placement: "topLeft"
});
return _react["default"].createElement("div", {
className: "ant-popover-left"
}, queryContent);
}
}, {
key: "getQueryContent",
value: function getQueryContent() {
var _this8 = this;
var ContentCheckBoxs = [];
var queryList = this.props.filterscheme[this.state.modelId].queryList;
var checkedValue = this.state.checkedValue;
var checkedValue2 = this.state.checkedValue2;
queryList.forEach(function (ele, index) {
var _this7 = this;
var id = ele.id.toString();
var itemTitle = ele.itemTitle;
var checkedgroup;
checkedgroup = _react["default"].createElement("div", null, _react["default"].createElement(_baseui.Checkbox, {
key: index,
onChange: function onChange(e) {
return _this7.onChangeCheck(e);
},
value: id,
checked: checkedValue.includes(Number(id)) || checkedValue2.includes(Number(id))
}, itemTitle));
ContentCheckBoxs.push(checkedgroup);
}, this);
return _react["default"].createElement("div", {
className: "query-criteria-select",
style: {
overflow: "auto",
paddingLeft: "10px"
}
}, _react["default"].createElement("div", {
className: "ant-checkbox-group"
}, ContentCheckBoxs), _react["default"].createElement("div", {
className: "Checked-confirm-btn"
}, _react["default"].createElement(_baseui.Button, {
type: "primary",
size: "small",
className: "confirmChecked",
onClick: function onClick() {
return _this8.AddDataOk();
}
}, "\u786E\u8BA4"), _react["default"].createElement(_baseui.Button, {
type: "default",
size: "small",
className: "cancelChecked",
onClick: function onClick() {
return _this8.QueryItem();
}
}, "\u53D6\u6D88")));
}
}, {
key: "onChangeCheck",
value: function onChangeCheck(e) {
var _this$state = this.state,
checkedValue = _this$state.checkedValue,
checkedValue2 = _this$state.checkedValue2;
var _num = Number(e.target.value);
if (checkedValue2.includes(_num)) {
checkedValue2.splice(checkedValue2.indexOf(_num), 1);
} else {
checkedValue2.push(_num);
}
if (checkedValue.includes(_num)) {
checkedValue.splice(checkedValue.indexOf(_num), 1);
}
this.setState({
checkedValue2: checkedValue2,
checkedValue: checkedValue
});
}
}, {
key: "QueryItem",
value: function QueryItem() {
this.props.filterredux.openQuerylist(false, this.state.modelId);
var _checkedValue = [],
query_checkedValue = [];
var _this$state2 = this.state,
checkedValue = _this$state2.checkedValue,
checkedValue2 = _this$state2.checkedValue2,
ValueList = _this$state2.ValueList,
queryCheckValue = _this$state2.queryCheckValue;
ValueList.forEach(function (ele, index) {
query_checkedValue.push(ele.id || ele.itemId);
queryCheckValue.forEach(function (element, index) {
if (element.itemId == (ele.id || ele.itemId)) {
_checkedValue.push(queryCheckValue[index]);
}
if (query_checkedValue.includes(element.itemId)) {
query_checkedValue.splice(query_checkedValue.indexOf(element.itemId), 1);
}
});
});
var copy_checkedValue = [];
if (_checkedValue != []) {
_checkedValue.forEach(function (ele, index) {
copy_checkedValue.push(ele.itemId);
});
} else {
copy_checkedValue = [].concat(_checkedValue);
}
checkedValue2 = [].concat(copy_checkedValue).concat(query_checkedValue);
commonVOs.splice(0, commonVOs.length);
this.setState({
checkedValue2: checkedValue2,
visible: false
});
}
}, {
key: "triggerReferBrowse",
value: function triggerReferBrowse(referModel) {
if (!referModel) return;
var referValue = referModel.getValue();
if (!referValue) return;
referModel.browse(false, function (vm) {
vm.on('getRefMetaReady', function () {
var condition = {
'isExtend': true,
simpleVOs: [{
field: referModel.getState('valueField'),
op: 'in',
value1: referValue.split(',')
}]
};
vm.execute('pressEnter', {
model: referModel,
condition: condition,
browse: false
});
});
});
}
}, {
key: "AddSchemeContent",
value: function AddSchemeContent() {
var _this9 = this;
var mention = this.state.mention;
var InputValue = this.state.InputValue;
var schemeContent = this.AddData();
var nameMention = '';
var input_schemename = "";
if (mention) {
nameMention = _react["default"].createElement("span", {
className: "scheme-name-mention"
}, "\u4E0D\u80FD\u4E3A\u7A7A");
input_schemename = "input_schemename";
}
var tips = this.state.charlength ? _react["default"].createElement("div", {
className: "char_tips"
}, "\u540D\u79F0\u957F\u5EA6\u4E0D\u53EF\u8D85\u8FC710\u4E2A\u5B57") : _react["default"].createElement("div", {
className: "char_start"
}, "\u540D\u79F0\u957F\u5EA6\u4E0D\u53EF\u8D85\u8FC710\u4E2A\u5B57");
var nameContent = _react["default"].createElement("div", {
className: "add-scheme"
}, _react["default"].createElement(_baseui.Row, {
className: "add-scheme-content"
}, _react["default"].createElement(_baseui.Col, {
span: 1,
className: "scheme-name"
}, _react["default"].createElement("i", {
className: "anticon anticon-star"
}), "\u540D\u79F0"), _react["default"].createElement(_baseui.Col, {
span: 4,
className: "scheme-name-content"
}, _react["default"].createElement(_baseui.Input, {
type: "text",
value: InputValue,
onChange: function onChange(e) {
return _this9.InputValue(e);
},
className: input_schemename,
maxlength: "10"
}), " "), _react["default"].createElement(_baseui.Col, {
span: 5,
className: "scheme-set"
}, _react["default"].createElement(_baseui.Checkbox, {
checked: this.props.filterscheme[this.state.modelId].isdefault,
onClick: function onClick() {
return _this9.IsDefault();
}
}, "\u8BBE\u4E3A\u9ED8\u8BA4"))), tips, nameMention, _react["default"].createElement("div", null, schemeContent));
return nameContent;
}
}, {
key: "InputValue",
value: function InputValue(e) {
var solutionName = "";
var num = 0;
solutionName = e.target.value;
if (solutionName.length <= 10) {
this.setState({
InputValue: solutionName,
charlength: false
});
} else {
this.setState({
charlength: true
});
}
}
}, {
key: "IsDefault",
value: function IsDefault() {
var IsdefaultValue = this.state.IsdefaultValue;
if (this.props.filterscheme[this.state.modelId].bEdit) {
if (IsdefaultValue) {
if (!this.props.filterscheme[this.state.modelId].isdefault) {
this.props.filterredux.IsDefault(!this.props.filterscheme[this.state.modelId].isdefault, this.state.modelId);
}
} else {
this.props.filterredux.IsDefault(!this.props.filterscheme[this.state.modelId].isdefault, this.state.modelId);
}
} else {
this.props.filterredux.IsDefault(!this.props.filterscheme[this.state.modelId].isdefault, this.state.modelId);
}
}
}, {
key: "getComponent",
value: function getComponent(ComName, model, config, ctrlType, cShowCaption, enumArray, multSelect) {
if (ComName == "tagbutton") {
ComName = BasicComponents.Tag2;
return _react["default"].createElement(ComName, (0, _extends2["default"])({
model: model,
TagData: enumArray,
TagCanMultSel: multSelect
}, config));
}
return ComName ? _react["default"].createElement(ComName, (0, _extends2["default"])({
model: model,
title: cShowCaption,
isInFilterJSX: true
}, config)) : _react["default"].createElement("h1", null, ctrlType);
}
}, {
key: "AddData",
value: function AddData() {
var ValueList = this.state.ValueList;
var controlRender = [];
ValueList.forEach(function (element, index) {
var _this10 = this;
var ele = element;
var itemName = ele.itemName,
itemTitle = ele.itemTitle,
compareLogic = ele.compareLogic,
enumArray = ele.enumArray,
multSelect = ele.multSelect;
var itemType = ele.itemType || ele.ctrlType;
var filterVMField = this.viewModel.get(itemName);
var fromModel = filterVMField.getFromDisplayModel() || filterVMField.getFromModel();
var toModel = filterVMField.getToModel();
var ctrlType;
if (itemType) {
ctrlType = itemType.trim().toLocaleLowerCase();
} else {
ctrlType = "input";
}
var options = [];
var Option = _baseui.Select.Option;
var compareLogicData = Object.assign({}, this.props.filterscheme[this.state.modelId].compareLogicList);
if (multSelect && (ctrlType === 'refer' || ctrlType === 'treerefer' || ctrlType === 'listrefer' || ctrlType === 'tagrefer')) {
compareLogicData = {
"in": compareLogicData["in"],
nin: compareLogicData.nin
};
}
if (ctrlType === 'tagbutton') {
delete compareLogicData.between;
}
if (ctrlType == "predicatedatepicker") {
var _keyvalue = "between";
var compareLogicItem = _react["default"].createElement(Option, {
key: _keyvalue,
style: {
width: 60
}
}, compareLogicData[_keyvalue]);
options.push(compareLogicItem);
} else {
for (var keyvalue in compareLogicData) {
var _compareLogicItem = _react["default"].createElement(Option, {
key: keyvalue,
style: {
width: 60
}
}, compareLogicData[keyvalue]);
options.push(_compareLogicItem);
}
}
var config = {};
var ComName = "";
if (ctrlType == "tagbutton") {
ComName = "tagbutton";
} else {
ComName = BasicComponentsMap[ctrlType];
}
var control;
commonitem = {
"itemId": ele.id || ele.itemId,
"orderId": index,
"itemName": ele.itemName,
"id": id,
"compareLogic": compareLogic
};
if (commonVOs.length > 0) {
var _index = (0, _findIndex2["default"])(commonVOs, function (obj) {
return obj.itemName === ele.itemName && obj.itemId === (ele.id || ele.itemId);
});
if (_index < 0) commonVOs.push(commonitem);
} else {
commonVOs.push(commonitem);
}
var bshowupdown = ele.itemName == this.state.inMouseitemName ? true : false;
var updown = bshowupdown ? _react["default"].createElement("span", {
className: "sumarea_list_updown"
}, _react["default"].createElement(_baseui.Button, {
style: {
borderWidth: 0
},
className: "action-shanchucopy2",
onClick: function onClick() {
return _this10.sortClick('up', index);
}
}, _react["default"].createElement(_baseui.Icon, {
type: 'shanchucopy2'
})), _react["default"].createElement(_baseui.Button, {
style: {
borderWidth: 0
},
className: "action-shanchucopy1",
onClick: function onClick() {
return _this10.sortClick('down', index);
}
}, _react["default"].createElement(_baseui.Icon, {
type: 'shanchucopy1'
})), _react["default"].createElement(_baseui.Button, {
style: {
borderWidth: 0
},
className: "action-guanbi1",
onClick: function onClick() {
return _this10.sortClick('delete', index);
}
}, _react["default"].createElement(_baseui.Icon, {
type: 'guanbi1'
}))) : _react["default"].createElement("span", null);
if (compareLogic === 'between') {
if (ctrlType == "predicatedatepicker") {
control = _react["default"].createElement("div", null, _react["default"].createElement("div", {
className: "Test-time-two sumarea_list_item",
onMouseEnter: function onMouseEnter(e) {
return _this10.onMouseIsenter(true, ele.itemName, index);
},
onMouseLeave: function onMouseLeave(e) {
return _this10.onMouseIsenter(false, ele.itemName, index);
}
}, _react["default"].createElement(_baseui.Col, {
className: "query-content-title"
}, _react["default"].createElement("span", null, itemTitle)), _react["default"].createElement(_baseui.Col, null, _react["default"].createElement(_baseui.Select, {
className: "compareLogic",
value: compareLogicData[compareLogic],
onChange: function onChange(value) {
return _this10.handleChange(value, ele.id || ele.itemId, ctrlType);
}
}, options), " "), _react["default"].createElement(_baseui.Col, {
className: "query-picker query-copypicker"
}, this.getComponent(ComName, fromModel, config, ctrlType)), updown));
} else {
control = _react["default"].createElement("div", null, _react["default"].createElement("div", {
className: "Test-time-two sumarea_list_item",
onMouseEnter: function onMouseEnter(e) {
return _this10.onMouseIsenter(true, ele.itemName, index);
},
onMouseLeave: function onMouseLeave(e) {
return _this10.onMouseIsenter(false, ele.itemName, index);
}
}, _react["default"].createElement(_baseui.Col, {
className: "query-content-title"
}, _react["default"].createElement("span", null, itemTitle)), _react["default"].createElement(_baseui.Col, null, _react["default"].createElement(_baseui.Select, {
className: "compareLogic",
value: compareLogicData[compareLogic],
onChange: function onChange(value) {
return _this10.handleChange(value, ele.id || ele.itemId, ctrlType);
}
}, options), " "), _react["default"].createElement(_baseui.Col, {
className: "query-component-1"
}, this.getComponent(ComName, fromModel, config, ctrlType)), _react["default"].createElement(_baseui.Col, {
className: "query-component-2"
}, _react["default"].createElement("span", null, "\u81F3")), _react["default"].createElement(_baseui.Col, {
className: "query-component-3"
}, this.getComponent(ComName, toModel, config, ctrlType)), updown));
}
} else {
control = _react["default"].createElement("div", null, _react["default"].createElement("div", {
className: "query-content-list sumarea_list_item",
onMouseEnter: function onMouseEnter(e) {
return _this10.onMouseIsenter(true, ele.itemName);
},
onMouseLeave: function onMouseLeave(e) {
return _this10.onMouseIsenter(false, ele.itemName);
}
}, _react["default"].createElement(_baseui.Col, {
className: "query-content-title"
}, _react["default"].createElement("span", null, itemTitle)), _react["default"].createElement(_baseui.Col, null, _react["default"].createElement(_baseui.Select, {
className: "compareLogic",
value: compareLogicData[compareLogic],
style: {
width: 60
},
onChange: function onChange(value) {
return _this10.handleChange(value, ele.id || ele.itemId, ctrlType);
}
}, options)), _react["default"].createElement(_baseui.Col, {
className: "query-component-3"
}, this.getComponent(ComName, fromModel, config, ctrlType, itemTitle, enumArray, multSelect)), updown));
}
controlRender.push(control);
}, this);
return _react["default"].createElement("div", {
className: "query-content-ranking"
}, controlRender);
}
}, {
key: "onMouseIsenter",
value: function onMouseIsenter(Isenter, itemName) {
if (Isenter) {
this.setState({
inMouseitemName: itemName
});
} else {
this.setState({
inMouseitemName: ""
});
}
}
}, {
key: "handleChange",
value: function handleChange(value, id, ctrlType) {
var ValueList = this.state.ValueList;
commonVOs.forEach(function (ele, index) {
if (ele.itemId == id) {
if (ele.compareLogic != value) {
ele.compareLogic = value;
}
}
});
var _index = (0, _findIndex2["default"])(ValueList, function (obj) {
return obj.id == id || obj.itemId == id;
});
if (_index > -1) {
ValueList[_index].compareLogic = value;
if (value == 'between') {
var model = this.viewModel.get(ValueList[_index].itemName);
var toModel = model.getToModel();
if (!toModel) {
toModel = new cb.models.SimpleModel();
model._set_data('toModel', toModel, true);
model._set_data('between', true, true);
}
}
}
this.setState({
ValueList: ValueList
});
}
}, {
key: "sortClick",
value: function sortClick(type, index) {
var _this$state3 = this.state,
ValueList = _this$state3.ValueList,
checkedValue = _this$state3.checkedValue,
checkedValue2 = _this$state3.checkedValue2,
queryCheckValue = _this$state3.queryCheckValue;
var ValueListSort = [].concat(ValueList);
if (type == "up" && index == 0) return;
if (type == "down" && index == ValueListSort.length - 1) return;
var pre = cb.utils.extend(true, {}, ValueListSort[index - 1]);
var next = cb.utils.extend(true, {}, ValueListSort[index + 1]);
var now = cb.utils.extend(true, {}, ValueListSort[index]);
var commonvosPre = cb.utils.extend(true, {}, commonVOs[index - 1]);
var commonvosNext = cb.utils.extend(true, {}, commonVOs[index + 1]);
var commonvosNow = cb.utils.extend(true, {}, commonVOs[index]);
if (type == 'up') {
ValueListSort[index] = pre;
ValueListSort[index - 1] = now;
commonVOs[index] = commonvosPre;
commonVOs[index - 1] = commonvosNow;
}
if (type == 'down') {
ValueListSort[index] = next;
ValueListSort[index + 1] = now;
commonVOs[index] = commonvosNext;
commonVOs[index + 1] = commonvosNow;
}
if (type == 'delete') {
var ID = ValueListSort[index].id || ValueListSort[index].itemId;
ValueListSort.splice(index, 1);
if (checkedValue2.includes(ID)) {
checkedValue2.splice(checkedValue2.indexOf(ID), 1);
}
queryCheckValue.forEach(function (ele, index) {
if (ID == ele.itemId) {
queryCheckValue.splice(index, 1);
}
});
commonVOs.forEach(function (element, index) {
if (ID == element.itemId) {
commonVOs.splice(index, 1);
}
});
checkedValue = [].concat(checkedValue2);
}
commonVOs.forEach(function (ele, index) {
ele.orderId = index;
});
this.setState({
ValueList: ValueListSort,
checkedValue2: checkedValue2,
checkedValue: checkedValue,
queryCheckValue: queryCheckValue
});
}
}]);
return Filtermodal;
}(_react.Component);
function mapStateToProps(state) {
return {
filterscheme: state.filterscheme.toJS()
};
}
function mapDispatchToProps(dispatch) {
return {
filterredux: (0, _redux.bindActionCreators)(filterredux, dispatch)
};
}
var _default = (0, _reactRedux.connect)(mapStateToProps, mapDispatchToProps)(Filtermodal);
exports["default"] = _default;
//# sourceMappingURL=filtermodal.js.map