|
@@ -29,7 +29,7 @@ type TreeService interface {
|
|
|
ValidRule(ctx iris.Context) (viewmodels.Tree, error)
|
|
|
Create(data viewmodels.Tree) error
|
|
|
GetAllProject(projectId int) *viewmodels.Tree
|
|
|
- GetAllContract(projectId int) *viewmodels.TreeContract
|
|
|
+ GetAllContract(projectId int) *viewmodels.FolderContract
|
|
|
Rename(treevm viewmodels.Tree, projectId int) error
|
|
|
GetFolderAndBid(id int, projectId int) ([]models.CmTree, error)
|
|
|
DeleteFolderAndBid(id int, projectId int) error
|
|
@@ -69,27 +69,30 @@ func (s *treeService) ValidRule(ctx iris.Context) (viewmodels.Tree, error) {
|
|
|
// 获得项目下 相关文件夹-整个树结构
|
|
|
func (s *treeService) GetAllProject(projectId int) *viewmodels.Tree {
|
|
|
datalist := s.dao.GetAllTree(projectId)
|
|
|
- folderlist := make([]viewmodels.Tree, 0)
|
|
|
+ folderlist := make([]*viewmodels.Tree, 0)
|
|
|
// 生成根
|
|
|
- folder := viewmodels.Tree{}
|
|
|
+ folder := &viewmodels.Tree{}
|
|
|
id, _ := comm.AesEncrypt(strconv.Itoa(0), conf.SignSecret)
|
|
|
parentId, _ := comm.AesEncrypt(strconv.Itoa(-1), conf.SignSecret)
|
|
|
folder.Id = id
|
|
|
folder.Name = "root"
|
|
|
+ folder.Isfolder = 1
|
|
|
folder.ParentId = parentId
|
|
|
folderlist = append(folderlist, folder)
|
|
|
// 加入数据
|
|
|
for _, data := range datalist {
|
|
|
- folder := viewmodels.Tree{}
|
|
|
+ folder := &viewmodels.Tree{}
|
|
|
//folder.Id = comm.Encrypt([]byte(conf.SignSecret), []byte(strconv.Itoa(data.Id)))
|
|
|
id, _ := comm.AesEncrypt(strconv.Itoa(data.Id), conf.SignSecret)
|
|
|
parentId, _ := comm.AesEncrypt(strconv.Itoa(data.ParentId), conf.SignSecret)
|
|
|
projectId, _ := comm.AesEncrypt(strconv.Itoa(data.ProjectId), conf.SignSecret)
|
|
|
serial, _ := comm.AesEncrypt(strconv.Itoa(data.Serial), conf.SignSecret)
|
|
|
+ bidsectionId, _ := comm.AesEncrypt(strconv.Itoa(data.BidsectionId), conf.SignSecret)
|
|
|
folder.Id = id
|
|
|
folder.Name = data.Name
|
|
|
folder.ParentId = parentId
|
|
|
folder.ProjectId = projectId
|
|
|
+ folder.BidsectionId = bidsectionId
|
|
|
folder.Depth = data.Depth + 1
|
|
|
folder.Serial = serial
|
|
|
folder.Ancounts = data.Ancounts
|
|
@@ -104,42 +107,45 @@ func (s *treeService) GetAllProject(projectId int) *viewmodels.Tree {
|
|
|
|
|
|
//fmt.Println(folderlist)
|
|
|
|
|
|
- var data []*viewmodels.Tree
|
|
|
- data = make([]*viewmodels.Tree, 0)
|
|
|
- for i, _ := range folderlist {
|
|
|
- var a *viewmodels.Tree
|
|
|
- a = &folderlist[i]
|
|
|
- data = append(data, a)
|
|
|
- }
|
|
|
+ //var data []*viewmodels.Tree
|
|
|
+ // data := make([]*viewmodels.Tree, 0)
|
|
|
+ // for i, _ := range folderlist {
|
|
|
+ // var a *viewmodels.Tree
|
|
|
+ // a = &folderlist[i]
|
|
|
+ // data = append(data, a)
|
|
|
+ // }
|
|
|
|
|
|
- node := &folderlist[0] //父节点
|
|
|
- maketree(data, node) //调用生成tree
|
|
|
+ node := folderlist[0] //父节点
|
|
|
+ maketree(folderlist, node) //调用生成tree
|
|
|
//transformjson(node) //转化为json
|
|
|
return node
|
|
|
}
|
|
|
|
|
|
// 获得合同管理的目录
|
|
|
-func (s *treeService) GetAllContract(projectId int) *viewmodels.TreeContract {
|
|
|
+func (s *treeService) GetAllContract(projectId int) *viewmodels.FolderContract {
|
|
|
datalist := s.dao.GetAllTree(projectId)
|
|
|
- folderlist := make([]viewmodels.TreeContract, 0)
|
|
|
+ folderlist := make([]viewmodels.FolderContract, 0)
|
|
|
// 生成根
|
|
|
- folder := viewmodels.TreeContract{}
|
|
|
+ folder := viewmodels.FolderContract{}
|
|
|
id, _ := comm.AesEncrypt(strconv.Itoa(0), conf.SignSecret)
|
|
|
parentId, _ := comm.AesEncrypt(strconv.Itoa(-1), conf.SignSecret)
|
|
|
folder.Id = id
|
|
|
folder.Name = "root"
|
|
|
folder.ParentId = parentId
|
|
|
+ folder.Isfolder = 1
|
|
|
folderlist = append(folderlist, folder)
|
|
|
// 加入数据
|
|
|
for _, data := range datalist {
|
|
|
- folder := viewmodels.TreeContract{}
|
|
|
+ folder := viewmodels.FolderContract{}
|
|
|
id, _ := comm.AesEncrypt(strconv.Itoa(data.Id), conf.SignSecret)
|
|
|
parentId, _ := comm.AesEncrypt(strconv.Itoa(data.ParentId), conf.SignSecret)
|
|
|
projectId, _ := comm.AesEncrypt(strconv.Itoa(data.ProjectId), conf.SignSecret)
|
|
|
+ bidsectionId, _ := comm.AesEncrypt(strconv.Itoa(data.BidsectionId), conf.SignSecret)
|
|
|
folder.Id = id
|
|
|
folder.Name = data.Name
|
|
|
folder.ParentId = parentId
|
|
|
folder.ProjectId = projectId
|
|
|
+ folder.BidsectionId = bidsectionId
|
|
|
// 合同数据
|
|
|
folder.Contracts = data.Contracts
|
|
|
folder.ContractsIncome = data.ContractsIncome
|
|
@@ -182,16 +188,16 @@ func (s *treeService) GetAllContract(projectId int) *viewmodels.TreeContract {
|
|
|
|
|
|
//fmt.Println(folderlist)
|
|
|
|
|
|
- var data []*viewmodels.TreeContract
|
|
|
- data = make([]*viewmodels.TreeContract, 0)
|
|
|
+ var data []*viewmodels.FolderContract
|
|
|
+ data = make([]*viewmodels.FolderContract, 0)
|
|
|
for i, _ := range folderlist {
|
|
|
- var a *viewmodels.TreeContract
|
|
|
+ var a *viewmodels.FolderContract
|
|
|
a = &folderlist[i]
|
|
|
data = append(data, a)
|
|
|
}
|
|
|
|
|
|
node := &folderlist[0] //父节点
|
|
|
- comm.MakeTreeContract(data, node)
|
|
|
+ comm.MakeFolderContract(data, node)
|
|
|
return node
|
|
|
}
|
|
|
|
|
@@ -241,11 +247,12 @@ func (s *treeService) Create(data viewmodels.Tree) error {
|
|
|
return errors.New("上级目录不正确")
|
|
|
}
|
|
|
attribution := fmt.Sprintf("%s%d-", treeNode.Attribution, treeNode.Serial)
|
|
|
- datalist := s.dao.GetALLDepthByAttribution(data.Depth, ProjectId, attribution)
|
|
|
+ datalist := s.dao.GetALLDepthByAttribution(depth, ProjectId, attribution)
|
|
|
maxIndex := len(datalist)
|
|
|
if maxIndex != 0 {
|
|
|
serial = datalist[maxIndex-1].Serial + 1
|
|
|
}
|
|
|
+
|
|
|
// 设置归属
|
|
|
folder.Attribution = attribution //treeNode.Attribution + strconv.Itoa(treeNode.Serial) + "-"
|
|
|
folder.ParentId = IdInt
|
|
@@ -257,8 +264,13 @@ func (s *treeService) Create(data viewmodels.Tree) error {
|
|
|
folder.Isfolder = 1
|
|
|
folder.CreateTime = time.Now()
|
|
|
folder.UpdateTime = time.Now()
|
|
|
+ folder.ContractsIncome = "0"
|
|
|
+ folder.ContractsPaid = "0"
|
|
|
+ folder.ContractsPay = "0"
|
|
|
+ folder.ContractsReturned = "0"
|
|
|
err = s.dao.Create(&folder)
|
|
|
if err != nil {
|
|
|
+ log.Println("添加目录出错, error=", err)
|
|
|
return errors.New("添加目录出错")
|
|
|
}
|
|
|
return nil
|