|
@@ -24000,7 +24000,8 @@ And (UnitName != '' Or UnitName != null) {sqlWhere}");
|
|
|
group.TeamName,
|
|
|
group.Id,
|
|
|
visitStartDate = group.VisitStartDate.ToString("yyyy-MM-dd"),
|
|
|
- visitEndDate = group.VisitEndDate.ToString("yyyy-MM-dd")
|
|
|
+ visitEndDate = group.VisitEndDate.ToString("yyyy-MM-dd"),
|
|
|
+ group.ClientUnit
|
|
|
},
|
|
|
blackCodeList = blackCodeList.Select(x => new
|
|
|
{
|
|
@@ -25009,118 +25010,50 @@ And (UnitName != '' Or UnitName != null) {sqlWhere}");
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- //[HttpPost]
|
|
|
- //public async Task<IActionResult> ServerHttp(string paramStr)
|
|
|
- //{
|
|
|
- // paramStr = paramStr.TrimEnd('\'');
|
|
|
- // paramStr = paramStr.TrimStart('\'');
|
|
|
- // JsonView jw = JsonView(false);
|
|
|
- // JObject param = JObject.Parse(paramStr);
|
|
|
- // if (!param.ContainsKey("url"))
|
|
|
- // {
|
|
|
- // jw.Msg = "url null";
|
|
|
- // return Ok(jw);
|
|
|
- // }
|
|
|
-
|
|
|
- // string url = param["url"]!.ToString();
|
|
|
- // var methon = "get";
|
|
|
-
|
|
|
- // Dictionary<string, string> headValues = null;
|
|
|
- // string bodyStr = string.Empty;
|
|
|
-
|
|
|
- // if (param.ContainsKey("methon"))
|
|
|
- // {
|
|
|
- // methon = param["methon"]!.ToString().ToLower();
|
|
|
- // }
|
|
|
-
|
|
|
- // if (param.ContainsKey("header"))
|
|
|
- // {
|
|
|
- // var header = param["header"]!.ToString();
|
|
|
- // JObject headerJobject = JObject.Parse(header);
|
|
|
- // headValues = new Dictionary<string, string>();
|
|
|
- // foreach (JProperty item in headerJobject.Properties())
|
|
|
- // {
|
|
|
- // var value = item.Value.ToString();
|
|
|
- // var head = item.Path;
|
|
|
- // headValues.Add(head, value);
|
|
|
- // }
|
|
|
- // }
|
|
|
-
|
|
|
- // HttpClient client = new HttpClient();
|
|
|
- // string responseString = string.Empty;
|
|
|
- // StringContent content = null;
|
|
|
-
|
|
|
- // if (headValues != null)
|
|
|
- // {
|
|
|
- // foreach (var item in headValues.Keys)
|
|
|
- // {
|
|
|
- // if (item.ToLower().Contains("content") && item.ToLower().Contains("type"))
|
|
|
- // {
|
|
|
- // if (param.ContainsKey("body"))
|
|
|
- // {
|
|
|
- // bodyStr = param["body"]!.ToString();
|
|
|
- // }
|
|
|
- // content = new StringContent(bodyStr, Encoding.UTF8, headValues[item]);
|
|
|
- // }
|
|
|
- // else
|
|
|
- // {
|
|
|
- // client.DefaultRequestHeaders.Add(item, headValues[item]);
|
|
|
- // }
|
|
|
- // }
|
|
|
- // }
|
|
|
-
|
|
|
- // try
|
|
|
- // {
|
|
|
- // if (methon == "get")
|
|
|
- // {
|
|
|
- // responseString = await client.GetStringAsync(url);
|
|
|
+ /// <summary>
|
|
|
+ /// 报批行程AI续写
|
|
|
+ /// </summary>
|
|
|
+ /// <returns></returns>
|
|
|
+ [HttpPost]
|
|
|
+ public async Task<IActionResult> ApprovalJourneyAiWrite(ApprovalJourneyAiWriteDto dto)
|
|
|
+ {
|
|
|
+ var jw = JsonView(false);
|
|
|
|
|
|
- // }
|
|
|
- // else if (methon == "post")
|
|
|
- // {
|
|
|
- // var request = new HttpRequestMessage(HttpMethod.Post, url)
|
|
|
- // {
|
|
|
- // Content = content
|
|
|
- // };
|
|
|
- // var response = await client.SendAsync(request);
|
|
|
+ if (dto.ClientPurpose.IsNullOrWhiteSpace() || dto.ClientName.IsNullOrWhiteSpace())
|
|
|
+ {
|
|
|
+ jw.Msg = "参数有误!";
|
|
|
+ return Ok(jw);
|
|
|
+ }
|
|
|
|
|
|
- // try
|
|
|
- // {
|
|
|
- // Stream responseStream = await response.Content.ReadAsStreamAsync();
|
|
|
+ KiMiApiClient kiMi = new KiMiApiClient();
|
|
|
|
|
|
- // using (GZipStream gzipStream = new GZipStream(responseStream, CompressionMode.Decompress))
|
|
|
- // {
|
|
|
- // using (StreamReader reader = new StreamReader(gzipStream))
|
|
|
- // {
|
|
|
- // responseString = await reader.ReadToEndAsync();
|
|
|
- // }
|
|
|
- // }
|
|
|
- // }
|
|
|
- // catch (Exception)
|
|
|
- // {
|
|
|
- // responseString = await response.Content.ReadAsStringAsync();
|
|
|
- // }
|
|
|
+ List<SeedMessages> messages = new List<SeedMessages>() {
|
|
|
+ new SeedMessages
|
|
|
+ {
|
|
|
+ Role = KimiRole.system,
|
|
|
+ Content = "你是 Kimi,由 Moonshot AI 提供的人工智能助手,你更擅长中文和英文的对话。你会为用户提供安全,有帮助,准确的回答。"
|
|
|
+ },
|
|
|
+ new SeedMessages
|
|
|
+ {
|
|
|
+ Role = KimiRole.user,
|
|
|
+ Content = $@"参考这个模板格式来编写一份{dto.ClientName}拜访{dto.ClientPurpose},结合{dto.ClientName}的业务,描述拜访目的,字数在200字内(直接给出拜访目的,不输出其他内容)"
|
|
|
+ }
|
|
|
+ };
|
|
|
|
|
|
- // }
|
|
|
- // else
|
|
|
- // {
|
|
|
- // responseString = "methon error";
|
|
|
- // }
|
|
|
+ var kimi_result = await kiMi.SeedMessageByFullConterObject(messages);
|
|
|
+ string data = kimi_result.Choices[0]?.Message.Content;
|
|
|
|
|
|
- // jw = JsonView(true, "success", responseString);
|
|
|
- // }
|
|
|
- // catch (Exception ex)
|
|
|
- // {
|
|
|
- // jw.Msg = "error " + ex.Message;
|
|
|
- // jw.Data = ex.StackTrace;
|
|
|
- // }
|
|
|
- // finally
|
|
|
- // {
|
|
|
- // client.Dispose();
|
|
|
- // }
|
|
|
+ if (string.IsNullOrWhiteSpace(data))
|
|
|
+ {
|
|
|
+ jw.Data = "Ai续写失败!";
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ jw = JsonView(true, "success!", data);
|
|
|
+ }
|
|
|
|
|
|
- // return Ok(jw);
|
|
|
- //}
|
|
|
+ return Ok(jw);
|
|
|
+ }
|
|
|
|
|
|
#endregion
|
|
|
|