Flutter

Employee Salary Calculation using Flutter

This tutorial will teach you to calculating the employee salary Calculation App.The app is developed steps ahead of the existing world. While app development will be very useful for the future as well.Input the employee name and the basic salary calculate and display the netsalary using following condition.

1.  if the basic salary is more than 50000 then include 10% tax.
2. if the basic salary is more than 30000 then include 5% tax.
3. otherwise no tax.

Main.dart

import 'package:employee_app/employee_salary.dart';
import 'package:flutter/material.dart';

void main() {
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  // This widget is the root of your application.
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      debugShowCheckedModeBanner: false,
      theme: ThemeData(
        
        primarySwatch: Colors.blue,
      ),
      home: EmployeeSalary(),
    );
  }
}


employee_salary.dart


import 'package:flutter/material.dart';

class EmployeeSalary extends StatefulWidget {
  const EmployeeSalary({ Key key }) : super(key: key);

  @override
  State<EmployeeSalary> createState() => _EmployeeSalaryState();
}

class _EmployeeSalaryState extends State<EmployeeSalary> {
  @override
  Widget build(BuildContext context) {
     final _amount = TextEditingController();
      final _tax = TextEditingController();
      final _netsal = TextEditingController();
       var size = MediaQuery.of(context).size;
      double cal;
      double result;
       double salary;
        double taxcal;
        double sum;
    return Scaffold(
      body: SafeArea(

      child: Container(
          child:  Column(
            children: [
              Text("Employee Salary Calculation",style: TextStyle(fontSize: 30, color: Colors.black)),
              SizedBox(height: 15,),
               TextField(
                           controller: _amount,
                           decoration: InputDecoration(
                             labelText: "Salary",
                             labelStyle: TextStyle(fontSize: 15,color: Colors.grey.shade400),
                             border: OutlineInputBorder(borderRadius: BorderRadius.circular(10))
                           ),
                ),
                SizedBox(height: 15,),
                SizedBox(height: 15,),
               TextField(
                           controller: _tax,
                           decoration: InputDecoration(
                             labelText: "Tax",
                             labelStyle: TextStyle(fontSize: 15,color: Colors.grey.shade400),
                             border: OutlineInputBorder(borderRadius: BorderRadius.circular(10))
                           ),
                ),
                SizedBox(height: 15,),
                TextField(
                           controller: _netsal,
                           decoration: InputDecoration(
                             labelText: "NetSalary",
                             labelStyle: TextStyle(fontSize: 15,color: Colors.grey.shade400),
                             border: OutlineInputBorder(borderRadius: BorderRadius.circular(10))
                           ),
                ),
                SizedBox(height: 15,),  
                GestureDetector(

                    onTap: ()
             {

                  salary = double.parse(_amount.text);
                  if(salary > 50000)

                {
                    taxcal =  salary * 10/100;

                }

                else if(salary > 30000)
                {

                    taxcal =  salary * 5/100;
                }

                else
                {
                    taxcal = 0;
                }


                
              result = sum;
            _tax.text = taxcal.toString();
            double netcal = salary - taxcal;
            _netsal.text = netcal.toString();

              },

                  child: Container(
                    alignment: Alignment.center,
                       height: size.height / 14,
                        width: size.width,
                      
                        decoration: BoxDecoration(color: Colors.red,
                            borderRadius: BorderRadius.circular(5)),
                    child: Text("Convert", 
                                      style: TextStyle(color: Colors.white,
                                      fontWeight: FontWeight.bold),),
                  ),
                ),

            ],
          ),
        
      ),
    ),
    );
    
  }
}

I have attached the video tutorial below it will help you  to do this  step by step.

 

 

 

 

 

admin

Recent Posts

ChatGPT Free Online Download the ChatGPT App Easily

Have you ever wanted to talk to a friendly, smart robot that helps you with…

6 days ago

Free GPT Chat? DeepSeek AI Does It Better

DeepSeek AI is becoming a friendly and powerful new tool in the world of artificial…

2 weeks ago

Spring Boot MySQL Complete CRUD REST API [ Free Sourecode ]

Do you want to become an expert in Spring Boot CRUD operations? This comprehensive tutorial…

3 weeks ago

CREATE Responsive Navigation Bar with FlexBox CSS!

Modern websites must have a navigation bar that is clear and responsive. FlexBox CSS is…

4 weeks ago

Registration with image upload Java Jdbc(Download Source code)

Introduction In this section, we will guide you step by step in the development of an image upload registration system in Java using MySQL and JDBC. In the application, users register…

2 months ago

Touchable shop Pos system using Java

The Touchable Shop POS (Point of Sale) system is a sophisticated software solution developed using…

3 months ago