using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using LitJson;
using System;
using System.IO;
public class JsonInfo
{
public List<DeGradeBehaviour> GradeList;
}
public class GradeManager : MonoBehaviour
{
public static GradeManager Instance;
public List<GradeBehaviour> mDegradeList;
public static List<DeGradeBehaviour> gradeinfo;
string jsonData;
private void Start()
{
Instance = this;
mDegradeList = new List<GradeBehaviour>();
StartCoroutine(ReadData()) ;
}
/// <summary>
/// 向服务器发送行为数据
/// </summary>
/// <param name="behaviourList"></param>
private void UploadBehaviour(List<GradeBehaviour> behaviourList)
{
string tmepBehaviour = LitJson.JsonMapper.ToJson(behaviourList);
Dictionary<string, string> myData = new Dictionary<string, string>();
myData.Add("stuNumber", SystemData.username);
myData.Add("behaviour", tmepBehaviour);
myData.Add("testType", SystemData.testType.ToString());
Debug.Log("aaaa" +","+ SystemData.username+ ","+tmepBehaviour+","+ SystemData.testType.ToString());
// StartConnetNet.instance.PostDate(SystemDate.netPort + "behaviour.action", myData, () => { Debug.Log("上传成功!"); }, () => { Debug.Log("上传失败!"); });
// print(SystemDate.netPort);
StartConnetNet.instance.PostDate("http://192.168.0.17:8081/hotel/behaviour.action", myData, () => { Debug.Log("上传成功!"); }, () => { Debug.Log("上传失败!"); });
}
/// <summary>
/// 添加行为
/// </summary>
/// <param name="gradeID"></param>扣分行为ID
/// <param name="Right"></param>是否正确是否正确 0 错误 1 正确 2 教师评价
/// <param name="name"></param>行为名称
/// <param name="score"></param>得分
/// <param name="area"></param>区域
/// <param name="imagestr"></param>照片id,没有照片的考核类型可以不传
public void AddBehaviour(int gradeID,string Right,string name,double score,string area = "未知区域")//,string imageid=""
{
GradeBehaviour Temp = new GradeBehaviour()
{
isRight = Right,
needShowTime = true,
needShowArea = true,
degradeID = gradeID,
datetime = DateTime.Now.ToString("yyyy/MM/dd HH:mm:ss"),
areaName = area,
errorReason = GetDeGradeBehaviour(gradeID).errorMessage,
rightOperator = GetDeGradeBehaviour(gradeID).trueMessage,
rightMessage = GetDeGradeBehaviour(gradeID).rightMessage,
behaviourType = GetDeGradeBehaviour(gradeID).behaviourType,
behaviourScore = score,
evidence = name,
// images = imageid
};
mDegradeList.Add(Temp);
UploadBehaviour(new List<GradeBehaviour>() { Temp });
}
public DeGradeBehaviour GetDeGradeBehaviour(int index)
{
string jsonstr = Convert.ToString(jsonData);
JsonInfo json = JsonMapper.ToObject<JsonInfo>(jsonstr);
gradeinfo = json.GradeList;
foreach (var item in gradeinfo)
{
if (item.ID == index) return item;
}
return null;
}
//从本地读取考核json信息
private IEnumerator ReadData()
{
string fileUrl = Application.streamingAssetsPath + "/JsonInfo.json";
//读取文件
using (StreamReader sr = File.OpenText(fileUrl))
{
//数据保存
jsonData = sr.ReadToEnd();
sr.Close();
}
GetDeGradeBehaviour(0);
yield return null;
}
}