|
@ -8,7 +8,6 @@ import ( |
|
|
"LAPP_ACURA_MOM_BACKEND/grmi" |
|
|
"LAPP_ACURA_MOM_BACKEND/grmi" |
|
|
meta "LAPP_ACURA_MOM_BACKEND/meta/base" |
|
|
meta "LAPP_ACURA_MOM_BACKEND/meta/base" |
|
|
"LAPP_ACURA_MOM_BACKEND/utils" |
|
|
"LAPP_ACURA_MOM_BACKEND/utils" |
|
|
"encoding/csv" |
|
|
|
|
|
"fmt" |
|
|
"fmt" |
|
|
_ "github.com/denisenkom/go-mssqldb" |
|
|
_ "github.com/denisenkom/go-mssqldb" |
|
|
_ "github.com/go-sql-driver/mysql" |
|
|
_ "github.com/go-sql-driver/mysql" |
|
@ -23,7 +22,7 @@ import ( |
|
|
"time" |
|
|
"time" |
|
|
) |
|
|
) |
|
|
|
|
|
|
|
|
//BackFlushPackOrder.exe "server=101.201.121.115;database=LAPP_ACURA_MES2;user id=sa;password=Leit2020;port=1433;encrypt=disable" "LAPP_ACURA_MES2" "server=101.201.121.115;database=LAPP_ETL2;user id=sa;password=Leit2020;port=1433;encrypt=disable" "LAPP_ETL2" "98"
|
|
|
|
|
|
|
|
|
//BackFlushPackOrder.exe "server=101.201.121.115;database=LAPP_ACURA_MES;user id=sa;password=Leit2020;port=1433;encrypt=disable" "LAPP_ACURA_MES" "server=101.201.121.115;database=LAPP_ETL2;user id=sa;password=Leit2020;port=1433;encrypt=disable" "LAPP_ETL2" "98"
|
|
|
|
|
|
|
|
|
func main() { |
|
|
func main() { |
|
|
var err error |
|
|
var err error |
|
@ -235,7 +234,7 @@ func main() { |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
writeLi := make([][]string, 0) |
|
|
|
|
|
|
|
|
writeLi := make([]string, 0, len(ArtMap)) |
|
|
for artId, qty := range ArtMap { |
|
|
for artId, qty := range ArtMap { |
|
|
//article, err := daoArticle.SelectOne(artId)
|
|
|
//article, err := daoArticle.SelectOne(artId)
|
|
|
articleLi, err := daoArticle.Select([]grmi.Predicate{meta.Article_ArtId.NewPredicate(grmi.Equal, artId)}, nil) |
|
|
articleLi, err := daoArticle.Select([]grmi.Predicate{meta.Article_ArtId.NewPredicate(grmi.Equal, artId)}, nil) |
|
@ -258,7 +257,7 @@ func main() { |
|
|
index7 := fmt.Sprintf("%02d%02d%d", int(month), day, 3600*hour+60*minute+second) |
|
|
index7 := fmt.Sprintf("%02d%02d%d", int(month), day, 3600*hour+60*minute+second) |
|
|
index9 := tempIndex9 + fmt.Sprintf("%d%02d%02d%d", year, int(month), day, 3600*hour+60*minute+second) |
|
|
index9 := tempIndex9 + fmt.Sprintf("%d%02d%02d%d", year, int(month), day, 3600*hour+60*minute+second) |
|
|
index11 := now.Format("02/01/06") |
|
|
index11 := now.Format("02/01/06") |
|
|
str := []string{ |
|
|
|
|
|
|
|
|
writeStr := fmt.Sprintf(`"%s","%s",%s,"%s","%s",%s,%s,"%s","%s",%s,%s,"%s"`, |
|
|
index1, |
|
|
index1, |
|
|
index2, |
|
|
index2, |
|
|
index3, |
|
|
index3, |
|
@ -271,9 +270,8 @@ func main() { |
|
|
strconv.Itoa(qty), |
|
|
strconv.Itoa(qty), |
|
|
index11, |
|
|
index11, |
|
|
index12, |
|
|
index12, |
|
|
"\n", |
|
|
|
|
|
} |
|
|
|
|
|
writeLi = append(writeLi, str) |
|
|
|
|
|
|
|
|
) |
|
|
|
|
|
writeLi = append(writeLi, writeStr) |
|
|
} |
|
|
} |
|
|
if err = acuraSession.Begin(); err != nil { |
|
|
if err = acuraSession.Begin(); err != nil { |
|
|
fmt.Println("开启事务失败, error:" + err.Error()) |
|
|
fmt.Println("开启事务失败, error:" + err.Error()) |
|
@ -307,20 +305,40 @@ func main() { |
|
|
fmt.Println("创建csv文件失败, error:" + err.Error()) |
|
|
fmt.Println("创建csv文件失败, error:" + err.Error()) |
|
|
return |
|
|
return |
|
|
} |
|
|
} |
|
|
defer File.Close() |
|
|
|
|
|
|
|
|
|
|
|
//创建写入接口
|
|
|
|
|
|
WriterCsv := csv.NewWriter(File) |
|
|
|
|
|
for _, writeItem := range writeLi { |
|
|
|
|
|
//写入一条数据,传入数据为切片(追加模式)
|
|
|
|
|
|
err = WriterCsv.Write(writeItem) |
|
|
|
|
|
|
|
|
_, err = File.WriteString("\xEF\xBB\xBF") // 写入UTF-8 BOM
|
|
|
|
|
|
if err != nil { |
|
|
|
|
|
_ = acuraSession.Rollback() |
|
|
|
|
|
fmt.Println("写入csv文件失败, error:" + err.Error()) |
|
|
|
|
|
return |
|
|
|
|
|
} |
|
|
|
|
|
for _, item := range writeLi { |
|
|
|
|
|
_, err = File.WriteString(item) |
|
|
|
|
|
if err != nil { |
|
|
|
|
|
_ = acuraSession.Rollback() |
|
|
|
|
|
fmt.Println("写入csv文件失败, error:" + err.Error()) |
|
|
|
|
|
return |
|
|
|
|
|
} |
|
|
|
|
|
_, err = File.Write([]byte{'\r', '\n'}) |
|
|
if err != nil { |
|
|
if err != nil { |
|
|
_ = acuraSession.Rollback() |
|
|
_ = acuraSession.Rollback() |
|
|
fmt.Println("写入csv文件失败, error:" + err.Error()) |
|
|
fmt.Println("写入csv文件失败, error:" + err.Error()) |
|
|
return |
|
|
return |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
WriterCsv.Flush() //刷新,不刷新是无法写入的
|
|
|
|
|
|
|
|
|
File.Close() |
|
|
|
|
|
//创建写入接口
|
|
|
|
|
|
//WriterCsv := csv.NewWriter(File)
|
|
|
|
|
|
|
|
|
|
|
|
//for _, writeItem := range writeLi {
|
|
|
|
|
|
// //写入一条数据,传入数据为切片(追加模式)
|
|
|
|
|
|
// err = WriterCsv.Write(writeItem)
|
|
|
|
|
|
// if err != nil {
|
|
|
|
|
|
// _ = acuraSession.Rollback()
|
|
|
|
|
|
// fmt.Println("写入csv文件失败, error:" + err.Error())
|
|
|
|
|
|
// return
|
|
|
|
|
|
// }
|
|
|
|
|
|
//}
|
|
|
|
|
|
//WriterCsv.Flush() //刷新,不刷新是无法写入的
|
|
|
err = acuraSession.Commit() |
|
|
err = acuraSession.Commit() |
|
|
if err != nil { |
|
|
if err != nil { |
|
|
fmt.Println("事务提交失败, error:" + err.Error()) |
|
|
fmt.Println("事务提交失败, error:" + err.Error()) |
|
|