import models._
import utils._
import beans._
+import services._
import org.squeryl._
import org.squeryl.PrimitiveTypeMode._
import scala.collection.mutable.ArrayBuffer
val announceUser = PartsListDb.users.where(u => u.name === notify.users.name).head
val paramState = Integer.decode(notify.state)
val newNotify = PartsListDb.notifies.insert(Notify(notify.message, notify.atach, announceUser.id, notifyType, partId, designChangeId, paramState))
- val uploadAtach = UploadAtach()
var usersBuffer = ArrayBuffer[User]()
request.body.file("atach").map { atach =>
- uploadAtach.uploadAtach(atach, newNotify.atach.grpName, 0, newNotify.id, 0)
+ AtachManager().uploadAtach(atach, newNotify.atach.grpName, 0, newNotify.id, 0)
}
// 部品通知の場合
if(partId != 0) {
formWithErrors => BadRequest(views.html.showNotifyForm(formWithErrors, id, partId, notifyType, state, null)),
notify => {
inTransaction {
- val uploadAtach = UploadAtach()
request.body.file("atach").map{ atach =>
- uploadAtach.uploadAtach(atach, notify.atach.grpName, 0, id, 0)
+ AtachManager().uploadAtach(atach, notify.atach.grpName, 0, id, 0)
}
Redirect(routes.NotifyController.showNotify(id, partId, notifyType, state))
}
import forms._
import models._
import beans._
-import utils._
+import services._
import org.squeryl._
import org.squeryl.PrimitiveTypeMode._
import scala.collection.mutable.ArrayBuffer
// formWithErrors => BadRequest(views.html.error(formWithErrors)),
part => {
inTransaction {
- val project = getProject(part.projectName)
- val newPart = PartsListDb.parts.insert(Part(part.name, part.atach, project.id))
- val uploadAtach = UploadAtach()
+ val newPart = PartManager().insert(part)
request.body.file("atach").map { atach =>
- uploadAtach.uploadAtach(atach, newPart.atach.grpName, newPart.id, 0, 0)
+ AtachManager().uploadAtach(atach, newPart.atach.grpName, newPart.id, 0, 0)
}
Home.flashing("success" -> "Part %s has been created".format(part.name))
}
def update(id:Long) = Action { implicit request =>
inTransaction {
- val part = getPart(id)
+ val part = PartManager().getById(id)
val partForm = PartForm(part.name, null, part.project.assign(part.project.head).name)
Ok(views.html.updatePartForm(partRegistForm.fill(partForm), id, part))
}
formWithErrors => BadRequest(views.html.updatePartForm(formWithErrors, id , null)),
part => {
inTransaction {
- val project = getProject(part.projectName)
- val updPart = getPart(id)
- val uploadAtach = UploadAtach()
- updPart.name = part.name
- updPart.projectId = project.id
- PartsListDb.parts.update(updPart)
+ val updPart = PartManager().update(part, id)
request.body.file("atach").map { atach =>
- uploadAtach.uploadAtach(atach, part.atach.grpName, updPart.id, 0, 0)
+ AtachManager().uploadAtach(atach, part.atach.grpName, updPart.id, 0, 0)
}
Home.flashing("success" -> "Part %s has been created".format(part.name))
}
val buff = PartsListDb.parts.where(p => p.name like key + "%")
Ok(views.html.partsmastershow(buff.page(page*row, row), buff.size, key, page))
}
- }
-
- def getPart(id:Long):Part = {
- PartsListDb.parts.where(p => p.id === id).head
- }
-
- def getProject(name:String):Project = {
- PartsListDb.projects.where(p => p.name === name).head
- }
-
+ }
}
\ No newline at end of file
import forms._
import models._
import utils._
+import services._
import org.squeryl._
import org.squeryl.PrimitiveTypeMode._
import scala.collection.mutable.ArrayBuffer
inTransaction {
val replyUser = PartsListDb.users.where(u => u.name like reply.users.name + "%").head
val newReply = PartsListDb.replies.insert(Reply(reply.message, replyUser.id, notifyId, replyId, reply.atach))
- val uploadAtach = UploadAtach()
var usersBuffer = ArrayBuffer[User]()
request.body.file("atach").map { atach =>
- uploadAtach.uploadAtach(atach, newReply.atach.grpName, 0, 0, newReply.id)
+ AtachManager().uploadAtach(atach, newReply.atach.grpName, 0, 0, newReply.id)
}
var notify: Notify = null
if(notifyId!=0) {
// formWithErrors => BadRequest(views.html.error(formWithErrors)),
reply => {
inTransaction {
- val uploadAtach = UploadAtach()
request.body.file("atach").map { atach =>
- uploadAtach.uploadAtach(atach, reply.atach.grpName, 0, 0, id)
+ AtachManager().uploadAtach(atach, reply.atach.grpName, 0, 0, id)
}
Redirect(routes.ReplyController.showReply(id, partId, notifyType, replyType, state))
}
-package utils
+package services
import models._
import play.api.i18n._
import play.api.mvc.MultipartFormData.FilePart
import play.api.libs.Files.TemporaryFile
import java.io.File
-case class UploadAtach() {
+case class AtachManager() {
def uploadAtach(atach:FilePart[TemporaryFile], grpName:String, partId:Long, notifyId:Long, replyId:Long) = {
val filename = atach.filename
val contentType = atach.contentType
--- /dev/null
+package services
+import models._
+import forms._
+import org.squeryl._
+import org.squeryl.PrimitiveTypeMode._
+
+case class PartManager() {
+
+ def insert(part: PartForm):Part = {
+ val project = ProjectManager().getByName(part.projectName)
+ val newPart = PartsListDb.parts.insert(Part(part.name, part.atach, project.id))
+ return newPart
+ }
+
+ def update(part: PartForm, id: Long):Part = {
+ val project =ProjectManager().getByName(part.projectName)
+ val updPart = getById(id)
+ updPart.name = part.name
+ updPart.projectId = project.id
+ PartsListDb.parts.update(updPart)
+ return updPart
+ }
+
+ def getById(id :Long):Part = {
+ return PartsListDb.parts.where(p => p.id === id).head
+ }
+
+}
\ No newline at end of file
--- /dev/null
+package services
+import models._
+import org.squeryl._
+import org.squeryl.PrimitiveTypeMode._
+
+case class ProjectManager() {
+
+ def getByName(name: String):Project = {
+ return PartsListDb.projects.where(p => p.name === name).head
+ }
+
+}
\ No newline at end of file
<void property="text">
<string>id:Long
name:String
-parts:Part[0..N]</string>
+</string>
</void>
</void>
<void property="name">
<string>x</string>
<void method="set">
<object idref="Point2D$Double0"/>
- <double>90.0</double>
+ <double>264.0</double>
</void>
</void>
<void class="java.awt.geom.Point2D$Double" method="getField">
<string>y</string>
<void method="set">
<object idref="Point2D$Double0"/>
- <double>93.0</double>
+ <double>87.0</double>
</void>
</void>
<void method="setLocation">
- <double>90.0</double>
- <double>93.0</double>
+ <double>264.0</double>
+ <double>87.0</double>
</void>
</object>
</void>
<string>x</string>
<void method="set">
<object idref="Point2D$Double1"/>
- <double>373.0</double>
+ <double>547.0</double>
</void>
</void>
<void class="java.awt.geom.Point2D$Double" method="getField">
<string>y</string>
<void method="set">
<object idref="Point2D$Double1"/>
- <double>81.0</double>
+ <double>75.0</double>
</void>
</void>
<void method="setLocation">
- <double>373.0</double>
- <double>81.0</double>
+ <double>547.0</double>
+ <double>75.0</double>
</void>
</object>
</void>
<string>x</string>
<void method="set">
<object idref="Point2D$Double2"/>
- <double>376.0</double>
+ <double>550.0</double>
</void>
</void>
<void class="java.awt.geom.Point2D$Double" method="getField">
<string>y</string>
<void method="set">
<object idref="Point2D$Double2"/>
- <double>226.0</double>
+ <double>220.0</double>
</void>
</void>
<void method="setLocation">
- <double>376.0</double>
- <double>226.0</double>
+ <double>550.0</double>
+ <double>220.0</double>
</void>
</object>
</void>
<string>x</string>
<void method="set">
<object idref="Point2D$Double3"/>
- <double>88.0</double>
+ <double>262.0</double>
</void>
</void>
<void class="java.awt.geom.Point2D$Double" method="getField">
<string>y</string>
<void method="set">
<object idref="Point2D$Double3"/>
- <double>407.0</double>
+ <double>401.0</double>
</void>
</void>
<void method="setLocation">
- <double>88.0</double>
- <double>407.0</double>
+ <double>262.0</double>
+ <double>401.0</double>
</void>
</object>
</void>
<string>x</string>
<void method="set">
<object idref="Point2D$Double4"/>
- <double>557.0</double>
+ <double>731.0</double>
</void>
</void>
<void class="java.awt.geom.Point2D$Double" method="getField">
<string>y</string>
<void method="set">
<object idref="Point2D$Double4"/>
- <double>226.0</double>
+ <double>220.0</double>
</void>
</void>
<void method="setLocation">
- <double>557.0</double>
- <double>226.0</double>
+ <double>731.0</double>
+ <double>220.0</double>
</void>
</object>
</void>
<string>x</string>
<void method="set">
<object idref="Point2D$Double5"/>
- <double>381.0</double>
+ <double>555.0</double>
</void>
</void>
<void class="java.awt.geom.Point2D$Double" method="getField">
<string>y</string>
<void method="set">
<object idref="Point2D$Double5"/>
- <double>413.0</double>
+ <double>407.0</double>
+ </void>
+ </void>
+ <void method="setLocation">
+ <double>555.0</double>
+ <double>407.0</double>
+ </void>
+ </object>
+ </void>
+ <void method="addNode">
+ <object class="com.horstmann.violet.ClassNode" id="ClassNode6">
+ <void property="attributes">
+ <void property="text">
+ <string>quantity: Long
+dcSeq: Long</string>
+ </void>
+ </void>
+ <void property="name">
+ <void property="text">
+ <string>PartRelation</string>
+ </void>
+ </void>
+ </object>
+ <object class="java.awt.geom.Point2D$Double" id="Point2D$Double6">
+ <void class="java.awt.geom.Point2D$Double" method="getField">
+ <string>x</string>
+ <void method="set">
+ <object idref="Point2D$Double6"/>
+ <double>47.0</double>
+ </void>
+ </void>
+ <void class="java.awt.geom.Point2D$Double" method="getField">
+ <string>y</string>
+ <void method="set">
+ <object idref="Point2D$Double6"/>
+ <double>87.0</double>
+ </void>
+ </void>
+ <void method="setLocation">
+ <double>47.0</double>
+ <double>87.0</double>
+ </void>
+ </object>
+ </void>
+ <void method="addNode">
+ <object class="com.horstmann.violet.ClassNode" id="ClassNode7">
+ <void property="attributes">
+ <void property="text">
+ <string>id: Long
+dcNo: String
+dcDescription: String
+dcSeq: Long</string>
+ </void>
+ </void>
+ <void property="name">
+ <void property="text">
+ <string>DesignChange</string>
+ </void>
+ </void>
+ </object>
+ <object class="java.awt.geom.Point2D$Double" id="Point2D$Double7">
+ <void class="java.awt.geom.Point2D$Double" method="getField">
+ <string>x</string>
+ <void method="set">
+ <object idref="Point2D$Double7"/>
+ <double>42.0</double>
+ </void>
+ </void>
+ <void class="java.awt.geom.Point2D$Double" method="getField">
+ <string>y</string>
+ <void method="set">
+ <object idref="Point2D$Double7"/>
+ <double>289.0</double>
</void>
</void>
<void method="setLocation">
- <double>381.0</double>
- <double>413.0</double>
+ <double>42.0</double>
+ <double>289.0</double>
</void>
</object>
</void>
<void property="bentStyle">
<object class="com.horstmann.violet.BentStyle" field="HVH"/>
</void>
- <void property="endArrowHead">
- <object class="com.horstmann.violet.ArrowHead" field="V"/>
- </void>
<void property="endLabel">
<string>N</string>
</void>
+ <void property="startArrowHead">
+ <object class="com.horstmann.violet.ArrowHead" field="V"/>
+ </void>
<void property="startLabel">
<string>1</string>
</void>
<object idref="ClassNode5"/>
<object idref="ClassNode4"/>
</void>
+ <void method="connect">
+ <object class="com.horstmann.violet.ClassRelationshipEdge">
+ <void property="bentStyle">
+ <object class="com.horstmann.violet.BentStyle" field="HVH"/>
+ </void>
+ <void property="endArrowHead">
+ <object class="com.horstmann.violet.ArrowHead" field="V"/>
+ </void>
+ <void property="endLabel">
+ <string>N</string>
+ </void>
+ <void property="startLabel">
+ <string>1</string>
+ </void>
+ </object>
+ <object idref="ClassNode0"/>
+ <object idref="ClassNode6"/>
+ </void>
+ <void method="connect">
+ <object class="com.horstmann.violet.ClassRelationshipEdge">
+ <void property="bentStyle">
+ <object class="com.horstmann.violet.BentStyle" field="HVH"/>
+ </void>
+ <void property="endArrowHead">
+ <object class="com.horstmann.violet.ArrowHead" field="V"/>
+ </void>
+ <void property="endLabel">
+ <string>N</string>
+ </void>
+ <void property="startLabel">
+ <string>1</string>
+ </void>
+ </object>
+ <object idref="ClassNode7"/>
+ <object idref="ClassNode6"/>
+ </void>
+ <void method="connect">
+ <object class="com.horstmann.violet.ClassRelationshipEdge">
+ <void property="bentStyle">
+ <object class="com.horstmann.violet.BentStyle" field="HV"/>
+ </void>
+ <void property="endArrowHead">
+ <object class="com.horstmann.violet.ArrowHead" field="V"/>
+ </void>
+ <void property="startLabel">
+ <string>0..1</string>
+ </void>
+ </object>
+ <object idref="ClassNode7"/>
+ <object idref="ClassNode2"/>
+ </void>
</object>
</java>