123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125 |
- (function ($app) {
- $app.module('ylmis').provider('$salarySlipColumn', function () {
- this.$get = function ($modal, $http, $filter) {
- var $salarySlipColumn = {
- selectedSalarySlipColumn: [],
- show: function (selectedDatas) {
- $app.forEach(this.salarySlipColumnList, function (x) {
- x.checked = false;
- });
- this.selectedSalarySlipColumn = selectedDatas;
- modal.$promise.then(modal.show);
- },
- salarySlipColumnList: [],
- salaryTypeGroupList: [],
- salaryTypeGroupRelationList: [],
- getSalarySlipColumn: function (id) {
- var salarySlipColumn = $filter('filter')(this.salarySlipColumnList, { SalaryTypeId: id });
- if (salarySlipColumn.length > 0) {
- return salarySlipColumn[0];
- }
- return null;
- }
- };
- var getSalarySlipColumnList = function () {
- $http({
- method: 'post',
- url: '../../api/administrasalary/Salaryslip/GetSlipColumnOrderList',
- data: {}
- }).then(function (result) {
- $salarySlipColumn.salarySlipColumnList = result.data.Data;
- }, function (resp) {
- });
- };
- var getSalaryTypeGroup = function () {
- $http({
- method: 'post', url: '../../api/systemsetting/dictionary/GetDicList', data: { code: 'SalaryTypeGroup' }
- }).then(function (result) {
- $salarySlipColumn.salaryTypeGroupList = result.data.Data;
- });
- }
- var getSalaryTypeGroupRelation = function () {
- $http({
- method: 'post',
- url: '../../api/administrasalary/Salaryslip/GetSalaryTypeGroupRelationList',
- data: {}
- }).then(function (result) {
- $salarySlipColumn.salaryTypeGroupRelationList = result.data.Data;
- }, function (resp) {
- });
- };
- getSalarySlipColumnList();
- getSalaryTypeGroup();
- getSalaryTypeGroupRelation();
- var ctrl = function ($scope) {
- $scope.title = '选择薪资项';
- $scope.salarySlipColumnList = $salarySlipColumn.salarySlipColumnList;
- $scope.salaryTypeGroupList = $salarySlipColumn.salaryTypeGroupList;
- $scope.salaryTypeGroupRelationList = $salarySlipColumn.salaryTypeGroupRelationList;
- $scope.selectAll = function (list, $event) {
- angular.forEach(list, function (val) {
- val.checked = $event.target.checked;
- });
- }
- $scope.selectSalaryType = function (dt, $event) {
- var relations = $filter('filter')($scope.salaryTypeGroupRelationList, function (x) { return x.SalaryTypeGroupId == dt.Value });
- var slipColumns = $filter('filter')($scope.salarySlipColumnList, function (x) {
- return $filter('filter')(relations, function (w) { return x.SalaryTypeId == w.SalaryTypeId; }).length > 0
- });
- angular.forEach(slipColumns, function (val) {
- val.checked = $event.target.checked;
- });
- }
- $app.forEach($salarySlipColumn.selectedSalarySlipColumn, function (val) {
- var salaryColumns = $filter('filter')($scope.salarySlipColumnList, { SalaryTypeId: val.SalaryTypeId });
- if (salaryColumns.length > 0) {
- salaryColumns[0].checked = true;
- }
- });
- $scope.salaryTypeSelected = function () {
- $salarySlipColumn.selectedSalarySlipColumn.length = 0;
- var dlist = $filter('filter')($scope.salarySlipColumnList, { checked: true });
- $app.forEach(dlist, function (val) {
- $salarySlipColumn.selectedSalarySlipColumn.push(val);
- });
- $scope.$hide();
- }
- };
- ctrl.$inject = ['$scope'];
- var modal = $modal({
- resolve: {
- load: ['$ocLazyLoad', function ($ocLazyLoad) {
- $ocLazyLoad.load(['home/employee_find.css?' + window.sysVersion]);
- }]
- },
- controller: ctrl,
- templateUrl: 'home/m_salaryslipcolumn.html',
- show: false,
- animation: 'am-fade-and-slide-top'
- });
- return $salarySlipColumn;
- }
- });
- })(angular);
|