refresh company list after create company
This commit is contained in:
@@ -1,11 +1,15 @@
|
||||
package srv
|
||||
|
||||
import (
|
||||
"bordrobot/lib/bot"
|
||||
"bordrobot/lib/company"
|
||||
"bordrobot/lib/model"
|
||||
"bordrobot/lib/run"
|
||||
"fmt"
|
||||
"log/slog"
|
||||
|
||||
"github.com/wailsapp/wails/v3/pkg/application"
|
||||
"github.com/xuri/excelize/v2"
|
||||
"log/slog"
|
||||
)
|
||||
|
||||
type Srv struct {
|
||||
@@ -41,8 +45,40 @@ func (s *Srv) UploadExcel() string {
|
||||
return file
|
||||
}
|
||||
|
||||
type userInfo struct {
|
||||
userName string
|
||||
password string
|
||||
accountNo string
|
||||
}
|
||||
|
||||
func getUser(userId string) *userInfo {
|
||||
// user, ok := userDB[userId]
|
||||
//
|
||||
// if !ok {
|
||||
// return nil
|
||||
// }
|
||||
info := userInfo{accountNo: "3197485", userName: "NOTİTEK01", password: "Notitek2025."}
|
||||
//info := userInfo{accountNo: "3197485", userName: "NOTİTEK01", password: "sdaasd."}
|
||||
return &info
|
||||
}
|
||||
func (s *Srv) Rpa(companyName string, month float64, year float64) error {
|
||||
|
||||
user, err := company.GetCompany(companyName)
|
||||
if err != nil {
|
||||
|
||||
}
|
||||
//todo: readb company details by name
|
||||
b := bot.NewLucaBot()
|
||||
b.Login(user)
|
||||
//b.BordroYaz(data,b.page,,)
|
||||
|
||||
//err := b.Login()
|
||||
//err := b.Login(şirket, accoun no, parola vsç..)
|
||||
//şirket login bilgilerini sqlite'tan oku
|
||||
//ardında BOT init et (global değişken de olmayabilir) init fonksyionu bot'u dönebilir
|
||||
//bot'ta login ol
|
||||
//bot'ta olması gereken veri yazma sayfasına browse et
|
||||
|
||||
//todo: save xls to application folder as /name/year/month.xlsx
|
||||
|
||||
//wails nümerik değerleri float gönderiyor.. int gönderimi araştırılmalı
|
||||
@@ -62,21 +98,45 @@ func (s *Srv) Rpa(companyName string, month float64, year float64) error {
|
||||
}()
|
||||
|
||||
sheets := f.GetSheetList()
|
||||
cols, err := f.GetCols(sheets[0])
|
||||
rows, err := f.GetRows(sheets[0])
|
||||
fmt.Println(rows)
|
||||
if err != nil {
|
||||
slog.Error(err.Error())
|
||||
return err
|
||||
}
|
||||
for _, row := range cols {
|
||||
//todo: process excel and do data input
|
||||
|
||||
//todo: inform user about process and errors
|
||||
run.APP.Events.Emit(&application.WailsEvent{
|
||||
Name: "logProcess",
|
||||
Data: row[1],
|
||||
})
|
||||
|
||||
if rows[0][0] == "" {
|
||||
rows = rows[1:]
|
||||
}
|
||||
data := make([]*model.Bordro, 0) // []*Bordro türünde bir dilim oluştur
|
||||
for i := 1; i < len(rows); i++ {
|
||||
bordroSatiri, err := model.NewFromExcelLine(rows[i])
|
||||
data = append(data, bordroSatiri)
|
||||
//
|
||||
fmt.Println(bordroSatiri, err)
|
||||
}
|
||||
b.BordroYaz(data)
|
||||
|
||||
//for _, row := range rows {
|
||||
// //todo: process excel and do data input
|
||||
// fmt.Println(row)
|
||||
// // satır satır execli oku,
|
||||
//
|
||||
// //yukarıda init edilen bot'ta' yazma kodunu çalıştır..
|
||||
//
|
||||
// bordroSatiri, err := model.NewFromExcelLine(row)
|
||||
// fmt.Println(bordroSatiri, err)
|
||||
// b.BordroYaz(bordroSatiri)
|
||||
//
|
||||
// //todo: inform user about process and errors
|
||||
// emitLog(row[1])
|
||||
//}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
func emitLog(logMessage string) {
|
||||
run.APP.Events.Emit(&application.WailsEvent{
|
||||
Name: "logProcess",
|
||||
Data: logMessage,
|
||||
})
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user