12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485 |
- $(function() {
- BemsWebApplication.Factory.Senior = {
- dataSourceOptions: {
- select: [ 'SiteId', 'SeniorId', 'SeniorItemId', 'FmsBusinessSeniorItem/Name', 'FmsBusinessSeniorItem/PeopleCount','CmUser/Name', 'StartDate', 'EndDate', 'IsUse' ],
- expand: [ 'FmsBusinessSeniorItem', 'CmUser' ]
- },
- columns: [
- { dataField: 'Number', caption: $G( 'number' ), width: '10%', alignment: 'center' },
- { dataField: 'FmsBusinessSeniorItem_Name', caption: $G( 'seniorItem' ), width: '30%', alignment: 'center', dataType: 'string' },
- { dataField: 'CmUser_Name', caption: $G( 'seniorTargetUser' ), width: '20%', alignment: 'center', dataType: 'string' },
- { dataField: 'StartDate', caption: $G( 'seniorStartDate' ), width: '15%', alignment: 'center' },
- { dataField: 'EndDate', caption: $G( 'seniorEndDate' ), width: '15%', alignment: 'center' },
- utils.datagrid.columnIsUse( '10%' )
- ],
- cellPrepared: function( cellElement, cellInfo ) {
- switch( cellInfo.column.dataField ) {
- case 'CmUser_Name':
- {
- var data = cellInfo.data;
- $(cellElement).text( '{0}({1})'.formati( data.CmUser_Name(), data.FmsBusinessSeniorItem_PeopleCount() ) );
- break;
- }
- }
- },
- };
- });
- BemsWebApplication.Senior = function( params, viewInfo ) {
- "use strict";
- var seniorItemDataSource = BemsWebApplication.db.createDataSource( 'FmsBusinessSeniorItem', true, true ),
- seniorItemsForSearch = ko.observableArray(),
- seniorItems = ko.observableArray();
- var selectedUserData = ko.observable();
- var deferredForSearch = new $.Deferred();
- var viewModel = BWA.DataGrid.createViewWithDataGrid( params, viewInfo, 'FmsBusinessSenior', $.extend( {
- promiseDataInSearchView: deferredForSearch.promise(),
- searchViewItems: [
- { id: 'SeniorItemId', ignoreValue: 0, defaultValue: 0, dataSource: seniorItemsForSearch },
- { id: 'StartDate', operator: '<=' },
- { id: 'EndDate', operator: '>=', withCheckId: 'StartDate' }
- ],
- popupWidth: 480,
- handleViewShowing: function() {
- seniorItemDataSource.load().done( function( result ) {
- seniorItems( result );
- seniorItemsForSearch( $SearchView.createArrayOfSelectBox( 'SeniorItemId' , seniorItems() ) );
- deferredForSearch.resolve();
- } );
- },
- handleViewShown: function( dataModel ) {
- dataModel.SeniorUserName = ko.observable();
- dataModel.SeniorItemName = ko.observable();
- },
- handleDataGridRowClick: function( id, dataGrid, clickRow, popupVisible ) {
- dataGrid.clearSelection();
- var data = clickRow.data;
- var dataModel = viewModel.dataModel;
- dataModel.SeniorItemName( data.FmsBusinessSeniorItem_Name() );
- dataModel.SeniorUserName( data.CmUser_Name() );
- popupVisible( true );
- }
- }, BemsWebApplication.Factory.Senior ) );
- selectedUserData.subscribe( function( value ) {
- viewModel.dataModel.SeniorUserId( value.UserId );
- viewModel.dataModel.SeniorUserName( value.Name );
- } );
- viewModel.buttonSearchSeniorUser = function( e ) {
- viewModel.userSearchPopup.show();
- }
- viewModel.userSearchPopup = $UserSearchPopup( viewModel, selectedUserData );
- viewModel.seniorItems = seniorItems;
- return viewModel;
- };
|