Commit 7f363b05 by mushishixian

修改匹配项

parent 4ce8c399
The file could not be displayed because it is too large.
......@@ -15,6 +15,12 @@ func GetBomInfo(bomId int) (bom model.Bom) {
return bom
}
func GetBomBySn(bomSn string) (bom model.Bom) {
//先去根据bomSn查出bomId
model.Db.Table("lie_bom").Where("bom_sn = ?", bomSn).First(&bom)
return
}
//获取一个完整bom数据
func GetBomInfoWithItems(bomId int) (bom model.Bom) {
var (
......
......@@ -23,6 +23,8 @@ func GetBomMatching(bomId, bomItemId int) (bomMatching model.BomItemMatching) {
return bomMatching
}
//根据matchingList去修改
func BatchSaveMatchings(bomId int, matchingList []model.BomItemMatching) (err error) {
bomIdStr := strconv.FormatInt(int64(bomId), 10)
......
......@@ -114,14 +114,15 @@ func SearchGoods(bomId int, bomItems []model.BomItem, deliveryType, sort int, wg
}
//更新单个matching
func UpdateSingleBomMatching(bomId int, bomItemId int, goodsId string) (bomItemInfo model.BomItem, err error) {
func UpdateSingleBomMatching(bomSn string, bomItemId int, goodsId string) (bomItemInfo model.BomItem, err error) {
responseData, err := GetGoodsInfo(goodsId)
if err != nil {
return
}
var bomMatchingList []model.BomItemMatching
//先去获取对应的matching
matching := GetBomMatching(bomId, bomItemId)
bom := GetBomBySn(bomSn)
matching := GetBomMatching(bom.BomID, bomItemId)
if len(responseData.Data) > 0 {
for _, goods := range responseData.Data {
var goodsMap GoodsMap
......@@ -139,35 +140,20 @@ func UpdateSingleBomMatching(bomId int, bomItemId int, goodsId string) (bomItemI
bomMatchingList = append(bomMatchingList, bomMatching)
}
}
err = BatchSaveMatchings(bomId, bomMatchingList)
err = BatchSaveMatchings(bom.BomID, bomMatchingList)
if err != nil {
return
}
//还要返回对应的信息
bomItemInfo = GetBomItem(bomId, bomItemId)
bomMatching := GetBomMatching(bomId, bomItemId)
bomItemInfo = GetBomItem(bom.BomID, bomItemId)
bomMatching := GetBomMatching(bom.BomID, bomItemId)
bomItemInfo.Matching = bomMatching
return
}
//通过搜索去匹配单个matching
func SaveSingleBomMatchingBySearch(bomId int, bomItemId, deliveryType, sort int) (err error) {
//client, err := es.NewClient(es.SetURL(configs.ESSetting.Url))
//if err != nil {
// panic(err)
//}
//defer client.Stop()
//var bomItems []model.BomItem
//bomItems = append(bomItems, bomItem)
////直接模糊匹配
//goodsMapList, err := getUpdateGoodsData(bomId, bomItems, deliveryType, client, true)
//if err != nil {
// return
//}
//err = UpdateGoodsData(goodsMapList)
//if err != nil {
// return
//}
func SaveBomMatchingByGoodsName(bomId int, bomItemId int, goodsName string) (bomItemInfo model.BomItem, err error) {
return
}
......
......@@ -32,8 +32,8 @@ func UploadToOss(path, fileType string) (ossPath string, err error) {
"k2": php2go.Md5(php2go.Md5(nowStr) + uploadKey),
"FileType": fileType,
}
req.Debug = true
file, err := os.Open("Bom_48.xlsx")
req.Debug = false
file, err := os.Open(path)
defer file.Close()
if err != nil {
fmt.Println(err)
......@@ -42,7 +42,7 @@ func UploadToOss(path, fileType string) (ossPath string, err error) {
resp, err := req.Post(url, req.FileUpload{
File: file,
FieldName: "upload",
FileName: "Bom_48.xlsx",
FileName: path,
}, params)
if err != nil {
return
......
......@@ -4,10 +4,12 @@ import (
"bom_server/internal/common"
"bom_server/internal/service"
"github.com/gin-gonic/gin"
"strconv"
)
func Export(c *gin.Context) {
bomId := c.GetInt("bom_id")
bomIdStr := c.PostForm("bom_id")
bomId, _ := strconv.Atoi(bomIdStr)
ossPath, err := service.Export(bomId)
var response common.Response
if err != nil {
......
......@@ -9,7 +9,7 @@ import (
//刷新价格和库存接口
func RefreshBomMatchingGoods(c *gin.Context) {
bomIdStr, _ := c.GetQuery("bom_id")
bomIdStr := c.PostForm("bom_id")
bomId, _ := strconv.Atoi(bomIdStr)
var response common.Response
......@@ -31,15 +31,35 @@ func RefreshBomMatchingGoods(c *gin.Context) {
return
}
//新增或者修改bom_matching
//修改单个匹配项
func UpdateBomMatching(c *gin.Context) {
bomSn := c.PostForm("bom_sn")
goodsId := c.PostForm("goods_id")
bomItemIdStr := c.PostForm("bom_item_id")
bomItemId, _ := strconv.Atoi(bomItemIdStr)
var response common.Response
bomItemInfo, err := logic.UpdateSingleBomMatching(bomSn, bomItemId, goodsId)
if err != nil {
response.Errcode = -1
response.Errmsg = err.Error()
} else {
response.Errcode = 0
response.Errmsg = "ok"
response.Data = bomItemInfo
}
c.JSON(200, response)
return
}
//通过型号去新增匹配项
func SaveBomMatchingByGoodsName(c *gin.Context) {
bomIdStr, _ := c.GetQuery("bom_id")
goodsId, _ := c.GetQuery("goods_id")
goodsName, _ := c.GetQuery("goods_name")
bomItemIdStr, _ := c.GetQuery("bom_item_id")
bomId, _ := strconv.Atoi(bomIdStr)
bomItemId, _ := strconv.Atoi(bomItemIdStr)
var response common.Response
bomItemInfo, err := logic.UpdateSingleBomMatching(bomId, bomItemId, goodsId)
bomItemInfo, err := logic.SaveBomMatchingByGoodsName(bomId, bomItemId, goodsName)
if err != nil {
response.Errcode = -1
response.Errmsg = err.Error()
......
......@@ -19,9 +19,9 @@ func InitRouter() *gin.Engine {
//跨域设置
//配置列表
router.GET("/bom/export", Export)
router.GET("/bom_matching/refresh", RefreshBomMatchingGoods)
router.GET("/bom_matching/update", UpdateBomMatching)
router.POST("/bom/export", Export)
router.POST("/bom_matching/refresh", RefreshBomMatchingGoods)
router.POST("/bom_matching/update", UpdateBomMatching)
//router.GET("/config/list", ListConfigApi)
//router.POST("/config/rollback", RollbackConfigApi)
......@@ -32,7 +32,7 @@ func InitRouter() *gin.Engine {
func InitApiServer() (err error) {
router := InitRouter()
apiPort := strconv.Itoa(8080)
apiPort := strconv.Itoa(60010)
s := &http.Server{
Addr: ":" + apiPort,
Handler: router,
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment