zhangqian
2023-10-07 3ca8f1290232818ca2720fa3a9a736ca1d52a1a8
gorm版本v2改成v1
25个文件已修改
252 ■■■■■ 已修改文件
api/v1/config.go 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
api/v1/plc_brand.go 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
api/v1/task.go 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
go.mod 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
go.sum 41 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
model/device.go 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
model/device_plc.go 17 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
model/index.go 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
model/net_config.go 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
model/plc_brand.go 20 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
model/procedures.go 15 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
model/process_model.go 20 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
model/production_progress.go 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
model/request/plc.go 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
model/request/plcBrand.go 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
model/request/task.go 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
model/util.go 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
model/work_order.go 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
nsq/msg_handler.go 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pkg/sqlitex/sqlitex.go 31 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service/config.go 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service/device_plc.go 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service/plc_brand.go 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service/progress.go 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
service/task.go 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
api/v1/config.go
@@ -53,14 +53,14 @@
        return
    }
    _, err := service.NewConfigService().GetNetConfig(params.Id)
    _, err := service.NewConfigService().GetNetConfig(params.ID)
    if err != nil {
        logx.Errorf("get net config error: %v", err.Error())
        ctx.FailWithMsg(ecode.DBErr, "获取网络配置失败")
        return
    }
    err = service.NewConfigService().SetNetConfig(params.Id, &params)
    err = service.NewConfigService().SetNetConfig(params.ID, &params)
    if err != nil {
        logx.Errorf("SetNetConfig error: %v", err.Error())
        ctx.FailWithMsg(ecode.DBErr, "设置失败")
api/v1/plc_brand.go
@@ -7,7 +7,7 @@
    "apsClient/pkg/ecode"
    "apsClient/service"
    "github.com/gin-gonic/gin"
    "strconv"
    "github.com/spf13/cast"
)
type PlcBrandApi struct{}
@@ -48,7 +48,7 @@
        return
    }
    id, _ := strconv.Atoi(c.Param("id"))
    id := cast.ToUint(c.Param("id"))
    errCode := service.NewPlcBrandService().DeletePlcBrand(id)
    if errCode != ecode.OK {
        ctx.Fail(errCode)
@@ -71,10 +71,10 @@
    if !ok {
        return
    }
    if params.Id == 0 {
    if params.ID == 0 {
        ctx.Fail(ecode.ParamsErr)
    }
    params.PlcBrand.Id = params.Id
    params.PlcBrand.ID = params.ID
    errCode := service.NewPlcBrandService().UpdatePlcBrand(&params.PlcBrand)
    if errCode != ecode.OK {
api/v1/task.go
@@ -9,7 +9,6 @@
    "apsClient/model/response"
    "apsClient/nsq"
    "apsClient/pkg/contextx"
    "apsClient/pkg/convertx"
    "apsClient/pkg/ecode"
    "apsClient/pkg/logx"
    "apsClient/pkg/safe"
@@ -18,7 +17,8 @@
    "errors"
    "fmt"
    "github.com/gin-gonic/gin"
    "gorm.io/gorm"
    "github.com/jinzhu/gorm"
    "github.com/spf13/cast"
    "sort"
    "sync"
    "time"
@@ -137,7 +137,7 @@
        ctx.Fail(ecode.ParamsErr)
        return
    }
    id := convertx.Atoi(idx)
    id := cast.ToUint(idx)
    procedure, code := service.NewTaskService().GetProcedureById(id)
    if code != ecode.OK {
        ctx.Fail(code)
@@ -197,7 +197,7 @@
        ctx.Fail(ecode.ParamsErr)
        return
    }
    id := convertx.Atoi(idx)
    id := cast.ToUint(idx)
    procedure, code := service.NewTaskService().GetProcedureById(id)
    if code != ecode.OK {
        ctx.Fail(code)
@@ -294,7 +294,7 @@
        return
    }
    plcConfig, code := service.NewDevicePlcService().GetDevicePlc()
    if code != ecode.OK || plcConfig.Id == 0 {
    if code != ecode.OK || plcConfig.ID == 0 {
        ctx.FailWithMsg(ecode.NeedConfirmedErr, "请先配置PLC")
        return
    }
go.mod
@@ -13,6 +13,7 @@
    github.com/gofrs/uuid v4.4.0+incompatible
    github.com/gorilla/websocket v1.5.0
    github.com/jacobsa/go-serial v0.0.0-20180131005756-15cf729a72d4
    github.com/jinzhu/gorm v1.9.16
    github.com/mitchellh/mapstructure v1.5.0
    github.com/mojocn/base64Captcha v1.3.1
    github.com/nsqio/go-nsq v1.1.0
@@ -29,9 +30,6 @@
    golang.org/x/crypto v0.12.0
    golang.org/x/sync v0.3.0
    gopkg.in/natefinch/lumberjack.v2 v2.2.1
    gorm.io/driver/sqlite v1.5.2
    gorm.io/gorm v1.25.3
    moul.io/zapgorm2 v1.3.0
)
require (
go.sum
@@ -44,14 +44,15 @@
github.com/IBM/netaddr v1.5.0/go.mod h1:DDBPeYgbFzoXHjSz9Jwk7K8wmWV4+a/Kv0LqRnb8we4=
github.com/KyleBanks/depth v1.2.1 h1:5h8fQADFrWtarTdtDudMmGsC7GPbOAu6RVB3ffsVFHc=
github.com/KyleBanks/depth v1.2.1/go.mod h1:jzSb9d0L43HxTQfT+oSA1EEp2q+ne2uh6XgeJcm8brE=
github.com/PuerkitoBio/goquery v1.5.1/go.mod h1:GsLWisAFVj4WgDibEWF4pvYnkVQBpKBKeU+7zCJoLcc=
github.com/PuerkitoBio/purell v1.1.1/go.mod h1:c11w/QuzBsJSee3cPx9rAFu61PvFxuPbtSwDGJws/X0=
github.com/PuerkitoBio/urlesc v0.0.0-20170810143723-de5bf2ad4578/go.mod h1:uGdkoq3SwY9Y+13GIhn11/XLaGBb4BfwItxLd5jeuXE=
github.com/ajankovic/xdiff v0.0.1 h1:V1cj8t5xwYzm6ZGPqPOlAc9AIajXuTEn41D/1MJBWMM=
github.com/andybalholm/cascadia v1.1.0/go.mod h1:GsXiBklL0woXo1j/WYWtSYYC4ouU9PqHO0sqidkEA4Y=
github.com/antchfx/xpath v0.0.0-20170515025933-1f3266e77307 h1:C735MoY/X+UOx6SECmHk5pVOj51h839Ph13pEoY8UmU=
github.com/apache/plc4x/plc4go v0.0.0-20230817065839-dd203446b558 h1:d3INvMf4ei9qlX10We5+z/+dQnmmCx0J0wflcZVihGo=
github.com/apache/plc4x/plc4go v0.0.0-20230817065839-dd203446b558/go.mod h1:KC3Kj7xv0dlGb5yT1+Mz9cI9YZj1RD19cr8TyqfnBDU=
github.com/benbjohnson/clock v1.1.0 h1:Q92kusRqC1XV2MjkWETPvjJVqKetz1OzxZB7mHJLju8=
github.com/benbjohnson/clock v1.1.0/go.mod h1:J11/hYXuz8f4ySSvYwY0FKfm+ezbsZBKZxNJlLklBHA=
github.com/bytedance/sonic v1.5.0/go.mod h1:ED5hyg4y6t3/9Ku1R6dU/4KyJ48DZ4jPhfY1O2AihPM=
github.com/bytedance/sonic v1.9.1 h1:6iJ6NqdoxCDr6mbY8h18oSO+cShGSMRGCEo7F2h0x8s=
github.com/bytedance/sonic v1.9.1/go.mod h1:i736AoUSYt75HyZLoJW9ERYxcy6eaN6h4BZXU064P/U=
@@ -76,6 +77,8 @@
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/dchest/uniuri v1.2.0 h1:koIcOUdrTIivZgSLhHQvKgqdWZq5d7KdMEWF1Ud6+5g=
github.com/dchest/uniuri v1.2.0/go.mod h1:fSzm4SLHzNZvWLvWJew423PhAzkpNQYq+uNLq4kxhkY=
github.com/denisenkom/go-mssqldb v0.0.0-20191124224453-732737034ffd h1:83Wprp6ROGeiHFAP8WJdI2RoxALQYgdllERc3N5N2DM=
github.com/denisenkom/go-mssqldb v0.0.0-20191124224453-732737034ffd/go.mod h1:xbL0rPBG9cCiLr28tMa8zpbdarY27NDyej4t/EjAShU=
github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f h1:lO4WD4F/rVNCu3HqELle0jiPLLBs70cWOduZpkS1E78=
github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f/go.mod h1:cuUVRXasLTGF7a8hSLbxyZXjz+1KgoB3wDUb6vlszIc=
github.com/envoyproxy/go-control-plane v0.9.0/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4=
@@ -84,6 +87,8 @@
github.com/envoyproxy/go-control-plane v0.9.7/go.mod h1:cwu0lG7PUMfa9snN8LXBig5ynNVH9qI8YYLbd1fK2po=
github.com/envoyproxy/go-control-plane v0.9.9-0.20201210154907-fd9021fe5dad/go.mod h1:cXg6YxExXjJnVBQHBLXeUAgxn2UodCpnH306RInaBQk=
github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c=
github.com/erikstmartin/go-testdb v0.0.0-20160219214506-8d10e4a1bae5 h1:Yzb9+7DPaBjB8zlTR87/ElzFsnQfuHnVUVqpZZIcV5Y=
github.com/erikstmartin/go-testdb v0.0.0-20160219214506-8d10e4a1bae5/go.mod h1:a2zkGnVExMxdzMo3M0Hi/3sEU+cWnZpSni0O6/Yb/P0=
github.com/frankban/quicktest v1.14.4 h1:g2rn0vABPOOXmZUj+vbmUp0lPoXEMuhTpIluN0XL9UY=
github.com/fsnotify/fsnotify v1.4.7/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMoQvtojpjFo=
github.com/fsnotify/fsnotify v1.4.9/go.mod h1:znqG4EE+3YCdAaPaxE2ZRY/06pZUdp0tY4IgpuI1SZQ=
@@ -130,6 +135,8 @@
github.com/go-playground/validator/v10 v10.14.0/go.mod h1:9iXMNT7sEkjXb0I+enO7QXmzG6QCsPWY4zveKFVRSyU=
github.com/go-redis/redis/v8 v8.11.4 h1:kHoYkfZP6+pe04aFTnhDH6GDROa5yJdHJVNxV3F46Tg=
github.com/go-redis/redis/v8 v8.11.4/go.mod h1:2Z2wHZXdQpCDXEGzqMockDpNyYvi2l4Pxt6RJr792+w=
github.com/go-sql-driver/mysql v1.5.0/go.mod h1:DCzpHaOWr8IXmIStZouvnhqoel9Qv2LBy8hT2VhHyBg=
github.com/go-sql-driver/mysql v1.6.0 h1:BCTh4TKNUYmOmMUcQ3IipzF5prigylS7XXjEkfCHuOE=
github.com/go-task/slim-sprig v0.0.0-20210107165309-348f09dbbbc0/go.mod h1:fyg7847qk6SyHyPtNmDHnmrv/HOrqktSC+C9fM+CJOE=
github.com/goburrow/modbus v0.1.0 h1:DejRZY73nEM6+bt5JSP6IsFolJ9dVcqxsYbpLbeW/ro=
github.com/goburrow/modbus v0.1.0/go.mod h1:Kx552D5rLIS8E7TyUwQ/UdHEqvX5T8tyiGBTlzMcZBg=
@@ -141,6 +148,8 @@
github.com/godbus/dbus/v5 v5.0.4/go.mod h1:xhWf0FNVPg57R7Z0UbKHbJfkEywrmjJnf7w5xrFpKfA=
github.com/gofrs/uuid v4.4.0+incompatible h1:3qXRTX8/NbyulANqlc0lchS1gqAVxRgsuW1YrTJupqA=
github.com/gofrs/uuid v4.4.0+incompatible/go.mod h1:b2aQJv3Z4Fp6yNu3cdSllBxTCLRxnplIgP/c0N/04lM=
github.com/golang-sql/civil v0.0.0-20190719163853-cb61b32ac6fe h1:lXe2qZdvpiX5WZkZR4hgp4KJVfY3nMkvmwbVkpv1rVY=
github.com/golang-sql/civil v0.0.0-20190719163853-cb61b32ac6fe/go.mod h1:8vg3r2VgvsThLBIFL93Qb5yWzgyZWhEmBwUJWevAkK0=
github.com/golang/freetype v0.0.0-20170609003504-e2365dfdc4a0 h1:DACJavvAHhabrF08vX0COfcOBJRhZ8lUbR+ZWIs0Y5g=
github.com/golang/freetype v0.0.0-20170609003504-e2365dfdc4a0/go.mod h1:E/TSTwGwJL78qG/PmXZO1EjYhfJinVAhrmmHX6Z8B9k=
github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfUlaOkMMuAQtPIUF8ecWP5IEl/CR7VP2Q=
@@ -224,9 +233,11 @@
github.com/icza/mighty v0.0.0-20180919140131-cfd07d671de6/go.mod h1:xQig96I1VNBDIWGCdTt54nHt6EeI639SmHycLYL7FkA=
github.com/jacobsa/go-serial v0.0.0-20180131005756-15cf729a72d4 h1:G2ztCwXov8mRvP0ZfjE6nAlaCX2XbykaeHdbT6KwDz0=
github.com/jacobsa/go-serial v0.0.0-20180131005756-15cf729a72d4/go.mod h1:2RvX5ZjVtsznNZPEt4xwJXNJrM3VTZoQf7V6gk0ysvs=
github.com/jinzhu/gorm v1.9.16 h1:+IyIjPEABKRpsu/F8OvDPy9fyQlgsg2luMV2ZIH5i5o=
github.com/jinzhu/gorm v1.9.16/go.mod h1:G3LB3wezTOWM2ITLzPxEXgSkOXAntiLHS7UdBefADcs=
github.com/jinzhu/inflection v1.0.0 h1:K317FqzuhWc8YvSVlFMCCUb36O/S9MCKRDI7QkRKD/E=
github.com/jinzhu/inflection v1.0.0/go.mod h1:h+uFLlag+Qp1Va5pdKtLDYj+kHp5pxUVkryuEj+Srlc=
github.com/jinzhu/now v1.1.4/go.mod h1:d3SSVoowX0Lcu0IBviAWJpolVfI5UJVZZ7cO71lE/z8=
github.com/jinzhu/now v1.0.1/go.mod h1:d3SSVoowX0Lcu0IBviAWJpolVfI5UJVZZ7cO71lE/z8=
github.com/jinzhu/now v1.1.5 h1:/o9tlHleP7gOFmsnYNz3RGnqzefHA47wQpKrrdTIwXQ=
github.com/jinzhu/now v1.1.5/go.mod h1:d3SSVoowX0Lcu0IBviAWJpolVfI5UJVZZ7cO71lE/z8=
github.com/josharian/intern v1.0.0 h1:vlS4z54oSdjm0bgjRigI+G1HpF+tI+9rE5LLzOg8HmY=
@@ -251,6 +262,8 @@
github.com/leodido/go-urn v1.2.1/go.mod h1:zt4jvISO2HfUBqxjfIshjdMTYS56ZS/qv49ictyFfxY=
github.com/leodido/go-urn v1.2.4 h1:XlAE/cm/ms7TE/VMVoduSpNBoyc2dOxHs5MZSwAN63Q=
github.com/leodido/go-urn v1.2.4/go.mod h1:7ZrI8mTSeBSHl/UaRyKQW1qZeMgak41ANeCNaVckg+4=
github.com/lib/pq v1.1.1 h1:sJZmqHoEaY7f+NPP8pgLB/WxulyR3fewgCM2qaSlBb4=
github.com/lib/pq v1.1.1/go.mod h1:5WUZQaWbwv1U+lTReE5YruASi9Al49XbQIvNi/34Woo=
github.com/libp2p/go-reuseport v0.4.0 h1:nR5KU7hD0WxXCJbmw7r2rhRYruNRl2koHw8fQscQm2s=
github.com/libp2p/go-reuseport v0.4.0/go.mod h1:ZtI03j/wO5hZVDFo2jKywN6bYKWLOy8Se6DrI2E1cLU=
github.com/magiconair/properties v1.8.7 h1:IeQXZAiQcpL9mgcAe1Nu6cX9LLw6ExEHKjN0VQdvPDY=
@@ -267,6 +280,7 @@
github.com/mattn/go-isatty v0.0.16/go.mod h1:kYGgaQfpe5nmfYZH+SKPsOc2e4SrIfOl2e/yFXSvRLM=
github.com/mattn/go-isatty v0.0.19 h1:JITubQf0MOLdlGRuRq+jtsDlekdYPia9ZFsB8h/APPA=
github.com/mattn/go-isatty v0.0.19/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y=
github.com/mattn/go-sqlite3 v1.14.0/go.mod h1:JIl7NbARA7phWnGvh0LKTyg7S9BA+6gx71ShQilpsus=
github.com/mattn/go-sqlite3 v1.14.17 h1:mCRHCLDUBXgpKAqIKsaAaAsrAlbkeomtRFKXh2L6YIM=
github.com/mattn/go-sqlite3 v1.14.17/go.mod h1:2eHXhiwb8IkHr+BDWZGa96P6+rkvnG63S2DGjv9HUNg=
github.com/mitchellh/mapstructure v1.5.0 h1:jeMsZIYE/09sWLaz43PL7Gy6RuMjD2eJVyuac5Z2hdY=
@@ -297,7 +311,6 @@
github.com/pelletier/go-toml/v2 v2.0.8 h1:0ctb6s9mE31h0/lhu+J6OPmVeDxJn+kYnJc2jZR9tGQ=
github.com/pelletier/go-toml/v2 v2.0.8/go.mod h1:vuYfssBdrU2XDZ9bYydBu6t+6a6PYNcZljzZR9VXg+4=
github.com/pkg/diff v0.0.0-20210226163009-20ebb0f2a09e/go.mod h1:pJLUxLENpZxwdsKMEsNbx1VGcRFpLqf3715MtcvvzbA=
github.com/pkg/errors v0.8.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4=
github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
github.com/pkg/sftp v1.13.1/go.mod h1:3HaPG6Dq1ILlpPZRO0HVMrsydcdLt6HRDccSgb87qRg=
@@ -366,7 +379,6 @@
github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
github.com/yuin/goldmark v1.1.32/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
github.com/yuin/goldmark v1.3.5/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k=
github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY=
go.opencensus.io v0.21.0/go.mod h1:mSImk1erAIZhrmZN+AvHh14ztQfjbGwt4TtuofqLduU=
go.opencensus.io v0.22.0/go.mod h1:+kGneAE2xo2IficOXnaByMWTGM9T73dGwxeWcUqIpI8=
@@ -378,21 +390,19 @@
go.uber.org/atomic v1.9.0 h1:ECmE8Bn/WFTYwEW/bpKD3M8VtR/zQVbavAoalC1PYyE=
go.uber.org/atomic v1.9.0/go.mod h1:fEN4uk6kAWBTFdckzkM89CLk9XfWZrxpCo0nPH17wJc=
go.uber.org/goleak v1.1.11 h1:wy28qYRKZgnJTxGxvye5/wgWr1EKjmUDGYox5mGlRlI=
go.uber.org/goleak v1.1.11/go.mod h1:cwTWslyiVhfpKIDGSZEM2HlOvcqm+tG4zioyIeLoqMQ=
go.uber.org/multierr v1.6.0/go.mod h1:cdWPpRnG4AhwMwsgIHip0KRBQjJy5kYEpYjJxpXp9iU=
go.uber.org/multierr v1.7.0/go.mod h1:7EAYxJLBy9rStEaz58O2t4Uvip6FSURkq8/ppBp95ak=
go.uber.org/multierr v1.8.0 h1:dg6GjLku4EH+249NNmoIciG9N/jURbDG+pFlTkhzIC8=
go.uber.org/multierr v1.8.0/go.mod h1:7EAYxJLBy9rStEaz58O2t4Uvip6FSURkq8/ppBp95ak=
go.uber.org/zap v1.21.0/go.mod h1:wjWOCqI0f2ZZrJF/UufIOkiC8ii6tm1iqIsLo76RfJw=
go.uber.org/zap v1.24.0 h1:FiJd5l1UOLj0wCgbSE0rwwXHzEdAZS6hiiSnxJN/D60=
go.uber.org/zap v1.24.0/go.mod h1:2kMP+WWQ8aoFoedH3T2sq6iJ2yDWpHbP0f6MQbS9Gkg=
golang.org/x/arch v0.0.0-20210923205945-b76863e36670/go.mod h1:5om86z9Hs0C8fWVUuoMHwpExlXzs5Tkyp9hOrfG7pp8=
golang.org/x/arch v0.3.0 h1:02VY4/ZcO/gBOH6PUaoiptASxtXU10jazRCP865E97k=
golang.org/x/arch v0.3.0/go.mod h1:5om86z9Hs0C8fWVUuoMHwpExlXzs5Tkyp9hOrfG7pp8=
golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
golang.org/x/crypto v0.0.0-20190325154230-a5d413f7728c/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
golang.org/x/crypto v0.0.0-20190510104115-cbcb75029529/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=
golang.org/x/crypto v0.0.0-20190605123033-f99c8df09eb5/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=
golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=
golang.org/x/crypto v0.0.0-20191205180655-e7c4368fe9dd/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
golang.org/x/crypto v0.0.0-20210421170649-83a5a9bb288b/go.mod h1:T9bdIzuCu7OtxOm1hfPfRQxPLYneinmdGuTeoZ9dtd4=
golang.org/x/crypto v0.0.0-20210711020723-a769d52b0f97/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc=
@@ -438,9 +448,9 @@
golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
golang.org/x/mod v0.4.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
golang.org/x/mod v0.4.1/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
golang.org/x/mod v0.4.2/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4=
golang.org/x/mod v0.12.0 h1:rmsUpXtvNzj340zd98LZ4KntptpfRHwpFOHG188oHXc=
golang.org/x/net v0.0.0-20180218175443-cbe0f9307d01/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
golang.org/x/net v0.0.0-20180906233101-161cd47e91fd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
@@ -474,7 +484,6 @@
golang.org/x/net v0.0.0-20201209123823-ac852fbbde11/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg=
golang.org/x/net v0.0.0-20201224014010-6772e930b67b/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg=
golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg=
golang.org/x/net v0.0.0-20210405180319-a5a99cb37ef4/go.mod h1:p54w0d4576C0XHj96bSt6lcn1PtDYWL6XObtHCRCNQM=
golang.org/x/net v0.0.0-20210421230115-4e50805a0758/go.mod h1:72T/g9IO56b78aLF+1Kcs5dz7/ng1VjMUvfKvpfy+jM=
golang.org/x/net v0.0.0-20210428140749-89ef3d95e781/go.mod h1:OJAsFXCWl8Ukc7SiCT/9KSuxbyM7479/AVlXFRxuMCk=
golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=
@@ -501,7 +510,6 @@
golang.org/x/sync v0.0.0-20200625203802-6e8e738ad208/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20201207232520-09787c993a3a/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20210220032951-036812b2e83c/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.3.0 h1:ftCYgMx6zT/asHUrPw8BLLscYtGznsLAnjq5RH9P66E=
golang.org/x/sync v0.3.0/go.mod h1:FU7BRWz2tNW+3quACPkgCx/L+uEAv1htQ0V83Z9Rj+Y=
@@ -542,11 +550,9 @@
golang.org/x/sys v0.0.0-20210112080510-489259a85091/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20210119212857-b64e53b001e4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20210225134936-a50acf3fe073/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20210330210617-4fbd30eecc44/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20210420072515-93ed5bcd2bfe/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20210423185535-09eb48e85fd7/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20210510120138-977fb7262007/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20210630005230-0f9fa26af87c/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20210806184541-e5e7981a1069/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
@@ -625,7 +631,6 @@
golang.org/x/tools v0.0.0-20210105154028-b0ab187a4818/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA=
golang.org/x/tools v0.0.0-20210108195828-e2f9c7f1fc8e/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA=
golang.org/x/tools v0.1.0/go.mod h1:xkSsbof2nBLbhDlRMhhhyNLN/zl3eTqcnHD5viDpcZ0=
golang.org/x/tools v0.1.5/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk=
golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc=
golang.org/x/tools v0.12.0 h1:YW6HUoUmYBpwSgyaGaZq1fHjrBjX1rlpZ54T6mu2kss=
golang.org/x/tools v0.12.0/go.mod h1:Sc0INKfu04TlqNoRA1hgpFZbhYXHPr4V5DzpSBTPqQM=
@@ -741,7 +746,6 @@
gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7/go.mod h1:dt/ZhP58zS4L8KSrWDmTeBkI65Dw0HsyUHuEVlX15mw=
gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
gopkg.in/yaml.v2 v2.2.4/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
gopkg.in/yaml.v2 v2.2.8/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
gopkg.in/yaml.v2 v2.3.0/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
gopkg.in/yaml.v2 v2.4.0 h1:D8xgwECY7CYvx+Y2n4sBz93Jn9JRvxdiyyo8CTfuKaY=
gopkg.in/yaml.v2 v2.4.0/go.mod h1:RDklbk79AGWmwhnvt/jBztapEOGDOx6ZbXqjP6csGnQ=
@@ -750,11 +754,6 @@
gopkg.in/yaml.v3 v3.0.0-20210107192922-496545a6307b/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
gorm.io/driver/sqlite v1.5.2 h1:TpQ+/dqCY4uCigCFyrfnrJnrW9zjpelWVoEVNy5qJkc=
gorm.io/driver/sqlite v1.5.2/go.mod h1:qxAuCol+2r6PannQDpOP1FP6ag3mKi4esLnB/jHed+4=
gorm.io/gorm v1.23.6/go.mod h1:l2lP/RyAtc1ynaTjFksBde/O8v9oOGIApu2/xRitmZk=
gorm.io/gorm v1.25.3 h1:zi4rHZj1anhZS2EuEODMhDisGy+Daq9jtPrNGgbQYD8=
gorm.io/gorm v1.25.3/go.mod h1:L4uxeKpfBml98NYqVqwAdmV1a2nBtAec/cf3fpucW/k=
honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=
honnef.co/go/tools v0.0.0-20190106161140-3f1c8253044a/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=
honnef.co/go/tools v0.0.0-20190418001031-e561f6794a2a/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=
@@ -762,8 +761,6 @@
honnef.co/go/tools v0.0.1-2019.2.3/go.mod h1:a3bituU0lyd329TUQxRnasdCoJDkEUEAqEt0JzvZhAg=
honnef.co/go/tools v0.0.1-2020.1.3/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k=
honnef.co/go/tools v0.0.1-2020.1.4/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k=
moul.io/zapgorm2 v1.3.0 h1:+CzUTMIcnafd0d/BvBce8T4uPn6DQnpIrz64cyixlkk=
moul.io/zapgorm2 v1.3.0/go.mod h1:nPVy6U9goFKHR4s+zfSo1xVFaoU7Qgd5DoCdOfzoCqs=
rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8=
rsc.io/pdf v0.1.1/go.mod h1:n8OzWcQ6Sp37PL01nO98y4iUCRdTGarVfzxY20ICaU4=
rsc.io/quote/v3 v3.1.0/go.mod h1:yEA65RcK8LyAZtP9Kv3t0HmxON59tX3rD+tICJqUlj0=
model/device.go
@@ -3,14 +3,14 @@
import (
    "apsClient/pkg/sqlitex"
    "fmt"
    "gorm.io/gorm"
    "github.com/jinzhu/gorm"
    "strings"
)
type (
    // Device 设备
    Device struct {
        gorm.Model       `json:"-"`
        gorm.Model
        DeviceID         string   `gorm:"unique;column:device_id;type:varchar(255);not null;default '';comment:设备编号" json:"deviceID"` //设备编号
        ExtChannelAmount int      `gorm:"type:tinyint;comment:额外的通道数量;default:0;" json:"extChannelAmount"`
        Procedures       string   `gorm:"column:procedure;type:varchar(255);not null;default '';comment:工序" json:"procedures"` //设备支持的工序,用逗号分隔
model/device_plc.go
@@ -5,17 +5,16 @@
    "apsClient/pkg/sqlitex"
    "encoding/json"
    "fmt"
    "gorm.io/gorm"
    "github.com/jinzhu/gorm"
)
type (
    // DevicePlc 设备的PLC配置
    DevicePlc struct {
        gorm.Model `json:"-"`
        Id         int                `gorm:"primarykey;type:int;" json:"id"`
        Brand      string             `gorm:"type:varchar(191);comment:PLC品牌" json:"brand"`
        Method     constvar.PlcMethod `gorm:"type:varchar(191);comment:接口方式" json:"method"`
        gorm.Model
        Brand  string             `gorm:"type:varchar(191);comment:PLC品牌" json:"brand"`
        Method constvar.PlcMethod `gorm:"type:varchar(191);comment:接口方式" json:"method"`
        //PortName   string `gorm:"type:varchar(191);comment:端口名称" json:"portName"`
        //Frequency  int    `gorm:"comment:数据更新频率 0-实时更新 1-1次/秒" json:"frequency"`
        Address    string `gorm:"type:varchar(191);comment:PLC地址" json:"address"` //plc ip地址, method = modbusTCP用
@@ -82,16 +81,16 @@
    return slf
}
func (slf *DevicePlcSearch) SetId(id int) *DevicePlcSearch {
    slf.Id = id
func (slf *DevicePlcSearch) SetId(id uint) *DevicePlcSearch {
    slf.ID = id
    return slf
}
func (slf *DevicePlcSearch) build() *gorm.DB {
    var db = slf.Orm.Table(slf.TableName())
    if slf.Id > 0 {
        db = db.Where("id = ?", slf.Id)
    if slf.ID > 0 {
        db = db.Where("id = ?", slf.ID)
    }
    if slf.Order != "" {
model/index.go
@@ -8,20 +8,18 @@
)
func Init() error {
    if err := sqlitex.Init(&conf.Conf.Sqlite, logx.GetLogger()); err != nil {
    if err := sqlitex.Init(&conf.Conf.Sqlite); err != nil {
        return err
    }
    if err := RegisterTables(); err != nil {
        return err
    }
    RegisterTables()
    InsertDefaultData()
    return nil
}
func RegisterTables() error {
func RegisterTables() {
    db := sqlitex.GetDB()
    err := db.AutoMigrate(
    db.AutoMigrate(
        Order{},
        Procedures{},
        NetConfig{},
@@ -31,7 +29,6 @@
        ProductionProgress{},
        Device{},
    )
    return err
}
type InitDefaultData interface {
model/net_config.go
@@ -3,14 +3,13 @@
import (
    "apsClient/pkg/sqlitex"
    "fmt"
    "gorm.io/gorm"
    "github.com/jinzhu/gorm"
    "sync"
)
type (
    NetConfig struct {
        gorm.Model  `json:"-"`
        Id          int             `gorm:"primarykey;type:int;" json:"id"`
        gorm.Model
        NetworkCard string          `gorm:"type:varchar(100);not null;default '';comment:网卡" json:"networkCard" binding:"required"` //网卡
        IP          string          `gorm:"type:varchar(100);not null;default '';comment:本机ip" json:"ip" binding:"required"`        //本机ip
        MASK        string          `gorm:"type:varchar(100);not null;default '';comment:子网掩码" json:"mask" binding:"required"`      //子网掩码
@@ -53,15 +52,15 @@
    return slf
}
func (slf *NetConfigSearch) SetId(id int) *NetConfigSearch {
    slf.Id = id
func (slf *NetConfigSearch) SetId(id uint) *NetConfigSearch {
    slf.ID = id
    return slf
}
func (slf *NetConfigSearch) build() *gorm.DB {
    var db = slf.Orm.Model(&NetConfig{})
    if slf.Id > 0 {
        db = db.Where("id = ?", slf.Id)
    if slf.ID > 0 {
        db = db.Where("id = ?", slf.ID)
    }
    return db
}
@@ -193,7 +192,6 @@
    }
    records := []*NetConfig{
        {
            Id:          1,
            NetworkCard: "enp3s0",
            IP:          "",
            MASK:        "",
@@ -202,7 +200,6 @@
            Status:      0,
        },
        {
            Id:          2,
            NetworkCard: "enp2s0",
            IP:          "",
            MASK:        "",
model/plc_brand.go
@@ -5,14 +5,14 @@
    "apsClient/pkg/sqlitex"
    "errors"
    "fmt"
    "gorm.io/gorm"
    "github.com/jinzhu/gorm"
    "sync"
)
type (
    // PlcBrand plc品牌
    PlcBrand struct {
        Id   int    `json:"id" gorm:"column:id;type:int;primary_key;AUTO_INCREMENT"`
        gorm.Model
        Name string `json:"name" gorm:"column:name;type:varchar(255);not null;default:'';comment:名称"`
    }
@@ -40,8 +40,8 @@
func (slf *PlcBrandSearch) build() *gorm.DB {
    var db = slf.Orm.Model(&PlcBrand{})
    if slf.Id != 0 {
        db = db.Where("id = ?", slf.Id)
    if slf.ID != 0 {
        db = db.Where("id = ?", slf.ID)
    }
    return db
@@ -74,8 +74,8 @@
    return record, err
}
func (slf *PlcBrandSearch) SetId(id int) *PlcBrandSearch {
    slf.Id = id
func (slf *PlcBrandSearch) SetId(id uint) *PlcBrandSearch {
    slf.ID = id
    return slf
}
@@ -102,7 +102,7 @@
}
func (slf *PlcBrandSearch) Save(record *PlcBrand) error {
    if record.Id == 0 {
    if record.ID == 0 {
        return errors.New("id为空")
    }
    var db = slf.build()
@@ -145,9 +145,9 @@
        return
    }
    records := []*PlcBrand{
        {1, "欧姆龙"},
        {2, "西门子"},
        {3, "松下"},
        {Name: "欧姆龙"},
        {Name: "西门子"},
        {Name: "松下"},
    }
    err := slf.CreateBatch(records)
    if err != nil {
model/procedures.go
@@ -6,14 +6,12 @@
    "apsClient/pkg/sqlitex"
    "encoding/json"
    "fmt"
    "gorm.io/gorm"
    "gorm.io/gorm/clause"
    "github.com/jinzhu/gorm"
)
type (
    Procedures struct {
        gorm.Model     `json:"-"`
        ID             int    `gorm:"primarykey"`
        gorm.Model
        WorkOrderID    string `gorm:"index;type:varchar(191);not null;comment:工单ID" json:"-"`
        OrderID        string `gorm:"index;type:varchar(191);not null;comment:订单ID" json:"-"`
        DeviceID       string `gorm:"index;type:varchar(191);comment:设备ID" json:"deviceId"`
@@ -105,7 +103,7 @@
    return slf
}
func (slf *ProceduresSearch) SetId(id int) *ProceduresSearch {
func (slf *ProceduresSearch) SetId(id uint) *ProceduresSearch {
    slf.ID = id
    return slf
}
@@ -221,10 +219,11 @@
    old, err := slf.First()
    if err != gorm.ErrRecordNotFound && old.ID != 0 {
        record.ID = old.ID
        err = db.Save(&record).Error
    } else {
        err = db.Create(&record).Error
    }
    if err := db.Clauses(clause.OnConflict{
        UpdateAll: true,
    }).Create(&record).Error; err != nil {
    if err != nil {
        return fmt.Errorf("save err: %v, record: %+v", err, record)
    }
model/process_model.go
@@ -5,21 +5,21 @@
    "apsClient/pkg/sqlitex"
    "encoding/json"
    "fmt"
    "gorm.io/gorm"
    "github.com/jinzhu/gorm"
)
type (
    // ProcessModel 工艺参数
    ProcessModel struct {
        gorm.Model `json:"-"`
        Number     string                 `gorm:"index;column:number;type:varchar(255);not null;default '';comment:工艺模型编号" json:"number"` //工艺模型编号
        Product    string                 `gorm:"column:product;type:varchar(255);not null;default '';comment:产品名称" json:"product"`       //产品名称
        Procedure  string                 `gorm:"column:procedure;type:varchar(255);not null;default '';comment:工序" json:"procedure"`     //工序
        Params     string                 `gorm:"type:text;comment:工艺参数键值对json串"`
        ParamsMap  map[string]interface{} `json:"paramsMap" gorm:"-"`
        DeviceId   string                 `json:"deviceId" gorm:"-"`                        //用于过滤获取nsq消息
        IsNew      bool                   `json:"isNew" gorm:"column:is_new;comment:是否最新的"` //是否最新的
        IsUpdate   bool                   `json:"isUpdate" gorm:"-"`                        //前端用
        gorm.Model
        Number    string                 `gorm:"index;column:number;type:varchar(255);not null;default '';comment:工艺模型编号" json:"number"` //工艺模型编号
        Product   string                 `gorm:"column:product;type:varchar(255);not null;default '';comment:产品名称" json:"product"`       //产品名称
        Procedure string                 `gorm:"column:procedure;type:varchar(255);not null;default '';comment:工序" json:"procedure"`     //工序
        Params    string                 `gorm:"type:text;comment:工艺参数键值对json串"`
        ParamsMap map[string]interface{} `json:"paramsMap" gorm:"-"`
        DeviceId  string                 `json:"deviceId" gorm:"-"`                        //用于过滤获取nsq消息
        IsNew     bool                   `json:"isNew" gorm:"column:is_new;comment:是否最新的"` //是否最新的
        IsUpdate  bool                   `json:"isUpdate" gorm:"-"`                        //前端用
    }
    ProcessModelSearch struct {
model/production_progress.go
@@ -3,13 +3,12 @@
import (
    "apsClient/pkg/sqlitex"
    "fmt"
    "gorm.io/gorm"
    "github.com/jinzhu/gorm"
)
type (
    ProductionProgress struct {
        gorm.Model       `json:"-"`
        ID               int    `gorm:"primarykey"`
        gorm.Model
        WorkOrderID      string `gorm:"index;type:varchar(191);not null;comment:工单ID" json:"workOrderID"`
        OrderID          string `gorm:"index;type:varchar(191);not null;comment:订单ID" json:"orderID"`
        ProcedureID      string `gorm:"type:varchar(191);comment:工序ID" json:"procedureId"`
@@ -69,7 +68,7 @@
    return slf
}
func (slf *ProductionProgressSearch) SetId(id int) *ProductionProgressSearch {
func (slf *ProductionProgressSearch) SetId(id uint) *ProductionProgressSearch {
    slf.ID = id
    return slf
}
model/request/plc.go
@@ -9,6 +9,6 @@
}
type UpdatePlc struct {
    Id int `json:"id"`
    Id uint `json:"id"`
    model.DevicePlc
}
model/request/plcBrand.go
@@ -10,7 +10,7 @@
}
type UpdatePlcBrand struct {
    Id int `json:"id"`
    Id uint `json:"id"`
    model.PlcBrand
}
model/request/task.go
@@ -18,7 +18,7 @@
}
type SendProcessParams struct {
    ProcedureId int   `json:"procedureId" binding:"required"`
    ProcedureId uint  `json:"procedureId" binding:"required"`
    Channel     int32 `json:"channel"`
}
@@ -30,6 +30,6 @@
// ProcessModelList 工艺参数列表请求参数
type ProcessModelList struct {
    PageInfo
    ProcedureId int    `json:"procedureId" form:"procedureId" binding:"required"` //当前的工序id
    ProcedureId uint   `json:"procedureId" form:"procedureId" binding:"required"` //当前的工序id
    Number      string `json:"number" form:"number"  binding:"required"`          //当前正在使用的工艺参数编号
}
model/util.go
@@ -3,7 +3,7 @@
import (
    "apsClient/pkg/sqlitex"
    "fmt"
    "gorm.io/gorm"
    "github.com/jinzhu/gorm"
)
// WithTransaction : var funcs []func(db *gorm.DB) error,把相关函数添加进去
model/work_order.go
@@ -3,13 +3,13 @@
import (
    "apsClient/pkg/sqlitex"
    "fmt"
    "github.com/jinzhu/gorm"
    "github.com/shopspring/decimal"
    "gorm.io/gorm"
)
type (
    Order struct {
        gorm.Model  `json:"-"`
        gorm.Model
        WorkOrderID string          `gorm:"index;type:varchar(191);not null;comment:工单ID" json:"workOrderId"`
        OrderID     string          `gorm:"index;type:varchar(191);not null;comment:订单ID" json:"orderId"`
        ProductID   string          `gorm:"type:varchar(191);comment:产品ID" json:"productId"`
nsq/msg_handler.go
@@ -11,9 +11,9 @@
    "apsClient/utils/file"
    "encoding/json"
    "fmt"
    "github.com/jinzhu/gorm"
    "github.com/mitchellh/mapstructure"
    "github.com/spf13/cast"
    "gorm.io/gorm"
    "strings"
)
@@ -170,8 +170,8 @@
    }
    detail, err := json.Marshal(record.Details)
    record.Detail = string(detail)
    record.Id = 1
    err = model.NewDevicePlcSearch().SetId(record.Id).Save(&record)
    record.ID = 1
    err = model.NewDevicePlcSearch().SetId(record.ID).Save(&record)
    if err != nil {
        return err
    }
pkg/sqlitex/sqlitex.go
@@ -1,12 +1,8 @@
package sqlitex
import (
    "go.uber.org/zap"
    "gorm.io/driver/sqlite"
    "gorm.io/gorm"
    "gorm.io/gorm/logger"
    "gorm.io/gorm/schema"
    "moul.io/zapgorm2"
    "github.com/jinzhu/gorm"
    _ "github.com/jinzhu/gorm/dialects/sqlite"
    "time"
)
@@ -22,33 +18,18 @@
var openDb *gorm.DB
func Init(conf *Conf, log *zap.Logger) error {
    gConfig := &gorm.Config{
        PrepareStmt: true,
        NamingStrategy: schema.NamingStrategy{
            TablePrefix:   "",
            SingularTable: true,
        },
        DisableForeignKeyConstraintWhenMigrating: true,
    }
    dbLogger := zapgorm2.New(log).LogMode(logger.Info)
    if !conf.LogMode {
        dbLogger = dbLogger.LogMode(logger.Silent)
    }
    gConfig.Logger = dbLogger
    db, err := gorm.Open(sqlite.Open(conf.Dsn), gConfig)
func Init(conf *Conf) error {
    db, err := gorm.Open("sqlite3", conf.Dsn)
    if err != nil {
        return err
    }
    sqlDb, err := db.DB()
    if err != nil {
        return err
    }
    sqlDb := db.DB()
    sqlDb.SetMaxIdleConns(int(conf.MaxIdleCon))
    sqlDb.SetMaxOpenConns(int(conf.MaxOpenCon))
    sqlDb.SetConnMaxLifetime(time.Duration(conf.ConnMaxLifeTimeSecond) * time.Second)
    sqlDb.SetConnMaxIdleTime(time.Duration(conf.ConnMaxIdleTimeSecond) * time.Second)
    openDb = db
    db.LogMode(true)
    return nil
}
service/config.go
@@ -17,11 +17,11 @@
}
// GetNetConfig 获取网络配置
func (slf ConfigService) GetNetConfig(id int) (ConfigData *model.NetConfig, err error) {
func (slf ConfigService) GetNetConfig(id uint) (ConfigData *model.NetConfig, err error) {
    return model.NewNetConfigSearch(nil).SetId(id).First()
}
// SetNetConfig 设置网络配置
func (slf ConfigService) SetNetConfig(id int, config *model.NetConfig) error {
func (slf ConfigService) SetNetConfig(id uint, config *model.NetConfig) error {
    return model.NewNetConfigSearch(nil).SetId(id).Save(config)
}
service/device_plc.go
@@ -8,7 +8,7 @@
    "apsClient/pkg/structx"
    "encoding/json"
    "errors"
    "gorm.io/gorm"
    "github.com/jinzhu/gorm"
)
type DevicePlcService struct{}
@@ -21,7 +21,6 @@
    DevicePlc, err := model.NewDevicePlcSearch().SetOrder("id desc").First()
    if err == gorm.ErrRecordNotFound {
        return &model.DevicePlc{
            Id:         0,
            Brand:      "",
            Method:     "",
            Address:    "",
@@ -42,7 +41,7 @@
func (slf DevicePlcService) GetDeviceChannelAmount() (int, error) {
    plcConfig, code := slf.GetDevicePlc()
    if code != ecode.OK || plcConfig.Id == 0 {
    if code != ecode.OK || plcConfig.ID == 0 {
        return 0, errors.New("未获取到PLC地址,请在工艺模型库中上传!")
    }
    if len(plcConfig.Details) == 0 {
service/plc_brand.go
@@ -21,7 +21,7 @@
    return ecode.OK
}
func (PlcBrandService) GetPlcBrand(id int) (*model.PlcBrand, int) {
func (PlcBrandService) GetPlcBrand(id uint) (*model.PlcBrand, int) {
    plcBrand, err := model.NewPlcBrandSearch().SetId(id).First()
    if err != nil {
        return nil, ecode.DBErr
@@ -30,7 +30,7 @@
    return plcBrand, ecode.OK
}
func (PlcBrandService) DeletePlcBrand(id int) int {
func (PlcBrandService) DeletePlcBrand(id uint) int {
    err := model.NewPlcBrandSearch().SetId(id).Delete()
    if err != nil {
        return ecode.DBErr
@@ -65,7 +65,7 @@
}
func (PlcBrandService) UpdatePlcBrand(plcBrand *model.PlcBrand) int {
    err := model.NewPlcBrandSearch().SetId(plcBrand.Id).Save(plcBrand)
    err := model.NewPlcBrandSearch().SetId(plcBrand.ID).Save(plcBrand)
    if err != nil {
        return ecode.DBErr
    }
service/progress.go
@@ -3,7 +3,7 @@
import (
    "apsClient/model"
    "errors"
    "gorm.io/gorm"
    "github.com/jinzhu/gorm"
)
type ProgressService struct {
service/task.go
@@ -11,7 +11,7 @@
    "apsClient/pkg/logx"
    "apsClient/pkg/structx"
    "fmt"
    "gorm.io/gorm"
    "github.com/jinzhu/gorm"
    "time"
)
@@ -129,7 +129,7 @@
    return NoRepeatedWorkers
}
func (slf TaskService) GetProcedureById(id int) (*model.Procedures, int) {
func (slf TaskService) GetProcedureById(id uint) (*model.Procedures, int) {
    procedure, err := model.NewProceduresSearch(nil).SetId(id).First()
    if err != nil {
        return nil, ecode.DBErr
@@ -137,7 +137,7 @@
    return procedure, ecode.OK
}
func (slf TaskService) UpdateProcedureStatusAndChannel(db *gorm.DB, id int, status model.ProcedureStatus, channel int32) error {
func (slf TaskService) UpdateProcedureStatusAndChannel(db *gorm.DB, id uint, status model.ProcedureStatus, channel int32) error {
    if status == model.ProcedureStatusFinished {
        ProgressCacheUnset(channel)
    }
@@ -147,7 +147,7 @@
    })
}
func (slf TaskService) UpdateProcedureStatus(db *gorm.DB, id int, status model.ProcedureStatus, channel int32) error {
func (slf TaskService) UpdateProcedureStatus(db *gorm.DB, id uint, status model.ProcedureStatus, channel int32) error {
    if status == model.ProcedureStatusFinished {
        ProgressCacheUnset(channel)
    }