Browse Source

金蝶更新

pull/235/head
yehongyang 3 years ago
parent
commit
08ae4cda3a
13 changed files with 2469 additions and 828 deletions
  1. +1
    -0
      global/User.go
  2. +21
    -19
      meta/base/User.meta.go
  3. +19
    -18
      models/base/User.model.go
  4. +5
    -1
      services/base/implments/Article.service.impl.go
  5. +48
    -1
      services/base/implments/Customer.service.impl.go
  6. +19
    -0
      task/k3cloud.go
  7. +1
    -1
      utils/k3cloud/service/bd_customer.go
  8. +57
    -0
      utils/k3cloud/service/bd_empinfo.go
  9. +1
    -1
      utils/k3cloud/service/bd_material.go
  10. +1764
    -0
      utils/k3cloud/table/BD_Empinfo.json
  11. +520
    -787
      utils/k3cloud/table/customer.json
  12. +11
    -0
      web/controllers/common/CommonUploadPic.rest.go
  13. +2
    -0
      web/controllers/common/common.go

+ 1
- 0
global/User.go View File

@ -5,4 +5,5 @@ type User struct {
UserId string `xorm:"not null pk comment('用户ID') VARCHAR(40)" form:"userid" json:"userId"`
Role string `xorm:"comment('用户角色') VARCHAR(40)" form:"role" json:"role"`
RoleId int `xorm:"comment('角色编码') int(11)" json:"roleId"` // 角色编码
}

+ 21
- 19
meta/base/User.meta.go View File

@ -34,6 +34,7 @@ var User_RoleId = grmi.NewField("RoleId", "[User].RoleId", "roleid", grmi.TypeIn
var User_LastModify = grmi.NewField("LastModify", "[User].LastModify", "lastmodify", grmi.TypeDateTime)
var User_LastUser = grmi.NewField("LastUser", "[User].LastUser", "lastuser", grmi.TypeString)
var User_CreateTime = grmi.NewField("CreateTime", "[User].CreateTime", "createtime", grmi.TypeDateTime)
var User_CustCommissioner = grmi.NewField("CustCommissioner", "[User].CustCommissioner", "custcommissioner", grmi.TypeString)
/******************************************************************************
*
@ -48,24 +49,25 @@ var User = grmi.NewEntity(
"User",
func() interface{} { return &model.User{} },
map[string]grmi.Field{
User_PlantNr.Name: User_PlantNr,
User_UserId.Name: User_UserId,
User_Name.Name: User_Name,
User_NickName.Name: User_NickName,
User_DepId.Name: User_DepId,
User_Phone.Name: User_Phone,
User_Avatar.Name: User_Avatar,
User_Email.Name: User_Email,
User_Status.Name: User_Status,
User_Gender.Name: User_Gender,
User_Position.Name: User_Position,
User_Role.Name: User_Role,
User_Remark.Name: User_Remark,
User_Password.Name: User_Password,
User_RoleId.Name: User_RoleId,
User_LastModify.Name: User_LastModify,
User_LastUser.Name: User_LastUser,
User_CreateTime.Name: User_CreateTime,
User_PlantNr.Name: User_PlantNr,
User_UserId.Name: User_UserId,
User_Name.Name: User_Name,
User_NickName.Name: User_NickName,
User_DepId.Name: User_DepId,
User_Phone.Name: User_Phone,
User_Avatar.Name: User_Avatar,
User_Email.Name: User_Email,
User_Status.Name: User_Status,
User_Gender.Name: User_Gender,
User_Position.Name: User_Position,
User_Role.Name: User_Role,
User_Remark.Name: User_Remark,
User_Password.Name: User_Password,
User_RoleId.Name: User_RoleId,
User_LastModify.Name: User_LastModify,
User_LastUser.Name: User_LastUser,
User_CreateTime.Name: User_CreateTime,
User_CustCommissioner.Name: User_CustCommissioner,
},
[]string{"PlantNr"},
[]string{"Name", "NickName", "DepId", "Phone", "Avatar", "Email", "Status", "Gender", "Position", "Role", "Remark", "Password", "RoleId", "LastUser"})
[]string{"Name", "NickName", "DepId", "Phone", "Avatar", "Email", "Status", "Gender", "Position", "Role", "Remark", "Password", "RoleId", "LastUser", "CustCommissioner"})

+ 19
- 18
models/base/User.model.go View File

@ -20,24 +20,25 @@ import (
*
******************************************************************************/
type User struct {
PlantNr int `xorm:"pk int 'PlantNr'" json:"User-PlantNr"`
UserId string `xorm:"pk varchar(40) 'UserId'" json:"User-UserId"`
Name string `xorm:"varchar(40) 'Name'" json:"User-Name"`
NickName string `xorm:"varchar(40) 'NickName'" json:"User-NickName"`
DepId int `xorm:"int 'DepId'" json:"User-DepId"`
Phone string `xorm:"varchar(20) 'Phone'" json:"User-Phone"`
Avatar string `xorm:"varchar(128) 'Avatar'" json:"User-Avatar"`
Email string `xorm:"varchar(40) 'Email'" json:"User-Email"`
Status string `xorm:"varchar(1) 'Status'" json:"User-Status"`
Gender string `xorm:"varchar(1) 'Gender'" json:"User-Gender"`
Position string `xorm:"varchar(40) 'Position'" json:"User-Position"`
Role string `xorm:"varchar(40) 'Role'" json:"User-Role"`
Remark string `xorm:"varchar(100) 'Remark'" json:"User-Remark"`
Password string `xorm:"varchar(255) 'Password'" json:"User-Password"`
RoleId int `xorm:"int 'RoleId'" json:"User-RoleId"`
LastModify grmi.DateTime `xorm:"datetime 'LastModify' not null updated" json:"User-LastModify"`
LastUser string `xorm:"nvarchar(20) 'LastUser' not null" json:"User-LastUser"`
CreateTime grmi.DateTime `xorm:"datetime 'CreateTime' not null created" json:"User-CreateTime"`
PlantNr int `xorm:"pk int 'PlantNr'" json:"User-PlantNr"`
UserId string `xorm:"pk varchar(40) 'UserId'" json:"User-UserId"`
Name string `xorm:"varchar(40) 'Name'" json:"User-Name"`
NickName string `xorm:"varchar(40) 'NickName'" json:"User-NickName"`
DepId int `xorm:"int 'DepId'" json:"User-DepId"`
Phone string `xorm:"varchar(20) 'Phone'" json:"User-Phone"`
Avatar string `xorm:"varchar(128) 'Avatar'" json:"User-Avatar"`
Email string `xorm:"varchar(40) 'Email'" json:"User-Email"`
Status string `xorm:"varchar(1) 'Status'" json:"User-Status"`
Gender string `xorm:"varchar(1) 'Gender'" json:"User-Gender"`
Position string `xorm:"varchar(40) 'Position'" json:"User-Position"`
Role string `xorm:"varchar(40) 'Role'" json:"User-Role"`
Remark string `xorm:"varchar(100) 'Remark'" json:"User-Remark"`
Password string `xorm:"varchar(255) 'Password'" json:"User-Password"`
RoleId int `xorm:"int 'RoleId'" json:"User-RoleId"`
LastModify grmi.DateTime `xorm:"datetime 'LastModify' not null updated" json:"User-LastModify"`
LastUser string `xorm:"nvarchar(20) 'LastUser' not null" json:"User-LastUser"`
CreateTime grmi.DateTime `xorm:"datetime 'CreateTime' not null created" json:"User-CreateTime"`
CustCommissioner string `xorm:"nvarchar(255) 'CustCommissioner'" json:"User-CustCommissioner"`
}
/******************************************************************************


+ 5
- 1
services/base/implments/Article.service.impl.go View File

@ -384,6 +384,10 @@ func (impl *ArticleServiceImplement) ImportArticle(_list [][]interface{}, taskVa
_info.Descr2 = utils.ValueToString(v[14], "")
isUp = true
}
if _info.ArtSize1 != utils.ValueToString(v[19], "") {
_info.ArtSize1 = utils.ValueToString(v[19], "")
isUp = true
}
if isUp {
_ = dao.UpdateOne(_info)
}
@ -404,7 +408,7 @@ func (impl *ArticleServiceImplement) ImportArticle(_list [][]interface{}, taskVa
FMaterialId: utils.ValueToInt(v[0], 0),
ProjectId: utils.ValueToString(v[13], ""),
Planner: utils.ValueToString(v[16], ""),
//ArtSize1: utils.ValueToString(),
ArtSize1: utils.ValueToString(v[19], ""),
})
}
_ = session.Begin()


+ 48
- 1
services/base/implments/Customer.service.impl.go View File

@ -309,6 +309,22 @@ func (impl *CustomerServiceImplement) ImportCustomer(_list [][]interface{}) {
if err != nil || _demandModel == nil {
_demandModel = &apModel.CustDemandModel{}
}
//查询绑定员工的账号
userDao := dal.NewUserDAO(session, model.PlantNr, "System")
_user, err := userDao.Select([]grmi.Predicate{
meta.User_CustCommissioner.NewPredicate(grmi.NotEqual, ""),
}, nil)
//删除对应员工的客户关联关系
userCustDao := apDal.NewUserCustlstDAO(session, model.PlantNr, "System")
//记录专员对应账号
userCustMap := make(map[string][]string)
for _, v := range _user {
userCustDao.DeleteWhere([]grmi.Predicate{
apMeta.UserCustlst_UserId.NewPredicate(grmi.Equal, v.UserId),
})
userCustMap[v.CustCommissioner] = append(userCustMap[v.CustCommissioner], v.UserId)
}
var userCustList []apModel.UserCustlst
for _, v := range _list {
if _, ok := custMap[utils.ValueToString(v[1], "")]; ok {
continue
@ -321,6 +337,15 @@ func (impl *CustomerServiceImplement) ImportCustomer(_list [][]interface{}) {
if err != nil {
continue
}
//添加客户专员
if _list, ok := userCustMap[utils.ValueToString(v[10], "")]; ok {
for _, _userInfo := range _list {
userCustList = append(userCustList, apModel.UserCustlst{
UserId: _userInfo,
CustomerId: utils.ValueToString(v[1], ""),
})
}
}
if _info != nil {
if _info.Name1 != utils.ValueToString(v[2], "") {
_info.Name1 = utils.ValueToString(v[2], "")
@ -386,6 +411,28 @@ func (impl *CustomerServiceImplement) ImportCustomer(_list [][]interface{}) {
panic(err.Error())
}
}
if userCustList != nil {
if len(userCustList) > 20 {
var _detail []apModel.UserCustlst
for k, v := range userCustList {
_detail = append(_detail, v)
if (k > 0 && k%20 == 0) || k+1 == len(userCustList) {
err := userCustDao.Insert(&_detail)
if err != nil {
_ = session.Rollback()
panic(err.Error())
}
_detail = []apModel.UserCustlst{}
}
}
} else {
err := userCustDao.Insert(&userCustList)
if err != nil {
_ = session.Rollback()
panic(err.Error())
}
}
}
_ = session.Commit()
}
@ -674,7 +721,7 @@ func (impl *CustomerServiceImplement) CustomerTree(user *global.User, CustomerId
oneCustomer.Label = "集团类型"
for _, v := range Customers {
oneChildren := model.CustomerLable{}
oneChildren.CustomerId = v.CustomerId
oneChildren.CustomerId = v.CustomerId
oneChildren.CreateModel = v.DemandModelId
oneChildren.Label = v.Name1
oneCustomer.Children = append(oneCustomer.Children, oneChildren)


+ 19
- 0
task/k3cloud.go View File

@ -218,6 +218,20 @@ func ImportOrg() []OrgType {
return data
}
//查询员工
func ImportEmpinfo() []Empinfo {
response := utilService.EmpinfoServiceInit().EmpinfoSearch("", "")
var data []Empinfo
for _, v := range response {
data = append(data, Empinfo{
FNumber: utils.ValueToString(v[0], ""),
FName: utils.ValueToString(v[1], ""),
FID: utils.ValueToString(utils.ValueToInt(v[2], 0), ""),
})
}
return data
}
//导入库存
func ImportBalance() {
impl_Balance := implments.NewBalanceServiceImplement()
@ -227,6 +241,11 @@ func ImportBalance() {
erp.GetChaigouiQty(model.PlantNr, "system", &alldata_Article)
}
type Empinfo struct {
FNumber string `json:"FNumber"`
FName string `json:"FName"`
FID string `json:"FID"`
}
type OrgType struct {
FNumber string `json:"FNumber"`
FName string `json:"FName"`


+ 1
- 1
utils/k3cloud/service/bd_customer.go View File

@ -16,7 +16,7 @@ func CustomerInit() *CustomerService {
cust := &CustomerService{
K3config: utils.K3Obj,
FormID: "BD_Customer",
FieldKeys: "FCUSTID,FNumber,FName,FSUPPLIERID,FZIP,FTEL,FFAX,FTRANSLEADTIME,FEMail,FUseOrgId",
FieldKeys: "FCUSTID,FNumber,FName,FSUPPLIERID,FZIP,FTEL,FFAX,FTRANSLEADTIME,FEMail,FUseOrgId,F_PAHE_Czhuanyuan.FNumber",
FUseOrgKey: "FUseOrgId=" + utils.K3Obj.FUseOrgId,
}
return cust


+ 57
- 0
utils/k3cloud/service/bd_empinfo.go View File

@ -0,0 +1,57 @@
package service
import (
"leit.com/LAPP_CHEERSSON_BACKEND/utils"
request2 "leit.com/LAPP_CHEERSSON_BACKEND/utils/k3cloud/struct/request"
)
type EmpinfoService struct {
*utils.K3config
FormID string
FieldKeys string
FUseOrgKey string
}
func EmpinfoServiceInit() *EmpinfoService {
cust := &EmpinfoService{
K3config: utils.K3Obj,
FormID: "BD_Empinfo",
FieldKeys: "FNumber,FName,FID",
FUseOrgKey: "",
}
return cust
}
func (_this *EmpinfoService) EmpinfoSearch(FilterString, OrderString string) [][]interface{} {
var data [][]interface{}
if FilterString != "" {
FilterString = _this.FUseOrgKey + " And " + FilterString
} else {
FilterString = _this.FUseOrgKey
}
request := request2.SearchRequest{
Formid: _this.FormID,
FieldKeys: _this.FieldKeys,
FilterString: FilterString,
OrderString: OrderString,
TopRowCount: 0,
StartRow: 0,
Limit: 1000,
}
for true {
response, err := _this.SearchApi(_this.FormID, request)
if err != nil {
return data
}
for _, v := range response {
data = append(data, v)
}
if len(response) == request.Limit {
request.StartRow = request.StartRow + request.Limit
} else {
break
}
}
return data
}

+ 1
- 1
utils/k3cloud/service/bd_material.go View File

@ -17,7 +17,7 @@ func BdMAterialServiceInit() *BdMAterialService {
cust := &BdMAterialService{
K3config: utils.K3Obj,
FormID: "BD_MATERIAL",
FieldKeys: "FMasterId,FAccuLeadTime,FName,FNumber,FSpecification,FBaseUnitId,FDocumentStatus,FMaterialGroup,F_PAHE_Material1,F_RDPB_bigcode,F_RDPB_middlecode,F_RDPB_smallcode,F_QCCQ_Programcode,F_QCCQ_Programcode.FCode,F_QCCQ_Programcode.FName,FBaseUnitId.FNumber,FPlanerID.FName,FPlanerID.FNumber,FPlanerID",
FieldKeys: "FMasterId,FAccuLeadTime,FName,FNumber,FSpecification,FBaseUnitId,FDocumentStatus,FMaterialGroup,F_PAHE_Material1,F_RDPB_bigcode,F_RDPB_middlecode,F_RDPB_smallcode,F_QCCQ_Programcode,F_QCCQ_Programcode.FCode,F_QCCQ_Programcode.FName,FBaseUnitId.FNumber,FPlanerID.FName,FPlanerID.FNumber,FPlanerID,FErpClsID",
FUseOrgKey: "FUseOrgId1=" + utils.K3Obj.FUseOrgId,
}
return cust


+ 1764
- 0
utils/k3cloud/table/BD_Empinfo.json
File diff suppressed because it is too large
View File


+ 520
- 787
utils/k3cloud/table/customer.json
File diff suppressed because it is too large
View File


+ 11
- 0
web/controllers/common/CommonUploadPic.rest.go View File

@ -25,6 +25,17 @@ func RegisterOrg(party router.Party, path string) {
supports.Ok(ctx, supports.OptionSuccess, data)
})
}
func RegisterEmpinfo(party router.Party, path string) {
party.Handle("GET", path, func(ctx iris.Context) {
_, ok := jwts.ParseToken(ctx)
if !ok {
supports.Error(ctx, iris.StatusBadRequest, supports.ParseParamsFailur, nil)
return
}
data := task.ImportEmpinfo()
supports.Ok(ctx, supports.OptionSuccess, data)
})
}
/******************************************************************************
*


+ 2
- 0
web/controllers/common/common.go View File

@ -30,6 +30,8 @@ func RegisterRoutes() {
// 组织列表
org := party.Party("/org")
RegisterOrg(org, "/list")
empinfo := party.Party("/empinfo")
RegisterEmpinfo(empinfo, "/list")
})
}


Loading…
Cancel
Save