/* * 版 本 PIT-ADMS V7.0.3 敏捷开发框架 * Copyright (c) 2013-2018 Hexagon PPM * 创建人:超级管理员 * 日 期:2022-02-28 14:47 * 描 述:属性组表 */ var PropertyID = request('PropertyID'); var ProjectId = request('ProjectId'); var IsRequired = request('IsRequired'); var IsChecked = request('IsChecked'); var ObjectTypeID = request('ObjectTypeID'); var selectedSpecialType = ''; var Save; var obj; var bootstrap = function ($, learun) { "use strict"; var page = { init: function () { console.log('IsRequired: ' + IsRequired); page.initData(); page.bind(); }, bind: function () { }, initData: function () { // 初始化下拉列表并配置数据 $('#trigger_property_id').lrselect({ url: top.$.rootUrl + '/ZZDT_EC/ec_property/GetPropTreeDataByType', //获取数据地址 param: { ProjectId: ProjectId, ObjectTypeId: ObjectTypeID, exceptionProp: PropertyID }, //请求后台参数 type: 'tree',//数据展示类型: 1.default:普通;2.tree:树形数据;3. treemultiple:树形多选;multiple:普通多选 allowSearch: true, maxHeight: 205, select: function (item) { // 判断是否为末端节点 if (item == null) { } else if (item.ChildNodes && item.ChildNodes.length > 0) { console.log('选中的是非末端节点:', item.text); $('#trigger_property_id').lrselectSet(''); learun.alert.warning('请选择属性,而不是属性组。'); } }, }); $('#trigger_property_id').on('change', function () { var selectedValue = $(this).lrselectGet(); // 获取选中的值 console.log('trigger_property_id: ' + selectedValue); if (selectedValue == null || selectedValue == -1) { //未选前置属性 $('#dependency_type').lrselectSet(''); $('#trigger_operator').lrselectSet(''); $('#trigger_value').val(''); } }); // 初始化下拉列表并配置数据 $('#dependency_type').lrselect({ data: [ { id: '0', text: '不需要' }, { id: '1', text: 'RequireIfRequired(前置属性必填时,该属性自己也必填)' }, { id: '2', text: 'RequireIf(前置属性满足特定值后,该属性自己为必填)' }, { id: '3', text: 'RequireMutually(同一属性组内的必填互斥)' } ], placeholder: '请选择联动类型', select: function (item) { if (item == null) { $('#div_trigger_value').hide(); $('#div_trigger_operator').hide(); } else { // 将选择的值赋给变量 B selectedSpecialType = item.id; console.log('选中的值为:' + selectedSpecialType); switch (item.id) { case "2": $('#div_trigger_value').show(); $('#div_trigger_operator').show(); break; default: $('#div_trigger_value').hide(); $('#div_trigger_operator').hide(); break; } } }, }); // 初始化下拉列表并配置数据 $('#trigger_operator').lrselect({ data: [ { id: '=', text: '等于' }, { id: '>', text: '大于' }, { id: '<', text: '小于' }, { id: '!=', text: '不等于' } ], placeholder: '请选择操作符', select: function (item) { if (item) { } } }); //objectTypeP对象查询 $.ajax({ url: top.$.rootUrl + '/ZZDT_EC/ec_property/GetObjectTypeP', // 替换为实际的 API 地址 type: 'GET', // GET 方法用于查询数据 data: { objectTypeID: ObjectTypeID, propertyID: PropertyID, ProjectId: ProjectId }, async: false, dataType: "json", success: function (data) { obj = data.data; // 返回的是200那个结构体 console.log(obj); // 输出查看 $('#trigger_property_id').lrselectSet(obj.trigger_property_id); $('#dependency_type').lrselectSet(obj.dependency_type); $('#trigger_value').val(obj.trigger_value); $('#trigger_operator').lrselectSet(obj.trigger_operator); //$('#form').lrSetFormData(obj); }, error: function (xhr, status, error) { console.error("请求失败:", error); // 错误处理 } }); }, }; // 保存数据。从发起的js文件里会调用这个函数 Save = function (callBack) { var formData = $('#form').lrGetFormData(); console.log(formData.trigger_property_id); console.log(formData.dependency_type); console.log(formData.trigger_operator); //VALIDATE //if (formData.trigger_property_id != -1) { // if (formData.dependency_type == -1 || formData.dependency_type == 0) { // learun.alert.warning('请选择一个需要的联动类型。'); // return; // } //} //没选 联动类型,就会保存为 不需要 if (formData.dependency_type === "" || formData.dependency_type === "-1") { learun.alert.warning('请选择一个需要的联动类型。'); return; } else if (formData.dependency_type == 1) { if (formData.trigger_property_id === "" || formData.trigger_property_id === "-1") { learun.alert.warning('请选择一个前置属性。'); return; } } else if (formData.dependency_type == 2) { if (formData.trigger_property_id === "" || formData.trigger_property_id === "-1") { learun.alert.warning('请选择一个前置属性。'); return; } if (formData.trigger_value === "" || formData.trigger_value === "-1") { learun.alert.warning('前置属性的属性值需要填写。'); return; } if (formData.trigger_operator === "" || formData.trigger_operator === "-1") { learun.alert.warning('前置属性的操作符需要填写。'); return; } } var obj = { PropertyID: PropertyID, // 这里根据你的数据模型,提取需要的字段 IsRequired: IsRequired, IsChecked: true, ObjectTypeID: ObjectTypeID, trigger_property_id: formData.trigger_property_id, dependency_type: formData.dependency_type, trigger_value: formData.trigger_value, trigger_operator: formData.trigger_operator, PropertyType: "1" } console.log(obj); var dataList = [obj]; // 将单个对象包装成数组 console.log(dataList); $.ajax({ url: top.$.rootUrl + '/ZZDT_EC/ec_property/SaveObjectTypeP?objectTypeID=' + ObjectTypeID + "&ProjectId=" + ProjectId, // 只保存联动属性部分 method: 'POST', contentType: 'application/json', data: JSON.stringify(dataList), success: function (response) { alert('保存成功!'); learun.layerClose('PropertyDependentForm'); //再执行关闭 }, error: function (error) { console.error('保存失败', error); alert('保存失败,请重试!'); } }); }; page.init(); }