|
|
|
@ -13,6 +13,9 @@ using Common.DjyService;
|
|
|
|
|
using djy.Model.AmsDto;
|
|
|
|
|
using Common.Extensions;
|
|
|
|
|
using Common.DJYModel;
|
|
|
|
|
using System.Transactions;
|
|
|
|
|
using Dapper.Contrib.Extensions;
|
|
|
|
|
using Common.Utilities;
|
|
|
|
|
|
|
|
|
|
namespace djy.Service.Ams
|
|
|
|
|
{
|
|
|
|
@ -23,63 +26,172 @@ namespace djy.Service.Ams
|
|
|
|
|
{
|
|
|
|
|
DapperDBBase dapper = new DapperDBBase();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public List<AMSDto> GetAll()
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public TableData Load(AMSQuery req, string userid)
|
|
|
|
|
{
|
|
|
|
|
throw new NotImplementedException();
|
|
|
|
|
var result = new TableData();
|
|
|
|
|
var user = DbBus.Get(DbList.djydb).Select<User>().Where(w => w.GID == userid).ToOne();
|
|
|
|
|
var dto = DbBus.Get(DbList.AMSCenter).Select<AMS_Master>().Where(x => x.IsDel == "0" || x.IsDel == null&&x.CompID==user.CompId).WhereIf(req.MBLNO != null, x => x.MBLNO == req.MBLNO);
|
|
|
|
|
result.count = dto.ToList().Count();
|
|
|
|
|
var list= dto.Page(req.Page,req.Limit).ToList<AMSDto>();
|
|
|
|
|
if (list != null) {
|
|
|
|
|
foreach (var item in list)
|
|
|
|
|
{
|
|
|
|
|
var hodto = DbBus.Get(DbList.AMSCenter).Select<AMS_House>().Where(x => x.IsDel == "0" || x.IsDel == null && x.PID == item.GID).ToList<AMS_HouseDto>();
|
|
|
|
|
item.HouseDto = hodto;
|
|
|
|
|
if (hodto!=null) {
|
|
|
|
|
foreach (var it in hodto)
|
|
|
|
|
{
|
|
|
|
|
var cnt = DbBus.Get(DbList.AMSCenter).Select<AMS_Cntrno>().Where(x => x.IsDel == "0" || x.IsDel == null && x.HID == it.GID).ToList();
|
|
|
|
|
it.CntrnoDto = cnt;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
result.data = list;
|
|
|
|
|
return result;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public async void SaveInfo(AMSDto dto,string userid)
|
|
|
|
|
public void Delete(string ids)
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
if (dto.GID.IsNull())
|
|
|
|
|
string[] id = ids.Split(',');
|
|
|
|
|
using (var transaction = new TransactionScope())
|
|
|
|
|
{
|
|
|
|
|
using (var transaction = dapper.BeginTransaction(dapper.GetConn()))
|
|
|
|
|
using (IDbConnection connection = dapper.GetConn())
|
|
|
|
|
{
|
|
|
|
|
try
|
|
|
|
|
{
|
|
|
|
|
var user = DbBus.Get(DbList.djydb).Select<User>().Where(w => w.GID == userid).ToOne();
|
|
|
|
|
AMS_Master master = dto.MapTo<AMS_Master>();
|
|
|
|
|
master.CreateTime = DateTime.Now;
|
|
|
|
|
master.LastUpdate = DateTime.Now;
|
|
|
|
|
master.GID = Guid.NewGuid().ToString("N");
|
|
|
|
|
master.UserID = user.GID;
|
|
|
|
|
master.UserName = user.SHOWNAME;
|
|
|
|
|
master.CompID = user.CompId;
|
|
|
|
|
master.CompName = user.COMNAME;
|
|
|
|
|
dapper.Insert<AMS_Master>(master);
|
|
|
|
|
foreach (var item in dto.HouseDto)
|
|
|
|
|
try {
|
|
|
|
|
foreach (string oid in id)
|
|
|
|
|
{
|
|
|
|
|
AMS_House house = dto.MapTo<AMS_House>();
|
|
|
|
|
house.GID = Guid.NewGuid().ToString("N");
|
|
|
|
|
house.PID = master.GID;
|
|
|
|
|
dapper.Insert<AMS_House>(house);
|
|
|
|
|
foreach (var it in item.CntrnoDto)
|
|
|
|
|
if (oid != "")
|
|
|
|
|
{
|
|
|
|
|
AMS_Cntrno cntrno = dto.MapTo<AMS_Cntrno>();
|
|
|
|
|
cntrno.GID = Guid.NewGuid().ToString("N");
|
|
|
|
|
cntrno.PID = master.GID;
|
|
|
|
|
cntrno.HID = house.GID;
|
|
|
|
|
dapper.Insert<AMS_Cntrno>(cntrno);
|
|
|
|
|
connection.Execute("update AMS_Cntrno set isdel ='1' where pid='" + oid + "'");
|
|
|
|
|
connection.Execute("update AMS_House set isdel ='1' where pid='" + oid + "'");
|
|
|
|
|
connection.Execute("update AMS_Master set isdel ='1' where gid='" + oid + "'");
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
transaction.Rollback();
|
|
|
|
|
transaction.Complete();
|
|
|
|
|
connection.Dispose();
|
|
|
|
|
connection.Close();
|
|
|
|
|
}
|
|
|
|
|
catch (Exception ex) {
|
|
|
|
|
|
|
|
|
|
connection.Dispose();
|
|
|
|
|
connection.Close();
|
|
|
|
|
}
|
|
|
|
|
catch (Exception ex)
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public async void SaveInfo(AMSDto dto, string userid)
|
|
|
|
|
{
|
|
|
|
|
if (dto.GID.IsNull())
|
|
|
|
|
{
|
|
|
|
|
var user = DbBus.Get(DbList.djydb).Select<User>().Where(w => w.GID == userid).ToOne();
|
|
|
|
|
using (var transaction = new TransactionScope())
|
|
|
|
|
{
|
|
|
|
|
using (IDbConnection connection = dapper.GetConn())
|
|
|
|
|
{
|
|
|
|
|
transaction.Rollback();
|
|
|
|
|
try
|
|
|
|
|
{
|
|
|
|
|
AMS_Master master = dto.MapTo<AMS_Master>();
|
|
|
|
|
master.CreateTime = DateTime.Now;
|
|
|
|
|
master.LastUpdate = DateTime.Now;
|
|
|
|
|
master.GID = Guid.NewGuid().ToString("N");
|
|
|
|
|
master.UserID = user.GID;
|
|
|
|
|
master.UserName = user.SHOWNAME;
|
|
|
|
|
master.CompID = user.CompId;
|
|
|
|
|
master.CompName = user.COMNAME;
|
|
|
|
|
connection.Insert<AMS_Master>(master);
|
|
|
|
|
if (dto.HouseDto != null && dto.HouseDto.Count() > 0)
|
|
|
|
|
{
|
|
|
|
|
foreach (var item in dto.HouseDto)
|
|
|
|
|
{
|
|
|
|
|
AMS_House house = dto.MapTo<AMS_House>();
|
|
|
|
|
house.GID = Guid.NewGuid().ToString("N");
|
|
|
|
|
house.PID = master.GID;
|
|
|
|
|
connection.Insert<AMS_House>(house);
|
|
|
|
|
if (item.CntrnoDto!=null&&item.CntrnoDto.Count()>0) {
|
|
|
|
|
foreach (var it in item.CntrnoDto)
|
|
|
|
|
{
|
|
|
|
|
AMS_Cntrno cntrno = dto.MapTo<AMS_Cntrno>();
|
|
|
|
|
cntrno.GID = Guid.NewGuid().ToString("N");
|
|
|
|
|
cntrno.PID = master.GID;
|
|
|
|
|
cntrno.HID = house.GID;
|
|
|
|
|
connection.Insert<AMS_Cntrno>(cntrno);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
transaction.Complete();
|
|
|
|
|
connection.Dispose();
|
|
|
|
|
connection.Close();
|
|
|
|
|
}
|
|
|
|
|
catch (Exception ex)
|
|
|
|
|
{
|
|
|
|
|
connection.Dispose();
|
|
|
|
|
connection.Close();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
else {
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
using (var transaction = new TransactionScope())
|
|
|
|
|
{
|
|
|
|
|
using (IDbConnection connection = dapper.GetConn())
|
|
|
|
|
{
|
|
|
|
|
try
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
AMS_Master master = dto.MapTo<AMS_Master>();
|
|
|
|
|
connection.Update<AMS_Master>(master);
|
|
|
|
|
connection.Execute("delete AMS_House where pid='"+ master.GID + "'");
|
|
|
|
|
connection.Execute("delete AMS_Cntrno where pid='" + master.GID + "'");
|
|
|
|
|
if (dto.HouseDto!=null&& dto.HouseDto.Count()>0) {
|
|
|
|
|
foreach (var item in dto.HouseDto)
|
|
|
|
|
{
|
|
|
|
|
AMS_House house = dto.MapTo<AMS_House>();
|
|
|
|
|
house.GID = Guid.NewGuid().ToString("N");
|
|
|
|
|
house.PID = master.GID;
|
|
|
|
|
connection.Insert<AMS_House>(house);
|
|
|
|
|
if (item.CntrnoDto!=null&&item.CntrnoDto.Count()>0) {
|
|
|
|
|
foreach (var it in item.CntrnoDto)
|
|
|
|
|
{
|
|
|
|
|
AMS_Cntrno cntrno = dto.MapTo<AMS_Cntrno>();
|
|
|
|
|
cntrno.GID = Guid.NewGuid().ToString("N");
|
|
|
|
|
cntrno.PID = master.GID;
|
|
|
|
|
cntrno.HID = house.GID;
|
|
|
|
|
connection.Insert<AMS_Cntrno>(cntrno);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
transaction.Complete();
|
|
|
|
|
connection.Dispose();
|
|
|
|
|
connection.Close();
|
|
|
|
|
}
|
|
|
|
|
catch (Exception ex)
|
|
|
|
|
{
|
|
|
|
|
connection.Dispose();
|
|
|
|
|
connection.Close();
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|