zhoushihao
2024-05-23 a8959c68af98c26e14888f946f40501b94fbc6e5
UI-Project/src/views/Returns/returns.vue
@@ -4,92 +4,207 @@
import {useRouter} from "vue-router"
const router = useRouter()
import type { TableColumnCtx } from 'element-plus'
// import { ref } from 'vue'
import { ElMessage, ElMessageBox } from 'element-plus'
const dialogFormVisible = ref(false)
const blind = ref(false)
const blinda = ref(false)
const blindb = ref(false)
const add = ref(false)
const adda = ref(false)
// const value = ref('')
const flake = ref(false)
const flakea = ref(false)
// const patternHeight = ref('');
// const patternWidth = ref('');
// const filmsId = ref('');
// const patternThickness = ref('');
// const number = ref('');
//  patternHeight.value = '';
    //  patternWidth.value = '';
    //  filmsId.value = '';
    //  patternThickness.value = '';
    //  number.value = '';
import request from "@/utils/request"
const ida = ref(null);
import { ref, onMounted } from "vue";
// import http from "@/http/index";
let ruleForm = ref({
  projectNo: '',
  workstationId: '',
  patternHeigth: '',
  patternHeight: '',
  patternWidth: '',
  filmsId: '',
  patternThickness: '',
  number: '',
})
const tableDataa = ref([])
  
 const requestData = {
    // projectNo:"P24030805",
    state:100
  };
  const tableData = reactive([]);
//   let filterData = ref({
//   damageDetails: {
//     state: '',
//   },
// })
// 发送获取表格数据的请求
const fetchTableData = async () => {
  try {
    // 发送获取表格数据的请求,并等待响应
    // const response = await request.post("/loadGlass/optimizeProject/listByState", requestData);
    const response = await request.get("/loadGlass/up-patten-usage/prioritylist");
    // 检查响应状态
    if (response.code === 200) {
      // 更新表格数据
      console.log('成功获取表格数据:', response.data);
      tableData.splice(0, tableData.length, ...response.data);
      window.localStorage.setItem('engineeringId', response.data[0].engineeringId)
    } else {
      // 请求失败,显示错误消息
      ElMessage.error(response.msg);
    }
  } catch (error) {
    // 处理请求失败的情况
    ElMessage.error('获取表格数据失败,请重试');
    // ElMessage.error('获取表格数据失败,请重试');
  }
};
request.get("/loadGlass/LoadGlass/list").then((res) => {
          if (res.code == 200) {
          console.log(res.data);
          tableDataa.value = res.data
          // workstationId.value = res.data[0].workstationId
          } else {
          ElMessage.warning(res.msg)
          router.push("/login")
          }
          });
   request.get("/loadGlass/LoadGlass/list").then((res) => {
    if (res.code === 200) {
     console.log(res.data);
     tableDataa.value = res.data;
    if (tableDataa.value.length === 2) {
     if (tableDataa.value[0].patternWidth > 0) {
      flake.value = true;
     }
    if (tableDataa.value[1].patternWidth > 0) {
    flakea.value = true;
    }
    }
    } else {
    ElMessage.warning(res.msg);
    // router.push("/login");
    }
   });
// request.get("/loadGlass/LoadGlass/list").then((res) => {
//       window.localStorage.setItem('patternWidth', res.data.patternWidth)
//       window.localStorage.setItem('workstationId', res.data.workstationId)
//           if (res.code == 200) {
//           console.log(res.data);
//           tableDataa.value = res.data
//           console.log(res.data.patternWidth);
//       let workstationId = window.localStorage.getItem('workstationId')
//       let patternWidth = window.localStorage.getItem('patternWidth')
//       if (patternWidth !== '' || workstationId == '1') {
//       flake.value = true
//     } else if (patternWidth !== '' || workstationId == '2') {
//       flakea.value = true
//     }
//           } else {
//           ElMessage.warning(res.msg)
//           // router.push("/login")
//           }
//           });
//定义接收加载表头下拉数据
const titleSelectJson = ref({
  processType: [],
})
const getBasicData = ref({
  id: '',
  projectNo: '',
const titleSelectJsona = ref({
  processTypea: [],
})
request.post("/loadGlass/optimizeProject/listByState", requestData)
.then((res) => {
          if (res.code == 200) {
    titleSelectJson.value.processType = res.data;
          console.log(res.data);
          } else {
          ElMessage.warning(res.msg)
          router.push("/login")
          }
          });
// const getBasicData = ref({
//   id: '',
//   projectNo: '',
// })
// const requestData = {
//     // projectNo:"P24030805",
//     state:100
//   };
// request.post("/loadGlass/optimizeProject/listByState", requestData)
// .then((res) => {
//           if (res.code == 200) {
//     titleSelectJson.value.processType = res.data;
//           console.log(res.data);
//           } else {
//           ElMessage.warning(res.msg)
//           // router.push("/login")
//           }
//           });
          // 初始请求参数
const requestData = {
  state: 100
};
// 响应式数据
const selectedProjectNo = ref(''); // 当前选中的工程号
const selectedProjectNoa = ref(''); // 当前选中的工程号
const options = ref<any[]>([]); // 下拉选项列表
// 调用接口获取选项数据的函数
const fetchOptions = async (queryString: string) => {
  try {
    // 发送请求到后端接口
    const response = await request.post('/loadGlass/optimizeProject/listByState', {
      ...requestData,
      query: queryString // 将查询字符串作为参数传递
    });
    if (response.code == 200) {
    titleSelectJson.value.processType = response.data;
    console.log(response.data);
    } else {
      ElMessage.warning(response.data);
    }
  } catch (error) {
    console.error('Error fetching options:', error);
  }
};
  // 开始上片下拉选
const fetchOptionsa = async (queryString: string) => {
  try {
    // 发送请求到后端接口
    const response = await request.get('/loadGlass/engineering/engineering/selectTask');
    if (response.code == 200) {
    titleSelectJsona.value.processTypea = response.data;
    console.log(response.data);
    } else {
      ElMessage.warning(response.data);
    }
  } catch (error) {
    console.error('Error fetching options:', error);
  }
};
// 处理用户输入变化的方法
const handleInputChange = async (value: string) => {
  if (value) {
    await fetchOptions(value);
  } else {
    options.value = []; // 清空选项列表
  }
};
  // 处理用户输入变化的方法
const handleInputChangea = async (value: string) => {
  if (value) {
    await fetchOptionsa(value);
  } else {
    options.value = []; // 清空选项列表
  }
};
// 初始化加载数据(如果需要)
onMounted(() => {
  // 在组件挂载后调用 fetchOptions('') 来加载初始数据(如果需要)
  fetchOptions('');
});
onMounted(() => {
  // 在组件挂载后调用 fetchOptions('') 来加载初始数据(如果需要)
  fetchOptionsa('');
});
// const billall  = () => {
//   request.post("/loadGlass/optimizeProject/listByState", requestData)
//     .then((res: any) => {
@@ -102,70 +217,133 @@
// }
const user = ref('');
// 定义表头上传数据
let titleUploadData = ref({
  projectNo:'',
})
// const billall = {
//   data () {
//     return {
//       form: {
//         projectNo: '',
//       },
//       billall:[],
//     }
//   },
//   methods:{
//   }
// }
// let titleUploadData = ref({
//   projectNo:'',
// })
const projectNo = ref('');
const workstationId = ref('');
const patternHeigth = ref('');
const id = ref('');
const patternHeight = ref('');
const patternWidth = ref('');
const filmsId = ref('');
const patternThickness = ref('');
const number = ref('');
// 添加
const handleBindRack = (row) => {
  workstationId.value = row.workstationId; // 假设rackNumber是架号字段的属性名
  ida.value = row.id;
  console.log(ida.value);
  add.value = true; // 打开绑定架子对话框
};
// 添加
    const handleConfirm = async () => {
  try {
  console.log(ida.value);
      // console.log('id.value:', id.value);
  if ((ida.value === 2 || ida.value === 4) && (parseInt(patternHeight.value, 10) >= 2700 )) {
    try {
    const response = await request.post('/loadGlass/LoadGlass/updateGlassMessage', {
      id: workstationId.value,
      workstationId: workstationId.value,
      patternHeigth: patternHeigth.value,
      patternHeight: patternHeight.value,
      patternWidth: patternWidth.value,
      filmsId: filmsId.value,
      patternThickness: patternThickness.value,
      number: number.value
    }); 
    if (response.code == 200) {
      // 绑定成功,处理逻辑
      ElMessage.success(response.message);
      // window.location.reload()
      add.value = false;
     tableDataa.value = response.data;
    //  patternHeight = '';
    //  patternWidth.value = '';
    //  filmsId.value = '';
    //  patternThickness.value = '';
    //  number.value = '';
      window.localStorage.setItem('workstationId', response.data.workstationId)
      let workstationId = window.localStorage.getItem('workstationId')
      if (workstationId == '1') {
      flake.value = true
    } else if (workstationId == '2'){
      flakea.value = true
    }
    } else {
      // 请求失败,显示错误消息
      ElMessage.error(response.msg);
    }
  } catch (error) {
    // 处理错误
    console.error(error);
  }
};
  } catch (error) {
      // 处理请求错误
      console.error(error);
      alert('请求失败,请稍后再试!');
    }
  }
  else if( ida.value === 1 || ida.value === 3){
      try {
    const response = await request.post('/loadGlass/LoadGlass/updateGlassMessage', {
      id: workstationId.value,
      workstationId: workstationId.value,
      patternHeight: patternHeight.value,
      patternWidth: patternWidth.value,
      filmsId: filmsId.value,
      patternThickness: patternThickness.value,
      number: number.value
    });
    if (response.code == 200) {
      // 绑定成功,处理逻辑
      ElMessage.success(response.message);
      // window.location.reload()
      add.value = false;
     tableDataa.value = response.data;
      window.localStorage.setItem('workstationId', response.data.workstationId)
      let workstationId = window.localStorage.getItem('workstationId')
      if (workstationId == '1') {
      flake.value = true
    } else if (workstationId == '2'){
      flakea.value = true
    }
    } else {
      // 请求失败,显示错误消息
      ElMessage.error(response.msg);
    }
  } catch (error) {
      // 处理请求错误
      console.error(error);
      alert('请求失败,请稍后再试!');
    }
    }
  else  {
      ElMessage({
        type: 'info',
        message: '第二行和第四行的高必须大于2700才能保存!',
      })
    }
};
// 删除
const handleConfirma = async () => {
  try {
    const response = await request.post('/loadGlass/LoadGlass/updateGlassMessage', {
      workstationId: workstationId.value,
      patternHeigth: 0,
      patternHeight: 0,
      patternWidth: 0,
      filmsId: "",
      patternThickness: 0,
      number: 0
    }); 
    if (response.code == 200) {
      // 绑定成功,处理逻辑
      ElMessage.success(response.message);
      adda.value = false;
     tableDataa.value = response.data;
      window.localStorage.setItem('workstationId', response.data.workstationId)
      let workstationId = window.localStorage.getItem('workstationId')
      if (workstationId == '1') {
      flake.value = false
    } else if (workstationId == '2'){
      flakea.value = false
    }
    } else {
      // 请求失败,显示错误消息
      ElMessage.error(response.msg);
@@ -175,67 +353,188 @@
    console.error(error);
  }
};
onMounted(fetchTableData);
interface User {
  id: string
  name: string
  amount1: string
  amount2: string
  amount3: number
}
interface SpanMethodProps {
  row: User
  column: TableColumnCtx<User>
  rowIndex: number
  columnIndex: number
}
const objectSpanMethod = ({
  row,
  column,
  rowIndex,
  columnIndex,
}: SpanMethodProps) => {
  if (columnIndex === 0) {
    if (rowIndex % 2 === 0) {
      return {
        rowspan: 2,
        colspan: 1,
      }
// 选择工程确认
const handleup = async () => {
  try  {
  const response = await request.post('/loadGlass/up-patten-usage/saveUpPattenUsage', {
    engineerId: selectedProjectNo.value,
    })
    if (response.code == 200) {
      // 绑定成功,处理逻辑
      ElMessage.success(response.message);
      // window.location.reload()
      dialogFormVisible.value = false;
      selectedProjectNo.value = ''
    } else {
      return {
        rowspan: 0,
        colspan: 0,
      }
      // 请求失败,显示错误消息
      ElMessage.error(response.msg);
    }
}
catch (error) {
    // 处理错误
    console.error(error);
  }
}
// 开始上片
const handle = async () => {
  try  {
  const response = await request.post('/loadGlass/engineering/engineering/changeTask', {
    engineerId: selectedProjectNoa.value,
    state: 1,
    })
    if (response.code == 200) {
      // 绑定成功,处理逻辑
      ElMessage.success(response.message);
      // window.location.reload()
      blind.value = false;
      tableData.splice(0, tableData.length, ...response.data);
      selectedProjectNoa.value = ''
    } else {
      // 请求失败,显示错误消息
      ElMessage.error(response.msg);
    }
}
catch (error) {
    // 处理错误
    console.error(error);
  }
}
// 暂停
const handlea = async () => {
  try  {
  let engineeringId = window.localStorage.getItem('engineeringId')
console.log(engineeringId);
if (engineeringId !== '') {
  const response = await request.post('/loadGlass/engineering/engineering/changeTask', {
      engineeringId: engineeringId,
      state: 0,
    })
    if (response.code == 200) {
      // 绑定成功,处理逻辑
      ElMessage.success(response.message);
      // window.location.reload()
      blinda.value = false;
      // tableData.value = response.data
      // tableData.value = [];
      tableData.splice([]);
    } else {
      // 请求失败,显示错误消息
      ElMessage.error(response.msg);
    }
  }
}
const open = () => {
  ElMessageBox.confirm(
    '是否删除该条信息?',
    '提示',
    {
      confirmButtonText: '是',
      cancelButtonText: '取消',
      type: 'warning',
    }
  )
    .then(() => {
      ElMessage({
        type: 'success',
        message: '删除成功!',
      })
    })
    .catch(() => {
    else  {
      ElMessage({
        type: 'info',
        message: '删除失败',
        message: '工程号不能为空!',
      })
    })
    }
}
catch (error) {
    // 处理错误
    console.error(error);
  }
}
// 停止任务
const handleb = async () => {
  try  {
  let engineeringId = window.localStorage.getItem('engineeringId')
console.log(engineeringId);
if (engineeringId !== '') {
  const response = await request.post('/loadGlass/engineering/engineering/changeTask', {
      engineeringId: engineeringId,
      state: 0,
    })
    if (response.code == 200) {
      // 绑定成功,处理逻辑
      ElMessage.success(response.message);
      // window.location.reload()
      blindb.value = false;
      tableData.splice([]);
      // 请求失败,显示错误消息
      ElMessage.error(response.msg);
    }
  }
    else  {
      ElMessage({
        type: 'info',
        message: '工程号不能为空!',
      })
    }
}
catch (error) {
    // 处理错误
    console.error(error);
  }
}
onMounted(fetchTableData);
function getStatusText(state: number) {
  switch (state) {
    case 0:
      return '等待中';
    case 1:
      return '上片中';
    case 2:
      return '上片中';
    case 100:
      return '已完成';
    default:
      return '未知状态';
  }
}
function getStatusType(state: number) {
  // 这里假设只有100时类型不是success,其他都是success
  return state === 100 ? 'info' : 'success'; // 根据需要调整类型
}
// const open = () => {
//   ElMessageBox.confirm(
//     '是否删除该条信息?',
//     '提示',
//     {
//       confirmButtonText: '是',
//       cancelButtonText: '取消',
//       type: 'warning',
//     }
//   )
//     .then(() => {
//       ElMessage({
//         type: 'success',
//         message: '删除成功!',
//       })
//     })
//     .catch(() => {
//       ElMessage({
//         type: 'info',
//         message: '删除失败',
//       })
//     })
// }
// 开始上片
const handleBind = (row) => {
  // engineeringId.value = row.engineeringId;
  blind.value = true; // 打开绑定架子对话框
};
// 暂停
const handleBinda = (row) => {
  // engineeringId.value = row.engineeringId;
  blinda.value = true; // 打开绑定架子对话框
};
// 停止任务
const handleBindb = (row) => {
  // engineeringId.value = row.engineeringId;
  blindb.value = true; // 打开绑定架子对话框
};
// 删除
const handleBindRacka = (row) => {
  workstationId.value = row.workstationId; // 假设rackNumber是架号字段的属性名
  adda.value = true; // 打开绑定架子对话框
};
const gridOptions = reactive({
  border:  "full",//表格加边框
  keepSource: true,//保持源数据
@@ -274,7 +573,7 @@
  ],
})
</script>
<template>
  <div>
    <div id="dotClass">
@@ -287,9 +586,10 @@
    <el-button style="margin-left: 30px;margin-top: -3px;" >手动确认</el-button>
   </div>
    <el-button style="margin-top: 5px;margin-left: 15px;"   id="searchButton" type="primary" @click="dialogFormVisible = true">选择工程</el-button>
    <el-button style="margin-top: 5px;margin-left: 20px;"  id="searchButton" type="primary">开始上片</el-button>
    <el-button style="margin-top: 5px;margin-left: 20px;"  id="searchButton" type="warning" >暂停</el-button>
    <el-button style="margin-top: 5px;margin-left: 20px;"  id="searchButton" type="danger" >停止任务</el-button>
    <el-button style="margin-top: 5px;margin-left: 20px;"  id="searchButton" type="primary" @click="handleBind">开始上片</el-button>
    <el-button style="margin-top: 5px;margin-left: 20px;"  id="searchButton" type="warning" @click="handleBinda">暂停</el-button>
    <el-button style="margin-top: 5px;margin-left: 20px;"  id="searchButton" type="danger" @click="handleBindb">停止任务</el-button>
    <el-card style="flex: 1;margin-left: 10px;margin-top: 15px;" v-loading="loading">
      <div style="width: 98%; height: calc(100% - 35px); overflow-y: auto;">
    <el-table
@@ -310,57 +610,100 @@
            min-width="80"
            prop="state"
          >
          <!-- <el-tag type="success" v-if="damageDetails.state === 1">就绪</el-tag> -->
          <!-- <el-tag type="danger" v-if="row.enableState==2">未就绪</el-tag> -->
          <template #default="scope">
        <el-tag :type="getStatusType(scope.row.state)">
          {{ getStatusText(scope.row.state) }}
        </el-tag>
      </template>
          <!-- <template #default="scope">
            <el-tag type="success" >{{ scope.row.state==0?"等待中":"上片中"  }}</el-tag>
          </template> -->
          </el-table-column>
    </el-table>
      </div>
    </el-card>
    <el-dialog v-model="blind" top="24vh" width="30%" title="是否开始上片?" >
    <div style="margin-left: 50px;margin-bottom: 10px;">
      <el-form-item label="工程号:" :required="true">
        <el-select
           v-model="selectedProjectNoa"
           filterable
           clearable
           placeholder="请选择工程"
           style="width: 220px"
           @input="handleInputChangea"
         >
      <el-option
         v-for="item in titleSelectJsona['processTypea']"
         :key="item.id"
         :label="item.engineerId"
         :value="item.engineerId"
      />
    </el-select>
              </el-form-item>
          </div>
    <template #footer>
      <div id="dialog-footer">
        <el-button type="primary" @click="handle">
          确认
        </el-button>
        <el-button @click="blind = false">取消</el-button>
      </div>
    </template>
  </el-dialog>
  <!-- <el-dialog v-model="blind" top="30vh" width="25%" title="是否开始上片?" >
    <template #footer>
      <div id="dialog-footer">
        <el-button type="primary" @click="handle">
          确认
        </el-button>
        <el-button @click="blind = false">取消</el-button>
      </div>
    </template>
  </el-dialog> -->
  <el-dialog v-model="blinda" top="30vh" width="25%" title="是否暂停?" >
    <template #footer>
      <div id="dialog-footer">
        <el-button type="primary" @click="handlea">
          确认
        </el-button>
        <el-button @click="blinda = false">取消</el-button>
      </div>
    </template>
  </el-dialog>
  <el-dialog v-model="blindb" top="30vh" width="25%" title="是否停止任务?" >
    <template #footer>
      <div id="dialog-footer">
        <el-button type="primary" @click="handleb">
          确认
        </el-button>
        <el-button @click="blindb = false">取消</el-button>
      </div>
    </template>
  </el-dialog>
      <div id="parent">
        <img src="../../assets/shangpianji.png" alt="" style="max-width: 20%;max-height: 20%;margin-top: 20px;margin-left: 500px;">
        <div id="overlay" v-show="flake"></div>
        <div id="overlaya" v-show="flakea"></div>
      </div>
      <div style="margin-top: -350px;margin-left: 650px;">
        <el-table :data="tableDataa" border style="width: 60%"
     :header-cell-style="{background:'#F2F3F5 ',color:'#1D2129'}"
        >
          <el-table-column prop="patternWidth" align="center" label="宽" min-width="80" />
          <el-table-column prop="patternHeigth" align="center" label="长" min-width="80" />
          <el-table-column prop="patternHeight" align="center" label="高" min-width="80" />
          <el-table-column prop="filmsId" align="center" label="膜系" min-width="80" />
          <el-table-column prop="number" align="center" label="数量" min-width="80" />
          <el-table-column fixed="right" label="操作" align="center" width="150">
            <template #default>
              <el-button size="mini" type="text" plain @click="add = true">添加</el-button>
              <el-button size="mini" type="text" plain @click="adda = true">删除</el-button>
            <template #default="scope">
              <el-button size="mini" type="text" plain @click="handleBindRack(scope.row)">添加</el-button>
              <el-button size="mini" type="text" plain @click="handleBindRacka(scope.row)">删除</el-button>
            </template>
        </el-table-column>
        </el-table>
    </div>
        </div>
  <el-dialog v-model="dialogFormVisible" top="24vh" width="30%" title="工程" >
    <div style="margin-left: 50px;margin-bottom: 10px;">
      <el-form-item label="工程号:" :required="true">
        <el-select  v-model="getBasicData.projectNo" clearable placeholder="请选择工程" style="width: 220px"
                   >
            <el-option
                v-for="item in titleSelectJson['processType']"
                :key="item.id"
                :label="item.projectNo"
                :value="item.projectNo"
            />
          </el-select>
              </el-form-item>
          </div>
    <template #footer>
      <div id="dialog-footer">
        <el-button type="primary" @click="dialogFormVisible = false">
          确认
        </el-button>
        <el-button @click="dialogFormVisible = false">取消</el-button>
      </div>
    </template>
  </el-dialog>
  <el-dialog v-model="add" top="23vh" width="45%" title="添加原片" >
    <div style="margin-left: -50px;margin-top: 10px;margin-bottom: 10px;">
            <el-form  size="mini" label-width="150px">
@@ -369,8 +712,8 @@
          <el-col :span="6">
              <div id="dt" style="font-size: 15px;">
        <div>
              <el-form-item label="长:" :required="true" style="width: 14vw">
                <el-input  v-model="patternHeigth" autocomplete="off" />
              <el-form-item label="高:" :required="true" style="width: 14vw">
                <el-input  v-model="patternHeight" autocomplete="off" />
              </el-form-item></div></div>
          </el-col>
          <el-col :span="9">
@@ -419,7 +762,7 @@
      </div>
    </template>
  </el-dialog>
  <el-dialog v-model="adda" top="25vh" width="25%" title="是否删除" >
  <el-dialog v-model="adda" top="30vh" width="25%" title="是否删除该条信息?" >
    <template #footer>
      <div id="dialog-footer">
        <el-button type="primary" @click="handleConfirma">
@@ -429,10 +772,42 @@
      </div>
    </template>
  </el-dialog>
        </div>
  <el-dialog v-model="dialogFormVisible" top="24vh" width="30%" title="工程" >
    <div style="margin-left: 50px;margin-bottom: 10px;">
      <el-form-item label="工程号:" :required="true">
        <el-select
           v-model="selectedProjectNo"
           filterable
           clearable
           placeholder="请选择工程"
           style="width: 220px"
           @input="handleInputChange"
         >
      <el-option
         v-for="item in titleSelectJson['processType']"
         :key="item.id"
         :label="item.projectNo"
         :value="item.projectNo"
      />
    </el-select>
              </el-form-item>
          </div>
    <template #footer>
      <div id="dialog-footer">
        <el-button type="primary" @click="handleup">
          确认
        </el-button>
        <el-button @click="dialogFormVisible = false">取消</el-button>
      </div>
    </template>
  </el-dialog>
</template>
<style scoped>
#dt { display:block; float:left;line-height: 20px;margin-left: 100px;}
#dta { display:block; float:left;line-height: 20px;margin-left: 80%;}
#dialog-footer{
@@ -457,8 +832,8 @@
  width: 212px;
  height: 15px;
  background-color: #529b2e;
  margin-top: -407px;
  margin-left: 171px;
  margin-top: -404px;
  margin-left: 542px;
}
#overlaya{
  position: absolute;
@@ -466,8 +841,8 @@
  width: 212px;
  height: 15px;
  background-color: #529b2e;
  margin-top: -40px;
  margin-left: 167px;
  margin-top: -38px;
  margin-left: 537px;
}
</style>