16c80e5cc00eced027c96730e864dc4e72881b02.svn-base 8.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234
  1. package xin.glue.nui.H.H04;
  2. import java.text.SimpleDateFormat;
  3. import com.posdata.glue.biz.activity.PosActivity;
  4. import com.posdata.glue.biz.constants.PosBizControlConstants;
  5. import com.posdata.glue.context.PosContext;
  6. import com.posdata.glue.dao.vo.PosParameter;
  7. import com.posdata.glue.dao.vo.PosRow;
  8. import com.posdata.glue.dao.vo.PosRowSet;
  9. import com.posdata.glue.msg.PosMessage;
  10. /*
  11. * 轧辊磨削实绩
  12. * @author TangLiang 唐亮
  13. * @data 2008.10.31
  14. */
  15. public class SaveRollGrind extends PosActivity{
  16. public String runActivity(PosContext context)
  17. {
  18. //轧辊的上次磨消时间
  19. String GRIND_DTIME_OLD = "";
  20. //磨消次数
  21. Number GrindStepNo1 ;
  22. // 磨消次数
  23. int GrindStepNo = 0;
  24. // 取得查询的结果集对象
  25. PosRowSet rows =(PosRowSet) context.get("RollGrid");
  26. logger.logDebug("SaveRollGrind START");
  27. // 如果结果集存在值的情况下
  28. if(rows.hasNext()){
  29. //获取每一行的数据
  30. PosRow row = rows.next();
  31. //磨削时间
  32. GRIND_DTIME_OLD = (String) row.getAttribute("GRIND_DTIME");
  33. //磨削次数
  34. GrindStepNo1 = (Number)row.getAttribute("GRIND_STEPNO");
  35. if(GrindStepNo1 == null || GrindStepNo1.equals("")){
  36. GrindStepNo = 0;
  37. logger.logDebug("SaveRollGrind GrindStepNo1 IS NULL" + GrindStepNo);
  38. }else{
  39. GrindStepNo = GrindStepNo1.intValue();
  40. logger.logDebug("SaveRollGrind GrindStepNo1 IS NOT NULL" + GrindStepNo);
  41. }
  42. }
  43. //接收Message 编辑
  44. PosMessage message = context.getMessage();
  45. //轧辊号 1
  46. String ROLLNO = (String) message.get("ROLL_NO");
  47. //磨床号 2
  48. String GRINDDEV_NO = (String) message.get("GRINDDEV_NO");
  49. //磨削开始时间 3
  50. String GRIND_BEF_DTIME = (String) message.get("GRIND_BEF_DTIME");
  51. //磨削完成时间 4
  52. String GRIND_USE_DTIME = (String) message.get("GRIND_USE_DTIME");
  53. //磨削前头部直径
  54. String BEFORE_DIAMETER_HEAD = (String) message.get("BEFORE_DIAMETER_HEAD");
  55. //磨削前头部测量点位置
  56. String BEFORE_DIAMETER_POSITION = (String) message.get("BEFORE_DIAMETER_POSITION");
  57. //磨削前中部直径
  58. String BEFORE_DIAMETER_MIDDLE = (String) message.get("BEFORE_DIAMETER_MIDDLE");
  59. //磨削前中部测量点位置
  60. String BEFORE_DIAMETER_M_POSITION = (String) message.get("BEFORE_DIAMETER_M_POSITION");
  61. //磨削前尾部直径
  62. String BEFORE_DIAMETER_TAIL = (String) message.get("BEFORE_DIAMETER_TAIL");
  63. //磨削前尾部测量点位置
  64. String BEFORE_DIAMETER_T_POSITION = (String) message.get("BEFORE_DIAMETER_T_POSITION");
  65. //磨削后头部直径
  66. String AFTER_DIAMETER_HEAD = (String) message.get("AFTER_DIAMETER_HEAD");
  67. //磨削后头部测量点位置
  68. String AFTER_DIAMETER_POSITION = (String) message.get("AFTER_DIAMETER_POSITION");
  69. //磨削后中部直径
  70. String AFTER_DIAMETER_MIDDLE = (String) message.get("AFTER_DIAMETER_MIDDLE");
  71. //磨削后中部测量点位置
  72. String AFTER_DIAMETER_MIDDLE_POSITION = (String) message.get("AFTER_DIAMETER_MIDDLE_POSITION");
  73. //磨削后尾部直径
  74. String AFTER_DIAMETER_TAIL = (String) message.get("AFTER_DIAMETER_TAIL");
  75. //磨削后尾部测量点位置
  76. String AFTER_DIAMETER_T_POSITION = (String) message.get("AFTER_DIAMETER_T_POSITION");
  77. //磨削量(中部)
  78. String STOCK_REMOVAL = (String) message.get("STOCK_REMOVAL");
  79. //轧辊最大凸度
  80. String ROLL_CROWN_MAX = (String) message.get("ROLL_CROWN_MAX");
  81. //轧辊最小凸度
  82. String ROLL_CROWN_MIN= (String) message.get("ROLL_CROWN_MIN");
  83. //轧辊代码
  84. String ROLL_CODE = (String) message.get("ROLL_CODE");
  85. //磨削程序名
  86. String GPROG_CODE= (String) message.get("GPROG_CODE");
  87. //锥度
  88. String TAPER = (String) message.get("TAPER");
  89. //圆度
  90. String ROUNDESS = (String) message.get("ROUNDESS");
  91. //偏心度
  92. String RUNOUT = (String) message.get("RUNOUT");
  93. //轧辊粗糙度
  94. String ROLL_ROUGHNESS = (String) message.get("ROLL_ROUGHNESS");
  95. //形状代码
  96. String ROLL_SHAPE_CD = (String) message.get("ROLL_SHAPE_CD");
  97. //砂轮代码
  98. String DRESS_CODE = (String) message.get("DRESS_CODE");
  99. //磨削人工号
  100. String OEPARTORID = (String) message.get("OEPARTORID");
  101. //轧辊硬度
  102. String HARDNESS = (String) message.get("HARDNESS");
  103. //处理状态
  104. String VALIDATE_OR_DISCARD = (String) message.get("VALIDATE_OR_DISCARD");
  105. //裂纹深度
  106. String Crack_SEVERITY = (String) message.get("Crack_SEVERITY");
  107. //裂纹位置
  108. String Crack_Position = (String) message.get("Crack_Position");
  109. //裂纹角度
  110. String Crack_Angle = (String) message.get("Crack_Angle");
  111. //硬度急剧变化点深度
  112. String BRUISE_SEVERITY = (String) message.get("BRUISE_SEVERITY");
  113. //硬度急剧变化点位置
  114. String BRUISE_POSITION = (String) message.get("BRUISE_POSITION");
  115. //硬度急剧变化点角度
  116. String BRUISE_ANGLE = (String) message.get("BRUISE_ANGLE");
  117. //缺陷代码
  118. String DEFECT_CODE = (String) message.get("DEFECT_CODE");
  119. //轮廓点个数
  120. String PROFILE_POINTS_NUM = (String) message.get("PROFILE_POINTS_NUM");
  121. //轮廓点1
  122. String PROFILE_POINT1 = (String) message.get("PROFILE_POINT1");
  123. //轮廓点.......
  124. String PROFILE_POINT = (String) message.get("PROFILE_POINT");
  125. //轮廓点200
  126. String PROFILE_POINT200 = (String) message.get("PROFILE_POINT200");
  127. logger.logDebug("SaveRollGrind ROLLNO" + ROLLNO);
  128. String RollStat = "G";
  129. //磨削时间
  130. String GRIND_DTIME = null;
  131. long GRIND_DTIME1 = 0;
  132. int GRIND_DTIME11;
  133. //如果磨削的开始时间和结束时间不相等,就让磨消次数加一
  134. if(!GRIND_USE_DTIME.equals(GRIND_BEF_DTIME)){
  135. GrindStepNo = GrindStepNo+1;
  136. logger.logDebug("SaveRollGrind GrindStepNo" + GrindStepNo);
  137. SimpleDateFormat inputFormat = new SimpleDateFormat("yyyyMMddhhmmss");
  138. //获取秒
  139. try{
  140. GRIND_DTIME1 = (inputFormat.parse(GRIND_USE_DTIME).getTime() - inputFormat.parse(GRIND_BEF_DTIME).getTime())/1000;
  141. logger.logDebug("SaveRollGrind GRIND_DTIME1 right" + GRIND_DTIME1);
  142. }catch(Exception e){
  143. logger.logDebug("SaveRollGrind GRIND_DTIME1 error" + GRIND_DTIME1);
  144. e.printStackTrace();
  145. }
  146. //获取分
  147. GRIND_DTIME11 = (int)GRIND_DTIME1/60;
  148. //磨削完成时间-磨削开始时间
  149. GRIND_DTIME = String.valueOf(GRIND_DTIME11);
  150. }
  151. //更新轧辊信息
  152. PosParameter param1 = new PosParameter();
  153. param1.setWhereClauseParameter(0,GRINDDEV_NO);
  154. param1.setWhereClauseParameter(1,GRIND_BEF_DTIME);
  155. param1.setWhereClauseParameter(2,GRIND_USE_DTIME);
  156. param1.setWhereClauseParameter(3,String.valueOf(GrindStepNo));
  157. param1.setWhereClauseParameter(4,BEFORE_DIAMETER_HEAD);
  158. param1.setWhereClauseParameter(5,BEFORE_DIAMETER_POSITION);
  159. param1.setWhereClauseParameter(6,BEFORE_DIAMETER_MIDDLE);
  160. param1.setWhereClauseParameter(7,BEFORE_DIAMETER_M_POSITION);
  161. param1.setWhereClauseParameter(8,BEFORE_DIAMETER_TAIL);
  162. param1.setWhereClauseParameter(9,BEFORE_DIAMETER_T_POSITION);
  163. param1.setWhereClauseParameter(10,AFTER_DIAMETER_HEAD);
  164. param1.setWhereClauseParameter(11,AFTER_DIAMETER_POSITION);
  165. param1.setWhereClauseParameter(12,AFTER_DIAMETER_MIDDLE);
  166. param1.setWhereClauseParameter(13,AFTER_DIAMETER_MIDDLE_POSITION);
  167. param1.setWhereClauseParameter(14,AFTER_DIAMETER_TAIL);
  168. param1.setWhereClauseParameter(15,AFTER_DIAMETER_T_POSITION);
  169. param1.setWhereClauseParameter(16,STOCK_REMOVAL);
  170. param1.setWhereClauseParameter(17,ROLL_CROWN_MAX);
  171. param1.setWhereClauseParameter(18,ROLL_CROWN_MIN);
  172. param1.setWhereClauseParameter(19,ROLL_CODE);
  173. param1.setWhereClauseParameter(20,GPROG_CODE);
  174. param1.setWhereClauseParameter(21,TAPER);
  175. param1.setWhereClauseParameter(22,ROUNDESS);
  176. param1.setWhereClauseParameter(23,RUNOUT);
  177. param1.setWhereClauseParameter(24,ROLL_ROUGHNESS);
  178. param1.setWhereClauseParameter(25,ROLL_SHAPE_CD);
  179. param1.setWhereClauseParameter(26,DRESS_CODE);
  180. param1.setWhereClauseParameter(27,OEPARTORID);
  181. param1.setWhereClauseParameter(28,HARDNESS);
  182. param1.setWhereClauseParameter(29,VALIDATE_OR_DISCARD);
  183. param1.setWhereClauseParameter(30,Crack_SEVERITY);
  184. param1.setWhereClauseParameter(31,Crack_Position);
  185. param1.setWhereClauseParameter(32,Crack_Angle);
  186. param1.setWhereClauseParameter(33,BRUISE_SEVERITY);
  187. param1.setWhereClauseParameter(34,BRUISE_POSITION);
  188. param1.setWhereClauseParameter(35,BRUISE_ANGLE);
  189. param1.setWhereClauseParameter(36,DEFECT_CODE);
  190. param1.setWhereClauseParameter(37,PROFILE_POINTS_NUM);
  191. param1.setWhereClauseParameter(38,PROFILE_POINT1);
  192. param1.setWhereClauseParameter(39,PROFILE_POINT);
  193. param1.setWhereClauseParameter(40,PROFILE_POINT200);
  194. param1.setWhereClauseParameter(41,RollStat);
  195. param1.setWhereClauseParameter(42,AFTER_DIAMETER_MIDDLE);
  196. param1.setWhereClauseParameter(43,GRIND_DTIME);
  197. param1.setWhereClauseParameter(44,ROLLNO);
  198. getDao("mesdao").update("NIH040010_01.update", param1);
  199. logger.logDebug("SaveRollGrind END");
  200. return PosBizControlConstants.SUCCESS;
  201. }
  202. }