| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071 | 
							- 'use strict';
 
- /**
 
-  * 决策大屏用户查看权限-数据模型
 
-  *
 
-  * @author ellisran
 
-  * @date 2021/09/23
 
-  * @version
 
-  */
 
- const accountGroup = require('../const/account_group').group;
 
- module.exports = app => {
 
-     class datacollectAudit extends app.BaseService {
 
-         constructor(ctx) {
 
-             super(ctx);
 
-             this.tableName = 'datacollect_audit';
 
-         }
 
-         async getGroupInfo(pid, groupid) {
 
-             const sql = 'SELECT * FROM ?? WHERE pid = ? AND groupid = ? AND uid is NULL';
 
-             const sqlParam = [this.tableName, pid, groupid];
 
-             return await this.db.queryOne(sql, sqlParam);
 
-         }
 
-         async saveAudit(pid, groupid, uid) {
 
-             const data = {
 
-                 pid,
 
-                 groupid,
 
-                 uid,
 
-                 create_time: new Date(),
 
-             };
 
-             return await this.db.insert(this.tableName, data);
 
-         }
 
-         async saveGroup(pid, groupid) {
 
-             const transaction = await this.db.beginTransaction();
 
-             try {
 
-                 // 删除所在组的用户
 
-                 await transaction.delete(this.tableName, { pid, groupid });
 
-                 const data = {
 
-                     pid,
 
-                     groupid,
 
-                     create_time: new Date(),
 
-                 };
 
-                 await transaction.insert(this.tableName, data);
 
-                 await transaction.commit();
 
-                 return true;
 
-             } catch (err) {
 
-                 await transaction.rollback();
 
-                 throw err;
 
-             }
 
-         }
 
-         async delAudit(id) {
 
-             return await this.db.delete(this.tableName, { id });
 
-         }
 
-         async getList(pid) {
 
-             const list = await this.db.select(this.tableName, { pid });
 
-             for (const l of list) {
 
-                 if (l.uid) {
 
-                     const accountInfo = await this.ctx.service.projectAccount.getDataById(l.uid);
 
-                     l.name = accountInfo.name;
 
-                 } else {
 
-                     l.name = accountGroup[l.groupid];
 
-                 }
 
-             }
 
-             return list;
 
-         }
 
-     }
 
-     return datacollectAudit;
 
- };
 
 
  |