Browse Source

'添加指标类型'

zsf 1 year ago
parent
commit
bdd68051c5

+ 2 - 0
QFD/CCanvas/CNode.h

@@ -13,6 +13,8 @@ struct CNodeData
     QString name   = "新节点";  // 名称
     QString remark = "";        // 备注
     QString dimension = "";     //量纲
+    int type          = 0;      //指标类型0效益型1成本型
+    int isEffective   = 1;      //是否有效1有效0无效
 
     CNodeData(int projId = -1, int indexType = 0, int number = -1, int pNumber = -1, int id = -1);
 

+ 51 - 39
QFD/dbService/CNodeDataService.cpp

@@ -9,13 +9,13 @@ int CNodeDataService::AddCNodeData(const CNodeData &cNodeData)
     try {
         Transaction t(SqlDBHelper::getDatabase());
         InsertQuery query = t.insertInto("t_node_data(`project_id`, `eval_type`, `number`, `p_number`, `name`, "
-                                         "`remark`, `create_time`, `dimension`)");
+                                         "`remark`, `create_time`, `dimension`, `type`, `is_effective`)");
 
-        NonQueryResult result =
-                query.values(cNodeData.projectId, cNodeData.indexType, cNodeData.number, cNodeData.pNumber,
-                             cNodeData.name, cNodeData.remark,
-                             QDateTime::currentDateTime().toString("yyyy-MM-dd hh:mm:ss"), cNodeData.dimension)
-                        .exec();
+        NonQueryResult result = query.values(cNodeData.projectId, cNodeData.indexType, cNodeData.number,
+                                             cNodeData.pNumber, cNodeData.name, cNodeData.remark,
+                                             QDateTime::currentDateTime().toString("yyyy-MM-dd hh:mm:ss"),
+                                             cNodeData.dimension, cNodeData.type, cNodeData.isEffective)
+                                        .exec();
         t.commit();
         ret = result.lastInsertId().toInt();
     } catch (const DBException &ex) {
@@ -30,10 +30,11 @@ bool CNodeDataService::SaveCNodeData(const CNodeData &cNodeData)
     try {
         Transaction t(SqlDBHelper::getDatabase());
         InsertQuery query = t.insertInto("t_node_data(`id`, `project_id`, `eval_type`, `number`, `p_number`, `name`, "
-                                         "`remark`,  `dimension`)");
+                                         "`remark`,  `dimension`, `type`, `is_effective`)");
 
         NonQueryResult result = query.values(cNodeData.id, cNodeData.projectId, cNodeData.indexType, cNodeData.number,
-                                             cNodeData.pNumber, cNodeData.name, cNodeData.remark, cNodeData.dimension)
+                                             cNodeData.pNumber, cNodeData.name, cNodeData.remark, cNodeData.dimension,
+                                             cNodeData.type, cNodeData.isEffective)
                                         .exec();
         qDebug() << "SaveCNodeData" << result.lastQuery();
         t.commit();
@@ -58,6 +59,8 @@ bool CNodeDataService::UpdateCNodeData(const CNodeData &cNodeData)
                 .set("name", cNodeData.name)
                 .set("remark", cNodeData.remark)
                 .set("dimension", cNodeData.dimension)
+                .set("type", cNodeData.type)
+                .set("is_effective", cNodeData.isEffective)
                 .set("update_time", QDateTime::currentDateTime().toString("yyyy-MM-dd hh:mm:ss"))
                 .where("id = ?", cNodeData.id);
         t.commit();
@@ -74,21 +77,24 @@ bool CNodeDataService::QueryCNodeDataById(CNodeData &cNodeData, int id)
 
     QSqlDatabase db = SqlDBHelper::getDatabase();
     QSqlQuery query(db);
-    bool ret          = false;
-    QString selectSql = QString("SELECT id,project_id, eval_type,number,p_number,name,remark,dimension FROM "
-                                "t_node_data WHERE id = %1")
-                                .arg(id);
+    bool ret = false;
+    QString selectSql =
+            QString("SELECT id,project_id, eval_type,number,p_number,name,remark,dimension,type,is_effective FROM "
+                    "t_node_data WHERE id = %1")
+                    .arg(id);
     if (query.exec(selectSql)) {
         if (query.next()) {
             if (query.isNull(0) == false) {
-                cNodeData.id        = query.value(0).toInt();
-                cNodeData.projectId = query.value(1).toInt();
-                cNodeData.indexType = query.value(1).toInt();
-                cNodeData.number    = query.value(2).toInt();
-                cNodeData.pNumber   = query.value(3).toInt();
-                cNodeData.name      = query.value(4).toString();
-                cNodeData.remark    = query.value(5).toString();
-                cNodeData.dimension = query.value(6).toString();
+                cNodeData.id          = query.value(0).toInt();
+                cNodeData.projectId   = query.value(1).toInt();
+                cNodeData.indexType   = query.value(1).toInt();
+                cNodeData.number      = query.value(2).toInt();
+                cNodeData.pNumber     = query.value(3).toInt();
+                cNodeData.name        = query.value(4).toString();
+                cNodeData.remark      = query.value(5).toString();
+                cNodeData.dimension   = query.value(6).toString();
+                cNodeData.type        = query.value(7).toInt();
+                cNodeData.isEffective = query.value(8).toInt();
             }
             ret = true;
         }
@@ -106,7 +112,8 @@ bool CNodeDataService::QueryAll(QList<CNodeData> &cNodeDataList, int projectId,
     QSqlQuery query(db);
     bool ret = false;
     QString selectSql =
-            QString("SELECT id,project_id, eval_type,number,p_number,name,remark,dimension FROM t_node_data WHERE "
+            QString("SELECT id,project_id, eval_type,number,p_number,name,remark,dimension,type,is_effective FROM "
+                    "t_node_data WHERE "
                     "project_id = %1 and eval_type= %2")
                     .arg(projectId)
                     .arg(evalType);
@@ -114,20 +121,22 @@ bool CNodeDataService::QueryAll(QList<CNodeData> &cNodeDataList, int projectId,
         while (query.next()) {
             if (query.isNull(0) == false) {
                 CNodeData cNodeData;
-                cNodeData.id        = query.value(0).toInt();
-                cNodeData.projectId = query.value(1).toInt();
-                cNodeData.indexType = query.value(2).toInt();
-                cNodeData.number    = query.value(3).toInt();
-                cNodeData.pNumber   = query.value(4).toInt();
-                cNodeData.name      = query.value(5).toString();
-                cNodeData.remark    = query.value(6).toString();
-                cNodeData.dimension = query.value(7).toString();
+                cNodeData.id          = query.value(0).toInt();
+                cNodeData.projectId   = query.value(1).toInt();
+                cNodeData.indexType   = query.value(2).toInt();
+                cNodeData.number      = query.value(3).toInt();
+                cNodeData.pNumber     = query.value(4).toInt();
+                cNodeData.name        = query.value(5).toString();
+                cNodeData.remark      = query.value(6).toString();
+                cNodeData.dimension   = query.value(7).toString();
+                cNodeData.type        = query.value(8).toInt();
+                cNodeData.isEffective = query.value(9).toInt();
                 cNodeDataList.append(cNodeData);
             }
         }
         ret = true;
     } else {
-        qDebug() << query.lastError();
+        qDebug() << "QueryAll" << query.lastError();
     }
     return ret;
 }
@@ -138,21 +147,24 @@ bool CNodeDataService::QueryAllByProjectId(QList<CNodeData> &cNodeDataList, int
     QSqlQuery query(db);
     bool ret = false;
     QString selectSql =
-            QString("SELECT id,project_id, eval_type,number,p_number,name,remark,dimension FROM t_node_data WHERE "
+            QString("SELECT id,project_id, eval_type,number,p_number,name,remark,dimension,type,is_effective FROM "
+                    "t_node_data WHERE "
                     "project_id = %1 ")
                     .arg(projectId);
     if (query.exec(selectSql)) {
         while (query.next()) {
             if (query.isNull(0) == false) {
                 CNodeData cNodeData;
-                cNodeData.id        = query.value(0).toInt();
-                cNodeData.projectId = query.value(1).toInt();
-                cNodeData.indexType = query.value(2).toInt();
-                cNodeData.number    = query.value(3).toInt();
-                cNodeData.pNumber   = query.value(4).toInt();
-                cNodeData.name      = query.value(5).toString();
-                cNodeData.remark    = query.value(6).toString();
-                cNodeData.dimension = query.value(7).toString();
+                cNodeData.id          = query.value(0).toInt();
+                cNodeData.projectId   = query.value(1).toInt();
+                cNodeData.indexType   = query.value(2).toInt();
+                cNodeData.number      = query.value(3).toInt();
+                cNodeData.pNumber     = query.value(4).toInt();
+                cNodeData.name        = query.value(5).toString();
+                cNodeData.remark      = query.value(6).toString();
+                cNodeData.dimension   = query.value(7).toString();
+                cNodeData.type        = query.value(8).toInt();
+                cNodeData.isEffective = query.value(9).toInt();
                 cNodeDataList.append(cNodeData);
             }
         }

+ 14 - 0
QFD/dbService/SchemeInfoService.cpp

@@ -72,4 +72,18 @@ bool SchemeInfoService::QuerySchemeInfoByEngineerId(QList<SchemaEval *> *schemeL
     }
     return ret;
 }
+
+bool SchemeInfoService::UpdateValueStrById(int id, QString valueStr)
+{
+    bool ret = false;
+    try {
+        Transaction t(SqlDBHelper::getDatabase());
+        t.update("t_scheme_info").set("value_str", valueStr).where("id = ?", id);
+        t.commit();
+        ret = true;
+    } catch (const DBException &ex) {
+        qDebug() << ex.lastError.text();
+    }
+    return ret;
+}
 ///////////////////////common-end/////////////////////

+ 1 - 0
QFD/dbService/SchemeInfoService.h

@@ -10,6 +10,7 @@ public:
     bool AddSchemeInfoList(const QList<SchemaEval *> &schemaEvalList);
     bool DeleteSchemeByEngineerId(int engineerId);
     bool QuerySchemeInfoByEngineerId(QList<SchemaEval *> *schemeList, int engineerId, int type);
+    bool UpdateValueStrById(int id, QString valueStr);
 };
 
 #endif  // SCHEMEINFOSERVICE_H