This commit is contained in:
zds
2022-11-29 20:10:59 +08:00
parent aa38c4c722
commit e5632397fe
30 changed files with 358 additions and 329 deletions

View File

@@ -103,6 +103,11 @@ public class ClassstandardServiceImpl implements ClassstandardService {
if (classstandardDto != null && classstandardDto.getIs_delete().equals("0") && dto.getBase_data_type().equals(classstandardDto.getBase_data_type())) {
throw new BadRequestException("存在相同的基础类别编号");
}
WQLObject wo = WQLObject.getWQLObject("MD_PB_ClassStandard");
JSONObject old = wo.query("is_delete='0' and class_code='"+class_code+"'").uniqueResult(0);
if(old!=null){
throw new BadRequestException("已存在相同编码!");
}
Long currentUserId = SecurityUtils.getCurrentUserId();
String nickName = SecurityUtils.getNickName();
String now = DateUtil.now();
@@ -124,7 +129,7 @@ public class ClassstandardServiceImpl implements ClassstandardService {
dto.setIs_modify("0");
}
WQLObject wo = WQLObject.getWQLObject("MD_PB_ClassStandard");
JSONObject json = JSONObject.parseObject(JSON.toJSONString(dto));
wo.insert(json);
@@ -147,7 +152,11 @@ public class ClassstandardServiceImpl implements ClassstandardService {
if (classstandardDto != null && !dto.getClass_id().equals(classstandardDto.getClass_id()) && classstandardDto.getIs_delete().equals("0") && dto.getBase_data_type().equals(classstandardDto.getBase_data_type())) {
throw new BadRequestException("存在相同的供应商编号");
}
WQLObject wo = WQLObject.getWQLObject("MD_PB_ClassStandard");
JSONObject old = wo.query("is_delete='0' and class_code='"+class_code+"' and class_id<>'"+dto.getClass_id()+"'").uniqueResult(0);
if(old!=null){
throw new BadRequestException("已存在相同编码!");
}
Long oldPid = findById(dto.getClass_id() + "").getParent_class_id();
Long newPid = dto.getParent_class_id();
@@ -163,7 +172,6 @@ public class ClassstandardServiceImpl implements ClassstandardService {
dto.setUpdate_optid(currentUserId);
dto.setUpdate_optname(nickName);
WQLObject wo = WQLObject.getWQLObject("MD_PB_ClassStandard");
JSONObject json = JSONObject.parseObject(JSON.toJSONString(dto));
wo.update(json);

View File

@@ -47,6 +47,8 @@
svp.storagevehiclepoint_id,
svp.storagevehicle_id,
svp.storagevehicle_code,
svp.update_optname AS update_optname2,
svp.update_time AS update_time2,
svp.set_type,
d.label AS set_type_name
FROM

View File

@@ -44,7 +44,7 @@ public class ItempointServiceImpl implements ItempointService {
map.put("flag", "1");
map.put("item_type", item_type);
if (!ObjectUtil.isEmpty(item_code)) map.put("item_code", "%" + item_code + "%");
JSONObject json = WQL.getWO("PA_BASE_ITEMPOINT001").addParamMap(map).pageQuery(WqlUtil.getHttpContext(page), "item.update_time desc");
JSONObject json = WQL.getWO("PA_BASE_ITEMPOINT001").addParamMap(map).pageQuery(WqlUtil.getHttpContext(page), "item.item_code");
return json;
}

View File

@@ -66,12 +66,12 @@ public class PerformancemstServiceImpl implements PerformancemstService {
String assessor_id = (String) whereJson.get("assessor_id");
String assessor_date = (String) whereJson.get("assessor_date");
HashMap<String, String> map = new HashMap<>();
map.put("flag", "1");
map.put("flag", "01");
if (ObjectUtil.isNotEmpty(assessor_id)) {
map.put("assessor_id", "%" + assessor_id + "%");
}
map.put("assessor_date", assessor_date);
JSONObject json = WQL.getWO("QL_TEST_PERFORMANCEMST01").addParamMap(map).pageQuery(WqlUtil.getHttpContext(page), "mst.update_time desc");
JSONObject json = WQL.getWO("QL_TEST_PERFORMANCEMST01").addParamMap(map).pageQuery(WqlUtil.getHttpContext(page), "mst.status,mst.assessor_date desc,user.nick_name");
return json;
}

View File

@@ -82,6 +82,44 @@
ENDPAGEQUERY
ENDIF
IF 输入.flag = "01"
PAGEQUERY
SELECT
mst.performance_id,
mst.performance_code,
mst.assessor_id,
mst.assessor_date,
round(mst.total_score,2) AS total_score,
mst.status,
mst.remark,
mst.create_name,
mst.create_time,
mst.update_optname,
mst.update_time,
mst.confirm_optname,
mst.confirm_time,
mst.is_delete,
user.nick_name AS assessor_name
FROM
QL_TEST_PerformanceMst mst
LEFT JOIN sys_user user ON mst.assessor_id = user.user_id
WHERE
mst.is_delete = '0'
OPTION 输入.assessor_id <> ""
user.nick_name like 输入.assessor_id
ENDOPTION
OPTION 输入.create_id <> ""
mst.assessor_id = 输入.create_id
ENDOPTION
OPTION 输入.assessor_date <> ""
mst.assessor_date = 输入.assessor_date
ENDOPTION
ENDSELECT
ENDPAGEQUERY
ENDIF
IF 输入.flag = "2"
QUERY
SELECT

View File

@@ -83,7 +83,7 @@
WorkTask.workprocedure_id = 输入.workprocedure_id
ENDOPTION
OPTION 输入.device_code <> ""
device.device_code like 输入.device_code
(device.device_code like 输入.device_code or device.device_name like 输入.device_code)
ENDOPTION
OPTION 输入.status <> ""
WorkTask.status = 输入.status

View File

@@ -11,6 +11,7 @@ import cn.hutool.core.util.StrUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.google.common.collect.Maps;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.nl.exception.BadRequestException;
@@ -39,6 +40,7 @@ import org.springframework.transaction.annotation.Transactional;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.*;
import java.util.stream.Collectors;
/**
* @author Lxy
@@ -785,6 +787,13 @@ public class FlourworkServiceImpl implements FlourworkService {
@Override
public Map<String, Object> queryException(Map whereJson, Pageable page) {
String is_query = MapUtil.getStr(whereJson, "is_query");
JSONObject json = new JSONObject();
if(ObjectUtil.isEmpty(is_query) || is_query.equals("0")){
json.put("content",new JSONArray());
json.put("total","0");
}else{
WQLObject md_me_materialbase = WQLObject.getWQLObject("md_me_materialbase");
String is_deal = MapUtil.getStr(whereJson, "is_deal");
String is_all = MapUtil.getStr(whereJson, "is_all");
String device_id = MapUtil.getStr(whereJson, "device_id");
@@ -808,22 +817,51 @@ public class FlourworkServiceImpl implements FlourworkService {
map.put("num3", num3);
map.put("is_all", is_all);
JSONObject json = WQL.getWO("QPDM_BI_FORMULA01").addParamMap(map).pageQuery(WqlUtil.getHttpContext(page), "a.formula_code,a.put_time DESC");
json = WQL.getWO("QPDM_BI_FORMULA01").addParamMap(map).pageQuery(WqlUtil.getHttpContext(page), "a.formula_code,a.put_time DESC");
JSONArray array = json.getJSONArray("content");
if (ObjectUtil.isNotEmpty(array)){
JSONArray array2 = new JSONArray();
for(int i=0;i< array.size();i++){
JSONObject jo = array.getJSONObject(i);
String material_id = jo.getString("material_id");
JSONObject mater1 = md_me_materialbase.query("material_id='"+material_id+"'").uniqueResult(0);
if(mater1!=null){
jo.put("product_material_code",mater1.getString("material_code"));
}
String dtl_material_id = jo.getString("dtl_material_id");
JSONObject mater2 = md_me_materialbase.query("material_id='"+dtl_material_id+"'").uniqueResult(0);
if(mater2!=null){
jo.put("dtl_material_code",mater2.getString("material_code"));
jo.put("dtl_material_name",mater2.getString("material_name"));
}
array2.add(jo);
}
json.put("content",array2);
}
}
return json;
}
@Override
@Transactional(rollbackFor = Exception.class)
public void exceptionSure(JSONObject whereJson) {
String formuladtljob_id = whereJson.getString("formuladtljob_id");
Long currentUserId = SecurityUtils.getCurrentUserId();
String nickName = SecurityUtils.getNickName();
String now = DateUtil.now();
WQLObject dtlJobTab = WQLObject.getWQLObject("PDM_BI_FormulaDtlJob"); // 作业明细表
JSONArray rows = whereJson.getJSONArray("rows");
for(int i=0;i<rows.size();i++){
JSONObject jo = rows.getJSONObject(i);
String formuladtljob_id = jo.getString("formuladtljob_id");
JSONObject jsonDtlJob = dtlJobTab.query("formuladtljob_id = '" + formuladtljob_id + "'").uniqueResult(0);
if (!StrUtil.equals(jsonDtlJob.getString("is_process"), "0")) throw new BadRequestException("状态必须为未处理");
if (!StrUtil.equals(jsonDtlJob.getString("is_process"), "0")) {
throw new BadRequestException(jo.getString("bucketunique")+"状态必须为未处理!");
}
jsonDtlJob.put("is_process", "1");
jsonDtlJob.put("process_id", currentUserId);
jsonDtlJob.put("process_name", nickName);
@@ -831,6 +869,7 @@ public class FlourworkServiceImpl implements FlourworkService {
jsonDtlJob.put("process_type", "0");
dtlJobTab.update(jsonDtlJob);
}
}
@Override
@Transactional(rollbackFor = Exception.class)

View File

@@ -70,6 +70,14 @@ public class FormulaServiceImpl implements FormulaService {
if (StrUtil.isNotEmpty(workorder_code)) {
map.put("workorder_code", "%" + workorder_code + "%");
}
String begin_time = map.get("begin_time");
if (StrUtil.isNotEmpty(begin_time)) {
map.put("begin_time", begin_time.substring(0,10)+" 00:00:00");
}
String end_time = map.get("end_time");
if (StrUtil.isNotEmpty(end_time)) {
map.put("end_time", end_time.substring(0,10)+" 23:59:59");
}
String formula_code = map.get("formula_code");
if (StrUtil.isNotEmpty(formula_code)) {
map.put("formula_code", "%" + formula_code + "%");

View File

@@ -23,6 +23,7 @@
输入.is_process TYPEAS s_string
输入.formula_code TYPEAS s_string
输入.workorder_id TYPEAS s_string
输入.materialIds TYPEAS f_string
输入.is_all TYPEAS s_string
输入.num1 TYPEAS s_string
输入.num2 TYPEAS s_string
@@ -375,78 +376,56 @@
IF 输入.flag = "5"
PAGEQUERY
SELECT * FROM (
SELECT
work.workordercard_id,
mst.formula_code,
mater1.material_code AS product_material_code,
mst.pcsn AS product_pcsn,
mst.storagevehicle_code,
mater2.material_code AS dtl_material_code,
mater2.material_name AS dtl_material_name,
mst.pcsn AS product_pcsn,
dtlJob.pcsn AS dtl_pcsn,
dtlJob.bucketunique,
dtlJob.storage_qty,
dtlJob.putconfirm_qty,
mst.material_id,
dtlJob.material_id AS dtl_material_id,
dtlJob.outconfirm_qty,
mst.workorder_id AS workordercard_id,
(dtlJob.putconfirm_qty - dtlJob.outconfirm_qty) AS bad_qty,
dtlJob.formula_code,
dtlJob.struct_code,
dtlJob.jobstoragevehicle_code,
dtlJob.put_name,
dtlJob.put_time,
(
CASE
WHEN dtlJob.is_process = '0' THEN '否'
WHEN dtlJob.is_process = '1' THEN '是'
END
) AS is_process,
dtlJob.is_process,
dtlJob.process_name,
dtlJob.process_time,
dtlJob.formuladtljob_id,
dtlJob.formuladtl_id,
dtlJob.formula_id,
device.device_code
task.device_id
FROM
PDM_BI_FormulaDtlJob dtlJob
LEFT JOIN PDM_BI_FormulaDtl dtl ON dtlJob.formuladtl_id = dtl.formuladtl_id
LEFT JOIN PDM_BI_Formula mst ON mst.formula_id = dtl.formula_id
LEFT JOIN md_me_materialbase mater1 ON mater1.material_id = mst.material_id
LEFT JOIN md_me_materialbase mater2 ON mater2.material_id = dtlJob.material_id
LEFT JOIN PDM_BI_WorkOrder work ON work.workorder_id = mst.workorder_id
LEFT JOIN PDM_BI_WorkTask task ON task.workorder_id = work.workorder_id AND task.workprocedure_code = 'GX001'
LEFT JOIN EM_BI_DeviceInfo device ON device.device_id = task.device_id
INNER JOIN PDM_BI_Formula mst ON mst.formula_id = dtlJob.formula_id
INNER JOIN PDM_BI_WorkTask task ON task.workorder_id = mst.workorder_id
AND task.workprocedure_code = 'GX001'
WHERE
work.is_delete = '0'
AND mst.is_delete = '0'
mst.is_delete = '0'
AND dtlJob.is_abnormal = '1'
OPTION 输入.device_id <> ""
task.device_id = 输入.device_id
ENDOPTION
OPTION 输入.is_process <> ""
dtlJob.is_process = 输入.is_process
ENDOPTION
OPTION 输入.formula_code <> ""
mst.formula_code = 输入.formula_code
ENDOPTION
) a
where
1=1
where 1=1
OPTION 输入.is_all <> "1"
(a.device_code = 'PFW001' AND a.bad_qty > 输入.num1)
(( a.device_id = '1510803277447565312' AND a.bad_qty > 输入.num1)
OR
(a.device_code = 'PFW002' AND a.bad_qty > 输入.num2)
( a.device_id = '1510803382053507072' AND a.bad_qty > 输入.num2)
OR
(a.device_code = 'PFW003' AND a.bad_qty > 输入.num3)
( a.device_id = '1510803479571075072' AND a.bad_qty > 输入.num3))
ENDOPTION
ENDSELECT
ENDPAGEQUERY
ENDIF

View File

@@ -85,12 +85,12 @@ public class SparePartOutController {
return new ResponseEntity<>(sparePartOutService.getStructIvt(whereJson), HttpStatus.OK);
}
@PostMapping("/getIvt")
@GetMapping("/getIvt")
@Log("查询备件库存")
@ApiOperation("查询备件库存")
//@PreAuthorize("@el.check('materialtype:list')")
public ResponseEntity<Object> getIvt(@RequestBody JSONObject whereJson) {
return new ResponseEntity<>(sparePartOutService.getIvt(whereJson), HttpStatus.OK);
public ResponseEntity<Object> getIvt(@RequestParam Map whereJson, Pageable page) {
return new ResponseEntity<>(sparePartOutService.getIvt(whereJson,page), HttpStatus.OK);
}
@PostMapping("/insertDis")

View File

@@ -37,7 +37,7 @@ public interface SparePartOutService {
JSONArray getStructIvt(JSONObject whereJson);
JSONArray getIvt(JSONObject whereJson);
Map<String, Object> getIvt(Map whereJson, Pageable page);
void divStruct(JSONObject whereJson);

View File

@@ -199,14 +199,14 @@ public class SparePartOutServiceImpl implements SparePartOutService {
}
@Override
public JSONArray getIvt(JSONObject whereJson) {
String search = whereJson.getString("search");
public Map<String, Object> getIvt(Map whereJson, Pageable page) {
String search = (String) whereJson.get("search");
HashMap<String, String> map = new HashMap<>();
map.put("flag", "11");
if (StrUtil.isNotEmpty(search)) {
map.put("search", search);
}
JSONArray dtl_rows = WQL.getWO("QEM_BI_SPAREPARTOUT").addParamMap(map).process().getResultJSONArray(0);
JSONObject dtl_rows = WQL.getWO("QEM_BI_SPAREPARTOUT").addParamMap(map).pageQuery(WqlUtil.getHttpContext(page), "material_code");
return dtl_rows;
}

View File

@@ -71,7 +71,7 @@
(case when dtl.source_bill_type = 'PO' then '备件采购入库' else '' end ) AS source_type_name
FROM
em_bi_iostorinv ios
LEFT JOIN em_bi_iostorinvdtl dtl ON dtl.iostorinv_id = ios.iostorinv_id
LEFT JOIN em_bi_iostorinvdtl dtl ON dtl.iostorinv_id = ios.iostorinv_id and dtl.seq_no='1'
WHERE
ios.buss_type = 输入.buss_type
AND

View File

@@ -434,7 +434,7 @@
ENDIF
IF 输入.flag = "11"
QUERY
PAGEQUERY
SELECT
mb.material_code,
mb.material_name,
@@ -484,7 +484,7 @@
)
ENDOPTION
ENDSELECT
ENDQUERY
ENDPAGEQUERY
ENDIF
IF 输入.flag = "12"

View File

@@ -74,9 +74,8 @@ public class DevicefaultcaeServiceImpl implements DevicefaultcaeService {
map.put("classIds", classIds);
}
JSONObject json = WQL.getWO("EM_DEVICEFAULTCAE01").addParamMap(map).pageQuery(WqlUtil.getHttpContext(page), "re.devicerecord_id DESC");
/* // 处理平均故障间隔时间 && 平均故障修复时间
WQLObject tab = WQLObject.getWQLObject("EM_BI_DeviceRepairRequest");*/
JSONObject json = WQL.getWO("EM_DEVICEFAULTCAE01").addParamMap(map).pageQuery(WqlUtil.getHttpContext(page), "dept.name,file.device_code");
/* // 处理平均故障间隔时间 && 平均故障修复时间*/
JSONArray content = json.getJSONArray("content");
for (int i = 0; i < content.size(); i++) {
JSONObject jsonObject = content.getJSONObject(i);
@@ -111,39 +110,6 @@ public class DevicefaultcaeServiceImpl implements DevicefaultcaeService {
jsonObject.put("avgRep_time","0");
}
}
/*JSONArray arr = tab.query("devicerecord_id = '" + devicerecord_id + "' and is_delete = '0'").getResultJSONArray(0);
// 计算平均故障修复时间
String nunm = jsonObject.getString("nunm");
String create_time_all = "0";
String finish_time_all = "0";
for (int j = 0; j < arr.size(); j++) {
JSONObject jsonObject1 = arr.getJSONObject(j);
// 去掉时间中的特殊字符
String create_time = jsonObject1.getString("create_time").substring(0,10).replaceAll("[[\\s-:punct:]]","");
String finish_time = "0";
if (ObjectUtil.isNotEmpty(jsonObject1.getString("finish_time"))) {
finish_time = jsonObject1.getString("finish_time").substring(0,10).replaceAll("[[\\s-:punct:]]","");
}
// 相加
create_time_all = String.valueOf(NumberUtil.add(create_time_all,create_time));
finish_time_all = String.valueOf(NumberUtil.add(finish_time_all,finish_time));
}
BigDecimal mul = NumberUtil.mul(NumberUtil.sub(finish_time_all, create_time_all), 24);
BigDecimal div = NumberUtil.div(mul.toString(), nunm);
if (div.intValue() < 0) {
jsonObject.put("avgRep_time","0");
} else {
jsonObject.put("avgRep_time",String.valueOf(div));
}
// 计算平均故障间隔时间
String re_end_time = end_time.substring(0, 10).replaceAll("[[\\s-:punct:]]", "");
String re_begin_time = begin_time.substring(0, 10).replaceAll("[[\\s-:punct:]]", "");
BigDecimal add = NumberUtil.add(NumberUtil.sub(re_end_time, re_begin_time).toString(), "1");
BigDecimal avgVal_time = NumberUtil.div(NumberUtil.mul(add, 24).toString(), nunm);
jsonObject.put("avgVal_time",avgVal_time.toString());*/
}
json.put("content",content);
return json;

View File

@@ -90,9 +90,6 @@
OPTION 输入.end_time <> ""
re.fault_time <= 输入.end_time
ENDOPTION
group by re.devicerecord_id
ENDSELECT
ENDPAGEQUERY
ENDIF

View File

@@ -65,7 +65,7 @@
<el-input v-model.trim="form.class_desc" style="width: 370px;" />
</el-form-item>
<el-form-item label="顶级类目">
<el-radio-group v-model="form.isTop" style="width: 140px">
<el-radio-group v-model="form.isTop" style="width: 140px" @change="mychange">
<el-radio label="1">是</el-radio>
<el-radio label="0">否</el-radio>
</el-radio-group>
@@ -187,6 +187,7 @@ export default {
data() {
return {
classes: [],
base_data_type: null,
permission: {},
rules: {
class_id: [
@@ -290,6 +291,18 @@ export default {
this.classes = date
})
},
mychange(val) {
if (val === '0' && this.form.base_data_type != null) {
crudClassstandard.getClass({ base_data_type: this.form.base_data_type }).then(res => {
this.classes = res.content.map(function(obj) {
if (obj.hasChildren) {
obj.children = null
}
return obj
})
})
}
},
getClass() {
crudClassstandard.getClass({ enabled: true }).then(res => {
this.classes = res.content.map(function(obj) {

View File

@@ -58,7 +58,7 @@
</crudOperation>
<!--表格渲染-->
<el-table ref="table" v-loading="crud.loading" :max-height="590" :data="crud.data" size="mini" style="width: 100%;" @selection-change="crud.selectionChangeHandler">
<!-- <el-table-column type="selection" width="55" />-->
<el-table-column type="selection" width="55" />
<el-table-column v-if="false" prop="storagevehiclepoint_id" label="载具点位对应标识" />
<el-table-column v-if="false" prop="set_type" label="对应类型" />
<el-table-column v-if="false" prop="storagevehicle_id" label="载具标识" />
@@ -74,16 +74,8 @@
</el-table-column>
<el-table-column v-if="false" prop="point_id" label="点位标识" />
<el-table-column v-if="false" prop="area_type" label="所属区域" />
<el-table-column prop="update_optname" label="修改者" />
<el-table-column prop="update_time" label="修改时间" />
<!-- <el-table-column v-permission="['admin','storagevehiclepoint:edit','storagevehiclepoint:del']" label="操作" width="150px" align="center">
<template slot-scope="scope">
<udOperation
:data="scope.row"
:permission="permission"
/>
</template>
</el-table-column>-->
<el-table-column prop="update_optname2" label="修改者" />
<el-table-column prop="update_time2" label="修改时间" />
</el-table>
<!--分页组件-->
<pagination />
@@ -114,7 +106,7 @@ const defaultForm = {
}
export default {
name: 'Storagevehiclepoint',
components: { pagination, crudOperation, rrOperation, udOperation },
components: { pagination, crudOperation, rrOperation },
mixins: [presenter(), header(), form(defaultForm), crud()],
cruds() {
return CRUD({
@@ -147,6 +139,7 @@ export default {
data() {
return {
storageVehicleTypeList: [],
checkrows: [],
permission: {
}}
},
@@ -156,16 +149,17 @@ export default {
})
},
methods: {
// 钩子在获取表格数据之前执行false 则代表不获取数据
[CRUD.HOOK.beforeRefresh]() {
return true
},
hand(value) {
this.crud.toQuery()
},
save() {
this.checkrows = this.$refs.table.selection
if (this.checkrows.length === 0) {
this.crud.notify('请勾选需要操作的记录!')
return false
}
const data = {
'data': this.$refs.table.data
'data': this.checkrows
}
crudStoragevehiclepoint.save(data).then(res => {
this.crud.toQuery()

View File

@@ -22,18 +22,6 @@
@change="crud.toQuery"
/>
</el-form-item>
<el-form-item label="人员">
<el-input
v-model="query.assessor_id"
clearable
size="mini"
placeholder="请输人员姓名"
style="width: 230px;"
class="filter-item"
@keyup.enter.native="crud.toQuery"
/>
</el-form-item>
<rrOperation />
</el-form>
</div>

View File

@@ -253,7 +253,7 @@
<el-link type="warning" @click="toView(scope.$index, scope.row)">{{ scope.row.workorder_code }}</el-link>
</template>
</el-table-column>
<el-table-column prop="org_id" :formatter="orgFormat" min-width="105" label="所属组织" />
<el-table-column prop="org_id" :formatter="orgFormat" min-width="120" label="所属组织" />
<el-table-column prop="workorder_type" :formatter="bill_typeFormat" min-width="75" label="工令类型" />
<el-table-column :formatter="stateFormat" min-width="75" prop="status" label="工令状态" />
<el-table-column prop="device_name" min-width="80" label="设备" />

View File

@@ -81,12 +81,12 @@
/>
</el-select>
</el-form-item>
<el-form-item label="设备编码">
<el-form-item label="设备">
<el-input
v-model="query.device_code"
size="mini"
clearable
placeholder="设备编码"
placeholder="设备"
@keyup.enter.native="crud.toQuery"
/>
</el-form-item>

View File

@@ -95,27 +95,28 @@
@selection-change="crud.selectionChangeHandler"
>
<el-table-column type="selection" width="55" />
<el-table-column show-overflow-tooltip prop="workordercard_id" label="工艺指令卡" />
<el-table-column min-width="120" show-overflow-tooltip prop="formula_code" label="配方号" />
<el-table-column min-width="120" show-overflow-tooltip prop="product_material_code" label="产品编码" />
<el-table-column show-overflow-tooltip prop="product_pcsn" label="产品批次" />
<el-table-column show-overflow-tooltip prop="storagevehicle_code" label="配粉槽" />
<el-table-column min-width="120" show-overflow-tooltip prop="dtl_material_code" label="物料编码" />
<el-table-column min-width="120" show-overflow-tooltip prop="dtl_material_name" label="物料名称" />
<el-table-column min-width="100" show-overflow-tooltip prop="dtl_pcsn" label="物料批次" />
<el-table-column min-width="140" show-overflow-tooltip prop="bucketunique" label="桶号" />
<el-table-column show-overflow-tooltip prop="storage_qty" label="库存重量" />
<el-table-column show-overflow-tooltip prop="putconfirm_qty" label="实际投料" />
<el-table-column show-overflow-tooltip prop="outconfirm_qty" label="出库重量" />
<el-table-column show-overflow-tooltip prop="bad_qty" label="差异重量" />
<el-table-column show-overflow-tooltip prop="qty_unit_name" label="单位" :formatter="formatQtyName"/>
<el-table-column show-overflow-tooltip prop="struct_code" label="货位" />
<el-table-column show-overflow-tooltip prop="jobstoragevehicle_code" label="托盘号" />
<el-table-column show-overflow-tooltip prop="put_name" label="投料人" />
<el-table-column min-width="150" show-overflow-tooltip prop="put_time" label="投料时间" />
<el-table-column show-overflow-tooltip prop="is_process" label="是否已处理" />
<el-table-column show-overflow-tooltip prop="process_name" label="处理人" />
<el-table-column show-overflow-tooltip prop="process_time" label="处理时间" />
<el-table-column prop="workordercard_id" label="工艺指令卡" min-width="150" />
<el-table-column min-width="120" prop="formula_code" label="配方号" />
<el-table-column min-width="120" prop="product_material_code" label="产品编码" />
<el-table-column prop="product_pcsn" label="产品批次" />
<el-table-column prop="storagevehicle_code" label="配粉槽" />
<el-table-column min-width="120" prop="dtl_material_code" label="物料编码" />
<el-table-column min-width="120" prop="dtl_material_name" label="物料名称" />
<el-table-column min-width="100" prop="dtl_pcsn" label="物料批次" />
<el-table-column min-width="140" prop="bucketunique" label="桶号" />
<el-table-column prop="storage_qty" label="库存重量" />
<el-table-column prop="putconfirm_qty" label="实际投料" />
<el-table-column prop="outconfirm_qty" label="出库重量" />
<el-table-column prop="bad_qty" label="差异重量" />
<el-table-column prop="qty_unit_name" label="单位" :formatter="formatQtyName" />
<el-table-column prop="struct_code" label="货位" />
<!-- <el-table-column prop="device_id" label="配粉工位" :formatter="deviceListFormat" />-->
<el-table-column prop="jobstoragevehicle_code" label="托盘号" />
<el-table-column prop="put_name" label="投料" />
<el-table-column min-width="150" prop="put_time" label="投料时间" />
<el-table-column prop="is_process" label="是否已处理" :formatter="formatQtyName2" />
<el-table-column prop="process_name" label="处理" />
<el-table-column prop="process_time" label="处理时间" />
</el-table>
<!--分页组件-->
<pagination />
@@ -132,23 +133,22 @@
import CRUD, { presenter, header, crud } from '@crud/crud'
import rrOperation from '@crud/RR.operation'
import crudOperation from '@crud/CRUD.operation'
import udOperation from '@crud/UD.operation'
import pagination from '@crud/Pagination'
import crudOrderproc from '@/api/wms/pcs/orderproc'
import crudFlourwork from '@/api/wms/pf/flourwork'
import { download } from '@/api/data'
import { downloadFile } from '@/utils'
export default {
name: 'ExceptionDialog',
components: { rrOperation, crudOperation, udOperation, pagination, crudOrderproc },
components: { rrOperation, crudOperation, pagination },
mixins: [presenter(), header()],
cruds() {
return CRUD({
url: 'api/flourwork/queryException',
idField: 'formula_id',
sort: 'formula_id,desc',
idField: 'formuladtljob_id',
sort: '',
crudMethod: { ... crudFlourwork },
query: { is_deal: '0', is_all: '0', is_query: '0' },
optShow: {
add: false,
edit: false,
@@ -195,29 +195,40 @@ export default {
.catch(_ => {
})
},
// 钩子在获取表格数据之前执行false 则代表不获取数据
[CRUD.HOOK.beforeRefresh]() {
return true
},
close() {
this.crud.resetQuery(false)
this.$emit('update:dialogShow', false)
},
open() {
this.crud.query.is_query = '1'
this.crud.toQuery()
},
hand(value) {
this.crud.toQuery()
},
deviceListFormat(row) {
for (const item of this.deviceList) {
if (item.code === row.device_id) {
return item.name
}
}
},
formatQtyName(row, cloum) {
return 'Kg'
},
formatQtyName2(row, cloum) {
if (row.is_process === '1') {
return '是'
} else {
return '否'
}
},
sure() {
const _selectData = this.$refs.table.selection
if (!_selectData || _selectData.length !== 1) {
return this.crud.notify('请选择一条记录', CRUD.NOTIFICATION_TYPE.INFO)
if (!_selectData || _selectData.length === 0) {
return this.crud.notify('请选择需要操作的记录', CRUD.NOTIFICATION_TYPE.INFO)
}
const data = _selectData[0]
crudFlourwork.exceptionSure(data).then(res => {
crudFlourwork.exceptionSure({ 'rows': _selectData }).then(res => {
this.crud.notify('操作成功', CRUD.NOTIFICATION_TYPE.SUCCESS)
this.crud.toQuery()
})

View File

@@ -59,22 +59,7 @@
</el-form-item>
<el-form-item label="显示全部" label-width="120px">
<!--<el-select
v-model="query.is_all"
clearable
placeholder="默认为否"
size="mini"
class="filter-item"
@change="hand"
>
<el-option
v-for="item in isAllList"
:label="item.name"
:value="item.code"
/>
</el-select>-->
<el-switch v-model="query.is_all" active-value="1" inactive-value="0" @change="crud.toQuery()"/>
</el-form-item>
<rrOperation />

View File

@@ -37,7 +37,8 @@
start-placeholder="开始日期"
end-placeholder="结束日期"
:default-time="['00:00:00', '23:59:59']"
@change="crud.toQuery"
@input="onInput()"
@change="mytoQuery"
/>
</el-form-item>
<el-form-item label="配方编号">
@@ -130,16 +131,6 @@
>
配粉补料
</el-button>
<!-- <el-button
slot="right"
class="filter-item"
type="warning"
icon="el-icon-check"
size="mini"
@click="pointCard"
>
打印工艺指令控制卡
</el-button>-->
<el-button
slot="right"
class="filter-item"
@@ -177,8 +168,8 @@
<!--表格渲染-->
<el-table
ref="table"
:max-height="590"
v-loading="crud.loading"
:max-height="590"
size="mini"
:data="crud.data"
style="width: 100%;"
@@ -259,20 +250,20 @@ import formula from '@/api/wms/pf/formula'
import CRUD, { crud, header, presenter } from '@crud/crud'
import rrOperation from '@crud/RR.operation'
import crudOperation from '@crud/CRUD.operation'
import udOperation from '@crud/UD.operation'
import pagination from '@crud/Pagination'
import DivDialog from '@/views/wms/pf/formula/DivDialog'
import ViewDialog from '@/views/wms/pf/formula/ViewDialog'
import crudseriesProcessRoute from "@/api/wms/pdm/seriesProcessRoute";
import {download} from "@/api/data";
import {downloadFile} from "@/utils";
import {getToken} from "@/utils/auth";
import {mapGetters} from "vuex";
import crudseriesProcessRoute from '@/api/wms/pdm/seriesProcessRoute'
import { download } from '@/api/data'
import { downloadFile } from '@/utils'
import { getToken } from '@/utils/auth'
import { mapGetters } from 'vuex'
import PicDialog from '@/views/wms/pf/formula/PicDialog'
import Date from '@/utils/datetime'
export default {
name: 'formula',
components: { ViewDialog, DivDialog, crudOperation, rrOperation, udOperation, pagination, PicDialog },
name: 'Formula',
components: { ViewDialog, DivDialog, crudOperation, rrOperation, pagination, PicDialog },
cruds() {
return CRUD({ title: '工令', idField: 'formula_id', url: 'api/formula',
props: {
@@ -309,6 +300,7 @@ export default {
viewShow: false,
changeShow: false,
currentRow: null,
query_flag: true,
checkrows: [],
XLList: []
}
@@ -329,12 +321,18 @@ export default {
crudseriesProcessRoute.getXLlist2().then(res => {
this.XLList = res
})
this.crud.query.createTime = [new Date().daysAgo(7), new Date()]
},
methods: {
canUd(row) {
return row.status !== '10'
},
[CRUD.HOOK.beforeRefresh]() {
if (this.query_flag) {
this.crud.query.begin_time = (new Date().daysAgo(7)).strftime('%F', 'zh')
this.crud.query.end_time = (new Date()).strftime('%F', 'zh')
this.query_flag = false
}
this.handleCurrentChange()
},
toView(index, row) {
@@ -435,6 +433,19 @@ export default {
this.crud.toQuery()
this.handleCurrentChange()
},
onInput() {
this.$forceUpdate()
},
mytoQuery(array1) {
if (array1 === null) {
this.crud.query.begin_time = ''
this.crud.query.end_time = ''
} else {
this.crud.query.begin_time = array1[0]
this.crud.query.end_time = array1[1]
}
this.crud.toQuery()
},
pointCard() {
const _selectData = this.$refs.table.selection
if (_selectData.length === 0 || _selectData.length > 1) {

View File

@@ -17,20 +17,20 @@
>
<el-form-item label="模糊搜索">
<el-input
v-model="queryrow.search"
v-model="query.search"
clearable
size="mini"
placeholder="编码、名称"
@keyup.enter.native="crud.toQuery"
/>
</el-form-item>
<el-button class="filter-item" size="mini" type="success" icon="el-icon-search" @click="queryBtn">查询</el-button>
<rrOperation />
</el-form>
<!--表格渲染-->
<el-table
ref="table"
:data="tableDtl"
v-loading="crud.loading"
:data="crud.data"
style="width: 100%;"
size="mini"
border
@@ -63,16 +63,18 @@
<script>
import crudMaterialbase from '@/api/wms/basedata/master/materialbase'
import CRUD, { header } from '@crud/crud'
import CRUD, { header, presenter } from '@crud/crud'
import rrOperation from '@crud/RR.operation'
import pagination from '@crud/Pagination'
import sparePartout from '@/api/wms/sb/sparepartout'
import crudClassstandard from '@/api/wms/basedata/master/classstandard'
export default {
name: 'MaterDtl',
components: { rrOperation, pagination },
mixins: [header()],
cruds() {
return CRUD({ title: '库存', url: 'api/sb/outbill/getIvt', optShow: {}})
},
mixins: [presenter(), header()],
dicts: ['product_series'],
props: {
dialogShow: {
@@ -121,16 +123,6 @@ export default {
}
}
},
open() {
sparePartout.getIvt(this.queryrow).then(res => {
this.tableDtl = res
})
},
queryBtn() {
sparePartout.getIvt(this.queryrow).then(res => {
this.tableDtl = res
})
},
queryClassId() {
const param = {
'class_idStr': this.class_idStr
@@ -161,6 +153,9 @@ export default {
this.crud.resetQuery(false)
this.$emit('update:dialogShow', false)
},
open() {
this.crud.resetQuery(true)
},
submit() {
// 处理单选
if (this.isSingle && this.tableRadio) {

View File

@@ -6,6 +6,7 @@
destroy-on-close
width="1000px"
@close="close"
@open="open"
>
<el-form
:inline="true"
@@ -173,6 +174,9 @@ export default {
onSelectAll() {
this.$refs.table.clearSelection()
},
open() {
this.crud.resetQuery(true)
},
close() {
this.crud.resetQuery(false)
this.$emit('update:dialogShow', false)

View File

@@ -145,23 +145,18 @@
@selection-change="crud.selectionChangeHandler"
>
<el-table-column type="selection" width="50" />
<el-table-column v-if="false" prop="taskdtl_id" label="任务标识" />
<el-table-column prop="task_code" label="任务编码" />
<el-table-column v-if="false" prop="task_type" label="任务类型" />
<el-table-column prop="task_type_name" label="任务类型" />
<el-table-column v-if="false" prop="taskdtl_type" label="任务明细" />
<el-table-column prop="taskdtl_type_name" label="任务明细" />
<el-table-column v-if="false" prop="task_status" label="任务状态" />
<el-table-column prop="task_status_name" label="任务状态" width="95px" :formatter="formatTaskStatusName" />
<el-table-column prop="start_area_name" label="起始区域" width="95" show-overflow-tooltip />
<el-table-column prop="start_area_name" label="起始区域" width="95" />
<el-table-column prop="start_point_code" label="起点编码" width="85" />
<el-table-column prop="start_point_name" label="起点名称" width="105" show-overflow-tooltip />
<el-table-column prop="next_area_name" label="下一区域" width="95" show-overflow-tooltip />
<el-table-column prop="next_point_code" label="下一点编码" width="85" />
<el-table-column prop="next_point_name" label="下一点名称" width="105" show-overflow-tooltip />
<el-table-column prop="start_point_name" label="起点名称" width="105" />
<el-table-column prop="next_area_name" label="下一区域" width="95" />
<el-table-column prop="next_point_code" label="下一点编码" width="105" />
<el-table-column prop="next_point_name" label="下一点名称" width="105" />
<el-table-column prop="vehicle_code" label="载具编码" />
<el-table-column prop="remark" label="备注" width="120" show-overflow-tooltip />
<el-table-column v-if="false" prop="update_by" label="修改者" />
<el-table-column prop="remark" label="备注" width="120" />
<el-table-column prop="create_time" label="创建时间" width="135" />
<el-table-column prop="update_time" label="修改时间" width="135" />
<el-table-column

View File

@@ -247,11 +247,6 @@
</template>
</el-table-column>
</el-table>
<div v-show="crud.status.cu > 0" slot="footer" class="dialog-footer">
<el-button type="text" @click="crud.cancelCU">取消</el-button>
<el-button :loading="crud.cu === 2" type="primary" @click="crud.submitCU">确认</el-button>
</div>
<AddDtl :dialog-show.sync="dtlShow" :open-param="opendtlParam" @tableChanged="tableChanged" />
<MaterDtl
:dialog-show.sync="materShow"

View File

@@ -173,18 +173,18 @@
</template>
</el-table-column>
<el-table-column :selectable="checkboxT" type="selection" width="55" />
<el-table-column show-overflow-tooltip prop="bill_code" width="130" label="订单编码">
<el-table-column prop="bill_code" min-width="130" label="订单编码">
<template slot-scope="scope">
<el-link type="warning" @click="toView(scope.$index, scope.row)">{{ scope.row.bill_code }}</el-link>
</template>
</el-table-column>
<el-table-column show-overflow-tooltip :formatter="stateFormat" width="100" prop="bill_status" label="单据状态" />
<el-table-column :formatter="stateFormat" min-width="100" prop="bill_status" label="单据状态" />
<el-table-column prop="stor_name" label="仓库" width="100" />
<el-table-column show-overflow-tooltip prop="bill_type" :formatter="bill_typeFormat" min-width="120" label="业务类型" />
<el-table-column show-overflow-tooltip width="135" prop="biz_date" label="业务日期" />
<el-table-column show-overflow-tooltip :formatter="create_modeFormat" prop="create_mode" label="生成方式" width="100" />
<el-table-column label="明细数" align="center" prop="detail_count" width="100" />
<el-table-column show-overflow-tooltip prop="input_time" width="135" label="创建日期" />
<el-table-column prop="bill_type" :formatter="bill_typeFormat" min-width="120" label="业务类型" />
<el-table-column min-width="135" prop="biz_date" label="业务日期" />
<el-table-column :formatter="create_modeFormat" prop="create_mode" label="生成方式" min-width="100" />
<el-table-column label="明细数" align="center" prop="detail_count" min-width="100" />
<el-table-column prop="input_time" min-width="135" label="创建日期" />
</el-table>
<!--分页组件-->
<pagination />

View File

@@ -236,6 +236,7 @@ export default {
// 每页数据条数
size: 20
}, idField: 'iostorinv_id', url: 'api/inandoutreturn', crudMethod: { ...inandoutreturn },
query: { is_upload: '0' },
optShow: {
add: false,
edit: false,