using HslCommunication; using Newtonsoft.Json; using SqlSugar; using System; using System.Collections.Generic; using System.Linq; using System.Security.Policy; using System.Text; using System.Threading.Tasks; using WIDESEA_Common; using WIDESEA_Core; using WIDESEA_Core.BaseRepository; using WIDESEA_Core.BaseServices; using WIDESEA_Core.Helper; using WIDESEA_ISquareCabinServices; using WIDESEA_Model.Models; using static WIDESEA_DTO.SquareCabin.OrderDto; using static WIDESEA_DTO.SquareCabin.TowcsDto; namespace WIDESEA_SquareCabinServices { public class MedicineGoodsServices : ServiceBase>, IMedicineGoodsServices { public MedicineGoodsServices(IRepository BaseDal) : base(BaseDal) { } public IRepository Repository => BaseDal; /// /// 同步删除删除商品信息 /// 药品编码 /// /// public WebResponseContent DeleteProduct(string goodsno) { try { var goods = BaseDal.Db.Queryable().Where(x => x.MaterielCode == goodsno).First(); if (goods == null) { return new WebResponseContent { Status = false, Message = $"商品编号 {goodsno} 不存在" }; } var medicineDTO = new ProductInfo { //用户code customerCode = "905", //物料类型 materialCode = "YY", //产品编码 productCode = goods.MaterielCode, //产品名 productName = goods.MaterielName, //产品条码 productBarCode = goods.MaterielCode, //规格 productSpecifications = goods.MaterielSpec, //单位 unit = goods.MaterielUnit, //长 singleProductLongNum = goods.MaterielLength.ToString(), //宽 singleProductWideNum = goods.MaterielWide.ToString(), //高 singleProductHighNum = goods.MaterielHeight.ToString(), //重量 singleProductWeight = goods.MaterielWeight.ToString(), //体积 singleProductVolume = goods.MaterielVolume.ToString(), //是否取消 0是不删除,1删除 isDelete = "1" }; var url = "http://172.16.1.2:9357/file-admin/api/product/productSynchronous"; //var url = "http://172.16.1.245:9357/file-admin/api/product/productSynchronous"; var result = HttpHelper.Post(url, medicineDTO.ToJsonString()); var resp = JsonConvert.DeserializeObject>(result); if (resp != null && resp.code == "0") { //我自己也删除 base.Db.Deleteable().Where(x => x.MaterielCode == goodsno); return new WebResponseContent { Status = true, Message = "删除成功" }; } return new WebResponseContent { Status = false, Message = "删除失败请重试" }; } catch (Exception ex) { return WebResponseContent.Instance.Error(ex.Message); } } /// /// 推送异常信息给上游系统1.入库单接口;2.入库单报完成接口;3.出库单接口;4.出库报完成接口;5.药品基础信息同步接口;6.供应商信息接口;7.客户信息接口;8.库存 /// public void SendErrorToUpstream(int type, string code, string message, string remark) { try { var url = "http://121.37.118.63:80/GYZ2/95fck/exceptionLog"; var requestData = new { type = type.ToString(), code = code, message = message, remark = remark }; var result = HttpHelper.Post(url, requestData.ToJsonString()); // 可以反序列化检查 resultCode 是否为0 } catch (Exception e) { // 这里不要再抛异常了,避免死循环 Console.WriteLine("异常接口推送失败:" + e.Message); } } } }