From 19f5f603fb890e84e43fadcf3135e660802026d0 Mon Sep 17 00:00:00 2001
From: wangrong <wangrong@shsening.com>
Date: 星期二, 28 六月 2022 14:51:13 +0800
Subject: [PATCH] 解决冲突

---
 src/app/modules/base/service/sys/menu.ts                     |    9 +-
 src/app/modules/business/controller/admin/taskimmediately.ts |    9 -
 src/app/modules/base/service/sys/user.ts                     |   25 +++--
 src/app/modules/business/service/deviceinfo.ts               |   30 -------
 src/app/modules/business/service/immediatetask.ts            |   28 +++++++
 src/configuration.ts                                         |    2 
 package.json                                                 |    2 
 src/app/modules/business/service/devicegroup.ts              |  105 +++++++++++++++++++++++++
 README.md                                                    |    2 
 9 files changed, 157 insertions(+), 55 deletions(-)

diff --git a/README.md b/README.md
index 5cf9e01..ad728fe 100644
--- a/README.md
+++ b/README.md
@@ -66,7 +66,7 @@
 ```bash
 $ npm i
 $ npm run dev
-$ open http://localhost:8001/
+$ open http://localhost:/
 ```
 
 娉細 `npm i`濡傛灉瀹夎澶辫触鍙互灏濊瘯浣跨敤[cnpm](https://developer.aliyun.com/mirror/NPM?from=tnpm)锛屾垨鑰呭垏鎹㈡偍鐨勯暅鍍忔簮
diff --git a/package.json b/package.json
index e36a2df..2324d42 100644
--- a/package.json
+++ b/package.json
@@ -84,4 +84,4 @@
   },
   "author": "cool-js.com",
   "license": "MIT"
-}
+}
\ No newline at end of file
diff --git a/src/app/modules/base/service/sys/menu.ts b/src/app/modules/base/service/sys/menu.ts
index 48d8c1d..f0a3429 100644
--- a/src/app/modules/base/service/sys/menu.ts
+++ b/src/app/modules/base/service/sys/menu.ts
@@ -42,6 +42,7 @@
         }
       });
     }
+    console.log(menus, "menus")
     return menus;
   }
 
@@ -99,10 +100,10 @@
         FROM
             t_sys_menu a
         ${this.setSql(
-          !isAdmin,
-          'JOIN t_sys_role_menu b on a.id = b.menuId AND b.roleId in (?)',
-          [roleIds]
-        )}
+      !isAdmin,
+      'JOIN t_sys_role_menu b on a.id = b.menuId AND b.roleId in (?)',
+      [roleIds]
+    )}
         GROUP BY a.id
         ORDER BY
             orderNum ASC`);
diff --git a/src/app/modules/base/service/sys/user.ts b/src/app/modules/base/service/sys/user.ts
index 5798a9a..0173d12 100644
--- a/src/app/modules/base/service/sys/user.ts
+++ b/src/app/modules/base/service/sys/user.ts
@@ -34,6 +34,7 @@
    * @param query
    */
   async page(query) {
+    console.log(query, "page 鎵撳嵃 query")
     const { keyWord, status, departmentIds = [] } = query;
     const permsDepartmentArr = await this.baseSysPermsService.departmentIds(
       this.ctx.admin.userId
@@ -50,21 +51,21 @@
             LEFT JOIN t_sys_department d on a.departmentId = d.id
         WHERE 1 = 1
             ${this.setSql(
-              !_.isEmpty(departmentIds),
-              'and a.departmentId in (?)',
-              [departmentIds]
-            )}
+      !_.isEmpty(departmentIds),
+      'and a.departmentId in (?)',
+      [departmentIds]
+    )}
             ${this.setSql(status, 'and a.status = ?', [status])}
             ${this.setSql(keyWord, 'and (a.name LIKE ? or a.username LIKE ?)', [
-              `%${keyWord}%`,
-              `%${keyWord}%`,
-            ])}
+      `%${keyWord}%`,
+      `%${keyWord}%`,
+    ])}
             ${this.setSql(true, 'and a.username != ?', ['admin'])}
             ${this.setSql(
-              this.ctx.admin.username !== 'admin',
-              'and a.departmentId in (?)',
-              [!_.isEmpty(permsDepartmentArr) ? permsDepartmentArr : [null]]
-            )}
+      this.ctx.admin.username !== 'admin',
+      'and a.departmentId in (?)',
+      [!_.isEmpty(permsDepartmentArr) ? permsDepartmentArr : [null]]
+    )}
         GROUP BY a.id
         `;
     return this.sqlRenderPage(sql, query);
@@ -117,9 +118,11 @@
    * @param param
    */
   async add(param) {
+    console.log(param, "param")
     const exists = await this.baseSysUserEntity.findOne({
       username: param.username,
     });
+    console.log(exists, "exists")
     if (!_.isEmpty(exists)) {
       throw new CoolCommException('鐢ㄦ埛鍚嶅凡缁忓瓨鍦▇');
     }
diff --git a/src/app/modules/business/controller/admin/taskimmediately.ts b/src/app/modules/business/controller/admin/taskimmediately.ts
index 7a50129..0b9890b 100644
--- a/src/app/modules/business/controller/admin/taskimmediately.ts
+++ b/src/app/modules/business/controller/admin/taskimmediately.ts
@@ -1,7 +1,7 @@
 import { ALL, Body, Get, Inject, Post, Provide, Query } from '@midwayjs/decorator';
 import { CoolController, BaseController } from '@cool-midway/core';
 import { Taskimmediately } from '../../entity/taskimmediately';
-import { TaskimmediatelyService } from '../../../business/service/taskimmediately';
+import { Immediatetask } from '../../service/immediatetask';
 import { DataController } from '../../../base/controller/dataController';
 import { SocketHandler } from '../../../../../socket/socketHandle';
 import { RpcService } from '../../../base/service/dataapi/rpcservice';
@@ -19,14 +19,11 @@
         */
 @Provide()
 @CoolController({
-  api: ['delete', 'update', 'list', 'page', 'info'],
+  api: ['add', 'delete', 'update', 'list', 'page', 'info'],
   entity: Taskimmediately,
-  // service: TaskimmediatelyService,
+  service: Immediatetask,
 })
 export class TaskimmediatelyController extends DataController {
-
-  @Inject()
-  taskimmediatelyService: TaskimmediatelyService;
 
   @Inject()
   socketHandler: SocketHandler
diff --git a/src/app/modules/business/service/devicegroup.ts b/src/app/modules/business/service/devicegroup.ts
index e7ab972..f8a3a29 100644
--- a/src/app/modules/business/service/devicegroup.ts
+++ b/src/app/modules/business/service/devicegroup.ts
@@ -1,14 +1,113 @@
 import { Provide } from '@midwayjs/decorator';
-import { BaseService } from '@cool-midway/core';
+import { BaseService, CoolCommException } from '@cool-midway/core';
 import { InjectEntityModel } from '@midwayjs/orm';
 import { Repository } from 'typeorm';
 import { DataService } from '../../base/service/dataapi/dataapi';
 import { Devicegroup } from '../entity/devicegroup';
+import { Basedeviceinfo } from '../entity/basedeviceinfo';
+import { CoolSocket } from '@cool-midway/socket';
 /**
         * 璁惧鍒嗙粍
         */
 @Provide()
 export class DevicegroupService extends DataService {
+  @InjectEntityModel(Basedeviceinfo)
+  Basedeviceinfo: Repository<Basedeviceinfo>;
   @InjectEntityModel(Devicegroup)
-  devicegroup: Repository<Devicegroup>
-}
\ No newline at end of file
+  Devicegroup: Repository<Devicegroup>;
+
+
+
+
+
+  /**
+     * 鍒嗛〉鏌ヨ
+     * @param query
+     */
+  async page(query) {
+    const sql = `SELECT
+   * 
+  FROM
+      t_base_device_group a
+  WHERE
+      1=1
+      `
+    return this.sqlRenderPage(sql, query);
+  }
+
+
+
+  async add(param: any) {
+    let ids = param.logic_id
+    let deviceinfo = this.Basedeviceinfo
+    let data_len = deviceinfo.find()
+    console.log((await data_len).length, "data_len")
+    let id_str = ''
+    if (ids.length == (await data_len).length) {
+      throw new CoolCommException("鏄惁鏇存柊鍛ㄦ湡浠诲姟")
+      // console.log("鏄惁鏇存柊鍛ㄦ湡浠诲姟")
+      // return await super.add(param)
+    } else {
+      for (let x = 0; x < ids.length; x++) {
+        let change_message = await deviceinfo.findOne({ logic_id: ids[x] })
+        if (change_message.status == 1) {
+          id_str += `${ids[x]},`
+        }
+      }
+      if (id_str == '') {
+        if (id_str == '') {
+          for (let x = 0; x < ids.length; x++) {
+            let change_message = await deviceinfo.findOne({ logic_id: ids[x] })
+            change_message.status = 1
+            await this.nativeQuery(
+              'update t_base_deviceinfo set status = 1 where logic_id = ?',
+              [ids[x]]
+            );
+          }
+        }
+        param.logic_id = param.logic_id.toString();
+        return await super.add(param)
+      } else {
+        throw new CoolCommException(`${id_str}璁惧宸茬粡鍦ㄥ叾浠栧垎缁勪腑瀛樺湪锛岃閲嶆柊閫夋嫨`)
+      }
+    }
+  }
+
+
+
+  async update(param: any): Promise<void> {
+    console.log(param, "param")
+    param.logic_id = param.logic_id.toString();
+    await this.Devicegroup.update(param.id, param)
+  }
+
+
+
+
+
+
+  async delete(ids: number[]) {
+    console.log(ids, "ids")
+    for (let i = 0; i < ids.length; i++) {
+      let change_message = this.Devicegroup.findOne({ id: ids[i] })
+      let logic_id_s = (await change_message).logic_id.split(",")
+      console.log(logic_id_s, "logic_ids")
+      await this.nativeQuery(
+        `update t_base_deviceinfo set status = 0 where logic_id in (?)`,
+        [logic_id_s]
+      )
+      await this.nativeQuery(
+        `delete from t_base_device_group where id = ?`,
+        [ids[i]]
+      )
+    }
+
+
+
+  }
+
+
+
+}
+
+
diff --git a/src/app/modules/business/service/deviceinfo.ts b/src/app/modules/business/service/deviceinfo.ts
index 8695d6a..e2d70c0 100644
--- a/src/app/modules/business/service/deviceinfo.ts
+++ b/src/app/modules/business/service/deviceinfo.ts
@@ -15,37 +15,11 @@
   @InjectEntityModel(Devicegroup)
   Devicegroup: Repository<Devicegroup>;
 
-  /**
-   * 鎻忚堪
-   */
-  // async add(param: any) {
-  //   console.log(param, "dddddddd")
-  //   const { logic_id } = param
-  //   const devicegroup = this.Devicegroup
-  //   await this.Devicegroup.insert(param)
-  //   return await super.add(param)
-  // }
 
 
-  async delete(logic_id: any) {
-    console.log(this.ctx, "ddd")
-    await this.nativeQuery(
-      'DELETE t_base_deviceinfo,t_base_device_group FROM t_base_deviceinfo,t_base_device_group WHERE t_base_deviceinfo.logic_id = t_base_device_group.logic_id AND t_base_deviceinfo.id in (?)',
-      [logic_id]
-    );
-    await this.Basedeviceinfo.delete(logic_id)
-
-  }
 
 
-  async page(query) {
 
-    // const { keyWord, status, departmentIds = [] } = query;
-    // const permsDepartmentArr = await this.Basedeviceinfo.id(
-    //   this.ctx.admin.userId
-    // ); // 閮ㄩ棬鏉冮檺
-    const sql = `
-        SELECT a.*,b.configurator FROM t_base_deviceinfo a,t_base_device_group b WHERE 1 = 1`;
-    return this.sqlRenderPage(sql, query);
-  }
+
+
 }
diff --git a/src/app/modules/business/service/immediatetask.ts b/src/app/modules/business/service/immediatetask.ts
new file mode 100644
index 0000000..68886bc
--- /dev/null
+++ b/src/app/modules/business/service/immediatetask.ts
@@ -0,0 +1,28 @@
+import { Provide } from '@midwayjs/decorator';
+import { BaseService, CoolCommException } from '@cool-midway/core';
+import { InjectEntityModel } from '@midwayjs/orm';
+import { Repository } from 'typeorm';
+import { DataService } from '../../base/service/dataapi/dataapi';
+import { Devicegroup } from '../entity/devicegroup';
+import { Basedeviceinfo } from '../entity/basedeviceinfo';
+import { CoolSocket } from '@cool-midway/socket';
+/**
+        * 璁惧鍒嗙粍
+        */
+@Provide()
+export class Immediatetask extends DataService {
+  @InjectEntityModel(Basedeviceinfo)
+  Basedeviceinfo: Repository<Basedeviceinfo>;
+  @InjectEntityModel(Devicegroup)
+  Devicegroup: Repository<Devicegroup>;
+
+
+
+  async add(param: any) {
+    console.log(param, "parm")
+
+    param.logic_ids = param.logic_ids.toString();
+    return await super.add(param)
+
+  }
+}
\ No newline at end of file
diff --git a/src/configuration.ts b/src/configuration.ts
index d178fd0..4247ab9 100644
--- a/src/configuration.ts
+++ b/src/configuration.ts
@@ -21,7 +21,7 @@
     view,
     // 蹇呴』锛屼笉鍙Щ闄わ紝 https://typeorm.io  鎵撲笉寮�锛� https://typeorm.biunav.com/zh/
     orm,
-    // swagger鏂囨。 璁块棶鍦板潃 http://127.0.0.1:8001/swagger-ui/index.html
+    // swagger鏂囨。 璁块棶鍦板潃 http://127.0.0.1:/swagger-ui/index.html
     {
       component: swagger,
       enabledEnvironment: ['local'],

--
Gitblit v1.9.1