update: dis_plat and fix: loss

main
Leo 11 months ago
parent d8db05c3d8
commit 81974c9a23

@ -0,0 +1,164 @@
package cmd
import (
"github.com/go-resty/resty/v2"
"github.com/mizuki1412/go-core-kit/class/exception"
"github.com/mizuki1412/go-core-kit/init/initkit"
"github.com/mizuki1412/go-core-kit/library/commonkit"
"github.com/mizuki1412/go-core-kit/service/configkit"
"github.com/mizuki1412/go-core-kit/service/logkit"
"github.com/spf13/cast"
"github.com/spf13/cobra"
"github.com/tidwall/gjson"
"time"
)
//纪检监察
func init() {
rootCmd.AddCommand(disCmd)
defFlagsDis(disCmd)
}
var disCmd = &cobra.Command{
Use: "dis",
Short: "Batch processing operations of the discipline inspection platform",
Run: func(cmd *cobra.Command, args []string) {
initkit.BindFlags(cmd)
handleDis()
},
}
func defFlagsDis(cmd *cobra.Command) {
cmd.Flags().String("ut", "", "*Specify the ut")
cmd.Flags().String("wid", "", "*Specify the wid")
cmd.Flags().String("pid", "", "*Specify the pid")
}
var disClient = resty.New().SetRetryCount(5).SetRetryWaitTime(10 * time.Second)
func handleDis() {
_ = commonkit.RecoverFuncWrapper(func() {
//签到
resp, err := disClient.R().
SetHeaders(map[string]string{
"Content-type": "application/json;charset=UTF-8",
"Ut": cast.ToString(configkit.Get("ut", "")),
"Wid": cast.ToString(configkit.Get("wid", "")),
"Pid": cast.ToString(configkit.Get("pid", "")),
"User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36",
}).SetQueryParams(map[string]string{
"_": cast.ToString(time.Now().UnixNano() / int64(time.Millisecond)),
}).Get("http://aiportal.unicom.local/pcm/punchIn/addClockIn")
if err != nil || resp.IsError() || gjson.Get(resp.String(), "code").Int() != 200 {
panic(exception.New("签到失败 " + cast.ToString(resp.String())))
}
logkit.Info("签到成功,今日积分+1😄")
})
//拿菜单
resp, err := disClient.R().
SetHeaders(map[string]string{
"Content-type": "application/json;charset=UTF-8",
"Ut": cast.ToString(configkit.Get("ut", "")),
"Wid": cast.ToString(configkit.Get("wid", "")),
"Pid": cast.ToString(configkit.Get("pid", "")),
"User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36",
}).SetQueryParams(map[string]string{
"accessType": "1",
"_": cast.ToString(time.Now().UnixNano() / int64(time.Millisecond)),
}).Get("http://aiportal.unicom.local/wsq/site/newsOne/v1/category/v1")
if err != nil || resp.IsError() || gjson.Get(resp.String(), "code").Int() != 200 {
panic(exception.New("获取菜单失败"))
}
//拿到一级菜单
var catID []string
first := gjson.Get(resp.String(), "data").Array()
for _, v := range first {
second := v.Get("categoryList").Array()
for _, vv := range second {
catID = append(catID, vv.Get("id").String())
}
}
for _, id := range catID {
resp, err = disClient.R().
SetHeaders(map[string]string{
"Content-type": "application/json;charset=UTF-8",
"Ut": cast.ToString(configkit.Get("ut", "")),
"Wid": cast.ToString(configkit.Get("wid", "")),
"Pid": cast.ToString(configkit.Get("pid", "")),
"User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36",
}).SetQueryParams(map[string]string{
"page": "5",
"catid": id,
"limit": "15",
"_": cast.ToString(time.Now().UnixNano() / int64(time.Millisecond)),
}).Get("http://aiportal.unicom.local/wsq/site/newsOne/v1/index/newList")
if err != nil || resp.IsError() || gjson.Get(resp.String(), "code").Int() != 200 {
panic(exception.New("获取文章信息失败"))
}
list := gjson.Get(resp.String(), "data.list").Array()
var artID []string
var artName []string
for _, v := range list {
artID = append(artID, v.Get("id").String())
artName = append(artName, v.Get("title").String())
}
for i, v := range artID {
_ = commonkit.RecoverFuncWrapper(func() {
time.Sleep(1 * time.Second)
resp, err = disClient.R().
SetHeaders(map[string]string{
"Content-type": "application/json;charset=UTF-8",
"Ut": cast.ToString(configkit.Get("ut", "")),
"Wid": cast.ToString(configkit.Get("wid", "")),
"Pid": cast.ToString(configkit.Get("pid", "")),
"User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36",
}).SetQueryParams(map[string]string{
"articleid": v,
"href": "/modules/subsite/jijianjiancha/newsdetail.html?id=" + v + "&wid=" + cast.ToString(configkit.Get("wid", "")),
"title": artName[i],
"_": cast.ToString(time.Now().UnixNano() / int64(time.Millisecond)),
}).Get("http://aiportal.unicom.local/pcm/msview/v1/view")
if err != nil || resp.IsError() || gjson.Get(resp.String(), "code").Int() != 200 {
panic(exception.New("浏览失败 " + artName[i] + cast.ToString(resp.String())))
}
logkit.Info("浏览成功 " + artName[i])
resp, err = disClient.R().
SetHeaders(map[string]string{
"Content-type": "application/json;charset=UTF-8",
"Ut": cast.ToString(configkit.Get("ut", "")),
"Wid": cast.ToString(configkit.Get("wid", "")),
"Pid": cast.ToString(configkit.Get("pid", "")),
"User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36",
}).SetQueryParams(map[string]string{
"articleid": v,
"status": "1",
"href": "/modules/news/newsdetail.html?id=" + v,
"title": artName[i],
"_": cast.ToString(time.Now().UnixNano() / int64(time.Millisecond)),
}).Get("http://aiportal.unicom.local/pcm/mslike/v1/like")
if err != nil || resp.IsError() || gjson.Get(resp.String(), "code").Int() != 200 {
panic(exception.New("点赞失败 " + artName[i] + cast.ToString(resp.String())))
}
resp, err = disClient.R().
SetHeaders(map[string]string{
"Content-type": "application/json;charset=UTF-8",
"Ut": cast.ToString(configkit.Get("ut", "")),
"Wid": cast.ToString(configkit.Get("wid", "")),
"Pid": cast.ToString(configkit.Get("pid", "")),
"User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36",
}).SetQueryParams(map[string]string{
"articleid": v,
"status": "1",
"href": "/modules/news/newsdetail.html?id=" + v,
"title": artName[i],
"_": cast.ToString(time.Now().UnixNano() / int64(time.Millisecond)),
}).Get("http://aiportal.unicom.local/pcm/collect/v1/collect")
if err != nil || resp.IsError() || gjson.Get(resp.String(), "code").Int() != 200 {
panic(exception.New("收藏失败 " + artName[i] + cast.ToString(resp.String())))
}
logkit.Info("点赞收藏成功 " + artName[i])
})
}
}
}

@ -4,6 +4,7 @@ import (
"github.com/go-resty/resty/v2"
"github.com/mizuki1412/go-core-kit/class/exception"
"github.com/mizuki1412/go-core-kit/init/initkit"
"github.com/mizuki1412/go-core-kit/library/commonkit"
"github.com/mizuki1412/go-core-kit/service/configkit"
"github.com/mizuki1412/go-core-kit/service/logkit"
"github.com/spf13/cast"
@ -11,7 +12,6 @@ import (
"github.com/tidwall/gjson"
"github.com/xuri/excelize/v2"
"strconv"
"strings"
"time"
)
@ -60,31 +60,34 @@ func handleList() {
"Content-Type": "application/json;charset=UTF-8",
"Cookie": cast.ToString(configkit.Get("cookie", "")),
}).SetBody(map[string]string{
"beginTime": "2024-01-01 0:00:00",
"endTime": "2024-10-10 00:00:00",
"pageNum": "1",
"pageSize": "1000",
"type": "out",
//"beginTime": "2024-01-01 0:00:00",
//"endTime": "2024-10-10 00:00:00",
"pageNum": "1",
"pageSize": "3500",
"type": "out",
}).Post("https://inneruscm.chinaunicom.cn:10003/api/biz-service-order/outer/v1.0/bizChange/findChangeOrderForPage")
if err != nil || resp.IsError() || gjson.Get(resp.String(), "success").Bool() != true {
panic(exception.New("获取调拨(调出)列表失败"))
}
data := gjson.Get(resp.String(), "data.records").Array()
for _, v := range data {
outProject := v.Get("outProject").String()
inProject := v.Get("inProject").String()
if strings.Contains(outProject, "西湖宽带") || strings.Contains(outProject, "西湖公众") || strings.Contains(outProject, "西湖区公众") || strings.Contains(outProject, "西湖商务") {
if strings.Contains(inProject, "西湖宽带") || strings.Contains(inProject, "西湖公众") || strings.Contains(inProject, "西湖区公众") || strings.Contains(inProject, "西湖商务") {
continue
}
}
if strings.Contains(outProject, "西湖零星") || strings.Contains(inProject, "西湖零星") {
continue
}
//if strings.Contains(outProject, "西湖宽带") || strings.Contains(outProject, "西湖公众") || strings.Contains(outProject, "西湖区公众") || strings.Contains(outProject, "西湖商务") {
// if strings.Contains(inProject, "西湖宽带") || strings.Contains(inProject, "西湖公众") || strings.Contains(inProject, "西湖区公众") || strings.Contains(inProject, "西湖商务") {
// continue
// }
//}
//if strings.Contains(outProject, "西湖零星") || strings.Contains(inProject, "西湖零星") {
// continue
//}
id := v.Get("id").String()
changeNo := v.Get("changeNo").String()
note := v.Get("note").String()
getDetail(id, "out", changeNo, inProject, outProject, note)
_ = commonkit.RecoverFuncWrapper(func() {
getDetail(id, "out", changeNo, inProject, outProject, note)
})
}
resp, err = supplyClient.R().
SetHeaders(map[string]string{
@ -92,11 +95,11 @@ func handleList() {
"Content-Type": "application/json;charset=UTF-8",
"Cookie": cast.ToString(configkit.Get("cookie", "")),
}).SetBody(map[string]string{
"beginTime": "2024-01-01 0:00:00",
"endTime": "2024-10-10 00:00:00",
"pageNum": "1",
"pageSize": "1000",
"type": "in",
//"beginTime": "2024-01-01 0:00:00",
//"endTime": "2024-10-10 00:00:00",
"pageNum": "1",
"pageSize": "3500",
"type": "in",
}).Post("https://inneruscm.chinaunicom.cn:10003/api/biz-service-order/outer/v1.0/bizChange/findChangeOrderForPage")
if err != nil || resp.IsError() || gjson.Get(resp.String(), "success").Bool() != true {
panic(exception.New("获取调拨(调入)列表失败"))
@ -105,22 +108,25 @@ func handleList() {
for _, v := range data {
outProject := v.Get("outProject").String()
inProject := v.Get("inProject").String()
if strings.Contains(outProject, "西湖宽带") || strings.Contains(outProject, "西湖公众") || strings.Contains(outProject, "西湖区公众") || strings.Contains(outProject, "西湖商务") {
if strings.Contains(inProject, "西湖宽带") || strings.Contains(inProject, "西湖公众") || strings.Contains(inProject, "西湖区公众") || strings.Contains(inProject, "西湖商务") {
continue
}
}
if strings.Contains(outProject, "西湖零星") || strings.Contains(inProject, "西湖零星") {
continue
}
//if strings.Contains(outProject, "西湖宽带") || strings.Contains(outProject, "西湖公众") || strings.Contains(outProject, "西湖区公众") || strings.Contains(outProject, "西湖商务") {
// if strings.Contains(inProject, "西湖宽带") || strings.Contains(inProject, "西湖公众") || strings.Contains(inProject, "西湖区公众") || strings.Contains(inProject, "西湖商务") {
// continue
// }
//}
//if strings.Contains(outProject, "西湖零星") || strings.Contains(inProject, "西湖零星") {
// continue
//}
id := v.Get("id").String()
changeNo := v.Get("changeNo").String()
note := v.Get("note").String()
getDetail(id, "in", changeNo, inProject, outProject, note)
_ = commonkit.RecoverFuncWrapper(func() {
getDetail(id, "in", changeNo, inProject, outProject, note)
})
}
}
func getDetail(id, inOut, changeNo, inProject, outProject, note string) {
//time.Sleep(200 * time.Millisecond)
resp, err := supplyClient.R().
SetHeaders(map[string]string{
"Authorization": "Bearer " + cast.ToString(configkit.Get("authorization", "")),
@ -131,7 +137,7 @@ func getDetail(id, inOut, changeNo, inProject, outProject, note string) {
"type": inOut,
}).Post("https://inneruscm.chinaunicom.cn:10003/api/biz-service-order/outer/v1.0/bizChange/findChangeOrderDetailed")
if err != nil || resp.IsError() || gjson.Get(resp.String(), "success").Bool() != true {
panic(exception.New("获取详情失败"))
panic(exception.New("获取详情失败! " + changeNo))
}
detailList := gjson.Get(resp.String(), "data.changeOrderProduct").Array()
for _, v := range detailList {
@ -189,7 +195,7 @@ func genExcelFile() {
}
// 保存文件
if err := f.SaveAs("/Users/leo/Documents/erp调拨.xlsx"); err != nil {
if err := f.SaveAs("/Users/leo/Documents/erp调拨-all.xlsx"); err != nil {
panic(exception.New("保存文件失败..."))
}
}

@ -21,7 +21,7 @@ type GetHighOptLossList struct {
QueryType string `map:"queryType"`
}
// NewGetHighOptLossList receiveFlag=1,综合派单 receiveFlag=2,施工处理
// NewGetHighOptLossList receiveFlag=0,全部 receiveFlag=1,综合派单 receiveFlag=2,施工处理 receiveFlag=5,人工回访
func NewGetHighOptLossList(receiveFlag string) *GetHighOptLossList {
getHighOptLossList := new(GetHighOptLossList)
getHighOptLossList.OrgId = "330106"
@ -29,7 +29,7 @@ func NewGetHighOptLossList(receiveFlag string) *GetHighOptLossList {
getHighOptLossList.OrderPram = "ACCEPT_TIME"
getHighOptLossList.OrderDesc = "DESC"
getHighOptLossList.ReceiveFlag = receiveFlag
getHighOptLossList.Rows = "100"
getHighOptLossList.Rows = "1000"
getHighOptLossList.Page = "1"
getHighOptLossList.QueryType = "-1"
return getHighOptLossList

Loading…
Cancel
Save