Compare commits
8 Commits
maxz-real-
...
mvp_featur
| Author | SHA1 | Date | |
|---|---|---|---|
| 76457b6667 | |||
| e1f2afa942 | |||
| 8d5dff60f1 | |||
| 6aa057e590 | |||
| 2721cd60d1 | |||
| 1f8d079d4d | |||
| 3ae685a0e2 | |||
| c1e50736e8 |
@@ -259,14 +259,11 @@ async def upload(files:t.List[UploadFile] = File(...)):
|
|||||||
|
|
||||||
@r.get("/allapps",)
|
@r.get("/allapps",)
|
||||||
async def allapps():
|
async def allapps():
|
||||||
try:
|
headers={c.API_V1_AUTH_KEY:c.API_V1_AUTH_VALUE}
|
||||||
headers={c.API_V1_AUTH_KEY:c.API_V1_AUTH_VALUE}
|
url = f"{c.BASE_URL}{c.API_V1_STR}/apps.json"
|
||||||
url = f"{c.BASE_URL}{c.API_V1_STR}/apps.json"
|
r = httpx.get(url,headers=headers)
|
||||||
r = httpx.get(url,headers=headers,timeout=httpx.Timeout(10))
|
return r.json()
|
||||||
return r.json()
|
|
||||||
except Exception as e:
|
|
||||||
print(f"異常発生しました。{type(e).__name__},{e}")
|
|
||||||
|
|
||||||
@r.get("/app")
|
@r.get("/app")
|
||||||
async def app(app:str):
|
async def app(app:str):
|
||||||
headers={c.API_V1_AUTH_KEY:c.API_V1_AUTH_VALUE}
|
headers={c.API_V1_AUTH_KEY:c.API_V1_AUTH_VALUE}
|
||||||
|
|||||||
@@ -137,4 +137,50 @@ async def flow_delete(
|
|||||||
db=Depends(get_db),
|
db=Depends(get_db),
|
||||||
):
|
):
|
||||||
|
|
||||||
return delete_flow(db, flowid)
|
return delete_flow(db, flowid)
|
||||||
|
|
||||||
|
@r.get(
|
||||||
|
"/domain/{userid}",
|
||||||
|
response_model=List[Domain],
|
||||||
|
response_model_exclude_none=True,
|
||||||
|
)
|
||||||
|
async def domain_details(
|
||||||
|
request: Request,
|
||||||
|
userid: str,
|
||||||
|
db=Depends(get_db),
|
||||||
|
):
|
||||||
|
domains = get_domain(db, userid)
|
||||||
|
return domains
|
||||||
|
|
||||||
|
|
||||||
|
@r.post("/domain", response_model=Domain, response_model_exclude_none=True)
|
||||||
|
async def domain_create(
|
||||||
|
request: Request,
|
||||||
|
domain: DomainBase,
|
||||||
|
db=Depends(get_db),
|
||||||
|
):
|
||||||
|
return create_domain(db, domain)
|
||||||
|
|
||||||
|
|
||||||
|
@r.put(
|
||||||
|
"/domain", response_model=Domain, response_model_exclude_none=True
|
||||||
|
)
|
||||||
|
async def domain_edit(
|
||||||
|
request: Request,
|
||||||
|
domain: DomainBase,
|
||||||
|
db=Depends(get_db),
|
||||||
|
):
|
||||||
|
return edit_domain(db, domain)
|
||||||
|
|
||||||
|
|
||||||
|
@r.delete(
|
||||||
|
"/domain/{userid}/{id}", response_model=Domain, response_model_exclude_none=True
|
||||||
|
)
|
||||||
|
async def domain_delete(
|
||||||
|
request: Request,
|
||||||
|
userid: int,
|
||||||
|
id: int,
|
||||||
|
db=Depends(get_db),
|
||||||
|
):
|
||||||
|
|
||||||
|
return delete_domain(db, userid,id)
|
||||||
@@ -2,7 +2,7 @@ import os
|
|||||||
|
|
||||||
PROJECT_NAME = "KintoneAppBuilder"
|
PROJECT_NAME = "KintoneAppBuilder"
|
||||||
|
|
||||||
SQLALCHEMY_DATABASE_URI = "mssql+pymssql://maxz64@maxzdb:m@xz1205@maxzdb.database.windows.net/alloc"
|
SQLALCHEMY_DATABASE_URI = "postgres://maxz64:m@xz1205@alicornkintone.postgres.database.azure.com/postgres"
|
||||||
|
|
||||||
BASE_URL = "https://mfu07rkgnb7c.cybozu.com"
|
BASE_URL = "https://mfu07rkgnb7c.cybozu.com"
|
||||||
|
|
||||||
|
|||||||
@@ -179,4 +179,49 @@ def get_flows_by_app(db: Session, appid: str):
|
|||||||
flows = db.query(models.Flow).filter(models.Flow.appid == appid).all()
|
flows = db.query(models.Flow).filter(models.Flow.appid == appid).all()
|
||||||
if not flows:
|
if not flows:
|
||||||
raise HTTPException(status_code=404, detail="Data not found")
|
raise HTTPException(status_code=404, detail="Data not found")
|
||||||
return flows
|
return flows
|
||||||
|
|
||||||
|
def create_domain(db: Session, domain: schemas.DomainBase):
|
||||||
|
db_domain = models.UserDomain(
|
||||||
|
userid=domain.userid,
|
||||||
|
name=domain.name,
|
||||||
|
url=domain.url,
|
||||||
|
kintoneuser=domain.kintoneuser,
|
||||||
|
kintonepwd=domain.kintonepwd
|
||||||
|
)
|
||||||
|
db.add(db_domain)
|
||||||
|
db.commit()
|
||||||
|
db.refresh(db_domain)
|
||||||
|
return db_domain
|
||||||
|
|
||||||
|
def delete_domain(db: Session, userid: int,id: int):
|
||||||
|
db_domain = db.query(models.UserDomain).get(id)
|
||||||
|
if not db_domain or db_domain.userid != userid:
|
||||||
|
raise HTTPException(status.HTTP_404_NOT_FOUND, detail="Domain not found")
|
||||||
|
db.delete(db_domain)
|
||||||
|
db.commit()
|
||||||
|
return db_domain
|
||||||
|
|
||||||
|
|
||||||
|
def edit_domain(
|
||||||
|
db: Session, domain: schemas.DomainBase
|
||||||
|
) -> schemas.Domain:
|
||||||
|
db_domain = db.query(models.UserDomain).get(domain.id)
|
||||||
|
if not db_domain or db_domain.userid != domain.userid:
|
||||||
|
raise HTTPException(status.HTTP_404_NOT_FOUND, detail="Domain not found")
|
||||||
|
update_data = domain.dict(exclude_unset=True)
|
||||||
|
|
||||||
|
for key, value in update_data.items():
|
||||||
|
if(key != "id"):
|
||||||
|
setattr(db_domain, key, value)
|
||||||
|
|
||||||
|
db.add(db_domain)
|
||||||
|
db.commit()
|
||||||
|
db.refresh(db_domain)
|
||||||
|
return db_domain
|
||||||
|
|
||||||
|
def get_domain(db: Session, userid: str):
|
||||||
|
domains = db.query(models.UserDomain).filter(models.UserDomain.userid == userid).all()
|
||||||
|
if not domains:
|
||||||
|
raise HTTPException(status_code=404, detail="Data not found")
|
||||||
|
return domains
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
from sqlalchemy import Boolean, Column, Integer, String, DateTime
|
from sqlalchemy import Boolean, Column, Integer, String, DateTime,ForeignKey
|
||||||
from sqlalchemy.ext.declarative import as_declarative
|
from sqlalchemy.ext.declarative import as_declarative
|
||||||
from datetime import datetime
|
from datetime import datetime
|
||||||
|
|
||||||
@@ -48,4 +48,14 @@ class Flow(Base):
|
|||||||
appid = Column(String(100), index=True, nullable=False)
|
appid = Column(String(100), index=True, nullable=False)
|
||||||
eventid = Column(String(100), index=True, nullable=False)
|
eventid = Column(String(100), index=True, nullable=False)
|
||||||
name = Column(String(200))
|
name = Column(String(200))
|
||||||
content = Column(String)
|
content = Column(String)
|
||||||
|
|
||||||
|
class UserDomain(Base):
|
||||||
|
__tablename__ = "userdomain"
|
||||||
|
|
||||||
|
userid = Column(Integer,ForeignKey("user.id"))
|
||||||
|
name = Column(String(100), nullable=False)
|
||||||
|
url = Column(String(200), nullable=False)
|
||||||
|
kintoneuser = Column(String(100), nullable=False)
|
||||||
|
kintonepwd = Column(String(100), nullable=False)
|
||||||
|
active = Column(Boolean, default=False)
|
||||||
@@ -101,5 +101,26 @@ class Flow(Base):
|
|||||||
name: str = None
|
name: str = None
|
||||||
content: str = None
|
content: str = None
|
||||||
|
|
||||||
|
class Config:
|
||||||
|
orm_mode = True
|
||||||
|
|
||||||
|
class DomainBase(BaseModel):
|
||||||
|
id: int
|
||||||
|
userid: int
|
||||||
|
name: str
|
||||||
|
url: str
|
||||||
|
kintoneuser: str
|
||||||
|
kintonepwd: str
|
||||||
|
active:bool = False
|
||||||
|
|
||||||
|
class Domain(Base):
|
||||||
|
id: int
|
||||||
|
userid: str
|
||||||
|
name: str
|
||||||
|
url: str
|
||||||
|
kintoneuser: str
|
||||||
|
kintonepwd: str
|
||||||
|
active:bool
|
||||||
|
|
||||||
class Config:
|
class Config:
|
||||||
orm_mode = True
|
orm_mode = True
|
||||||
@@ -20,4 +20,5 @@ pyjwt==1.7.1
|
|||||||
pandas==2.0.3
|
pandas==2.0.3
|
||||||
openpyxl==3.1.2
|
openpyxl==3.1.2
|
||||||
deepdiff==6.3.1
|
deepdiff==6.3.1
|
||||||
pymssql==2.2.7
|
pymssql==2.2.7
|
||||||
|
psycopg2==2.9.8
|
||||||
@@ -1,804 +0,0 @@
|
|||||||
<mxfile host="Electron" modified="2023-10-12T05:09:00.607Z" agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) draw.io/21.1.2 Chrome/106.0.5249.199 Electron/21.4.3 Safari/537.36" etag="Qd_x1J_gzjbS0l44e71w" version="21.1.2" type="device" pages="3">
|
|
||||||
<diagram name="Page-1" id="efa7a0a1-bf9b-a30e-e6df-94a7791c09e9">
|
|
||||||
<mxGraphModel dx="1434" dy="884" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="826" pageHeight="1169" background="none" math="0" shadow="0">
|
|
||||||
<root>
|
|
||||||
<mxCell id="0" />
|
|
||||||
<mxCell id="1" parent="0" />
|
|
||||||
<mxCell id="ZIlfFuTIaODnUzWRKW0w-114" value="<p style="margin: 0px; margin-top: 4px; text-align: center; text-decoration: underline;"><strong>User</strong></p><p style="margin: 0px; margin-left: 8px;"><br></p><p style="margin: 0px; margin-left: 8px;"><br></p>" style="verticalAlign=top;align=left;overflow=fill;fontSize=12;fontFamily=Helvetica;html=1;strokeColor=#003366;shadow=1;fillColor=#D4E1F5;fontColor=#003366" parent="1" vertex="1">
|
|
||||||
<mxGeometry x="40" y="21.64" width="160" height="78.36" as="geometry" />
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="ZIlfFuTIaODnUzWRKW0w-116" value="" style="endArrow=open;endSize=12;startArrow=diamondThin;startSize=14;startFill=0;edgeStyle=orthogonalEdgeStyle;entryX=1;entryY=0.5;entryDx=0;entryDy=0;exitX=0;exitY=0.5;exitDx=0;exitDy=0;" parent="1" target="ZIlfFuTIaODnUzWRKW0w-114" edge="1">
|
|
||||||
<mxGeometry x="389.35999999999996" y="350" as="geometry">
|
|
||||||
<mxPoint x="350" y="60.820000000000164" as="sourcePoint" />
|
|
||||||
<mxPoint x="671" y="532" as="targetPoint" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="ZIlfFuTIaODnUzWRKW0w-117" value="0..n" style="resizable=0;align=left;verticalAlign=top;labelBackgroundColor=#ffffff;fontSize=10;strokeColor=#003366;shadow=1;fillColor=#D4E1F5;fontColor=#003366" parent="ZIlfFuTIaODnUzWRKW0w-116" connectable="0" vertex="1">
|
|
||||||
<mxGeometry x="-1" relative="1" as="geometry">
|
|
||||||
<mxPoint x="-30" as="offset" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="ZIlfFuTIaODnUzWRKW0w-118" value="1" style="resizable=0;align=right;verticalAlign=top;labelBackgroundColor=#ffffff;fontSize=10;strokeColor=#003366;shadow=1;fillColor=#D4E1F5;fontColor=#003366" parent="ZIlfFuTIaODnUzWRKW0w-116" connectable="0" vertex="1">
|
|
||||||
<mxGeometry x="1" relative="1" as="geometry">
|
|
||||||
<mxPoint x="18.919999999999582" y="-21.960000000000644" as="offset" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="ZIlfFuTIaODnUzWRKW0w-119" value="<p style="margin: 0px; margin-top: 4px; text-align: center; text-decoration: underline;"><strong>UserApp</strong></p><hr><p style="margin: 0px; margin-left: 8px;"><br></p>" style="verticalAlign=top;align=left;overflow=fill;fontSize=12;fontFamily=Helvetica;html=1;strokeColor=#003366;shadow=1;fillColor=#D4E1F5;fontColor=#003366" parent="1" vertex="1">
|
|
||||||
<mxGeometry x="350" y="250" width="160" height="78.36" as="geometry" />
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="ZIlfFuTIaODnUzWRKW0w-120" value="" style="endArrow=open;endSize=12;startArrow=diamondThin;startSize=14;startFill=0;edgeStyle=orthogonalEdgeStyle;entryX=0.5;entryY=1;entryDx=0;entryDy=0;exitX=0.5;exitY=0;exitDx=0;exitDy=0;" parent="1" source="ZIlfFuTIaODnUzWRKW0w-119" edge="1">
|
|
||||||
<mxGeometry x="399.35999999999996" y="360" as="geometry">
|
|
||||||
<mxPoint x="360" y="71" as="sourcePoint" />
|
|
||||||
<mxPoint x="430" y="100.00000000000023" as="targetPoint" />
|
|
||||||
<Array as="points">
|
|
||||||
<mxPoint x="430" y="140" />
|
|
||||||
<mxPoint x="430" y="140" />
|
|
||||||
</Array>
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="ZIlfFuTIaODnUzWRKW0w-121" value="0..n" style="resizable=0;align=left;verticalAlign=top;labelBackgroundColor=#ffffff;fontSize=10;strokeColor=#003366;shadow=1;fillColor=#D4E1F5;fontColor=#003366" parent="ZIlfFuTIaODnUzWRKW0w-120" connectable="0" vertex="1">
|
|
||||||
<mxGeometry x="-1" relative="1" as="geometry">
|
|
||||||
<mxPoint x="9" y="-20" as="offset" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="ZIlfFuTIaODnUzWRKW0w-122" value="1" style="resizable=0;align=right;verticalAlign=top;labelBackgroundColor=#ffffff;fontSize=10;strokeColor=#003366;shadow=1;fillColor=#D4E1F5;fontColor=#003366" parent="ZIlfFuTIaODnUzWRKW0w-120" connectable="0" vertex="1">
|
|
||||||
<mxGeometry x="1" relative="1" as="geometry">
|
|
||||||
<mxPoint x="18.919999999999582" y="-21.960000000000644" as="offset" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="ZIlfFuTIaODnUzWRKW0w-123" value="<p style="margin: 0px; margin-top: 4px; text-align: center; text-decoration: underline;"><strong>UserDomain</strong></p><hr><p style="margin: 0px; margin-left: 8px;"><br></p>" style="verticalAlign=top;align=left;overflow=fill;fontSize=12;fontFamily=Helvetica;html=1;strokeColor=#003366;shadow=1;fillColor=#D4E1F5;fontColor=#003366" parent="1" vertex="1">
|
|
||||||
<mxGeometry x="350" y="21.64" width="160" height="78.36" as="geometry" />
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="ZIlfFuTIaODnUzWRKW0w-124" value="<p style="margin: 0px; margin-top: 4px; text-align: center; text-decoration: underline;"><b>Action</b></p><hr><p style="margin: 0px; margin-left: 8px;"><br></p>" style="verticalAlign=top;align=left;overflow=fill;fontSize=12;fontFamily=Helvetica;html=1;strokeColor=#003366;shadow=1;fillColor=#D4E1F5;fontColor=#003366" parent="1" vertex="1">
|
|
||||||
<mxGeometry x="30" y="440" width="160" height="78.36" as="geometry" />
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="ZIlfFuTIaODnUzWRKW0w-125" value="<p style="margin: 0px; margin-top: 4px; text-align: center; text-decoration: underline;"><strong>AppAction</strong></p><hr><p style="margin: 0px; margin-left: 8px;"><br></p>" style="verticalAlign=top;align=left;overflow=fill;fontSize=12;fontFamily=Helvetica;html=1;strokeColor=#003366;shadow=1;fillColor=#D4E1F5;fontColor=#003366" parent="1" vertex="1">
|
|
||||||
<mxGeometry x="350" y="440" width="160" height="78.36" as="geometry" />
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="ZIlfFuTIaODnUzWRKW0w-130" value="" style="endArrow=open;endSize=12;startArrow=diamondThin;startSize=14;startFill=0;edgeStyle=orthogonalEdgeStyle;entryX=1;entryY=0.5;entryDx=0;entryDy=0;exitX=0;exitY=0.5;exitDx=0;exitDy=0;" parent="1" source="ZIlfFuTIaODnUzWRKW0w-125" target="ZIlfFuTIaODnUzWRKW0w-124" edge="1">
|
|
||||||
<mxGeometry x="209.35999999999999" y="733" as="geometry">
|
|
||||||
<mxPoint x="240.59" y="584.64" as="sourcePoint" />
|
|
||||||
<mxPoint x="240.00000000000003" y="473.0000000000002" as="targetPoint" />
|
|
||||||
<Array as="points">
|
|
||||||
<mxPoint x="241" y="479" />
|
|
||||||
<mxPoint x="200" y="480" />
|
|
||||||
</Array>
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="ZIlfFuTIaODnUzWRKW0w-131" value="0..n" style="resizable=0;align=left;verticalAlign=top;labelBackgroundColor=#ffffff;fontSize=10;strokeColor=#003366;shadow=1;fillColor=#D4E1F5;fontColor=#003366" parent="ZIlfFuTIaODnUzWRKW0w-130" connectable="0" vertex="1">
|
|
||||||
<mxGeometry x="-1" relative="1" as="geometry">
|
|
||||||
<mxPoint x="-30" y="-29" as="offset" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="ZIlfFuTIaODnUzWRKW0w-132" value="1" style="resizable=0;align=right;verticalAlign=top;labelBackgroundColor=#ffffff;fontSize=10;strokeColor=#003366;shadow=1;fillColor=#D4E1F5;fontColor=#003366" parent="ZIlfFuTIaODnUzWRKW0w-130" connectable="0" vertex="1">
|
|
||||||
<mxGeometry x="1" relative="1" as="geometry">
|
|
||||||
<mxPoint x="18.919999999999582" y="-21.960000000000644" as="offset" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="ZIlfFuTIaODnUzWRKW0w-133" value="<p style="margin: 0px; margin-top: 4px; text-align: center; text-decoration: underline;"><b>Flow</b></p><hr><p style="margin: 0px; margin-left: 8px;"><br></p>" style="verticalAlign=top;align=left;overflow=fill;fontSize=12;fontFamily=Helvetica;html=1;strokeColor=#003366;shadow=1;fillColor=#D4E1F5;fontColor=#003366" parent="1" vertex="1">
|
|
||||||
<mxGeometry x="630" y="250" width="160" height="78.36" as="geometry" />
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="ZIlfFuTIaODnUzWRKW0w-134" value="" style="endArrow=open;endSize=12;startArrow=diamondThin;startSize=14;startFill=0;edgeStyle=orthogonalEdgeStyle;entryX=1;entryY=0.5;entryDx=0;entryDy=0;exitX=0;exitY=0.5;exitDx=0;exitDy=0;" parent="1" source="ZIlfFuTIaODnUzWRKW0w-133" target="ZIlfFuTIaODnUzWRKW0w-119" edge="1">
|
|
||||||
<mxGeometry x="408.77" y="598.36" as="geometry">
|
|
||||||
<mxPoint x="440" y="450" as="sourcePoint" />
|
|
||||||
<mxPoint x="439.41" y="338.36000000000024" as="targetPoint" />
|
|
||||||
<Array as="points">
|
|
||||||
<mxPoint x="570" y="290" />
|
|
||||||
<mxPoint x="570" y="290" />
|
|
||||||
</Array>
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="ZIlfFuTIaODnUzWRKW0w-135" value="0..n" style="resizable=0;align=left;verticalAlign=top;labelBackgroundColor=#ffffff;fontSize=10;strokeColor=#003366;shadow=1;fillColor=#D4E1F5;fontColor=#003366" parent="ZIlfFuTIaODnUzWRKW0w-134" connectable="0" vertex="1">
|
|
||||||
<mxGeometry x="-1" relative="1" as="geometry">
|
|
||||||
<mxPoint x="-30" y="-20" as="offset" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="ZIlfFuTIaODnUzWRKW0w-136" value="1" style="resizable=0;align=right;verticalAlign=top;labelBackgroundColor=#ffffff;fontSize=10;strokeColor=#003366;shadow=1;fillColor=#D4E1F5;fontColor=#003366" parent="ZIlfFuTIaODnUzWRKW0w-134" connectable="0" vertex="1">
|
|
||||||
<mxGeometry x="1" relative="1" as="geometry">
|
|
||||||
<mxPoint x="18.919999999999582" y="-21.960000000000644" as="offset" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="ZIlfFuTIaODnUzWRKW0w-140" value="1" style="resizable=0;align=right;verticalAlign=top;labelBackgroundColor=#ffffff;fontSize=10;strokeColor=#003366;shadow=1;fillColor=#D4E1F5;fontColor=#003366" parent="1" connectable="0" vertex="1">
|
|
||||||
<mxGeometry x="420.00000020761206" y="99.99999999998707" as="geometry" />
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="Z9b4y0bF-qkiY6ReSsG3-1" value="<p style="margin: 0px; margin-top: 4px; text-align: center; text-decoration: underline;"><b>Tenant</b></p>" style="verticalAlign=top;align=left;overflow=fill;fontSize=12;fontFamily=Helvetica;html=1;strokeColor=#003366;shadow=1;fillColor=#D4E1F5;fontColor=#003366" parent="1" vertex="1">
|
|
||||||
<mxGeometry x="40" y="250" width="160" height="78.36" as="geometry" />
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="Z9b4y0bF-qkiY6ReSsG3-2" value="" style="endArrow=open;endSize=12;startArrow=diamondThin;startSize=14;startFill=0;edgeStyle=orthogonalEdgeStyle;exitX=0.5;exitY=1;exitDx=0;exitDy=0;" parent="1" source="ZIlfFuTIaODnUzWRKW0w-114" target="Z9b4y0bF-qkiY6ReSsG3-1" edge="1">
|
|
||||||
<mxGeometry x="209.35999999999999" y="733" as="geometry">
|
|
||||||
<mxPoint x="230" y="220" as="sourcePoint" />
|
|
||||||
<mxPoint x="70" y="220" as="targetPoint" />
|
|
||||||
<Array as="points">
|
|
||||||
<mxPoint x="120" y="220" />
|
|
||||||
<mxPoint x="121" y="220" />
|
|
||||||
<mxPoint x="110" y="221" />
|
|
||||||
</Array>
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="Z9b4y0bF-qkiY6ReSsG3-3" value="0..n" style="resizable=0;align=left;verticalAlign=top;labelBackgroundColor=#ffffff;fontSize=10;strokeColor=#003366;shadow=1;fillColor=#D4E1F5;fontColor=#003366" parent="Z9b4y0bF-qkiY6ReSsG3-2" connectable="0" vertex="1">
|
|
||||||
<mxGeometry x="-1" relative="1" as="geometry">
|
|
||||||
<mxPoint x="450" y="-100" as="offset" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="Z9b4y0bF-qkiY6ReSsG3-4" value="1" style="resizable=0;align=right;verticalAlign=top;labelBackgroundColor=#ffffff;fontSize=10;strokeColor=#003366;shadow=1;fillColor=#D4E1F5;fontColor=#003366" parent="Z9b4y0bF-qkiY6ReSsG3-2" connectable="0" vertex="1">
|
|
||||||
<mxGeometry x="1" relative="1" as="geometry">
|
|
||||||
<mxPoint x="18.919999999999582" y="-21.960000000000644" as="offset" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
</root>
|
|
||||||
</mxGraphModel>
|
|
||||||
</diagram>
|
|
||||||
<diagram id="lCZzTbn_7m8qK95pbvvS" name="ER図">
|
|
||||||
<mxGraphModel dx="1434" dy="884" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="827" pageHeight="1169" math="0" shadow="0">
|
|
||||||
<root>
|
|
||||||
<mxCell id="0" />
|
|
||||||
<mxCell id="1" parent="0" />
|
|
||||||
<mxCell id="inIyfaXWTM6ArMeTnGn6-1" value="User" style="shape=table;startSize=30;container=1;collapsible=1;childLayout=tableLayout;fixedRows=1;rowLines=0;fontStyle=1;align=center;resizeLast=1;html=1;fillColor=#f8cecc;strokeColor=#b85450;" vertex="1" parent="1">
|
|
||||||
<mxGeometry x="420" y="20" width="180" height="180" as="geometry">
|
|
||||||
<mxRectangle x="310" y="60" width="110" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="inIyfaXWTM6ArMeTnGn6-2" value="" style="shape=tableRow;horizontal=0;startSize=0;swimlaneHead=0;swimlaneBody=0;fillColor=none;collapsible=0;dropTarget=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;top=0;left=0;right=0;bottom=1;" vertex="1" parent="inIyfaXWTM6ArMeTnGn6-1">
|
|
||||||
<mxGeometry y="30" width="180" height="30" as="geometry" />
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="inIyfaXWTM6ArMeTnGn6-3" value="PK" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;fontStyle=1;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="inIyfaXWTM6ArMeTnGn6-2">
|
|
||||||
<mxGeometry width="30" height="30" as="geometry">
|
|
||||||
<mxRectangle width="30" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="inIyfaXWTM6ArMeTnGn6-4" value="id" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;align=left;spacingLeft=6;fontStyle=5;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="inIyfaXWTM6ArMeTnGn6-2">
|
|
||||||
<mxGeometry x="30" width="150" height="30" as="geometry">
|
|
||||||
<mxRectangle width="150" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="inIyfaXWTM6ArMeTnGn6-5" value="" style="shape=tableRow;horizontal=0;startSize=0;swimlaneHead=0;swimlaneBody=0;fillColor=none;collapsible=0;dropTarget=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;top=0;left=0;right=0;bottom=0;" vertex="1" parent="inIyfaXWTM6ArMeTnGn6-1">
|
|
||||||
<mxGeometry y="60" width="180" height="30" as="geometry" />
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="inIyfaXWTM6ArMeTnGn6-6" value="FK" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;editable=1;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="inIyfaXWTM6ArMeTnGn6-5">
|
|
||||||
<mxGeometry width="30" height="30" as="geometry">
|
|
||||||
<mxRectangle width="30" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="inIyfaXWTM6ArMeTnGn6-7" value="<b style="border-color: var(--border-color); text-align: center; color: rgb(0, 51, 102);">Tenant_id</b>" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;align=left;spacingLeft=6;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="inIyfaXWTM6ArMeTnGn6-5">
|
|
||||||
<mxGeometry x="30" width="150" height="30" as="geometry">
|
|
||||||
<mxRectangle width="150" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="inIyfaXWTM6ArMeTnGn6-8" value="" style="shape=tableRow;horizontal=0;startSize=0;swimlaneHead=0;swimlaneBody=0;fillColor=none;collapsible=0;dropTarget=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;top=0;left=0;right=0;bottom=0;" vertex="1" parent="inIyfaXWTM6ArMeTnGn6-1">
|
|
||||||
<mxGeometry y="90" width="180" height="30" as="geometry" />
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="inIyfaXWTM6ArMeTnGn6-9" value="" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;editable=1;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="inIyfaXWTM6ArMeTnGn6-8">
|
|
||||||
<mxGeometry width="30" height="30" as="geometry">
|
|
||||||
<mxRectangle width="30" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="inIyfaXWTM6ArMeTnGn6-10" value="ユーザー名" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;align=left;spacingLeft=6;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="inIyfaXWTM6ArMeTnGn6-8">
|
|
||||||
<mxGeometry x="30" width="150" height="30" as="geometry">
|
|
||||||
<mxRectangle width="150" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="inIyfaXWTM6ArMeTnGn6-11" value="" style="shape=tableRow;horizontal=0;startSize=0;swimlaneHead=0;swimlaneBody=0;fillColor=none;collapsible=0;dropTarget=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;top=0;left=0;right=0;bottom=0;" vertex="1" parent="inIyfaXWTM6ArMeTnGn6-1">
|
|
||||||
<mxGeometry y="120" width="180" height="30" as="geometry" />
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="inIyfaXWTM6ArMeTnGn6-12" value="" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;editable=1;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="inIyfaXWTM6ArMeTnGn6-11">
|
|
||||||
<mxGeometry width="30" height="30" as="geometry">
|
|
||||||
<mxRectangle width="30" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="inIyfaXWTM6ArMeTnGn6-13" value="パスワード(暗号化)" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;align=left;spacingLeft=6;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="inIyfaXWTM6ArMeTnGn6-11">
|
|
||||||
<mxGeometry x="30" width="150" height="30" as="geometry">
|
|
||||||
<mxRectangle width="150" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="NCbWPNvujZOKFJAbQVH6-1" value="" style="shape=tableRow;horizontal=0;startSize=0;swimlaneHead=0;swimlaneBody=0;fillColor=none;collapsible=0;dropTarget=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;top=0;left=0;right=0;bottom=0;" vertex="1" parent="inIyfaXWTM6ArMeTnGn6-1">
|
|
||||||
<mxGeometry y="150" width="180" height="30" as="geometry" />
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="NCbWPNvujZOKFJAbQVH6-2" value="" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;editable=1;overflow=hidden;" vertex="1" parent="NCbWPNvujZOKFJAbQVH6-1">
|
|
||||||
<mxGeometry width="30" height="30" as="geometry">
|
|
||||||
<mxRectangle width="30" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="NCbWPNvujZOKFJAbQVH6-3" value="その他情報" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;align=left;spacingLeft=6;overflow=hidden;" vertex="1" parent="NCbWPNvujZOKFJAbQVH6-1">
|
|
||||||
<mxGeometry x="30" width="150" height="30" as="geometry">
|
|
||||||
<mxRectangle width="150" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="inIyfaXWTM6ArMeTnGn6-14" value="Domain" style="shape=table;startSize=30;container=1;collapsible=1;childLayout=tableLayout;fixedRows=1;rowLines=0;fontStyle=1;align=center;resizeLast=1;html=1;fillColor=#f8cecc;strokeColor=#b85450;" vertex="1" parent="1">
|
|
||||||
<mxGeometry x="420" y="240" width="180" height="180" as="geometry">
|
|
||||||
<mxRectangle x="590" y="60" width="100" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="inIyfaXWTM6ArMeTnGn6-15" value="" style="shape=tableRow;horizontal=0;startSize=0;swimlaneHead=0;swimlaneBody=0;fillColor=none;collapsible=0;dropTarget=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;top=0;left=0;right=0;bottom=1;" vertex="1" parent="inIyfaXWTM6ArMeTnGn6-14">
|
|
||||||
<mxGeometry y="30" width="180" height="30" as="geometry" />
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="inIyfaXWTM6ArMeTnGn6-16" value="PK" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;fontStyle=1;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="inIyfaXWTM6ArMeTnGn6-15">
|
|
||||||
<mxGeometry width="30" height="30" as="geometry">
|
|
||||||
<mxRectangle width="30" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="inIyfaXWTM6ArMeTnGn6-17" value="id" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;align=left;spacingLeft=6;fontStyle=5;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="inIyfaXWTM6ArMeTnGn6-15">
|
|
||||||
<mxGeometry x="30" width="150" height="30" as="geometry">
|
|
||||||
<mxRectangle width="150" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="inIyfaXWTM6ArMeTnGn6-24" value="" style="shape=tableRow;horizontal=0;startSize=0;swimlaneHead=0;swimlaneBody=0;fillColor=none;collapsible=0;dropTarget=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;top=0;left=0;right=0;bottom=0;" vertex="1" parent="inIyfaXWTM6ArMeTnGn6-14">
|
|
||||||
<mxGeometry y="60" width="180" height="30" as="geometry" />
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="inIyfaXWTM6ArMeTnGn6-25" value="" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;editable=1;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="inIyfaXWTM6ArMeTnGn6-24">
|
|
||||||
<mxGeometry width="30" height="30" as="geometry">
|
|
||||||
<mxRectangle width="30" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="inIyfaXWTM6ArMeTnGn6-26" value="domain_url" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;align=left;spacingLeft=6;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="inIyfaXWTM6ArMeTnGn6-24">
|
|
||||||
<mxGeometry x="30" width="150" height="30" as="geometry">
|
|
||||||
<mxRectangle width="150" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="GH2g80-cBXHe62XdPV4N-31" value="" style="shape=tableRow;horizontal=0;startSize=0;swimlaneHead=0;swimlaneBody=0;fillColor=none;collapsible=0;dropTarget=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;top=0;left=0;right=0;bottom=0;" vertex="1" parent="inIyfaXWTM6ArMeTnGn6-14">
|
|
||||||
<mxGeometry y="90" width="180" height="30" as="geometry" />
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="GH2g80-cBXHe62XdPV4N-32" value="" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;editable=1;overflow=hidden;" vertex="1" parent="GH2g80-cBXHe62XdPV4N-31">
|
|
||||||
<mxGeometry width="30" height="30" as="geometry">
|
|
||||||
<mxRectangle width="30" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="GH2g80-cBXHe62XdPV4N-33" value="kintoneユーザーID" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;align=left;spacingLeft=6;overflow=hidden;" vertex="1" parent="GH2g80-cBXHe62XdPV4N-31">
|
|
||||||
<mxGeometry x="30" width="150" height="30" as="geometry">
|
|
||||||
<mxRectangle width="150" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="GH2g80-cBXHe62XdPV4N-34" value="" style="shape=tableRow;horizontal=0;startSize=0;swimlaneHead=0;swimlaneBody=0;fillColor=none;collapsible=0;dropTarget=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;top=0;left=0;right=0;bottom=0;" vertex="1" parent="inIyfaXWTM6ArMeTnGn6-14">
|
|
||||||
<mxGeometry y="120" width="180" height="30" as="geometry" />
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="GH2g80-cBXHe62XdPV4N-35" value="" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;editable=1;overflow=hidden;" vertex="1" parent="GH2g80-cBXHe62XdPV4N-34">
|
|
||||||
<mxGeometry width="30" height="30" as="geometry">
|
|
||||||
<mxRectangle width="30" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="GH2g80-cBXHe62XdPV4N-36" value="kintoneパスワード" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;align=left;spacingLeft=6;overflow=hidden;" vertex="1" parent="GH2g80-cBXHe62XdPV4N-34">
|
|
||||||
<mxGeometry x="30" width="150" height="30" as="geometry">
|
|
||||||
<mxRectangle width="150" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="NCbWPNvujZOKFJAbQVH6-4" value="" style="shape=tableRow;horizontal=0;startSize=0;swimlaneHead=0;swimlaneBody=0;fillColor=none;collapsible=0;dropTarget=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;top=0;left=0;right=0;bottom=0;" vertex="1" parent="inIyfaXWTM6ArMeTnGn6-14">
|
|
||||||
<mxGeometry y="150" width="180" height="30" as="geometry" />
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="NCbWPNvujZOKFJAbQVH6-5" value="" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;editable=1;overflow=hidden;" vertex="1" parent="NCbWPNvujZOKFJAbQVH6-4">
|
|
||||||
<mxGeometry width="30" height="30" as="geometry">
|
|
||||||
<mxRectangle width="30" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="NCbWPNvujZOKFJAbQVH6-6" value="API_Key" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;align=left;spacingLeft=6;overflow=hidden;" vertex="1" parent="NCbWPNvujZOKFJAbQVH6-4">
|
|
||||||
<mxGeometry x="30" width="150" height="30" as="geometry">
|
|
||||||
<mxRectangle width="150" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="QUGX19b9cPh8sdE7zjoR-1" value="<b style="border-color: var(--border-color); color: rgb(0, 51, 102);">Tenant</b>" style="shape=table;startSize=30;container=1;collapsible=1;childLayout=tableLayout;fixedRows=1;rowLines=0;fontStyle=1;align=center;resizeLast=1;html=1;fillColor=#f8cecc;strokeColor=#b85450;" vertex="1" parent="1">
|
|
||||||
<mxGeometry x="130" y="20" width="180" height="180" as="geometry">
|
|
||||||
<mxRectangle x="40" y="60" width="100" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="QUGX19b9cPh8sdE7zjoR-2" value="" style="shape=tableRow;horizontal=0;startSize=0;swimlaneHead=0;swimlaneBody=0;fillColor=none;collapsible=0;dropTarget=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;top=0;left=0;right=0;bottom=1;" vertex="1" parent="QUGX19b9cPh8sdE7zjoR-1">
|
|
||||||
<mxGeometry y="30" width="180" height="30" as="geometry" />
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="QUGX19b9cPh8sdE7zjoR-3" value="PK" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;fontStyle=1;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="QUGX19b9cPh8sdE7zjoR-2">
|
|
||||||
<mxGeometry width="30" height="30" as="geometry">
|
|
||||||
<mxRectangle width="30" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="QUGX19b9cPh8sdE7zjoR-4" value="id" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;align=left;spacingLeft=6;fontStyle=5;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="QUGX19b9cPh8sdE7zjoR-2">
|
|
||||||
<mxGeometry x="30" width="150" height="30" as="geometry">
|
|
||||||
<mxRectangle width="150" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="QUGX19b9cPh8sdE7zjoR-5" value="" style="shape=tableRow;horizontal=0;startSize=0;swimlaneHead=0;swimlaneBody=0;fillColor=none;collapsible=0;dropTarget=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;top=0;left=0;right=0;bottom=0;" vertex="1" parent="QUGX19b9cPh8sdE7zjoR-1">
|
|
||||||
<mxGeometry y="60" width="180" height="30" as="geometry" />
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="QUGX19b9cPh8sdE7zjoR-6" value="" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;editable=1;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="QUGX19b9cPh8sdE7zjoR-5">
|
|
||||||
<mxGeometry width="30" height="30" as="geometry">
|
|
||||||
<mxRectangle width="30" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="QUGX19b9cPh8sdE7zjoR-7" value="名前" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;align=left;spacingLeft=6;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="QUGX19b9cPh8sdE7zjoR-5">
|
|
||||||
<mxGeometry x="30" width="150" height="30" as="geometry">
|
|
||||||
<mxRectangle width="150" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="QUGX19b9cPh8sdE7zjoR-8" value="" style="shape=tableRow;horizontal=0;startSize=0;swimlaneHead=0;swimlaneBody=0;fillColor=none;collapsible=0;dropTarget=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;top=0;left=0;right=0;bottom=0;" vertex="1" parent="QUGX19b9cPh8sdE7zjoR-1">
|
|
||||||
<mxGeometry y="90" width="180" height="30" as="geometry" />
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="QUGX19b9cPh8sdE7zjoR-9" value="" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;editable=1;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="QUGX19b9cPh8sdE7zjoR-8">
|
|
||||||
<mxGeometry width="30" height="30" as="geometry">
|
|
||||||
<mxRectangle width="30" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="QUGX19b9cPh8sdE7zjoR-10" value="ライセンスキー" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;align=left;spacingLeft=6;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="QUGX19b9cPh8sdE7zjoR-8">
|
|
||||||
<mxGeometry x="30" width="150" height="30" as="geometry">
|
|
||||||
<mxRectangle width="150" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="QUGX19b9cPh8sdE7zjoR-11" value="" style="shape=tableRow;horizontal=0;startSize=0;swimlaneHead=0;swimlaneBody=0;fillColor=none;collapsible=0;dropTarget=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;top=0;left=0;right=0;bottom=0;" vertex="1" parent="QUGX19b9cPh8sdE7zjoR-1">
|
|
||||||
<mxGeometry y="120" width="180" height="30" as="geometry" />
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="QUGX19b9cPh8sdE7zjoR-12" value="" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;editable=1;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="QUGX19b9cPh8sdE7zjoR-11">
|
|
||||||
<mxGeometry width="30" height="30" as="geometry">
|
|
||||||
<mxRectangle width="30" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="QUGX19b9cPh8sdE7zjoR-13" value="利用期限" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;align=left;spacingLeft=6;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="QUGX19b9cPh8sdE7zjoR-11">
|
|
||||||
<mxGeometry x="30" width="150" height="30" as="geometry">
|
|
||||||
<mxRectangle width="150" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="xY3sbCmQmCiIU-0kb39k-5" value="" style="shape=tableRow;horizontal=0;startSize=0;swimlaneHead=0;swimlaneBody=0;fillColor=none;collapsible=0;dropTarget=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;top=0;left=0;right=0;bottom=0;" vertex="1" parent="QUGX19b9cPh8sdE7zjoR-1">
|
|
||||||
<mxGeometry y="150" width="180" height="30" as="geometry" />
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="xY3sbCmQmCiIU-0kb39k-6" value="" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;editable=1;overflow=hidden;" vertex="1" parent="xY3sbCmQmCiIU-0kb39k-5">
|
|
||||||
<mxGeometry width="30" height="30" as="geometry">
|
|
||||||
<mxRectangle width="30" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="xY3sbCmQmCiIU-0kb39k-7" value="その他情報" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;align=left;spacingLeft=6;overflow=hidden;" vertex="1" parent="xY3sbCmQmCiIU-0kb39k-5">
|
|
||||||
<mxGeometry x="30" width="150" height="30" as="geometry">
|
|
||||||
<mxRectangle width="150" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="8Zu1yShcSHxMs68hy39H-1" value="Flow" style="shape=table;startSize=30;container=1;collapsible=1;childLayout=tableLayout;fixedRows=1;rowLines=0;fontStyle=1;align=center;resizeLast=1;html=1;fillColor=#dae8fc;strokeColor=#6c8ebf;" vertex="1" parent="1">
|
|
||||||
<mxGeometry x="420" y="480" width="180" height="240" as="geometry">
|
|
||||||
<mxRectangle x="320" y="370" width="60" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="8Zu1yShcSHxMs68hy39H-2" value="" style="shape=tableRow;horizontal=0;startSize=0;swimlaneHead=0;swimlaneBody=0;fillColor=none;collapsible=0;dropTarget=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;top=0;left=0;right=0;bottom=1;" vertex="1" parent="8Zu1yShcSHxMs68hy39H-1">
|
|
||||||
<mxGeometry y="30" width="180" height="30" as="geometry" />
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="8Zu1yShcSHxMs68hy39H-3" value="PK" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;fontStyle=1;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="8Zu1yShcSHxMs68hy39H-2">
|
|
||||||
<mxGeometry width="30" height="30" as="geometry">
|
|
||||||
<mxRectangle width="30" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="8Zu1yShcSHxMs68hy39H-4" value="id" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;align=left;spacingLeft=6;fontStyle=5;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="8Zu1yShcSHxMs68hy39H-2">
|
|
||||||
<mxGeometry x="30" width="150" height="30" as="geometry">
|
|
||||||
<mxRectangle width="150" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="NCbWPNvujZOKFJAbQVH6-56" value="" style="shape=tableRow;horizontal=0;startSize=0;swimlaneHead=0;swimlaneBody=0;fillColor=none;collapsible=0;dropTarget=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;top=0;left=0;right=0;bottom=0;" vertex="1" parent="8Zu1yShcSHxMs68hy39H-1">
|
|
||||||
<mxGeometry y="60" width="180" height="30" as="geometry" />
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="NCbWPNvujZOKFJAbQVH6-57" value="FK" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;fontStyle=0;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="NCbWPNvujZOKFJAbQVH6-56">
|
|
||||||
<mxGeometry width="30" height="30" as="geometry">
|
|
||||||
<mxRectangle width="30" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="NCbWPNvujZOKFJAbQVH6-58" value="domain_id" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;align=left;spacingLeft=6;fontStyle=0;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="NCbWPNvujZOKFJAbQVH6-56">
|
|
||||||
<mxGeometry x="30" width="150" height="30" as="geometry">
|
|
||||||
<mxRectangle width="150" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="8Zu1yShcSHxMs68hy39H-5" value="" style="shape=tableRow;horizontal=0;startSize=0;swimlaneHead=0;swimlaneBody=0;fillColor=none;collapsible=0;dropTarget=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;top=0;left=0;right=0;bottom=0;" vertex="1" parent="8Zu1yShcSHxMs68hy39H-1">
|
|
||||||
<mxGeometry y="90" width="180" height="30" as="geometry" />
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="8Zu1yShcSHxMs68hy39H-6" value="FK" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;editable=1;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="8Zu1yShcSHxMs68hy39H-5">
|
|
||||||
<mxGeometry width="30" height="30" as="geometry">
|
|
||||||
<mxRectangle width="30" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="8Zu1yShcSHxMs68hy39H-7" value="app_id" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;align=left;spacingLeft=6;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="8Zu1yShcSHxMs68hy39H-5">
|
|
||||||
<mxGeometry x="30" width="150" height="30" as="geometry">
|
|
||||||
<mxRectangle width="150" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="8Zu1yShcSHxMs68hy39H-8" value="" style="shape=tableRow;horizontal=0;startSize=0;swimlaneHead=0;swimlaneBody=0;fillColor=none;collapsible=0;dropTarget=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;top=0;left=0;right=0;bottom=0;" vertex="1" parent="8Zu1yShcSHxMs68hy39H-1">
|
|
||||||
<mxGeometry y="120" width="180" height="30" as="geometry" />
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="8Zu1yShcSHxMs68hy39H-9" value="" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;editable=1;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="8Zu1yShcSHxMs68hy39H-8">
|
|
||||||
<mxGeometry width="30" height="30" as="geometry">
|
|
||||||
<mxRectangle width="30" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="8Zu1yShcSHxMs68hy39H-10" value="spaceid" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;align=left;spacingLeft=6;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="8Zu1yShcSHxMs68hy39H-8">
|
|
||||||
<mxGeometry x="30" width="150" height="30" as="geometry">
|
|
||||||
<mxRectangle width="150" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="8Zu1yShcSHxMs68hy39H-11" value="" style="shape=tableRow;horizontal=0;startSize=0;swimlaneHead=0;swimlaneBody=0;fillColor=none;collapsible=0;dropTarget=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;top=0;left=0;right=0;bottom=0;" vertex="1" parent="8Zu1yShcSHxMs68hy39H-1">
|
|
||||||
<mxGeometry y="150" width="180" height="30" as="geometry" />
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="8Zu1yShcSHxMs68hy39H-12" value="" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;editable=1;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="8Zu1yShcSHxMs68hy39H-11">
|
|
||||||
<mxGeometry width="30" height="30" as="geometry">
|
|
||||||
<mxRectangle width="30" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="8Zu1yShcSHxMs68hy39H-13" value="appid" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;align=left;spacingLeft=6;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="8Zu1yShcSHxMs68hy39H-11">
|
|
||||||
<mxGeometry x="30" width="150" height="30" as="geometry">
|
|
||||||
<mxRectangle width="150" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="XZEu5LJmFrV2HCpzu9aW-12" value="" style="shape=tableRow;horizontal=0;startSize=0;swimlaneHead=0;swimlaneBody=0;fillColor=none;collapsible=0;dropTarget=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;top=0;left=0;right=0;bottom=0;" vertex="1" parent="8Zu1yShcSHxMs68hy39H-1">
|
|
||||||
<mxGeometry y="180" width="180" height="30" as="geometry" />
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="XZEu5LJmFrV2HCpzu9aW-13" value="" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;editable=1;overflow=hidden;" vertex="1" parent="XZEu5LJmFrV2HCpzu9aW-12">
|
|
||||||
<mxGeometry width="30" height="30" as="geometry">
|
|
||||||
<mxRectangle width="30" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="XZEu5LJmFrV2HCpzu9aW-14" value="content" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;align=left;spacingLeft=6;overflow=hidden;" vertex="1" parent="XZEu5LJmFrV2HCpzu9aW-12">
|
|
||||||
<mxGeometry x="30" width="150" height="30" as="geometry">
|
|
||||||
<mxRectangle width="150" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="GH2g80-cBXHe62XdPV4N-14" value="" style="shape=tableRow;horizontal=0;startSize=0;swimlaneHead=0;swimlaneBody=0;fillColor=none;collapsible=0;dropTarget=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;top=0;left=0;right=0;bottom=0;" vertex="1" parent="8Zu1yShcSHxMs68hy39H-1">
|
|
||||||
<mxGeometry y="210" width="180" height="30" as="geometry" />
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="GH2g80-cBXHe62XdPV4N-15" value="FK" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;editable=1;overflow=hidden;" vertex="1" parent="GH2g80-cBXHe62XdPV4N-14">
|
|
||||||
<mxGeometry width="30" height="30" as="geometry">
|
|
||||||
<mxRectangle width="30" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="GH2g80-cBXHe62XdPV4N-16" value="event_id" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;align=left;spacingLeft=6;overflow=hidden;" vertex="1" parent="GH2g80-cBXHe62XdPV4N-14">
|
|
||||||
<mxGeometry x="30" width="150" height="30" as="geometry">
|
|
||||||
<mxRectangle width="150" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="GH2g80-cBXHe62XdPV4N-1" value="Event" style="shape=table;startSize=30;container=1;collapsible=1;childLayout=tableLayout;fixedRows=1;rowLines=0;fontStyle=1;align=center;resizeLast=1;html=1;fillColor=#f8cecc;strokeColor=#b85450;" vertex="1" parent="1">
|
|
||||||
<mxGeometry x="140" y="435" width="180" height="150" as="geometry">
|
|
||||||
<mxRectangle x="40" y="390" width="70" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="GH2g80-cBXHe62XdPV4N-2" value="" style="shape=tableRow;horizontal=0;startSize=0;swimlaneHead=0;swimlaneBody=0;fillColor=none;collapsible=0;dropTarget=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;top=0;left=0;right=0;bottom=1;" vertex="1" parent="GH2g80-cBXHe62XdPV4N-1">
|
|
||||||
<mxGeometry y="30" width="180" height="30" as="geometry" />
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="GH2g80-cBXHe62XdPV4N-3" value="PK" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;fontStyle=1;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="GH2g80-cBXHe62XdPV4N-2">
|
|
||||||
<mxGeometry width="30" height="30" as="geometry">
|
|
||||||
<mxRectangle width="30" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="GH2g80-cBXHe62XdPV4N-4" value="id" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;align=left;spacingLeft=6;fontStyle=5;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="GH2g80-cBXHe62XdPV4N-2">
|
|
||||||
<mxGeometry x="30" width="150" height="30" as="geometry">
|
|
||||||
<mxRectangle width="150" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="GH2g80-cBXHe62XdPV4N-5" value="" style="shape=tableRow;horizontal=0;startSize=0;swimlaneHead=0;swimlaneBody=0;fillColor=none;collapsible=0;dropTarget=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;top=0;left=0;right=0;bottom=0;" vertex="1" parent="GH2g80-cBXHe62XdPV4N-1">
|
|
||||||
<mxGeometry y="60" width="180" height="30" as="geometry" />
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="GH2g80-cBXHe62XdPV4N-6" value="" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;editable=1;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="GH2g80-cBXHe62XdPV4N-5">
|
|
||||||
<mxGeometry width="30" height="30" as="geometry">
|
|
||||||
<mxRectangle width="30" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="GH2g80-cBXHe62XdPV4N-7" value="画面名" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;align=left;spacingLeft=6;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="GH2g80-cBXHe62XdPV4N-5">
|
|
||||||
<mxGeometry x="30" width="150" height="30" as="geometry">
|
|
||||||
<mxRectangle width="150" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="GH2g80-cBXHe62XdPV4N-8" value="" style="shape=tableRow;horizontal=0;startSize=0;swimlaneHead=0;swimlaneBody=0;fillColor=none;collapsible=0;dropTarget=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;top=0;left=0;right=0;bottom=0;" vertex="1" parent="GH2g80-cBXHe62XdPV4N-1">
|
|
||||||
<mxGeometry y="90" width="180" height="30" as="geometry" />
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="GH2g80-cBXHe62XdPV4N-9" value="" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;editable=1;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="GH2g80-cBXHe62XdPV4N-8">
|
|
||||||
<mxGeometry width="30" height="30" as="geometry">
|
|
||||||
<mxRectangle width="30" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="GH2g80-cBXHe62XdPV4N-10" value="イベント名" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;align=left;spacingLeft=6;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="GH2g80-cBXHe62XdPV4N-8">
|
|
||||||
<mxGeometry x="30" width="150" height="30" as="geometry">
|
|
||||||
<mxRectangle width="150" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="GH2g80-cBXHe62XdPV4N-11" value="" style="shape=tableRow;horizontal=0;startSize=0;swimlaneHead=0;swimlaneBody=0;fillColor=none;collapsible=0;dropTarget=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;top=0;left=0;right=0;bottom=0;" vertex="1" parent="GH2g80-cBXHe62XdPV4N-1">
|
|
||||||
<mxGeometry y="120" width="180" height="30" as="geometry" />
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="GH2g80-cBXHe62XdPV4N-12" value="" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;editable=1;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="GH2g80-cBXHe62XdPV4N-11">
|
|
||||||
<mxGeometry width="30" height="30" as="geometry">
|
|
||||||
<mxRectangle width="30" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="GH2g80-cBXHe62XdPV4N-13" value="モバイル使用可能か" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;align=left;spacingLeft=6;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="GH2g80-cBXHe62XdPV4N-11">
|
|
||||||
<mxGeometry x="30" width="150" height="30" as="geometry">
|
|
||||||
<mxRectangle width="150" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="GH2g80-cBXHe62XdPV4N-17" value="" style="edgeStyle=entityRelationEdgeStyle;fontSize=12;html=1;endArrow=ERoneToMany;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;curved=1;" edge="1" parent="1" source="GH2g80-cBXHe62XdPV4N-2" target="GH2g80-cBXHe62XdPV4N-14">
|
|
||||||
<mxGeometry width="100" height="100" relative="1" as="geometry">
|
|
||||||
<mxPoint x="630" y="845" as="sourcePoint" />
|
|
||||||
<mxPoint x="530" y="1085" as="targetPoint" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="GH2g80-cBXHe62XdPV4N-18" value="App" style="shape=table;startSize=30;container=1;collapsible=1;childLayout=tableLayout;fixedRows=1;rowLines=0;fontStyle=1;align=center;resizeLast=1;html=1;fillColor=#dae8fc;strokeColor=#6c8ebf;" vertex="1" parent="1">
|
|
||||||
<mxGeometry x="710" y="280" width="180" height="150" as="geometry">
|
|
||||||
<mxRectangle x="600" y="370" width="60" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="NCbWPNvujZOKFJAbQVH6-34" value="" style="shape=tableRow;horizontal=0;startSize=0;swimlaneHead=0;swimlaneBody=0;fillColor=none;collapsible=0;dropTarget=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;top=0;left=0;right=0;bottom=1;" vertex="1" parent="GH2g80-cBXHe62XdPV4N-18">
|
|
||||||
<mxGeometry y="30" width="180" height="30" as="geometry" />
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="NCbWPNvujZOKFJAbQVH6-35" value="PK" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;fontStyle=1;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="NCbWPNvujZOKFJAbQVH6-34">
|
|
||||||
<mxGeometry width="30" height="30" as="geometry">
|
|
||||||
<mxRectangle width="30" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="NCbWPNvujZOKFJAbQVH6-36" value="id" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;align=left;spacingLeft=6;fontStyle=5;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="NCbWPNvujZOKFJAbQVH6-34">
|
|
||||||
<mxGeometry x="30" width="150" height="30" as="geometry">
|
|
||||||
<mxRectangle width="150" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="NCbWPNvujZOKFJAbQVH6-51" value="" style="shape=tableRow;horizontal=0;startSize=0;swimlaneHead=0;swimlaneBody=0;fillColor=none;collapsible=0;dropTarget=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;top=0;left=0;right=0;bottom=1;" vertex="1" parent="GH2g80-cBXHe62XdPV4N-18">
|
|
||||||
<mxGeometry y="60" width="180" height="30" as="geometry" />
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="NCbWPNvujZOKFJAbQVH6-52" value="UK" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;fontStyle=1;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="NCbWPNvujZOKFJAbQVH6-51">
|
|
||||||
<mxGeometry width="30" height="30" as="geometry">
|
|
||||||
<mxRectangle width="30" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="NCbWPNvujZOKFJAbQVH6-53" value="domain_id" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;align=left;spacingLeft=6;fontStyle=5;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="NCbWPNvujZOKFJAbQVH6-51">
|
|
||||||
<mxGeometry x="30" width="150" height="30" as="geometry">
|
|
||||||
<mxRectangle width="150" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="GH2g80-cBXHe62XdPV4N-25" value="" style="shape=tableRow;horizontal=0;startSize=0;swimlaneHead=0;swimlaneBody=0;fillColor=none;collapsible=0;dropTarget=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;top=0;left=0;right=0;bottom=0;" vertex="1" parent="GH2g80-cBXHe62XdPV4N-18">
|
|
||||||
<mxGeometry y="90" width="180" height="30" as="geometry" />
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="GH2g80-cBXHe62XdPV4N-26" value="" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;editable=1;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="GH2g80-cBXHe62XdPV4N-25">
|
|
||||||
<mxGeometry width="30" height="30" as="geometry">
|
|
||||||
<mxRectangle width="30" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="GH2g80-cBXHe62XdPV4N-27" value="app_name" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;align=left;spacingLeft=6;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="GH2g80-cBXHe62XdPV4N-25">
|
|
||||||
<mxGeometry x="30" width="150" height="30" as="geometry">
|
|
||||||
<mxRectangle width="150" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="GH2g80-cBXHe62XdPV4N-28" value="" style="shape=tableRow;horizontal=0;startSize=0;swimlaneHead=0;swimlaneBody=0;fillColor=none;collapsible=0;dropTarget=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;top=0;left=0;right=0;bottom=0;" vertex="1" parent="GH2g80-cBXHe62XdPV4N-18">
|
|
||||||
<mxGeometry y="120" width="180" height="30" as="geometry" />
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="GH2g80-cBXHe62XdPV4N-29" value="" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;editable=1;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="GH2g80-cBXHe62XdPV4N-28">
|
|
||||||
<mxGeometry width="30" height="30" as="geometry">
|
|
||||||
<mxRectangle width="30" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="GH2g80-cBXHe62XdPV4N-30" value="update_date" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;align=left;spacingLeft=6;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="GH2g80-cBXHe62XdPV4N-28">
|
|
||||||
<mxGeometry x="30" width="150" height="30" as="geometry">
|
|
||||||
<mxRectangle width="150" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="AJLbZMHdl7kzV18ppMoM-1" value="Flow_History" style="shape=table;startSize=30;container=1;collapsible=1;childLayout=tableLayout;fixedRows=1;rowLines=0;fontStyle=1;align=center;resizeLast=1;html=1;fillColor=#dae8fc;strokeColor=#6c8ebf;" vertex="1" parent="1">
|
|
||||||
<mxGeometry x="710" y="480" width="180" height="240" as="geometry">
|
|
||||||
<mxRectangle x="320" y="670" width="110" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="AJLbZMHdl7kzV18ppMoM-23" value="" style="shape=tableRow;horizontal=0;startSize=0;swimlaneHead=0;swimlaneBody=0;fillColor=none;collapsible=0;dropTarget=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;top=0;left=0;right=0;bottom=1;" vertex="1" parent="AJLbZMHdl7kzV18ppMoM-1">
|
|
||||||
<mxGeometry y="30" width="180" height="30" as="geometry" />
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="AJLbZMHdl7kzV18ppMoM-24" value="PK" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;fontStyle=1;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="AJLbZMHdl7kzV18ppMoM-23">
|
|
||||||
<mxGeometry width="30" height="30" as="geometry">
|
|
||||||
<mxRectangle width="30" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="AJLbZMHdl7kzV18ppMoM-25" value="id" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;align=left;spacingLeft=6;fontStyle=5;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="AJLbZMHdl7kzV18ppMoM-23">
|
|
||||||
<mxGeometry x="30" width="150" height="30" as="geometry">
|
|
||||||
<mxRectangle width="150" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="AJLbZMHdl7kzV18ppMoM-2" value="" style="shape=tableRow;horizontal=0;startSize=0;swimlaneHead=0;swimlaneBody=0;fillColor=none;collapsible=0;dropTarget=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;top=0;left=0;right=0;bottom=1;" vertex="1" parent="AJLbZMHdl7kzV18ppMoM-1">
|
|
||||||
<mxGeometry y="60" width="180" height="30" as="geometry" />
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="AJLbZMHdl7kzV18ppMoM-3" value="FK" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;fontStyle=1;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="AJLbZMHdl7kzV18ppMoM-2">
|
|
||||||
<mxGeometry width="30" height="30" as="geometry">
|
|
||||||
<mxRectangle width="30" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="AJLbZMHdl7kzV18ppMoM-4" value="flow_id" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;align=left;spacingLeft=6;fontStyle=5;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="AJLbZMHdl7kzV18ppMoM-2">
|
|
||||||
<mxGeometry x="30" width="150" height="30" as="geometry">
|
|
||||||
<mxRectangle width="150" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="AJLbZMHdl7kzV18ppMoM-5" value="" style="shape=tableRow;horizontal=0;startSize=0;swimlaneHead=0;swimlaneBody=0;fillColor=none;collapsible=0;dropTarget=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;top=0;left=0;right=0;bottom=0;" vertex="1" parent="AJLbZMHdl7kzV18ppMoM-1">
|
|
||||||
<mxGeometry y="90" width="180" height="30" as="geometry" />
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="AJLbZMHdl7kzV18ppMoM-6" value="" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;editable=1;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="AJLbZMHdl7kzV18ppMoM-5">
|
|
||||||
<mxGeometry width="30" height="30" as="geometry">
|
|
||||||
<mxRectangle width="30" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="AJLbZMHdl7kzV18ppMoM-7" value="domain_id" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;align=left;spacingLeft=6;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="AJLbZMHdl7kzV18ppMoM-5">
|
|
||||||
<mxGeometry x="30" width="150" height="30" as="geometry">
|
|
||||||
<mxRectangle width="150" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="AJLbZMHdl7kzV18ppMoM-8" value="" style="shape=tableRow;horizontal=0;startSize=0;swimlaneHead=0;swimlaneBody=0;fillColor=none;collapsible=0;dropTarget=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;top=0;left=0;right=0;bottom=0;" vertex="1" parent="AJLbZMHdl7kzV18ppMoM-1">
|
|
||||||
<mxGeometry y="120" width="180" height="30" as="geometry" />
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="AJLbZMHdl7kzV18ppMoM-9" value="" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;editable=1;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="AJLbZMHdl7kzV18ppMoM-8">
|
|
||||||
<mxGeometry width="30" height="30" as="geometry">
|
|
||||||
<mxRectangle width="30" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="AJLbZMHdl7kzV18ppMoM-10" value="spaceid" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;align=left;spacingLeft=6;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="AJLbZMHdl7kzV18ppMoM-8">
|
|
||||||
<mxGeometry x="30" width="150" height="30" as="geometry">
|
|
||||||
<mxRectangle width="150" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="AJLbZMHdl7kzV18ppMoM-11" value="" style="shape=tableRow;horizontal=0;startSize=0;swimlaneHead=0;swimlaneBody=0;fillColor=none;collapsible=0;dropTarget=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;top=0;left=0;right=0;bottom=0;" vertex="1" parent="AJLbZMHdl7kzV18ppMoM-1">
|
|
||||||
<mxGeometry y="150" width="180" height="30" as="geometry" />
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="AJLbZMHdl7kzV18ppMoM-12" value="" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;editable=1;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="AJLbZMHdl7kzV18ppMoM-11">
|
|
||||||
<mxGeometry width="30" height="30" as="geometry">
|
|
||||||
<mxRectangle width="30" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="AJLbZMHdl7kzV18ppMoM-13" value="appid" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;align=left;spacingLeft=6;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="AJLbZMHdl7kzV18ppMoM-11">
|
|
||||||
<mxGeometry x="30" width="150" height="30" as="geometry">
|
|
||||||
<mxRectangle width="150" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="AJLbZMHdl7kzV18ppMoM-17" value="" style="shape=tableRow;horizontal=0;startSize=0;swimlaneHead=0;swimlaneBody=0;fillColor=none;collapsible=0;dropTarget=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;top=0;left=0;right=0;bottom=0;" vertex="1" parent="AJLbZMHdl7kzV18ppMoM-1">
|
|
||||||
<mxGeometry y="180" width="180" height="30" as="geometry" />
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="AJLbZMHdl7kzV18ppMoM-18" value="" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;editable=1;overflow=hidden;" vertex="1" parent="AJLbZMHdl7kzV18ppMoM-17">
|
|
||||||
<mxGeometry width="30" height="30" as="geometry">
|
|
||||||
<mxRectangle width="30" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="AJLbZMHdl7kzV18ppMoM-19" value="event_id" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;align=left;spacingLeft=6;overflow=hidden;" vertex="1" parent="AJLbZMHdl7kzV18ppMoM-17">
|
|
||||||
<mxGeometry x="30" width="150" height="30" as="geometry">
|
|
||||||
<mxRectangle width="150" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="AJLbZMHdl7kzV18ppMoM-14" value="" style="shape=tableRow;horizontal=0;startSize=0;swimlaneHead=0;swimlaneBody=0;fillColor=none;collapsible=0;dropTarget=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;top=0;left=0;right=0;bottom=0;" vertex="1" parent="AJLbZMHdl7kzV18ppMoM-1">
|
|
||||||
<mxGeometry y="210" width="180" height="30" as="geometry" />
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="AJLbZMHdl7kzV18ppMoM-15" value="" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;editable=1;overflow=hidden;" vertex="1" parent="AJLbZMHdl7kzV18ppMoM-14">
|
|
||||||
<mxGeometry width="30" height="30" as="geometry">
|
|
||||||
<mxRectangle width="30" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="AJLbZMHdl7kzV18ppMoM-16" value="content" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;align=left;spacingLeft=6;overflow=hidden;" vertex="1" parent="AJLbZMHdl7kzV18ppMoM-14">
|
|
||||||
<mxGeometry x="30" width="150" height="30" as="geometry">
|
|
||||||
<mxRectangle width="150" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="AJLbZMHdl7kzV18ppMoM-40" value="Action" style="shape=table;startSize=30;container=1;collapsible=1;childLayout=tableLayout;fixedRows=1;rowLines=0;fontStyle=1;align=center;resizeLast=1;html=1;fillColor=#f8cecc;strokeColor=#b85450;" vertex="1" parent="1">
|
|
||||||
<mxGeometry x="20" y="905" width="180" height="150" as="geometry" />
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="AJLbZMHdl7kzV18ppMoM-41" value="" style="shape=tableRow;horizontal=0;startSize=0;swimlaneHead=0;swimlaneBody=0;fillColor=none;collapsible=0;dropTarget=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;top=0;left=0;right=0;bottom=1;" vertex="1" parent="AJLbZMHdl7kzV18ppMoM-40">
|
|
||||||
<mxGeometry y="30" width="180" height="30" as="geometry" />
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="AJLbZMHdl7kzV18ppMoM-42" value="PK" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;fontStyle=1;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="AJLbZMHdl7kzV18ppMoM-41">
|
|
||||||
<mxGeometry width="30" height="30" as="geometry">
|
|
||||||
<mxRectangle width="30" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="AJLbZMHdl7kzV18ppMoM-43" value="id" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;align=left;spacingLeft=6;fontStyle=5;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="AJLbZMHdl7kzV18ppMoM-41">
|
|
||||||
<mxGeometry x="30" width="150" height="30" as="geometry">
|
|
||||||
<mxRectangle width="150" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="AJLbZMHdl7kzV18ppMoM-44" value="" style="shape=tableRow;horizontal=0;startSize=0;swimlaneHead=0;swimlaneBody=0;fillColor=none;collapsible=0;dropTarget=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;top=0;left=0;right=0;bottom=0;" vertex="1" parent="AJLbZMHdl7kzV18ppMoM-40">
|
|
||||||
<mxGeometry y="60" width="180" height="30" as="geometry" />
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="AJLbZMHdl7kzV18ppMoM-45" value="" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;editable=1;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="AJLbZMHdl7kzV18ppMoM-44">
|
|
||||||
<mxGeometry width="30" height="30" as="geometry">
|
|
||||||
<mxRectangle width="30" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="AJLbZMHdl7kzV18ppMoM-46" value="アクション名" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;align=left;spacingLeft=6;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="AJLbZMHdl7kzV18ppMoM-44">
|
|
||||||
<mxGeometry x="30" width="150" height="30" as="geometry">
|
|
||||||
<mxRectangle width="150" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="AJLbZMHdl7kzV18ppMoM-47" value="" style="shape=tableRow;horizontal=0;startSize=0;swimlaneHead=0;swimlaneBody=0;fillColor=none;collapsible=0;dropTarget=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;top=0;left=0;right=0;bottom=0;" vertex="1" parent="AJLbZMHdl7kzV18ppMoM-40">
|
|
||||||
<mxGeometry y="90" width="180" height="30" as="geometry" />
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="AJLbZMHdl7kzV18ppMoM-48" value="" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;editable=1;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="AJLbZMHdl7kzV18ppMoM-47">
|
|
||||||
<mxGeometry width="30" height="30" as="geometry">
|
|
||||||
<mxRectangle width="30" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="AJLbZMHdl7kzV18ppMoM-49" value="説明" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;align=left;spacingLeft=6;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="AJLbZMHdl7kzV18ppMoM-47">
|
|
||||||
<mxGeometry x="30" width="150" height="30" as="geometry">
|
|
||||||
<mxRectangle width="150" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="AJLbZMHdl7kzV18ppMoM-50" value="" style="shape=tableRow;horizontal=0;startSize=0;swimlaneHead=0;swimlaneBody=0;fillColor=none;collapsible=0;dropTarget=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;top=0;left=0;right=0;bottom=0;" vertex="1" parent="AJLbZMHdl7kzV18ppMoM-40">
|
|
||||||
<mxGeometry y="120" width="180" height="30" as="geometry" />
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="AJLbZMHdl7kzV18ppMoM-51" value="" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;editable=1;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="AJLbZMHdl7kzV18ppMoM-50">
|
|
||||||
<mxGeometry width="30" height="30" as="geometry">
|
|
||||||
<mxRectangle width="30" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="AJLbZMHdl7kzV18ppMoM-52" value="属性定義(json)" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;align=left;spacingLeft=6;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="AJLbZMHdl7kzV18ppMoM-50">
|
|
||||||
<mxGeometry x="30" width="150" height="30" as="geometry">
|
|
||||||
<mxRectangle width="150" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="NCbWPNvujZOKFJAbQVH6-7" value="UserDomain" style="shape=table;startSize=30;container=1;collapsible=1;childLayout=tableLayout;fixedRows=1;rowLines=0;fontStyle=1;align=center;resizeLast=1;html=1;fillColor=#f8cecc;strokeColor=#b85450;" vertex="1" parent="1">
|
|
||||||
<mxGeometry x="710" y="100" width="180" height="120" as="geometry">
|
|
||||||
<mxRectangle x="590" y="60" width="100" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="NCbWPNvujZOKFJAbQVH6-8" value="" style="shape=tableRow;horizontal=0;startSize=0;swimlaneHead=0;swimlaneBody=0;fillColor=none;collapsible=0;dropTarget=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;top=0;left=0;right=0;bottom=1;" vertex="1" parent="NCbWPNvujZOKFJAbQVH6-7">
|
|
||||||
<mxGeometry y="30" width="180" height="30" as="geometry" />
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="NCbWPNvujZOKFJAbQVH6-9" value="PK" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;fontStyle=1;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="NCbWPNvujZOKFJAbQVH6-8">
|
|
||||||
<mxGeometry width="30" height="30" as="geometry">
|
|
||||||
<mxRectangle width="30" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="NCbWPNvujZOKFJAbQVH6-10" value="id" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;align=left;spacingLeft=6;fontStyle=5;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="NCbWPNvujZOKFJAbQVH6-8">
|
|
||||||
<mxGeometry x="30" width="150" height="30" as="geometry">
|
|
||||||
<mxRectangle width="150" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="NCbWPNvujZOKFJAbQVH6-11" value="" style="shape=tableRow;horizontal=0;startSize=0;swimlaneHead=0;swimlaneBody=0;fillColor=none;collapsible=0;dropTarget=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;top=0;left=0;right=0;bottom=0;" vertex="1" parent="NCbWPNvujZOKFJAbQVH6-7">
|
|
||||||
<mxGeometry y="60" width="180" height="30" as="geometry" />
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="NCbWPNvujZOKFJAbQVH6-12" value="FK" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;editable=1;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="NCbWPNvujZOKFJAbQVH6-11">
|
|
||||||
<mxGeometry width="30" height="30" as="geometry">
|
|
||||||
<mxRectangle width="30" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="NCbWPNvujZOKFJAbQVH6-13" value="user_id" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;align=left;spacingLeft=6;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="NCbWPNvujZOKFJAbQVH6-11">
|
|
||||||
<mxGeometry x="30" width="150" height="30" as="geometry">
|
|
||||||
<mxRectangle width="150" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="NCbWPNvujZOKFJAbQVH6-44" value="" style="shape=tableRow;horizontal=0;startSize=0;swimlaneHead=0;swimlaneBody=0;fillColor=none;collapsible=0;dropTarget=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;top=0;left=0;right=0;bottom=0;" vertex="1" parent="NCbWPNvujZOKFJAbQVH6-7">
|
|
||||||
<mxGeometry y="90" width="180" height="30" as="geometry" />
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="NCbWPNvujZOKFJAbQVH6-45" value="FK" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;fontStyle=0;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="NCbWPNvujZOKFJAbQVH6-44">
|
|
||||||
<mxGeometry width="30" height="30" as="geometry">
|
|
||||||
<mxRectangle width="30" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="NCbWPNvujZOKFJAbQVH6-46" value="domain_id" style="shape=partialRectangle;connectable=0;fillColor=none;top=0;left=0;bottom=0;right=0;align=left;spacingLeft=6;fontStyle=0;overflow=hidden;whiteSpace=wrap;html=1;" vertex="1" parent="NCbWPNvujZOKFJAbQVH6-44">
|
|
||||||
<mxGeometry x="30" width="150" height="30" as="geometry">
|
|
||||||
<mxRectangle width="150" height="30" as="alternateBounds" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="NCbWPNvujZOKFJAbQVH6-42" value="" style="edgeStyle=entityRelationEdgeStyle;fontSize=12;html=1;endArrow=ERzeroToMany;endFill=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;curved=1;" edge="1" parent="1" source="QUGX19b9cPh8sdE7zjoR-2" target="inIyfaXWTM6ArMeTnGn6-2">
|
|
||||||
<mxGeometry width="100" height="100" relative="1" as="geometry">
|
|
||||||
<mxPoint x="160" y="350" as="sourcePoint" />
|
|
||||||
<mxPoint x="260" y="250" as="targetPoint" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="NCbWPNvujZOKFJAbQVH6-47" value="" style="edgeStyle=entityRelationEdgeStyle;fontSize=12;html=1;endArrow=ERmandOne;startArrow=ERmandOne;rounded=1;entryX=1;entryY=0.5;entryDx=0;entryDy=0;exitX=0;exitY=0.5;exitDx=0;exitDy=0;" edge="1" parent="1" source="NCbWPNvujZOKFJAbQVH6-11" target="inIyfaXWTM6ArMeTnGn6-2">
|
|
||||||
<mxGeometry width="100" height="100" relative="1" as="geometry">
|
|
||||||
<mxPoint x="230" y="390" as="sourcePoint" />
|
|
||||||
<mxPoint x="330" y="290" as="targetPoint" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="NCbWPNvujZOKFJAbQVH6-49" value="" style="edgeStyle=entityRelationEdgeStyle;fontSize=12;html=1;endArrow=ERmandOne;startArrow=ERmandOne;rounded=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" edge="1" parent="1" source="inIyfaXWTM6ArMeTnGn6-15" target="NCbWPNvujZOKFJAbQVH6-44">
|
|
||||||
<mxGeometry width="100" height="100" relative="1" as="geometry">
|
|
||||||
<mxPoint x="200" y="400" as="sourcePoint" />
|
|
||||||
<mxPoint x="300" y="300" as="targetPoint" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="NCbWPNvujZOKFJAbQVH6-50" value="" style="edgeStyle=entityRelationEdgeStyle;fontSize=12;html=1;endArrow=ERzeroToMany;endFill=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;curved=1;" edge="1" parent="1" source="inIyfaXWTM6ArMeTnGn6-15" target="NCbWPNvujZOKFJAbQVH6-51">
|
|
||||||
<mxGeometry width="100" height="100" relative="1" as="geometry">
|
|
||||||
<mxPoint x="140" y="430" as="sourcePoint" />
|
|
||||||
<mxPoint x="740" y="445" as="targetPoint" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="NCbWPNvujZOKFJAbQVH6-54" value="" style="edgeStyle=entityRelationEdgeStyle;fontSize=12;html=1;endArrow=ERzeroToMany;endFill=1;exitX=0;exitY=0.5;exitDx=0;exitDy=0;curved=1;" edge="1" parent="1" source="NCbWPNvujZOKFJAbQVH6-51" target="8Zu1yShcSHxMs68hy39H-5">
|
|
||||||
<mxGeometry width="100" height="100" relative="1" as="geometry">
|
|
||||||
<mxPoint x="210" y="450" as="sourcePoint" />
|
|
||||||
<mxPoint x="310" y="350" as="targetPoint" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
<mxCell id="NCbWPNvujZOKFJAbQVH6-55" value="" style="edgeStyle=entityRelationEdgeStyle;fontSize=12;html=1;endArrow=ERzeroToMany;endFill=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;curved=1;" edge="1" parent="1" source="8Zu1yShcSHxMs68hy39H-2" target="AJLbZMHdl7kzV18ppMoM-2">
|
|
||||||
<mxGeometry width="100" height="100" relative="1" as="geometry">
|
|
||||||
<mxPoint x="270" y="470" as="sourcePoint" />
|
|
||||||
<mxPoint x="370" y="370" as="targetPoint" />
|
|
||||||
</mxGeometry>
|
|
||||||
</mxCell>
|
|
||||||
</root>
|
|
||||||
</mxGraphModel>
|
|
||||||
</diagram>
|
|
||||||
<diagram id="yu2qkxLoxjZt0KdZdE3U" name="ページ3">
|
|
||||||
<mxGraphModel dx="1434" dy="884" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="827" pageHeight="1169" math="0" shadow="0">
|
|
||||||
<root>
|
|
||||||
<mxCell id="0" />
|
|
||||||
<mxCell id="1" parent="0" />
|
|
||||||
</root>
|
|
||||||
</mxGraphModel>
|
|
||||||
</diagram>
|
|
||||||
</mxfile>
|
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="q-pa-md q-gutter-sm">
|
<div class="q-pa-md q-gutter-sm">
|
||||||
<q-tree
|
<q-tree
|
||||||
:nodes="store.eventTree.screens"
|
:nodes="eventTree.screens"
|
||||||
node-key="label"
|
node-key="label"
|
||||||
children-key="events"
|
children-key="events"
|
||||||
no-connectors
|
no-connectors
|
||||||
@@ -24,45 +24,28 @@
|
|||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import { defineComponent, computed, ref } from 'vue';
|
import { defineComponent, computed, ref } from 'vue';
|
||||||
import { IKintoneEvent } from '../../types/KintoneEvents';
|
import { kintoneEvents,KintoneEvent } from '../../types/KintoneEvents';
|
||||||
import { storeToRefs } from 'pinia';
|
import { storeToRefs } from 'pinia';
|
||||||
import { useFlowEditorStore } from 'stores/flowEditor';
|
import { useFlowEditorStore } from 'stores/flowEditor';
|
||||||
import { ActionFlow, ActionNode, RootAction } from 'src/types/ActionTypes';
|
|
||||||
import { S } from 'app/dist/spa/assets/QTable.50486f7c';
|
|
||||||
export default defineComponent({
|
export default defineComponent({
|
||||||
name: 'EventTree',
|
name: 'EventTree',
|
||||||
setup(props, context) {
|
setup(props, context) {
|
||||||
const store = useFlowEditorStore();
|
const store = useFlowEditorStore();
|
||||||
// const eventTree=ref(kintoneEvents);
|
const eventTree=ref(kintoneEvents);
|
||||||
// const selectedFlow = store.currentFlow;
|
const selectedFlow = store.currentFlow;
|
||||||
|
|
||||||
const expanded=ref([
|
const expanded=ref([
|
||||||
store.currentFlow?.getRoot()?.title
|
selectedFlow?.getRoot()?.title
|
||||||
]);
|
]);
|
||||||
const selectedEvent = ref<IKintoneEvent|null>(null);
|
const selectedEvent = ref<KintoneEvent|null>(null);
|
||||||
const onSelected=(node:IKintoneEvent)=>{
|
const onSelected=(node:KintoneEvent)=>{
|
||||||
if(!node.eventId){
|
if(!node.eventId){
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
selectedEvent.value=node;
|
selectedEvent.value=node;
|
||||||
if(store.appInfo===undefined){
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
const screen = store.eventTree.findScreen(node.eventId);
|
|
||||||
let flow =store.findFlowByEventId(node.eventId);
|
|
||||||
const screenName=screen!==null?screen.label:"";
|
|
||||||
if(flow!==undefined && flow!==null ){
|
|
||||||
store.selectFlow(flow);
|
|
||||||
}else{
|
|
||||||
const root = new RootAction(node.eventId,screenName,node.label)
|
|
||||||
const flow =new ActionFlow(root);
|
|
||||||
store.flows?.push(flow);
|
|
||||||
store.selectFlow(flow);
|
|
||||||
selectedEvent.value.flowData=flow;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
return {
|
return {
|
||||||
// eventTree,
|
eventTree,
|
||||||
expanded,
|
expanded,
|
||||||
onSelected,
|
onSelected,
|
||||||
selectedEvent,
|
selectedEvent,
|
||||||
|
|||||||
21
frontend/src/control/auth.ts
Normal file
21
frontend/src/control/auth.ts
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
import { api } from 'boot/axios';
|
||||||
|
|
||||||
|
export class Auth
|
||||||
|
{
|
||||||
|
async login(user:string,pwd:string):Promise<boolean>
|
||||||
|
{
|
||||||
|
const params = new URLSearchParams();
|
||||||
|
params.append('username', user);
|
||||||
|
params.append('password', pwd);
|
||||||
|
try{
|
||||||
|
const result = await api.post(`http://127.0.0.1:8000/api/token`,params);
|
||||||
|
console.info(result);
|
||||||
|
localStorage.setItem('Token', result.data.access_token);
|
||||||
|
return true;
|
||||||
|
}catch(e)
|
||||||
|
{
|
||||||
|
console.info(e);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -14,7 +14,9 @@
|
|||||||
Kintone App Builder
|
Kintone App Builder
|
||||||
<q-badge align="top" outline>V{{ env.version }}</q-badge>
|
<q-badge align="top" outline>V{{ env.version }}</q-badge>
|
||||||
</q-toolbar-title>
|
</q-toolbar-title>
|
||||||
|
<q-btn flat round dense icon="logout" @click="authStore.logout()"/>
|
||||||
</q-toolbar>
|
</q-toolbar>
|
||||||
|
|
||||||
</q-header>
|
</q-header>
|
||||||
|
|
||||||
<q-drawer
|
<q-drawer
|
||||||
@@ -46,6 +48,9 @@
|
|||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import { ref } from 'vue';
|
import { ref } from 'vue';
|
||||||
import EssentialLink, { EssentialLinkProps } from 'components/EssentialLink.vue';
|
import EssentialLink, { EssentialLinkProps } from 'components/EssentialLink.vue';
|
||||||
|
import { useAuthStore } from 'stores/useAuthStore';
|
||||||
|
|
||||||
|
const authStore = useAuthStore();
|
||||||
|
|
||||||
const essentialLinks: EssentialLinkProps[] = [
|
const essentialLinks: EssentialLinkProps[] = [
|
||||||
{
|
{
|
||||||
|
|||||||
100
frontend/src/pages/LoginPage.vue
Normal file
100
frontend/src/pages/LoginPage.vue
Normal file
@@ -0,0 +1,100 @@
|
|||||||
|
<template>
|
||||||
|
<q-layout view="lHh Lpr fff">
|
||||||
|
<q-page-container>
|
||||||
|
<q-page class="window-height window-width row justify-center items-center">
|
||||||
|
<div class="column q-pa-lg">
|
||||||
|
<div class="row">
|
||||||
|
<q-card square class="shadow-24" style="width:400px;height:540px;">
|
||||||
|
<q-card-section class="bg-primary">
|
||||||
|
<h4 class="text-h5 text-white q-my-md">{{ title}}</h4>
|
||||||
|
|
||||||
|
</q-card-section>
|
||||||
|
<q-card-section>
|
||||||
|
<q-form class="q-px-sm q-pt-xl" ref="loginForm">
|
||||||
|
<q-input square clearable v-model="email" type="email" lazy-rules
|
||||||
|
:rules="[required,isEmail,short]" label="メール">
|
||||||
|
<template v-slot:prepend>
|
||||||
|
<q-icon name="email" />
|
||||||
|
</template>
|
||||||
|
</q-input>
|
||||||
|
<q-input square clearable v-model="password" :type="passwordFieldType" lazy-rules
|
||||||
|
:rules="[required, short]" label="パスワード">
|
||||||
|
|
||||||
|
<template v-slot:prepend>
|
||||||
|
<q-icon name="lock" />
|
||||||
|
</template>
|
||||||
|
<template v-slot:append>
|
||||||
|
<q-icon :name="visibilityIcon" @click="switchVisibility" class="cursor-pointer" />
|
||||||
|
</template>
|
||||||
|
</q-input>
|
||||||
|
</q-form>
|
||||||
|
</q-card-section>
|
||||||
|
|
||||||
|
<q-card-actions class="q-px-lg">
|
||||||
|
<q-btn unelevated size="lg" color="secondary" @click="submit" class="full-width text-white"
|
||||||
|
:label="btnLabel" />
|
||||||
|
</q-card-actions>
|
||||||
|
|
||||||
|
</q-card>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</q-page>
|
||||||
|
</q-page-container>
|
||||||
|
</q-layout>>
|
||||||
|
</template>
|
||||||
|
<script setup lang="ts">
|
||||||
|
import { useQuasar } from 'quasar'
|
||||||
|
// import { useRouter } from 'vue-router';
|
||||||
|
import { ref } from 'vue';
|
||||||
|
// import { Auth } from '../control/auth'
|
||||||
|
import { useAuthStore } from 'stores/useAuthStore';
|
||||||
|
const authStore = useAuthStore();
|
||||||
|
const $q = useQuasar()
|
||||||
|
const loginForm = ref(null);
|
||||||
|
let title = ref('ログイン');
|
||||||
|
let email = ref('');
|
||||||
|
let password = ref('');
|
||||||
|
let visibility = ref(false);
|
||||||
|
let passwordFieldType = ref('password');
|
||||||
|
let visibilityIcon = ref('visibility');
|
||||||
|
let btnLabel = ref('ログイン');
|
||||||
|
const required = (val:string) => {
|
||||||
|
return (val && val.length > 0 || '必須項目')
|
||||||
|
}
|
||||||
|
const isEmail = (val:string) => {
|
||||||
|
const emailPattern = /^(?=[a-zA-Z0-9@._%+-]{6,254}$)[a-zA-Z0-9._%+-]{1,64}@(?:[a-zA-Z0-9-]{1,63}\.){1,8}[a-zA-Z]{2,63}$/
|
||||||
|
return (emailPattern.test(val) || '無効なメールアドレス')
|
||||||
|
}
|
||||||
|
const short = (val:string) => {
|
||||||
|
return (val && val.length > 3 || '値が短く過ぎる')
|
||||||
|
}
|
||||||
|
const switchVisibility = () => {
|
||||||
|
visibility.value = !visibility.value
|
||||||
|
passwordFieldType.value = visibility.value ? 'text' : 'password'
|
||||||
|
visibilityIcon.value = visibility.value ? 'visibility_off' : 'visibility'
|
||||||
|
}
|
||||||
|
const submit = () =>{
|
||||||
|
authStore.login(email.value,password.value).then((result)=>{
|
||||||
|
if(result)
|
||||||
|
{
|
||||||
|
$q.notify({
|
||||||
|
icon: 'done',
|
||||||
|
color: 'positive',
|
||||||
|
message: 'ログイン成功'
|
||||||
|
})
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$q.notify({
|
||||||
|
icon: 'error',
|
||||||
|
color: 'negative',
|
||||||
|
message: 'ログイン失敗'
|
||||||
|
})
|
||||||
|
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
</script>
|
||||||
354
frontend/src/pages/UserDomain.vue
Normal file
354
frontend/src/pages/UserDomain.vue
Normal file
@@ -0,0 +1,354 @@
|
|||||||
|
<!-- <template>
|
||||||
|
<div class="q-pa-md" style="max-width: 400px">
|
||||||
|
|
||||||
|
<q-form
|
||||||
|
@submit="onSubmit"
|
||||||
|
@reset="onReset"
|
||||||
|
class="q-gutter-md"
|
||||||
|
>
|
||||||
|
<q-input
|
||||||
|
filled
|
||||||
|
v-model="name"
|
||||||
|
label="Your name *"
|
||||||
|
hint="Kintone envirment name"
|
||||||
|
lazy-rules
|
||||||
|
:rules="[ val => val && val.length > 0 || 'Please type something']"
|
||||||
|
/>
|
||||||
|
|
||||||
|
<q-input
|
||||||
|
filled type="url"
|
||||||
|
v-model="url"
|
||||||
|
label="Kintone url"
|
||||||
|
hint="Kintone domain address"
|
||||||
|
lazy-rules
|
||||||
|
:rules="[ val => val && val.length > 0,isDomain || 'Please type something']"
|
||||||
|
/>
|
||||||
|
|
||||||
|
<q-input
|
||||||
|
filled
|
||||||
|
v-model="username"
|
||||||
|
label="Login user "
|
||||||
|
hint="Kintone user name"
|
||||||
|
lazy-rules
|
||||||
|
:rules="[ val => val && val.length > 0 || 'Please type something']"
|
||||||
|
/>
|
||||||
|
|
||||||
|
<q-input v-model="password" filled :type="isPwd ? 'password' : 'text'" hint="Password with toggle" label="User password">
|
||||||
|
<template v-slot:append>
|
||||||
|
<q-icon
|
||||||
|
:name="isPwd ? 'visibility_off' : 'visibility'"
|
||||||
|
class="cursor-pointer"
|
||||||
|
@click="isPwd = !isPwd"
|
||||||
|
/>
|
||||||
|
</template>
|
||||||
|
</q-input>
|
||||||
|
|
||||||
|
<q-toggle v-model="accept" label="Active Domain" />
|
||||||
|
|
||||||
|
<div>
|
||||||
|
<q-btn label="Submit" type="submit" color="primary"/>
|
||||||
|
<q-btn label="Reset" type="reset" color="primary" flat class="q-ml-sm" />
|
||||||
|
</div>
|
||||||
|
</q-form>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<script>
|
||||||
|
import { useQuasar } from 'quasar'
|
||||||
|
import { ref } from 'vue'
|
||||||
|
|
||||||
|
export default {
|
||||||
|
setup () {
|
||||||
|
const $q = useQuasar()
|
||||||
|
|
||||||
|
const name = ref(null)
|
||||||
|
const age = ref(null)
|
||||||
|
const accept = ref(false)
|
||||||
|
const isPwd =ref(true)
|
||||||
|
|
||||||
|
return {
|
||||||
|
name,
|
||||||
|
age,
|
||||||
|
accept,
|
||||||
|
isPwd,
|
||||||
|
isDomain(val) {
|
||||||
|
const domainPattern = /^https?\/\/:([a-zA-Z] +\.){1}([a-zA-Z]+)\.([a-zA-Z]+)$/;
|
||||||
|
return (domainPattern.test(val) || '無効なURL')
|
||||||
|
},
|
||||||
|
|
||||||
|
onSubmit () {
|
||||||
|
if (accept.value !== true) {
|
||||||
|
$q.notify({
|
||||||
|
color: 'red-5',
|
||||||
|
textColor: 'white',
|
||||||
|
icon: 'warning',
|
||||||
|
message: 'You need to accept the license and terms first'
|
||||||
|
})
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
$q.notify({
|
||||||
|
color: 'green-4',
|
||||||
|
textColor: 'white',
|
||||||
|
icon: 'cloud_done',
|
||||||
|
message: 'Submitted'
|
||||||
|
})
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
onReset () {
|
||||||
|
name.value = null
|
||||||
|
age.value = null
|
||||||
|
accept.value = false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script> -->
|
||||||
|
|
||||||
|
|
||||||
|
<template>
|
||||||
|
<div class="q-pa-md">
|
||||||
|
<q-table grid grid-header title="Domain" selection="single" :rows="rows" :columns="columns" v-model:selected="selected" row-key="name" :filter="filter" hide-header>
|
||||||
|
<template v-slot:top>
|
||||||
|
<div class="q-pa-md q-gutter-sm">
|
||||||
|
<q-btn color="primary" size="sm" label=" 新規 " @click="newDomain()" dense />
|
||||||
|
</div>
|
||||||
|
<q-space />
|
||||||
|
<q-input borderless dense debounce="300" v-model="filter" placeholder="Search">
|
||||||
|
<template v-slot:append>
|
||||||
|
<q-icon name="search" />
|
||||||
|
</template>
|
||||||
|
</q-input>
|
||||||
|
</template>
|
||||||
|
<template v-slot:item="props">
|
||||||
|
<div class="q-pa-xs col-xs-12 col-sm-6 col-md-4">
|
||||||
|
<q-card>
|
||||||
|
<q-card-section>
|
||||||
|
<div class="q-table__grid-item-row">
|
||||||
|
<div class="q-table__grid-item-title">Name</div>
|
||||||
|
<div class="q-table__grid-item-value">{{ props.row.name }}</div>
|
||||||
|
</div>
|
||||||
|
<div class="q-table__grid-item-row">
|
||||||
|
<div class="q-table__grid-item-title">Domain</div>
|
||||||
|
<div class="q-table__grid-item-value">{{ props.row.url }}</div>
|
||||||
|
</div>
|
||||||
|
<div class="q-table__grid-item-row">
|
||||||
|
<div class="q-table__grid-item-title">Account</div>
|
||||||
|
<div class="q-table__grid-item-value">{{ props.row.kintoneuser }}</div>
|
||||||
|
</div>
|
||||||
|
</q-card-section>
|
||||||
|
<q-separator />
|
||||||
|
<q-card-actions align="right">
|
||||||
|
<q-btn flat @click = "editDomain(props.row)">編集</q-btn>
|
||||||
|
<q-btn flat @click = "deleteConfirm(props.row)">削除</q-btn>
|
||||||
|
</q-card-actions>
|
||||||
|
</q-card>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
</q-table>
|
||||||
|
|
||||||
|
<q-dialog :model-value="show" persistent>
|
||||||
|
<q-card style="min-width: 400px">
|
||||||
|
<q-card-section>
|
||||||
|
<div class="text-h6">Kintone Account</div>
|
||||||
|
</q-card-section>
|
||||||
|
|
||||||
|
<q-card-section class="q-pt-none">
|
||||||
|
<q-form class="q-gutter-md">
|
||||||
|
<q-input filled v-model="name" label="Your name *" hint="Kintone envirment name" lazy-rules
|
||||||
|
:rules="[val => val && val.length > 0 || 'Please type something']" />
|
||||||
|
|
||||||
|
<q-input filled type="url" v-model="url" label="Kintone url" hint="Kintone domain address" lazy-rules
|
||||||
|
:rules="[val => val && val.length > 0, isDomain || 'Please type something']" />
|
||||||
|
|
||||||
|
<q-input filled v-model="kintoneuser" label="Login user " hint="Kintone user name" lazy-rules
|
||||||
|
:rules="[val => val && val.length > 0 || 'Please type something']" />
|
||||||
|
|
||||||
|
<q-input v-model="kintonepwd" filled :type="isPwd ? 'password' : 'text'" hint="Password with toggle"
|
||||||
|
label="User password">
|
||||||
|
<template v-slot:append>
|
||||||
|
<q-icon :name="isPwd ? 'visibility_off' : 'visibility'" class="cursor-pointer" @click="isPwd = !isPwd" />
|
||||||
|
</template>
|
||||||
|
</q-input>
|
||||||
|
|
||||||
|
<q-toggle v-model="active" label="Active Domain" />
|
||||||
|
</q-form>
|
||||||
|
</q-card-section>
|
||||||
|
<q-card-actions align="right" class="text-primary">
|
||||||
|
<q-btn label="Save" type="submit" color="primary" @click="onSubmit"/>
|
||||||
|
<q-btn label="Cancel" type="cancel" color="primary" flat class="q-ml-sm" @click="closeDg()"/>
|
||||||
|
</q-card-actions>
|
||||||
|
</q-card>
|
||||||
|
|
||||||
|
</q-dialog>
|
||||||
|
|
||||||
|
<q-dialog v-model="confirm" persistent>
|
||||||
|
<q-card>
|
||||||
|
<q-card-section class="row items-center">
|
||||||
|
<q-avatar icon="confirm" color="primary" text-color="white" />
|
||||||
|
<span class="q-ml-sm">削除してもよろしいですか?</span>
|
||||||
|
</q-card-section>
|
||||||
|
|
||||||
|
<q-card-actions align="right">
|
||||||
|
<q-btn flat label="Cancel" color="primary" v-close-popup />
|
||||||
|
<q-btn flat label="OK" color="primary" v-close-popup @click = "deleteDomain()"/>
|
||||||
|
</q-card-actions>
|
||||||
|
</q-card>
|
||||||
|
</q-dialog>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script setup lang="ts">
|
||||||
|
import { useQuasar } from 'quasar'
|
||||||
|
import { ref, onMounted, reactive } from 'vue'
|
||||||
|
import { api } from 'boot/axios';
|
||||||
|
|
||||||
|
|
||||||
|
const $q = useQuasar()
|
||||||
|
|
||||||
|
const selected = ref([])
|
||||||
|
const name = ref('')
|
||||||
|
const active = ref(false)
|
||||||
|
const isPwd =ref(true)
|
||||||
|
const url =ref('')
|
||||||
|
const kintoneuser =ref('')
|
||||||
|
const kintonepwd =ref('')
|
||||||
|
|
||||||
|
const show = ref(false);
|
||||||
|
const confirm = ref(false)
|
||||||
|
|
||||||
|
let editId = ref(0);
|
||||||
|
|
||||||
|
const columns = [
|
||||||
|
{ name: 'id'},
|
||||||
|
{
|
||||||
|
name: 'name',
|
||||||
|
required: true,
|
||||||
|
label: 'Name',
|
||||||
|
align: 'left',
|
||||||
|
field: row => row.name,
|
||||||
|
sortable: true
|
||||||
|
},
|
||||||
|
{ name: 'url', align: 'center', label: 'Domain', field: 'url', sortable: true },
|
||||||
|
{ name: 'kintoneuser', label: 'User', field: 'kintoneuser', sortable: true },
|
||||||
|
{ name: 'kintonepwd' }
|
||||||
|
]
|
||||||
|
|
||||||
|
const rows = reactive([])
|
||||||
|
|
||||||
|
const newDomain = () => {
|
||||||
|
editId.value = 0;
|
||||||
|
show.value = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
const editDomain = (row:object) => {
|
||||||
|
editId.value = row.id;
|
||||||
|
name.value = row.name;
|
||||||
|
url.value = row.url;
|
||||||
|
kintoneuser.value = row.kintoneuser;
|
||||||
|
kintonepwd.value = row.kintonepwd;
|
||||||
|
isPwd.value = true;
|
||||||
|
active.value = false;
|
||||||
|
show.value = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
const deleteConfirm = (row:object) => {
|
||||||
|
confirm.value = true;
|
||||||
|
editId.value = row.id;
|
||||||
|
};
|
||||||
|
|
||||||
|
const deleteDomain = () => {
|
||||||
|
api.delete(`http://127.0.0.1:8000/api/domain/1/`+ editId.value).then(() =>{
|
||||||
|
getDomain();
|
||||||
|
})
|
||||||
|
editId.value = 0;
|
||||||
|
};
|
||||||
|
|
||||||
|
const closeDg = () => {
|
||||||
|
show.value = false;
|
||||||
|
onReset();
|
||||||
|
};
|
||||||
|
const getDomain = () => {
|
||||||
|
api.get(`http://127.0.0.1:8000/api/domain/1`).then(res => {
|
||||||
|
rows.length = 0;
|
||||||
|
res.data.forEach((item) => {
|
||||||
|
rows.push({ id:item.id,name: item.name, url: item.url, kintoneuser: item.kintoneuser, kintonepwd: item.kintonepwd });
|
||||||
|
}
|
||||||
|
)
|
||||||
|
});
|
||||||
|
}
|
||||||
|
onMounted(() => {
|
||||||
|
getDomain();
|
||||||
|
})
|
||||||
|
|
||||||
|
const isDomain = (val) =>{
|
||||||
|
// const domainPattern = /^https\/\/:([a-zA-Z] +\.){1}([a-zA-Z]+)\.([a-zA-Z]+)$/;
|
||||||
|
// return (domainPattern.test(val) || '無効なURL')
|
||||||
|
return true;
|
||||||
|
};
|
||||||
|
|
||||||
|
const onSubmit = () =>{
|
||||||
|
if(editId.value !== 0)
|
||||||
|
{
|
||||||
|
api.put(`http://127.0.0.1:8000/api/domain`,{
|
||||||
|
'id': editId.value,
|
||||||
|
'userid': 1,
|
||||||
|
'name': name.value,
|
||||||
|
'url': url.value,
|
||||||
|
'kintoneuser': kintoneuser.value,
|
||||||
|
'kintonepwd': kintonepwd.value,
|
||||||
|
'active': active.value
|
||||||
|
}).then(() =>{
|
||||||
|
getDomain();
|
||||||
|
closeDg();
|
||||||
|
onReset();
|
||||||
|
})
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
api.post(`http://127.0.0.1:8000/api/domain`,{
|
||||||
|
'id': 0,
|
||||||
|
'userid': 1,
|
||||||
|
'name': name.value,
|
||||||
|
'url': url.value,
|
||||||
|
'kintoneuser': kintoneuser.value,
|
||||||
|
'kintonepwd': kintonepwd.value,
|
||||||
|
'active': active.value
|
||||||
|
}).then(() =>{
|
||||||
|
getDomain();
|
||||||
|
closeDg();
|
||||||
|
onReset();
|
||||||
|
})
|
||||||
|
}
|
||||||
|
// if (accept.value !== true) {
|
||||||
|
// $q.notify({
|
||||||
|
// color: 'red-5',
|
||||||
|
// textColor: 'white',
|
||||||
|
// icon: 'warning',
|
||||||
|
// message: 'You need to accept the license and terms first'
|
||||||
|
// })
|
||||||
|
// }
|
||||||
|
// else {
|
||||||
|
// $q.notify({
|
||||||
|
// color: 'green-4',
|
||||||
|
// textColor: 'white',
|
||||||
|
// icon: 'cloud_done',
|
||||||
|
// message: 'Submitted'
|
||||||
|
// })
|
||||||
|
// }
|
||||||
|
};
|
||||||
|
|
||||||
|
const onReset = () => {
|
||||||
|
name.value = '';
|
||||||
|
url.value = '';
|
||||||
|
kintoneuser.value = '';
|
||||||
|
kintonepwd.value ='';
|
||||||
|
isPwd.value = true;
|
||||||
|
active.value = false;
|
||||||
|
editId.value = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
</script>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@@ -7,7 +7,7 @@ import {
|
|||||||
} from 'vue-router';
|
} from 'vue-router';
|
||||||
|
|
||||||
import routes from './routes';
|
import routes from './routes';
|
||||||
|
import { useAuthStore } from 'stores/useAuthStore';
|
||||||
/*
|
/*
|
||||||
* If not building with SSR mode, you can
|
* If not building with SSR mode, you can
|
||||||
* directly export the Router instantiation;
|
* directly export the Router instantiation;
|
||||||
@@ -17,20 +17,57 @@ import routes from './routes';
|
|||||||
* with the Router instance.
|
* with the Router instance.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
// export default route(function (/* { store, ssrContext } */) {
|
||||||
|
// const createHistory = process.env.SERVER
|
||||||
|
// ? createMemoryHistory
|
||||||
|
// : (process.env.VUE_ROUTER_MODE === 'history' ? createWebHistory : createWebHashHistory);
|
||||||
|
|
||||||
|
// const Router = createRouter({
|
||||||
|
// scrollBehavior: () => ({ left: 0, top: 0 }),
|
||||||
|
// routes,
|
||||||
|
|
||||||
|
// // Leave this as is and make changes in quasar.conf.js instead!
|
||||||
|
// // quasar.conf.js -> build -> vueRouterMode
|
||||||
|
// // quasar.conf.js -> build -> publicPath
|
||||||
|
// history: createHistory(process.env.VUE_ROUTER_BASE),
|
||||||
|
// });
|
||||||
|
|
||||||
|
// return Router;
|
||||||
|
// });
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
const createHistory = process.env.SERVER
|
||||||
|
? createMemoryHistory
|
||||||
|
: (process.env.VUE_ROUTER_MODE === 'history' ? createWebHistory : createWebHashHistory);
|
||||||
|
|
||||||
|
export const Router = createRouter({
|
||||||
|
scrollBehavior: () => ({ left: 0, top: 0 }),
|
||||||
|
routes,
|
||||||
|
|
||||||
|
// Leave this as is and make changes in quasar.conf.js instead!
|
||||||
|
// quasar.conf.js -> build -> vueRouterMode
|
||||||
|
// quasar.conf.js -> build -> publicPath
|
||||||
|
history: createHistory(process.env.VUE_ROUTER_BASE),
|
||||||
|
});
|
||||||
|
|
||||||
export default route(function (/* { store, ssrContext } */) {
|
export default route(function (/* { store, ssrContext } */) {
|
||||||
const createHistory = process.env.SERVER
|
return Router;
|
||||||
? createMemoryHistory
|
});
|
||||||
: (process.env.VUE_ROUTER_MODE === 'history' ? createWebHistory : createWebHashHistory);
|
|
||||||
|
|
||||||
const Router = createRouter({
|
Router.beforeEach(async (to) => {
|
||||||
scrollBehavior: () => ({ left: 0, top: 0 }),
|
// clear alert on route change
|
||||||
routes,
|
//const alertStore = useAlertStore();
|
||||||
|
//alertStore.clear();
|
||||||
|
|
||||||
// Leave this as is and make changes in quasar.conf.js instead!
|
// redirect to login page if not logged in and trying to access a restricted page
|
||||||
// quasar.conf.js -> build -> vueRouterMode
|
const publicPages = ['/login'];
|
||||||
// quasar.conf.js -> build -> publicPath
|
const authRequired = !publicPages.includes(to.path);
|
||||||
history: createHistory(process.env.VUE_ROUTER_BASE),
|
const authStore = useAuthStore();
|
||||||
});
|
|
||||||
|
|
||||||
return Router;
|
if (authRequired && !authStore.token) {
|
||||||
|
authStore.returnUrl = to.fullPath;
|
||||||
|
return '/login';
|
||||||
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,11 @@
|
|||||||
import { RouteRecordRaw } from 'vue-router';
|
import { RouteRecordRaw } from 'vue-router';
|
||||||
|
|
||||||
const routes: RouteRecordRaw[] = [
|
const routes: RouteRecordRaw[] = [
|
||||||
|
{
|
||||||
|
path: '/login',
|
||||||
|
component: () => import('pages/LoginPage.vue')
|
||||||
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
path: '/',
|
path: '/',
|
||||||
component: () => import('layouts/MainLayout.vue'),
|
component: () => import('layouts/MainLayout.vue'),
|
||||||
@@ -14,6 +19,7 @@ const routes: RouteRecordRaw[] = [
|
|||||||
{ path: 'flowEditor2', component: () => import('pages/FlowChart.vue') },
|
{ path: 'flowEditor2', component: () => import('pages/FlowChart.vue') },
|
||||||
{ path: 'flowChart2', component: () => import('pages/FlowEditorPage2.vue') },
|
{ path: 'flowChart2', component: () => import('pages/FlowEditorPage2.vue') },
|
||||||
{ path: 'right', component: () => import('pages/testRight.vue') },
|
{ path: 'right', component: () => import('pages/testRight.vue') },
|
||||||
|
{ path: 'domain', component: () => import('pages/UserDomain.vue') }
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
// Always leave this as last one,
|
// Always leave this as last one,
|
||||||
|
|||||||
@@ -1,54 +1,32 @@
|
|||||||
import { defineStore } from 'pinia';
|
import { defineStore } from 'pinia';
|
||||||
import { AppInfo ,IActionFlow} from 'src/types/ActionTypes';
|
import { ActionFlow,AppInfo } from 'src/types/ActionTypes';
|
||||||
import { kintoneEvents,IKintoneEvent,KintoneEventManager } from 'src/types/KintoneEvents';
|
import {FlowCtrl } from '../control/flowCtrl';
|
||||||
import {FlowCtrl } from '../control/flowctrl';
|
|
||||||
|
|
||||||
export interface FlowEditorState{
|
export interface FlowEditorState{
|
||||||
flowNames1:string;
|
flowNames1:string;
|
||||||
appInfo?:AppInfo;
|
appInfo?:AppInfo;
|
||||||
flows?:IActionFlow[];
|
flows?:ActionFlow[];
|
||||||
selectedFlow?:IActionFlow|undefined;
|
selectedFlow?:ActionFlow|undefined;
|
||||||
eventTree:KintoneEventManager;
|
|
||||||
selectedEvent:IKintoneEvent|undefined;
|
|
||||||
}
|
}
|
||||||
const flowCtrl=new FlowCtrl();
|
const flowCtrl=new FlowCtrl();
|
||||||
export const useFlowEditorStore = defineStore("flowEditor",{
|
export const useFlowEditorStore = defineStore("flowEditor",{
|
||||||
state: ():FlowEditorState => ({
|
state: ():FlowEditorState => ({
|
||||||
flowNames1: '',
|
flowNames1: '',
|
||||||
appInfo:undefined,
|
appInfo:undefined,
|
||||||
flows:[],
|
flows:undefined,
|
||||||
selectedFlow:undefined,
|
selectedFlow:undefined
|
||||||
eventTree:kintoneEvents,
|
|
||||||
selectedEvent:undefined
|
|
||||||
}),
|
}),
|
||||||
getters: {
|
getters: {
|
||||||
/**
|
currentFlow():ActionFlow|undefined{
|
||||||
*
|
|
||||||
* @returns 現在編集しているフロー
|
|
||||||
*/
|
|
||||||
currentFlow():IActionFlow|undefined{
|
|
||||||
return this.selectedFlow;
|
return this.selectedFlow;
|
||||||
},
|
|
||||||
/**
|
|
||||||
* KintoneイベントIDから、バンドしているフローを検索する
|
|
||||||
* @param state
|
|
||||||
* @returns
|
|
||||||
*/
|
|
||||||
findFlowByEventId(state){
|
|
||||||
return (eventId:string)=>{
|
|
||||||
return state.flows?.find((flow)=>{
|
|
||||||
const root=flow.getRoot();
|
|
||||||
return root?.name===eventId
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
actions: {
|
actions: {
|
||||||
setFlows(flows:IActionFlow[]){
|
setFlows(flows:ActionFlow[]){
|
||||||
this.flows=flows;
|
this.flows=flows;
|
||||||
},
|
},
|
||||||
selectFlow(flow:IActionFlow){
|
selectFlow(flow:ActionFlow){
|
||||||
this.selectedFlow=flow;
|
this.selectedFlow=flow;
|
||||||
},
|
},
|
||||||
setApp(app:AppInfo){
|
setApp(app:AppInfo){
|
||||||
@@ -57,8 +35,6 @@ export const useFlowEditorStore = defineStore("flowEditor",{
|
|||||||
async setFlow(){
|
async setFlow(){
|
||||||
if(this.appInfo===undefined) return;
|
if(this.appInfo===undefined) return;
|
||||||
const actionFlows = await flowCtrl.getFlows(this.appInfo?.appId);
|
const actionFlows = await flowCtrl.getFlows(this.appInfo?.appId);
|
||||||
//eventTreeにバンドする
|
|
||||||
this.eventTree.bindFlows(actionFlows);
|
|
||||||
if(actionFlows && actionFlows.length>0){
|
if(actionFlows && actionFlows.length>0){
|
||||||
this.setFlows(actionFlows);
|
this.setFlows(actionFlows);
|
||||||
}
|
}
|
||||||
|
|||||||
36
frontend/src/stores/useAuthStore.ts
Normal file
36
frontend/src/stores/useAuthStore.ts
Normal file
@@ -0,0 +1,36 @@
|
|||||||
|
import { defineStore } from 'pinia';
|
||||||
|
import { api } from 'boot/axios';
|
||||||
|
import { Router } from '../router';
|
||||||
|
|
||||||
|
|
||||||
|
export const useAuthStore = defineStore({
|
||||||
|
id: 'auth',
|
||||||
|
state: () => ({
|
||||||
|
token: localStorage.getItem('token'),
|
||||||
|
returnUrl: ''
|
||||||
|
}),
|
||||||
|
actions: {
|
||||||
|
async login(username:string, password:string) {
|
||||||
|
const params = new URLSearchParams();
|
||||||
|
params.append('username', username);
|
||||||
|
params.append('password', password);
|
||||||
|
try{
|
||||||
|
const result = await api.post(`http://127.0.0.1:8000/api/token`,params);
|
||||||
|
console.info(result);
|
||||||
|
this.token =result.data.access_token;
|
||||||
|
localStorage.setItem('token', result.data.access_token);
|
||||||
|
Router.push(this.returnUrl || '/');
|
||||||
|
return true;
|
||||||
|
}catch(e)
|
||||||
|
{
|
||||||
|
console.info(e);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
logout() {
|
||||||
|
this.token = null;
|
||||||
|
localStorage.removeItem('token');
|
||||||
|
Router.push('/login');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
@@ -50,8 +50,7 @@ export interface IActionNode{
|
|||||||
*/
|
*/
|
||||||
export interface IActionFlow {
|
export interface IActionFlow {
|
||||||
id:string;
|
id:string;
|
||||||
actionNodes:Array<IActionNode>;
|
actionNodes:Array<IActionNode>
|
||||||
getRoot():IActionNode|undefined;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -395,7 +394,6 @@ reconnectOrRemoveNextNodes(targetNode: IActionNode): void {
|
|||||||
:new RootAction(node.name,node.title,node.subTitle);
|
:new RootAction(node.name,node.title,node.subTitle);
|
||||||
nodeClass.nextNodeIds=new Map(node.nextNodeIds);
|
nodeClass.nextNodeIds=new Map(node.nextNodeIds);
|
||||||
nodeClass.prevNodeId=node.prevNodeId;
|
nodeClass.prevNodeId=node.prevNodeId;
|
||||||
nodeClass.id=node.id;
|
|
||||||
return nodeClass;
|
return nodeClass;
|
||||||
});
|
});
|
||||||
const actionFlow = new ActionFlow(actionNodes);
|
const actionFlow = new ActionFlow(actionNodes);
|
||||||
|
|||||||
@@ -1,58 +1,28 @@
|
|||||||
import { publicDecrypt } from 'crypto';
|
|
||||||
import {IActionFlow} from './ActionTypes';
|
import {IActionFlow} from './ActionTypes';
|
||||||
export interface TreeNode {
|
export interface TreeNode {
|
||||||
label: string;
|
label: string;
|
||||||
}
|
}
|
||||||
|
|
||||||
export interface IKintoneEvent extends TreeNode {
|
export interface KintoneEvent extends TreeNode {
|
||||||
eventId: string;
|
eventId: string;
|
||||||
hasFlow: boolean;
|
hasFlow: boolean;
|
||||||
flowData?: IActionFlow;
|
flowData?: IActionFlow;
|
||||||
}
|
}
|
||||||
|
|
||||||
export interface IKintoneScreen extends TreeNode {
|
export interface KintoneScreen extends TreeNode {
|
||||||
label: string;
|
label: string;
|
||||||
events: IKintoneEvent[];
|
events: KintoneEvent[];
|
||||||
}
|
}
|
||||||
|
|
||||||
export class kintoneEvent implements IKintoneEvent{
|
|
||||||
eventId: string;
|
|
||||||
get hasFlow(): boolean{
|
|
||||||
return this.flowData!==undefined && this.flowData.actionNodes.length>1
|
|
||||||
};
|
|
||||||
flowData?: IActionFlow | undefined;
|
|
||||||
label: string;
|
|
||||||
constructor({eventId,label}:{eventId:string,label:string}){
|
|
||||||
this.eventId=eventId;
|
|
||||||
this.label=label;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
export class KintoneEventManager {
|
export class KintoneEventManager {
|
||||||
public screens: IKintoneScreen[];
|
public screens: KintoneScreen[];
|
||||||
|
|
||||||
constructor(screens: IKintoneScreen[]) {
|
constructor(screens: KintoneScreen[]) {
|
||||||
this.screens = screens;
|
this.screens = screens;
|
||||||
}
|
}
|
||||||
|
|
||||||
public bindFlows(flows:IActionFlow[]){
|
public findEventById(eventId: string): KintoneEvent | null {
|
||||||
for (const screen of this.screens) {
|
|
||||||
screen.events.forEach((ev)=>ev.flowData=undefined);
|
|
||||||
}
|
|
||||||
for (const flow of flows){
|
|
||||||
const eventId =flow.getRoot()?.name;
|
|
||||||
if(eventId!==undefined){
|
|
||||||
const event = this.findEventById(eventId);
|
|
||||||
if(event!==null){
|
|
||||||
event.flowData=flow;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public findEventById(eventId: string): IKintoneEvent | null {
|
|
||||||
for (const screen of this.screens) {
|
for (const screen of this.screens) {
|
||||||
for (const event of screen.events) {
|
for (const event of screen.events) {
|
||||||
if (event.eventId === eventId) {
|
if (event.eventId === eventId) {
|
||||||
@@ -62,51 +32,107 @@ export class KintoneEventManager {
|
|||||||
}
|
}
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
public findScreen(eventId:string):IKintoneScreen|null{
|
|
||||||
for (const screen of this.screens) {
|
|
||||||
if(screen.events.some((ev:IKintoneEvent)=>ev.eventId===eventId)){
|
|
||||||
return screen;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
export const kintoneEvents:KintoneEventManager = new KintoneEventManager([
|
export const kintoneEvents:KintoneEventManager = new KintoneEventManager([
|
||||||
{
|
{
|
||||||
label:"レコード追加画面",
|
label:"レコード追加画面",
|
||||||
events:[
|
events:[
|
||||||
new kintoneEvent({label:"レコード追加画面を表示した後",eventId:"app.record.create.show"}),
|
{
|
||||||
new kintoneEvent({label:"保存をクリックしたとき",eventId:"app.record.create.submit"}),
|
label:"レコード追加画面を表示した後",
|
||||||
new kintoneEvent({label:"保存が成功したとき",eventId:"app.record.create.submit.success"}),
|
eventId:"app.record.create.show",
|
||||||
new kintoneEvent({label:"フィールドの値を変更したとき",eventId:"app.record.create.change"}),
|
hasFlow:false
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label:"保存をクリックしたとき",
|
||||||
|
eventId:"app.record.create.submit",
|
||||||
|
hasFlow:true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label:"保存が成功したとき",
|
||||||
|
eventId:"app.record.create.submit.success ",
|
||||||
|
hasFlow:false
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label:"フィールドの値を変更したとき",
|
||||||
|
eventId:"app.record.create.change",
|
||||||
|
hasFlow:false
|
||||||
|
},
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label:"レコード詳細画面",
|
label:"レコード詳細画面",
|
||||||
events:[
|
events:[
|
||||||
new kintoneEvent({label:"レコード詳細画面を表示した後",eventId:"app.record.detail.show"}),
|
{
|
||||||
new kintoneEvent({label:"レコードを削除するとき",eventId:"app.record.detail.delete.submit"}),
|
label:"レコード詳細画面を表示した後",
|
||||||
new kintoneEvent({label:"プロセス管理のアクションを実行したとき",eventId:"app.record.detail.process.proceed"}),
|
eventId:"app.record.detail.show",
|
||||||
|
hasFlow:false
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label:"レコードを削除するとき",
|
||||||
|
eventId:"app.record.detail.delete.submit",
|
||||||
|
hasFlow:false
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label:"プロセス管理のアクションを実行したとき",
|
||||||
|
eventId:"app.record.detail.process.proceed",
|
||||||
|
hasFlow:false
|
||||||
|
},
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label:"レコード編集画面",
|
label:"レコード編集画面",
|
||||||
events:[new kintoneEvent({label:"レコード編集画面を表示した後",eventId:"app.record.edit.show"}),
|
events:[
|
||||||
new kintoneEvent({label:"保存をクリックしたとき",eventId:"app.record.edit.submit"}),
|
{
|
||||||
new kintoneEvent({label:"保存が成功したとき",eventId:"app.record.edit.submit.success"}),
|
label:"レコード編集画面を表示した後",
|
||||||
new kintoneEvent({label:"フィールドの値を変更したとき",eventId:"app.record.edit.change"}),
|
eventId:"app.record.edit.show",
|
||||||
|
hasFlow:false
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label:"保存をクリックしたとき",
|
||||||
|
eventId:"app.record.edit.submit",
|
||||||
|
hasFlow:false
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label:"保存が成功したとき",
|
||||||
|
eventId:"app.record.edit.submit.success",
|
||||||
|
hasFlow:false
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label:"フィールドの値を変更したとき",
|
||||||
|
eventId:"app.record.edit.change",
|
||||||
|
hasFlow:false
|
||||||
|
},
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label:"レコード一覧画面",
|
label:"レコード一覧画面",
|
||||||
events:[
|
events:[
|
||||||
new kintoneEvent({label:"一覧画面を表示した後", eventId:"app.record.index.show"}),
|
{
|
||||||
new kintoneEvent({label:"インライン編集を開始したとき",eventId:"app.record.index.edit.show"}),
|
label:"一覧画面を表示した後",
|
||||||
new kintoneEvent({label:"インライン編集のフィールド値を変更したとき", eventId:"app.record.index.edit.change"}),
|
eventId:"app.record.index.show",
|
||||||
new kintoneEvent({label:"インライン編集の【保存】をクリックしたとき",eventId:"app.record.index.edit.submit"}),
|
hasFlow:false
|
||||||
new kintoneEvent({label:"インライン編集の保存が成功したとき", eventId:"app.record.index.edit.submit.success"}),
|
},
|
||||||
|
{
|
||||||
|
label:"インライン編集を開始したとき",
|
||||||
|
eventId:"app.record.index.edit.show",
|
||||||
|
hasFlow:false
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label:"インライン編集のフィールド値を変更したとき",
|
||||||
|
eventId:"app.record.index.edit.change",
|
||||||
|
hasFlow:false
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label:"インライン編集の【保存】をクリックしたとき",
|
||||||
|
eventId:"app.record.index.edit.submit",
|
||||||
|
hasFlow:false
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label:"インライン編集の保存が成功したとき",
|
||||||
|
eventId:"app.record.index.edit.submit.success",
|
||||||
|
hasFlow:false
|
||||||
|
},
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
]);
|
]);
|
||||||
|
|||||||
Reference in New Issue
Block a user