Procházet zdrojové kódy

称重后台优化

sunxianglong před 1 měsícem
rodič
revize
f9b67bd36c

+ 25 - 13
src/main/java/com/jeesite/modules/mes/entity/MesWuliaoCz.java

@@ -15,7 +15,7 @@ import com.jeesite.common.utils.excel.annotation.ExcelFields;
 /**
  * 称重数据表Entity
  * @author sxl
- * @version 2026-09-29
+ * @version 2026-09-30
  */
 @Table(name="mes_wuliao_cz", alias="a", label="称重数据表信息", columns={
 		@Column(name="id", attrName="id", label="id", isPK=true),
@@ -23,7 +23,8 @@ import com.jeesite.common.utils.excel.annotation.ExcelFields;
 		@Column(name="bc", attrName="bc", label="班次"),
 		@Column(name="y_zl", attrName="yzl", label="原铝锭重量"),
 		@Column(name="h_zl", attrName="hzl", label="回炉料重量"),
-		@Column(name="qp_zl", attrName="qpZl", label="去皮重量"),
+		@Column(name="y_qp_zl", attrName="yQpZl", label="原铝锭去皮"),
+		@Column(name="h_qp_zl", attrName="hQpZl", label="回炉料去皮"),
 		@Column(name="hl_bl", attrName="hlBl", label="回炉料占比"),
 		@Column(name="create_date", attrName="createDate", label="创建时间", isUpdate=false, isQuery=false, isUpdateForce=true),
 	}, orderBy="a.id DESC"
@@ -35,8 +36,9 @@ public class MesWuliaoCz extends DataEntity<MesWuliaoCz> {
 	private String bc;		// 班次
 	private String yzl;		// 原铝锭重量
 	private String hzl;		// 回炉料重量
-	private String qpZl;		// 去皮重量
-	private String hlBl;		// 回炉料占比
+	private String yQpZl;	// 原铝锭去皮
+	private String hQpZl;	// 回炉料去皮
+	private String hlBl;	// 回炉料占比
 
 	@ExcelFields({
 		@ExcelField(title="id", attrName="id", align=Align.CENTER, sort=10),
@@ -44,9 +46,10 @@ public class MesWuliaoCz extends DataEntity<MesWuliaoCz> {
 		@ExcelField(title="班次", attrName="bc", align=Align.CENTER, sort=30),
 		@ExcelField(title="原铝锭重量", attrName="yzl", align=Align.CENTER, sort=40),
 		@ExcelField(title="回炉料重量", attrName="hzl", align=Align.CENTER, sort=50),
-		@ExcelField(title="去皮重量", attrName="qpZl", align=Align.CENTER, sort=60),
-		@ExcelField(title="回炉料占比", attrName="hlBl", align=Align.CENTER, sort=70),
-		@ExcelField(title="创建时间", attrName="createDate", align=Align.CENTER, sort=80),
+		@ExcelField(title="原铝锭去皮", attrName="yQpZl", align=Align.CENTER, sort=60),
+		@ExcelField(title="回炉料去皮", attrName="hQpZl", align=Align.CENTER, sort=70),
+		@ExcelField(title="回炉料占比", attrName="hlBl", align=Align.CENTER, sort=80),
+		@ExcelField(title="创建时间", attrName="createDate", align=Align.CENTER, sort=90),
 	})
 	public MesWuliaoCz() {
 		this(null);
@@ -92,13 +95,22 @@ public class MesWuliaoCz extends DataEntity<MesWuliaoCz> {
 		this.hzl = hzl;
 	}
 	
-	@Size(min=0, max=64, message="去皮重量长度不能超过 64 个字符")
-	public String getQpZl() {
-		return qpZl;
+	@Size(min=0, max=64, message="原铝锭去皮长度不能超过 64 个字符")
+	public String getYQpZl() {
+		return yQpZl;
 	}
 
-	public void setQpZl(String qpZl) {
-		this.qpZl = qpZl;
+	public void setYQpZl(String yQpZl) {
+		this.yQpZl = yQpZl;
+	}
+	
+	@Size(min=0, max=64, message="回炉料去皮长度不能超过 64 个字符")
+	public String getHQpZl() {
+		return hQpZl;
+	}
+
+	public void setHQpZl(String hQpZl) {
+		this.hQpZl = hQpZl;
 	}
 	
 	@Size(min=0, max=64, message="回炉料占比长度不能超过 64 个字符")
@@ -126,4 +138,4 @@ public class MesWuliaoCz extends DataEntity<MesWuliaoCz> {
 		sqlMap.getWhere().and("create_date", QueryType.LTE, createDate);
 	}
 	
-}
+}

+ 10 - 4
src/main/java/com/jeesite/modules/mes/web/MesProductRecordController.java

@@ -375,13 +375,19 @@ public class MesProductRecordController extends BaseController {
 			mesProductRecord.getSqlMap().getWhere().and("content",QueryType.EQ, "UDF");
 		Page<MesProductRecord> page = mesProductRecordService.findPage(mesProductRecord);
 		for (int i=0;i<page.getList().size();i++){
+			MesProductRecord record = page.getList().get(i);
 			MesTemplateItems mesTemplateItems = new MesTemplateItems();
-			mesTemplateItems.setId(page.getList().get(i).getTid());
+			mesTemplateItems.setId(record.getTid());
 			MesTemplateItems mt = mesTemplateItemsService.get(mesTemplateItems);
 			if(!ObjectUtils.isEmpty(mt)){
-				page.getList().get(i).setMessageType(mt.getCate());
-				page.getList().get(i).setTitle(mt.getTitle());
-
+				record.setMessageType(mt.getCate());
+				record.setTitle(mt.getTitle());
+			}
+			if (StringUtils.isNotBlank(record.getOprno()) && StringUtils.isNotBlank(record.getLineSn())) {
+				MesLineProcess mesLineProcess = mesLineProcessService.findInfoByOprnoLineSn(record.getOprno(), record.getLineSn());
+				if (!ObjectUtils.isEmpty(mesLineProcess)) {
+					record.setOprnoTitle(mesLineProcess.getTitle());
+				}
 			}
 		}
 		return page;

+ 18 - 10
src/main/java/com/jeesite/modules/mes/web/MesWuliaoCzController.java

@@ -146,8 +146,9 @@ public class MesWuliaoCzController extends BaseController {
 	/**
 	 * 客户端称重提交接口(无需登录)
 	 * POST ${adminPath}/mes/mesWuliaoCz/pcsubmit
-	 * 参数:lc炉次、bc班次、yzl原铝锭、hzl回炉料、qpZl去皮、hlBl回炉料比例(可选,不传则服务端计算)、ucode操作人(可选)
-	 * 公式:hlBl = hzl / (yzl + hzl - qpZl),保留两位小数
+	 * 参数:lc炉次、bc班次、yzl原铝锭、hzl回炉料、yQpZl原铝锭去皮、hQpZl回炉料去皮、
+	 *      hlBl回炉料比例(可选,不传则服务端计算)、ucode操作人(可选)
+	 * 公式:hlBl = (hzl - hQpZl) / (yzl + hzl - hQpZl - yQpZl),保留两位小数
 	 */
 	@PostMapping(value = "pcsubmit")
 	@ResponseBody
@@ -157,7 +158,8 @@ public class MesWuliaoCzController extends BaseController {
 		String bc = request.getParameter("bc");
 		String yzl = request.getParameter("yzl");
 		String hzl = request.getParameter("hzl");
-		String qpZl = request.getParameter("qpZl");
+		String yQpZl = request.getParameter("yQpZl");
+		String hQpZl = request.getParameter("hQpZl");
 		String hlBl = request.getParameter("hlBl");
 		String ucode = request.getParameter("ucode");
 
@@ -173,22 +175,27 @@ public class MesWuliaoCzController extends BaseController {
 		if (com.jeesite.common.lang.StringUtils.isBlank(hzl)) {
 			hzl = "0.00";
 		}
-		if (com.jeesite.common.lang.StringUtils.isBlank(qpZl)) {
-			qpZl = "0.00";
+		if (com.jeesite.common.lang.StringUtils.isBlank(yQpZl)) {
+			yQpZl = "0.00";
+		}
+		if (com.jeesite.common.lang.StringUtils.isBlank(hQpZl)) {
+			hQpZl = "0.00";
 		}
 
 		try {
 			double y = Double.parseDouble(yzl.trim());
 			double h = Double.parseDouble(hzl.trim());
-			double qp = Double.parseDouble(qpZl.trim());
-			double denom = y + h - qp;
+			double yQp = Double.parseDouble(yQpZl.trim());
+			double hQp = Double.parseDouble(hQpZl.trim());
+			double numer = h - hQp;
+			double denom = y + h - hQp - yQp;
 			if (com.jeesite.common.lang.StringUtils.isBlank(hlBl)) {
 				if (Math.abs(denom) < 1e-9) {
 					resp.setResult(Global.FALSE);
-					resp.setMessage("计算回炉料比例失败:原铝锭+回炉料-去皮重量不能为0");
+					resp.setMessage("计算回炉料比例失败:原铝锭+回炉料-回炉料去皮-原铝锭去皮不能为0");
 					return resp;
 				}
-				hlBl = String.format("%.2f", h / denom);
+				hlBl = String.format("%.2f", numer / denom);
 			}
 
 			MesWuliaoCz entity = new MesWuliaoCz();
@@ -197,7 +204,8 @@ public class MesWuliaoCzController extends BaseController {
 			entity.setBc(bc.trim());
 			entity.setYzl(String.format("%.2f", y));
 			entity.setHzl(String.format("%.2f", h));
-			entity.setQpZl(String.format("%.2f", qp));
+			entity.setYQpZl(String.format("%.2f", yQp));
+			entity.setHQpZl(String.format("%.2f", hQp));
 			entity.setHlBl(hlBl.trim());
 			if (com.jeesite.common.lang.StringUtils.isNotBlank(ucode)) {
 				entity.setRemarks(ucode.trim());

+ 1 - 0
src/main/resources/views/modules/mes/mesProductRecordList.html

@@ -118,6 +118,7 @@ $('#dataGrid').dataGrid({
 		}},
 		{header:'${text("工位号")}', name:'oprno', index:'a.oprno', width:90, align:"center"},
 		{header:'${text("工艺号")}', name:'craft', index:'a.craft', width:90, align:"center"},
+		{header:'${text("工位名称")}', name:'oprnoTitle', width:150, align:"center", sortable:false},
 		{header:'${text("报文名称")}', name:'title', index:'b.title', width:180, align:"center",sortable:false},
 		{header:'${text("结果")}', name:'content', index:'a.content', width:80, align:"center"},
 		{header:'${text("绑定内容")}', name:'materielSn', index:'a.materiel_sn', width:180, align:"center"},

+ 11 - 2
src/main/resources/views/modules/mes/mesWuliaoCzForm.html

@@ -53,9 +53,18 @@
 					<div class="col-xs-6">
 						<div class="form-group">
 							<label class="control-label col-sm-4" title="">
-								<span class="required hide">*</span> ${text('去皮重量')}:<i class="fa icon-question hide"></i></label>
+								<span class="required hide">*</span> ${text('原铝锭去皮')}:<i class="fa icon-question hide"></i></label>
 							<div class="col-sm-8">
-								<#form:input path="qpZl" maxlength="64" class="form-control"/>
+								<#form:input path="yQpZl" maxlength="64" class="form-control"/>
+							</div>
+						</div>
+					</div>
+					<div class="col-xs-6">
+						<div class="form-group">
+							<label class="control-label col-sm-4" title="">
+								<span class="required hide">*</span> ${text('回炉料去皮')}:<i class="fa icon-question hide"></i></label>
+							<div class="col-sm-8">
+								<#form:input path="hQpZl" maxlength="64" class="form-control"/>
 							</div>
 						</div>
 					</div>

+ 14 - 5
src/main/resources/views/modules/mes/mesWuliaoCzList.html

@@ -42,9 +42,15 @@
 					</div>
 				</div>
 				<div class="form-group">
-					<label class="control-label">${text('去皮重量')}:</label>
+					<label class="control-label">${text('原铝锭去皮')}:</label>
 					<div class="control-inline">
-						<#form:input path="qpZl" maxlength="64" class="form-control width-120"/>
+						<#form:input path="yQpZl" maxlength="64" class="form-control width-120"/>
+					</div>
+				</div>
+				<div class="form-group">
+					<label class="control-label">${text('回炉料去皮')}:</label>
+					<div class="control-inline">
+						<#form:input path="hQpZl" maxlength="64" class="form-control width-120"/>
 					</div>
 				</div>
 				<div class="form-group">
@@ -87,7 +93,10 @@ $('#dataGrid').dataGrid({
 		{header:'${text("回炉料重量")}', name:'hzl', index:'a.h_zl', width:150, align:"center", formatter: function(val, obj, row, act){
 			return (val == null || val === '') ? '' : (val + ' kg');
 		}},
-		{header:'${text("去皮重量")}', name:'qpZl', index:'a.qp_zl', width:150, align:"center", formatter: function(val, obj, row, act){
+		{header:'${text("原铝锭去皮")}', name:'yqpZl', index:'a.y_qp_zl', width:150, align:"center", formatter: function(val, obj, row, act){
+			return (val == null || val === '') ? '' : (val + ' kg');
+		}},
+		{header:'${text("回炉料去皮")}', name:'hqpZl', index:'a.h_qp_zl', width:150, align:"center", formatter: function(val, obj, row, act){
 			return (val == null || val === '') ? '' : (val + ' kg');
 		}},
 		{header:'${text("回炉料占比")}', name:'hlBl', index:'a.hl_bl', width:150, align:"center", formatter: function(val, obj, row, act){
@@ -104,7 +113,7 @@ $('#dataGrid').dataGrid({
 	],
 	// 加载成功后执行事件
 	ajaxSuccess: function(data){
-		
+
 	}
 });
 </script><script>
@@ -160,4 +169,4 @@ $('#btnImport').click(function(){
 		</div>
 	</div>
 </form>
-//--></script>
+//--></script>