This commit is contained in:
resicovenba 2017-12-26 19:45:37 +05:30
commit 99e242524d
15 changed files with 1184 additions and 152 deletions

View File

@ -0,0 +1,134 @@
<?php
/**
* Created by PhpStorm.
* User: karthi
* Date: 12/26/17
* Time: 4:06 PM
*/
require_once APPPATH . '/libraries/REST_Controller.php';
/**
* This is an example of a few basic user interaction methods you could use
* all done with a hardcoded array
*
* @package CodeIgniter
* @subpackage Rest Server
* @category Controller
* @author
* @license MIT
* @link
*/
class DayBookMaster_Controller extends REST_Controller {
function __construct()
{
// Construct the parent class
parent::__construct();
// Configure limits on our controller methods
// Ensure you have created the 'limits' table and enabled 'limits' within application/config/rest.php
$this->methods['addDaybookMasterDetails_post']['limit'] = 100; // 50 requests per hour per user/key
$this->methods['getDayBookMasterDetails_post']['limit'] = 500; // 50 requests per hour per user/key
$this->methods['updateDayBookMasterDetails_post']['limit'] = 500;
// load the model
$this->load->model('DaybookMaster_model', 'daybookmaster_model');
}
/*
* This method used to get day book master details
* created by kms
* */
public function addDaybookMasterDetails_post()
{
$now = new DateTime();
$now->setTimezone(new DateTimezone('Asia/Kolkata'));
$details['TypeID'] = $this->post('type');
$details['TypeName'] = $this->post('name');
$details['IsActive'] = $this->post('status');
$details['CreatedBy'] = $this->post('createdBy');
$details['CreatedOn'] = $now->format('Y-m-d H:i:s');
$addDetails = $this->daybookmaster_model->addDetails($details);// Check if the users data store contains users (in case the database result returns NULL)
if ($addDetails)
{
$addDetails['status'] = REST_Controller::HTTP_OK;
// Set the response and exit
$this->response($addDetails, REST_Controller::HTTP_OK); // OK (200) being the HTTP response code
}
else
{
// Set the response and exit
$this->response([
'message' => 'Something went wrong.please try again!',
'status' => REST_Controller::HTTP_NOT_FOUND
], REST_Controller::HTTP_NOT_FOUND); // NOT_FOUND (404) being the HTTP response code
}
}
/*
* This method used to get day book master details
* created by kms
* */
public function getDayBookMasterDetails_post()
{
$requestedBy = $this->post('requestedBy');
$getdetails = $this->daybookmaster_model->getDayBookDetails($requestedBy);
if ($getdetails)
{
$getdetails['status'] = REST_Controller::HTTP_OK;
// Set the response and exit
$this->response($getdetails, REST_Controller::HTTP_OK); // OK (200) being the HTTP response code
}
else
{
// Set the response and exit
$this->response([
'message' => 'No records found!',
'status' => REST_Controller::HTTP_NOT_FOUND
], REST_Controller::HTTP_NOT_FOUND); // NOT_FOUND (404) being the HTTP response code
}
}
/*
* update the day book details
* created by kms
* */
public function updateDayBookMasterDetails_post()
{
$now = new DateTime();
$now->setTimezone(new DateTimezone('Asia/Kolkata'));
$details['ID'] = $this->post('ID');
$details['TypeName'] = $this->post('TypeName');
$details['TypeID'] = $this->post('TypeID');
$details['IsActive'] = $this->post('status');
$details['UpdatedBy'] = $this->post('updatedBy');
$details['UpdatedOn'] = $now->format("Y-m-d H:i:s");
$updateDetails = $this->daybookmaster_model->updateDayBook($details);// Check if the users data store contains users (in case the database result returns NULL)
if ($updateDetails)
{
$updateDetails['status'] = REST_Controller::HTTP_OK;
// Set the response and exit
$this->response($updateDetails, REST_Controller::HTTP_OK); // OK (200) being the HTTP response code
}
else
{
// Set the response and exit
$this->response([
'message' => 'Something went wrong.please try again!',
'status' => REST_Controller::HTTP_NOT_FOUND
], REST_Controller::HTTP_NOT_FOUND); // NOT_FOUND (404) being the HTTP response code
}
}
}

View File

@ -419,10 +419,11 @@ class Calltracking_model extends CI_Model {
public function getStudentTrackedID($stuMobile=null)
{
$this->db->distinct();
$this->db->select('LT.TrackingID,LT.LeadID,AV.ActivityID,AV.ActivityName');
$this->db->select('LT.TrackingID,LT.LeadID,AV.ActivityID,AV.ActivityName,PLD.ListName');
$this->db->from(LEAD_DETAILS.' as LD');
$this->db->join(LEAD_TRACKING.' as LT', 'LT.LeadID = LD.LeadID');
$this->db->join(ACTIVITY.' as AV', 'AV.ActivityID = LT.ActivityStatus');
$this->db->join(PICK_LIST_DETAILS.' as PLD', 'PLD.ListCode = LT.StatusCode');
$this->db->where('LD.MobileNumber',$stuMobile);
$this->db->order_by('LT.TrackingID','ASC');
$studeTrackID = $this->db->get();

View File

@ -0,0 +1,118 @@
<?php
/**
* Created by PhpStorm.
* User: karthi
* Date: 12/26/17
* Time: 4:10 PM
*/
defined('BASEPATH') OR exit('No direct script access allowed');
class DaybookMaster_model extends CI_Model {
/*
* add day book details
* created by kms
* */
public function addDetails($arrayDetails=null)
{
$this->db->select('TypeName');
$this->db->where('TypeName', $arrayDetails['TypeName']);
$this->db->where('TypeID', $arrayDetails['TypeID']);
if($this->db->get(INCOMEOUTCOMEMASTER)->first_row()){
$result['addStatus'] = false;
$result['message'] = "Name is already exist!";
} else {
$this->db->insert(INCOMEOUTCOMEMASTER, $arrayDetails);
if($this->db->affected_rows() == '1'){
$result['addStatus'] = true;
$result['message'] = "Successfully day book details is added";
}
else {
$result['addStatus'] = false;
$result['message'] = "Something went wrong.please try again";
}
}
return $result;
}
/*
* get day book details
* created by kms
* */
public function getDayBookDetails($requestedBy=null)
{
$this->db->select('IOM.ID,IOM.TypeName,IOM.TypeID,IOM.IsActive,PLD.ListName');
$this->db->from(INCOMEOUTCOMEMASTER .' as IOM');
$this->db->join(PICK_LIST_DETAILS.' as PLD', 'PLD.ListCode = IOM.TypeID');
$this->db->order_by('IOM.ID','DESC');
$details = $this->db->get();
if($details->result()){
$result['daybookStatus'] = true;
$result['details'] = $details->result();
}
else {
$result['daybookStatus'] = false;
$result['message'] = "No records found!";
}
$result['getDayBooktype'] = $this->getDayBookType('10');
return $result;
}
/*
* get day book type
* created by kms
* */
public function getDayBookType($typeID=null){
$this->db->select('ListCode,ListName');
$this->db->where('ListGroup', $typeID);
$typeDetails=$this->db->get(PICK_LIST_DETAILS);
return $typeDetails->result();
}
/*
* update day book details
* created by kms
* */
public function updateDayBook($arrayDetails=null)
{
$this->db->select('TypeName');
$this->db->where('TypeName', $arrayDetails['TypeName']);
$this->db->where('TypeID', $arrayDetails['TypeID']);
$this->db->where_not_in('ID', $arrayDetails['ID']);
if($this->db->get(INCOMEOUTCOMEMASTER)->first_row()){
$result['updateStatus'] = false;
$result['message'] = "Name is already exist!";
} else {
$this->db->where('ID',$arrayDetails['ID']);
$this->db->update(INCOMEOUTCOMEMASTER, $arrayDetails);
if($this->db->affected_rows() == '1'){
$result['updateStatus'] = true;
$result['message'] = "Successfully day book details is updated";
}
else {
$result['updateStatus'] = false;
$result['message'] = "Something went wrong.please try again";
}
}
return $result;
}
}

View File

@ -49,6 +49,153 @@ class Studentview_model extends CI_Model
$this->db->join( BATCH . ' as BA', 'BA.BatchCode = SCU.BatchCode');
$this->db->where('SCU.StudentID', $studentId);
$courseDetails = $this->db->get();
return $courseDetails->result();
if($courseDetails->result()){
$studentCourseStatus['status'] = true;
foreach ($courseDetails->result() as $row){
$fetchData['CourseID']=$row->CourseID;
$fetchData['CourseName']=$row->CourseName;
$fetchData['UniversityID']=$row->UniversityID;
$fetchData['UniversityName']=$row->UniversityName;
$fetchData['BatchName']=$row->BatchName;
// get student fees details
$fetchData['feesDetails']=$this->getStudentFeesDetails($studentId,$row->CourseID);
// get student boollet details
$fetchData['bookletDetails']=$this->getStudentBookletDetails($studentId,$row->CourseID);
// get certificate details
$fetchData['certificateDetails']=$this->getStudentCertificateDetails($studentId,$row->CourseID);
// get student application details
$fetchData['applicationDetails']=$this->getStudentApplicationDetails($studentId,$row->CourseID);
$CourseArray[]=$fetchData;
}
$studentCourseStatus['courseStatus'] = $CourseArray;
}
else{
$studentCourseStatus['status'] = false;
}
return $studentCourseStatus;
}
/*
* get student fees details
* created by kms
* */
public function getStudentFeesDetails($studentID=null,$courseID=null){
$this->db->distinct();
$this->db->select('SFS.FeesID,SFS.FeesType,SFS.SessionName,SFS.RollNo,ifnull(SFS.CourseFees,0) as CourseFees,ifnull(SFS.STFOrWR,0) as STFOrWR,ifnull(SFS.Waiver,0) as Waiver,ifnull(SFS.Others,0) as Others,CF.Sem_Year');
$this->db->from(STUDENTS_FEES_STATUS.' as SFS');
$this->db->join(STUDENTS_FEES_PAID.' as SFP','SFP.FeesId = SFS.FeesID','left');
$this->db->join(COURSE_FEES.' as CF', 'CF.ID = SFS.FeesType');
$this->db->where('SFS.CourseID', $courseID);
$this->db->where('SFS.StudentID', $studentID);
$this->db->order_by('SFS.FeesID', 'ASC');
$getFeeDetails = $this->db->get();
if($getFeeDetails->result()){
foreach ($getFeeDetails->result() as $feeRow){
$storePaidDetails['FeesID'] = $feeRow->FeesID;
$storePaidDetails['FeesName'] = $feeRow->Sem_Year;
$storePaidDetails['CourseFees'] = $feeRow->CourseFees;
$storePaidDetails['SessionName'] = $feeRow->SessionName;
$storePaidDetails['RollNo'] = $feeRow->RollNo;
$storePaidDetails['STFOrWR'] = $feeRow->STFOrWR;
$storePaidDetails['Waiver'] = $feeRow->Waiver;
$storePaidDetails['Others'] = $feeRow->Others;
$storePaidDetails['PayableAmount'] = $feeRow->CourseFees+$feeRow->STFOrWR+$feeRow->Others-$feeRow->Waiver;
$this->db->select('ifnull(SUM((BillAmount)),0) as PaidBillAmount');
$this->db->where('FeesId',$feeRow->FeesID);
$paidBillAmount = $this->db->get(STUDENTS_FEES_PAID)->result();
$storePaidDetails['PaidBillAmount']=$paidBillAmount[0]->PaidBillAmount;
if($paidBillAmount[0]->PaidBillAmount > $storePaidDetails['PayableAmount']){
$storePaidDetails['BalanceAmount']=0;
}
else{
$storePaidDetails['BalanceAmount']=$storePaidDetails['PayableAmount'] - $paidBillAmount[0]->PaidBillAmount;
}
// for get paid bill details
$this->db->select('ifnull(SUM((BillAmount)),0) as BillAmount,BillNO,BillDate,ModeOfPayment');
$this->db->where('FeesId',$feeRow->FeesID);
$this->db->order_by('ID',"ASC");
$this->db->group_by('BillNO');
$storePaidDetails['paidDetails']=$this->db->get(STUDENTS_FEES_PAID)->result();
$mergeResult[]=$storePaidDetails;
}
return $mergeResult;
}
else {
return false;
}
}
/*
* get student bool let details
* created by kms
* */
public function getStudentBookletDetails($studentID=null,$courseID=null){
$this->db->select('AB.AnsDate,AB.Comments,CF.Sem_Year,PLD.ListName');
$this->db->from(ANSWER_BOOKLET.' as AB');
$this->db->join(COURSE_FEES.' as CF','CF.ID = AB.CourseID');
$this->db->join(COURSE.' as CU', 'CU.CourseID = CF.CourseID');
$this->db->join(PICK_LIST_DETAILS.' as PLD', 'PLD.ListCode = AB.ListCode');
$this->db->where('CU.CourseID', $courseID);
$this->db->where('AB.StudentID', $studentID);
$this->db->order_by('AB.ID', 'DESC');
$getBoolDetails = $this->db->get();
if ($getBoolDetails->result()){
return $getBoolDetails->result();
}
else{
return false;
}
}
/*
* get student certificate details
* created by kms
* */
public function getStudentCertificateDetails($studentID=null,$courseID=null){
$this->db->select('CS.CertificationNo,CS.CDate,CS.Comments,CM.CertificateName,CF.Sem_Year,PLD.ListName');
$this->db->from(CERTIFICATION_STATUS.' as CS');
$this->db->join(CERTIFICATION_MASTER.' as CM','CM.CertificationID = CS.CertificationType');
$this->db->join(COURSE_FEES.' as CF','CF.ID = CS.CourseID');
$this->db->join(COURSE.' as CU', 'CU.CourseID = CF.CourseID');
$this->db->join(PICK_LIST_DETAILS.' as PLD', 'PLD.ListCode = CS.ListCode');
$this->db->where('CU.CourseID', $courseID);
$this->db->where('CS.StudentID', $studentID);
$this->db->order_by('CS.ID', 'DESC');
$getCertDetails = $this->db->get();
if ($getCertDetails->result()){
return $getCertDetails->result();
}
else{
return false;
}
}
/*
* get student application details
* created by kms*/
public function getStudentApplicationDetails($studentID=null,$courseID=null){
$this->db->select('AS.AppDate,AS.Comments,CF.Sem_Year,PLD.ListName');
$this->db->from(APPLICATION_STATUS.' as AS');
$this->db->join(COURSE_FEES.' as CF','CF.ID = AS.CourseID');
$this->db->join(COURSE.' as CU', 'CU.CourseID = CF.CourseID');
$this->db->join(PICK_LIST_DETAILS.' as PLD', 'PLD.ListCode = AS.ListCode');
$this->db->where('CU.CourseID', $courseID);
$this->db->where('AS.StudentID', $studentID);
$this->db->order_by('AS.ID', 'DESC');
$getAppDetails = $this->db->get();
if ($getAppDetails->result()){
return $getAppDetails->result();
}
else{
return false;
}
}
}

View File

@ -68,7 +68,8 @@
"ANNOUNCEMENT": "ANNOUNCEMENT DETAILS",
"STATUS": "STATUS DETAILS",
"STUDENTSTATUS": "DEFAULT STUDENT ACTIVITY",
"CERTIFICATETYPE": "CERTIFICATE TYPE"
"CERTIFICATETYPE": "CERTIFICATE TYPE",
"DAYBOOKMASTER":"DAY BOOK DETAILS"
},
"student": {
"MAIN": "MANAGE STUDENTS",

View File

@ -155,6 +155,10 @@ app.constant('JS_REQUIRES', {
'studentStatusUpdateCtrl':'assets/js/controllers/studentStatusUpdateCtrl.js',
'studentViewCtrl':'assets/js/controllers/studentViewCtrl.js',
// day book master
'dayBookMasterCtrl':'assets/js/controllers/dayBookMasterCtrl.js',
//*** Filters
'htmlToPlaintext': 'assets/js/filters/htmlToPlaintext.js'
},

View File

@ -164,6 +164,14 @@ app.config(['$stateProvider', '$urlRouterProvider', '$controllerProvider', '$com
title: 'Status',
ncyBreadcrumb: {
label: 'Status'
},
}).state('app.master.dayBookMaster', {
url: '/day book master',
templateUrl: "assets/views/daybook/dayBookMaster.html",
resolve: loadSequence('dayBookMasterCtrl','ngTable', 'ladda', 'angular-ladda'),
title: 'Day Book Master',
ncyBreadcrumb: {
label: 'Day Book Master'
},
}).state('app.master.certificateType', {
url: '/certificates',

View File

@ -456,9 +456,11 @@ app.controller('callTrackingCtrl2', ["$scope","$rootScope","toaster", "$filter",
$rootScope.loadFollowupDetails($scope.nextTrack.TrackingID);
}
/* else{
$rootScope.loadFollowupDetails($scope.ListOfTracks[0].TrackingID);
}*/
else{
swal("EMPTY!", "This is an last tracking details.so please go previous", "info");
}
}
@ -618,10 +620,11 @@ app.controller('callTrackingCtrl2', ["$scope","$rootScope","toaster", "$filter",
$rootScope.loadFollowupDetails($scope.prevTrack.TrackingID);
}
/* else{
console.log($scope.ListOfTracksForPre.length);
$rootScope.loadFollowupDetails($scope.ListOfTracksForPre[$scope.ListOfTracksForPre.length-1].TrackingID);
}*/
else{
swal("EMPTY!", "This is an last tracking details.so please go next", "info");
}
}

View File

@ -0,0 +1,208 @@
'use strict';
/**
* controllers for ng-table
* Simple table with sorting and filtering on AngularJS
*/
// var helloApp = angular.module("helloApp", []);
app.controller("dayBookMasterCtrl", ["$scope", "toaster", "$filter", "API_POINTS", "$localStorage", "$http", "$state", function ($scope, toaster, $filter, apiPoint, $localStorage, $http, $state) {
$scope.myModel = {
"name": "",
"type": "",
"switchsetting": true
};
/*
* edit status details
* created by Surendiran
* */
$scope.editId = -1;
$scope.setEditId = function (pid) {
$scope.editId = pid;
$scope.viewId = -1;
};
/*
* cancel edit div
* created by Surendiran
* */
$scope.cancel = function () {
$scope.init();
$scope.editId = -1;
};
// sorting function for table params
$scope.sort = function(keyname){
$scope.sortKey = keyname; //set the sortKey to the param passed
$scope.reverse = !$scope.reverse; //if true make it false and vice versa
}
$scope.dayForm = {
submit: function (form, myModel,loading) {
var firstError = null;
if (form.$invalid) {
var field = null, firstError = null;
for (field in form) {
if (field[0] != '$') {
if (firstError === null && !form[field].$valid) {
firstError = form[field].$name;
}
if (form[field].$pristine) {
form[field].$dirty = true;
}
}
}
angular.element('.ng-invalid[name=' + firstError + ']').focus();
// swal("The form cannot be submitted because it contains validation errors!", "Errors are marked with a red, dashed border!", "error");
} else {
$scope.ldloading1 = {};
$scope.ldloading1[loading.replace('-', '_')] = true;
var addstatus = {
method: 'POST',
url: apiPoint.url + 'addDaybookMasterDetails/',
headers: {
'Content-Type': 'application/json'
},
data: {
name: myModel.name,
type: myModel.type,
status: myModel.switchsetting,
createdBy: JSON.parse(localStorage.getItem('localObj')).localUserID
}
};
$http(addstatus).then(function (response) {
if (response.data.status == 200 && response.data.addStatus) {
$scope.ldloading1[loading.replace('-', '_')] = false;
$scope.init();
swal("Success!", response.data.message, "success");
$state.go($state.current, {}, { reload: true });
} else {
$scope.ldloading1[loading.replace('-', '_')] = false;
swal("Failed!", response.data.message, "error");
}
});
}
},
reset: function (form) {
$scope.myModel = angular.copy($scope.master);
form.$setPristine(true);
$scope.myModel = {
"name": "",
"switchsetting": true,
"type": ""
};
}
};
/*
*get day book details
* */
$scope.loader='';
$scope.emptyData='';
$scope.init = function () {
var getdetails = {
method: 'POST',
url: apiPoint.url + 'getDayBookMasterDetails/',
headers: {
'Content-Type': 'application/json'
},
data: {
requestedBy: JSON.parse(localStorage.getItem('localObj')).localUserID
}
};
$http(getdetails).then(function (response) {
$scope.dayBookType = response.data.getDayBooktype;
if (response.data.status==200 && response.data.daybookStatus) {
$scope.emptyData=true;
$scope.loader=true;
$scope.dayBookInfo = response.data.details;
} else {
$scope.emptyData=false;
$scope.loader=true;
$scope.dayBookInfo='';
}
});
};
/*
* update the day book details
* */
$scope.updateDaybook = function (myModel, form, loading) {
var firstError = null;
if (form.$invalid) {
var field = null, firstError = null;
for (field in form) {
if (field[0] != '$') {
if (firstError === null && !form[field].$valid) {
firstError = form[field].$stop_name;
}
if (form[field].$pristine) {
form[field].$dirty = true;
}
}
}
angular.element('.ng-invalid[name=' + firstError + ']').focus();
} else {
$scope.ldloading = {};
$scope.ldloading[loading.replace('-', '_')] = true;
var update = {
method: 'POST',
url: apiPoint.url + 'updateDayBookMasterDetails/',
headers: {
'Content-Type': 'application/json'
},
data: {
ID: myModel.ID,
TypeID: myModel.TypeID,
TypeName: myModel.TypeName,
status: myModel.IsActive,
updatedBy: JSON.parse(localStorage.getItem('localObj')).localUserID
}
};
$http(update).then(function (response) {
if (response.data.status==200 && response.data.updateStatus) {
$scope.ldloading[loading.replace('-', '_')] = false;
swal("Success!", response.data.message, "success");
$scope.editId = -1;
$scope.init();
} else {
$scope.ldloading[loading.replace('-', '_')] = false;
swal("Failed!", response.data.message, "error");
}
});
}
};
}]);

View File

@ -41,3 +41,58 @@ app.controller('studentViewCtrl', ["$scope","$rootScope", "toaster", "$filter",
}]);
/*modal controller
* */
app.controller('FeesModalDemoCtrl', ["$scope", "$modal", "$log", function ($scope, $modal, $log) {
//Tooltip for print button
$scope.dynamicTooltip = 'Click to View Bill Details';
// $scope.items = ['item1', 'item2', 'item3'];
$scope.FeesName="" ;
$scope.open = function (values) {
$scope.FeesName = values;
var modalInstance = $modal.open({
templateUrl: 'myModalContent.html',
controller: 'ModalInstanceCtrl',
// size: size,
resolve: {
items: function () {
return $scope.FeesName;
}
}
});
modalInstance.result.then(function (selectedItem) {
$scope.selected = selectedItem;
}, function () {
$log.info('Modal dismissed at: ' + new Date());
});
};
}]);
// Please note that $modalInstance represents a modal window (instance) dependency.
// It is not the same as the $modal service used above.
app.controller('ModalInstanceCtrl', ["$scope", "$modalInstance", "items","WordsService", function ($scope, $modalInstance, items,WordsService) {
$scope.items = items;
$scope.selected = {
item: $scope.items[0]
};
$scope.ok = function () {
$modalInstance.close($scope.selected.item);
};
$scope.cancel = function () {
$modalInstance.dismiss('cancel');
};
}]);

View File

@ -169,12 +169,12 @@
<div class="panel-body panel-scroll height-200" perfect-scrollbar wheel-propagation="false" suppress-scroll-x="true">
<ul class="timeline-xs">
<li ng-class-odd="'timeline-item success'" ng-class-even="'timeline-item info'" ng-repeat="trackValues in followupDetails.collectTrackedID">
<div class="margin-left-15">
<!--<div class="margin-left-15">
<div class="text-muted text-small">
{{trackValues.ActivityName}}
</div>
<p>
<a class="text-blue" ng-click="loadFollowupDetails(trackValues.TrackingID);">
<a tooltip="Click to view details" class="text-blue" ng-click="loadFollowupDetails(trackValues.TrackingID);">
Tracking ID {{trackValues.TrackingID}}
</a>
@ -183,6 +183,26 @@
</div>-->
<div class="clearfix padding-5 space5">
<div class="col-xs-4 text-center no-padding">
<a class="text-dark">
<i class="fa fa-bullhorn text-red"></i> {{trackValues.ActivityName}}
</a>
</div>
<div class="col-xs-8 text-center no-padding">
<a class="text-dark">
<i class="fa fa-frown-o text-green"></i> {{trackValues.ListName}}
</a>
</div>
</div>
<div class="clearfix padding-5 space5">
<div class="col-xs-6 text-center no-padding">
<a tooltip="Click to view details" class="text-blue" ng-click="loadFollowupDetails(trackValues.TrackingID);"><i class="fa fa-pencil text-blue"></i> Tracking ID {{trackValues.TrackingID}}</a>
</div>
</div>
</li>
</ul>

View File

@ -0,0 +1,145 @@
<style>
b.fa {
display: inline-block;
border-radius: 60px;
box-shadow: 0px 0px 2px #007AFF;
padding: 0.5em 0.6em;
}
</style>
<section id="page-title">
<div class="row">
<div class="col-sm-8">
<h1 class="mainTitle" translate="Day Book Master Details"></h1>
<!--
<span class="mainDescription">Over a dozen reusable components built to provide popovers, media objects, navigation, tooltips and much more. </span>
-->
</div>
<div ncy-breadcrumb></div>
</div>
</section>
<div class="container-fluid container-fullw bg-white">
<div ng-controller="dayBookMasterCtrl">
<form name="Form" id="form" novalidate ng-submit="dayForm.submit(Form, myModel, 'zoom-in')" method="post">
<fieldset>
<legend>Add Day Book Details</legend>
<div class="row">
<!--<div class="col-md-6">
<div class="padding-30">
<h2 class="StepTitle"><i
class="ti-face-smile fa-2x text-primary block margin-bottom-10"></i>
Enter Bus Stop Details</h2>
</div>
</div>-->
<div class="col-md-12">
<div class="row">
<div class="col-md-3 form-group"
ng-class="{'has-error':Form.type.$dirty && Form.type.$invalid, 'has-success':Form.type.$valid}">
<label >
Type <span
class="symbol required"></span>
</label>
<select class="form-control" name="type" id="type" tabindex="1"
ng-model="myModel.type"
ng-options="source.ListCode as source.ListName for source in dayBookType"
required>
<option value=""> Select Type</option>
</select>
<span class="error text-small block"
ng-if="Form.type.$dirty && Form.type.$error.required && myModel.type.length==0">Type is required</span>
<!--<span class="success text-small block"-->
<!--ng-if="Form.class.$valid && myModel.class.length!=0">Thank You</span>-->
</div>
<div class="col-md-4 form-group"
ng-class="{'has-error':Form.Name.$dirty && Form.Name.$invalid, 'has-success':Form.Name.$valid}">
<label>
Name <span class="symbol required"></span>
</label>
<input type="text" placeholder="Enter Name"
tabindex="2" class="form-control" name="Name"
ng-model="myModel.name" ng-pattern="/^[a-zA-Z0-9.\s]*$/" capitalize required/>
<span class="error text-small block"
ng-if="Form.Name.$dirty && Form.Name.$error.required">Name is required</span>
<span class="error text-small block"
ng-if="Form.Name.$dirty && Form.Name.$error.pattern">Invalid name </span>
<!--<span class="success text-small"-->
<!--ng-if="Form.stopname.$valid">Thank You!</span>-->
</div>
<div class="col-md-2" style="padding-top: 2.3%;">
<div class="pull-right">
<button type="submit" ladda="ldloading1.zoom_in" tabindex="3" class="btn btn-wide btn-success" data-style="zoom-in">
Submit
</button>
</div>
</div>
</div>
</div>
</div>
</fieldset>
</form>
<div class="row">
<div class="col-md-3">
<script>
$(function () {
$("#search").focus();
});
</script>
<input class="form-control" type="text" ng-model="search"
id="search" autofocus tabindex="3"
placeholder="Search"/><br><br>
</div>
</div>
<table class="table table-hover" ng-init="init();">
<thead>
<tr>
<th ng-click="sort('TypeName')">Name
<span class="glyphicon sort-icon" ng-show="sortKey=='TypeName'" ng-class="{'glyphicon-chevron-up':reverse,'glyphicon-chevron-down':!reverse}"> </span>
</th>
<th ng-click="sort('ListName')">Type
<span class="glyphicon sort-icon" ng-show="sortKey=='ListName'" ng-class="{'glyphicon-chevron-up':reverse,'glyphicon-chevron-down':!reverse}"> </span>
</th>
<th>Status</th>
<th></th>
</tr>
</thead>
<tbody dir-paginate="p in dayBookInfo|orderBy:sortKey:reverse|filter:search:strict|itemsPerPage:10">
<tr>
<td>{{p.TypeName}}</td>
<td>{{p.ListName}}</td>
<td ng-if="p.IsActive==true">Active</td>
<td ng-if="p.IsActive==false">De-Active</td>
<td>
<a class="text-azure" id="editRowBtn{{p.ID}}" ng-click="setEditId(p.ID);"><b class="fa fa-hover fa-pencil " aria-hidden="true"></b>
</a>
</td>
</tr>
<tr ng-show="editId === p.ID" ng-if="editId === p.ID">
<td colspan="12" ng-include src="'assets/views/daybook/editDayBookMaster.html'"></td>
</tr>
</tbody>
</table>
<dir-pagination-controls max-size="10" direction-links="true" boundary-links="true">
</dir-pagination-controls>
</div>
</div>

View File

@ -0,0 +1,78 @@
<form name="Form" id="form" novalidate>
<div class="row">
<div class="col-md-12">
<div class="col-md-12">
<fieldset>
<legend>
Update Day Book Details
</legend>
<div class="row">
<div class="col-md-4 form-group"
ng-class="{'has-error':Form.edittype.$dirty && Form.edittype.$invalid, 'has-success':Form.edittype.$valid}">
<label >
Type <span
class="symbol required"></span>
</label>
<select class="form-control" name="edittype" id="edittype" tabindex="4"
ng-model="p.TypeID"
ng-options="source.ListCode as source.ListName for source in dayBookType" disabled required>
<option value=""> Select Type</option>
</select>
<span class="error text-small block"
ng-if="Form.edittype.$dirty && Form.edittype.$error.required && p.type.length==0">Type is required</span>
<!--<span class="success text-small block"-->
<!--ng-if="Form.class.$valid && myModel.class.length!=0">Thank You</span>-->
</div>
<div class="col-md-4 form-group" ng-class="{'has-error':Form.editName.$dirty && Form.editName.$invalid, 'has-success':Form.editName.$valid}">
<label>
Name <span class="symbol required"></span>
</label>
<input type="text" placeholder="Enter Name" tabindex="5" class="form-control" name="editName" ng-model="p.TypeName" capitalize
required/>
<span class="error text-small block" ng-if="Form.editName.$dirty && Form.editName.$error.required">Name is required</span>
<span class="error text-small block" ng-if="Form.editName.$dirty && Form.editName.$error.pattern">Invalid name </span>
</div>
<div class="col-md-4">
<label>
Active/De-Active
</label>
<div ng-if="p.IsActive==true">
<switch ng-model="p.IsActive" ng-init="p.IsActive = true" class="green"></switch>
</div>
<div ng-if="p.IsActive==false">
<switch ng-model="p.IsActive" ng-init="p.IsActive = false" class="green"></switch>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-md-12">
<div class="pull-right">
<button type="submit" ladda="ldloading.zoom_in" tabindex="6" class="btn btn-wide btn-success" data-style="zoom-in" ng-click="updateDaybook(p,Form,'zoom-in')">
Save
</button>
<input type="button" class="btn btn-warning btn-wide" tabindex="7" value="Cancel" ng-click="cancel();">
</input>
</div>
</div>
</div>
</fieldset>
</div>
</div>
</form>
<!-- class="editRowTd" -->

View File

@ -74,6 +74,11 @@
<span class="title" translate="sidebar.nav.master.ANNOUNCEMENT"> Announcement DETAILS </span>
</a>
</li>
<li ui-sref-active="active" >
<a ui-sref="app.master.dayBookMaster">
<span class="title" translate="sidebar.nav.master.DAYBOOKMASTER"> DAY BOOK DETAILS </span>
</a>
</li>
@ -381,7 +386,7 @@
</ul>
<ul class="main-navigation-menu" ng-if="getLoginDash == 'student'">
<li ui-sref-active="active">
<a ui-sref="app.dashboard">
<a ui-sref="app.studentView">
<div class="item-content">
<div class="item-media">
<i class="ti-id-badge"></i>

View File

@ -1,4 +1,35 @@
<style>
.modal-backdrop {
background-color: #000;
bottom: 0;
position: fixed;
}
.modal-backdrop.in {
opacity: 0.4;
}
.modal-backdrop {
z-index: 9998 !important;
}
.modal {
z-index: 9999 !important;
}
.modal-content {
background: #ffffff;
box-shadow: none;
width: 80%;
margin-left: 30%;
margin-top: 10%;
}
.modal-footer, .modal-header {
border-color: #b5b5b5;
}
.fa {
color:#0095C8;
}
a {
color: #5b5b60;
}
@ -139,161 +170,234 @@
</div>
<!-- <pre>{{courseDetails | json}}</pre>-->
<div class="row" ng-repeat="course in courseDetails">
<div class="row" ng-repeat="course in courseDetails.courseStatus">
<div class="col-md-12">
<div class="panel panel-white" id="panel2">
<div class="panel-heading">
<h4 class="panel-title text-orange">{{course.UniversityName}} - {{course.CourseName}}</h4>
<div class="panel-heading ">
<h4 class="panel-title text-orange">{{course.UniversityName}} / {{course.CourseName}}</h4>
<ct-paneltool class="panel-tools" tool-collapse="tool-collapse"></ct-paneltool>
</div>
<div collapse="panel2" ng-init="panel2=true" class="panel-wrapper">
<div class="panel-body no-padding">
<!--<div class="padding-10">
<img src="assets/images/avatar-1.jpg" class="img-circle pull-left" alt="" width="50" height="50">
<h4 class="no-margin inline-block padding-5">Peter Clark <span class="block text-small text-left">UI Designer</span></h4>
<div class="pull-right padding-15">
<span class="text-small text-bold text-green"><i class="fa fa-dot-circle-o"></i> on-line</span>
</div>
</div>-->
<!--<div class="clearfix padding-5 space5">
<div class="col-xs-4 text-center no-padding">
<div class="border-right border-dark">
<a class="text-dark" href="#">
<i class="fa fa-heart-o text-red"></i> 250
</a>
</div>
</div>
<div class="col-xs-4 text-center no-padding">
<div class="border-right border-dark">
<a class="text-dark" href="#">
<i class="fa fa-bookmark-o text-green"></i> 20
</a>
</div>
</div>
<div class="col-xs-4 text-center no-padding">
<a class="text-dark" href="#"><i class="fa fa-comment-o text-azure"></i> 544</a>
</div>
</div>-->
<div class="tabbable no-padding no-margin ng-isolate-scope">
<ul class="nav nav-tabs" ng-class="{'nav-stacked': vertical, 'nav-justified': justified}" ng-transclude="">
<li ng-class="[{active: active, disabled: disabled}, classes]" class="padding-top-5 padding-left-5 uib-tab nav-item ng-scope ng-isolate-scope active" heading="Followers" style="">
<a href="" ng-click="select($event)" class="nav-link ng-binding" uib-tab-heading-transclude="">Fees Details</a>
</li>
<li ng-class="[{active: active, disabled: disabled}, classes]" class="padding-top-5 uib-tab nav-item ng-scope ng-isolate-scope" heading="Following" style="">
<a href="" ng-click="select($event)" class="nav-link ng-binding" uib-tab-heading-transclude="">Application Details</a>
</li>
</ul>
<div class="tab-content">
<!-- ngRepeat: tab in tabset.tabs --><div class="tab-pane ng-scope active" ng-class="{active: tabset.active === tab.index}" uib-tab-content-transclude="tab" style="">
<div class="panel-scroll height-200 ng-scope ps-container ps-theme-default ps-active-y" perfect-scrollbar="" wheel-propagation="false" suppress-scroll-x="true" data-ps-id="6fc3054c-6292-144d-eff7-cd557f527468"><div ng-transclude="">
<table class="table no-margin ng-scope">
<div collapse="panel2" ng-init="panel2=true" class="panel-wrapper">
<div class="panel-body">
<tabset class="tabbable">
<tab heading="Application Details" id="application">
<div class="panel-scroll height-200 ng-scope ps-container ps-theme-default ps-active-y" perfect-scrollbar="" wheel-propagation="false" suppress-scroll-x="true" data-ps-id="6fc3054c-6292-144d-eff7-cd557f527468">
<div ng-if="course.applicationDetails==false">
<center>
<h5 class="text-dark">No Application Details!</h5>
</center>
</div>
<table class="table no-margin ng-scope" ng-if="course.applicationDetails!=false">
<thead>
<tr>
<th>Fees Name</th>
<th>Course Fees</th>
<th>Paid Amount</th>
<th>Activity</th>
<th>Followup On</th>
<th>Type</th>
<th>Status</th>
<th>Comments</th>
</tr>
</thead>
<tbody>
<tr>
<td class="center"><img alt="image" class="img-circle" src="assets/images/avatar-1-small.jpg"></td>
<td><span class="text-small block text-light">UI Designer</span><span>Peter Clark</span></td>
<td class="center">
<div class="cl-effect-13">
<a href="">
view more
</a>
</div></td>
</tr>
<tr>
<td class="center"><img alt="image" class="img-circle" src="assets/images/avatar-2-small.jpg"></td>
<td><span class="text-small block text-light">Content Designer</span><span>Nicole Bell</span></td>
<td class="center">
<div class="cl-effect-13">
<a href="">
view more
</a>
</div></td>
</tr>
<tr>
<td class="center"><img alt="image" class="img-circle" src="assets/images/avatar-3-small.jpg"></td>
<td><span class="text-small block text-light">Visual Designer</span><span>Steven Thompson</span></td>
<td class="center">
<div class="cl-effect-13">
<a href="">
view more
</a>
</div></td>
</tr>
<tr>
<td class="center"><img alt="image" class="img-circle" src="assets/images/avatar-5-small.jpg"></td>
<td><span class="text-small block text-light">Senior Designer</span><span>Kenneth Ross</span></td>
<td class="center">
<div class="cl-effect-13">
<a href="">
view more
</a>
</div></td>
</tr>
<tr>
<td class="center"><img alt="image" class="img-circle" src="assets/images/avatar-4-small.jpg"></td>
<td><span class="text-small block text-light">Web Editor</span><span>Ella Patterson</span></td>
<td class="center">
<div class="cl-effect-13">
<a href="">
view more
</a>
</div></td>
</tr>
</tbody>
</table>
</div><div class="ps-scrollbar-x-rail" style="left: 0px; bottom: -64px;"><div class="ps-scrollbar-x" tabindex="0" style="left: 0px; width: 0px;"></div></div><div class="ps-scrollbar-y-rail" style="top: 67px; height: 200px; right: 3px;"><div class="ps-scrollbar-y" tabindex="0" style="top: 51px; height: 149px;"></div></div></div>
</div><!-- end ngRepeat: tab in tabset.tabs --><div class="tab-pane ng-scope" ng-repeat="tab in tabset.tabs" ng-class="{active: tabset.active === tab.index}" uib-tab-content-transclude="tab" style="">
<tr ng-repeat="apps in course.applicationDetails">
<td>
<span>{{apps.Sem_Year}}</span>
</td>
<td>
<span>{{apps.ListName}} </span><span> &nbsp; ON &nbsp;</span> <span>{{cert.AppDate}}</span>
</td>
<td>
<span>{{apps.Comments}}</span>
</td>
<div class="panel-scroll height-200 ng-scope ps-container ps-theme-default" perfect-scrollbar="" wheel-propagation="false" suppress-scroll-x="true" data-ps-id="03366876-2a93-ee2e-b05e-d274b2bf5cdd"><div ng-transclude="">
<table class="table no-margin ng-scope">
<tbody>
<tr>
<td class="center"><img alt="image" class="img-circle" src="assets/images/avatar-3-small.jpg"></td>
<td><span class="text-small block text-light">Visual Designer</span><span>Steven Thompson</span></td>
<td class="center">
<div class="cl-effect-13">
<a href="">
view more
</a>
</div></td>
</tr>
<tr>
<td class="center"><img alt="image" class="img-circle" src="assets/images/avatar-5-small.jpg"></td>
<td><span class="text-small block text-light">Senior Designer</span><span>Kenneth Ross</span></td>
<td class="center">
<div class="cl-effect-13">
<a href="">
view more
</a>
</div></td>
</tr>
<tr>
<td class="center"><img alt="image" class="img-circle" src="assets/images/avatar-4-small.jpg"></td>
<td><span class="text-small block text-light">Web Editor</span><span>Ella Patterson</span></td>
<td class="center">
<div class="cl-effect-13">
<a href="">
view more
</a>
</div></td>
</tr>
</tbody>
</table>
</div><div class="ps-scrollbar-x-rail" style="left: 0px; bottom: 3px;"><div class="ps-scrollbar-x" tabindex="0" style="left: 0px; width: 0px;"></div></div><div class="ps-scrollbar-y-rail" style="top: 0px; right: 3px;"><div class="ps-scrollbar-y" tabindex="0" style="top: 0px; height: 0px;"></div></div></div>
</div><!-- end ngRepeat: tab in tabset.tabs -->
</div>
</div>
<!--
view tab end
-->
</div>
</tab>
<tab heading="BookLet Details" id="booklet">
<div class="panel-scroll height-200 ng-scope ps-container ps-theme-default ps-active-y" perfect-scrollbar="" wheel-propagation="false" suppress-scroll-x="true" data-ps-id="6fc3054c-6292-144d-eff7-cd557f527468">
<div ng-if="course.bookletDetails==false">
<center>
<h5 class="text-dark">No Booklet Details!</h5>
</center>
</div>
<table class="table no-margin ng-scope" ng-if="course.bookletDetails!=false">
<thead>
<tr>
<th>Type</th>
<th>Date</th>
<th>Status</th>
<th>Comments</th>
</tr>
</thead>
<tbody>
<tr ng-repeat="book in course.bookletDetails">
<td>
<span>{{book.Sem_Year}}</span></td>
<td>
<span>{{book.AnsDate}}</span></td>
<td>
<span>{{book.ListName}} </span><span> &nbsp; ON &nbsp;</span> <span>{{book.AnsDate}}</span>
</td>
<td>
<span>{{book.Comments}}</span></td>
</tr>
</tbody>
</table>
<!--
view tab end
-->
</div>
</tab>
<tab heading="Certificate Details" id="certificate">
<div class="panel-scroll height-200 ng-scope ps-container ps-theme-default ps-active-y" perfect-scrollbar="" wheel-propagation="false" suppress-scroll-x="true" data-ps-id="6fc3054c-6292-144d-eff7-cd557f527468">
<div ng-if="course.certificateDetails==false">
<center>
<h5 class="text-dark">No Certificate Details!</h5>
</center>
</div>
<table class="table no-margin ng-scope" ng-if="course.certificateDetails!=false">
<thead>
<tr>
<th>Type</th>
<th>Certificate Name</th>
<th>Status</th>
<th>Comments</th>
</tr>
</thead>
<tbody>
<tr ng-repeat="cert in course.certificateDetails">
<td>
<span>{{cert.Sem_Year}}</span>
</td>
<td>
<span>{{cert.CertificateName}}</span>
</td>
<td>
<span>{{cert.ListName}} </span><span> &nbsp; ON &nbsp;</span> <span>{{cert.CDate}}</span>
</td>
<td>
<span>{{cert.Comments}}</span>
</td>
</tr>
</tbody>
</table>
<!--
view tab end
-->
</div>
</tab>
<tab heading="Fees Details" id="fees">
<div class="panel-scroll height-200 ng-scope ps-container ps-theme-default ps-active-y" perfect-scrollbar="" wheel-propagation="false" suppress-scroll-x="true" data-ps-id="6fc3054c-6292-144d-eff7-cd557f527468">
<div ng-if="course.feesDetails==false">
<center>
<h5 class="text-dark">No Fees Details!</h5>
</center>
</div>
<table class="table no-margin ng-scope" ng-controller="FeesModalDemoCtrl" ng-if="course.feesDetails!=false">
<thead>
<tr>
<th>Fees Name</th>
<th>Session Name</th>
<th>Roll Number</th>
<th>Total Payable Fees</th>
<th>Paid Fees</th>
<th>Balance Fees</th>
<th></th>
</tr>
</thead>
<tbody>
<tr ng-repeat="fees in course.feesDetails">
<td>
<span>{{fees.FeesName}}</span></td>
<td>
<span>{{fees.SessionName}}</span></td>
<td>
<span>{{fees.RollNo}}</span></td>
<td>
<span>{{fees.PayableAmount}}</span></td>
<td>
<span>{{fees.PaidBillAmount}}</span></td>
<td>
<span>{{fees.BalanceAmount}}</span></td>
<td><span>
<a tooltip="{{dynamicTooltip}}">
<i class="fa fa-eye" ng-click="open(fees)"></i>
</a> </span>
</td>
</tr>
<script type="text/ng-template" id="myModalContent.html">
<div class="modal-header">
<h4 class="modal-title">{{items.FeesName}} Details</h4>
</div>
<div class="modal-body">
<table class="table">
<thead>
<tr>
<th>Bill NO</th>
<th>Bill Amount</th>
<th>Bill Date</th>
</tr>
</thead>
<tbody>
<tr ng-repeat="v in items.paidDetails">
<td>{{v.BillNO}}</td>
<td>{{v.BillAmount}}</td>
<td>{{v.BillDate}}</td>
</tr>
</table>
</div>
<div class="modal-footer">
<button class="btn btn-danger btn-sm" ng-click="cancel()">Cancel</button>
</div>
</script>
</tbody>
</table>
<!--
view tab end
-->
</div>
</tab>
</tabset>
</div>
</div>
</div>
@ -303,6 +407,7 @@
</div>
<div>