12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697 |
- BemsWebApplication.BusinessField = function(params, viewInfo) {
- "use strict";
- var companyDataSource = BemsWebApplication.db.createDataSource('CmCompany', true);
- var BusinessFieldInfo = ko.observableArray();
- var CmBusinessFieldDataSource = BemsWebApplication.db.createDataSource('CmBusinessField');
- var RowName;
- var companies = ko.observableArray();
- var viewModel = BWA.DataGrid.createViewWithDataGrid(params, viewInfo, 'CmBusinessField', {
- dataSourceOptions: {
- select: ['SiteId', 'BusinessFieldId', 'Name', 'IsUse'],
- },
- columns: [
- { dataField: 'BusinessFieldId', caption: '번호', width: '20%', alignment: 'center' , sortOrder: 'desc'},
- { dataField: 'Name', caption: $G('businessFieldName'), width: '60%', alignment: 'center' },
- utils.datagrid.columnIsUse('20%')
- ],
- NoSearchView: true, // 2019.07.25 kgpark 검색버튼 삭제
-
- handleViewShowing: function () {
- },
- handlePopupShowing: function () {
- CmBusinessFieldDataSource.filter([
- ["SiteId", "=", BWA.UserInfo.SiteId()]
- ]);
- CmBusinessFieldDataSource.load().done(function (result) {
- BusinessFieldInfo(result);
- });
- },
- handleDataGridRowClick: function (id, dataGrid, clickRow, popupVisible) {
- dataGrid.clearSelection();
- companyDataSource.load().done(function(result) {
- companies(result);
- });
- var data = clickRow.data;
- var dataModel = viewModel.dataModel;
- dataModel.CompanyName = $KoSet(dataModel.CompanyName, data.CmCompany_Name);
- RowName = data.Name;
- popupVisible(true);
- },
- // 이름 중복 방지
- beforeInsertingDataViewModel: function (dataModel, dbModelId) {
- var dfd = $.Deferred();
- var isDuplicated = false;
- for (var i = 0; i < BusinessFieldInfo().length; i++) {
- if (dataModel.Name() == BusinessFieldInfo()[i].Name()) {
- isDuplicated = true;
- }
- }
- if (!BWA.DataUtil.isValidInputValue(dataModel.Name()))
- return dfd.resolve(false, '저장 혹은 수정 반드시 필수 입력 정보를 모두 입력하셔야 합니다 (앞뒤공백 허용안함)');
- else {
- if (isDuplicated)
- return dfd.resolve(false, '이미 동일 이름이 존재합니다.');
- else
- return dfd.resolve(true);
- }
- },
- beforeUpdateDataViewModel: function () {
- var isDuplicated = false;
- for (var i = 0; i < BusinessFieldInfo().length; i++) {
- if (viewModel.dataModel.Name() == BusinessFieldInfo()[i].Name() && RowName() != BusinessFieldInfo()[i].Name()) {
- isDuplicated = true;
- }
- }
- if (!BWA.DataUtil.isValidInputValue(viewModel.dataModel.Name())) {
- utils.toast.show('저장 혹은 수정 반드시 필수 입력 정보를 모두 입력하셔야 합니다 (앞뒤공백 허용안함)', 'error');
- return 0;
- }
- else {
- if (isDuplicated){
- utils.toast.show('이미 동일 이름이 존재합니다.', 'error');
- return 0;
- }
- else
- return 2;
- }
- },
- popupWidth: 480,
- });
- viewModel.dataModel.CompanyName = ko.observable();
- viewModel.companies = companies;
- return viewModel;
- };
|